Clear Filters
Clear Filters

How can I communicate between a Pixhawk controller and an actuator module using UAVCAN?

29 views (last 30 days)
I am now building a UAV whose controller is Pixhawk 4X or 6X.
UAVCAN communication is available to drive the main motors.
According to the following page, UAVCAN is used to read GPS data.
However, I cannot find the detailed configuration of the UAVCAN.
Would you tell me how to use the UAVCAN communication using some blocks in UAV Toolbox Support Package for PX4 Autopilot such as "uORB Read" block?

Accepted Answer

Arun Mathamkode
Arun Mathamkode on 5 Sep 2024 at 9:22
Starting in R2024b, you can use the PX4 Actuator Write block in your Simulink model to write motor and servo actuator values over the PWM and UAVCAN interfaces. Please refer to R2024b release notes.
  1 Comment
Sakahisa Nagai
Sakahisa Nagai on 6 Sep 2024 at 8:55
Thank you very much for your response.
Does the "PX4 Actuator Write block" mean uORB Write block in Simulink?
Is the communication way (PWM or UAVCAN) automatically selected or should I set it using QGroundControl?

Sign in to comment.

More Answers (1)

Ayush
Ayush on 5 Sep 2024 at 5:14
Edited: Ayush on 5 Sep 2024 at 5:14
You can develop algorithms on UAVCAN communication using various blocks like “uORB Read” block, “uORB Write”, “uORB Message” etc. Please refer to know more: https://www.mathworks.com/help/uav/develop-algorithm-deploy-px4.html
For hardware support and configuration for UAV Toolbox for PX4 Autopilots, you can refer to this documentation: https://www.mathworks.com/help/uav/setup-and-configuration-px4.html
You can also read more about UAV Toolbox here: https://www.mathworks.com/help/uav/index.html
Hope it helps!
  1 Comment
Sakahisa Nagai
Sakahisa Nagai on 6 Sep 2024 at 8:43
Thank you very much for your comment.
I try to read parameter value as the below figure.
As indicated in the figure, the status is 1 which means that the communication is not successfully conducted.
Are there any mistakes in my simulink file?
The PX4 hardware setup has successfully done.
I connected PX4 controller to a Vertiq motor module.
The following URL describes the uavcan used for the Vertiq module.
I would like to read uavcan.equipment.esc.Status (Data Type ID = 1034).

Sign in to comment.

Products


Release

R2024a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!