paparazzi-devel
[Top][All Lists]
Advanced

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

Re: [Paparazzi-devel] motor command error on hexa------work arround prog


From: ebahier
Subject: Re: [Paparazzi-devel] motor command error on hexa------work arround progress
Date: Thu, 21 Mar 2013 15:45:42 +0100
User-agent: Internet Messaging Program (IMP) H3 (4.3.9)

Hi Felix,

I confirm a problem...

I have restored my motor order to th reality :
        <define name="ADDR" value="{ 0x5A, 0x5C, 0x58, 0x52, 0x56, 0x54 }"/>

I have start the MMK numerotation on 0
<servos driver="Mkk">

        <servo name="FRONT"        no="0" min="0" neutral="30" max="255"/>
        <servo name="FrontR"       no="1" min="0" neutral="30" max="255"/>
        <servo name="BackR"        no="2" min="0" neutral="30" max="255"/>
        <servo name="BACK"         no="3" min="0" neutral="30" max="255"/>
        <servo name="BackL"        no="4" min="0" neutral="30" max="255"/>
        <servo name="FrontL"       no="5" min="0" neutral="30" max="255"/>


The 5C motor doesn't run...

for "fun" I try :
        <servo name="FRONT"        no="0" min="0" neutral="30" max="255"/>
        <servo name="FrontR"       no="2" min="0" neutral="30" max="255"/>
        <servo name="BackR"        no="1" min="0" neutral="30" max="255"/>
        <servo name="BACK"         no="3" min="0" neutral="30" max="255"/>
        <servo name="BackL"        no="4" min="0" neutral="30" max="255"/>
        <servo name="FrontL"       no="5" min="0" neutral="30" max="255"/>

The 5C motor run...... the 56 and 58 don't run.....




With a pseudo octomotor, with two dummy motor (the first and the last), I hve 6 motors OK with this order <define name="ADDR" value="{ 0x5E, 0x52, 0x54, 0x56, 0x58, 0x5a, 0x5c, 0x60 }"/>

This config need to have MIXING table manualy adapted

If I manage the order to the reality
<define name="ADDR" value="{ 0x5e,0x5A, 0x5C, 0x58, 0x52, 0x56, 0x54, 0x60 }"/>
some motor don't turn....

I smell a bug odor.... the bug can be in my mind....


I will callibrate my IMU an test on fly...


thanks,

Eric






Felix Ruess <address@hidden> a écrit :

Hi Eric,

one thing I noticed in your airframe file:
The first servo in the <servos driver="Mkk"> section starts with number 1
in your case, it should be 0.
Otherwise the associated I2C addresses won't match up.
The first entry in ACTUATORS_MKK_ADDR is matched to servo no="0", second to
1, etc...

I guess that is the reason/solution.

Cheers, Felix



On Tue, Mar 19, 2013 at 6:42 PM, Eric BAHIER <address@hidden> wrote:

 hello evrybody,


I have work on a work arround :

If I create an hocto (with only 6 real motor), with the ADDR order

0x5E  real DUMMY
Ox52,054....0x5A real motor
0x60   DUMMY2....
...****************see the email end to have the complet motor section...

The six motors run correctly (trust test only actualy).


If  I change the motor order by the real order I need :
<define name="ADDR" value="{ 0x5E, 0x5A, 0x5C, 0x58, 0x52, 0x56, 0x54,
0x60 }"/>


The motors 0x58 and 0x56 don't start......


I config back to 52-->5C, and I continu the work arround, I fix the motor
mixing to correct order
    <define name="ROLL_COEF"    value="{0,0,+221,+221,-221,0,-221,0}"/>
    <define name="PITCH_COEF"     value="{0, -256,-221,+221,+221,+256,-221
, 0}"/>
    <define name="YAW_COEF"        value="{0, -256,  -256, +256, +256,
+256, -256, 0 }"/>
    <define name="THRUST_COEF"    value="{256, +256,  +256, +256, +256,
+256, +256, 256 }"/>


The 6 motors start correctly, I will verify the body to IMU.... and try to
fly tomorow... I will back to you..

Any idea?

Eric




    <subsystem name="motor_mixing"/>
    <define name="ACTUATORS_START_DELAY" value="10"/>
    <subsystem name="actuators"     type="mkk"/>
    <define name="I2C_TRANSACTION_QUEUE_LEN" value="10"/>
  </firmware>

<!-- *********************************************************** -->
<!-- *********************************************************** -->
<!-- Adresse variateurs MKK -->
<section name="ACTUATORS_MKK" prefix="ACTUATORS_MKK_">
    <define name="NB" value="8"/>
    <define name="ADDR" value="{ 0x5E, 0x52, 0x54, 0x56, 0x58, 0x5a, 0x5c,
0x60 }"/>
</section>

<!-- *********************************************************** -->
<!-- *********************************************************** -->
<!-- Configuration des moteurs -->
<!--<servos min="0" neutral="0" max="0xff">-->
 <servos driver="Mkk">
    <servo name="DUMMY"    no="1" min="0" neutral="30" max="255"/>
    <servo name="FRONT"    no="2" min="0" neutral="30" max="255"/>
    <servo name="FrontR"       no="3" min="0" neutral="30" max="255"/>
    <servo name="BackR"       no="4" min="0" neutral="30" max="255"/>
    <servo name="BACK"        no="5" min="0" neutral="30" max="255"/>
    <servo name="BackL"       no="6" min="0" neutral="30" max="255"/>
    <servo name="FrontL"       no="7" min="0" neutral="30" max="255"/>
    <servo name="DUMMY2"     no="8" min="0" neutral="30" max="255"/>
</servos>



<section name="ACTUATORS_MKK" prefix="ACTUATORS_MKK_">
    <define name="NB" value="8"/>
    <define name="ADDR" value="{ 0x5E, 0x5A, 0x5C, 0x58, 0x52, 0x56, 0x54,
0x60 }"/>
</section>




 Le 15/03/2013 10:24, Eric BAHIER a écrit :

hi felix,

It is fun, on protocole analyzer, I can see the six commande, the first
motor still ZERO, the five are OK..

I have a big free time between two frame.

If I change the order of the motor the 1 still out (the trame is made in
the order of the adress has been write in the airframe.xml)

In the hexa file I have test with this value.... nothing better...

    <define name="ACTUATORS_START_DELAY" value="10"/>
    <define name="I2C_TRANSACTION_QUEUE_LEN" value="10"/>

I will try to find 15minutes to try to workaround, I will create a 7th
motor, fit in first.....with esc and motor....I  will do it today, or on
monday....


thanks,

Eric




Le 14/03/2013 23:27, Felix Ruess a écrit :

Hi,

 Eric, you might want (or need) to increase the I2C_TRANSACTION_QUEUE_LEN
from 8 to some higher value.
Also the I2C speed might need to be increased if not all commands can be
sent in one cycle.

 Regardless of that, it makes sense to remember to which motor the last
command was sent if i2c_submit fails to add it to the queue like Sergei did.
Just for to make sure...
Pull request/patches would be welcome ;-)

 Cheers, Felix

On Thu, Mar 14, 2013 at 12:29 PM, Eric BAHIER <address@hidden>wrote:

 Hi,

I look your link, the software see the 6 motors, but does not give
correct data to the first on

the 6 motors are present on the I2C bus, and the data for the first still
on zero...

My feeling it is not an I2C problem, a "motor mixing" bug , "motor
mixing" forgot to "make" the data for the first motor on hexa machine.

Probably, the bug is in my airframe file.....  I am my first
buggenerator....

regards,

ERic





Le 14/03/2013 11:46, Sergey Krukowski a écrit :

  Hi Eric!



Check this out:


https://github.com/softsr/paparazzi/blob/krooz_port/sw/airborne/subsystems/actuators/actuators_mkk.c#L58

Will probably help you.



Regards,

Sergey


  _______________________________________________
Paparazzi-devel mailing address@hidden://lists.nongnu.org/mailman/listinfo/paparazzi-devel


 --
************************************
Lez Concept EURL

Eric BAHIER
15 chemin neuf
34 980 Montferrier sur LEZ
France

Tel : 33 4 67 59 92 53
Fax : 33 9 59 15 92 53
************************************


_______________________________________________
Paparazzi-devel mailing list
address@hidden
https://lists.nongnu.org/mailman/listinfo/paparazzi-devel




_______________________________________________
Paparazzi-devel mailing address@hidden://lists.nongnu.org/mailman/listinfo/paparazzi-devel


--
************************************
Lez Concept EURL

Eric BAHIER
15 chemin neuf
34 980 Montferrier sur LEZ
France

Tel : 33 4 67 59 92 53
Fax : 33 9 59 15 92 53
************************************



_______________________________________________
Paparazzi-devel mailing address@hidden://lists.nongnu.org/mailman/listinfo/paparazzi-devel


--
************************************
Lez Concept EURL

Eric BAHIER
15 chemin neuf
34 980 Montferrier sur LEZ
France

Tel : 33 4 67 59 92 53
Fax : 33 9 59 15 92 53
************************************


_______________________________________________
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]