June 07, 2023
Join us
Agenda
- Community Announcement
- Community Q&A
- General Discussions
Community Announcement
A.1 : v1.14 Release Schedule
- Releasing
beta3
soon, will alert the community when we do so! - Will include small fixes & fixes that will resolve bugs reported during 1.14 beta testing.
- Simulator & ROS2 bridge & Actuator configuration are the main changes
Community Q&A (No deep technical discussions)
Guideline for asking a Question
- Specify what you are trying to achieve
- Specify what environment / platform you are using
- Prepare a Link or Document to help understand if possible
- First, ask the question on Discord or create a Github Issue!
- If you take over 5 minutes for the question, please continue in Discord or a Github Issue.
Q.1 : Manual tilt control of tiltrotor VTOL
From discord server: Hi everyone, I am trying to control the tilt angle of my tilt rotor vtol (2 front tilt rotors) manually from the knob on the RC transmitter.
Purpose is for research and flight testing. I understand that this is not yet supported by px4, and would need to make changes to some of the modules in px4. After reading the code, my understanding is that I would need to make the following changes:
-
Create a new parameter containing the tilt angle, and have it mapped to an RC tuning channel. This parameter will then be read off by the modules to retrieve the demanded tilt angle. (Or should I create a custom uORB topic?)
-
Add a “custom transition” state where vehicle will fly in transition state without fully transitioning to full forward flight, and the tilt angles will follow the manual knob input
-
Modify blending logic in vtol_att _control module to blend throttle and torque setpoints from the fw and mc rate controllers based on the tilt angle
-
Modify ActuatorEffectiveness to update based on manually demanded tilt angle
-
Am I missing anything else?
I am not too sure how to implement #2 and #4 above, could someone please advise? Thank you!
Hope I’ll be able to implement this and maybe integrate this feature to px4?
Answer:
- There’s a single topic for the vtol tilt rotor effectiveness matrix code (control allocation), could hack it there
Could do it here:
-
updateSetpoint
would be nice place to put this hack: PX4-Autopilot/ActuatorEffectivenessTiltrotorVTOL.cpp at 6ee2d796ead73ec074892e3f402032352f5d66dd · PX4/PX4-Autopilot · GitHub -
Is the transition aspect necessary? > Yes.
Q.2: VTOL attitude control blending code - Darrens
Why is X axis output copied to Z axis output?
TODO: Junwoo post on VTOL channel and ping silvan and darrens.
Q.3: CPU usage high
Coaxial quadcopter, Pixhawk 5 hardware
Answer:
- Disable UAVCAN (via parameter), if unused
- Disable mavlink instance that is unused (since using RC receiver, mavlink isn’t necessary)
-
IMU_GYRO_RATEMAX
, if 800, you can turn down to 400, to reduce computation load - MAVLink on USB is also quite slow (due to lots of things being turned on, etc). Using Telemetry ports should be faster.
- Overall, if it isn’t 100%, you don’t need to worry about the CPU usage.
- You can execute
work_queue status
to check what’s going on in the work queue as well.
Q.4: RTK GPS connection
Using uBlox ZF9P (?) connection question.
Answer:
- Get the serial port wired up, that should work with default confiugration if connected to serial port marked GPS
- Check out the PX4 RTCM doc: RTK GPS (PX4 Integration) | PX4 User Guide
- QGC doc: General · QGroundControl User Guide
- Maybe also can check out: RTK GPS | PX4 User Guide
- F9P receiver is really good on it’s own, so please try even without connecting RTCM / base station.
- Should work as Plug & Play with QGC (via USB). For Windows 11, could be detected as not a COM port (GNSS), may need to configure it to be a COM port.