Bonsoir
après quelque recherche j’ai compris que le message envoyé au nano change
la dernière valeur est:
0 quand touts les relais sont au repos et que le tracteur est a l’interieur
128 quand touts les relais sont au repos et que le tracteur est hors des limite
et on ajout 1 quand le relai uturn1 est actif
2 pour le relai uturn 2
4 pour le relai uturn 3
8 pour le relai uturn 4
16 pour le relai uturn 5
32 pour le 6
Soit au maxi 191 quand on est hors limite et que tous les relais sont actifs.
j’ai modifie le autosteer_usb.ino
…
----------------------- Switch Input Pins ------------------------
#define STEERSW_PIN 6 //PD6
#define WORKSW_PIN 7 //PD7
#define REMOTE_PIN 8 //PB0
#define RELAY1_PIN 2 //1
#define RELAY2_PIN 5 //2
#define RELAY3_PIN A0 //3
#define RELAY4_PIN A1 //4
#define RELAY5_PIN A2 //5
#define RELAY6_PIN A3 //6
#define RELAYSTOP_PIN 10 // pour arret tracteur
…
//keep pulled high and drag low to activate, noise free safe
pinMode(WORKSW_PIN, INPUT_PULLUP);
pinMode(STEERSW_PIN, INPUT_PULLUP);
pinMode(REMOTE_PIN, INPUT_PULLUP);
pinMode(DIR1_RL_ENABLE, OUTPUT);
pinMode(RELAY1_PIN, OUTPUT);
pinMode(RELAY2_PIN, OUTPUT);
pinMode(RELAY3_PIN, OUTPUT);
pinMode(RELAY4_PIN, OUTPUT);
pinMode(RELAY5_PIN, OUTPUT);
pinMode(RELAY6_PIN, OUTPUT);
pinMode(RELAYSTOP_PIN, OUTPUT); //pour arrêt tracteur
…
Ensuite modifier la partie autosteerRelays
Ajouter dans la partie setuTurnRelays(void)
#if defined (RELAYSTOP_PIN)
if (bitRead(uTurn,7)) digitalWrite(RELAYSTOP_PIN , ON); else digitalWrite(RELAYSTOP_PIN , OFF);
#endif
Voila avec ceci AOG active le pin 10 donc active un relai quand le tracteur sort de la zone de travail.