Cours:SaéSBC balancingRobot
Révision datée du 17 octobre 2022 à 07:47 par Fredmn (discussion | contributions) (→Cahier des charges)
Cahier des charges
à minima :
- 3 cartes communiquant avec le protocole mqtt :
- la carte du robot,
- une carte affichage : angle du robot sur un barregraphe, statut général sur widgets
- une carte commande : modifier avec une interface graphique les paramètres de l'asservissement et télécommande avec boutons physique
Indications pour démarrer
Projet QTCreator pour commencer : Media:balancingBot_Minimal.zip
Il faudra configurer un kit de cross-compilation :
- Appareil mobile : linux générique (ip=192.168.7.2, login=root, mdp=geii)
- Racine du système : /opt/electronique/bbBlue/sysroot
- Version de QT : pointer /opt/electronique/bbBlue/qt5/bin/qmake
- Compilateurs : pointer l'executable du compilateur situé dans l'arborescence de /opt/electronique/bbBlue/
Remarque : Vous pouvez utiliser |cette page un peu plus détaillée.
Aide pour régulation PID : lire http://www.ferdinandpiette.com/blog/2011/08/implementer-un-pid-sans-faire-de-calculs/
Guide de progression
- Configurer le projet pour qu'il compile et s'exécute sur la carte du robot
- Analyser le code - inutile de rentrer trop dans le détail, mais comprendre l'articulation des classes utilisées dans le main.
- Afficher la valeur d'angle du gyroscope en temps réel avec qDebug()
- Implémenter une classe pour un régulateur PID qui interviendra entre le gyroscope et les moteurs. Vous pourrez commencer par un régulateur proportionnel uniquement et compléter ensuite.
- Implémenter une application graphique PC communiquant en tcp avec le robot permettant
- d'afficher les valeurs du gyroscope,
- de démarrer/éteindre le PID,
- de modifier les valeurs du PID,
- ...