Bearbetning kontroller R/C bil med XBee moduler (12 / 14 steg)

Steg 12: Arduino skiss



Arduino skiss förklara

Förklaringen är inkluderad i skiss displayen som kommentar i fet stil.

Inkludera SoftwareSerial bibliotek
#include < SoftwareSerial.h >

Ange XBee-modul för att använda SoftwareSerial bibliotek och ange Arduino stiften för att användas som TX (10) och RX (9)
SoftwareSerial XBeeSerial = SoftwareSerial (10, 9);

/ / Ställa in Arduino pins som ansluten till L293D - Motor drivrutiner för vänster och högersväng
#define TURN_ENABLE_PIN 3 / / använda PWM för detta stift
#define LEFT_PIN 4
#define RIGHT_PIN 2

Ställa in Arduino stiften som ansluten till L293D - Motor drivrutiner för framåt och bakåt
#define DRIVE_ENABLE_PIN 11 / / använda PWM för detta stift
#define BACKWARD_PIN 8
#define FORWARD_PIN 12

Indatakommandon
#define BEGIN_COMMAND 0x7F / / decimal = 127, binära = 0111 1111
#define vidarebefordra 0x1 / / decimal = 1, binära = 0000 0001
#define bakåt 0x2 / / decimal = 2, binära = 0000 0010
#define lämnade 0x4 / / decimal = 4, binära = 0000 0100
#define rätt 0x8 / / decimal = 2, binära = 0000 1000

Ange kommandot variabel vara två byte array,
kommandot [0] = sväng vänster eller höger, och köra framåt eller bakåt
kommandot [1] = hastighet.

int befalla [2].

void setup() {

Inställd XBee SoftwareSerial överföringshastighet 9600 bps
XBeeSerial.begin(9600);

Tilldelar Arduino motors kontroll stift som produktion
pinMode (TURN_ENABLE_PIN, OUTPUT);
pinMode (LEFT_PIN, OUTPUT);
pinMode (RIGHT_PIN, OUTPUT);

pinMode (DRIVE_ENABLE_PIN, OUTPUT);
pinMode (BACKWARD_PIN, OUTPUT);
pinMode (FORWARD_PIN, OUTPUT);
}

void loop() {

XBee SoftwareSerial lyssnar på kommandon från bearbetning GUI,
/ / av ställa villkoret att se om det finns en data i bufferten som följetong
IF(XBeeSerial.available() > 0) {

och om readCommand() funktioner returnerar värdet mer än 0,
sedan executeCommand()

IF(readCommand() > 0) {
executeCommand();
}
}
}

Läs Command() metod,
returnera värdet 1,
om det finns börjar tre byte med 0x7F i följetong bufferten
eller returnera värdet 0, annars.

//
int readCommand() {

int b = XBeeSerial.read();

IF(b == BEGIN_COMMAND) {/ / BEGIN_COMMAND = 0x7F
kommandot [0] = readByte(); kommandot [0] är antingen 0x1, 0x2, 0x4 eller 0x8
kommandot [1] = readByte(); kommandot [1] är hastigheten varierar från 0 - 6

tillbaka 1.
} annat {

Return 0;
}
}

int readByte() {

medan (sant) {
IF(XBeeSerial.available() > 0) {
återvända XBeeSerial.read();
}
}
}

Översätta kommandon får från bearbetning GUI
och vända motorstyrning stiften på/av

void executeCommand() {

int c = kommando [0];
int hastighet = kommando [1].

Styra framåt & bakåt
DRIVE_ENABLE_PIN = 11
BACKWARD_PIN = 8
FORWARD_PIN = 12

digitalWrite (DRIVE_ENABLE_PIN, låg);

Jämföra (logiskt och) första byten i kommandot array (command[0]) med framåt (0x01)
om resultatet är sant, då inställd Motor kontroller stiften drivmotorn fram

om (c & framåt) {
digitalWrite (BACKWARD_PIN, låg);
digitalWrite (FORWARD_PIN, hög);
}

Jämföra (logiskt och) första byten i kommandot array (command[0]) med bakåt (0x02)
om resultatet är sant, då som Motor kontroller stiften att köra motor bakåt

//

om (c & bakåt) {
digitalWrite (FORWARD_PIN, låg);
digitalWrite (BACKWARD_PIN, hög);
}

Jämföra (logiskt och) första byten i kommandot array (command[0]) med
resultatet av logiska eller mellan framåt (0x01) och BACKWARD(0x02)
om resultatet är sant, då som hastigheten till den andra byten av kommandot array (command[1])

//
om (c & (fram | BAKÅT)) {

analogWrite (DRIVE_ENABLE_PIN, hastighet);

Kontroll vänster & höger sväng
TURN_ENABLE_PIN = 3
LEFT_PIN = 4
RIGHT_PIN = 2 digitalWrite (TURN_ENABLE_PIN, låg);

om (c & vänster) {
digitalWrite (RIGHT_PIN, låg);
digitalWrite (LEFT_PIN, hög);
}

om (c & r) {
digitalWrite (LEFT_PIN, låg);
digitalWrite (RIGHT_PIN, hög);
}

om (c & (vänster | HÖGER)) {
digitalWrite (TURN_ENABLE_PIN, hög);
}
}

Se Steg
Relaterade Ämnen

En annan Arduino fjärrkontroll bil kontrolleras av Android-telefon med Bluetooth-modul

Denna ska tutorial går genom inrättande av Arduino IDE för användning med en Adafruit motor sköld klon styrelsen samt att konfigurera en gammal RC bil så att det kan styras med en android-telefon via bluetooth. Koden för RC bil kan hittas här: http:/...

Arduino Uno och Visuino: kontrollera Smart Car Robot med Joystick och L298N motorn förarens

Smart Car anger i kombination med L298N Motor drivrutinsmoduler, erbjuder en av de enklaste sätten att göra roboten bilar. L298N Motor Driver modul är lätt att kontrollera med Arduino, och med hjälp av Visuino kan du programmera din bil i sekunder.I...

Arduino trådlös programmering med XBee serie 1 eller 2

Hej. Detta Instructable kommer att guida dig genom processen att trådlöst programmering din Arduino använder två XBees. Jag har precis avslutat utforma en EEGEN radiosystemet med XBee moduler, så jag har blivit ganska flytande i programplaneringen oc...

Kontrollera en Raspberry Pi RC bil med ett tangentbord

i denna mellanliggande tutorial får du lära dig att driva en hackad RC bil med ett tangentbord med en modell B Raspberry Pi enhet med hjälp av Python. De viktigaste punkterna i denna tutorial är:• Hur du konfigurerar virtuella Pulse bredd modulering...

ESP8266-1 aktiverade RC vände Wifi bil med webbläsare kontrolleras riktning.

Projektet är tänkt för att visa förmåga av grundläggande IoT enheter. Syftet var att kontrollera rörelse i en bil via webbläsare. Jag hade några alternativ för att uppnå detta - 1) över webben, direkt styra motorn på bilen av en WiFi-modul, 2) Konfig...

Arduino RC bil med FPV Camera

Detta Instructable beskriver en fjärrkontroll bil jag har satt ihop. Bilen har inga verkliga syftet - var det bara en utmaning, att se vad kunde göras med allmänt tillgänglig maskinvara. Det har följande funktioner:-4 x 4 rock crawler chassi-PC baser...

Kontroll Arduino RC bil med android telefon & 1Sheeld

Om du vill kontrollera RC bil med din android smartphone utan att använda Bluetooth-modul och programmering android ansökan, kan du använda 1Sheeld i stället för dem.I grund och botten består 1Sheeld av två delar. Den första delen är en sköld som är...

IoT RC bil med Intel Edison (IntelIoT)

FörordLåt oss först förstå vad vi försöker uppnå här. Vi har alla typer av RC leksaker för våra barn och sedan finns det video och mobila spel. En detta är säkert att alla bara älskar bilar, oavsett om det är verkligt eller i 3D-spel eller en leksaks...

Remote Control bil med Arduino och Bluetooth

Projektet består i att göra en fjärrkontroll bil använder en bluetooth-anslutning. Denna bil är tänkt att användas i en ballong poppar konkurrens mot andra liknande bilar. Den trådlösa anslutningen uppnås genom att använda en bluetooth-modul som är a...

Hur man styr alla R/C bil med ett flygplan sändare!

Har du någonsin undrat om du använda din R/C flygplan sändare för att styra alla R/C bil också?Hur häftigt vore det att ha 6 eller fler kanaler för att styra din R/C bil, och även anpassa varje kanal enligt ditt val?Jag har längtat att göra något så...

No.02 ratt köra R/C bil med Arduino, webbkamera och net. USB etc.

IP-kontroll bilen lanserades 2001.Jag gör liknande funktion bilen utnyttja kommersialiserade produkter.Begreppet bil No.02 är att utnyttja kommersialiserade produkter, och jag är en amatör i elektriska. Så Skyll inte på mig som systemet inte är sofis...

Snabba Controlled RC bil med (4 CH Motor Driver styrenhet + Arduino + Bluetooth)

Hej, eftersom detta är min första instructable här, jag hoppas du gillar det och Känn dig fri att fråga om något inte klart i den.För det första, jag började detta projekt efter jag ville styra 4 motorer som kräver relativt hög effekt (12Volts, 4 amp...

Arduino solar storma controller + effektreglering och data loggning online med Xbee WiFi

För ett tag sedan jag började arbeta på en sol laddningsregulatorn, det var baserat på en PIC mikrokontroller, en 20 x 4 tecken display och koden är skriven i assembler. Det fungerade bra och arbetade fortfarande när jag bestämde mig att lägga mer ti...

Autonoma Arduino bil med infraröd närhets-Sensor

Detta Instructable visar hur du ändrar en preloved RC bil så det kan styras med en Arduino. Sedan visar Instructable dig hur man gör RC kör en enkel figur 8 kod därifrån Instructable visar dig hur du lägger till en infraröd rörelsesensor så det kan i...

Hur man gör en enkel bil med flaska

Hej! I detta instructable jag kommer att visa dig hur man gör en enkel bil med flaska.Steg 1: Saker som behövs1:A flaska2:Tape3:Scissors4: på/av-knapp5:Battery.6:Back hjul (med motor)7:front hjul8:LED (valfritt)Steg 2: Koppla bakhjulenBifoga den till...

Göra en James Bond Spy bil (med vapen) och en spion skolan Halloween Display

här är de instruktioner som behövs för att omvandla en Mazda 6 (min Aston Martin är i butiken) in i en James Bond spy bil. Jag har även lite instruktion på interaktiva temat (Spy skola) som vi hade i år.Varje år, göra min son och jag en grund-up bygg...

Hur man använder XBee moduler som sändaren & mottagare - Arduino handledning

I denna tutorial använder vi två xBee (serie 1) moduler med Arduino uno styrelsen. Vi kommer att konfigurera dem att agera som en mottagare och sändare för att styra ljusstyrkan i en LED trådlöst med hjälp av en potentiometer.XBee - serien 1 - module...

Arduino kontroller billigt RC bil sändare

MålBilliga kinesiska RC leksaksbilar kan fås för ca 5 euro på den lokala marknaden. Trådlös hjärnorna bakom flesta av dessa billigt RC leksaker är ett par mycket billiga ICs TX2 och RX2. Japp, är det vad de kallas. Så denna handledning är fokuserad p...

Hur man gör en trådbunden Rc bil med en Arduino

Jag ska visa dig hur man gör en RC bil med en arduinoSteg 1: material2 Arduino unos (det är vad jag använde bara.)Hoppare ledningar och manliga till kvinnliga ledningar2 Arduino joysticks2 9v batterier1 9.6v laddningsbara RC bilbatteri1 tower Pro Ser...