Étape 3: codage
L’idée derrière mon code, c’est que l’accéléromètre mesure le mouvement de la tête en marchant ou debout. Lorsque le déplacement est minime - debout encore - la visière est déployée. Et puis quand la circulation augmente à nouveau - marche - la visière est ramenée en arrière vers le haut.
Selon le moteur/servo et l’accéléromètre utilisé le code sera différent. En outre, selon comment confiant ou qualifiés, vous êtes avec la programmation, que vous pourriez être en mesure de proposer quelque chose d’un peu plus élégant que le mien. Mais, voici le code que j’ai utilisé pour le mien...
- - - - -
#include < Servo.h >
Alfred de servo ;
const int XPSous = 1 ;
int maxi, mini, sortie, range, marcher ;
démarrage long non signé ;
Boolean déployée ;
void setup() {}
Alfred.Attach(9) ;
maxi = mini = 250 ;
déployée = false ;
MARCHER = 100 ;
}
void loop() {}
maxi = mini = 250 ;
Démarrer = millis() ;
tandis que (millis ()-Démarrez < 2000) {}
sortie = analogRead(xpin) ;
Si (sortie > maxi)
Maxi = output ;
Si (sortie < mini)
Mini = output ;
}
gamme = maxi - mini ;
Si (plage > marcher & &! déployé) {}
déployée = true ;
alfred.writeMicroseconds(2000) ;
Delay(200) ;
}
ElseIf (gamme < marcher & & déployées) {}
déployée = false ;
alfred.writeMicroseconds(1000) ;
Delay(200) ;
}
else {}
alfred.writeMicroseconds(1450) ;
Delay(200) ;
}
}
- - - - -
Une fois que vous avez votre code, comment vous voulez qu’il vous aurez besoin de le transférer à votre Arduino à l’aide du câble USB.