Hallo Forum,
ich habe mich an mein erstes kleines Mikrocontrollerprojekt gewagt, bei
dem ich gerne eine eigene Platine fertigen möchte.
Mein Vorhaben:
Ich möchte gerne ein Alarmsignal bauen, welches man beliebig auf dem
Gelände verteilen kann. Hier liegt bereits an allen wichtigen Stellen
ein Kabel welches sowohl eine Spannung von 72V führt als auch einen
RS485 Aderpärchen.
Jedem Signallicht kann vorab eine eigene ID zugewiesen werden (am PC).
Wenn die Lampen dann am Bus hängen, kann ich sie über einen Befehle
gezielt aktivieren oder deaktivieren.
Das Programm habe ich auf einem AVR Experimentierboard bereits
geschrieben und getestet. Jetzt soll das ganze noch in Form gebracht
werden.
Die Platine ist so groß, weil sie in das Gehäuse der Alarmleuchte
eingebaut werden soll. Die Schrauben geben daher die Abmessungen vor.
Grobes Funktionsprinzip:
Spannungsversorgung:
Ein Recom 78HB24 macht aus den 72V Eingangsspannung eine Spannung von
24V für das Signallicht.
Diese 24V wandle ich weiters mit einem Recom 78E50 in 5V für die
Spannungsversorgung der Schaltung um.
Ein Max485 ist die Schnittstelle zwischen RS485 und uC-RXD.
Die Lampe wird über einen Mosfet ein und ausgeschaltet. Im Schaltplan
ist ein IRF3710 eingezeichnet - in Wirklichkeit ist es ein IRLZ44N.
Desweiteren gibt es einen Eingang am uC (PD7), an dem ein Schalter
angeschlossen wird. Mit dem Schalter kann man dann festlegen, ob die
Lampe blinken oder statisch leuchten soll.
Und programmiert wird der uC über einen 6-pol ISP.
Hätte vielleicht jemand etwas Lust, einmal einen Blick auf die Schaltung
und die Platine zu werfen?
Über eure Anregungen würde ich mich sehr freuen.
Vielen Dank im Voraus und LG, Marcel
Zwei Sachen fallen mir auf:
Erstens hast du auf den 24V vom Recom keinerlei Abblockmassnahmen, so
das die Lampe durchaus die Spannung einknicken lassen kann, und zweitens
hast du dir dauerhaft die Möglichkeit verbaut, über RS485 die Kiste auch
senden zu lassen - kannst also ihren Status oder Bereitschaft nie
abfragen.
Selbst wenn du das jetzt noch nicht nutzt, ist es für die Zukunft vllt.
nicht dumm, den TX mit einzuplanan.
Ach, ans Gate des IRLZ sollte noch ein Pulldown (10k-100k), um bei nicht
initialisiertem Port den MOSFet sicher abzuschalten.
Wieviel Strom braucht die Lampe?
selbst bei nur 100mA macht das (72V-24V)*0,1A = 4,8W Verlustleistung an
dem Linearregler?
Bei so großen Spannungsdifferenzen ist ein simples Schaltnetzteil
vielleicht die bessere Wahl.
Gruß
Anselm
Hallo Matthias, Hallo Anselm,
vielen Dank für Eure Anmerkungen.
- Den Pulldown 10K am Mosfet habe ich ergänzt.
- Bzgl. des TX: stimmt, aber da die Steuerungssoftware noch keinerlei
Rückmeldungen unterstützt, wollte ich das jetzt erstmal rauslassen.
Evtl. füge das später mal hinzu.
- Abblockmaßnahmen: Verstehe. Wie sollte man die denn am besten
dimensionieren? Die Lampe braucht 70mA. Ich hätte hier noch Elkos
(35V_330uF). Würde das ausreichen?
- Schaltnetzteil: Ich konnte leider kein passendes finden. Also von der
Baugröße und Verfügbarkeit her. Von Traco gibt es einen Wandler, der
aber stolze 32 EUR kosten soll. Das ist mir ein bisschen zu teuer ;)
LG, Marcel
Am AVR fehlen mir 2 100nF Abblockkondensatoren.
Es macht auch keinen Sinn die Kondensatoren auf dem Layout zu
gruppieren. Sieht vielleicht schön aus, ist aber kontraproduktiv.
Wenn du das Modul an beliebiger Stelle auf den Bus umstecken willst,
solltest du R3 weg lassen. Der macht nur an den Enden Sinn. Sonst stört
er.
Der IRF3710 ist kein LL FET.
Kann dir an der Stelle also mehr Ärger, als Freude bereiten.
Such dir einen besseren. Gibt genug.
Dem Gate würde ich noch einen Serienwiderstand verpassen(auch wenn es
nicht in jedem Fall nötig ist). Irgendwas zwischen 220R und 10R. Müsste
man mal konkret überprüfen.
Auf jeden Fall noch TX-Leitung und die Umschaltung Tx-Rx vorsehen
Lege am besten noch die freien Pins und VCCs+GND, mindestens auf
unbestückte Steckerleisten sodass du bei Bedarf noch selber etwas
anbringen kannst. Theoretisch kannst du such noch weitere unbestückte
Ein- und Ausgänge vorsehen. Platz ist ja genug auf der Platine.
Wegen Netzteil: Die 72V sind schon sehr viel, da fallen die günstigen
China Module mit etwa maximal 40V schon mal durch. Da könnest du aber
fast ein normales Steckernetzteil Verwenden.
Besteht das System schon, oder baust du es erst auf - ansonsten wäre es
noch eine Überlegung in den Bereich der Kleinspannung zu gehen. Ich weiß
z.b. nicht welche Abstände etc. bei den 72V gelten müssen.
Gruß,
Markus
Hallo @all,
vielen Dank schonmal für eure Anmerkungen.
Ich habe den Schaltplan geändert - das Layout aber noch nicht angepasst
;)
(siehe Anhang)
- Am uC habe ich an den beiden VCC Pins jeweils einen 100nF
Abblockkondensator hinzugefügt.
- Die Bezeichnung des Mosfets habe ich geändert ;)
- An der 24V Versorgung habe ich einen 3.3uF/100V Kondensator
hinzugefügt
- Den Resonator habe ich entfernt, da mir aufgefallen ist, dass ich die
19.200 Baud auch mit dem internen Oscillator @ 8MHz erreichen kann.
@Markus: Da diese Platine schon sehr speziell auf ihren Einsatzzweck
ausgerichtet ist (Form, Bohrungen, Spannungsversorgung), möchte ich hier
erstmal keine freien I/Os nach außen legen. Auch den TXD nicht.
Ich verfolge da eher die Ansicht, die Platine so einfach wie möglich zu
halten.
Hat natürlich den Nachteil, dass ich für ein anderes/ähnliches Projekt
ggf. wieder eine neue Platine machen muss, aber so lerne ich dann
wenigstens dem Umgang mit Eagle besser.
Passt das mit dem 3.3uF an 24V wohl? Ich bin nicht sicher, wie man die
berechnet...
LG, Marcel
Naja - freie pins solltest du irgendwie nach außen legen - du beißt dir
später in den Arsch wenn du nichts korrigieren kannst.
Nen TX empfehle ich dir nochmal ausdrücklich mit zu verkabeln. Allein
wegen Telegrammbestätigungen wäre es nötig, dass das Ding antwortet. Du
kannst ja etstmal die Anschlüsse tot legen.
Das Quarz würde ich dir nicht empfehlen wegzulassen bzw. zumindest nicht
die Möglichkeit eins einzubauen. siehe
https://www.mikrocontroller.net/articles/AVR-Tutorial:_UART Wichtiger
Hinweis 2 : "Auf Grund permanent wiederkehrender Nachfrage sei hier
AUSDRÜCKLICH darauf hingewiesen, dass bei Verwendung des UART im
asynchronen Modus dringend ein Quarz oder Quarzoszillator verwendet
werden sollte! Der interne RC-Oszillator der AVRs ist recht ungenau!
Damit kann es in Ausnahmefällen funktionieren, muss es aber nicht! Auch
ist der interne Oszillator temperaturempfindlich. Damit hat man dann den
schönen Effekt, dass eine UART-Schaltung die im Winter noch
funktionierte, im Sommer den Dienst verweigert."
Die Platinen sind entweder teuer oder brauchen ewig - plane lieber jetzt
etwas in die Zukunft statt dass du irgendwann mit nem Riesen Problem da
stehst.
miso schrieb:> - Schaltnetzteil: Ich konnte leider kein passendes finden. Also von der> Baugröße und Verfügbarkeit her.
Da hast du dich von den Postern hier aber kräftig verwirren lassen. Du
hast du schon im ersten Design einen passenden Schaltregler verwendet,
den Recom 78HB24. Das ist völlig ausreichend.
Ich würde halt an seinen Eingang noch ein LC Filter setzen, damit sich
mehrere Verbraucher auf der 72V Leitung nicht so stören, aber es geht
auch ohne.
miso schrieb:> - Bzgl. des TX: stimmt, aber da die Steuerungssoftware noch keinerlei> Rückmeldungen unterstützt, wollte ich das jetzt erstmal rauslassen.> Evtl. füge das später mal hinzu.
Wie die anderen auch sagten, ich wiederhole gerne, das du es gleich
vorsehen solltest. Das Initialisieren der beiden Pins auf Ruhezustand
schaffts sicher in die Software.
> keine freien I/Os nach außen legen. Auch den TXD nicht.
Der muss nicht nach aussen, sondern auf den MAX485, genau wie ein Pin
zum Umschalten zwischen Senden und Empfangen - fertig.
Im Aussenbetrieb immer Resonator oder Quarz bei UART Betrieb vorsehen,
sieh oben.
Ich empfehle dir auch ausdrücklich den TX-Port+ dumplex Umschaltung zu
belegen. Um später eine ACK Meldung an die Steuerung zu senden das die
Lampe auch angegangen ist.
Andere Ports würde ich auch auf eine Stiftleiste Legen man weiß ja nie.
Ist es zwingend nötig die Stromversorgung auf die Gleiche Pinleiste wie
die IOS zu legen?
Ich würde auf jeden Fall die Power-Pins räumlich abtrennen und einen
Verpolschutz wie im
Reglerdatenblatt(https://www.mouser.com/ds/2/468/R-78HBxx-0.5_L-958370.pdf)
gezeigt einbauen. Wenn nicht sogar ein Brückengleichrichter. Der RS485
Bus verlang ja kein gleiches GND-Potential da er differenziell ist. Es
geht schneller als man denk das man doch mal vcc an den falschen Pin
anshcließst und dann ist bei 72 V der Schaden groß.
Und wie gesagt nimm einen LL-Fet.