Hallo zusammen, Ich muss sagen dass ich nor wenige Erfahrungen uControllern habe trotzdem habe ich folgende vor: Ich bastele gerade eine testplatine mit ATmega168 womit ich unter anderen: -(1)- 100 Reed-Relais Signale überwachen/nachfragen möchte (Sie werden separat geschaltet. ICh will nur überprüfen ob und welche relai geschaltet hat und/oder nicht) -(2)- folgenden spannungen auf der testplatine messen möchte 5V, 12V, -12V, 24V (Sie liegen an Unterschiedlichnen Anschlüsse einer schroff netzteil) -(3)- die aus einer Widerstand-Dekade eingestellte Wert nachprüfen Alle diese infos werden auf ein LCD Display ausgegeben Meine Frage: -Bis wie hoch darf ich die AREF versorgen? -Gibt es eine multiplex schaltung für um alle Relais an I/O von uC zu kriegen? Ich habe bis jetzt mit relais versucht aber sieht nix gut aus:-) -Für die R-Dekade habe ich Konstantstromquelle besorgt und möchte nach der Regel R=U/I messen, bei Höchst einstellbare R=65KOHM ist U=6,5V mit I=100uA, ist das überhaupt mit uC messbar Ich hoffe Sie können mir etwas Tipp geben salut armyboy
> -(1)- 100 Reed-Relais Signale überwachen/nachfragen möchte (Sie werden > separat geschaltet. ICh will nur überprüfen ob und welche relai > geschaltet hat und/oder nicht) Ok. Dazu verwendest Du wahrscheinlich ein Schieberegister. > Meine Frage: > -Bis wie hoch darf ich die AREF versorgen? Was machst Du mit AREF? Hast Du eine Schaltung oder Prinzipskizze? > -Gibt es eine multiplex schaltung für um alle Relais an I/O von uC zu > kriegen? Ich habe bis jetzt mit relais versucht aber sieht nix gut > aus:-) Ja, beispielsweise http://www.reichelt.de/?;ACTION=3;LA=444;GROUP=A2235;GROUPID=2933;ARTICLE=3229;START=0;SORT=artnr;OFFSET=16;SID=25mU2HoKwQARkAACKRNIAb1572b1d91a8cb3bff09f36fafce8637 als analoger Multiplexer. > -Für die R-Dekade habe ich Konstantstromquelle besorgt und möchte nach > der Regel R=U/I messen, bei Höchst einstellbare R=65KOHM ist U=6,5V mit > I=100uA, ist das überhaupt mit uC messbar Was machst Du mit der R-Dekade? Gruß, Michael
<...Ok. Dazu verwendest Du wahrscheinlich ein Schieberegister...> Da die Relais separat geschaltet werden, habe ich öfter den Fehler dass Signale nicht ankommen. da weiss ich nicht ob das Relay geschaltet hat oder kapput ist deswegen die überprüffung über diese testkarte Kannt mir jemand bitte die minimalebeschaltung vom schieberegister zeigen. ich habe damit noch nie gearbeitet <...Was machst Du mit AREF? Hast Du eine Schaltung oder Prinzipskizze?..> Da ich verschiedenen Spannungen messen möchte 5V, 7V, 12V, -12V, 24V weiss ich nicht ob ich die Referenzspannung AREF nur mit AVcc verbinden muss oder extra bis 24V (meine höchst zu messende Spannung) Oder gibt es eine andere Methode für die Reference Spannung? <...Was machst Du mit der R-Dekade?...> Die Widerstand-Dekade diennt zur Spannungskodierung (ins gesamt 7 Kanäle). Nach der einstellung will ich aber ein Kanal wählen und nachlesen (am LCD) können was ausgegeben wird. Ich habe eine Skizze-Schaltung angehängt salut armyboy
armyboy schrieb: > <...Ok. Dazu verwendest Du wahrscheinlich ein Schieberegister...> > Da die Relais separat geschaltet werden, habe ich öfter den Fehler dass > Signale nicht ankommen. Eigentlich solltest du dort den Hebel ansetzen. > da weiss ich nicht ob das Relay geschaltet hat > oder kapput ist deswegen die überprüffung über diese testkarte > Kannt mir jemand bitte die minimalebeschaltung vom schieberegister > zeigen. ich habe damit noch nie gearbeitet http://www.mikrocontroller.net/articles/AVR-Tutorial:_Schieberegister > > <...Was machst Du mit AREF? Hast Du eine Schaltung oder > Prinzipskizze?..> > Da ich verschiedenen Spannungen messen möchte 5V, 7V, 12V, -12V, 24V > weiss ich nicht ob ich die Referenzspannung AREF nur mit AVcc verbinden > muss oder extra bis 24V (meine höchst zu messende Spannung) Wenn du 24V an einen Pin anhängst, der für max Vcc+0.5V spezifiziert ist, dann grillst du deinen µC. > Oder gibt es eine andere Methode für die Reference Spannung? Benutze die interne Referenzspannung und teile deine positiven Messspannungen einfach mit einem Spannungsteiler runter.
Alles in allem klingt das wieder mal nach: Ich hab zwar weder das Tutorial durchgearbeitet, um wenigstens ein bischen einen Grundstock dafür zu haben was ich da eigentlich mache noch habe ich das Datenblatt des Prozessors ausführlich studiert, ich will aber eine Schaltung zusammenmurksen.
<...Ich hab zwar weder das Tutorial durchgearbeitet, ...ich will aber eine Schaltung zusammenmurksen....> Eigentlich haben Sie recht. ICh habe das Tuto uu wenig studiert aber damit habe ich bereits ene Nacht-Boden-Beleuchtung mit Bewegungsmelder, Mega8 und eine Gardienen AUF / ZU Steuerung mit TAG/NACHT Abfrage, Mega16 gebaut und sie laufen zimlich gut. Die I/O genügend mir damals Nur es ist das erste mal das ich so was grosseres mit mega168 und messung und LCD und mehr pin als onboard mache. Sorry für meine DUMMEN FRAGEN aber ignorieren Sie einfach DUMM und helfen Sie mit ne paar Tipps. Es wäre mir sehr hilfreich salut armyboy
>Sorry für meine DUMMEN FRAGEN aber ignorieren Sie einfach DUMM und >helfen Sie mit ne paar Tipps. Wir ignorieren auch gerne FRAGEN.
armyboy schrieb:
> Nur es ist das erste mal das ich so was grosseres
Das hat nichts mit groß zu tun.
Aber wenn jemand ernsthaft frägt, ob er 24V anschließen soll, dann frag
ich mich.
...wie schon gesagt, bin ich ein Anfänger in dieser Domain aber ich finde es sehr schade wie es mit Menschen hier umgegangen wird. Es handelt ich um eine Analoge Abakus die wir an der FH gebaut haben. Es funktioniert gut, nur bein Fehlern suchen wir Stunden lang. Das projekt wir am Ende dieses Semester eingeltellt und landet im Müll. Ich finde es unbefriedigent und möchte in eigene Initiative eine uC basierende Test- / Diagnoseplatine bauen. Und wenn ich hier komme mit meine Dummen Fragen werde ich zusammen angeschiessen. 24V am Controller. Ja und?!?! Ich weiss es nicht deswegen frage ich ja. Heute morgen habe ich von Karl heinz Buchegger den Tipp von Spannungsteiler bekommen. Finde ich wundabar. Das habe ich ja sofort auf meine pollin testboard realisiert. Aus 19 Komunitoren bin ich der einzige der diese Initiative mache. Ich sollte mich doch besser den anderen anschliessen und mein Wochenende Im Alkoholrausch verbringen. Ich kann mein "Spass" haben und kann auch meine Dumme Fragen behalten. und Sie durfen dabei Stolz auf Ihre Pädagogie sein.
OK. Vllt. kann ich dir ja helfen. Ein paar Fragen: Müssen die Schalter der Reedrelais alle zwingend mit einem Kontakt am Pluspol hängen? Wenn nicht, wäre es möglich, alle Kontakte der einen Seite an einen Eingangspin des µC zu schalten und die anderen über eine Reihe von Schieberegistern jeweils der Reihe nach mit diesem anzusteuern. Musst du dann auch überprüfen, ob die Spulen der Relais Saft bekommen oder kann der µC das schon wissen? Eine einfachere (wenn auch nicht die eleganteste) Möglichkeit für dein Problem mit den Spannungsmessungen wäre es, dass jede zu messende Spannung an einen Eingangspin kommt, und zwar durch einen so dimensionierten Spannungsteiler, dass der ATMega bei der Messung den Wert 512 bekommt (dürfte dann meines Wissens genau in der Mitte liegen...). Bei Über-/Unterschreitungen in einem bestimmten Maße kann dann Alarm gegeben werden. Eine simple Möglichkeit dafür wäre hier, sich temporär den gemessenen Wert an jedem der Eingänge ausgeben zu lassen und ein Poti als Spannungsteiler zu verwenden. Bei evtl. Fehlmessungen könnte dann nachjustiert werden. grüssse g.
In der Regel funktionieren Mikros ja, Schieberegister und Relais auch,jedenfalls nach eigenen Erfahrungen,es sei denn,es geht etwas kaputt. Einziges Problem,welches ich habe,das es im Mikro zu Störungen,bei rauhen Betriebsbedingungen kommen kann,also kontrolliere ich nur am Ende der Senderoutine,ob der Befehl ausgeführt wird,und verlasse mich ansonsten auf die Funktion der Schieberegister, und Relais. mfg F.H.
Hallo, <...Müssen die Schalter der Reedrelais alle zwingend mit einem Kontakt am Pluspol hängen?...> Eingentlich nicht. Haupsache ich kann sicherstellen dass die Kontakte nachm Schalten auch richtig geschaltet (geschlossen) haben. <...Musst du dann auch überprüfen, ob die Spulen der Relais Saft bekommen oder kann der µC das schon wissen?...> Das die Spulen der Relais Saft bekommen haben, wir auf der eigentlichen Abakus-Platine, wo auch die Relais angesteuert werden sichergestellt. Es ist aber schon öfter gekommen dass mansche Relais nicht schalten oder unser NI-Stecker gebogenen PIN hat oder die Relais Falsch gelötet waren ... ... ...(Gruppen-Projekt) Mit der Diagnoseplatine will ich lesen können welche Relais geschaltet hat und nicht um die Fehlersuche einzugrenzen. Das mit der U-Messung habe ich gestern bereits 5 Spannungsteiler individuel für die 5 Spannungen gebaut. Über ein Drehschalter kann ich die Spannungen an einem ADC Pin des uC zuschalten. Ich habe sie so dimensioniert dass ich bei Umax 5V am uC habe. Kann man es so lassen? Danke schonmal salut armyboy
> Dateianhang: mega168-schaltung.sch
Ich kann Eagle-Schaltpläne nicht lesen, und installiere mir dazu auch
kein Eagle.
Du möchtest ermitteln, ob ein Reed-Relais geschaltet hat. Ich habe noch
nirgends gelesen, welches Signal denn durch die Relais geschaltet wird,
und ob du das überhaupt messen kannst. Es scheint ein Analogrechner zu
sein, also tippe ich auf Analogsignale in irgendeinem Spannungsbereich
(-12V..24V), die vermutlich teilweise nicht anliegen (abklemmt sind) und
teilweise nicht belastet werden dürfen, und teilweise 0V betragen so
dass man sie nicht unterscheiden kann. Kannst denn wenigstens die
Spannung an der Relaisspule messen, oder liegt das Relais jenseits des
Steckers, so dass die auf die Spulenanschlüsse keinen Zugriff hast ?
Nehmen wir also an, es kommt die Ansteuerspannung der Relais über den
Stecker zu dir und auf deiner Seite ist die Relaisspule, und es reicht,
die Spannung an der Spule zu messen. Wie hoch ist denn die
Spulenspannung ? 5V oder 24V ? Macht schon einen UNterschied bei der
Verbindung zum uC.
Und: Nützt es überhaupt, die Spulenspanung zu messen, oder beeinflussen
sich die Relais gegenseitig ? Gerade Reed-Relais, die dicht
nebeneinander montiert sind, erzeugen Magnetfeklder die sich gegenseitig
beeinflussen, entweder verhindert das eine Relais, dass das
danebenliegende einschaltet trotz Spannug an der Spule, oder es schaltet
das danebenliegende auch ein obwohl das gar keine Ansteuerspannung
bekommt. Man braucht zwischen den Relais eine magnetische Abschirmung,
oder eben genug Abstand.
Messen der Betriebsspannung ist einfach, aber du solltest die
Spanungsteiler nicht so auslegen, dass bei Nennspannung der 'volle'
Bereich ausgenutzt wird. AREF vom ATMega168 kann man auf 1.1V schalten,
und dann sollte man das auch tun, die Spannung ist tausendmal genauer
als die 5V von VCC. Die zu messenden Spannungen werden so geteilt, dass
sie bei 75% den Nennwerts liegen, damit man unter- und Überspannungen
erkennen kann und z.B. bei Abweichungen grösser 10% Meldung machen kann.
+5V----+
|
+---------+
|ATMega168|
| AREF|--10k-+--10nF-- GND
| | |
| ADC0|------+------150k-- -12V
| ADC1|--+----------270k-- +24V
| ADC2|--(---+------150k-- +12V
| ADC3|--(---(---+--56k---- +5V
+---------+ | | |
| 10k 10k 10k
| | | |
GND ---+-------+---+---+
Wenn wir annehmen, dass die Relais alle mit 24V eingeschaltet werden und
mit 0V ausgeschaltet werden, dann kann man dort auch Analogwerte
abfragen
Rel1 --20k--+--20k-- GND
10k
Rel2 --20k--+ (20k jeweils gebildet aus 10k+10k)
10k
Rel3 --20k--+
10k
Rel4 --20k--+
10k
Rel5 --20k--+
10k
Rel6 --20k--+
10k
Rel7 --20k--+
10k
Rel8 --20k--+---|+\
| >--+--22k--+--|ADC4 des ATMega168
+--|-/ | | (1.03V wenn alle Relais an sind)
| | 1k
+--------+ |
GND
(theoretisch gehen 10 Relais, aber dann müssten alle Werte sehr genau
sein, um die verschiedenen Kobinationen auseinanderhalten zu können)
jeweils weitere 8 Relais an weitere Analogeingaenge. Für 100 Relais
reichen die eines ATMega aber nicht, da muesste man mit einem CD4051
Mutiplexer vorauswählen, gestuert durch Portausgänge.
Danke viel mals für die ausführliche Antwort. Die Reed-Relais werden mit 5V, separat angesteuert (NI-Stecker) und auf die Spulenanschlüsse habe ich keinen Zugriff. Ich habe nur die Schalterkontakten Und Sie haben es richtig erkannt. Sowie Sie oben beschrieben haben sind es genau solche Fehler die auftretten. Mal schaltet einer, mal nicht, mal doch auch wenn sie kein Saft hat ... ... Ich habe nur Zugriff zu den Schalterkontakten und möchte dort überprüffen od Soll und ist geschaltet zustimmen. Die 5 Spannungen sind fest aus einem Schroff-Netzteil, wereden über die Widerstand-Dekaden (7 Kanal) kodiert [Analoge Abakus]. Mit meiner Messung will ich vorher sicherstellen dass die Spannungen auch wirklich da sind. Ich werde diese version der U-Messung übernehmen +5V----+ | +---------+ |ATMega168| | AREF|--10k-+--10nF-- GND | | | | ADC0|------+------150k-- -12V | ADC1|--+----------270k-- +24V | ADC2|--(---+------150k-- +12V | ADC3|--(---(---+--56k---- +5V +---------+ | | | | 10k 10k 10k | | | | GND ---+-------+---+---+ Ich will zudem auch die am R-Dekade eingestellte Widerstandswert lesen können. Dafür habe ich ein Konstantstromquelle IC besorgt LM234. SIe liefert 100uA und bei Rmax=65K habe ich 6,5V. So möchte ich über R=U/I meine R-werte ermitteln. Habe ich hier falsch gedacht??:-) danke
> Habe ich hier falsch gedacht??:-) Mit 15uA hätte man 0.975V, besser passend fuer die AVR Analogeingaenge. Die 6.5V müsstest du ja erst henterteilen. Uups: +5V----+ | +---------+ |ATMega168| | AREF|------+--10nF-- GND | | 10k | ADC0|------+------150k-- -12V so ist's besser, die 10nF dienen ja der Filterung von AREF. > Ich habe nur Zugriff zu den Schalterkontakten und möchte dort > überprüffen od Soll und ist geschaltet zustimmen. Hängt denn zu dem Zeitpunkt an den Schalterkontakten der rechnende Analogrechner dran, oder koennte man die Schalterkontakte frei verwenden und neu verdrahten Dann sollte man eine digitale Matrix aufbauen PD0 PD1 | | PB0 -----+---(--+---(-- ... \ | \ | S | S | \| \| + + | | PB1 -----+---(--+---(-- ... \ | \ | S | S | \| \| + + | | : : wobei S jeweils ein Schaltkontakt eines Relais ist mit einer Diode in Reihe, also: / --|>|--o/ o----- So reichen 10 x 10 Portleitungen, um den Schaltzustand alles 100 Relaiskontakte zu ermitteln, in dem man bei allen PB die internen Pull-Ups enabled werden, dann EINER der PD auf Ausgang mit logisch 0 geschaltet wird (die anderen sind Ausgänge mit logisch 1) und geguckt wird, welche Eingänge auf LO gezogen werden.
Hallo zusammen, erstmal vielen dank für Ihre Hilfen... Ich habe die Verdrahtung der Matrix und Spannungsteiler gut hingekriegt. Nun eine neue Frage habe ich noch: Was ist das Unterschied zwischen Mega168 und Mega169 ausser dass der eine mehr PIN hat. salut armyboy
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.