Kompakt 3-i-1 Stripboard DIYduino med integrerad Sensor och L298N Motor sköld (9 / 9 steg)
Steg 9: Testa avsnittet motorn förarens
1. Vänd motor en i en riktning i 3 sekunder med nedsatt hastighet
2. vänder motor A 3 sekunder med nedsatt hastighet
3. Vänd motor A i den andra riktningen i 3 sekunder i full fart
4. vänder motor A i 3 sekunder i full fart
5. stannar motor A
6. Europaparlamentet upprepar steg 1. -5. med motor B
7. startar över
Skissen nedan och kan användas för att testa styrelsen versioner 2 – 5. Observera att motorn förarens styrelsen versioner som inte har en variabel hastighet alternativ alltid kommer att fungera i full fart.
Att testa styrelsen, I:
en) ansluten DIYduino med Rx, Tx, GND och återställa till min Arduino Uno som visas i steg 7 "Testa avsnittet DIYduino". Du kan också använda en USB till seriell programmerare om du har en.
b) ansluten min valda motor matningsspänningen Vcc = 12V DIYduino makt ingång.
c) ansluten en voltmeter till motoreffekt i styrelsen. Detta forum används endast en utgång.
c) uppladdat skissen "skiss för testning 3-i-1 DIYduino' visas nedan.
d) såg voltmetern och kontrollerade att matningsspänningen till motorn var:
(i) påslagen
(ii) inverterad
(iii) påslagen
(iv) inverterad
(v) stängs av
3, 3, 3, 3 och 12 sekunder, respektive.
För variabel hastighet motor förare (version 3 och version 5) de två första stegen bör resultera i en Matningsspänning < Vcc. De andra två steg bör produktionen Vcc.
För fast hastighet motor förare (version 2 och version 4) ska utdata alltid vara Vcc.
e) om du byggt en 2-kanals styrelse, flytta testet leder på din voltmeter till den andra kanalen. Du bör följa samma mönster.
Detta avslutar detta instructable.
Lycka till med din robotar.
Om du råkar skapa och använda en av dessa styrelser i din design, skulle jag älska att se dem. Vänligen ladda upp några bilder.
Skiss för att testa 3-i-1 DIYduino:
/ *---(Deklarera variabler)---* /
int dir1PinA = 7. Ange riktning 1 polig Motor a till stift 6
int dir2PinA = 8; Ange riktning 2 polig Motor a till stift 5
int speedPinA = 9; som kontroll hastighet PWM stift för Motor A till pin 9
int dir1PinB = 12; Ange riktning 1 pin för Motor B till stift 12
int dir2PinB = 13. Ange riktning 2 stift för Motor B till stift 13
int speedPinB = 6; ställa in kontrollen speed PWM stift för Motor B till stift 6
void setup() / *** SETUP: kör en gång *** /
{
Ställ in pinkodsskydd lägen
pinMode (dir1PinA, produktionen); för motor A styra riktning
pinMode (dir2PinA, produktionen); för motor A styra riktning
pinMode (speedPinA, produktionen); för motor en kontroll hastighet
pinMode (dir1PinB, produktionen); för motor B styra riktning
pinMode (dir2PinB, produktionen); för motor B styra riktning
pinMode (speedPinB, produktionen); för motor B styra hastighet
starta upp med stoppad motorer:
Motoriska A
digitalWrite (dir1PinA, låg);
digitalWrite (dir2PinA, låg);
Motor B
digitalWrite (dir1PinB, låg);
digitalWrite (dir2PinB, låg);
} //--(end setup)---
void loop() / *** LOOP: kör ständigt *** /
{
Vrid motorn en i första riktningen med hastighet 100 på en skala upp till 255
analogWrite (speedPinA, 100);
digitalWrite (dir1PinA, hög);
digitalWrite (dir2PinA, låg);
Vänta 3 sekunder
Delay(3000);
Vrid motorn en i andra riktningen med hastighet 100 på en skala upp till 255
analogWrite (speedPinA, 100);
digitalWrite (dir1PinA, låg);
digitalWrite (dir2PinA, hög);
Vänta 3 sekunder
Delay(3000);
Vrid motorn en i första riktningen med hastighet 255 på en skala upp till 255
analogWrite (speedPinA, 255);
digitalWrite (dir1PinA, hög);
digitalWrite (dir2PinA, låg);
Vänta 3 sekunder
Delay(3000);
Vrid motorn en i andra riktningen med hastighet 100 på en skala upp till 255
analogWrite (speedPinA, 255);
digitalWrite (dir1PinA, låg);
digitalWrite (dir2PinA, hög);
Vänta 3 sekunder
Delay(3000);
stoppa motorn A
digitalWrite (dir1PinA, låg);
digitalWrite (dir2PinA, låg);
Tur motor B i första riktningen med hastighet 100 på en skala upp till 255
analogWrite (speedPinB, 100);
digitalWrite (dir1PinB, hög);
digitalWrite (dir2PinB, låg);
Vänta 3 sekunder
Delay(3000);
Tur motor B i andra riktningen med hastighet 100 på en skala upp till 255
analogWrite (speedPinB, 100);
digitalWrite (dir1PinB, låg);
digitalWrite (dir2PinB, hög);
Vänta 3 sekunder
Delay(3000);
Tur motor B i första riktningen med hastighet 255 på en skala upp till 255
analogWrite (speedPinB, 255);
digitalWrite (dir1PinB, hög);
digitalWrite (dir2PinB, låg);
Vänta 3 sekunder
Delay(3000);
Tur motor B i andra riktningen med hastighet 100 på en skala upp till 255
analogWrite (speedPinB, 255);
digitalWrite (dir1PinB, låg);
digitalWrite (dir2PinB, hög);
Vänta 3 sekunder
Delay(3000);
stoppa motor B
digitalWrite (dir1PinB, låg);
digitalWrite (dir2PinB, låg);
} //--(end huvudloop)---