Controle van een grote Lineaire servomotor met Arduino (4 / 5 stap)

Stap 4: Code 2 - Preset positie met behulp van positionele Feedback


Deze code laat zien hoe te doen fundamentele controle van een grote Lineaire servomotor met elke knop voorinstelling naar een positie met behulp van een Arduino en twee knoppen.

U kunt de code schets hier downloaden: https://github.com/robotgeek/largeLinearPresetPositions/archive/master.zip

 /* Linear Actuator Control using preset position This demo shows how to do basic control of a large linear actuator using an Arduino and two buttons. Each button is hard coded with a preset position. Pressing a button will move the actuator to that position. The circuit: * RobotGeek Pushbutton - Digital Pin 1 * RobotGeek Pushbutton - Digital Pin 2 * RobotGeek Relay - Digital Pin 4 * RobotGeek Relay - Digital Pin 7 Products Used in this demo: - http://www.robotgeek.com/linear-actuators - http://www.robotgeek.com/robotgeek-geekduino-sensor-kit - http://www.robotgeek.com/robotGeek-pushbutton - http://www.robotgeek.com/robotgeek-relay */ // constants won't change. They're used here to set pin numbers: const int button1Pin = 2; // the number of the pushbutton1 pin const int button2Pin = 4; // the number of the pushbutton2 pin const int relay1Pin = 7; // the number of the Realy1 pin const int relay2Pin = 8; // the number of the Relay2 pin const int sensorPin = 0; // select the input pin for the potentiometer // variables will change: int button1State = 0; // variable for reading the pushbutton status int button2State = 0; // variable for reading the pushbutton status int sensorValue = 0; // variable to store the value coming from the sensor int goalPosition = 350; int CurrentPosition = 0; boolean Extending = false; boolean Retracting = false; void setup() { //start serial connection Serial.begin(9600); // initialize the pushbutton pin as an input: pinMode(button1Pin, INPUT); pinMode(button2Pin, INPUT); // initialize the relay pin as an output: pinMode(relay1Pin, OUTPUT); pinMode(relay2Pin, OUTPUT); //preset the relays to LOW digitalWrite(relay1Pin, LOW); digitalWrite(relay2Pin, LOW); } void loop(){ // read the value from the sensor: CurrentPosition = analogRead(sensorPin); // print the results to the serial monitor: Serial.print("Current = " ); Serial.print(CurrentPosition); Serial.print("\t Goal = "); Serial.println(goalPosition); // read the state of the pushbutton values: button1State = digitalRead(button1Pin); button2State = digitalRead(button2Pin); if (button1State == HIGH) { // set new goal position goalPosition = 300; if (goalPosition > CurrentPosition) { Retracting = false; Extending = true; digitalWrite(relay1Pin, HIGH); digitalWrite(relay2Pin, LOW); Serial.println("Extending"); } else if (goalPosition < CurrentPosition) { Retracting = true; Extending = false; digitalWrite(relay1Pin, LOW); digitalWrite(relay2Pin, HIGH); Serial.println("Retracting"); } } if (button2State == HIGH) { // set new goal position goalPosition = 500; if (goalPosition > CurrentPosition) { Retracting = false; Extending = true; digitalWrite(relay1Pin, HIGH); digitalWrite(relay2Pin, LOW); Serial.println("Extending"); } else if (goalPosition < CurrentPosition) { Retracting = true; Extending = false; digitalWrite(relay1Pin, LOW); digitalWrite(relay2Pin, HIGH); Serial.println("Retracting"); } } if (Extending = true && CurrentPosition > goalPosition) { //we have reached our goal, shut the relay off digitalWrite(relay1Pin, LOW); boolean Extending = false; Serial.println("IDLE"); } if (Retracting = true && CurrentPosition < goalPosition){ //we have reached our goal, shut the relay off digitalWrite(relay2Pin, LOW); boolean Retracting = false; Serial.println("IDLE"); } } 

Gerelateerde Artikelen

Controle van een kleine Lineaire servomotor met Arduino

Controle van een kleine Lineaire servomotor met Arduino

Deze Arduino Lineaire Actuator Tutorial toont hoe de controle van een Firgelli kleine Lineaire servomotor met behulp van een Arduino compatibel board en verschillende input sensoren, waaronder een Slider en rotatie knop voor directe besturing, Joysti
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
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
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 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 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 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
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 grote speelgoed lightsaber met afgedankte onderdelen

Maken van een grote speelgoed lightsaber met afgedankte onderdelen

Alles wat u nodig hebt is:een oude 5 watt-zaklampgekleurde cellofaaneen glazen buis van een TL-lampeen kleine ronde spiegeltransparante tapeeen zaak voor een grote speelgoed lightsabereen glassnijderStap 1:Eerst u schroef aller de schroeven en neem u
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
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
Controle van een arduino project via een aanpasbare android / Iphone app met Blynk en Wemos D1: de 2016 SUPER NOOB vriendelijke manier

Controle van een arduino project via een aanpasbare android / Iphone app met Blynk en Wemos D1: de 2016 SUPER NOOB vriendelijke manier

Het doel van dit instructable is om je te leren hoe wifi aangesloten arduino projecten de eenvoudigste en snelste manier mogelijk te maken. Als u een arduino project die u wilt vanaf beheren kunt uw smartphone en dat kostte slechts 4 eurs in hardware
Controle van een DC-motor met Arduino en Visual Basic

Controle van een DC-motor met Arduino en Visual Basic

Hallo vrienden dit is mijn eerste post in instructables.com waar ik zal proberen om meer nieuwheid des vaak.Thema is vandaag met Arduino en Visual Basic.Het project dat we nu zien is een dc-motor controller met Arduino en Visual Basic.Om te controler