A4988 aansturen op stappenmotor

Beste mensen op Circuits online

Ik ben bezig met een eigen graveer machine te bouwen.
Deze is gedeeltelijk geprint met een 3D printer.
Ik ben op het punt gekomen om een Arduino mega / Ramps 1.4 / A4988 controller op de stappenmotoren te laten draaien.

Maar omdat ik een leek ben in uitlezen van voltages enz
Hoop ik hier mijn project te kunnen voortzetten met de hulp van dit forum.

Zoals ik al vertelde heb ik een Arduino mega / Ramps 1.4 / A4988 controller.
En ik heb 5 nema17 stappenmotors.
2 voor Y-as (parallel verbonden)
2 voor X-as (parallel verbonden)
1 voor Z-as

Ik heb een multimeter gekocht...
Maar omdat ik vrij nieuw ben met het apparaat.
Kom ik er niet echt helemaal wijs uit welke stand het moet staan.

Natuurlijk moet ik nog vertellen wat ik precies heb aan stappenmotoren
en voeding dat zal ik hier onder weergeven.

Voeding : Voeding 12V (240V/115V / 20A max)
Link: https://www.123-3d.nl/123-3D-Voeding-12V-240V-115V-20A-max-i980-t334.h…

Stappenmotoren :NEMA17 stappenmotor (1,8 graden per stap / 4,8 kg/cm)
Link: http://www.bitsandparts.eu/Stappenmotor_NEMA17_Wantai_42BYGHW811__(CNC…
Zie spects...

Verder gebruik ik de firmware van Marlin.
Link: http://www.vicious1.com/marlin-firmware/
Hier komt ook het idee vandaan van het project.
Ik wil graag Repetier Host gebruiken voor de machine zoals mijn 3d printer.

Ik heb natuurlijk de Arduino / Ramps en controllers aan elkaar zitten....
ik krijg alleen een soort van rare geluiden bij de motoren..
Nou weet ik dat zij of te veel of te weinig stroom krijgen...
Ik weet ook de potentional meter op de controller en af te stellen is.
Vanaf daar is het mij niet duidelijk wat ik moet uitlezen kwa stroom voor de motoren.
( GND / Potentional meter geven als ik het goed heb .500mw aan momenteel)
Ook weet ik niet 100% of mijn multimeter op de juiste positie staat

Hopelijk kan er iemand mij helpen om diverse dingen goed te krijgen.
Want ik loop helaas vast op de engelse vrienden...
Alvast bedankt..

! kan even duren voor dat ik weer online ben... ben namelijk even weekend naar London toe...

Zijn de draden juist aangesloten?

A4988, voeding, en motor passen die bij elkaar? denk het niet.

Voeding 12V (240V/115V / 20A max)

A4988 controller -> max 2A

NEMA17 stappenmotor -> 3.1v/2.5A

LDmicro user.

Motor en controller passen prima
Wordt alleen begrenst bij 2A

Heb dezelfde motor hier op 1,2A draaien, is allemaal afhankelijk van de gewenste kracht

Wil je de volle potentie uit je motor halen moet je idd een driver van minimaal 2,5A

Lopen je motors wel als je gewoon handmatig pulsen tikt op de pulsingang van de drivers? Even controleren of de a en b overeenkomt met de draden aan je motorparen, er zit nogal verschil in die motorconnector-pinouts

Ik heb deze draden
En denk ik dat plaatje de juiste is van mijn motoren..
http://i00.i.aliimg.com/img/pb/427/204/498/498204427_761.jpg

Alleen vraag ik mij af welke draden op welke plek horen op de ramps..

Dank je wel mannen voor jullie berichten

Pinout staat in de datasheet van de a4988 staat ook A en B

Poolparen van de motor is eenvoudig te meten met een ohmmeter, of desnoods met een ledje tussen 2 draden en een slinger aan de motor

@DK, je zegt dat je ook die opstelling hebt (motor en driver).

Kun je zo'n motor van 3.1V 2.5A 1.25ohm op 12V laten draaien met die A4988, maw als de stroominstelling op 1.5A staat, wat gebeurt er dan met de output bij 12V, want de spoelen trekken dan +-10A zonder begrenzing?

edit: weet het al, de stroom wordt pwm geregeld.

LDmicro user.

Oke.. zal straks wel even kijken.

Denk dat dat het is hoor... dat kleuren niet overeen komen met motor en draad naar de ramps

Maar klopt het dat als je a4988 door meet.
Dat GND en potentie regelaar ongeveer .500mv moet geven... of heb ik dat mis...

[Bericht gewijzigd door Fleming op dinsdag 13 oktober 2015 21:59:18 (33%)

Je kunt niet zo gemakkelijk meten aan de output van moderne PWM geregelde microstep drivers. Ik raad aan u in eerste instantie te beperken tot de handleiding. Dus stel de stroom in met de potmeter en laat het daar bij. Zie b.v. die van de Pololu breakouts: https://www.pololu.com/product/1182
Zelf meet ik er wel aan, maar dan via een 10k / 1 uF LPF en alleen in vol stap mode, anders raakt de multimeter in de war van het AC resp. weet je niet wat je meet .

Aansluitingen van de motor zijn heel eenvoudig: Als je een wikkeling van de motor kortsluit gaat die opeens heel zwaar, wikkelingen verkeerd om maakt niet uit, dan draait hij alleen de andere kant op en moet er één omgedraait worden.

Lambiek

Special Member

Op 14 oktober 2015 08:16:29 schreef Aart:
....., wikkelingen verkeerd om maakt niet uit, dan draait hij alleen de andere kant op en moet er één omgedraait worden.

Het ligt eraan welke draden je omdraait, anders gaat de motor heen en weer staan stappen.

Persoonlijk draai ik altijd alle vier de draden om. :)

Als je haar maar goed zit, GROETEN LAMBIEK.

Aart, volgens mij wil TS de spanning op de potmeter voor de stroominstelling meten. Een halve volt aldaar is volgens mij niet raar.[UPDATE: (beter gelezen....) een halve milivolt is natuurlijk WEL raar....] Je kan de potmeter omhoogdraaien, totdat de boel kapot gaat. In jou geval eerste de pololu bordjes (a4988) en dan pas de motor.

Ik zou er van af blijven. Als eerste gewoon kijken of je een losse motor kan laten draaien zonder belasting. Dat moet ZEKER lukken. ook met een te laag ingestelde stroom.

Let op: Als de boel stilstaat, kan de motorstroom zeg 1.5A zijn, terwijl er maar 0.5A uit de 12V getrokken wordt. Zomaar de stroom in de 12V meten is niet geschikt om de motorstroom af te stellen!

four NANDS do make a NOR . Kijk ook eens in onze shop: http://www.bitwizard.nl/shop/

Dus wat je zegt even de motoren zonder de controller aansluiten op de ramps..
Ik heb er momenteel een simpele programma in zitten.
Deze laat elke motor even draaien (volgens mij links en rechts om..)
Maar bij ene keer zie ik hem draaien
De volgende stap hoor je alleen een geluid

[Bericht gewijzigd door Henry S. op donderdag 15 oktober 2015 19:43:18 (59%)

Lambiek

Special Member

Op 14 oktober 2015 17:05:31 schreef Fleming:
Ik heb er momenteel een simpele programma in zitten.
Deze laat elke motor even draaien (volgens mij links en rechts om..)
Maar bij ene keer zie ik hem draaien
De volgende stap hoor je alleen een geluid

Heb je dan je stappen diagram wel goed voor links of rechtsom, ik weet niet welke kant op hij wel goed loopt?

O, je hebt een A4988. Dan gaat het over.

Als je haar maar goed zit, GROETEN LAMBIEK.

Het A4988 IC bevat de gehele microstep step-down stroomgeregelde fabriek. Dit soort IC's is onvergelijkbaar met hoe moeilijk zoiets vroeger was en zit tegenwoordig in alle 3D printers e.d.
Er gaan enkel stap-pulsjes, een DIR signaal en eventueel een enable in vanaf de microcontroller.

Een fout die ik wel gezien heb is een verkeerd aantal microstappen in te stellen met de daartoe bestemde ingangen, als hij op 1/4 staat en de controller verwacht 1/16 dan probeerd hij veel te snel te steppen en houd de motor het niet bij, behalve af en toe een tragere beweging.

Heeft zowel het stepper board als de A4988 breakout boards (welke ? ) voorzieningen om een en ander in te stellen, is het goed ingesteld en zijn ze goed compatibel ?

Te weinig stroom kan eenzelfde effect geven. De drivers zijn overigens behoorlijk robuust en gaan uit als ze te heet worden. Ik heb er ook bij experimenten nog geen gesloopt.

Ik wil even opnieuw beginnen tis mij te onduidelijk nog...
Ik neem aan dat jij en anderen weten van wat ik heb aan spullen.
En wat ze nodig hebben kwa volt / stroom enz enz om de motoren goed te laten draaien....

Maar laten we beginnen met mijn voeding
Dit zie ik aan de kant van mijn power supply
AC INPUT | DC OUTPUT - | DC OUTPUT + | AC>DC
| L | N | (rondje met teken) | -V | -V | -V | +V | + V | +V | +V ADJ

Ik begreep de L / N wel voor de 220..
Ik heb op de laatste 2 -V 2 zwarte draden zitten
Deze gaan naar de - van de Ramps 1.4
Ik heb op de laatste 2 +V 2 rode draden zitten
Deze gaan naar de + van de Ramps 1.4

Vervolgens zit natuurlijk de Arduino mega onder de ramps 1.4
En 3x A4988 controllers op de X, Y, Z.

( op de arduino heb ik wel en programma zitten. Maar heb je een duidelijkere dan zet ik die er wel in )

Sorry voor de hulp die er al was...
Maar men zal het wel begrijpen...
Nogmaals ik ben een leek in dit hele gebeuren...
Het zal vast en zeker wel lukken... daar ben ik wel van overtuigt.

Wat ik wilde voorstellen is om de motor zonder aangesloten X/Y/Z as te laten draaien. Dat moet zowiezo lukken.

Vraagje: Jij schreef 0.500mV, je mengelt 500mV en 0.5V door mekaar?

Als je motoren het slecht doen, lijkt mij de meest waarschijnlijke oorzaak dat je de motoren verkeerd hebt aangesloten. Dan heb je A+ en A- van de motor over de A en de B aansluitingen van de A4988 verdeeld. Dat is de enige aansluiting waarbij hij het niet doet.

(Wat jij vertelt over voeding/ramps, is allemaal prima).

four NANDS do make a NOR . Kijk ook eens in onze shop: http://www.bitwizard.nl/shop/

Mijn tip. Pak 2 draden van die stappenmotor. Meet of er een weerstand is. Zou zo rond de 2 ohm moeten zijn. Zo niet pak je de volgende enzovoort. De kleur is mijn ervaring zegt niet veel. Daarnaast laat grbl image in je arduino. Even zoeken op github. Je kan dan b.v. met grbl controller het geheel aansturen. Weet niet of je een cnc shield hebt voor de arduino. Heb die zelf wel. Was alleen veel tijd kwijt om grbl te configuren.

Hij heeft een ramps
Heel dat grbl verhaal hierboven werkt dus niet

Een tijdje (lees : jaartjes) terug had ik zelf ook stepsticks gemaakt en een testmodule voor gebouwd. StepStick (A4988) erop, voeding erop en je kon het testen. Het apparaatje had 2 knopjes erop. De ene voor het laten draaien (stoppen/draaien), de andere voor de draairichting (links/rechts om).

Het testapparaatje was opgebouwd uit een paar onderdeeltjes, waaronder een 555-chip, een 78L05, 2 druktoetsjes en nog wat klein grut.
Ik kon daarmee diverse zaken controleren :
- A4988 correct gesoldeerd op PCB / goed aangesloten
- Motor correct aangesloten
- Juiste voeding (spanning / stroom)

Veel plezier ermee.

http://www.uploadarchief.net/files/download/resized/stepstick_tester_l.gif

Het printje (dubbelzijdig) had de grootte van 36 x 32 mm met veelal SMD-spul. Hieronder een afbeelding hoe het er in Eagle uitzag.
http://www.uploadarchief.net/files/download/a4988tester_pcb.jpg
Gebruik je TH-onderdelen, wordt het waarschijnlijk ietsje groter, maar het blijft nog steeds een klein en handig apparaatje.

Doe er je voordeel mee.

Van elk bezoek aan CO leer ik weer meer...

Op 15 oktober 2015 00:09:56 schreef rew:
Wat ik wilde voorstellen is om de motor zonder aangesloten X/Y/Z as te laten draaien. Dat moet zowiezo lukken.

Vraagje: Jij schreef 0.500mV, je mengelt 500mV en 0.5V door mekaar?

Als je motoren het slecht doen, lijkt mij de meest waarschijnlijke oorzaak dat je de motoren verkeerd hebt aangesloten. Dan heb je A+ en A- van de motor over de A en de B aansluitingen van de A4988 verdeeld. Dat is de enige aansluiting waarbij hij het niet doet.

(Wat jij vertelt over voeding/ramps, is allemaal prima).

Dat 500mv enz kan ik mis hebben hoor..
ik ben net terug in Nederland.
dus zal spoedig de A+ enz gaan testen.
dan laat ik mij wel weer horen..

Ben zelf bezig met het maken van een PCB-CNC met geprinte onderdelen. Heb de zelfde stappen-motoren als u en ook een Arduino mega en Ramps 1.4 met DRV8825 (andere motor driver als u).

Heb zelf mijn stappen motoren getest met de volgende procedure:

* Ramps 1.4 op de arduino mega zetten

* Ramps 1.4 op 1/32 microstep gezet met jumpers (in u geval denk ik best 1/16 microstep)

* Motor drivers op de Ramps zetten (in u geval de A4988)

* 12V voeding aansluiten op de Ramps voor de stappen-motoren (2 onderste pinnen op de groene connector)

* Dan heb ik mijn motor drivers afgesteld op 0,5V (voor u weet ik het niet van buiten, moet je even opzoeken)

heb mijn info hierover hier gevonden: http://reprap.org/wiki/A4988_vs_DRV8825_Chinese_Stepper_Driver_Boards

* Dan de stappen motoren aansluiten op de Ramps

* Test software in de Arduino flashen

Micro steps instellen:
http://cdn.shopify.com/s/files/1/0627/7013/files/NARTimage030_grande.png?6640975367770439408

Aansluit schema voor de voeding en stappen motoren kan je op deze afbeelding vinden:

http://www.nextdayreprap.co.uk/images/nextday3dprinters/Reprap_Prusa_M…

Test Programma:


#define X_STEP_PIN         54
#define X_DIR_PIN          55
#define X_ENABLE_PIN       38
#define X_MIN_PIN           3
#define X_MAX_PIN           2

#define Y_STEP_PIN         60
#define Y_DIR_PIN          61
#define Y_ENABLE_PIN       56
#define Y_MIN_PIN          14
#define Y_MAX_PIN          15

#define Z_STEP_PIN         46
#define Z_DIR_PIN          48
#define Z_ENABLE_PIN       62
#define Z_MIN_PIN          18
#define Z_MAX_PIN          19

#define E_STEP_PIN         26
#define E_DIR_PIN          28
#define E_ENABLE_PIN       24

#define Q_STEP_PIN         36
#define Q_DIR_PIN          34
#define Q_ENABLE_PIN       30

#define SDPOWER            -1
#define SDSS               53
#define LED_PIN            13

#define FAN_PIN            9

#define PS_ON_PIN          12
#define KILL_PIN           -1

#define HEATER_0_PIN       10
#define HEATER_1_PIN       8
#define TEMP_0_PIN          13   // ANALOG NUMBERING
#define TEMP_1_PIN          14   // ANALOG NUMBERING

void setup() {
  pinMode(FAN_PIN , OUTPUT);
  pinMode(HEATER_0_PIN , OUTPUT);
  pinMode(HEATER_1_PIN , OUTPUT);
  pinMode(LED_PIN  , OUTPUT);
  
  pinMode(X_STEP_PIN  , OUTPUT);
  pinMode(X_DIR_PIN    , OUTPUT);
  pinMode(X_ENABLE_PIN    , OUTPUT);
  
  pinMode(Y_STEP_PIN  , OUTPUT);
  pinMode(Y_DIR_PIN    , OUTPUT);
  pinMode(Y_ENABLE_PIN    , OUTPUT);
  
  pinMode(Z_STEP_PIN  , OUTPUT);
  pinMode(Z_DIR_PIN    , OUTPUT);
  pinMode(Z_ENABLE_PIN    , OUTPUT);
  
  pinMode(E_STEP_PIN  , OUTPUT);
  pinMode(E_DIR_PIN    , OUTPUT);
  pinMode(E_ENABLE_PIN    , OUTPUT);
  
  pinMode(Q_STEP_PIN  , OUTPUT);
  pinMode(Q_DIR_PIN    , OUTPUT);
  pinMode(Q_ENABLE_PIN    , OUTPUT);
  
   digitalWrite(X_ENABLE_PIN    , LOW);
   digitalWrite(Y_ENABLE_PIN    , LOW);
   digitalWrite(Z_ENABLE_PIN    , LOW);
   digitalWrite(E_ENABLE_PIN    , LOW);
   digitalWrite(Q_ENABLE_PIN    , LOW);
}

void loop () {
  
  if (millis() %1000 <500) 
    digitalWrite(LED_PIN, HIGH);
  else
    digitalWrite(LED_PIN, LOW);
  
  if (millis() %1000 <300) {
    digitalWrite(HEATER_0_PIN, HIGH);
    digitalWrite(HEATER_1_PIN, LOW);
    digitalWrite(FAN_PIN, LOW);
  } else if (millis() %1000 <600) {
    digitalWrite(HEATER_0_PIN, LOW);
    digitalWrite(HEATER_1_PIN, HIGH);
    digitalWrite(FAN_PIN, LOW);
  } else  {
    digitalWrite(HEATER_0_PIN, LOW);
    digitalWrite(HEATER_1_PIN, LOW);
    digitalWrite(FAN_PIN, HIGH);
  }
 
  if (millis() %10000 <5000) {
    digitalWrite(X_DIR_PIN    , HIGH);
    digitalWrite(Y_DIR_PIN    , HIGH);
    digitalWrite(Z_DIR_PIN    , HIGH);
    digitalWrite(E_DIR_PIN    , HIGH);
    digitalWrite(Q_DIR_PIN    , HIGH);
  }
  else {
    digitalWrite(X_DIR_PIN    , LOW);
    digitalWrite(Y_DIR_PIN    , LOW);
    digitalWrite(Z_DIR_PIN    , LOW);
    digitalWrite(E_DIR_PIN    , LOW);
    digitalWrite(Q_DIR_PIN    , LOW);
  } 
 
  digitalWrite(X_STEP_PIN    , HIGH);
  digitalWrite(Y_STEP_PIN    , HIGH);
  digitalWrite(Z_STEP_PIN    , HIGH);
  digitalWrite(E_STEP_PIN    , HIGH);
  digitalWrite(Q_STEP_PIN    , HIGH); 
  delay(1);
  
  digitalWrite(X_STEP_PIN    , LOW);
  digitalWrite(Y_STEP_PIN    , LOW);
  digitalWrite(Z_STEP_PIN    , LOW);
  digitalWrite(E_STEP_PIN    , LOW);
  digitalWrite(Q_STEP_PIN    , LOW);  
}

Hopelijk brengt dit al wat verduidelijking en geraak je er goed met op weg :D

Mvg

Nico

[Bericht gewijzigd door Xest op zondag 18 oktober 2015 21:48:15 (78%)

dank je Nico...
Maar die jumpers.. zijn die echt nodig?
Want die heb ik dus niet..
Kan dat ook het probleem zijn.

Lambiek

Special Member

Die jumpers moeten op je board zitten waar je de A4988 in prikt. De jumpers verbinden dan MS1, MS2, of MS3, (die aansluitingen zitten op je A4988 driver) met de GND of met de VDD.

Zie datasheet van de A4988:

Microstep controller A4988.pdf

Kijk op Blz. 3 en 4.

Hier heb je nog wat algemene info over stappenmotoren, misschien kan je er nog wat informatie uithalen.
http://www.circuitsonline.net/artikelen/view/47

Als je haar maar goed zit, GROETEN LAMBIEK.

Dan moet ik even kijken of ik ze ergens heb liggen.
Ik heb ze er niet bij gekregen.
Voor elke controller 1 neem ik aan.

Lambiek

Special Member

Wat heb je er niet bij gekregen?

Edit:
Ik neem aan dat je de jumpers bedoeld? Staan die al niet op je board, (ramps 1.4) dan zitten ze onder de A4988 drivers.

Er moeten er drie per driver bijzitten.

Dit is de plaats waar ze moeten zitten.

Ramps 1.4 users manual.pdf

kijk op Blz. 7.

Als je haar maar goed zit, GROETEN LAMBIEK.

Ja dat las ik uit het bericht boven
Die jumpers...
Maar volgens mij heb ik ze wel liggen
Alleen niet mee geleverd..
ik ga zo ( 16:45 ) ff zoeken
Hopelijk kan ik er 9 vinden lol

Andrrs probeer ik het met 1 motor als ik er 3 heb.. en ga even verder zoeken..

Edit: ik heb er 9 gevonden en geplaatst...