Paar noob vragen over Arduino Accelstepper code

Projecten die niet passen in bovenstaande onderwerpen
Berichten: 59
Geregistreerd: 19 Mrt 2015, 01:17

Paar noob vragen over Arduino Accelstepper code

Berichtdoor hazanovo » 19 Mrt 2015, 02:10

Hallo allemaal,


( C code bijgevoegd)

Ik ben nieuw met arduino en dit forum. Er zijn een paar vragen die ik heb over de Accelstepper.h, maar eerst wil ik uitleggen waarvoor het is.
Ik heb een (5-as)robotarm gebouwd van 5 stappenmotoren uit een printer. Het gaat om kleine stappenmotoren van 5-12v die ik aanstuur met arduino mega en L293D. Deze arm moet objecten pakken en verplaatsen etc. Na lang te hebben geknutseld met 555timer, CD4017 en L293D was het resultaat niet wat ik verwacht had. Na lang aarzelen ben ik overgegaan op arduino mega.

Ik ben dus ook nieuw met de hele C code.
De plan voor nu, is het alle assen te kunnen bewegen met een niet al te moeilijk code.
Ik de Accelstepper.h bibliotheek gelezen maar het is lastig als je net nieuw bent met alles.

Hieronder een voorbeeld van wat ik ongeveer wil doen


motor1 naar positie (...) en tegelijkertijd motor2 en motor3 naar positie (...) etc.

Bij elke beweging wil ik een aparte Speed en Accel.


Dit is waar ik tot nu toe gekomen ben, het nadeel hiervan is dat >runToNewPosition< 1 motor per keer laat draaien om het maar zo te schrijven.
Maar ik wil ze allemaal tegelijk kunnen besturen als het nodig is , maar ook 1,2 of 3 motoren hangt van de situatie af.
Een simpel code met uitleg zou gewaardeerd worden.
Kan iemand mij op weg helpen.

Groeten, H

Code: Alles selecteren
#include <AccelStepper.h>

// Define a stepper and the pins it will use
AccelStepper stepper(AccelStepper::FULL4WIRE, 30, 31, 32, 33);
AccelStepper stepper2(AccelStepper::FULL4WIRE, 34, 35, 36, 37);
void setup()

   stepper.setMaxSpeed(120);
    stepper.setAcceleration(400);
    stepper2.setMaxSpeed(300);
    stepper2.setAcceleration(350);
   
}

void loop()
{   
    stepper.runToNewPosition(500);
    stepper.runToNewPosition(-500);
    stepper2.runToNewPosition(-100);
    stepper2.runToNewPosition(44);
    stepper.runToNewPosition(34);
    stepper.runToNewPosition(-56);
    stepper2.runToNewPosition(-17);
    stepper2.runToNewPosition(100);




   
}

Advertisement

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

Re: Paar noob vragen over Arduino Accelstepper code

Berichtdoor shooter » 19 Mrt 2015, 19:05

je zit heel goed in de richting hoor.
de loop zo leeg mogelijk houden.
een array maken met tijden,posities en snelheden.
als je een volgende regel wilt ga je naar een functie waarin je de commandos maakt.
in de loop komt alleen een regelteller een controle of de volgende reegel gedaan moet worden, dat doen met blink without delay.
verder een update voor elke stepper.
paul deelen
shooter@home.nl

Berichten: 59
Geregistreerd: 19 Mrt 2015, 01:17

Re: Paar noob vragen over Arduino Accelstepper code

Berichtdoor hazanovo » 19 Mrt 2015, 19:28

Zou je mijn code kunnen aanpassen zodat ik ongeveer begrijp hoe ik dat moet doen.
hoe ziet een code met een array er uit en hoe geef ik die commando's.
een voorbeeld zou heel mooi zijn.

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

Re: Paar noob vragen over Arduino Accelstepper code

Berichtdoor shooter » 20 Mrt 2015, 09:36

ga naar arduino.cc
zoek op accelstepper en er staan daar voorbeelden te over.
Gewoon lezen en aanpassen aan je eigen situatie, daar leer je veel meer van, en is handiger als er iets niet werkt. dan dat ik een prog schrijf dat toch niet werkt.
paul deelen
shooter@home.nl

Berichten: 59
Geregistreerd: 19 Mrt 2015, 01:17

Re: Paar noob vragen over Arduino Accelstepper code

Berichtdoor hazanovo » 20 Mrt 2015, 11:00

Ik heb al stuk of 5 voorbeelden van accelstepper geprobeerd. Maar ik heb geen idee hoe ik de motor
5 verschillende posities kan geven plus accel en speed. De voorbeelden die er zijn laten de motor constant hetzelfde doen.

Berichten: 59
Geregistreerd: 19 Mrt 2015, 01:17

Re: Paar noob vragen over Arduino Accelstepper code

Berichtdoor hazanovo » 23 Mrt 2015, 08:36

Krijg ik nog tips ?

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

Re: Paar noob vragen over Arduino Accelstepper code

Berichtdoor shooter » 23 Mrt 2015, 09:57

Ja de voorbeelden herhalen zich telkens, want het zijn voorbeelden.

Maak een flowschema wat je wilt programmeren
maak een opzet in arduino wat je al gedaan hebt.
maak een fritzing schema waar wat zit.
maak voor 1 motor een cyclus en probeer deze.
het uitbreiden is vrij eenvoudig.
Doe de lib van accelstepper die je gebruikt en de doc ervan erbij.
dit alles in een zip en hier in het forum plaatsen.
Je zult het overigens wel zelf moeten maken, want als ik het maak is het te duur, en werkt toch niet zoals jij wilt.
paul deelen
shooter@home.nl

Berichten: 59
Geregistreerd: 19 Mrt 2015, 01:17

Re: Paar noob vragen over Arduino Accelstepper code

Berichtdoor hazanovo » 24 Mrt 2015, 12:26

Ik ga proberen dmv een array functie. Nog een vraag: mijn stappenmotoren gebruik ik op 5volt,
maar dan hebben ze weinig kracht. Als ik er 12volt op zet dan heb ik de kracht wel mmaar de motor word dan heel warm. Nu heb ik een 1k residtor tussen arduino out en l293d in, word het beter als ik een resistor van een paar Kohm gebruik, of is er een andere oplossing
Mvg

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

Re: Paar noob vragen over Arduino Accelstepper code

Berichtdoor shooter » 24 Mrt 2015, 21:43

Ja er is zeker een andere oplossing.
als de motoren moeten stappen dan zet je de pwm even op 100%, en als ze alleen maar stil hoeven te staan zet je de pwm op 10% of zelfs helemaal uit afhankelijk of het stil blijft staan door een goede balans.
de 293D moeten een voeding hebben van meer dan 5 Volt, want anders werken ze niet.
een 1k weerstand is prima als beveiliging , maar verandert niets aan de stroom(of warmte).
Probeer het geheel zo veel mogelijk in balans (met veren en contragewichten, vertragingen, mechanische constructies) te krijgen en alleen de last dient door de motoren opgevangen te worden.
Motoren mogen warm worden, maar je moet er wel een vinger op kunnen houden), zeker de kleintjes hebben vaak plastic onderdelen die zacht worden.
de l293 out kun je zien als een relais met wisselcontact tussen de voedingsspanning en de nul.

Er zijn ook stappenmotorcircuits met een stroombeperking te krijgen, en heb je al een schema gemaakt in fritzing?
en maak een foto van je robot.
en stuur dan gelijk je programma mee samen met de gebruikte lib.
alles in een zip file en wij geven dan weer antwoord.
paul deelen
shooter@home.nl

Berichten: 59
Geregistreerd: 19 Mrt 2015, 01:17

Re: Paar noob vragen over Arduino Accelstepper code

Berichtdoor hazanovo » 25 Mrt 2015, 19:12

StepperRobot.zip
fritzing
(91.09 KiB) 241 keer gedownload
StepperRobot.zip
fritzing
(91.09 KiB) 241 keer gedownload



Aan de robot worden elke weekend aanpassingen gedaan.

Hier een filmpje op youtube https://www.youtube.com/watch?v=fMTZozo9pPE

Het is jammer dat de website niet meer dan 250kb kan uploaden want ik heb foto's van 2 maanden geleden en de meest recente.

Daarop kan je zien dan ik veren en contra gewicht(motor) heb gebruikt tegenover kleine reductie dmv tandwielen, maar het werd steeds groter en zwaarder + trekveer maakt een irritant geluid als het uitgetrokken word met een zwaar gewicht wat het mee moet trekken(in mijn geval dan). In dit geval werk ik met plexiglas, de veer veroorzaakt veel stres op het plexiglas frame en is lastig te gebruiken wanneer de arm meer dan 200 graden moet draaien.

Het meest recente model is compacter(30cm) en zonder veren en contragewichten, maar het gebruikt een grotere vertraging en heeft dus meer snelheid(dus ook meer kracht) nodig. Daardoor wil ik in ieder geval dat alle motoren minimaal op 12volt werken. Ik heb ook voeding van 14, 32, 42 volt, ik weet alleen niet tot hoever de motoren deze spanning kunnen verdragen.
Elke gewricht krijgt uiteraard een End schakelaar die de 0(home) positie moet activeren maar dat komt later.
PWM gaat naar de input van L293d of naar de enable pin ?
Is er een gouden voorbeeld die mij vooruit kan helpen
StepperRobot.zip
fritzing
(91.09 KiB) 241 keer gedownload
?

Het enige wat mij in dit project tegenhoudt is het programmeren van arduino. Help mij om deze machine tot het digitale leven te brengen!

Terug naar Overige projecten

Wie is er online?

Gebruikers in dit forum: Geen geregistreerde gebruikers en 40 gasten