Go Down

Topic: Arduino Uno hapert na het connectoren van sensoren. (Read 605 times) previous topic - next topic

Bart_D

Jan 13, 2018, 11:17 pm Last Edit: Jan 14, 2018, 06:29 pm by Bart_D Reason: Update met het laatste nieuwe aansluitschema
Hallo,

Ik heb een beetje ervaring met arduino via men eindwerk. Hierin heb ik een soort van gps tracer gemaakt van een arduino mega bord. Dit werkte fantastisch.  ;D  8)
Hierdoor heb ik een beetje de smaak te pakken gekregen van arduino en wou ik een eigen privé projectje opstarten met een arduino uno bordje.

Ik leg even uit wat de bedoeling is van dit project: ik heb een luchtinlaatklep die aangestuurd wordt met een motor(3x400V). Deze motor krijgt een 0-12V signaal van een computer om aan te geven op welke positie de kleppen moeten komen te staan.
Onlangs is de powerunit van deze motor stuk gegaan. In deze unit zit heel de positie regeling in vervat. Daarom dacht ik om met de aanschaf van enkele componenten(400V relays + relais shield + positie potentiometer + ... ), de positie regeling en stand meting volledig door een arduino bordje te laten uitvoeren.
Hiervoor heb ik een 10k ohm en 33 k ohm resistor in serie geplaatst over het 0-12V signaal om dit signaal om te zetten naar een 0-3V signaal, zodat dit kan ingelezen worden in de analoge ingang van het bordje. Om het verloop goed te kunnen volgen heb ik er een IC2 display aan toegevoegd.
Ik sluit alle componenten als volgt aan(in deze foto werk ik met de inwendige pull-up resistors, in het ander geval worden de ingangen via een 4,7k ohm weerstand verbonden met de GND):
Nieuw aansluitschema

Ter verduidelijking: relais 1 van de relais shield is verbonden met ingang 7, relais 2 van de relais shield is verbonden met ingang 6, relais 3 van de relais shield is verbonden met ingang 5, relais 4 van de relais shield is verbonden met ingang 4.    

Ik heb eerst alles geprogrammeerd en grondig getest(werkt perfect) vooraleer ik de eindschakelaars, vermogenrelais  en potentiometer aansluit. Wanneer ik alle componenten aansluit, ontstaat er iets bizars: Het programma blijft haperen in zijn opstartfase en start om de 30 seconden telkens opnieuw op. Ik heb geprobeerd om zelfs elk component één voor één los te koppelen om te zien of het probleem opgelost is, maar het probleem blijft bestaan.
Daarna heb ik heel het programma omgegooid om te werken met de inwendig pull-up risistors. zodanig dat ik uitwendig geen weerstanden meer aan hoef te hangen, maar dat maakte het alleen maar erger. Nu loopt het volledig mis hij stuurt na 16 seconden al zen uitgangen hoog. Wat ik zeer bizar vond.
Ps. alle onderdelen behalve de relais staan op 2à3 meter van de controller.

Is er iemand die er een oplossing voor weet? Want ik ben momenteel radeloos.

Alvast bedankt.

M.v.g,

Bart_D

Bart_D

Mijn excuses, het blijkt dat men afbeelding niet zichtbaar is. Op volgende link kan je het aansluitschema terugvinden: aansluitschema

Bart_D

Bij deze geef ik jullie de link met de arduino-code op (aangezien het programma nogal groot is)
Programma code :)

ArdLab_Gent

0-12 Volt analoog ingangssignaal verbinden met AREF is geen goed idee !!!

0 Volt van analoog ingangssignaal moet met Arduino GND verbonden worden maar dat mag enkel als dat VEILIG is

Welke voeding gebruik je voor de Arduino?


 
ArdLab geeft Arduino workshops voor beginners.
ArdLab is lid van de STEM-Academie.
http://www.ardlab.gent - http://www.stem-academie.be/

Bart_D

#4
Jan 14, 2018, 06:05 pm Last Edit: Jan 14, 2018, 06:21 pm by Bart_D Reason: Update aansluitschema
ok, Bedankt! Das goed om te weten.

Ik had eerst de 0 volt van het analoog ingangssignaal met de GND verbonden. Omdat dit inderdaad het best leek. Maar toen dit probleem zich voordeed, was ik beginnen zoeken naar een oplossing en vond ik een forum 'Measuring voltage with arduino' waarin ze vertelde dat je best de AREF gebruikte voor externe spanningen.
Dus ik zal beginnen met de 0 Volt signaal terug aan de GND te hangen.

Als ik meet tussen het 0 Volt signaal en de massa dan meet ik exact 0 Volt. volstaat dit als veilig? Wanneer is het juist veilig om het signaal aan de GND te hangen?

Ik gebruik een standaard 230VAC naar 9VDC (1A) voeding met de 2.1mm plug (centrale pin positief) zoals beschreven op 'Arduino Playground'.

Ik heb het analoog signaal nu heraangesloten als volgt:
Nieuw aansluitschema
Maar het probleem blijft bestaan.

Zijn er nog dingen waar ik zeker op moet letten?

Alvast bedankt.

MAS3



Veiligheid is belangrijk, zeker als je met 400 Volt werkt.
Maar je relaisschakeling is onnodig gecompliceerd.

Je gebruikt op je relais bord 3 relais om je 2 vermogensrelais mee te sturen.
1 relais om te bepalen welk vermogensrelais zal worden bediend, en 2 relais om vervolgens het betreffende relais in te schakelen.

Dat kun je op 2 verschillende manieren met slechts 2 relais ook maken:
1e is dan een relais waarmee je de voeding voor het vermogensrelais inschakelt, en de andere is het relais waarmee je het betreffende vermogensrelais selecteert (dat eerst doen, en als laatste uitschakelen)
2e is dat elk vermogensrelais een eigen voorschakel relais krijgt en die voorschakel relais samen uit je 230 gevoed worden.

Die vermogensrelais hebben een lock-out voor hun tegenhanger.
Dus als er een dik relais is ingeschakeld, dan kan het andere relais niet meer worden ingeschakeld, zodat je geen kortsluiting in je 400 volt gedeelte kunt krijgen door de beide relais.

Wanneer je met Fritzing! werkt, dan nog moet je wel een beetje letten op wat je maakt en zo goed mogelijk proberen om netjes en consequent te werken.
Dat is met bovenstaande plaatje nog niet helemaal gelukt.
Er is een onderwerp hier op het forum dat gaat over Fritzing! plaatjes, en dan niet in positieve zin.
Have a look at "blink without delay".
Did you connect the grounds ?
Je kunt hier ook in het Nederlands terecht: http://arduino.cc/forum/index.php/board,77.0.html

Bart_D

MAS3, ik ben het volledig met je eens. Voor je met 400V werkt moet het zeker volledig veilig zijn.

inderdaad, ik gebruik 3 relais om zeker de veiligheid te kunnen garanderen zowel elektrisch als mechanisch(wat het inderdaad vrij complex maakt).
Indien ik dit met twee relais zou uitvoeren, zal bij het falen van de keuze relais, de motor naar de verkeerd richting bewegen zonder er vat op te hebben. Dat is de rede waarom ik hier drie relais gebruik. Indien de keuze relais faalt zal er dus niks gebeuren(= veilige situatie).

Je tweede optie had ik even geopteerd, maar is elektrisch niet veilig. Indien arduino de twee voorschakelrelais tegelijk aanstuurt, zitten we zelfs met de 'Lock-out' met een kortsluit probleem.

Bedankt voor de info. Ik had nog nooit van Fritzing gehoord. Dit is een zeer interessant programma. Veel eenvoudiger dan paint waarin ik nu zit te knoeien.
Bedankt voor de tip!

indien je nog opmerkingen hebt, laat maar weten. Alle info is welkom!

Bart_D

Heeft er iemand toevallig nog een idee waar men probleem zou kunnen zijn? ik ben intussen zelf ook nog op zoek gegaan, Maar nu werkt men programma zelfs niet meer in men test omgeving. (ik hoop dat de arduino controller niet stuk is)

0-12 Volt analoog ingangssignaal verbinden met AREF is geen goed idee !!!

0 Volt van analoog ingangssignaal moet met Arduino GND verbonden worden maar dat mag enkel als dat VEILIG is

Welke voeding gebruik je voor de Arduino?


  
@ArdLab_Gent, Als ik meet tussen het 0 Volt signaal en de massa dan meet ik exact 0 Volt. volstaat dit als veilig?

Ik gebruik een standaard 230VAC naar 9VDC (1A) voeding met de 2.1mm plug (centrale pin positief) zoals beschreven op 'Arduino Playground'.

Veiligheid is belangrijk, zeker als je met 400 Volt werkt.
Maar je relaisschakeling is onnodig gecompliceerd.

Je gebruikt op je relais bord 3 relais om je 2 vermogensrelais mee te sturen.
1 relais om te bepalen welk vermogensrelais zal worden bediend, en 2 relais om vervolgens het betreffende relais in te schakelen.

Dat kun je op 2 verschillende manieren met slechts 2 relais ook maken:
1e is dan een relais waarmee je de voeding voor het vermogensrelais inschakelt, en de andere is het relais waarmee je het betreffende vermogensrelais selecteert (dat eerst doen, en als laatste uitschakelen)
2e is dat elk vermogensrelais een eigen voorschakel relais krijgt en die voorschakel relais samen uit je 230 gevoed worden.

Die vermogensrelais hebben een lock-out voor hun tegenhanger.
Dus als er een dik relais is ingeschakeld, dan kan het andere relais niet meer worden ingeschakeld, zodat je geen kortsluiting in je 400 volt gedeelte kunt krijgen door de beide relais.

Wanneer je met Fritzing! werkt, dan nog moet je wel een beetje letten op wat je maakt en zo goed mogelijk proberen om netjes en consequent te werken.
Dat is met bovenstaande plaatje nog niet helemaal gelukt.
Er is een onderwerp hier op het forum dat gaat over Fritzing! plaatjes, en dan niet in positieve zin.
@MAS3, ik ben het volledig met je eens. Voor je met 400V werkt moet het zeker volledig veilig zijn.
Bedankt voor de info. Ik had nog nooit van Fritzing gehoord. Dit is een zeer interessant programma. Veel eenvoudiger dan paint waarin ik nu zit te knoeien.
Bedankt voor de tip!
indien je nog opmerkingen hebt, laat maar weten. Alle info is welkom!

shooter

Zorg voor een voeding die op 5Volt de arduino en het relaisshield kan bedienen, jouw 9 Volt wordt op de arduino wel omgezet en jouw arduino start dus wel, maar zodra je een relais aanzet is het snel gedaan, want de stroom is teveel voor de spanningsregelaar.en zal dus te heet worden en stoppen.
Ga na welke pinnen gebruikt worden om de relais te bedienen, want die kun je niet als ingang gebruiken.
de Vref niet gebruiken, want je blaast je arduino snel op.
de weerstanden zijn prima, maar staan verkeerd om (tjonge zeg theorie nakijken)!
om dat wat veiliger te maken kun je hier een optocoupler tussen te zetten.

de schakelaars zou ik met een weerstandje (van 10k) naar gnd trekken en dan de 5 Volt schakelen. dan is duidelijk wat actief is en open. de interne pullup werkt naar 5 Volt en heb je dus ook verkeerd aangesloten. en de interne weerstnad is erg hoog en storingsgevoelig.

de beide eindcontacten zou ik in de lijn van de grote spoelen zetten dat is veiliger, dan kan de motor nooit verder draaien (let wel op dat de fases niet verdraait kunnen worden want dan werken de eindcontacten niet in de goede richting.

Zorg in de software voor een dode band en een tijdsvertraging om te zorgen dat het wat rustiger wordt, de relais en de motor zijn niet bestand om vaak te schakelen.
Ofwel, nog genoeg te doen, en we horen het graag.


paul deelen
shooter@home.nl
making controls with codesys PLC and arduino

Bart_D

Zorg voor een voeding die op 5Volt de arduino en het relaisshield kan bedienen, jouw 9 Volt wordt op de arduino wel omgezet en jouw arduino start dus wel, maar zodra je een relais aanzet is het snel gedaan, want de stroom is teveel voor de spanningsregelaar.en zal dus te heet worden en stoppen.
Ga na welke pinnen gebruikt worden om de relais te bedienen, want die kun je niet als ingang gebruiken.
de Vref niet gebruiken, want je blaast je arduino snel op.
de weerstanden zijn prima, maar staan verkeerd om (tjonge zeg theorie nakijken)!
om dat wat veiliger te maken kun je hier een optocoupler tussen te zetten.

de schakelaars zou ik met een weerstandje (van 10k) naar gnd trekken en dan de 5 Volt schakelen. dan is duidelijk wat actief is en open. de interne pullup werkt naar 5 Volt en heb je dus ook verkeerd aangesloten. en de interne weerstnad is erg hoog en storingsgevoelig.

de beide eindcontacten zou ik in de lijn van de grote spoelen zetten dat is veiliger, dan kan de motor nooit verder draaien (let wel op dat de fases niet verdraait kunnen worden want dan werken de eindcontacten niet in de goede richting.

Zorg in de software voor een dode band en een tijdsvertraging om te zorgen dat het wat rustiger wordt, de relais en de motor zijn niet bestand om vaak te schakelen.
Ofwel, nog genoeg te doen, en we horen het graag.



bedankt voor deze zeer interessante info! ik heb me een extra voeding aangeschaft om dit te realiseren. Daarna zal ik alle weerstanden van 4,7kohm vervangen door de 10k variant, waardoor de belasting zal afnemen. De optocoupler is zeer interessant!

Na het aanpassen en testen van het project, laat ik zeker weten of de problemen van de baan zijn. Maar ik ben ervan overtuigd dat jullie, met deze info, me al een heel stuk naar de goede richting hebeben gebracht.
Bedankt!

shooter

4k7 is ook prima hoor dat geeft dan 1 mA per ingang
paul deelen
shooter@home.nl
making controls with codesys PLC and arduino

Go Up