gear door sequencer

Projecten die niet passen in bovenstaande onderwerpen
Gebruikers-avatar
Berichten: 5043
Geregistreerd: 13 Mei 2013, 20:57
Woonplaats: Heemskerk

Re: gear door sequencer

Berichtdoor nicoverduin » 02 Sep 2013, 21:56

ben komt dat niet door die write (1000)?Of doen die deuren ook raar?
Docent HBO Technische Informatica, Embedded ontwikkelaar & elektronicus
http://www.verelec.nl

Advertisement

Gebruikers-avatar
Berichten: 700
Geregistreerd: 05 Mrt 2012, 21:56
Woonplaats: Appingedam

Re: gear door sequencer

Berichtdoor pjh » 02 Sep 2013, 22:28

Hij doet enkel raar in het begin... in het Loop gedeelte ... werkt alles perfect.

Misschien moet je de servo niet in de setup al attachen.
Dan kan hij raar gaan doen, nog voor je iets gedaan hebt.
Verder na de actie (wiel in/uit), de servo weer detachen. Dan blijft hij in de stand staan waarin hij stond.

Ik moet eerlijk bekennen dat ik je programma niet helemaal ben langsgelopen ofzo.
Zoek op dit forum naar chattering. Daar kom je wat meer uitleg tegen. (http://arduinoforum.nl/viewtopic.php?f= ... ering#p539)

Berichten: 1
Geregistreerd: 03 Sep 2013, 13:45

Re: gear door sequencer

Berichtdoor lvo36 » 03 Sep 2013, 14:14

het gedeelte wielen uit of wielen in word verschilende malen doorlopen , dit zorgt er soms voor dat de deur al terug naar een positie gaat voor hij de andere bereikt heeft. endloop zou er voor moeten zorgen dat dit niet gebeurd.
in de volgende sketch word dit opgelost met "if (ServoIn > ServoOld-300 && ServoIn < ServoOld+300)" dit zorgt ervoor dat er slechts eenmaal de code word uitgevoerd.

#include <VarSpeedServo.h>

VarSpeedServo maingear; //declaire maingear
VarSpeedServo geardoor1; //declaire geardoor1
VarSpeedServo geardoor2; //declaire geardoor2

int ServoIn; //declair int for switchchannel
int ServoOld; //declair int for servo jitter

void setup(){
//lower the gear when power on to avoid plane dropping to ground
maingear.attach(9); //maingearservo has to be conected to this pin
geardoor1.attach(11); //geardoor1 servo has to be conected to this pin
geardoor2.attach(10); //geardoor2 servo has to be conected to this pin
geardoor1.slowmove(2000,50); //open geardoor1
geardoor2.slowmove(2000,50); //open geardoor2
delay(3000); //wait 3s
maingear.writeMicroseconds(1000);//lower maingear
delay (3000); //wait 3s
geardoor1.slowmove(1000,50); //close geardoor1
ServoIn = pulseIn (8,HIGH,25000);//measure switchchannel
ServoOld = ServoIn; //make shure switch needs to be moved
pinMode(13,OUTPUT); //put the LED pin in output mode
}

void loop(){
ServoIn = pulseIn (8,HIGH,25000); //measure switchchannel
if (ServoIn > ServoOld-300 && ServoIn < ServoOld+300){//filter radio jitter. give a range where the system is idle
delay (15); //wait for next servopuls
}
else if (ServoIn <= 1400){ //if the pulse is shorter than 1400ms lower the gear
GearDown:
geardoor1.slowmove(2000,50); //open geardoor1
geardoor2.slowmove(2000,50); //open geardoor2
delay (3000); //wait 3s
maingear.writeMicroseconds(1000);//lower maingear
delay (3000); //wait 3s
geardoor1.slowmove(1000,50); //close geardoor1
digitalWrite(13,HIGH); //put on LED
ServoOld = ServoIn; //make shure switch needs to be moved
}
else if (ServoIn >= 1600) { //if the pulse is longer than 1600ms raise gear
GearUp:
geardoor1.slowmove(2000,50); //open geardoor1
delay (3000); //wait 3s
maingear.writeMicroseconds(2000);//raise maingear
delay (3000); //wait 3s
geardoor1.slowmove(1000,50); //close geardoor1
geardoor2.slowmove(1000,50); //close geardoor2
digitalWrite(13,LOW); //switch off LED
ServoOld = ServoIn; //make shure switch needs to be moved
}
}

Berichten: 24
Geregistreerd: 01 Sep 2013, 13:00

Re: gear door sequencer

Berichtdoor benovitch » 03 Sep 2013, 17:27

mijn probleem blijft nog altijd hetzelfde, de servo's bewegen tijdens de opstart van de Arduino. En dit wil ik absoluut vermijden, ik wil niet dat de deur of wielen een beweging maken tijdens het opstarten. ze zouden tegen de wielen kunnen bewegen terwijl ze uitstaan.

Ben

Gebruikers-avatar
Berichten: 5043
Geregistreerd: 13 Mei 2013, 20:57
Woonplaats: Heemskerk

Re: gear door sequencer

Berichtdoor nicoverduin » 03 Sep 2013, 19:18

Heb je al eens geprobeerd het probleem te isoleren. Maw. een simpele sketch en met een servo. En dan eerst alleen de attach. Dan opnieuw maar dan met slowmove erbij enz.? Nu blijft het een beetje gokken waar het in kan zitten.
Docent HBO Technische Informatica, Embedded ontwikkelaar & elektronicus
http://www.verelec.nl

Berichten: 77
Geregistreerd: 06 Okt 2012, 10:57

Re: gear door sequencer

Berichtdoor Beamer » 04 Sep 2013, 10:21

Misschien kun je het ondervangen door de voedingsspanning van de servo na het opstarten vertraagd te laten inschakelen door de arduino.

Gebruikers-avatar
Berichten: 5043
Geregistreerd: 13 Mei 2013, 20:57
Woonplaats: Heemskerk

Re: gear door sequencer

Berichtdoor nicoverduin » 04 Sep 2013, 18:33

Ik vraag me nog steeds af waar nu het probleem zit. Door een simple sketch te maken kun je het probleem isoleren. Nu is het wel allemaal heel erg vaag.
Docent HBO Technische Informatica, Embedded ontwikkelaar & elektronicus
http://www.verelec.nl

Berichten: 24
Geregistreerd: 01 Sep 2013, 13:00

Re: gear door sequencer

Berichtdoor benovitch » 04 Sep 2013, 19:01

Het probleem zit hem vooral in het begin, bij het opstarten. Bij het aanzetten van het toestel voor een tweede vlucht te doen, dus wanneer het vliegtuig reeds op zijn poten staat. Dan bewegen de servo's, op dit moment zouden ze niet mogen bewegen. Het risico dat een deur zich sluit wanneer het landingsgestel uit staat en er tegen aan loopt. Of wanneer het vliegtuig klaar wordt gemaakt voor de eerste vlucht en de wielen ingetrokken zijn dus met de deuren dicht, het landingsgestel er uit zou komen.

Ben

Gebruikers-avatar
Berichten: 5043
Geregistreerd: 13 Mei 2013, 20:57
Woonplaats: Heemskerk

Re: gear door sequencer

Berichtdoor nicoverduin » 04 Sep 2013, 20:21

Waarom maak je dan niet een eenvoudige sketch om de verschillende stappen te doorlopen die de servo aansturen. De reden is dat je dan kan bepalen of het in de Servo library zit OF in jouw code OF het een elektronisch probleem. Nu heb je veel te veel mogelijkheden en blijft het constant gissen. Ik ben geen vliegtuig bouwer dus kan ik daar niet over oordelen en moet mij beperken tot de losse componenten en jouw programma.
Als jij het probleem kan isoleren dan heeft een bijdrage zin. Ik heb niet meer dan een listing code met een setup die alleen maar loopt als er een harde reset op komt of dat er spanning op de Arduino komt.
Als jij vervolgens begint over een 2e vlucht, weet ik niet of de spanning nu wel of niet van de Arduino af is geweest.
Snap je?
Docent HBO Technische Informatica, Embedded ontwikkelaar & elektronicus
http://www.verelec.nl

Berichten: 24
Geregistreerd: 01 Sep 2013, 13:00

Re: gear door sequencer

Berichtdoor benovitch » 04 Sep 2013, 20:35

De spanning gaat volledig van de Arduino als het vliegtuig uitgeschakeld wordt. Het is dus wanneer er opnieuw spanning op gezet wordt dat de problemen er zijn.

Ben

VorigeVolgende

Terug naar Overige projecten

Wie is er online?

Gebruikers in dit forum: Geen geregistreerde gebruikers en 13 gasten