Hallo wie kan mij helpen met het volgende ik wil met een Arduino 4 stappen motor sturen. Ze moeten 180 graden van links naar rechts gaan. Maar het zijn 5 draads motoren dus ik moet per motor 4 draden sturen en zoveel pinnen zitten er niet op een Arduino . Dus wie weet een oplossing voor mijn. Probleem ?

zoveel pinnen zitten er niet op een Arduino

Dat er geen 4 pinnen op zitten lijkt me sterk... :+
4 of 6 draads is normaal, kun je volgens de tabel in de datasheet aansturen.

Met sommige driver ic's kun je misschien 1 pin uitsparen...

JE kan met een arduino niet direct een stappen motor sturen of het moeten echt hele kleine zijn. JE daar dan een stepper driver voor nodig. Een driver kan je vaak aansturen met maar 2 pinnen van de arduine. 1 pin voor de richting, 1 pin voor de stap pulzen. Als de stepper dan 180 graden moet draaien en het is een 200 step/rev dan zijn dat 100 pulzen.
Een stepper driver heeft vaak ook een enable ingang maar die kan je ook aan de 5V hangen maar als je die ook nodig hebt dan het 3 pinnen per stepper nodig. Als de steppers allemaal tegelijk en hetzelfde moeten draaien dan kan je met 3 pinnen alles in 1 keer aansturen.

Het openingsbericht vergt enig ontcijferen, maar zoals ik het decodeer wil de topicstarter 4 stappenmotoren aansturen en meent dus 16 uitgangen nodig te hebben.

Een Arduino Mega AT heeft er nog heel wat meer, dus dat is al een mogelijke benadering. Of misschien lukt het ook om het aantal uitgangen van een Uno of een Nano uit te breiden met bv. HCT595 schuifregisters, dat zal weliswaar beperkingen in snelheid met zich brengen lijkt me.

Voorlopig vernemen we niet over welke Arduino het gaat. Noch mogen we weten over wat voor een steppers het gaat (unipolair?bipolair?) en al evenmin vernemen we hoe kritisch de snelheid is. Beetje lastig om dan raad te geven.

Maar inderdaad, het gebruik van stepper driver modules kan het leven flink vereenvoudigen. Om slechts 1 enkel voorbeeld te noemen: https://www.aliexpress.com/item/1005006199405206.html Er bestaan voor sommige Arduino's ook opsteekbordjes ("shield") met drie of vier zo'n drivers erop, bv. https://www.aliexpress.com/item/1005006477006655.html (niet dat ik aandelen heb van ome Ali, verre van)

Kijk even naar grbl, https://github.com/grbl/grbl misschien dat je daar wat inspiratie uit kunt halen.

Verder zijn er tig Arduino voorbeelden om steppers aan te sturen middels een driver board a4988 of DRV8825

Werkt met 3 pinnen per driver, step, up/down en enable.

Als het niet te gek wordt kun je het met een standard Arduino wel aansturen, de driver neemt veel complexiteit weg.

Het openingsbericht vergt enig ontcijferen, maar zoals ik het decodeer wil de topicstarter 4 stappenmotoren aansturen

Ah,

Dat had ik er niet uit gedestileerd, ik dacht 1 stepper... ;)

Als het heel simpel moet/kan, enkel full step en geen echte drivers die de stroom door de spoelen regelt, dan kan je met 6 "poorten" van een ULN2803 en een paar weerstanden, een stappenmotor aansturen.

Dan heb je maar 2 uitgangen van een controller nodig.
En je kan ook in 2 richtingen.

Simpel? Ja.
Te simpel, misschien.
Afhankelijk wat TS wil aandrijven met de steppers.

Stepper.pdf

Groetjes,
eSe

Op zaterdag 1 februari 2025 18:19:13 schreef olan:
Hallo wie kan mij helpen met het volgende ik wil met een Arduino 4 stappen motor sturen. Ze moeten 180 graden van links naar rechts gaan. Maar het zijn 5 draads motoren dus ik moet per motor 4 draden sturen en zoveel pinnen zitten er niet op een Arduino . Dus wie weet een oplossing voor mijn. Probleem ?

Lees dit eens door als je tijd en zin hebt.

https://www.circuitsonline.net/artikelen/view/47

Een motor met vijf draden is een unipolaire stappenmotor, kijk daar na in het artikel.

Geen idee over de grootte en aard van de stappenmotoren (afgezien dat het blijkbaar unipolaire stappenmotoren zijn, gezien de 5 draden), een foto van de motoren en het typeplaatje zou mensen hier kunnen helpen meer gericht advies te geven, maar normaal wordt voor het aansturen van stappenmotoren speciale driver-IC's gebruikt. Zelf ben ik vooral bekend met de combinatie L297 en L298, maar er zullen ongetwijfeld tegenwoordig modernere en betere drivers bestaan. Best zelf met een zoekmachine zoeken naar 'stepper motor driver'.

Vroeger heb ik ook dit ontwerp ooit gebouwd, werkte ook prima maar is ook wel erg gedateerd. Zie bijlage, uit Radio Bulletin januari 1984.

Tegenwoordig kopen de meesten kant-en-klare steppermotordrivers op het internet via de usual suspects uit China. Ik neem aan dat als u zoekt op 'arduino stepper motor driver' dat er dan ook wel een berg aan info en mogelijk geschikte producten boven komt drijven.

5 draden betekend zeer waarschijnlijk een unipolaire motor waarvan de middenaftakkingen aan elkaar zitten. Dat is heel onhandig, want het overgrote deel van de drivers die je kunt inkopen werkt alleen voor bipolaire motoren. Als de middenaftakkingen apart naar buiten komen (6 draden), kun je die gewoon los laten hangen, maar dat gaat hier dus niet.

Het gemakkelijkst is om andere motoren te zoeken, of de motoren open te maken om ze te modificeren.

Wat software betreft kan het heel simpel zijn, of heel ingewikkeld. Moeten die motoren tegelijk draaien, of draait er altijd maar één motor tegelijk? Draaien ze altijd even hard? Waar drijven ze aan? Als je veel massatraagheid hebt, moeten ze rustig accelereren om geen stappen te missen.

hallo sorry voor de onduidelijkheid maar ik wil een arduino nano gebruiken als het kan. ik gebruik 4 5V 4-Phase Stappenmotor 28BYJ-48 motoren, die niet synchroon hoeven lopen . en ik begrijp dat ik een driver of iets nodig heb om de motoren te kunnen laten draaien. en dat ik een extern 5 volt voeding nodig heb dat dit niet uit de arduino kan komen.

Op zondag 2 februari 2025 12:43:20 schreef olan:
hallo sorry voor de onduidelijkheid maar ik wil een arduino nano gebruiken als het kan. ik gebruik 4 5V 4-Phase Stappenmotor 28BYJ-48 motoren, die niet synchroon hoeven lopen . en ik begrijp dat ik een driver of iets nodig heb om de motoren te kunnen laten draaien. en dat ik een extern 5 volt voeding nodig heb dat dit niet uit de arduino kan komen.

5V voor een stepper is heel weinig. Dat gaat eerder richting 12V en 24V. Te zien wat de driver aan kan. De driver regelt de stroom en dat is het belangrijkste. Driver goed instellen is wel heel noodzakelijk.

@buckfast_beekeeper: dat is over het algemeen waar, maar deze motoren hebben een weerstand van 50 ohm, dus op 5V gaat er maar 100mA lopen. Je kunt deze dus eenvoudig zonder stroom regeling aansturen, met de kanttekening dat de snelheid beperkt is, aangezien de stroom al vanaf 0 rpm afneemt, een je dus vanuit stilstand al koppel verliest naarmate het toerental stijgt.

Als langzaam draaien goed genoeg is, kan dit een heel simpele oplossing zijn.

Als je voor steppers met driver gaat, dan wil je de stepper toch deftig gebruiken. Ben je dan ook niet begrenst tot full step? Zo ja, dat wil je toch niet als het beter kan. Al is het maar om heel smooth te draaien.

IK zal het werk van TS dan maar even doen.
https://www.digikey.nl/nl/htmldatasheets/production/1839399/0/0/1/28by…

HEt gaat om een stepper met ook nog een vertraging van 1/64
Staphoek is 5,625° en dat geeft 64 stappen per omwenteling en dat nog maal 64 voor de overbrenging = 4096 stappen per omwenteling.

Hier kan je een los driverbord voor deze stepper kopen
https://nl.aliexpress.com/item/1005006804841105.html?spm=a2g0o.product…

ik wil een arduino nano gebruiken als het kan.

Maar dan zal je voor 4 steppers 16 pinnen nodig hebben. En dan kan net met een nano maar wij weten niet wat er nog meer aangestuurd moet gaan worden en dan zou ik een arduino mega nemen.

JE kan ook gaan kijken naar een echte stepper driver maar dan ben je duurder uit dan gelijk naar een arduino mega te gaan.
https://nl.aliexpress.com/item/1005007904971320.html?spm=a2g0o.product…

Ik zat al te denken/kijken? 5 draadjes? Maar het zijn dan de midden aftakkingen die bij elkaar zitten!
Zo had ik 6 draadjes, heb toen de midden aftakkingen er uitgezocht en als een 4 dradige aangesloten,
Het werkte toen wel!

VrGr Rob

Een motor met 6 draden zijn uni en bi polair het is maar nethoe je het aansluit. Maar 5 draden is altijd unipolair.

Dag olan,
een andere mogelijkheid is misschien ditzelfde type motor maar dan in de 12 volt uinipolaire uitvoering. Als je de gemeenschappelijke + voeding voor de spoelen wegknipt/wegkrabt, hou je een bipolaire motor over met twee windingen van elk 360 ohm. Sluit ik rechtstreeks aan op een Arduino.
Gr. Douwe

Guys, als je niet weet wat een 28BYJ-48 is, dan moet je liever geen onzin gaan verkopen over "12V of 24V" of "toshiba stepper drivers".

Stepper drivers doen 4draads stepper sturing. Omdat de vijfde draad de middenaftakking van de twee spoelen kortsluit, zijn die niet bruikbaar voor de 28BYJ-48. Het kan wel, maar dan moet je hem open maken, die doorverbinding doorkrassen en weer dichtkrijgen zonder al te veel schade. Met een goede stepper driver (en genoeg spanning) kunnen ze dan veel sneller dan origineel :-) .

De 28BYJ-48 is bedoeld voor "continue 5V". In hoeverre dat op twee wikkelingen tegelijk mag... dat weet ik niet.

Het is gebruikelijk om die dingen met een ULN2003 als driver te sturen. Je kan ze MET ULN kopen: https://aliexpress.com/item/32869969097.html (en ze kosten zelfs incl driver geen drol).

Als je pins te kort komt, maar wel ruimte hebt voor extra chips, dan kan je 74HCT595 chips gebruiken als "port expander". Twee chips voor 4 steppers.

Op zondag 2 februari 2025 17:48:01 schreef benleentje:
HEt gaat om een stepper met ook nog een vertraging van 1/64
Staphoek is 5,625° en dat geeft 64 stappen per omwenteling en dat nog maal 64 voor de overbrenging = 4096 stappen per omwenteling.

Het is niet altijd precies 1:64 die vertraging. Als je "tandwielen" studeert, dan is het advies om altijd te voorkomen dat je een gemeenschappelijke deler hebt tussen twee tandwielen. Als dan namelijk er een oneffenheid in 1 tand zit, dan brengt hij die oneffenheid over op alle tanden waar ie mee in aanraking komt en dat zijn niet alle tanden! /die/ tanden slijten dan sneller.

Als je 1:2, 1:4, 1:8 verhoudingen gebruikt om de 1:64 te maken, dan heb je altijd minstens een 2 als gemeenschappelijke deler.
Bij de meeste 28BYJ-48's hebben ze dus een verhouding gevonden die heel dicht bij die 64 zit, maar net niet precies.... (ik heb een klok gemaakt op basis van deze stepper. Na een tijdje loopt het niet goed meer...)

[Bericht gewijzigd door rew op (35%)]

hallo beste ESE ik ga voor jou schema maar hoe keer ik de draai richting om , ik heb al wat geprobeerd maar hij blijft dezelfde kant op draaien, of ik doe iets verkeerds misschien?

Richting 1 Richting 2
00 ------- 10
01 ------- 11
11 ------- 01
10 ------- 00
00 ------- 10
01 ------- 11
11 ------- 01
10 ------- 00
... -------- ...

Mischien heb je enkele spoelen gewisseld, dan doet de motor soms wat raar.
Daarom dat ik ook heb gemeld dat het een simpele, misschien te simpele oplossing is.

Groetjes,
eSe

p.s. Ik moest er wat - tekens tussen zetten, mijn spaties worden weggehaald als ik post en tab's werken ook niet

Edit/ omdat deze steppers een "vertraging" hebben is het soms moeilijk te zien of ze goed draaien. Kijk eerst in 1 richting of ze echt altijd in dezelfde richting draaien na iedere stap.
Je zou een paar schakelaartjes kunnen gebruiken ipv. je Arduino, dan kan je echt stap per stap zien of ze goed draaien en niet even tussendoor een stapje terug gaan.

[Bericht gewijzigd door eSe op (24%)]

Het nadeel van ESE z'n schema is dat je nooit de motor "spanningsloos" kan maken.

Ik heb in mijn software gewoon een tabel met "stuur waardes voor de vier spoelen". Ik heb het instelbaar gemaakt.

En achteruit is gewoon in de andere richting door de tabel heen stappen. Je ziet dat stap1 in richting 1 en stap 4 in richting 2 hetzelfde zijn. net zo 2-3 , 3-2 en 4-1.

Andere kant op in hardware kan ook. Spoel 1 en 2 wisselen. Of gewoon 1 van de stuursignalen inverteren. Kijk maar in ESEs tabel: hij heeft het hoge bitje geinverterd.

ik en al even bezig met deze info maar krijg het niet voor elkaar om die motor om te keren, hij blijft steeds dezelfde kant op draaien ook als ik wissel van richting ? ik alles al 5 keer gecheckt en kom er maar niet achter ! het begint een frustratie te worden maar we houden nog even vol.

Als je de aanstuurvolgorde omdraait dan draait 'ie vanzelf de andere kant op...