Styra kontaktor med arduino/raspberry pico
Styra kontaktor med arduino/raspberry pico
Jag har byggt ett litet reläkort som via en transistor styrs av en Raspberry Pico. Det är 12V relän som klarar 230V på sekundärsidan. Varje relä styr sedan en kontaktor.
Jag har ett problem jag inte riktigt begriper. När jag byggt klart allt så såg det ut att fungera några dagar, tills jag plötsligt tappade kontakten med Picon. Kopplade bort strömmen och startade om och den fungerade återigen bra i en eller två dagar.
Trodde först jag hade en bugg i koden, och lade till en massa printf för att följa vad som egentligen går fel. Tänkte sen det kanske var mitt veroboardbygge som inte var riktigt optimalt, så jag etsade igår ett riktigt kretskort och räknade ut vilket motstånd jag skulle ha för att strömmen skulle bli ca 1mA från picon till basen på transistorn. Reläna drar i sin tur ca 17 mA.
Det har dock visat sig att när jag provkör med enbart reläna så fungerar det hur bra som helst. Jag kan koppla på / av så mycket jag vill och den bara fortsätter fungera.
Men när jag ansluter kontaktorerna så fungerar det några gånger bara. Mellan 1-10 till/frånslag och sen bara dör den. Efter omstart så fungerar det återigen bra några gånger.
Det är uppenbarligen någon störning / överslag som sker vid (tror jag) frånkoppling av kontaktorer.
Reläna har flywaydiod för att undvika spik vid frånslag. Men kan det vara nåt sånt som händer vid frånslag av kontaktorerna?
Jag testade sätta in en liten kondensator mellan signalutgången (GPIO) och jord, men det gjorde ingen skillnad.
Blir det nån typ av spik? Behöver jag kanske ett RC-filter eller liknande? Eller ska jag testa med en optokopplare?
Jag har ett problem jag inte riktigt begriper. När jag byggt klart allt så såg det ut att fungera några dagar, tills jag plötsligt tappade kontakten med Picon. Kopplade bort strömmen och startade om och den fungerade återigen bra i en eller två dagar.
Trodde först jag hade en bugg i koden, och lade till en massa printf för att följa vad som egentligen går fel. Tänkte sen det kanske var mitt veroboardbygge som inte var riktigt optimalt, så jag etsade igår ett riktigt kretskort och räknade ut vilket motstånd jag skulle ha för att strömmen skulle bli ca 1mA från picon till basen på transistorn. Reläna drar i sin tur ca 17 mA.
Det har dock visat sig att när jag provkör med enbart reläna så fungerar det hur bra som helst. Jag kan koppla på / av så mycket jag vill och den bara fortsätter fungera.
Men när jag ansluter kontaktorerna så fungerar det några gånger bara. Mellan 1-10 till/frånslag och sen bara dör den. Efter omstart så fungerar det återigen bra några gånger.
Det är uppenbarligen någon störning / överslag som sker vid (tror jag) frånkoppling av kontaktorer.
Reläna har flywaydiod för att undvika spik vid frånslag. Men kan det vara nåt sånt som händer vid frånslag av kontaktorerna?
Jag testade sätta in en liten kondensator mellan signalutgången (GPIO) och jord, men det gjorde ingen skillnad.
Blir det nån typ av spik? Behöver jag kanske ett RC-filter eller liknande? Eller ska jag testa med en optokopplare?
Re: Styra kontaktor med arduino/raspberry pico
Det är alltid bra att visa ett kopplingsschema hur man kopplat om man vill ha hjälp.
Re: Styra kontaktor med arduino/raspberry pico
Här är kretschemat. Picons utgång märkt "Out". R = 2.2kΩ och transistorn är BC337.
På mitt kretskort har jag dubblat detta, dvs två olika utgångar styr var sitt relä.Du har inte behörighet att öppna de filer som bifogats till detta inlägg.
Senast redigerad av AlbertE 5 november 2023, 11:00:23, redigerad totalt 1 gång.
Re: Styra kontaktor med arduino/raspberry pico
Det låter omedelbart som störningar på spänningsmatningen.
Och då behöver du att tänka på hur ledningar dras, om det finns kontakter i matningsvägen osv.
Så ett schema som även avspeglar den fysiska koppling är värdefullt.
Men omedelbart hade JAG drivit relä + transistor med GND & +12V direkt från nätdelen och haft ett par parallella strömledningar till styrdelen.
Jag hade nog även tagit ett låg-Ohms motstånd i serie med 12V till transistor & relä o monterat en låg-ESR konding mellan GND o relä-12V (efter motståndet).
Då reläet styr en kontaktor ska det finnas en snubber över kontaktorspolen. Annars - om de finns nära varandra - skickas det seriösa störningar ut vid avslag.
Edit: ditt schema snger inget om hur det är kopplat med GND o +12V.
Och då behöver du att tänka på hur ledningar dras, om det finns kontakter i matningsvägen osv.
Så ett schema som även avspeglar den fysiska koppling är värdefullt.
Men omedelbart hade JAG drivit relä + transistor med GND & +12V direkt från nätdelen och haft ett par parallella strömledningar till styrdelen.
Jag hade nog även tagit ett låg-Ohms motstånd i serie med 12V till transistor & relä o monterat en låg-ESR konding mellan GND o relä-12V (efter motståndet).
Då reläet styr en kontaktor ska det finnas en snubber över kontaktorspolen. Annars - om de finns nära varandra - skickas det seriösa störningar ut vid avslag.
Edit: ditt schema snger inget om hur det är kopplat med GND o +12V.
Re: Styra kontaktor med arduino/raspberry pico
Ungefär så här har jag kopplat:
5V till Picon kommer just nu direkt via USB från min dator då jag testkör, men annars via en Buck-converter som tar ner 12V till 5V.
Jag har inte monterat någon "snubber". Kan vara det som är problemet. När jag söker på det så verkar det bara vara en motstånd och en kondensator i serie (RC). Men verkar som man också kan använda en varistor (MOV). Ska kolla om jag har någon sådan hemma.
När jag började detta projekt tänkte jag först att jag bara skulle använda två st 230V relän som klarar 16A (dvs inga kontaktorer), men jag tyckte det blev mycket renare att bara ha en fas 230V in till reläkortet och använda kontaktorer som sitter i elcentralen.
Kopplingarna blev snyggare också. Men hade aldrig tänkt på detta problem då.
Ska testa lägga till en snubber. Hittade några exempel på nätet: R=200Ω/1W, C=0.01μF / 630V, eller R=47Ω, C=0.1μF. Ska testa med den första.
Dvs 12V till kortet kommer direkt från en trafo (vanlig batterieliminator som sitter i ett vägguttag).5V till Picon kommer just nu direkt via USB från min dator då jag testkör, men annars via en Buck-converter som tar ner 12V till 5V.
Jag har inte monterat någon "snubber". Kan vara det som är problemet. När jag söker på det så verkar det bara vara en motstånd och en kondensator i serie (RC). Men verkar som man också kan använda en varistor (MOV). Ska kolla om jag har någon sådan hemma.
När jag började detta projekt tänkte jag först att jag bara skulle använda två st 230V relän som klarar 16A (dvs inga kontaktorer), men jag tyckte det blev mycket renare att bara ha en fas 230V in till reläkortet och använda kontaktorer som sitter i elcentralen.
Kopplingarna blev snyggare också. Men hade aldrig tänkt på detta problem då.
Ska testa lägga till en snubber. Hittade några exempel på nätet: R=200Ω/1W, C=0.01μF / 630V, eller R=47Ω, C=0.1μF. Ska testa med den första.
Du har inte behörighet att öppna de filer som bifogats till detta inlägg.
Re: Styra kontaktor med arduino/raspberry pico
En grej jag kom att tänka på är att 12V trafon sitter i ett utag som är samma fas (och samma säkring) som styrspänningen till kontaktorn. Kanske det också påverkar.
En annan ide är att sätta arduinon i en kapslad (och jordad) låda. Ifall det är magnetfält/elektriska fält som orsakar problemen.
Och så ska jag testa stabilisera 5V till arduinon med en eller ett par kondensatorer.
En annan ide är att sätta arduinon i en kapslad (och jordad) låda. Ifall det är magnetfält/elektriska fält som orsakar problemen.
Och så ska jag testa stabilisera 5V till arduinon med en eller ett par kondensatorer.
Re: Styra kontaktor med arduino/raspberry pico
Styringen av relätransistorn har ju ett modstånd mellan basen och µC-porten.
Men VAR sitter modståndet?
Är det nära transistorn? I så fall har du en bit ledning in som kan samla upp störningar.
Motståndet ska sitta så nära som möjligt vid µC-delen!
Och med tanke på att du har de problem du har, hade JAG monterat en diod i 12V matningen till step-down och sedan en biffig elektrolytkonding över GND/VDD EFTER dioden - på step-down sidan.
Hade du tagit en N-MOSFET till att driva reläer kunde gate-motståndet ledigt ha varit 10k-47k och det hade varit nära nog omöjligt att skicka störningar den vägen.
Men jag TROR att du har brutit mot en hård regel JAG har: en processorpinne får ALDRIG lämna kretskortet utan en buffert eller i det minsta ett bra skydd.
Men VAR sitter modståndet?
Är det nära transistorn? I så fall har du en bit ledning in som kan samla upp störningar.
Motståndet ska sitta så nära som möjligt vid µC-delen!
Och med tanke på att du har de problem du har, hade JAG monterat en diod i 12V matningen till step-down och sedan en biffig elektrolytkonding över GND/VDD EFTER dioden - på step-down sidan.
Hade du tagit en N-MOSFET till att driva reläer kunde gate-motståndet ledigt ha varit 10k-47k och det hade varit nära nog omöjligt att skicka störningar den vägen.
Men jag TROR att du har brutit mot en hård regel JAG har: en processorpinne får ALDRIG lämna kretskortet utan en buffert eller i det minsta ett bra skydd.
Re: Styra kontaktor med arduino/raspberry pico
Motståndet sitter på kretskortet, vid transistorn. Så du har rätt.
Jag har nyss varit och kollat vad jag hade för kondensatorer liggande, och hittade ett par 500nF/400V (stora rektangulära). Tänkte jag gör en test, så jag lödde på ett 150Ω motstånd på varje (storleksmässigt det största, tänkte den borde tåla högre effekt och spänning). Jag lödde på ett par kablar i varje ände och har nu kopplat in dem parallellt med primärlindningen på kontaktorerna. Nu ser det ut att fungerar klockrent. Lyckas inte provocera fram ett fel.
Vet inte om detta är rätt värden för mina kontaktorer (https://www.elbutik.se/product.html/rog ... taktor-wct), men det verkar fungera. Sedan vet jag inte om det kommer utvecklas värme då kontaktorerna är påslagna. Lite fundersam kring detta.
Tack för dina förslag och kommentarer. Jag tror jag skulle kunna sätta ytterligare ett motstånd vid processorn. Enligt databladet ska det räcka med runt 0.5mA för att transistorn ska ha öppnat fullt (vid 17mA kollektor-emitter). 2.2kΩ ger ca 1mA, så skulle kunna sätta dit 1kΩ till utan problem.
Ska fundera på N-mosfet till nästa version av kretskortet.
Har en del såna liggande.
Jag har nyss varit och kollat vad jag hade för kondensatorer liggande, och hittade ett par 500nF/400V (stora rektangulära). Tänkte jag gör en test, så jag lödde på ett 150Ω motstånd på varje (storleksmässigt det största, tänkte den borde tåla högre effekt och spänning). Jag lödde på ett par kablar i varje ände och har nu kopplat in dem parallellt med primärlindningen på kontaktorerna. Nu ser det ut att fungerar klockrent. Lyckas inte provocera fram ett fel.
Vet inte om detta är rätt värden för mina kontaktorer (https://www.elbutik.se/product.html/rog ... taktor-wct), men det verkar fungera. Sedan vet jag inte om det kommer utvecklas värme då kontaktorerna är påslagna. Lite fundersam kring detta.
Tack för dina förslag och kommentarer. Jag tror jag skulle kunna sätta ytterligare ett motstånd vid processorn. Enligt databladet ska det räcka med runt 0.5mA för att transistorn ska ha öppnat fullt (vid 17mA kollektor-emitter). 2.2kΩ ger ca 1mA, så skulle kunna sätta dit 1kΩ till utan problem.
Ska fundera på N-mosfet till nästa version av kretskortet.

Re: Styra kontaktor med arduino/raspberry pico
JAg har råkat ut för liknande och då var det själva kraftkontakterna på kontaktorn som gav gnistor vid på/avslag. Jag tror tom. dom gick luftvägen för det hjälpte att sätta NANO:n längre ifrån kontaktorerna. (Från ca 20 cm till ca 80 cm)
Re: Styra kontaktor med arduino/raspberry pico
Jag tror jag ska göra följande modifieringar för att göra det mer driftsäkert:
1. Sätta in picon i en metallkapsling.
2. Skärmad kabel från pico till relästyrning.
3. Motstånd mellan pico och signalkabeln ut från kapslingen.
4. Kondensator för att stabilisera strömförsörjning (5V) till Pico.
5. Kondensator för att stabilisera strömförsörjning (12V) till relästyrning.
1. Sätta in picon i en metallkapsling.
2. Skärmad kabel från pico till relästyrning.
3. Motstånd mellan pico och signalkabeln ut från kapslingen.
4. Kondensator för att stabilisera strömförsörjning (5V) till Pico.
5. Kondensator för att stabilisera strömförsörjning (12V) till relästyrning.
Re: Styra kontaktor med arduino/raspberry pico
Sätt RC (i serie) över kontaktorspolen. Inte bra att bryta strömmen tvärt.
Re: Styra kontaktor med arduino/raspberry pico
RC över primärspolen i kontaktorn verkar ha avhjälpt problemet!
Re: Styra kontaktor med arduino/raspberry pico
Backspänd Diod över spolen är std i dessa applikationer, då spolen genererar ordentlig spänningsspik när transistorn slutar leda. Ofta slår den spiken sönder transistorn... Därför ser man typ alltid dioder över reläspolarna i konstruktioner som drivs via halvledare...
Senast redigerad av malman 6 november 2023, 08:36:20, redigerad totalt 1 gång.
-
- Inlägg: 7011
- Blev medlem: 31 augusti 2006, 16:42:43
- Ort: Jamtland
Re: Styra kontaktor med arduino/raspberry pico
Han har ritat in dessa dioder på DC-spolarna. På AC-spolarna fungerar det inte med en diod. Fast där verkar han fått till det med RC-filter.
Re: Styra kontaktor med arduino/raspberry pico
Ahh.. sorry.. me bad... Lite oortodoxt ritat... Skummade lite snabbt å såg ingen diod på vänstersidan om spolen i schemat... Noterade av någon anledning inte att den fanns på högersidan bland den streckade linjen till kontaktsidan.. någonsorts sammanblandning med optokopplare i preprocessningen i mitt huvve..
Jag drar täcket över huvudet å somnar om.

Jag drar täcket över huvudet å somnar om.

