Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Manufacturing Technology >> Productieproces

DC Motor Controlling-bibliotheek

Componenten en benodigdheden

Arduino UNO
× 1
Transistor-NPN voor algemeen gebruik
× 2
Transistor PNP voor algemeen gebruik
× 2
Weerstand 1k ohm
× 2
1N4007 – Diode voor hoge spanning, hoge stroomsterkte
× 4

Apps en online services

Arduino IDE

Over dit project

Hier presenteer ik de Arduino-bibliotheek om de DC-motor te besturen. De bibliotheek beschikt over zoveel faciliteiten en flexibiliteit dat ze elke gelijkstroommotor op de gewenste manier kan aansturen. De bibliotheek is ontworpen volgens de industrialmotion-besturing vereisten. De bibliotheek heeft 16 verschillende functionaliteiten zodat deze de motor op de meest veelzijdige manier kan aansturen. Hier is de lijst met faciliteiten in de bibliotheek

1. Het regelt de draairichting van de motor

2. Het regelt de snelheid van de motor van 0-100%

3. Het kan zorgen voor soft start naar motor in gespecificeerde tijd – betekent dat de motorsnelheid zal toenemen van 0% tot gewenst niveau in gespecificeerde tijd

4. Het kan soepele stop bieden naar motor in gespecificeerde tijd - betekent dat motorsnelheid zal afnemen van huidige snelheid tot 0% in gespecificeerde tijd

5. Het kan jog control apply toepassen naar de motor in beide richtingen – betekent dat de motor in de gespecificeerde richting zal schokken

6. Het kan DC BREAK (betekent onmiddellijke of noodstop) toepassen op de motor

De korte beschrijvingen van alle bibliotheekfuncties worden hier gegeven. Hierna volgen enkele voorbeelden waarin wordt uitgelegd hoe de motor wordt bestuurd met behulp van deze bibliotheek. Er zijn drie video's gegeven die de demonstratie van deze voorbeelden laten zien. Ten slotte wordt gesuggereerd dat het circuit een H-Bridge-circuit gebruikt dat veel wordt gebruikt om DC-motoren te besturen.

Om deze bibliotheek in je Arduino-schets te gebruiken, kopieer je gewoon de DC_Motor map naar de hoofdmap van de arduino-bibliotheekmap zoals C:\arduino-1.6.7\libraries

Beschrijving van bibliotheekfuncties:

1. DC_Motor(int pin1, int pin2): deze functie verklaart arduino-pinnen die de DC-motor aandrijven

2. DC_Motor(int pin1, int pin2, int speed_flag): deze functie verklaart analoge uitgangspinnen van Arduino die DC-motor aandrijft

3. start_motor(int dir): deze functie begint de motor in de gespecificeerde richting te draaien. Als de richting 1 is, begint de motor naar voren te draaien en vice versa

4. forward(): deze functie zal de motor in voorwaartse richting laten draaien

5. reverse(): deze functie zal de motor in omgekeerde richting laten draaien

6. dc_break(): deze functie stopt onmiddellijk de draaiende motor*

7. stop_motor(): deze functie stopt de draaiende motor

8. jogg_full_speed(int dir): deze functie zal de motor gedurende 5 seconden op volle snelheid in de gewenste richting rukken

*Opmerking:- deze functie werkt alleen als de DC-motor interne voorzieningen heeft voor een dergelijke DC-onderbreking. Ook moet het juiste motorstuurcircuit worden ontworpen met dynamische remweerstanden (DBR) en er moet volledige zorg worden besteed aan het voorkomen dat de motor of het circuit beschadigd raakt.

Alle bovenstaande functies bieden een eenvoudige bediening van de DC-motor. Ze hebben geen controle over de snelheid van de motor. De volgende 8 functies regelen zowel de snelheid als de richting van de motor. Maar het is vereist om analoge uitgangspinnen van Arduino te selecteren om deze functies te gebruiken. De DC-motor moet worden geïnitialiseerd met de 2e functie, samen met de snelheidsvlag ingesteld op 1

9. set_speed(int speed): deze functie stelt de DC-motorsnelheid in tussen 0 en 100%

10. forward_with_set_speed(): deze functie zal de gelijkstroommotor met de ingestelde snelheid vooruit laten draaien

11. reverse_with_set_speed(): deze functie begint de gelijkstroommotor achteruit te draaien op de ingestelde snelheid

12. run_motor(int dir, int speed): deze functie draait de gelijkstroommotor in beide richtingen met de ingestelde snelheid

13. jogg_set_speed(int dir, int speed): deze functie zorgt voor een schok in beide richtingen bij de ingestelde snelheid

14. motor_speed_zero()*: de functie verlaagt het motortoerental tot 0 – betekent dat de motor stopt

15. soft_start(int dir, int speed, inttime_in_sec) : deze functie verhoogt de snelheid van de motor van 0 tot het gewenste niveau in de opgegeven tijd in beide richtingen. De tijd moet worden geselecteerd in seconden

16. smooth_stop(int time_in_sec): deze functie verlaagt de motorsnelheid van de huidige rijsnelheid naar 0 in de opgegeven tijd. De tijd moet worden geselecteerd in seconden

*Opmerking:de functie stop_motor() kan hier niet worden gebruikt omdat deze een digitale uitvoer geeft, terwijl deze functie een minimale analoge uitvoer geeft om het toerental van de gelijkstroommotor op nul te zetten. Wanneer u de DC-motor met snelheid bestuurt, stop dan niet alleen de motor, maar maak de snelheid nul.

Voorbeelden:

1) Draai de gelijkstroommotor vooruit en achteruit op volle snelheid (geen snelheidsregeling)

/*dit programma laat de gelijkstroommotor 5 sec vooruit draaien

stop dan 2 sec en draai de motor weer achteruit voor

5 sec, stop 2 sec continu

gemaakt door AM Bhatt (+91-9998476150), Gujarat, INDIA

op 12/10/2016

*/

#include

DC_Motormotor (8, 12);

voidsetup()

{

}

void loop()

{

motor.forward();

vertraging (5000);

motor.stop_motor();

vertraging (2000);

motor.reverse();

vertraging (5000);

motor.stop_motor();

vertraging (2000);

}

2) Draai de gelijkstroommotor vooruit en achteruit met de ingestelde snelheid (met snelheidsregeling)

/*dit programma laat de gelijkstroommotor 5 sec vooruit draaien

bij 40% snelheid stop dan 2 sec en draai de motor weer achteruit voor

5 sec op 80% snelheid continu

gemaakt door AM Bhatt (+91-9998476150), Gujarat, INDIA

op 12/10/2016

*/

#include

DC_Motor motor2(9, 10, 1);

voidsetup()

{

}

void loop()

{

motor2.set_speed(40);

motor2.forward_with_set_speed();

vertraging (5000);

motor2.motor_speed_zero();

vertraging (2000);

motor2.set_speed(80);

motor2.reverse_with_set_speed();

vertraging (5000);

motor2.motor_speed_zero();

vertraging (2000);

}

3) Jog op de motor in beide richtingen met en zonder snelheidsregeling

/*dit programma past jog toe op twee verschillende gelijkstroommotoren

* het past jog toe op de 1e motor op volle snelheid in beide richtingen

* en geeft dan jog aan de 2e motor met 80% snelheid in achteruit

* richting en 30% snelheid in voorwaartse richting

* gemaakt door Ashutosh M Bhatt (+91-9998476150), Gujarat (INDIA)

* op 22/10/2016

*/

#include

DC_Motormotor (8, 12);

DC_Motor motor2(9, 10, 1);

voidsetup()

{

}

voidloop()

{

motor.jogg_full_speed(1);

motor.jogg_full_speed(0);

motor2.jogg_set_speed(0, 80);

motor2.jogg_set_speed(1, 30);

}

4) Pas een zachte start en een soepele stop toe op de motor

/*dit programma geeft de motor een zachte start en verhoogt de snelheid

van 0 tot 90% in 10 sec in voorwaartse richting

dan geeft het een soepele stop van 90% naar 0 in 5 sec

opnieuw zachte start van 0 tot 50% in 6 sec in omgekeerde richting

en tot slot een soepele stop van 50% naar 0 in 3 sec

gemaakt door AM Bhatt (+91-9998476150), Gujarat, INDIA

op 12/10/2016

*/

#include

DC_Motor motor2(9, 10, 1);

voidsetup()

{

}

voidloop()

{

motor2.soft_start(1, 90, 10);

vertraging(3000);

motor2.smooth_stop(5);

motor2.soft_start(0, 50, 6);

vertraging(3000);

motor2.smooth_stop(3);

}

Code

  • Bibliotheek voor DC-motorbesturing
Bibliotheek voor DC-motorbesturingC-headerbestand
Deze bibliotheek regelt de snelheid en richting van alle soorten DC-motoren
Geen voorbeeld (alleen downloaden).

Schema's

Arduino UNO en H bridge driver gebruikt om DC Motor te besturen

Productieproces

  1. Een effect besturen met echte sensoren
  2. Maak thuis een zelfgemaakte schrijfmachine voor huiswerk
  3. Human Detection Robotics System met Arduino Uno
  4. Bipolaire stappenmotorbibliotheek
  5. Android bestuurd speelgoed met Raspberry Motor Shield
  6. Obstakels vermijden robot met servomotor
  7. Lijnvolger Robot
  8. Een Roomba-robot besturen met Arduino en Android-apparaat
  9. Besturing van servomotor met Arduino en MPU6050
  10. LED-helderheid regelen met Bolt en Arduino
  11. Robot voor supercoole indoornavigatie