Programmation

Les codes et programmes d’Interface-Z

Accueil > Matériel > Action > Cartes filles TTR > Inversion de moteur à courant continu en Pure Data

Inversion de moteur à courant continu en Pure Data

Mis à jour le mardi 21 mars 2017, par zandrine

Dans tous les patches de cette page, 4 modules d’Inversion sont branchés sur une carte 8 Transistors. Chaque module Inversion de moteur est assigné à deux sorties de la carte 8 Transistors, la première pour la vitesse du moteur, la deuxième pour l’inversion du sens de rotation.

Patches de test

Pilotage moteurs CC en Pure Data. Patch PD 1 : Gestion automatisée de l’inversion

Test précautionneux.
Patch de test semi-automatique

Ce patch permet d’envoyer au moteur des commandes de vitesse et d’inversion de sens. Il arrête automatiquement le moteur pour inverser son sens de rotation sans l’abîmer. Ce comportement est géré par le sous-patch détaillé ci-dessous. Les commandes de vitesse sont envoyées par les sliders et les commandes de sens de rotation sont envoyées par les messages bleus 0 et 127.

Le délai d’inversion a été fixé ici à 300 millisecondes et peut être diminué.

Inversion de moteurs continus avec PD Le sous-patch de gestion du moteur lors de l’inversion de sens :

Sous-patch inverse moteur CC.
Sous-patch de gestion de l’inversion du moteur.

Lors de l’inversion du sens de rotation du moteur, des étapes doivent être exécutées dans l’ordre pour éviter d’endommager le matériel :

  • Mise en mémoire la vitesse de rotation du moteur (dans le cas où le moteur repart en sens inverse avec la même vitesse qu’auparavant) ;
  • Arrêt du moteur ;
  • Commutation du relai ;
  • Récupération de la valeur de vitesse et redémarrage du moteur à cette valeur.

Inversion de moteurs continus avec PD Les patches de test utilisent l’abstraction carte_8_transistors, qui permet d’envoyer des messages Midi indépendants aux huit sorties de la carte donc aux quatre modules d’inversion de moteur testés ici. Plus de détails sont donnés dans la page de patches dédiée à cette carte.

L’abstraction utilisée ici possède une entrée pour spécifier le port Midi d’envoi. Double cliquer sur ctlout en cas de doute sur le port utilisé en sortie.

Abstraction carte 8 Transistors.
Carte 8 transistors
.

Inversion de moteurs continus avec PD Le sous-patch "envoiestatus" permet de s’affranchir du running status lié au protocole Midi. Une page dédiée à ce sujet : running-status. Ce sous-patch également utilise un port Midi de sortie, vérifier le port.

Envoi d'un en-tête Midi.

Inversion de moteurs continus avec PD Patch PD 2 : Test manuel

Ce patch permet un test manuel simple du fonctionnement du module inverseur, mais il faut prendre des précautions en l’utilisant : il faut arrêter le moteur (envoyer une valeur 0 à ce moteur) avant d’inverser son sens de rotation (avec les messages 0 ou 127).

Test manuel en Pure Data.
Test manuel de pilotage de moteur test-inv-moteur-manuel.pd
.

Les sous-patches sont détaillés dans la page dédiée à la carte Transistors.