Stappenmotor

algemene C code
Berichten: 1
Geregistreerd: 20 Jun 2016, 10:15

Stappenmotor

Berichtdoor evert14@hotmail.nl » 20 Jun 2016, 10:22

voor mijn project moet ik een stuurbare auto maken.
om te sturen wil ik een stappenmotor gebruiken en zelf programmeren.
alleen ik kom er niet uit bij de laatste deel:

uitleg wat hij moet doen.
waarde van joystick 200 is de aantal stappen ook 200.
als je bijvoorbeeld de joystick naar rechts doe dan heb je bijvoorbeeld een waarde van 200 dan wil ik al de stappenmotor de 200 stappen heeft gedaan dat hij dan daar stil blijft staan.
maar als de nieuwe waarde bijvoorbeeld de joystick rechts waarde 150 en de oude 200 is dat hij naar de 150 gaat dus 50 stappen naar links gaat. maar als hij bijvoorbeeld de joystick waarde rechts 250 wordt dat hij 50 stappen naar rechts gaat.
maar als hij de oude joystick waarde rechts 200 is en de nieuwe joystickwaarde links 150 is dat hij dan 350 stappen naar links gaat.
maar als hij ondertussen de waardes wordt veranderd van de joystick links of rechts dat het niet uitmaakt.

heeft iemand een idee hoe ik het kan doen???
alvast bedankt.


met vriendelijke groeten,

evertjeee1

Advertisement

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

Re: Stappenmotor

Berichtdoor nicoverduin » 20 Jun 2016, 10:57

Enerzijds moet je bijhouden waar je bent (en hopen dat je geen stappen ondertussen mist). Dat moet te doen zijn.
Anderzijds begrijp ik dat als je beweegt dat hij alle verplaatsingen van de joystick negeert. Dus een boolean bijhouden dat als de joystick beweegt wordt deze true. Ben je op de bestemming zet je deze boolean weer op false.
De joystick lees je alleen als deze boolean false is.
Docent HBO Technische Informatica, Embedded ontwikkelaar & elektronicus
http://www.verelec.nl

Berichten: 4064
Geregistreerd: 16 Okt 2013, 14:31
Woonplaats: s hertogenbosch

Re: Stappenmotor

Berichtdoor shooter » 21 Jun 2016, 09:39

een stappenmotor staat eigenlijk altijd stil, dus dat is geen probleem.

ik neem aan dat je een circuitje gebruikt om de stappenmotor aan te sturen.

Een joystick heeft eigenlijk 3 analoge waarden die belangrijk zijn, dat is links, midden en rechts.
In het begin zijn dat gewoon 3 getallen in je programma.
In de setup moet het motortje naar de middenstand gestuurd worden door hem 200 stappen links te laten zetten (dan stopt deze tegen een aanslag, en dan weer 100 stappen naar rechts.

In de loop:
de joystick opvragen
als waarde tussen links en midden is dan routine1
als waarde tussen midden en rechts is dan routine2

routine1()
gebruik gewenstepositie=map(waarde,links,midden,-100,0)

stapper()
als positie > gewenstepositie dan doe stap links
als positie < gewenstepositie dan doe stap rechts
delay(10)

verder ga ik niet want jij moet het leren
en als dit werkt dan kijk je op arduino.cc wat stepper is (dat werkt dan een stuk makkeleijker) en als dat goed is dan accelstepper.

opdracht: maak het stuur uitstuurafhankelijk dus eerst kleine stapjes en bij flinke joystick veel meer stappen.
paul deelen
shooter@home.nl

Terug naar C code

Wie is er online?

Gebruikers in dit forum: Geen geregistreerde gebruikers en 5 gasten