During the alpha testing phase with the "APM Copter V3" code i immediately reported to the Dev Team that the Loiter mode was very accurate but is not allowed to fly normally, like with other system as DJI and Mikrokopter, Zero-UAV, etc.
We preferred to make the Loiter mode that would serve to accurately reposition the multirotor, and to help beginners to fly slowly and safely.
An italian friend and developer, Sandro Tognana, collected my challenge and started to develop a flight mode as I wanted, in line with the other famous flight control board.
Another awesome programmer, Julien Dubois, has joined our team and has worked actively to implement the complicated wind compensation.
After several months of development and testing are pleased to present the "Hybrid flight mode", in two words a "flyable Loiter" with wind compensation, the code virtually switches from "Loiter" to "Alt-Hold" and viceversa when you exit and enter a sticks deadband (configurable), considering of course the compensation of the wind, therefore complies with the tuning of your multirotor.
You can configure some parameters but already with the default works perfectly, my video speaks for itself.
This new mode is currently being debugged (in alpha phase), it is therefore not available to the public, of course, will have to go into the hands of APM Copter Dev Team who will decide whether to adopt it in an upcoming release.
The results in my video are great, sorry but the audio is bad because it was very windy today, however, is clearly seen as a "Hybrid" works, is almost perfect.
In the second video by Julien you can see the Hybrid in action vs a "DJI Phantom 2" quad with "Naza 2" inside, imho Hybrid work better than the "GPS Position Hold" of DJI, especially on braking.
The tests were carried out on APM and VR Brain, but of course will work on any board that installs "APM Copter" as PX4 and Pixhawk.
I will keep you updated on the "Hybrid" developments, i'll open a discussion about this with other APM Copter developers to assess any changes in the code.
I want to say thanks to Sandro and Julien for their great work!
Bests, Marco
Comments
Loiter engages only when copter has been stopped by braking function.
For me, hybrid was designed to be smooth and not rigid/precise like loiter, that's why you need a relative long distance to stop from a high velocity.
If you want a harder brake, you can increase these params :
- WPNAV_BR_MAX_ANG : default=3000, max=4500 (max number of centidegree the copter will roll/pitch to brake)
- WPNAV_BR_RATE : default=8, max=15 (max number of degrees/second the copter will roll/pitch to brake)
But if you increase these values too much, the flight behaviour will be totally different, I personnally prefer the default one.
The little kick at loiter exit is due to a difference between loiter command and wind compensation factor. This effect could be removed by additionnal code if it's so problematic for many pple. My copter has too much inertia and I don't really notice this kick.
About throttle hybrid, Sandro and I are very busy atm and can't work on it. I would first like to fix the baro issue there is when we release roll/pitch stick: the altitude decreases and then increases.
ok, finally, installed arduino on a different comp, compiled, loaded on apm2.6 which is installed on a tricopter.
works good if I do 1/4 of the pitch/roll and let go, however it takes 10+ meters to stop from a full sticks in either direction. would it be possible to integrate a more aggressive "break" feature or is it a parameter which needs to be tuned? I assume loiter kicks in as soon as the pitch/roll stick is centered, based on this assumption I can assume that since loiter is so "sluggish" its "breaking" power is not sufficient to stop a copter dead after the switch from alt hold @ high velocity. am I correct?
ok sandro thank you buddy
Bruce, if you connect the Planner and go to the "Full Parameter List" you'll see (at the bottom) Hybrid mode parameters: WPNAV_BR_MAX_ANG, WPNAV_BR_RATE, WPNAV_BR_SPEED_0, WPNAV_LOIT_DB.
Hi Bruce, you can always check that in your log. assuming that you've successfully fly it.
Ok guys I'm still stuck once I made the. Change how can I verify that I have uploaded the new hybrid mode successfully?
Any news on the throttle hybrid? Really looking forward testing it. Thanks,
@ keith, ok installed mhv avr tools, now I get this message:
Building for ArduPilot Mega 2.x
Excluding arduino core from include paths
F:\Desktop\ArduPilot-Arduino-1.0.3-windows\hardware\tools\avr\bin\avr-g++ -c -g -Os -Wall -fno-exceptions -ffunction-sections -fdata-sections -mmcu=atmega2560 -DF_CPU=16000000L -MMD -DUSB_VID=null -DUSB_PID=null -DARDUINO=103 -mcall-prologues -DCONFIG_HAL_BOARD=HAL_BOARD_APM2 -DEXCLUDECORE C:\Users\nikitins\AppData\Local\Temp\build7606992676026920996.tmp\ArduCopter.cpp -o C:\Users\nikitins\AppData\Local\Temp\build7606992676026920996.tmp\ArduCopter.cpp.o
ArduCopter.ino:83:23: fatal error: AP_Common.h: No such file or directory
compilation terminated.
any suggestions are appreciated!
Artem I know your issue well as I had the same thing, for me I reverse engineered it and followed the install of mhv avr tools as mentioned before step 4. Having installed these tools my sketch compiled with ease and no errors, try it it might work for you.