Arduino gebaseerde seriële servo-controller (3 / 6 stap)

Stap 3: Programma de arduino


nu kunt u het uploaden van de schets op de arduino.

Hier is een eenvoudige verdeling aan de code:

#include

Servo myservo; maken van servo-object om te bepalen van een servo
Servo myservo1;

int incomingByte = 0, datacount = 0, counter = 0, klaar = 0; voor binnenkomende seriële gegevens
char gegevens [10];
const char controleren [8] = "ma11hew";
char opdracht [3];

VOID Setup {}
myservo.attach(9);
myservo1.attach(10);
Serial.begin(38400); Hiermee opent u de seriële poort, gegevenssnelheid ingesteld
Serial.println ("Hallo Arduino hier!");  toegevoegd om te helpen bij het identificeren van de seriële poort

Dit zet alleen de seriële poort en de servo's.

int i;
voor (ik = 0; ik < 180; i ++)
{
myservo.write(i);
delay(15);
}
myservo.write(5);

voor (ik = 0; ik < 180; i ++)
{
myservo1.write(i);
delay(15);
}
myservo1.write(5);
}

Eenvoudige vegen beweging om te controleren of dat de servo's correct werken.

void loop {}

klaar = 0;
Counter = 0;
terwijl (1 == 1)
{
Als (Serial.read()! = verify[counter])
{
breken;
}
if(Counter == 6)
{
vertraging(20);
opdracht [0] = Serial.read();
opdracht [1] = Serial.read();
Als (Serial.read() == ((opdracht [1] * 12) % 8))
// {
klaar = 1;
//}
Serial.println ("opgeslagen opdracht");
}
teller ++;
delay(2);
}

Dit controleert het seriële buffer voor de tekenreeks van de juiste vergunning dan pakt twee bytes voor de opdracht.
de commentaar als verklaring voorziet in een geïmproviseerde controlesom maar handmatige interfacing hard zou maken.
klaar kan worden ingesteld op 0, zodat opdrachten zullen niet worden geparseerd zoals in het geval van beschadigde gegevens.

doorzoeken van opdrachten
Als (klaar == 1)
{
Als (opdracht [0] == 'T')
{
opdracht [0] = 0;
Serial.Print ("throttle control op pin 9 aan:");
Serial.println (kaart (opdracht [1], 126, 2, 32, 180), DEC);
myservo.write (kaart (opdracht [1], 126, 2, 32, 180));

}

Als (opdracht [0] == de ')
{
opdracht [0] = 0;
Serial.Print ("throttle control op pin 10 aan:");
Serial.println (kaart (opdracht [1], 126, 2, 32, 180), DEC);
myservo1.write (kaart (opdracht [1], 126, 2, 32, 180));

}
}
}

de rest van de code is het zoeken van de opdracht [] voor geldige opdrachten (T of S.)
als ofwel overeenkomen met het neemt de volgende byte en verzendt dit naar de servo.
meer op de kaart (opdracht [1], 126, 2, 32, 180) later...
de code hier is uitbreidbaar voor wat anders moet u wellicht (bijv. lampen, motors, IR, enz.)

Deze code zou moeten werken prima zonder wijzigingen.

Gerelateerde Artikelen

ARDUINO gebaseerde MPPT SOLAR CHARGE CONTROLLER

ARDUINO gebaseerde MPPT SOLAR CHARGE CONTROLLER

ARDUINO GEBASEERDE MPPT SOLAR CHARGE CONTROLLERGa naar mijn Website voor schema en code ARDUINO gebaseerde MPPT SOLAR CHARGE CONTROLLERWat is Mppt (Maximum power point bijhouden)?"we gebruiken MPPT algoritme om de maximum beschikbare energie van de f
Seriële Servo Controller w/Arduino - controle tot 12 Servos tegelijk met behulp van de Arduino en een USB-verbinding

Seriële Servo Controller w/Arduino - controle tot 12 Servos tegelijk met behulp van de Arduino en een USB-verbinding

ik ga u laten zien hoe je Arduino gebruik maximaal 12 servo's tegelijk met minimale jitter control.  Met behulp van een eenvoudige seriële interface kunt u de positie van maximaal 12 servo kanalen.  Maximaal 10 momentopname posities kan worden opgesl
Plugduino - Arduino gebaseerde 120 Volt stopcontact controller

Plugduino - Arduino gebaseerde 120 Volt stopcontact controller

Geef je Arduino een 120 volt schop in de broek!De Arduino is een geweldig hulpmiddel voor iedereen die geïnteresseerd in het leren van de microcontroller programmeren, maar na enkele LED's knipperen, wat is volgende? Dit project maakt het mogelijk uw
GOduino III - de breadboard-vriendelijke Arduino gebaseerde robot controller

GOduino III - de breadboard-vriendelijke Arduino gebaseerde robot controller

UPDATES16 nov 2012 gekenmerkt op DangerousPrototypes.com http://goo.gl/N4DIC3 oktober 2012: heb ik een PCB-adapter om te helpen positie IR & ultrasone sensoren 90 graden naar breadboard ter ondersteuning van GOduino III robot projecten ontworpen1 sep
Beheersing van de servo's met behulp van de WS-32 Servo Controller en Arduino Uno

Beheersing van de servo's met behulp van de WS-32 Servo Controller en Arduino Uno

er zijn twee manieren via welke u kunt servo's een SSC-32 servo controller gebruikt. Je kunt het doen rechtstreeks vanuit de lynx WS-32 Terminal of via seriële opdrachten verzonden vanaf een arduino board. Hier, gaan we kijken hoe de controle van de
DIY Arduino gebaseerde MIDI Foot Controller

DIY Arduino gebaseerde MIDI Foot Controller

Ik heb al willen proberen een gitaar looper voor een tijdje, maar ik houd niet van het idee van geld op een specifieke pedaal van looper gebruikten wanneer ik een computer gebruiken kan voor dat en sinds ik heb het leren van arduino voor de lol perfe
Arduino mini USB 24 kanaal servo controller boord

Arduino mini USB 24 kanaal servo controller boord

Arduino mini USB 24 kanaal servo controller boord gebruiken voor tweevoeter robot en kruipt robot controllerSteun van het meest recente Windows8 64 bit systeem, steun linuxsysteem (xp, vista, win7 ondersteuning)Dit is de onlangs bijgewerkte controlle
Arduino gebaseerd 4WD Bluetooth Microbot

Arduino gebaseerd 4WD Bluetooth Microbot

Deze microbot is geïnspireerd door Arduino-Nano-gebaseerd-Microbot. In plaats van 2 servo's, wordt deze robot aangedreven door 4, eliminerend de behoefte aan nummers.De micro controller die ik gebruik is Bluno kever, die een kleine Arduino gebaseerd-
Stoom torentje Tank R/C PIC Servo Controller

Stoom torentje Tank R/C PIC Servo Controller

Een Microchip PIC-gebaseerde servo-controller biedt veel van de mogelijkheden van digitale servo's voor onder $9!De controllers vangen de r/c ontvanger output, optioneel manipuleren van de monsters en regenereren nieuwe servo besturingsseinen. Als zo
Maak kennis met Climaduino - de Arduino gebaseerde thermostaat die u van uw telefoon controleren!

Maak kennis met Climaduino - de Arduino gebaseerde thermostaat die u van uw telefoon controleren!

Update:Er is een nieuwe versie van de Climaduino en de Climaduino Controller met enkele zeer belangrijke wijzigingen.Ondersteunt meerdere zonesDe Yún van de Arduino gebruiktWerken met centrale airconditioningCommuniceert met het MQTT -protocol (kunt
InPace - een Arduino gebaseerde GPS gegevens vastleggen van fitness armband met bluetooth en een iOS-app

InPace - een Arduino gebaseerde GPS gegevens vastleggen van fitness armband met bluetooth en een iOS-app

InPace is een Arduino gebaseerde fitness armband, met een begeleidende iOS applicatie, die live kan feedback over hoe de gebruiker pacing zelf tijdens een run, lopen of fietsen route. Zij sporen GPS-locaties en huidige tijden de huidige prestaties va
DIY Smart Volg mij Drone met Camera (Arduino gebaseerd)

DIY Smart Volg mij Drone met Camera (Arduino gebaseerd)

Drones zijn zeer populair speelgoed en hulpprogramma's deze dagen. U vindt professionele en zelfs beginner drones en vliegende gadgets op de markt. Ik heb vier drones (quadcopters en hexcopters), omdat ik hou van alles wat vliegt, maar de 200e vlucht
Arduino gebaseerd Bi-color LED Matrix Audio Spectrum Visualizer

Arduino gebaseerd Bi-color LED Matrix Audio Spectrum Visualizer

Nadat we met de Bi-color LED Matrix Driver Module kit kwamen, we hebben ons gebogen rond voor interessante projecten te werken.Bent u wellicht geïnteresseerd in een aantal van de projecten die we hebben opgemaakt op instructables met behulp van deze
Arduino gebaseerde Bi-color LED Matrix Tetris Game

Arduino gebaseerde Bi-color LED Matrix Tetris Game

Een van de elektronica DIY kit jolliFactory kwam omhoog met is de Bi-color LED Matrix Driver Module Kit. Deze module is ontworpen om kunnen keten-zodat u kan serieschakeling de modules samen aan het aantal modules moet u past bij uw project.De volgen