ArduIMU

From PaparazziUAV
Revision as of 15:11, 10 November 2010 by Markgriffin (talk | contribs)
Jump to navigation Jump to search
Tiny13 w/IMU

This page describes how to integrate an ArduIMU+ V2 (flat) into an existing Airframe/Paparazzi-Code.

  1. The ArduIMU communicates over I2C with the Paparazzi-AP. The wiring is pretty easy to do. Connect SDA, SCL, ground and supply the IMU with 5V. Do not connect 3.3V from the Paparazzi-AP to the ArduIMU.
  2. Integration into the Paparazzi software is realized as a module. This is an easy way to connect and test new software.
  3. This description shows how to use the ArduIMU without a separate GPS-Receiver and without a Compass/Magnetometer. The GPS-Data is sent by the Paparazzi-AP over I2C to the ArduIMU.
  4. There is an other airframe/main-AP we wrote which uses a magnetometer for yaw-drift compensation. We haven't written an installation guide for this configuration yet. But we will try to do this as soon as possible.

The Code has been integrated into the Paparazzi build system. Find the original ZHAW code here.

Airframe Adjustments

conf/airframes: "MyAirframe.xml"

  • (1) Insert the module:
<modules>
  <load name="ins_arduimu.xml"/>
</modules>
  • (2) Activate "i2c"
<target name="ap"    board="...">
          ...
  <define name="USE_I2C0"/>
</target>
<subsystem name="i2c"/> 
  • (3) Have INS neutrals
<section name="INS" prefix="INS_">
  <define name="ROLL_NEUTRAL_DEFAULT" value="0" unit="deg"/>
  <define name="PITCH_NEUTRAL_DEFAULT" value="0" unit="deg"/>
</section>
  • (4) Use "Settings" file: settings/tuning_ins.xml
  • (5) Remove the infrared estimation
remove this:
<subsystem name="attitude"         type="infrared"/>

Flash the ArduIMU

  • (6) Flash the ArduIMU with the adapted software in sw/airborne/firmwares/helper/arduimu_Firmware_WithGps. For information concerning flashing of the ArduIMU, read:

http://code.google.com/p/ardu-imu/wiki/Code

So far, this setup has been successfully flown in the EasyStar, Merlin & Funjet aircrafts.

Have Fun !