Hallo, ich habe mich an meiner ersten Mikrocontroller-Schaltung versucht und einige Infos mit einfließen lassen, die ich hier im Forum gefunden habe. Hausautomatisierung mal wieder. Da alles was ich bisher gefunden hab nicht das kann was ich gerne hätte erfinde ich das Rad eben neu :-) Das ganze soll eine kleine Platine werden die in der Unterputz-Dose verschwindet. Über RS485 ist sie mit den Aktoren im Schaltschrank (Keller, ca. 15m) verbunden. Über den OneWire-Bus sollen weitere Komponenten in einem Zimmer, z.B. Temperatursensor und Fensterkontakte angeschlossen werden können. Dessen Länge sollte also nicht mehr als 10m betragen. Die ganzen IO's dienen zum Anschluss von Tastern. Im Moment benötige ich 2x2 Rolladen + 2x Licht = 6 Eingänge. Hab mal ein paar mehr vorgesehen als Puffer. Die meisten können auch als Ausgänge verwendet werden, um LED's zu treiben. An den Pins die zum ISP gehen habe ich mich nicht getraut Kondensatoren hinzuhängen. Deshalb mit Pullup. Könnte ich mir die ganzen Kondensatoren + Widerstände sparen wenn da keine langen Kabel bis zu den Tastern dran hängen (ca. 20cm)? Am RM-Stecker soll ein Rauchmelder angeschlossen werden. Der gibt ca. 6V aus wenn er Rauch erkannt hat. Bzw. er kann als Alarm verwendet werden wenn man ihn mit mindestens 3V ansteuert. Als RS485 Transceiver ist gerade der MAX485 eingezeichnet. Ich würde aber den Pin-Kompatiblen LT1785 verbauen - den habe ich nur in KiCad nicht gefunden. Mit der Versorgungsspannung gehe ich wahrscheinlich weiter runter auf ca. 8-9V und nicht 24V wie eingezeichnet um die Verlustleistung zu verringern. Fragen: - Benötigt der Mikrocontroller an jedem VCC-Pin einen 100nF-Kondensator oder reicht einer für beide VCC-Pins? - Ist der DS2482 als OneWire-Master übertrieben? Würdet ihr OneWire direkt mit einem Pin vom Controller emulieren? - Passt der Überspannungsschutz mit den Varistoren so bei dieser Anwendung? - Sonstige Punkte die ich noch beachten sollte? Bevor ich das ganze auf eine Platine quetsche würde ich mich über konstruktive Rückmeldungen freuen!
Felix schrieb: > - Benötigt der Mikrocontroller an jedem VCC-Pin einen 100nF-Kondensator > oder reicht einer für beide VCC-Pins? Jedes Pärchen bekommt einen eigenen Kondensator. > - Ist der DS2482 als OneWire-Master übertrieben? Würdet ihr OneWire > direkt mit einem Pin vom Controller emulieren? Das macht der ATMega mit links und nebenbei. > - Passt der Überspannungsschutz mit den Varistoren so bei dieser > Anwendung? Du musst viel Angst haben. > - Sonstige Punkte die ich noch beachten sollte? AREF nicht an VCC legen. Was soll der Quarz an PD5 und PD6? Falls das der Taktoszillator sein soll, sind es die falschen Pins. Welcher Kabeltyp für RS485 hat nur 30pF pro Meter?
Felix schrieb: > Fragen: > - Benötigt der Mikrocontroller an jedem VCC-Pin einen 100nF-Kondensator > oder reicht einer für beide VCC-Pins? Ein Kondensator fuer jeden Versorgungspin ist gute Praxis. Zum Test solltest Du mit den Finger vom Chip ueber den Kondensator zum Chip zurueck die Schleife abfahren. Die Schleife sollte moeglichst kein sein... > - Ist der DS2482 als OneWire-Master übertrieben? Würdet ihr OneWire > direkt mit einem Pin vom Controller emulieren? Hast Du noch einen UART mit RX/TX frei? Suche mal mit Google nach "one-wire uart" fuer eine Loesung ohne externen One-Wire Master.
24 Volt sind für einen ua78m05 ganz hart an der Obergrenze von 25Volt. Außerdem würd ich keine 19Volt an einem Linearregler verheizen wollen. Uwe B. schrieb: >> - Ist der DS2482 als OneWire-Master übertrieben? Würdet ihr OneWire >> direkt mit einem Pin vom Controller emulieren? > Hast Du noch einen UART mit RX/TX frei? Suche mal mit Google nach > "one-wire uart" fuer eine Loesung ohne externen One-Wire Master. Das bekommt der AVR ohne zusätzlichen Master in Software gut hin.
Felix schrieb: > - Ist der DS2482 als OneWire-Master übertrieben? Würdet ihr OneWire > direkt mit einem Pin vom Controller emulieren? Kommt ganz auf Deine Programmiererfahrungen an. Der DS2482 nimmt Dir nur das Timing ab, d.h. Du kannst ihn beliebig langsam ansteuern und must keine anderen Interrupts sperren. D.h. Du hast keine Seiteneffekte auf andere Tasks. Allerdings wird die Firmware komplexer, da Du ja jede 1-Wire-Aktion über I2C tunneln mußt. Der direkte IO-Pin des MC macht das Programm einfacher, aber hat den Seiteneffekt, daß Du Interrupts für 60µs bzw. 480µs sperren können mußt, da der AVR ja keine Interruptprioritäten vergeben kann.
Als Stromversorgung schlage ich mal den LM2596 oder MP1584EN Schaltregler vor (z.B. auch Module bei aliexpress.com).
:
Bearbeitet durch User
Peter D. schrieb: > Der direkte IO-Pin des MC macht das Programm einfacher, aber hat den > Seiteneffekt, daß Du Interrupts für 60µs bzw. 480µs sperren können mußt, > da der AVR ja keine Interruptprioritäten vergeben kann. Und wenn Du OWI mit UART machts, dann macht der UART das Timing fuer Dich!
Uwe B. schrieb: > Und wenn Du OWI mit UART machts, dann macht der UART das Timing fuer > Dich! Dann braucht er aber den ATmega328PB und nen open-drain Treiber (74HC125). Eh ich mir noch ne SW-UART dazu bastele, mache ich lieber SW-1-Wire. Bei einem 80C51 Projekt habe ich das 1-Wire mit einem Timerinterrupt gemacht, dem ich die höchste Priorität vergeben habe. Dann müssen keine anderen Interrupts gesperrt werden.
:
Bearbeitet durch User
Vielen Dank für die ganzen Tips, insbesondere Georg G.! Der Hinweis mit dem Quarz war gut, keine Ahnung, was mich da geritten hat den an die falschen Pins zu hängen. Hat leider etwas gedauert, bis ich die Zeit gefunden habe das zu ändern. Versorgung mach ich jetzt mit 9V, dann sollte der Linearregler kein Problem sein. One-Wire geht direkt an den Atmega, das kann er mit machen. Zum Thema Überspannungsschutz: So wie ich Georg G. verstehe könnte ich die Varistoren komplett weg lassen? Wenn man hier im Forum alle möglichen Themen liest, dann erstreckt sich das von gar nichts machen bis alles industrietauglich doppelt und dreifach sichern. Was ist denn für den Hobbybastler, der zuverlässige Geräte für zuhause haben möchte, ein gesundes Mittelmaß?
VR2 würde ich weglassen. Bis der genügend Spannung bekommt, um wirksam zu werden, ist der Eingang des Konverters schon aufgeraucht. Ansonsten: Lass es so, hast du das gute Gefühl, etwas gegen Störungen getan zu haben. Bei einem Blitzeinschlag in der Nähe hast du eh keine Chance.
@ Uwe Bonnes (Firma: TU Darmstadt) (uwebonnes) >> Der direkte IO-Pin des MC macht das Programm einfacher, aber hat den >> Seiteneffekt, daß Du Interrupts für 60µs bzw. 480µs sperren können mußt, >> da der AVR ja keine Interruptprioritäten vergeben kann. >Und wenn Du OWI mit UART machts, dann macht der UART das Timing fuer >Dich! In der Tat. Und selbst wenn er das nicht tut, für ein bissel Hausautomatisierung kann man auch mit 0,5ms Interruptsperre leben. Beitrag "Re: Onewire + DS18x20 Library"
@ Felix (Gast) >getraut Kondensatoren hinzuhängen. Deshalb mit Pullup. Könnte ich mir >die ganzen Kondensatoren + Widerstände sparen wenn da keine langen Kabel >bis zu den Tastern dran hängen (ca. 20cm)? Ja, das kann man in Software entprellen und so viel Störeinkopplung wird es nicht geben. >- Ist der DS2482 als OneWire-Master übertrieben? Ja. > Würdet ihr OneWire >direkt mit einem Pin vom Controller emulieren? Ja. https://www.mikrocontroller.net/topic/goto_post/4602608 >- Passt der Überspannungsschutz mit den Varistoren so bei dieser >Anwendung? Nein ;-) VR1 ist soweit OK, VR5 ist eher wirkungslos. Varisoren haben kein superscharfe Kennlinie bei kleine Strömen, erst recht nicht bei kleinen Nennspannungen. Nimm dort lieber eine Z-Diode mit 5,1V und pack einen 100nF Kondensator NAH an die Dioden. Als Lektüre zum Thema kann ich das Dokument im Anhang empfehlen. Man kann natürlich auch gleich das Bauteil als ESD-Schutz nehmen. VR2-VR4 sind überflüssig, die Tranceiver haben schon genügend internen ESD-Schutz. - Sonstige Punkte die ich noch beachten sollte? >Bevor ich das ganze auf eine Platine quetsche würde ich mich über >konstruktive Rückmeldungen freuen! D5 ist überflüssig. Es fehlt ein Pull-Up an U1/Pin1 AREF kannst du offen lassen, da du keinerlei ADC-Eingänge verwendest.
Felix schrieb: > Zum Thema Überspannungsschutz: Ich setze da auch hinter den Regler nen Elko (100µF), dessen Trägheit verhindert das Durchgreifen kurzer Störimpulse. Und noch ne Transzorb (SMBJ5,0A) zum Schutz.
Moin, da Du einen 5V pin an Deiner 1W Schnittsetlle vorgesehen hast, wirst Du vermutlich eher kein parasite power verwenden wollen. Aber wenn doch, ist es ganz gut einen "active pull up" zu verwenden - also einen Transistor der die Datenleitung für die Zeit einer Messung auf high zieht.
Noch eine kurze Rückfrage: Benötigt Pin 4 an U1 nicht auch einen Pullup? Auf dem Steckbrett habe ich weder an pin 1 noch an Pin 4 einen Pullup und es funktioniert. Aber das will ja nichts heißen. Muss der zweite 100 muF Elko am Ausgang des Spannungsregler sein? Der braucht so viel Platz.
@ Felix (Gast) >Noch eine kurze Rückfrage: Benötigt Pin 4 an U1 nicht auch einen Pullup? Nein. >Muss der zweite 100 muF Elko am Ausgang des Spannungsregler sein? Nein.
So, ich habe mich an einem Layout für die Platine versucht. Irgendwie sind alle 100nF Kondensatoren zur Stabilisierung der Versorgungsspannung für die ICs sehr nah beieinander gelandet. Benötige ich die dann trotzdem alle? Das leuchtet mir nicht so ganz ein. Wie breit macht man Leiterbahnen für die Stromversorgung von Komponenten? Ich ziehe die 5V mit einer 0,75mm breiten Leiterbahn über die Platine. Ist das etwas viel? In Kicad habe ich für die 0805-SMDs 0805_HandSoldering als Footprint gewählt. Kann man auch den normalen 0805-Footprint noch von Hand löten? Das würde noch etwas Platz sparen. Ich glaub ich bestell jetzt mal die Teile, druck das Layout auf Papier und schau mir an ob überhaupt alle Teile so gequetscht passen. Die Dioden von Hand zu löten macht mir Angst ...
@Felix (Gast) >für die ICs sehr nah beieinander gelandet. Benötige ich die dann >trotzdem alle? Das leuchtet mir nicht so ganz ein. Wenn man WIRKLICH weiß was man tut, kann man die 3x100nF in der Mitte auf einen reduzieren. Im Zweifelsfall sollte man aber eher alle drei drinlassen. >Wie breit macht man Leiterbahnen für die Stromversorgung von >Komponenten? Ich ziehe die 5V mit einer 0,75mm breiten Leiterbahn über >die Platine. Ist das etwas viel? Wen du den Platz hast, lass es so. Für die paar ma reichen auch 0,3 oder 0,5mm. >In Kicad habe ich für die 0805-SMDs 0805_HandSoldering als Footprint >gewählt. Kann man auch den normalen 0805-Footprint noch von Hand löten? Ja. >Ich glaub ich bestell jetzt mal die Teile, druck das Layout auf Papier >und schau mir an ob überhaupt alle Teile so gequetscht passen. Das bringt wenig bis nichts. >Die Dioden von Hand zu löten macht mir Angst ... Warum? Geh's einfach an. Mit etwas Übung wird das schon.
Kann mir jemand erklären, was IRF7309 in der Schaltung um den L-Driver tut? So wie ich das seh, ist der N-MOSFET doch immer zu, und der P-MOSFET auch? Gehts da nur um die Dioden in den MOSFETs?
Robin R. schrieb: > Kann mir jemand erklären, was IRF7309 in der Schaltung > um den L-Driver tut? So wie ich das seh, ist der N-MOSFET > doch immer zu, und der P-MOSFET auch? Ohje, ich hatte hier Beitrag "Relais mit Mosfet ansteuern (Arduino)" gelesen, dass da zwei N-Kanal Mosfet's drin wären. Das stimmt ja gar nicht. Eigentlich soll die Schaltung ein Low-Side Treiber sein, mit dem ich zwei größere Lasten (Relais) schalten kann. Auf dem Steckbrett hab ich das mit BS170 getestet und dachte nun: "Nimm einfach ein IC, das 2 MOSFET enthält um Platz zu sparen". Und schon das falsche erwischt ... Hat jemand einen Vorschlag für nen MOSFET der 500mA schalten kann, N-Kanal, 2 Stück in einem SMD-Gehäuse?
IRF7103 müsste doch geeignet sein um mit einem atmega ein Relais anzusteuern, das ca. 500mA braucht?
Falk B. schrieb: > Aber auch bei dem sollte man Source an GND anschließen und Gate an den > AVR ;-) Also hab ich die Schaltung zu Recht nicht verstanden?
@ Robin R. (elec-lisper) >> Aber auch bei dem sollte man Source an GND anschließen und Gate an den >> AVR ;-) >Also hab ich die Schaltung zu Recht nicht verstanden? Eine sehr vornehme, zurückhaltende Art, dem OP einen Fehler in seinem Schaltplan mitzuteilen ;-)
Falk B. schrieb: > @ Robin R. (elec-lisper) > >>> Aber auch bei dem sollte man Source an GND anschließen und Gate an den >>> AVR ;-) > >>Also hab ich die Schaltung zu Recht nicht verstanden? > > Eine sehr vornehme, zurückhaltende Art, dem OP einen Fehler in seinem > Schaltplan mitzuteilen ;-) Das war ja garnicht meine Absicht :-) Wenn ich etwas nicht verstehe, dann neige ich meist wirklich dazu mein eigenes Wissen in Frage zu stellen. Bei Dingen wie Elektronik, in denen ich nur wenige Hobbyerfahrungen habe, ist das durchaus auch das richtige. Jedoch neige ich auch in meinem Hauptberuf (Softwareentwickler) dazu den Fehler im Verständnis bei mir zu suchen - was jedoch immer seltener zutrifft.
Falk B. schrieb: > Eine sehr vornehme, zurückhaltende Art, dem OP einen Fehler in seinem > Schaltplan mitzuteilen ;-) Auf jeden Fall ein sehr hilfreicher Hinweis. Und gleich zwei Fehler mit einem Satz zu erschlagen: Vorbildlich. Ich hab's geändert, vielen Dank!
@Felix (Gast) > Screenshot_from_2017-01-06_17-49-30.png >Ich hab's geändert, vielen Dank! Naja. Schaltplansymbole zeichnet man so, daß sie LOGISCH sinnvoll dargestellt werden und keine sinnlosen Kreuzungen entstehen. Man zeichnet sie im Allgemeinen NICHT so, wie das GEHÄUSE verdrahtet ist! Dann dafür gibt es das Package! Also zeichne 2 ganz normale N-Kanal MOSFETs, welche als Gatter zu deinem IC gehören.
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.