Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Manufacturing Technology >> Processus de fabrication

Bibliothèque de contrôle de moteur à courant continu

Composants et fournitures

Arduino UNO
× 1
Transistor à usage général NPN
× 2
Transistor à usage général PNP
× 2
Résistance 1k ohm
× 2
1N4007 – Diode haute tension et courant nominal élevé
× 4

Applications et services en ligne

Arduino IDE

À propos de ce projet

Ici, je présente la bibliothèque Arduino pour contrôler le moteur à courant continu. La bibliothèque dispose de tellement d'installations et de flexibilité qu'elle peut contrôler n'importe quel moteur à courant continu de la manière requise. La bibliothèque est conçue selon le contrôle de mouvement industriel exigences. La bibliothèque dispose de 16 fonctionnalités différentes telles qu'elle peut contrôler le moteur de la manière la plus polyvalente. Voici la liste des installations de la bibliothèque

1. Il contrôle le sens de rotation du moteur

2. Il contrôle la vitesse du moteur de 0 à 100 %

3. Il peut fournir un démarrage progressif au moteur dans un temps spécifié - signifie que la vitesse du moteur passera de 0% au niveau souhaité dans un temps spécifié

4. Il peut fournir un arrêt en douceur au moteur dans le temps spécifié - signifie que la vitesse du moteur diminuera de la vitesse actuelle à 0% dans le temps spécifié

5. Il peut appliquer le contrôle de jogging au moteur dans l'une ou l'autre direction - signifie que le moteur bougera dans la direction spécifiée

6. Il peut appliquer DC BREAK (signifie ARRÊT immédiat ou d'urgence) au moteur

Les brèves descriptions de toutes les fonctions de la bibliothèque sont données ici. Quelques exemples sont donnés par la suite qui expliquent comment le moteur est contrôlé à l'aide de cette bibliothèque. Il y a trois vidéos qui montrent la démonstration de ces exemples. Enfin, il est suggéré que le circuit utilise un circuit H-Bridge largement utilisé pour contrôler les moteurs à courant continu.

Pour utiliser cette bibliothèque dans votre croquis arduino, copiez simplement le DC_Motor dossier dans le répertoire racine du dossier de la bibliothèque arduino comme C:\arduino-1.6.7\libraries

Description des fonctions de la bibliothèque :

1. DC_Motor(int pin1, int pin2) : cette fonction déclare les broches arduino qui entraînent le moteur à courant continu

2. DC_Motor(int pin1, int pin2, int speed_flag) : cette fonction déclare les broches de sortie analogiques de l'arduino qui entraînent le moteur à courant continu

3. start_motor(int dir) : cette fonction commence à faire tourner le moteur dans la direction spécifiée. Si la direction est 1 - le moteur commencera à tourner vers l'avant et vice versa

4. en avant() : cette fonction commencera à faire tourner le moteur en marche avant

5. inverse() : cette fonction commencera à faire tourner le moteur dans le sens inverse

6. dc_break() : cette fonction arrêtera instantanément la rotation du moteur

7. stop_motor() : cette fonction arrêtera la rotation du moteur

8. jogg_full_speed(int dir) : cette fonction appliquera une secousse au moteur pendant 5 secondes à pleine vitesse dans la direction requise

*Remarque :- cette fonction ne fonctionnera que si le moteur à courant continu a des dispositions internes pour une telle coupure de courant continu. En outre, un circuit de commande de moteur approprié doit être conçu avec des résistances de freinage dynamiques (DBR) et des précautions doivent être prises pour que le moteur ou le circuit ne soit pas endommagé.

Toutes les fonctions ci-dessus fournissent un contrôle simple au moteur à courant continu. Ils ne contrôlent pas la vitesse du moteur. Les 8 fonctions suivantes contrôlent la vitesse ainsi que la direction du moteur. Mais il est nécessaire de sélectionner les broches de sortie analogiques de l'arduino pour utiliser ces fonctions. Le moteur à courant continu doit être initialisé avec la 2e fonction avec le drapeau de vitesse défini sur 1

9. set_speed(int speed) : cette fonction réglera la vitesse du moteur CC entre 0 et 100 %

10. forward_with_set_speed() : cette fonction commencera à faire tourner le moteur à courant continu vers l'avant à la vitesse définie

11. reverse_with_set_speed() : cette fonction commencera à faire tourner le moteur à courant continu en sens inverse à la vitesse définie

12. run_motor(int dir, int speed) : cette fonction fera tourner le moteur à courant continu dans les deux sens à la vitesse définie

13. jogg_set_speed(int dir, int speed) : cette fonction appliquera une secousse au moteur dans les deux sens à la vitesse définie

14. motor_speed_zero()* : la fonction réduira la vitesse du moteur à 0 - signifie arrêter le moteur

15. soft_start(int dir, int speed, inttime_in_sec) : cette fonction augmentera la vitesse du moteur de 0 au niveau souhaité dans un temps spécifié dans les deux sens. Le temps doit être sélectionné en secondes

16. smooth_stop(int time_in_sec) : cette fonction réduira la vitesse du moteur de la vitesse de fonctionnement actuelle à 0 dans le temps spécifié. Le temps doit être sélectionné en secondes

*Remarque :on ne peut pas utiliser la fonction stop_motor() ici car elle donne une sortie numérique alors que cette fonction donne une sortie analogique minimale pour mettre la vitesse du moteur à courant continu à zéro. Lorsque vous contrôlez le moteur à courant continu avec la vitesse, n'arrêtez pas simplement le moteur, mais réduisez sa vitesse à zéro.

Exemples :

1) Faites tourner le moteur à courant continu vers l'avant et l'arrière à pleine vitesse (pas de contrôle de vitesse)

/*ce programme fera tourner le moteur CC vers l'avant pendant 5 secondes

puis arrêtez-vous pendant 2 secondes et tournez à nouveau le moteur en marche arrière pendant

5 s, arrêt pendant 2 s en continu

créé par A M Bhatt (+91-9998476150), Gujarat, INDE

le 10/12/2016

*/

#include

DC_Motormotor (8, 12);

voidsetup()

{

}

boucle vide()

{

motor.forward();

retard (5000);

motor.stop_motor();

retard (2000);

motor.reverse();

retard (5000);

motor.stop_motor();

retard (2000);

}

2) Faire tourner le moteur à courant continu vers l'avant et l'arrière à la vitesse définie (avec contrôle de vitesse)

/*ce programme fera tourner le moteur CC vers l'avant pendant 5 secondes

à 40% de la vitesse puis arrêtez-vous pendant 2 secondes et tournez à nouveau le moteur en marche arrière pendant

5 sec à 80% de vitesse en continu

créé par A M Bhatt (+91-9998476150), Gujarat, INDE

le 10/12/2016

*/

#include

DC_Motor motor2(9, 10, 1);

voidsetup()

{

}

boucle vide()

{

motor2.set_speed(40);

motor2.forward_with_set_speed();

retard (5000);

motor2.motor_speed_zero();

retard (2000);

motor2.set_speed(80);

motor2.reverse_with_set_speed();

retard (5000);

motor2.motor_speed_zero();

retard (2000);

}

3) Appliquez le jogging au moteur dans les deux sens avec et sans contrôle de vitesse

/*ce programme applique le jog à deux moteurs CC différents

* il applique le jog au 1er moteur à pleine vitesse dans les deux sens

* puis fournit un jog au 2ème moteur avec 80% de vitesse en marche arrière

* direction et 30% vitesse en marche avant

* créé par Ashutosh M Bhatt (+91-9998476150), Gujarat (INDE)

* le 22/10/2016

*/

#include

DC_Motor motor (8, 12);

DC_Motor motor2(9, 10, 1);

voidsetup()

{

}

boucle vide()

{

motor.jogg_full_speed(1) ;

motor.jogg_full_speed(0) ;

motor2.jogg_set_speed(0, 80);

motor2.jogg_set_speed(1, 30);

}

4) Appliquer un démarrage progressif et un arrêt en douceur au moteur

/*ce programme donnera un démarrage progressif au moteur et augmentera sa vitesse

de 0 à 90 % en 10 s en marche avant

puis il donne un arrêt en douceur de 90% à 0 en 5 secondes

nouveau démarrage progressif de 0 à 50% en 6 sec en sens inverse

et enfin arrêt en douceur de 50% à 0 en 3 sec

créé par A M Bhatt (+91-9998476150), Gujarat, INDE

le 10/12/2016

*/

#include

DC_Motor motor2(9, 10, 1);

voidsetup()

{

}

boucle vide()

{

motor2.soft_start(1, 90, 10);

retard(3000);

motor2.smooth_stop(5) ;

motor2.soft_start (0, 50, 6);

retard(3000);

moteur2.smooth_stop(3) ;

}

Code

  • Bibliothèque de contrôle de moteur à courant continu
Bibliothèque de contrôle de moteur à courant continuFichier d'en-tête C
Cette bibliothèque contrôle la vitesse et la direction de tous les types de moteurs à courant continu
Aucun aperçu (téléchargement uniquement).

Schémas

Arduino UNO et pilote de pont en H utilisés pour contrôler le moteur à courant continu

Processus de fabrication

  1. Contrôler un effet avec de vrais capteurs
  2. Fabriquer une machine à écrire pour les devoirs à la maison
  3. Système robotique de détection humaine utilisant Arduino Uno
  4. Bibliothèque de moteurs pas à pas bipolaires
  5. Jouet contrôlé par Android utilisant un bouclier de moteur Raspberry
  6. Obstacles pour éviter le robot avec servomoteur
  7. Robot suiveur de ligne
  8. Contrôler un robot Roomba avec Arduino et un appareil Android
  9. Robot pour une navigation intérieure super cool