Camera Equipped RC car using sixth sense (5 / 6 steg)
Steg 5: Hacking leksak bil sändare och mottagare: testning
Först måste vi hitta ett sätt att vända den fysiska knappen på sändaren och göra en mikro-controller aktiverar dessa kontakter.
Instruktioner
1: ta bort alla fyra knappar.
2: hitta vad som är positiva och negativa kontakten av växlarna.
3. löd startkablar till alla växlarna kontakter.
4: om kontakterna har varit monteringsytan då kanske du vill limma sändaren styrelsen till en prototyping ombord. ReWire byglarna till prototyper styrelsen.
5: när det är gjort, Anslut byglarna till deras respektive transistorer (NPN) som visas i schematiskt.
6: nu ansluta basen av transistorerna till deras respektive stift på mikro-controller.
7: Anslut elkablarna och dubbelkolla kretsen.
8: ansluta ström till återuppliva kretskortet.
9: ladda upp skissen på micro controller.
10: bilen måste börja flytta enligt skiss helt trådlöst.
(denna skiss är för en Arduino mikrokontroller, vi använde detta för att testa och senare bytte till Python på Raspberry PI för kontroll)
Arduino skiss
/*
* Hårdvara Hackathon
* Testa kod 1, detta kommer att kontrollera R/C bil, här koden accepterar inte någon användarindata
* 14/11/15
*/
int forwardPin = 2;
int backwardPin = 7.
int leftPin = 8;
int rightPin = 9;
void setup() {
pinMode (forwardPin, produktionen);
pinMode (backwardPin, produktionen);
pinMode (leftPin, produktionen);
pinMode (rightPin, produktionen);
Serial.BEGIN(9600);
}
void loop() {
Gå framåt
digitalWrite (forwardPin, hög);
Serial.println ("flytta framåt");
Delay(750);
digitalWrite (forwardPin, låg);
Flytta bakåt
digitalWrite (backwardPin, hög);
Serial.println ("flytta bakåt");
Delay(750);
digitalWrite (backwardPin, låg);
Sväng vänster
digitalWrite (forwardPin, hög);
digitalWrite (leftPin, hög);
Serial.println ("sväng vänster");
Delay(750);
digitalWrite (forwardPin, låg);
digitalWrite (leftPin, låg);
Sväng höger
digitalWrite (forwardPin, hög);
digitalWrite (rightPin, hög);
Serial.println ("sväng höger"); Delay(750);
digitalWrite (forwardPin, låg);
digitalWrite (rightPin, låg);
}