DIY Brushless gimbals, 3 axes.
Un de mes projets que je vous partagerez certainement ici lorsqu’il sera arrivé à son terme nécessite l’emploi d’un stabilisateur de camera. Un stabilisateur un peu particulier car il devra être pilotable par un port série. Du coup on oublie vite DJI et consort pour se tourner plutôt vers du DIY.
Dans cette article je vais vous présenter la solution retenue OPEN-SOURCE et pas cher nommé STORM32: STM32-32-bit 3-axis brushless gimbal controller.
Avant propos
Alors la carte n’est peut-être pas adaptée à tout le monde. Il vous faudra certainement quelques notions de modélisme, d’informatique et d’électronique. La carte est toujours en développement avec une grosse communauté US, mais en France pas grand chose à se mettre sous la dent. Mais l’ensemble vous permettra de réaliser un stabilisateur plus performant qu’un DJI OSMO pour 70€.
Du coup, je mettrai un pense bête en ligne pour son utilisation dans les prochains jours. Vous trouverez la carte dans les boutiques habituelles Bangood, aliexpress, etc …..
Caractéristiques STORM32 BGC
Processeur: microcontrôleur 32 bits STM32F103RC ou STM32F103RB ou STM32F405RG
La carte a été conçue pour prendre en charge les microcontrôleurs 32 bits STM32F103RC ou STM32F103RB , qui fonctionnent à 72 MHz, ainsi que STM32F405RG . Actuellement, le STM32F103RC est recommandé.
Pilotes de moteur: TC4452
Les pilotes sont conçus comme des pilotes Mosfet. Ils permettent une tension maximale de 18 V, et par conséquent un fonctionnement jusqu’à 4 S. La fiche technique spécifie un courant maximal de 13 A en pointe et de 2,6 A en continu par phase moteur, mais ce n’est pas réaliste (température !). Une valeur maximale réaliste est de 1,5 A par moteur (pour les boîtiers DFN8); heureusement, il en faut rarement plus. L’inconvénient des pilotes est sa limitation à 18 V ou 4 S. Le grand avantage est toutefois: en comparaison des pilotes traditionnel, une tolérance aux pannes élevée (ou, comme il est exprimé si joliment dans la fiche technique: immunisé contre toute forme de contrariété. “).
Attention, la version 3.3 semble disposer de pilote externe à rajouter.
Interfaces: USB, UART et Bluetooth
La carte fournit un port USB, qui apparaît en tant que port de communication virtuel sur le PC. Il fournit également le port série UART habituel (un adaptateur USB-TTL est nécessaire pour la connexion à un PC). De plus, la carte peut être équipée d’un module bluetooth HC06 offrant ainsi une connexion sans fil. A savoir que la version 3.3 dispose d’un ESP8266.
Ports: PWM, PPM, Spektrum, S-Bus Futaba, Led IR, Joystick, Bouton, AUX
La carte fournit 7 ports (3 ports avec STM32F103RB), qui peuvent être utilisés comme entrées ou sorties pour les signaux RC (PWM / Sum -PPM). Ces ports sont 5 V tolérants. Un satellite Spektrum ainsi que le Futaba S-bus sont pris en charge. En outre, 3 autres ports (7 ports avec STM32F103RB) sont disponibles en tant qu’entrées / sorties générales (ils sont également tolérants à 5 V). La carte fournit également 3 entrées de convertisseur analogique-numérique (3,3 V maximal), permettant de connecter, par exemple, une manette de jeu. Un autre port est offert pour connecter un bouton. Enfin, un port est disponible pour connecter une led IR.
Sécurité
Les pilotes de moteur, l’utilisation des ports du microcontrôleur et l’alimentation en tension sont conçus pour un fonctionnement en toute sécurité, avec une protection contre les tensions inverses. En outre, un convertisseur de tension est intégré pour mesurer la tension de la batterie; par exemple, en cas de tension trop basse, les pilotes de moteur sont arrêtés.
IMU 6DOF embarqué
Le contrôleur STorM32 dispose d’une puce MPU6050 6DOF IMU séparée intégrée sur la carte. Alternativement, une deuxième unité IMU peut être connectée à un port I2C supplémentaire. Cela devrait permettre de nouvelles fonctionnalités intéressantes dans le futur.
CONDITIONS D’UTILISATION
La carte STorM32-BGC est un matériel open source , conformément aux termes de la licence TAPR Open Hardware publiée par la Free Hardware Foundation, voir http://www.tapr.org/ohl.html. La licence TAPR autorise explicitement une utilisation commerciale, avec certaines conditions (faciles à remplir), telles que, par exemple, le fait que les logos de droits d’auteur ne soient pas supprimés.
Fiches techniques
STM32F103RB , STM32F103RC , STM32F405RG , TC4452 , MPU6050 , HC06 , HM10
A ma connaissance, la carte de microprogramme / STorM32-BGC de o323BGC est le seul contrôleur à gimbal fonctionnel à 3 axes open-source offrant ces caractéristiques:
Fonctionnalités du firmware (v0.46):
- Le support unique d’un second capteur (2nd) IMU, qui peut être intégré ou externe, pour une plage d’angle étendue, une précision améliorée et une stabilité ultime, même dans les modes panoramique
- correction de l’accélération adaptative unique pour minimiser la dérive de l’horizon lors de manœuvres à forte g
- c’est l’une des meilleures caractéristiques: la direction du moteur est déterminée automatiquement… cela supprime beaucoup de problèmes lors de la configuration de la nacelle, en particulier de l’axe de lacet.
- le module IMU / MPU6050 peut être monté dans l’une des 24 orientations possibles, l’interface utilisateur graphique facilite sa configuration.
- Bluetooth: le firmware associé à l’interface graphique fournit un outil de configuration automatique permettant de configurer en un clic le module Bluetooth intégré en option.
- mesure de tension de batterie: il est utilisé pour une fonction d’économie de lipo et une fonction de compensation automatique de chute de tension du régulateur PID
- mode panoramique / suivi pour chaque axe; le mode peut être choisi individuellement et peut être changé à tout moment (« pendant un tournage »)
- l’orientation de la caméra peut être contrôlée par des signaux rc externes (PWM, PPM) et / ou une manette de jeu dans les trois axes
- le contrôle externe de l’orientation de la caméra peut être ajusté avec précision, les limites de vitesse ainsi que les limites d’accélération peuvent être définies
- Télécommande IR de la caméra: obturateur, retardateur, vidéo allumé / éteint, séquences de temps
- Commandes de type Mavlink pour une commande à distance de la caméra, par exemple via une application
- la procédure de démarrage comprend un schéma de détection sans oscillation dédié, ce qui est crucial pour une bonne calibration du gyroscope, en particulier de l’axe de lacet (minimise la dérive dans l’axe de lacet)
- algorithme IMU basé sur quaternion (type Mahony), avec mécanisme unique pour supprimer la dérive dans l’axe de lacet sans magnétomètre
- Le STM32 permet de choisir librement la fréquence PWM du moteur dans une plage relativement étendue.