TrIMUpter - GPS Position hold test with ArduIMU + GPS EM406 on Vimeo.
Hello, I have successfully tested the GPS position hold with my TrIMUpter (a VTOL tricopter).
The full stabilisation process is simply done with:
- an ArduIMU+ V2 flat,
- a triple axis magnetometer (HMC5843),
- a GPS EM406,
so this is a very cheap setup.
Below a photo of the setup used:
The TrIMUpter is stabilised by the firmware TriStab v2.1
Some features of the firmware v2.1:
- Full stabilisation process required for a multicopter,
- GPS position hold, tested with the GPS EM406, and compatible with Ublox, NMEA, and Mediatek MTK ,
- a true Heading Lock for the yaw with 2 modes: inertial heading lock or magnetic heading lock,
- self-calibration of the IMU sensors,
- self-test at the startup for valid datas from the HMC5843 triple axis magnetometer,
- the switch from the "stabilisation mode" to "the GPS position hold" is done with switch linked to the ch5,
- the Roll/Pitch PID gains can be easily tuned via the transmitter knob linked to the ch6,
- the main servo mixer is placed in one function "call_servomix()" and can be easily modified for multicopters
and also helicopters...
The firmware TriStab v2.1 can be downloaded here.
Have fun and happy dev,
Jean-Louis
Comments
Heey guys I am new on this field and I am working on an Autonomous Heli. I want to mount a MaxSonar EZ1 with the Ardupilot. Do you think this is possible? I really do not want to work with a regular Arduino since I am running out of space and weight capability on my 180-EFL Heli. Any Ideas. Any converter that I can use for these TTL and PWM signals..
Hello Kazz,
I suggest you to use the latest version of the APM_Compass library, there are some important updates.
Good testing flights,
Regards, Jean-Louis
Hi Jean-Louis
Thank you for supporting me.
TriStab2.1 is wonderful.
It is a setting on this day.
"userparms.h"
//Adjust this parameter for your lattitude
#define GEOG_CORRECTION_FACTOR 0.8126 // cos(lattitude) Tokyo=35.6497°
// Local magnetic declination
// I use this web : http://www.ngdc.noaa.gov/geomagmodels/Declination.jsp
#define local_declination 14.14 // Magnetic declination in Paris (Tokyo)
To use DYIdrones magnetometer, should I renew APM_Compass library?
Regards,Kazz
Hello Kazuyuki Tanaki,
Wooww... My deepest Congratulations for your maiden flight !!!
I am glad that you have succed with my firmware. So, may be that your problem is due to the magnetometer offset calibration (hard iron), this must be done with the ArduIMU installed in the model.
You need also to adjust the local magnetic declination for your country in the "userparms.h", see below:
//Adjust this parameter for your lattitude
#define GEOG_CORRECTION_FACTOR 0.6578 // cos(lattitude) Paris=48.8666°
// Local magnetic declination
// I use this web : http://www.ngdc.noaa.gov/geomagmodels/Declination.jsp
#define local_declination 1.85 // Magnetic declination in Paris (France)
To get the magnetic offset for the compass, I suggest you to load the "AP_Compas_test.pde" in the AP_Compass library
The frame that you have used is very nice, does it is a kit or a home made version ?
I hope this help you,
Regards, Jean-Louis
My TrIMUpter flew.
There is one problem.
The airframe is rotating by about 2m49s and 3m7s of Youtube.
Is there a problem in the setting of the heading lock?
Specs
ArduIMU+ V2 flat
DYIdrones magnetometer
GWS EDF50
TriStab_V21
Thank you.
I have used common ESC without any change:
- 3 ESC Hobbyking SS Series 8-10A
- 3 brushless motors Hextronik 1300 Kv, HXM2730-1300
They are connected directly to the PWM output of the ArduIMU, see how below:
![](https://storage.ning.com/topology/rest/1.0/file/get/3692114366?profile=original)
Regards, Jean-LouisFor the esc: s are you using them with standard firmware and/or are they modified in any way (like added i2c interface)?
![](https://storage.ning.com/topology/rest/1.0/file/get/3692120558?profile=original)
...Regards, Jean-Louis