Upside Up - Robot équilibrage revisité (3 / 6 étapes)

Étape 3: logiciel

J’ai divisé le croquis de robot en 4 fichiers, principalement pour aider à la lisibilité du code. Les fichiers et le contenu général sont :

  • SimpleRobot.h : Fichier d’en-tête contenant #defines, des définitions de classe et des prototypes de fonction
  • SimpleRobot.cpp : Fichier C++ contenant le PID et les fonctions de classe de contrôle moteur.
  • Bluetooth.INO : Le Code d’application communication Bluetooth avec l’application Android.
  • SRG2_Bal_Final.INO : Les croquis de Main pour le robot.

Le code ne fait référence à Arduino.h, CurieIMU.h et MadgwickAHRS.h, donc vous aurez besoin d’avoir installé les bibliothèques nécessaires pour Arduino 101 pour elle à compiler.

Je n’irai à travers une promenade de code complet, car le code est bien commenté, mais fera quelques remarques générales :

  • L’esquisse utilise un Madgwick et filtre complémentaire pour la fusion de capteurs pour les comparaisons de performance – lacet vient de Madgwick, et pitch vient du filtre complémentaire.
  • Informations encodeur sont consignées à l’aide d’un ISR (interrupt service routine) séparément pour chaque moteur. Vitesse de robot utilise une moyenne des deux, donc, vous inscrivez à un robot de filature près de vitesse 0.
  • Une implémentation de la journalisation de données simple est incluse, même si la mémoire limitée de Arduino 101 se traduit dans un joli petit ensemble de données. Saisie de données est démarré par le biais de l’instruction de l’app Android, et l’intervalle de capture de données est contrôlée au moyen d’une instruction #define. L’en-tête et les données à saisir sont définies au bas de l’esquisse principale. Données sont automatiquement transférées vers le périphérique Android et enregistrées au format CSV, une fois la capture terminée.
  • Le module Bluetooth à la fréquence de communication Arduino 101 se trouve assez haut (921600) afin de réduire les frais généraux/temps de latence de communication sur cette interface. Selon l’intégrité du signal d’une implémentation spécifique, cela peut doivent être réduites.
  • Au départ, j’étais incapable de télécharger les croquis pour le 101 Arduino en raison de problèmes de pilote USB. En fin de compte j’ai dû acheter et installer une carte d’extension USB3 chez mon hôte PC pour le faire travailler. Depuis, ils ont sorti plus de mise à jour SW, donc ce problème peut être résolu, mais je n’ai pas confirmé sur mon installation.

Articles Liés

Baldroid v3 équilibrage Robot avec pièces de Actobotics et de IOIO-OTG

Baldroid v3 équilibrage Robot avec pièces de Actobotics et de IOIO-OTG

Salut, après la conception de prototypes un couple avec un téléphone Android + module IOIO + OTG, j'ai décidé de construire un produit fini à l'aide de pièces et composants de Actobotics / Servocity.com... Outre la qualité des produits Actobotics, la
Un pendule inversé Simple et très facile d’équilibrage Robot

Un pendule inversé Simple et très facile d’équilibrage Robot

Nous allons faire un simple robot équilibrage inversé et exploiter il.Vous avez besoin seulement d'une demi-journée à faire, si vous avez un arduino et certains matériaux.[une vidéo d'un robot que tu ferais]Introduction :Après que quelques travaillen
Équilibrage Instructable Robot

Équilibrage Instructable Robot

Dans ce Instructable je voulais vous montrer comment faire un auto équilibrage robot. Ce qui le rend unique, c'est que son extérieur est fait pour ressembler à du Instructables Robot. En interne, il fonctionne dans le principe de PID, c'est un systèm
Voiture R/C Robot d’équilibrage

Voiture R/C Robot d’équilibrage

Salut! Ce n'est Kaeru Ojisan.Nous pouvons trouver beaucoup d'équilibrage robots (même avec code source ouvert) dans le site Web.Puis j'ai essayé de trouver un équilibre robot basé sur une véritable automobile ou une voiture R/C vendus dans le commerc
Comment construire un Robot - The BeetleBot v2 (Revisited)

Comment construire un Robot - The BeetleBot v2 (Revisited)

il s'agit de l'insecte robot instructables revisité à la style bas les mythes !Initialement, j'ai fait un instructables sur ma version de robot beetle 1.Il est maintenant temps de vous montrer une nouvelle version de ce merveilleux robot. Cette nouve
Un autre plus facilement inversée pendule Robot

Un autre plus facilement inversée pendule Robot

Il s'agit d'une version améliorée de mon plus tôt instructable intitulé « A Simple et très facile inversé pendule équilibrage Robot ». Il y a quatre avantages dans cette version.Plus facile d'obtenir un matériauMoins de matières nécessairesProgramme
RB2 places en cours d’exécution.

RB2 places en cours d’exécution.

N'est pas sonner comme un « Big Deal » ?Eh bien, pour être honnête, pour moi qu'il s'est avéré pour être assez dur fonctionne. -0)Comme dans les précédents articles je ne vise un essai scientifique, mais je vais essayer d'exposer les faits, j'ai dû r
Actionnement walker dynamique passive

Actionnement walker dynamique passive

Un robot marche constitue toujours un défi. Scientifique/outilleuses-ajusteuses proposé robots basée sur marche statique (le centre de masse est toujours au-dessus du centre de pression), mais ce type de marche est très lent.Marche dynamique pourrait
Guide de gyroscope et accéléromètre avec Arduino, y compris le filtrage de Kalman

Guide de gyroscope et accéléromètre avec Arduino, y compris le filtrage de Kalman

ce guide a été publié tout d'abord lors du forum de l'Arduino et peut être trouvé ici : http://arduino.cc/forum/index.php/topic, 58048.0.htmlJ'ai juste elle publiée, donc encore plus obtiendrez utilisation de celui-ci. Le code peut être trouvé ici :h
Ultrasons, ruban à mesurer

Ultrasons, ruban à mesurer

cette fois, je vais essayer quelque chose de nouveau. Pour s'assurer que je n'oubliez pas les étapes importantes du processus de génération, alors que je suis à souder, la mesure, localisation de logiciels, je vais écrire l'instructable bugs. J'espèr
SEG... bâton.

SEG... bâton.

Bricolage self-balancing... choses... existent depuis presque aussi longtemps que les choses Self-balancing commerciales. Évidemment les versions maison ne sont pas lisses, fiable, ou failsafe comme la vraie chose, mais ils restent assez captivants.
SITWAY

SITWAY

vous n'êtes jamais à l'ancienne à apprendre et à essayer de nouvelles choses. Je pense que l'un des meilleurs jours de ma vie a été la journée que j'ai découvert le site Instructables. Il a ouvert un tout nouveau monde pour moi. C'est mon troisième i
B-robot EVO. L’auto équilibrage robot

B-robot EVO. L’auto équilibrage robot

Comment ça marche ?B-ROBOT est un individu télécommandé équilibrant arduino robot créé avec pièces imprimées en 3D. Avec seulement deux roues B-ROBOT est capable de maintenir son équilibre tout le temps à l'aide de ses capteurs internes et conduire l
Cardan sans balais équilibrage Robot

Cardan sans balais équilibrage Robot

Le projet suivant est le résultat de visionner la vidéo Cubli et devenant intéressé dans le contrôle de l'équilibre instable, à l'aide de moteurs brushless. plus simple inversé le problème du pendule a été décidée afin d'achever le projet avant de pe