Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Sensor calibration control over UAVCAN #12269

Closed
CarlOlsson opened this issue Jun 14, 2019 · 2 comments
Closed

Sensor calibration control over UAVCAN #12269

CarlOlsson opened this issue Jun 14, 2019 · 2 comments

Comments

@CarlOlsson
Copy link
Contributor

Describe problem solved by the proposed feature
If you want to calibrate a lot of autopilots at the same time (temperature calibration and standard offset/scale calibration) you need a way to trigger the calibration and retrieve the results. Connecting a GCS to every board is not an option since it is way too time consuming.

Describe your preferred solution
Run code on a test computer that connects and controls a climate chamber for temperature calibration and connects to many (e.g. 25 autopilots) over UAVCAN. The test computer broadcasts commands to start different calibration routines on the boards and retrieves and displays the results on a screen to the operator.

Describe possible alternatives
A potentiometer is used by the operator to select an analog voltage that is read and mapped to a calibration command on the autoilot boards. The status and result of each calibration step is indicated to the operator by the on board LED. (E.g. RED = failed, GREEN = success, Purple = in progress).
The downside of this is that the entire process can't be automated (the operator needs to manually control the climate chamber) and there is a lot of room for human error in understanding the LED feedback etc.

Additional context
I have implemented a very simple proof of concept with two autopilots connected to a laptop over CAN via a Zubax Babel. A python script on the laptop broadcasts a magnetometer message which is received on the PX4 side where depending on the message payload different commands (e.g. temp cal, gyro cal etc) are executed directly from the uavcan/sensors/mag module.
The next step is to clean it up by defining a dedicated UAVCAN message and fix up the architecture on the PX4 side.

  1. Is this functionality worth merging into upstream PX4?
  2. In that case, where do you think the code should be added. Right now in the uavcan module there is only "actuators" and "sensors".
@stale
Copy link

stale bot commented Sep 12, 2019

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

@stale
Copy link

stale bot commented Sep 26, 2019

Closing as stale.

@stale stale bot closed this as completed Sep 26, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant