paparazzi-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Paparazzi-devel] Aspirin and Tiny or Twog for fixedwing


From: Felix Ruess
Subject: Re: [Paparazzi-devel] Aspirin and Tiny or Twog for fixedwing
Date: Mon, 7 May 2012 16:35:22 +0200

Hi,

>     <subsystem name="imu"         type="aspirin_i2c"/>
>     <subsystem name="ahrs"         type="float_dcm"/>
> 1) Is this Ok or I have to include any other module?? Iam using Aspirin
> v1.5.

Ahrg, the aspirin_i2c subsystem actually re-uses the imu_ppzuav
module, instead of using the imu_aspirin.h headers as with the
"normal" aspirin_v1.5 subsystem (via SPI). I created an issue for
this: https://github.com/paparazzi/paparazzi/issues/192
So to use that you will have to set the calibration yourself... (copy
them from the header file).
Otherwise that should be fine on a tiny/twog, but I haven't used an
Aspirin on those myself.

> 2) I have to set the local magnetic field right?
>   <!-- Local magnetic field -->
>   <section name="AHRS" prefix="AHRS_">
>     <define name="H_X" value="0.51562740288882"/>
>     <define name="H_Y" value="-0.05707735220832"/>
>     <define name="H_Z" value="0.85490967783446"/>
>   </section>
> 3) How do I get these values? Whether running the python script as given in
> the IMU calibration wiki page will give these values?

You only need those for the int_cmpl_quat filter.
See http://paparazzi.enac.fr/wiki/Subsystem/ahrs

> 4) Also Iam not able to figure out what these signs given below corresponds
> to? How to Interpret them?
> <define name="ACCEL_X_SIGN" value="1"/>
> <define name="ACCEL_Y_SIGN" value="-1"/>
> <define name="ACCEL_Z_SIGN" value="-1"/>
> Similarly for Gyro also?

This just specifies which axes to invert to have the correct
direction. You should not need to specify this.

Cheers, Felix


> On Mon, May 7, 2012 at 7:06 PM, Felix Ruess <address@hidden> wrote:
>>
>> Hi Guruganesh,
>>
>> If you are using the dev branch, the defaults are already set in the
>> imu_aspirin.h header file.
>> So you can just omit the accel and gyro sens and neutral values in
>> your airframe file. But to get best results it is recommended to
>> calibrate the accel neutrals. The gyro neutrals (biases) are estimated
>> in flight anyway, so you can leave them at the defaults.
>>
>> Cheers, Felix
>>
>> On Mon, May 7, 2012 at 3:00 PM, GURUGANESH R <address@hidden>
>> wrote:
>> > Hi Christophe,
>> >    I am also using now Aspirin IMU V1.5 for my aircraft. Can you please
>> > send
>> > me the default calibration for the 1.5 version. I am not able to open
>> > the
>> > link what you have sent.
>> >
>> > Thanks and Regards
>> > Guruganesh
>> >
>> >
>> > On Fri, Feb 17, 2012 at 2:35 PM, Christophe De Wagter
>> > <address@hidden>
>> > wrote:
>> >>
>> >> We fly several planes with this setup. It is our second-best
>> >> combination
>> >> for airplanes at the moment (after the yapa + xsens).
>> >>
>> >> Here is a sample airframe (that seems to have the missing signs) and
>> >> has
>> >> datasheet default calibrations for the 1.5 version of the aspirin.
>> >>
>> >>
>> >>
>> >> https://github.com/tudelft/paparazzi/blob/master/conf/airframes/TU_Delft/skywalkerfiber.xml
>> >>
>> >>
>> >> -Christophe
>> >>
>> >>
>> >>
>> >> On Fri, Feb 17, 2012 at 8:21 AM, Cédric Marzer <address@hidden>
>> >> wrote:
>> >>>
>> >>> Hi all,
>> >>>
>> >>> I am trying to use an Aspirin (v1.5) IMU with a twog board on a
>> >>> fixedwing. There is some information about this combination on the
>> >>> mailing
>> >>> list and on the wiki but nothing really clear. After reading it all, I
>> >>> am
>> >>> still not 100% sure that this combination can work. So my first
>> >>> question is
>> >>> : does someone fly already with this setup ?
>> >>>
>> >>>
>> >>>
>> >>> From what I understand one has to connect the board through i2c only
>> >>> like
>> >>> that :
>> >>>
>> >>> aspirin-SCK / aspirin-SCL / twog-SCL
>> >>>
>> >>> aspirin-mosi / aspirin-SDA / twog -SDA
>> >>>
>> >>> aspirin-gnd / aspirin-miso / twog - gnd
>> >>>
>> >>> aspirin - CS / twog - 3.3V
>> >>>
>> >>> aspirin - 5V ideally to a 5 V linear regulator but it is also possible
>> >>> to
>> >>> connect it to the 3.3 V with no guarantee
>> >>>
>> >>>
>> >>>
>> >>> on the software side :
>> >>>
>> >>>
>> >>>
>> >>> in the airframe code :
>> >>>
>> >>>
>> >>>
>> >>> <subsystem name="imu" type="aspirin_i2c"/>
>> >>> <subsystem name="ahrs" type="float_dcm"/>
>> >>>
>> >>> <section name="IMU" prefix="IMU_">
>> >>>
>> >>>
>> >>>
>> >>>     <define name="GYRO_P_NEUTRAL" value="74"/>
>> >>>
>> >>>     <define name="GYRO_Q_NEUTRAL" value="-39"/>
>> >>>
>> >>>     <define name="GYRO_R_NEUTRAL" value="-60"/>
>> >>>
>> >>>     <define name="GYRO_P_SENS" value="4.412" integer="16"/>
>> >>>
>> >>>     <define name="GYRO_Q_SENS" value="4.412" integer="16"/>
>> >>>
>> >>>     <define name="GYRO_R_SENS" value="4.412" integer="16"/>
>> >>>
>> >>>     <define name="GYRO_PQ_SENS" value="0.0" integer="16"/>
>> >>>
>> >>>     <define name="GYRO_PR_SENS" value="0.0" integer="16"/>
>> >>>
>> >>>     <define name="GYRO_QR_SENS" value="0.0" integer="16"/>
>> >>>
>> >>>
>> >>>
>> >>>     <define name="ACCEL_X_NEUTRAL" value="12"/>
>> >>>
>> >>>     <define name="ACCEL_Y_NEUTRAL" value="1"/>
>> >>>
>> >>>     <define name="ACCEL_Z_NEUTRAL" value="-13"/>
>> >>>
>> >>>     <define name="ACCEL_X_SENS" value="37.3730252947" integer="16"/>
>> >>>
>> >>>     <define name="ACCEL_Y_SENS" value="38.1837066302" integer="16"/>
>> >>>
>> >>>     <define name="ACCEL_Z_SENS" value="39.169675633" integer="16"/>
>> >>>
>> >>>     <define name="ACCEL_XY_SENS" value="0.0" integer="16"/>
>> >>>
>> >>>     <define name="ACCEL_XZ_SENS" value="0.0" integer="16"/>
>> >>>
>> >>>     <define name="ACCEL_YZ_SENS" value="0.0" integer="16"/>
>> >>>
>> >>>
>> >>>
>> >>>     <define name="MAG_X_NEUTRAL" value="-45"/>
>> >>>
>> >>>     <define name="MAG_Y_NEUTRAL" value="35"/>
>> >>>
>> >>>     <define name="MAG_Z_NEUTRAL" value="-89"/>
>> >>>
>> >>>     <define name="MAG_X_SENS" value="3.8038091533" integer="16"/>
>> >>>
>> >>>     <define name="MAG_Y_SENS" value="3.99631626658" integer="16"/>
>> >>>
>> >>>     <define name="MAG_Z_SENS" value="3.7728752292" integer="16"/>
>> >>>
>> >>>     <define name="MAG_XY_SENS" value="0.0" integer="16"/>
>> >>>
>> >>>     <define name="MAG_XZ_SENS" value="0.0" integer="16"/>
>> >>>
>> >>>     <define name="MAG_YZ_SENS" value="0.0" integer="16"/>
>> >>>
>> >>>
>> >>>
>> >>>   </section>
>> >>>
>> >>>
>> >>> Now my problem is that when I compile I get the following values not
>> >>> being defined :
>> >>>
>> >>>
>> >>>
>> >>> IMU_GYRO_P_SIGN
>> >>>
>> >>> IMU_GYRO_R_SIGN
>> >>>
>> >>> IMU_GYRO_Q_SIGN
>> >>>
>> >>> IMU_GYRO_X_SIGN
>> >>>
>> >>> IMU_GYRO_Y_SIGN
>> >>>
>> >>> IMU_GYRO_Z_SIGN
>> >>>
>> >>>
>> >>>
>> >>> Is it a problem of dev/current version of paparazzi (I am using the
>> >>> current one) ? Am I missing a step ?
>> >>>
>> >>> Thank you for your help
>> >>>
>> >>> Cédric
>> >>>
>> >>>
>> >>>
>> >>>
>> >>>
>> >>>
>> >>>
>> >>>
>> >>> _______________________________________________
>> >>> Paparazzi-devel mailing list
>> >>> address@hidden
>> >>> https://lists.nongnu.org/mailman/listinfo/paparazzi-devel
>> >>>
>> >>
>> >>
>> >> _______________________________________________
>> >> Paparazzi-devel mailing list
>> >> address@hidden
>> >> https://lists.nongnu.org/mailman/listinfo/paparazzi-devel
>> >>
>> >
>> >
>> >
>> > --
>> > Thanks and Regards
>> > R.Guruganesh
>> >
>> > _______________________________________________
>> > Paparazzi-devel mailing list
>> > address@hidden
>> > https://lists.nongnu.org/mailman/listinfo/paparazzi-devel
>> >
>>
>> _______________________________________________
>> Paparazzi-devel mailing list
>> address@hidden
>> https://lists.nongnu.org/mailman/listinfo/paparazzi-devel
>
>
>
>
> --
> Thanks and Regards
> R.Guruganesh
>
> _______________________________________________
> Paparazzi-devel mailing list
> address@hidden
> https://lists.nongnu.org/mailman/listinfo/paparazzi-devel
>



reply via email to

[Prev in Thread] Current Thread [Next in Thread]