Jukebox trådlös volymkontroll (2 / 9 steg)
Steg 2: Skapa och testa Motor sköld
Hitta den bästa platsen i din jukebox skåp att montera projektet. När det gäller SMC1 är det på vänster sida i skåpet under förstärkaren. Samla material för projektet. Många objekt kan köpas från Adafruit. Vissa måste vara fabricerade själv. Andra kan vara scrounged i rutan i trasiga leksaker och glömda projekt. Montera motorn sköld och testa den. Adafruit har en steg för steg guide för montering. Granska alla lödfogar med ett förstoringsglas. Tryck upp några misstänkta lödfogar. Prototypen är nödvändigt att bygga eftersom vissa komponentersättningar kan vara nödvändigt. Detta är en lärande motion samt att få en fjärrkontroll. Den motoriska skölden är kunna kontrollera 2 servon, 4 DC-motorer, 2 stegmotorer. Vi behöver bara kontrollera en stegmotor. Kunskap om Stifttilldelningar är användbart för att undvika konflikter när du ansluter andra enheter i projektet. Den motoriska skölden använder följande arduino stiften.
Motoriska sköld Stifttilldelningar:
- Digital 11 Stepper #1
- Digital 3 Stepper #1
- Digital 5 Stepper #2
- Digital 6 Stepper #2
- Digital 4,7,8,12 Digital spärr
- Digital Servo: 9 #1
- Digital Servo: 10 #2
- Alla analoga stift öppen
- Digital 2,14-19 öppet
Tråd genom att sköld:
- M1---röd
- M1---gul
- GND---NC
- M2---grön
- M2---Grå/brun
Anslut arduino till stepper motor sköld. Hämta och installera stepper motor bibliotek från adafruit. Jag beslutade att inte använda AccelStepper bibliotek. Detta är ett enkelt program och kräver inte mjuk rörelsekontroll. Vi är bara single stepping motorn. Ett mycket grundläggande exempel rotera medsols sedan counter medurs visas. Ingen rörelse dämpning är nödvändigt. Ladda ner arduino skiss program från Github-jbvolcontrol. Skapa en ny tom skiss. Ladda koden i exemplet nedan.
//
Exempel på grundläggande stepper motor drift med adafruit biblioteket
#include
int jag = 1; int dir = framåt;
Ansluta en stegmotor med 200 steg per varv
till motor port #1 (M1)
AF_Stepper motor (200, 1);
void setup() {
Serial.BEGIN(9600);
Ställ in följetong bibliotek på 9600 bps
Serial.println ("Stepper test!");
motor.setSpeed(30); 10 rpm
}
void loop() {
om (jag < 200) {
motor.Step (1, dir, INTERFOLIERA); jag = i + 1. fördröjning (100);
} annat {jag = 1;
dir =-dir; }
}
Experimentera med olika hastighet steg storlekar att få långsam och smidig hantering av en stegmotor. Se upp för de motor förändringarna med skillnader i strömförsörjningen. Koppla bort formuläret arduino datorn efter varje provning. Använda AC adapter kraften för att se skillnaden i varvtal och vridmoment. I min jukebox finns det en hel del motstånd när du vrider volymratten kontroll. Stepper motor controller kan användas i fyra olika lägen för en mängd olika utförande profiler.
- Singel - en enda spole i nummerlistan är strömförande.
- Dubbel - två spolar är strömförande
- Interleave - energi till spolar överlappningar, detta ger mer jämnhet i stegen.
- Mikrosteg - spolar bredvid varandra är ramped upp och ner vilket resulterar i mikrosteg. Vridmoment är sänkte jag i detta läge.
När du ändrar lägen, den grad ökning av rotation i den motoriska förändringar. Det finns fysik i roterande stepper motor. Beroende på läge, kan ett steg i en 200 steg motor inte rotera axeln 1/200 av en rotation. Stega motorn i "Single"-mode ger 1/200 rotation. Ett "Interleave" steg är mer som 1/400 för en rotation. Microstepping ännu mindre. Det kommer att ta några experiment att få önskad prestanda. Det tar också tålamod. Jag har inte hittat en formel som står för hastighet, läge och steg stegstorlek. Det verkar som det ska vara en kontinuerlig funktion, men deterministiska beteende undkommer mig. Läsa in Accelstepper och spela med dämpad rörelse. Hämta den Accelerator bibliotek. Ta dig tid och utforska driften av en stegmotor.