Plateforme simple Arduino robotique ! (3 / 5 étapes)

Étape 3: Arduino et programmation PC

Pour la programmation de l’Arduino, vous devez évidemment le logiciel Arduino et un câble USB.  Vous pouvez également programmer l’Arduino utilisant un port série et un convertisseur de niveau TTL si votre PC possède un port série.  Notez que l’interface série USB ne communiquera pas avec processeur ATMega de l’Arduino si il y a un convertisseur de niveau relié à serial épingles (0 et 1) de l’Arduino donc débrancher avant d’utiliser l’USB.

Sur l’Arduino, il nous faudra une interface série qui permet à l’ordinateur commander les moteurs.  Nous aurons également besoin d’un système d’entraînement servo PWM à envoyer les signaux corrects pour les moteurs de Vex et assurez-vous qu’ils vont dans le sens correct lorsqu’il est administré les bonnes valeurs.  J’ai aussi ajouté quelques simple LED clignotant, principalement pour l’indication de l’État mais aussi parce qu’il a l’air cool.

Sur le PC, nous devrons ouvrir le port série et envoyer des trames de données qui comprendra le programme Arduino.  Le PC doit également venir avec des valeurs de moteurs.  Un moyen facile de le faire est d’utiliser un joystick ou une manette de jeu USB, j’utilise un contrôleur Xbox 360.  Une autre option consiste à utiliser un ordinateur en réseau (un netbook ou un mini petit conseil ITX) sur le robot lui-même pour conduire sans fil.  Avec un netbook, vous pouvez même utiliser la webcam embarquée streamer retour un flux vidéo et de conduire votre robot à distance.  J’ai utilisé le système de douilles de Linux pour faire le réseau programmation pour ma configuration.  Un programme (le « serveur du joystick") s’exécute sur un ordinateur distinct qui a un contrôleur branché et un autre programme (le « client ») est exécuté sur le netbook connecté à l’Arduino.  Il relie deux ordinateurs et envoie des informations de la manette de jeu pour le netbook, qui puis envoie des paquets de série à l’Arduino qui anime le robot.

Pour vous connecter à l’Arduino à l’aide d’un PC sous Linux (en C++), vous devez d’abord ouvrir le port série à la vitesse de transmission correcte et ensuite envoyer les valeurs à l’aide d’un protocole que vous avez également utilisé sur le code de l’Arduino.  Le format de mes série est simple et efficace.  J’utilise 4 octets par « image » pour envoyer les deux vitesses du moteur (chacun est un seul octet).  Les premiers et derniers octets sont codées en dur les valeurs qui sont utilisées pour éviter l’Arduino envoie l’octet erroné au code PWM et causant les moteurs à devenir fou.  C’est le but principal de la LED RGB, il clignote en rouge lorsque la série était incomplète.  Les 4 octets sont comme suit :

255 (octets codés en dur « Démarrer »),,, 200 (octets codés en dur « fin »)

Pour garantir une réception fiable des données, assurez-vous que vous avez mis suffisamment retard entre les boucles du programme.  Si vous exécutez votre code PC trop vite, il inondera le port et l’Arduino peut-être commencer à faire tomber ou même mal lire des octets.  Même si elle ne chute pas informations il peut également déborder tampon port série de l’Arduino.

Pour les moteurs de Vex, j’ai utilisé la bibliothèque Arduino Servo.  Étant donné que Vex moteurs sont des moteurs à rotation continue juste, ils utilisent la même exacte de signalisation qui utilisent des servos.  Cependant, au lieu de 90 degrés étant le point central, c’est le point de stop où le moteur ne tourne pas.  Abaisser le « angle » fait le moteur commence à tourner dans un sens, tout en soulevant l’angle permet de tourner dans l’autre sens.  Le plus loin loin du point central, que vous êtes, plus vite le moteur tournera.  Bien qu’il ne va pas casser quoi que ce soit, si vous envoyez des valeurs supérieures à 180 degrés pour les moteurs, je conseillerais limitant les valeurs de 0 à 180 degrés (qui dans ce cas sont des augmentations de vitesse).  Parce que je voulais plus de contrôle et moins de contrôle robot volant, j’ai ajouté un logiciel « vitesse limite » à mon programme qui ne permet pas la vitesse pour augmenter au-dessus de 30 "degrés" dans les deux sens (se situe entre 90 +/-30).  J’ai l’intention sur l’ajout d’une commande de port série qui change la limite de vitesse, afin que l’ordinateur peut supprimer la limite à la volée si vous voulez aller rapide (j’ai testé dans de petites pièces donc je ne veux pas à accélérer et à planter dans le mur, surtout avec un netbook sur elle).

Pour plus d’informations, téléchargez le code joint à la fin de ce Instructable.

Articles Liés

Simple Arduino Robot

Simple Arduino Robot

c'est une facile à faire le robot que j'ai fait sur un parcours avec HackBergen (le hackerspace local à Bergen, Norvège. instagram : HackBergen)Désolé pour le mauvais anglais. J'ai seulement 14 ans et de la Norvège.S'il vous plaît j'aime et voter, qu
Extrêmement Simple ligne Robot avec Arduino qui suit

Extrêmement Simple ligne Robot avec Arduino qui suit

Dans ce Instructable, nous allons construire une ligne générique simple suivant arduinobot. Il y aura beaucoup de place à la créativité dans ce Instructable.Le robot, dans ce tutoriel, est propulsé hors de 4 piles AA et est capable de suivre un ruban
Comment construire un simple bras robotisé de Lego Mindstorms NXT ?

Comment construire un simple bras robotisé de Lego Mindstorms NXT ?

Aujourd'hui, je vais vous dire comment j'ai construit mon bras robotiques de Lego Mindstorms NXT.En fait, je voulais construire un trépied robotisé pour mon appareil photo. J'ai découvert, qu'il est plus difficile ensuite, il semble. Après quelques e
Ben - une lumière suivant Breadboard Arduino Robot

Ben - une lumière suivant Breadboard Arduino Robot

Ben la lumière suivant Breadboard Arduino Robot est le deuxième robot j'ai fait pour aider à enseigner la robotique pour les élèves du secondaire dans une classe que j'enseigne volontairement. Le premier robot a aussi ses propres Instructable qui peu
Rana : Inspiré d’un arduino robot biologique

Rana : Inspiré d’un arduino robot biologique

Rana (grenouille en italien) est un robot inspiré biologique. C'est le résultat de mois de recherche et développement. L'un des directeurs appliqués vient un autre insolubles que j'ai fait appelé « arduino robot bipède ». Ce robot utilise les méthode
Comment à griffe bricolage grue compatible Arduino Robot ?

Comment à griffe bricolage grue compatible Arduino Robot ?

Salut, les gars ! La grue Makeblock griffe compatible Arduino Robot a terminé aujourd'hui. Ses structureset les caractéristiques sont similaires, comme ces machines de grue qui sont communes à voir dans le marché.Pour plus d'informations, veuillez vi
Canon à eau arduino robot IR

Canon à eau arduino robot IR

Canon à eau arduino robotÉtape 1 : Arduino Uno R2Arduino MotorshieldPompe à eautube flexible6 piles AA NiMhBoîte à piles pour 2 AABoîte à piles pour 4 AAServo 9 g x 2Châssis de Robot 2RMRelais 5VTélécommande IRIR RecivierfilsÉtape 2 :
Arduino Robot pour le coût le plus bas

Arduino Robot pour le coût le plus bas

ME VOIR À LA MAKER FAIRE DE NYC !Tout a commencé avec ceci :Le défi Arduino Robot : Comment économiquement pouvez-vous créer un robot en utilisant un Arduino pour élèves de 5e année ?J'espère que cette instructable revêt une certaine élégance pour sa
3D simple imprimé Arduino Robot

3D simple imprimé Arduino Robot

Qui ne veut pas construire un robot ? Comme un gamin, je rêvais de construire des robots. Désormais, toute personne de tout âge avec un peu de connaissances peut construire un robot simple ! Je vais vous montrer comment faire exactement cela.Le Robot
Robot simple arduino pour moins de 10€

Robot simple arduino pour moins de 10€

Bonjour, dans ce tutoriel nous allons construire un robot simple pour moins de 10 €. Ne vous attendez pas des miracles de lui. Il peut servir comme un jouet ou comme une aide à l'apprentissage de programmation et la robotique. Grâce à ses 2 capteurs,
Distant Arduino Robot contrôlée à l’aide d’émetteurs-récepteurs Wixel

Distant Arduino Robot contrôlée à l’aide d’émetteurs-récepteurs Wixel

mise à jour JAN 2012 : ce projet a été présenté sur le site de Pololu au titre des projets de ressources et de la collectivité.  http://www.Pololu.com/resources/communityprojectsINTRODUCTIONDans ce projet, j'utilise deux Pololu Wixel émetteurs-récept
Contrôlé par Arduino robotique tambour

Contrôlé par Arduino robotique tambour

Ans que j'ai dit quiconque écoute que j'allais construire un tambour robotique. La plupart des gens peu haussa les épaules indifféremment. Alors même que je l'ai construit, la plupart des gens peu regarda au-dessus et véhiculée fuis. Il semblait que
Arduino Robot V2 (rapide) également contrôlée voix

Arduino Robot V2 (rapide) également contrôlée voix

C'est ma deuxième version de mon robot arduino après « Construire votre premier robot ». Mon deuxième version est un peu compliquée par rapport à mon premier seul mais offre de meilleures fonctionnalités. Dans ce instructable je vais vous montrer com
Android G1 Serial pour Arduino Robot

Android G1 Serial pour Arduino Robot

apprendre comment votre téléphone portable Android peut contrôler un robot à l'aide d'une carte Arduino. Le téléphone prend les commandes via telnet depuis un autre téléphone ou un ordinateur, donc vous pouvez contrôler le robot à distance. Ce projet