Sida 1 av 1
Arduino med UL2003 breakout kort?
Postat: 18 november 2025, 22:27:08
av stoffe
Hej!
Jag har en fundering på ett projekt som jag byggt men där arduinokretsen gått sönder efter en kort tids användning.
Här är projektet, av någon anledning så visas inte bilderna med kopplingschema där för tillfället när jag postar detta inlägg.
https://github.com/fehlfarbe/arduino-mo ... me-ov-file
Men motorn är kopplas så här.
Men min motor är på 12 V istället för 5 V. Vilket har inneburit att jag måste mata med 12V på de två stiften som heter - och + på ULN2003 kortet. Jag misstänker att det är därför mitt arduino går sönder, nu jag har haft sönder tre stycken. Hur gör jag för att driva stegmotorkretsen med 12 V och driva arduinot med 5 V utan att något går sönder? Vad skulle vara en korrekt koppling?
Re: Arduino med UL2003 breakout kort?
Postat: 19 november 2025, 04:14:24
av Icecap
Den typiska koppling vill vara att Arduino & breakout har gemensam GND.
Sedan matas Arduino med 5V och breakout med 12V.
Din koppling verkar använda de inbyggda dioder i ULN2003 som snubberdioder och det kan gå fel. Du ska ha externa på varje lindning av motorn.
Re: Arduino med UL2003 breakout kort?
Postat: 19 november 2025, 15:11:09
av stoffe
Hur ska de kopplas om det är externa dioder? De ska in mellan Arduino och breakout board antar jag?
Re: Arduino med UL2003 breakout kort?
Postat: 19 november 2025, 15:24:14
av Icecap
Din motor ser ut att ha 5 anslutningar. Det blir 4 spoler + matningen. ULN2003 driver till GND om jag minns rätt så från varje spole till den gemensamma matning ska det vara en diod (t.ex. 1N400x) med katoden till +matningen och anoden till spolen.
Detta gör att den spänningspuls som annars kan komma när drivningen för spolen släpps "kortsluts" och inte ställer till skada.
Då din ritning inte visar att du har gemensam GND är detta det största problem för mig, det MÅSTE vara gemensam GND för att det ska fungera rimligt.
Re: Arduino med UL2003 breakout kort?
Postat: 19 november 2025, 17:07:48
av pi314
Orsaken till att Arduinon går sönder finns troligen i hur kopplingen av strömförsörjningen är gjord.
Om du bifogar et kopplingsschema som inkluderar strömförsörjning och en bild på hur det är kopplat, så är det lättare att se vad som är fel.
Så här kan man t.ex. koppla.
ULN2004_schematic.png
Det ät inte fel att ha en separat spänning till stegmotorn//ULN2004, men det är, som
Icecap är inne på, lite att tänka på.
Min gissning är att pulser eller störningar som härhör från stegmotor/12-volt på något sätt letar sig tillbaka till Arduinon.
Dioder, lämplig dragning av jord, lämpliga avkopplingar av 12 volt och Arduinospänningen kan kanske vara lösningen.
Ibland använder man optokopplare mellan styrdator och stegmotorns elektronik så att inte störningar ska kunna komma "baklänges".
/π
Re: Arduino med UL2003 breakout kort?
Postat: 19 november 2025, 17:15:03
av MiaM
Du har redan fått en del bra svar.
Specifikt så gör såhär:
Dra 12V-matningen separat direkt till ULN-kortet och motorn. Sätt en elektrolytkondensator på säg 100µF 16V eller gärna 25V parallellt över 12V direkt vid ULN-kortet, och sätt också en annan kondensator, t.ex. keramisk, på säg t.ex. 100nF parallellt med elektrolytkondensatorn vid ULN-kortet.
Vid ULN-kortets jordpunkt så drar du också en ledning till Arduinokortet.
Om du använder ett gemensamt nätagg som ger både +5V och +12V, eller om du använder två olika nätagg som båda kopplar skyddsjord till utgången, så dra REJÄLT GROV JORDKABEL, speciellt till 12V-nätagget. Håll också dessa kablar så korta som möjligt.
Se också till att kabeln mellan ULN-kortet och motorn INTE går nära övriga kablar och kort.
Det problem som du antagligen drabbas av är att varje gång en drivare i ULN-kretsen släpper så skickar motorn ut en spänningsspik, så kallad back-EMK, och om den inte "äts upp" på rätt sätt så kan den leta sig iväg till fel ställen.
Det finns två andra sätt att lösa detta problem, som har sina nackdelar. En fullösning är att sätta lågpassfilter (RC-krets) på styrsignalerna till ULN-kortet. Då kommer frånslaget bli långsammare och det blir därmed mindre back-EMK. Dåligt för att ULN-kretsen är inte avsedd att styra analogt, den ska bara slå av/på, och den riskerar att bli överhettad. Den andra varianten är att använda en krets som fungerar som emitterföljare istället för att driva med kollektorn som utgång. Back-EMK kommer då automatiskt ätas upp av ordinarie drivtransistor.
Re: Arduino med UL2003 breakout kort?
Postat: 19 november 2025, 18:01:41
av stoffe
Icecap skrev: ↑19 november 2025, 15:24:14
Din motor ser ut att ha 5 anslutningar. Det blir 4 spoler + matningen. ULN2003 driver till GND om jag minns rätt så från varje spole till den gemensamma matning ska det vara en diod (t.ex. 1N400x) med katoden till +matningen och anoden till spolen.
Detta gör att den spänningspuls som annars kan komma när drivningen för spolen släpps "kortsluts" och inte ställer till skada.
Då din ritning inte visar att du har gemensam GND är detta det största problem för mig, det MÅSTE vara gemensam GND för att det ska fungera rimligt.
Frågan är hur jag ska koppla strömförsörjningen.
Men min idé är så här.
Jag har gemensam jord och kabel mellan uln2003 kort och Arduino. Sedan monterar jag en flybackdiod på återledaren från motorns lindningar. +12V där kan jag montera en elektrolyt och en icke elektrolyt kondensator mot jord sådan drar jag 12+ uln2003 kortet till micro Arduinokortet.
Eller
Så drar jag bara gemensam jord och inte plus 12v. Eftersom Arduinokortet kommer få sin plusspänning från datorn via USB C.
Är det något mer jag ska göra?
Re: Arduino med UL2003 breakout kort?
Postat: 19 november 2025, 18:19:24
av pi314
ULN2001-ULN2004.png
För att dom inbyggda dioderna i ULNs00x ska göra någon nytta, så måste pin 9 vara kopplad till +12 volt.
/π
Re: Arduino med UL2003 breakout kort?
Postat: 19 november 2025, 19:26:33
av stoffe
Pin 9 är kopplad till 12+ på matningen till stegmotorn på breakout kortet.
Re: Arduino med UL2003 breakout kort?
Postat: 20 november 2025, 07:46:03
av stoffe
Nu har jag testat med extra flybackdiod på matningen till stegmotorerna och det verkar rädda arduinon. Extra jordkabel mellan Arduino och uln2003 kort. Nu är allt som det ska vad jag kan se vid en första test. Men däremot monterade jag inte glättning och avstörningskondensator så som MiaM föreslog men det kanske jag gör innan jag bygger in den i en låda.
Tack för alla svar!