we are currently converting our project (formerly on KK2.1.5 platform) to Arduplane (on a pixhawk 1M) and are experiencing some difficulties here.
After reading up a lot on this helpful forum I decided to give it a shot and write my first forum thread…
So far the setup ist quite straigth forward as follows comprising of these desired Functions:
During hover flight yaw control should be controlled via differential rotor tilt, ascent/descent via synchronous thrust, roll via differential thrust, longitudinal motion (forward/backwards) via synchronous tilt of the rotors and finally but IMPORTANTLY the pitch axis should be automatically maintained level via a thruster-rotor in the back that can turn both directions (so there is no pitch tilt of the airframe necessary for longitudinal motion/position hold). Center of Gravity located symmetrically between front (tilting) rotors.
After transitioning into horizontal flight we would like to control the plane via conventional aileron, elevator and differential thrust for yaw control – with an option to experiment with differential rotor tilt to replace/assist ailerons.
In the past few days/weeks, I have read the Ardupilot guide up and down. Apparently, in some sections, it lacks a level of detail that would allow me to fully understand why that particular setting is necessary (or I just think too complicated).
Some examples:
Why would a dual copter tiltrotor have to be classed as a tail sitter
If my setup (with the C/G positioned on the rotor tilt axes) has the pitch stabilizing motor in the back – would that require it to be treated as a tricopter? if so, how would I get the longitudinal motion (forward/backward) mixed into the tilt-control and let the controller use the L/R spectrum of the stabilizing motor in the back…? Or
Would it be better to set it up as a dual copter and manually set one of the output channels to operate the rear motor?
If there is a way you could lay out a guideline to overcome these first setup obstacles it would be much appreciated!
Maybe there is a config-file for a similar setup…? (This would be a great resource to compare values and test the behaviour)
Yes, this is true, especially when you don’t have any Ardupilot copter or plane experience. There is a learning curve but the WiKi does help to organize your steps. For learning purposes, you could start with a more simple APM Plane project.
As far as I know, it is not considered the same.
You can have a tricopter where the tail rotor swings left to right via a servo control to maintain yaw stability. You can also lease the tail rotor fixed for only lift in quad hover modes and then use yaw differential on the front two rotors. You can use a Y6 configuration with the tail rotor fixed and then swing either the front rotors down or the entire wing down. The link below shows various APM setups. Vehicle Types Supported by ArduPilot
The definition of “better” is in the eye of the builder here. It can also depend upon the frame used and if any scale effect is desired.
Although my preference is for a QuadPlane, here are a few tricopter examples that I have done.
Perhaps I am not understanding the needs here. The video looks like the plane is simply moving forward or backward in a hover mode. Isn’t this the normal Qmode or copter behavior?
Also, if you don’t need to go backward, but simply forward, can you not use Mark Whitehorn’s @kd0aij forward throttle feature? Did this not make it into a release?
Sounds promising,
does that mean that I could shut down the pitch sensor influence on the synchronous rotor tilt and potentially replace it by longitudinal position hold input. The pich stability feed from the IMU will only control the levelling motor - in both directions, starting from 0 rpm in full level position.
Hi Mark, our Plane looks similar to a V-22.
Only difference is, we don’t use cyclic rotor blade pitch control for [airframe-] pitch control during hover flight - i.e. C/G between the two rotor centers. Our craft hovers like a conventional bicopter with the addition of the pitch controlling fan in the back. Think of a bow thruster in a ship
OK, I guess that CG could also work for forward flight with the rotors tilted forward.
My “manual forward throttle” feature works by using an additional RC input channel for manual control of forward throttle; for a normal quadplane, it simply controls the throttle for the forward motor, and for a tiltrotor, it tilts the rotors forward by an amount proportional to forward throttle demand. The same approach could be used to provide reverse throttle in both cases if you really wanted to fly backwards.
This feature is independent of the attitude control system, the roll and pitch inputs continue to operate normally, so you can pitch up or down as desired while also applying forward throttle.
Very interesting! It is less a question of “wanting” to fly backwards, much rather allowing all possible degrees of freedom to counteract any external disturbances - for example gusts from behind…
If this is done right the aircraft will fly exactly like this Eric’s F-35
I’ll look at allowing negative forward throttle with the manual forward throttle option. The existing code may already support it, since reverse thrust is supported.
I had experimented with a few new flight modes similar to Eric’s with a Convergence tilt-tricopter frame; https://github.com/ArduPilot/ardupilot/pull/12857 although I avoided backward flight since the Convergence goes unstable when flying backwards.
Sorry for response to an old thread. Did these changes ever make it into a release? I’m looking at doing something similar to what you did with your Convergence but with a OMPHobby ZMO VTOL that I put an orange cube into.
I’ve gotten the ZMO transitioning/flying with Q_Hover and FBWA, but I want a flight mode with your “Forward Throttle” characteristics. I don’t need to fly backward my main goal is to try to fly the ZMO below it’s stall speed by tilting the motors slightly to vector the thrust downwards to increase lift.
I’m curious how the tilt motors can be used to maintain level pitch in position/velocity controlled modes such as QLOITER, as described here by setting Q_VFWD_GAIN to a non zero value:
For a tiltrotor, if THR_MIN is less than zero, and servo min/max values are set appropriately (such as you would for vectored yaw), will that allow for the motor servos to tilt backwards? This may be useful if hovering in a tailwind.