Aarde probleem met RPI2 i.c.m. stappenmotor en A4988

Hallo,

Ik ben bezig met een project waarbij een een stappenmotor wil aansturen met een Raspberry Pi2.
Hiervoor heb ik een Nema17 stappenmotor en een A4988 controller aangeschaft.
Alles is (zo ver ik weet) goed aangesloten, en ik kan de motor ook aansturen met de RPI2.

De RPI2 start netjes op, ik kan een commando geven (bijv. 600 stappen links) waarna hij 3 rondjes linksom draait.
Echter, zodra dit afgelopen is blijft de motor langzaam draaien (brommend). Als ik de stuurdraden vanaf de rpi losgooi blijft de motor draaien, pas als ik de stroom (3.3V) naar de controller losgooi stopt het, sluit ik het aan dan start het weer.

Nu komt het (voor mij) vreemde. Zodra ik een stuk metaal op de RPI aanraak, bijvoorbeeld de usb of hdmi poort, dan stopt het gebrom en werkt alles prima.
Ik heb een kabel van de aarde op deze plaatsen vastgeplakt en dat werkt prima. Echter kan dit niet de oplossing zijn. Waar wordt dit probleem door veroorzaakt?
Ik heb ook verschillende voedingen en kabels getest, zonder oplossing.

Heeft iemand een idee of suggestie waar ik de oplossing kan zoeken?

Sine

Moderator

Je hebt de massa's van de pi en de controller doorverbonden ?

Ik heb dit schema gevolgd.

https://a.pololu-files.com/picture/0J3360.600.png?d94ef1356fab28463db67ff0619afadf

Sleep en reset zijn met elkaar doorgelust.
VDD is verbonden met 3.3V op de RPI (pin 1).
GND is verbonden met ground op de PRI (pin 6).

STEP is verbonden met Pin GPIO24 (pin 18).
DIR is verbonden met Pin GPIO23 (pin 16).

Toeternietoe

Dubbelgeïsoleerd

Zou je /Reset en /Sleep niet aan massa(GND) leggen?

Daar waar een schakeling rookt, vloeit de meeste stroom (1e hoofdwet van Toeternietoe)

Op 18 februari 2016 22:45:57 schreef Toeternietoe:
Zou je /Reset en /Sleep niet aan massa(GND) leggen?

Ik heb de opstelling even opgeruimd, zal het morgen eens testen.
Op de schema's die ik op internet aantreft zie ik nergens de ground hierop verbonden, maar dat zegt niet dat het niet de oplossing is voor mijn probleem natuurlijk.

Shiptronic

Overleden

Ook enable laten zweven lijkt me niet handig, gewoon vastzetten of sturen van af RPI2

Wie de vraag stelt, zal met het antwoord moeten leren leven.
Toeternietoe

Dubbelgeïsoleerd

Misschien dat je ook beide ingangen los kunt laten, dus nergens mee verbinden.
Maar met elkaar doorverbinden en dan nergens aan vast maken lijkt me niet goed.

Daar waar een schakeling rookt, vloeit de meeste stroom (1e hoofdwet van Toeternietoe)

Als ik sleep en reset laat zweven werkt de controller niet, ik zal ze dus moeten verbinden. Zal ze morgen eens met ground doorlussen.

De opmerking van @Sine verdient meer aandacht: massa van de controller doorverbinden met massa van de "power"voeding van de stappenmotor? Of gebeurt dat sowieso op het A4988-printje?

Wat betreft sleep en reset: die zijn getekend als active-low, dus ik zou ze eerder aan Vdd hangen dan aan massa, al dan niet met elks een eigen serieweerstand. Maar ze doorverbinden en verder niks is inderdaad maar iets raars. De enable zou dan weer naar massa moeten getrokken worden want die willen we actief maken.

hoe beter de vraag geschreven, zoveel te meer kans op goed antwoord

Volgens mij is de massa gedeeld op de controller. Zal ze morgen eens doormeten en eventueel even doorverbinden om te testen.

[Bericht gewijzigd door nicknick op 18 februari 2016 23:35:36 (29%)]

Lambiek

Special Member

Ik heb alle gnd's aan elkaar zitten. De enable pin moet ook aan de uitgang zitten, of de pin moet laag gemaakt zijn anders loopt de motor niet. Met MS1, MS2, en MS3 kan de stapgrote ingesteld worden; 1, 1/2, 1/4, 1/8, 1/16, en 1/32 stap. Deze pinnen mogen dus ook niet zweven, die moeten hoog of laag zijn. Het zelfde geld voor de reset pin.

Lees dit anders eens door. Onderaan vindt je een stukje programma het is wel in combinatie met Profilab en Pic-basic maar misschien kun je er iets uithalen. Er staat ook een kleine uitleg van de driver, het is wel een ander type driver (DRV2825) maar de aansluitingen en de werking zijn het zelfde.

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

Als je haar maar goed zit, GROETEN LAMBIEK.

RESET/SLEEP verbinden met de massa zorgt er voor dat de motor stopt... maar hij reageert ook niet meer op de raspberry pi.

De enable hoog of laag brengen haalt helemaal niets uit.
Ik begin te denken dat ik een slechte controller te pakken heb.

Lambiek

Special Member

Heb je de beide gnd's al met elkaar verbonden?
Reset, enable, en sleep even proberen hoog of laag te maken.

Als alles goed zit moet het werken.

Als je haar maar goed zit, GROETEN LAMBIEK.

Ja al geprobeerd, maar ik heb zojuist iets interessants ontdekt.
Ik gebruik python om de motor aan te sturen, en als ik de gpio pins niet vrijgeef na gebruik blijft de motor fijn staan, waarschijnlijk is het dus een software fout.
Blijft vreemd.

Shiptronic

Overleden

Op 19 februari 2016 19:09:08 schreef nicknick:
De enable hoog of laag brengen haalt helemaal niets uit.
.

Dat is wel heel vreemd, dat is eigenlijk de aan/uit schakelaar

Wie de vraag stelt, zal met het antwoord moeten leren leven.

ik zie een aantal mensen "adviezen" geven van sluit dit eens aan sluit dat eens aan. Het schema wat de TS gepost heeft is gepubliceerd als een "minimaal schema". Dat is wat er nogdig is om het te laten werken. Niets meer, niets minder.

De niet-aangesloten dingen als "enable" hebben een interne pull-up of pull-down wat er dan ook nodig is.

Wel is het natuurlijk raar dat de "enable" ingang het niet doet...

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

Special Member

Wat gebeurt er als je de enable ingang hoog of laag maakt, staat je motor dan wel bekrachtigt? Dus zonder dat je de driver aan stuurt, alleen je enable ingang proberen.

Als je haar maar goed zit, GROETEN LAMBIEK.