Étape 7: Code et autres choses
Le plan initial était d’utiliser la carte de dérivation mini d’Intel comme il était plus petit, mais la bibliothèque MRAA pour I2C s’est avérée problématique, d'où la cassure de l’Arduino a fini par être utilisé à la place. Le code a été uniquement arduino code qui fait usage des 16 Adafruit canaux PWM servo pilote bibliothèque pour contrôler des servos
Un serveur web simple hébergé sur l’edison est utilisé pour contrôler le Tachikoma. La page Web simple peut être ouvert sur n’importe quel ordinateur et le téléphone mobile et présentera 4 boutons qui nous permettra de contrôler simple en arrière et en avant le mouvement du robot.
Les fonctions principales qui contrôlent cette motion sont : forwardStep(), backwardStep(), mémoire et backward(). Les fonctions clockwise() et antickclockwise() sont rédigées, mais n’ont pas été utilisées dans la fonction de contrôle. Ils effectuent simplement deux des servos rotation continue à tourner vers l’avant, tandis que les deux autres tournent vers l’arrière. Alternativement, vous pouvez utiliser les jambes pour faire pivoter, où vous étape chacune des jambes en séquence dans un sens et puis faites pivoter la base dans son ensemble à se réorienter dans le sens désiré, en déplaçant seulement la « hanche ».
Le ForwardStep et le BackwardStep est terminé en soulevant chaque jambe l’un à la fois et déplacez-la vers l’avant/arrière, puis en utilisant tous les 4 joints « hip » ensemble pour déplacer le corps vers l’avant/arrière et les joints de 4 « genou » pour la soulever dans sa position initiale.
La fonction mémoire et backward() nous permettent de contrôler les servos de rotation continue pour rouler le Tachikoma avant et en arrière.
Beaucoup de ce code n’a pas été testé comme le robot deviendrait instable au levant une jambe et c’est quelque chose qui doit scruter et nous avons également eu un problème avec le bus I2C sur l’Edison qui était utilisé. Le port I2C qui a éclaté sur l’Arduino carte de dérivation a été inscrit pas tous les périphériques connectés à lui (I2C_6), mais lorsque nous avons testé avec la carte de dérivation mini, le pilote a montré correctement lorsque la commande i2cdetect a été exécutée dans la ligne de commande.
Pour plus d’informations sur le débogage I2C sur Edison, il y a beaucoup de bonnes ressources ici :
https://Communities.Intel.com/thread/55439
Déplaçant alternativement les deux jambes en diagonale en face de l’autre permettra une circulation plus équilibrée. Il y a encore beaucoup à faire en ce qui concerne l’obtention d’une gamme complète de mouvement et d’utiliser les jambes et le groupe motopropulseur en tandem pour étendre la mobilité de la Tachikoma.