Strategie_13h30

Fork of CRAC-Strat_2017_homologation_gros_rob by CRAC Team

Embed: (wiki syntax)

« Back to documentation index

AX12 Class Reference

AX12 Class Reference

Servo control class, based on a PwmOut. More...

#include <AX12.h>

Public Member Functions

 AX12 (PinName tx, PinName rx, int ID, int baud=1000000)
 Create an AX12 servo object connected to the specified serial port, with the specified ID.
int Set_Secure_Goal (int degres)
 Nouvelle fonction de commande de position du servomoteur avec sécurité d'arriver à la bonne position Si une erreur se produit et que le servo ne recoit vraiment rien cette fonction dispose d'une sortie en timeout error;.
int Get_Return_Delay_Time (void)
 Retourne le temps d'attente avant l'envoi de la trame de retour par l'actionneur ( en micro seconde )
int Get_Baud_Rate (void)
 Retourne la vitesse de communication de l'actionneur ( en Bits/seconde )
int Set_Punch (int punch)
 Reglage du courant minimum necessaire au bon fonctionnement de l'actionneur minimum >> Ox000 >> decimal 0 maximum >> 0x3FF >> decimal 1023 deflaut >> 0x20 >> decimal 32.
int Get_Punch (void)
 Retourne le courant minimum au fonctionnement de l'actionneur.
int Get_Load_Value (void)
 Retourne l'ampleur de la charge sur l'actionneur.
int Reset (int)
 Reset.
int Get_Load_Direction (void)
 Retourne la direction de la charge sur l'actionneur.
int Get_Present_Speed (void)
 Retourne la vitesse angulaire actuelle de l'actionneur.
int Get_CCW_Angle_Limit (void)
 Retourne la valeur en degres du registre CCW angle limit qui est l'angle limite maximum de l'actionneur.
int Get_CW_Angle_Limit (void)
 Retourne la valeur en degres du registre CW angle limit qui est l'angle limite minimum de l'actionneur.
int Get_Torque_Enable (void)
 Retourne la valeur du registre Torque Enable.
int Set_Torque_Enable (int etat)
 1 >>> 0 >>>
int Get_Up_Calibration (void)
 Retourne les données de compensation des différences entre les potentiomètres utilisés dans l'AX12 (Up) ????????
int Get_Down_Calibration (void)
 Retourne les données de compensation des différences entre les potentiomètres utilisés dans l'AX12 (Dowm) ????????
int Get_ID (void)
 Retourne l'ID de l'AX_12 avec lequel on dialogue utile seulement dans le cas d'un broadcast ID.
int Set_Max_Torque (int torque)
 Reglage du couple maximum de l'actionneur minimum >> Ox000 >> decimal 0 maximum >> 0x3FF >> decimal 1023 deflaut >> >> decimal.
int Set_Alarm_Shutdown (int valeur)
 Reglage de la desactivation des actionneurs si une erreur le concernant se produit Bit Function Bit 7 0 Bit 6 If set to 1, torque off when an Instruction Error occurs Bit 5 If set to 1, torque off when an Overload Error occurs Bit 4 If set to 1, torque off when a Checksum Error occurs Bit 3 If set to 1, torque off when a Range Error occurs Bit 2 If set to 1, torque off when an Overheating Error occurs Bit 1 If set to 1, torque off when an Angle Limit Error occurs Bit 0 If set to 1, torque off when an Input Voltage Error occurs.
int Set_Alarm_LED (int valeur)
 Reglage de l'activation de l'alarme Bit Function Bit 7 0 Bit 6 If set to 1, the LED blinks when an Instruction Error occurs Bit 5 If set to 1, the LED blinks when an Overload Error occurs Bit 4 If set to 1, the LED blinks when a Checksum Error occurs Bit 3 If set to 1, the LED blinks when a Range Error occurs Bit 2 If set to 1, the LED blinks when an Overheating Error occurs Bit 1 If set to 1, the LED blinks when an Angle Limit Error occurs Bit 0 If set to 1, the LED blinks when an Input Voltage Error occurs.
int Set_Status_Return_Level (int etat)
 Reglage de la réponse à une instruction.
int Set_Lowest_Voltage (int val_lowest_voltage)
 Reglage de la tension minimale.
int Set_Highest_Voltage (int val_highest_voltage)
 Reglage de la tension maximale.
int Set_Temperature_Max (int val_temperature)
 Set Highest Limit Temperature.
int Set_Etat_LED (int etat)
 Set the state of LED.
int Set_Mode (int mode)
 Set the mode of the servo.
int Set_Baud (int baud)
 Set baud rate of all attached servos.
int Set_Goal (int degrees, int flags=0)
 Set goal angle in integer degrees, in positional mode.
int Set_CR_Speed (float speed)
 Set the speed of the servo in continuous rotation mode.
int Set_CW_Angle_Limit (int degrees)
 Permet de définir l'angle limite minimum de l'actionneur ( prend une valeur d'entrée en degres ) minimum >> 0° maximum >> 300° deflaut >> 0°
int Set_CCW_Angle_Limit (int degrees)
 Permet de définir l'angle limite maximum de l'actionneur ( prend une valeur d'entrée en degres ) minimum >> 0° maximum >> 300° deflaut >> 300°
int Set_ID (int CurrentID, int NewID)
 Change the ID of a servo.
int isMoving (void)
 Poll to see if the servo is moving.
void trigger (void)
 Send the broadcast "trigger" command, to activate any outstanding registered commands.
void reset ()
 Send the "reset" command, to activate any outstanding registered commands.
float Get_Position ()
 Read the current angle of the servo.
float Get_Temp (void)
 Read the temperature of the servo.
float Get_Volts (void)
 Read the supply voltage of the servo.

Detailed Description

Servo control class, based on a PwmOut.

Example:

 #include "mbed.h"
 #include "AX12.h"

 int main() {

   AX12 myax12 (p9, p10, 1);

   while (1) {
       myax12.SetGoal(0);    // go to 0 degrees
       wait (2.0);
       myax12.SetGoal(300);  // go to 300 degrees
       wait (2.0);
   }
 }

Definition at line 124 of file AX12.h.


Constructor & Destructor Documentation

AX12 ( PinName  tx,
PinName  rx,
int  ID,
int  baud = 1000000 
)

Create an AX12 servo object connected to the specified serial port, with the specified ID.

Parameters:
pintx pin
pinrx pin
intID, the Bus ID of the servo 1-255

Definition at line 72 of file AX12.cpp.


Member Function Documentation

int Get_Baud_Rate ( void   )

Retourne la vitesse de communication de l'actionneur ( en Bits/seconde )

Definition at line 128 of file AX12.cpp.

int Get_CCW_Angle_Limit ( void   )

Retourne la valeur en degres du registre CCW angle limit qui est l'angle limite maximum de l'actionneur.

Definition at line 205 of file AX12.cpp.

int Get_CW_Angle_Limit ( void   )

Retourne la valeur en degres du registre CW angle limit qui est l'angle limite minimum de l'actionneur.

Definition at line 215 of file AX12.cpp.

int Get_Down_Calibration ( void   )

Retourne les données de compensation des différences entre les potentiomètres utilisés dans l'AX12 (Dowm) ????????

Definition at line 256 of file AX12.cpp.

int Get_ID ( void   )

Retourne l'ID de l'AX_12 avec lequel on dialogue utile seulement dans le cas d'un broadcast ID.

Definition at line 266 of file AX12.cpp.

int Get_Load_Direction ( void   )

Retourne la direction de la charge sur l'actionneur.

Definition at line 178 of file AX12.cpp.

int Get_Load_Value ( void   )

Retourne l'ampleur de la charge sur l'actionneur.

Definition at line 187 of file AX12.cpp.

float Get_Position ( void   )

Read the current angle of the servo.

Returns:
float in the range 0.0-300.0

Definition at line 828 of file AX12.cpp.

int Get_Present_Speed ( void   )

Retourne la vitesse angulaire actuelle de l'actionneur.

Definition at line 196 of file AX12.cpp.

int Get_Punch ( void   )

Retourne le courant minimum au fonctionnement de l'actionneur.

Definition at line 169 of file AX12.cpp.

int Get_Return_Delay_Time ( void   )

Retourne le temps d'attente avant l'envoi de la trame de retour par l'actionneur ( en micro seconde )

Definition at line 118 of file AX12.cpp.

float Get_Temp ( void   )

Read the temperature of the servo.

Returns:
float temperature

Definition at line 845 of file AX12.cpp.

int Get_Torque_Enable ( void   )

Retourne la valeur du registre Torque Enable.

Definition at line 226 of file AX12.cpp.

int Get_Up_Calibration ( void   )

Retourne les données de compensation des différences entre les potentiomètres utilisés dans l'AX12 (Up) ????????

Definition at line 246 of file AX12.cpp.

float Get_Volts ( void   )

Read the supply voltage of the servo.

Returns:
float voltage

Definition at line 859 of file AX12.cpp.

int isMoving ( void   )

Poll to see if the servo is moving.

Returns:
true is the servo is moving

Definition at line 620 of file AX12.cpp.

void reset (  )

Send the "reset" command, to activate any outstanding registered commands.

Definition at line 628 of file AX12.cpp.

int Reset ( int  punch )

Reset.

Definition at line 157 of file AX12.cpp.

int Set_Alarm_LED ( int  valeur )

Reglage de l'activation de l'alarme Bit Function Bit 7 0 Bit 6 If set to 1, the LED blinks when an Instruction Error occurs Bit 5 If set to 1, the LED blinks when an Overload Error occurs Bit 4 If set to 1, the LED blinks when a Checksum Error occurs Bit 3 If set to 1, the LED blinks when a Range Error occurs Bit 2 If set to 1, the LED blinks when an Overheating Error occurs Bit 1 If set to 1, the LED blinks when an Angle Limit Error occurs Bit 0 If set to 1, the LED blinks when an Input Voltage Error occurs.

Definition at line 340 of file AX12.cpp.

int Set_Alarm_Shutdown ( int  valeur )

Reglage de la desactivation des actionneurs si une erreur le concernant se produit Bit Function Bit 7 0 Bit 6 If set to 1, torque off when an Instruction Error occurs Bit 5 If set to 1, torque off when an Overload Error occurs Bit 4 If set to 1, torque off when a Checksum Error occurs Bit 3 If set to 1, torque off when a Range Error occurs Bit 2 If set to 1, torque off when an Overheating Error occurs Bit 1 If set to 1, torque off when an Angle Limit Error occurs Bit 0 If set to 1, torque off when an Input Voltage Error occurs.

Definition at line 318 of file AX12.cpp.

int Set_Baud ( int  baud )

Set baud rate of all attached servos.

Parameters:
mode0x01 = 1,000,000 bps 0x03 = 500,000 bps 0x04 = 400,000 bps 0x07 = 250,000 bps 0x09 = 200,000 bps 0x10 = 115,200 bps 0x22 = 57,600 bps 0x67 = 19,200 bps 0xCF = 9,600 bp

Definition at line 603 of file AX12.cpp.

int Set_CCW_Angle_Limit ( int  degrees )

Permet de définir l'angle limite maximum de l'actionneur ( prend une valeur d'entrée en degres ) minimum >> 0° maximum >> 300° deflaut >> 300°

Definition at line 568 of file AX12.cpp.

int Set_CR_Speed ( float  speed )

Set the speed of the servo in continuous rotation mode.

Parameters:
speed,-1.0to 1.0 -1.0 = full speed counter clock wise 1.0 = full speed clock wise

Definition at line 524 of file AX12.cpp.

int Set_CW_Angle_Limit ( int  degrees )

Permet de définir l'angle limite minimum de l'actionneur ( prend une valeur d'entrée en degres ) minimum >> 0° maximum >> 300° deflaut >> 0°

Definition at line 548 of file AX12.cpp.

int Set_Etat_LED ( int  etat )

Set the state of LED.

Parameters:
mode0 = off, default 1 = on

Definition at line 423 of file AX12.cpp.

int Set_Goal ( int  degrees,
int  flags = 0 
)

Set goal angle in integer degrees, in positional mode.

Parameters:
degrees0-300
flags,defaultsto 0 flags[0] = blocking, return when goal position reached flags[1] = register, activate with a broadcast trigger

Definition at line 489 of file AX12.cpp.

int Set_Highest_Voltage ( int  val_highest_voltage )

Reglage de la tension maximale.

Parameters:
modeminimum >> Ox32 >> decimal 50 maximum >> 0xFA >> decimal 250 deflaut >> 0xBE >> decimal 190

Definition at line 384 of file AX12.cpp.

int Set_ID ( int  CurrentID,
int  NewID 
)

Change the ID of a servo.

Parameters:
CurentID1-255
NewID1-255

If a servo ID is not know, the broadcast address of 0 can be used for CurrentID. In this situation, only one servo should be connected to the bus

Definition at line 588 of file AX12.cpp.

int Set_Lowest_Voltage ( int  val_lowest_voltage )

Reglage de la tension minimale.

Parameters:
modeminimum >> 0x32 >> decimal 50 maximum >> 0xFA >> decimal 250 deflaut >> 0x3C >> decimal 60

Definition at line 370 of file AX12.cpp.

int Set_Max_Torque ( int  torque )

Reglage du couple maximum de l'actionneur minimum >> Ox000 >> decimal 0 maximum >> 0x3FF >> decimal 1023 deflaut >> >> decimal.

Definition at line 292 of file AX12.cpp.

int Set_Mode ( int  mode )

Set the mode of the servo.

Parameters:
mode0 = Positional, default 1 = Continuous rotation

Definition at line 435 of file AX12.cpp.

int Set_Punch ( int  punch )

Reglage du courant minimum necessaire au bon fonctionnement de l'actionneur minimum >> Ox000 >> decimal 0 maximum >> 0x3FF >> decimal 1023 deflaut >> 0x20 >> decimal 32.

Definition at line 143 of file AX12.cpp.

int Set_Secure_Goal ( int  degres )

Nouvelle fonction de commande de position du servomoteur avec sécurité d'arriver à la bonne position Si une erreur se produit et que le servo ne recoit vraiment rien cette fonction dispose d'une sortie en timeout error;.

Definition at line 82 of file AX12.cpp.

int Set_Status_Return_Level ( int  etat )

Reglage de la réponse à une instruction.

Parameters:
mode0 >> ne repond a aucune instructions 1 >> repond seulement aux instructions READ_DATA 2 >> repond à toutes les instructions

Definition at line 356 of file AX12.cpp.

int Set_Temperature_Max ( int  val_temperature )

Set Highest Limit Temperature.

Parameters:
modeminimum >> Ox00 >> decimal 0 maximum >> 0x96 >> decimal 150

Definition at line 411 of file AX12.cpp.

int Set_Torque_Enable ( int  etat )

1 >>> 0 >>>

Definition at line 235 of file AX12.cpp.

void trigger ( void   )

Send the broadcast "trigger" command, to activate any outstanding registered commands.

Definition at line 773 of file AX12.cpp.