Mobile Station prototyp för miljömässiga datafångst ("en Mars Rover emulator") (12 / 18 steg)
Steg 12: Testa Rover motorerna
Vid denna punkt, börjar Rover monteras. Jag bestämde mig att plocka isär alla sensorer och börja från noll "Arduino fas". När Rover arbetade ordentligt, var RPI och sensorer ihop.
För motorer användes 2 kontinuerlig servon (SM-S4303R). De servon kommer att köras med en hastighet beroende av puls bredd mottagen dess indata.
- För denna servo, pulse bredd går från 1.0ms till 2.0ms (andra servon kan arbeta med olika puls bredd)
- En puls av 1.5ms kommer att positionera servo på Neutral position, eller "slutat".
- En puls av 1.0ms kommer kommandot servo till full fart (omkring 70 RPM) i en riktning och 2.0ms full fart i motsatt riktning.
- Puls mellan 1,0 och 1.5ms eller 1.5ms och 2.0ms, kommer att generera proportionell hastighet.
Det första som måste göras, är det skicka en 1500ms puls för att kontrollera om motorerna är "slutat". Om inte, servon måste anpassas till fullt stopp (leta efter den gula bulten, bälg servo). Naturligtvis om din servo inte har denna justering, försök avvikelsevärdet "1500ms" tills du får fullt stopp.
#include Servo
leftServo;
Servo rightServo;
Void setup()
{
leftServo.attach(6);
rightServo.attach(5);
leftServo.writeMicroseconds(1500);
rightServo.writeMicroseconds(1500);
}
void loop()
{
}
Den kod nedan, kan användas för ett komplett Rover motor test (framåt, bakåt, Full stop, sväng vänster, sväng höger). Vid behov måste du justera förseningarna för krävs tur vinkel beroende på din motors (också, ibland lämnade och högra pulsvärden bör lite annorlunda att kompensera bristande balans av motorerna.