Controle van een kleine Lineaire servomotor met Arduino (3 / 7 stap)

Stap 3: De code uploaden naar je Arduino

Deze demonstratie-Code vindt u in de RobotGeek bibliotheken en gereedschappen onder:

Deze code krijgt ons door de volgende drie secties. U zal worden gevraagd om de lineaire actuator aansluiten op verschillende pinnen op basis van het gedeelte van de zelfstudie u bezig bent.

/ *** * De manifestatie van de uitrusting van de RobotGeek Lineaire Actuator experimentator van * ___ * | \---------\___________________________ * __| | || --------------------|__ * (o | FIRGELLI | o || ____________________| o) * |__________________/--------------------------|| *** Het volgende schema zal u toelaten om een Firgelli Lineaire actuator met controle * de RobotGeek schuif, RobotGeek knop RobotGeek Joystick en RobotGeek druktoetsen ** http://www.robotgeek.com/robotgeek-experimenters-kit-linear-actuator *** bedrading * Lineaire Actuator - Digital Pin 6, 9, 10 en 11 ** Knob - analoge Pin 0 * Joystick - analoge Pin 1 * Slider - analoge Pin 2 ** drukknop - Digital Pin 2 * drukknop - digitale Pin 4 * drukknop - digitale Pin 7 ** Jumpers voor pinnen 3/5/6 en 9/10/11 moeten worden ingesteld op 'VIN' *** controle gedrag : * De lineaire actuator houden absolute positie verplaatsen van de schuifregelaar of de knop zal verplaatsen. -De verplaatsen van de joystick wordt de lineaire actuator stapsgewijs verplaatsen. Drukken een van de knoppen zal de lineaire actuator naar een vooraf bepaalde positie verplaatsen. * *** / //Includes #include //Servo bibliotheek kan gebruikt worden voor lineaire aandrijvingen van Firgelli Mini //Linear Actuator Pins const int LINEARPIN_BUTTON = 6; Lineaire Actuator op digitale Pin 6 const int LINEARPIN_KNOB = 9; Lineaire Actuator op digitale Pin 9 const int LINEARPIN_SLIDER = 10; Lineaire Actuator op digitale Pin 10 const int LINEARPIN_JOYSTICK = 11; Lineaire Actuator op digitale Pin 11 //Analog Input Pins const int KNOB_PIN = 0; Knop op analoge Pin 0 const int JOYSTICK_PIN = 1; Joystick (verticaal) op analoge Pin 1 const int SLIDER_PIN = 2; Schuifregelaar op analoge Pin 2 //Digital Input Pins const int BUTTON1_PIN = 2; Knop 1 op Digital Pin 2 const int BUTTON2_PIN = 4; Knop 2 op de digitale Pin 4 const int BUTTON3_PIN = 7; Met knop 3 op digitale Pin 7 //Generic deadband beperkt - niet alle joystics zullen centreren op 512, zodat deze limieten verwijderen 'drift' van joysticks die uit het midden. Const int DEADBAND_LOW = 482; Deze waarde te verlagen als drift optreedt, verhogen te verhogen van de gevoeligheid rond het centrum positie const int DEADBAND_HIGH = 542; Verhoog deze waarde als drift optreedt, verlagen om te verhogen van de gevoeligheid rond de midden positie //Max/min pulse waarden in microseconden voor de lineaire aandrijvingen const int LINEAR_MIN = 1050; Const int LINEAR_MAX = 2000; variabelen zal veranderen: int button1State = 0; variabele voor het lezen van de drukknop status int button2State = 0; variabele voor het lezen van de drukknop status int button3State = 0; variabele voor het lezen van de drukknop status Servo linearKnob, linearSlider, linearButton, linearJoystick; maken van servo-objecten om te bepalen de lineaire aandrijvingen int knobValue, sliderValue, joystickValue; variabelen te houden van de laatste lezing van de analoge pins. De waarde zal liggen tussen 0 en 1023 int valueMapped; de joystick waarden zal worden gewijzigd (of 'toegewezen') naar nieuwe waarden worden verzonden naar de lineaire actuator. variabelen voor de huidige positionele waarde wordt verzonden naar de Lineaire servomotor
. int linearValue_Knob = 1500; int linearValue_Slider = 1500; int linearValue_Button = 1500; int linearValue_Joystick = 1500; int speed = 2; void setup {//initialize lineaire aandrijvingen als servo objecten linearKnob.attach(LINEARPIN_KNOB); / / hecht/activeert de lineaire actuator als een servo-object linearSlider.attach(LINEARPIN_SLIDER); / / hecht/activeert de lineaire actuator als een servo-object linearButton.attach(LINEARPIN_BUTTON); / / hecht/activeert de lineaire actuator als een servo-object linearJoystick.attach(LINEARPIN_JOYSTICK); / / hecht/activeert de lineaire actuator als een servo-object //Analog pinnen niet hoeft te worden geïnitialiseerd //use de writeMicroseconds in te stellen van de lineaire aandrijvingen op hun standaard posities linearKnob.writeMicroseconds(linearValue_Knob); () linearSlider.writeMicroseconds linearValue_Slider); linearButton.writeMicroseconds(linearValue_Button); linearJoystick.writeMicroseconds(linearValue_Joystick); } void loop {//Preset posities voor knopbesturingselement / / als de drukknop instellen wordt ingedrukt de lineaire waarde button1State = digitalRead(BUTTON1_PIN); als (button1State == HIGH) {/ / set de positie waarde linearValue_Button = 1300;} button2State = digitalRead(BUTTON2_PIN); als (button2State == HIGH) {/ / set de positie waarde linearValue_Button = 1500;} button3State = digitalRead(BUTTON3_PIN); als (button3State == HIGH) {/ / set de positie waarde linearValue_Button = 1700;} //Analog directe controle //read de waarden uit de analoge sensoren-knobValue = analogRead(KNOB_PIN); sliderValue = analogRead(SLIDER_PIN); linearValue_Knob = kaart (knobValue 0, 1023, LINEAR_MAX, LINEAR_MIN); Kaart van analoge waarde van de sensor tot de lineaire actuator-linearValue_Slider = kaart (sliderValue, 0, 1023, LINEAR_MAX, LINEAR_MIN); Kaart van analoge waarde van de sensor tot de lineaire actuator //Incremental Joystick-controle joystickValue = analogRead(JOYSTICK_PIN); Lees de waarden van de joystick //only update als de joystick buiten de deadzone (d.w.z. verplaatste oustide de middenpositie is) als (joystickValue > DEADBAND_HIGH || joystickValue < DEADBAND_LOW) {valueMapped = kaart (joystickValue, 0, 1023, snelheid, - snelheid); //Map analoge waarde van inheemse joystick waarde (0 tot 1023) tot stapsgewijze wijziging (snelheid naar - snelheid). linearValue_Joystick = linearValue_Joystick + valueMapped; //add toegewezen joystick waarde te presenteren van de waarde linearValue_Joystick = beperken (linearValue_Joystick LINEAR_MIN, LINEAR_MAX); } //Use de writeMicroseconds in te stellen van de lineaire actuator op zijn nieuwe positie linearKnob.writeMicroseconds(linearValue_Knob); linearSlider.writeMicroseconds(linearValue_Slider); linearButton.writeMicroseconds(linearValue_Button); linearJoystick.writeMicroseconds(linearValue_Joystick); delay(10); }

Gerelateerde Artikelen

Controle van een grote Lineaire servomotor met Arduino

Controle van een grote Lineaire servomotor met Arduino

Deze Arduino Lineaire Actuator Tutorial laat zien hoe om te doen basic handmatige bediening van een grote Lineaire servomotor met behulp van een Arduino en twee knoppen. In de eerste set van code, de eerste knop breidt de bedieningssleutel en het twe
Het maken van een DIY borstelloze Gimbal met Arduino

Het maken van een DIY borstelloze Gimbal met Arduino

Dit is een verhaal van mijn derde project met goedkope gyro en Arduino.Na de eerdere twee projecten, Gemakkelijk omgekeerd slinger en 3D kalligrafie, ik gedacht heb van het maken van Camera Gimbal met Arduino. Dan had ik drie beleidsregels voor het p
Het uitvoeren van een borstelloze motor ESC met Arduino

Het uitvoeren van een borstelloze motor ESC met Arduino

Dit instructable zal u tonen hoe te configureren en het uitvoeren van een borstelloze motor ESC met een arduino en het uitvoeren van een borstelloze motor op verschillende snelheden. Het zal gaan door de materialen, installatie van hardware en de sof
Bouwen van een kleine elektronische toetsenbord met LEGO en faya-nugget

Bouwen van een kleine elektronische toetsenbord met LEGO en faya-nugget

In mijn laatste Instructable, ik aangetoond hoe met Lego, een Arduino board en faya-nugget modules te bouwen van een fan: http://goo.gl/brQ9tR,Deze keer ga ik u tonen hoe faya-nuggets kunt met het maken van een kleine elektronische toetsenbord,Stap 1
Bouwen van een 5-as robotarm met Arduino en DynamixShield

Bouwen van een 5-as robotarm met Arduino en DynamixShield

In dit instructable ik zal u tonen hoe te snel en gemakkelijk bouwen een 5-assige robotarm gebruik van commerciële off-the-shelf componenten en besturing van het met behulp van een Arduino met een DynamixShield. De DynamixShield is een nieuwe add-on
Controle van een RGB-LED-Matrix met Android- en IOIO

Controle van een RGB-LED-Matrix met Android- en IOIO

De versie van het product van dit project beschikbaar op http://ledpixelart.com ***Een Android gecontroleerd interactieve spiegel. Running verschillende Android apps draaien, weergegeven de interactieve spiegel foto's, lopende tekst, eenvoudige games
Controle van Ikea Dioder LED-Strip met Arduino + 16 X PWM LED Fader Board

Controle van Ikea Dioder LED-Strip met Arduino + 16 X PWM LED Fader Board

We gonna tonen hoe kabellengte tot en controle een Ikea DIODER LED -strip met een arduino, met behulp van een bord van 16 X LED PWM Fader als tussenpersoon.De 16 X PWM van bestuur is in feite een stelletje mosfets onder controle van de PWM (switches
Controle van de externe Switch CoTech met Arduino (433Mhz)

Controle van de externe Switch CoTech met Arduino (433Mhz)

Een tijdje geleden kocht ik 3 remote Co/Tech 51058 x 10-switches en een 50027 ver van Clas Ohlson in Noorwegen. Ze gebruiken de AM 433mhz band om te communiceren. Ik wilde ze te bestrijden met een Arduino, en na het googlen en een lange tijd lezen, k
Topgeheim: controle van een verborgen USB-poort met een magneet!

Topgeheim: controle van een verborgen USB-poort met een magneet!

Hier is een project van grote 30 minuten voor u nerds die in het geheim blijken te zijn ontluikende spionnen of waarschijnlijk al één zijn.Dit apparaat gebruiken in plaats van die lame oude "onzichtbare map" truc die anderen gemakkelijk kunnen v
Maken van een kleine tak borst met de boor pers

Maken van een kleine tak borst met de boor pers

Op basis van Jimmy Di Resta van video's (links in de video), maakte ik een kleinere tak borst met behulp van de boor pers ans in principe elke zag. Geniet van, en vergeet niet te laat u inspireren!
Het gebruik van een Force Gevoelige Resistor met Arduino

Het gebruik van een Force Gevoelige Resistor met Arduino

Kracht gevoelige weerstanden zijn handige hulpmiddelen voor het meten van de kracht. Ze zijn niet nauwkeurig genoeg zijn om te meten aan een eenheid, maar ze zijn behoorlijk effectief bij een meetgebied van gewicht.Stap 1: Video: How to Force sensore
Beheersing van een RC Servo motor met een Arduino en twee pulsschakelaars

Beheersing van een RC Servo motor met een Arduino en twee pulsschakelaars

de naam zegt het al. Beheersing van een RC auto servomotor met een Arduino en sommige weerstanden, jumper draden en twee tactiele schakelaars. Ik maakte dit de tweede dag kreeg ik mijn Arduino, dus ik erg trots op mezelf ben.Stap 1: Onderdelenlijst O
Automatisch openen / sluiten van een doos met een lineaire servomotor en Arduino

Automatisch openen / sluiten van een doos met een lineaire servomotor en Arduino

Er is een eenvoudige vreugde in het indrukken van een knop die een doos voor u opent. Zeker er zijn snellere en efficiëntere manieren om te openen van een doos, maar niets vergeleken met de magie van een geregelde deksel. Voor deze tutorial zullen we
Controle van een solenoïde met Arduino

Controle van een solenoïde met Arduino

Deze Arduino solenoïde Tutorial toont hoe de controle van een solenoïde gebruik van druktoetsen en een estafette met uw compatibele controller van Arduino. Elektromagneten zijn elektromagnetisch gedreven actuatoren. Wanneer spanning wordt toegepast o