Günstige (und bessere) alternative zur DMX Extension
Einklappen
X
-
Ok, ich lass mal die Kirche im Dorf. Wollte eine SM712 für die DMX Schutzbeschaltung nehmen. https://www.digikey.de/product-detai...0CT-ND/5019610
Mit dem Kondesator am Ausgang des OKI hast du recht, plane ich ein. Allerdings ist das am Oszi wirklich "smooth" und es steht ja "may" und "no additional capacitors" ;-)Zuletzt geändert von pmayer; 22.12.2017, 16:06. -
Der OKI-78 ist allerdings nicht irgend eine Auflötplatine sondern von Murata als 78xx drop-in-replacement ohne jegliche Beschaltung, Inklusive Compliance etc.: https://power.murata.com/data/power/oki-78sr.pdf.
Was die EMV-Sachen angeht, bin ich völlig bei dir. Da warte ich wie gesagt auf Rückmeldung der Agentur, was wir alles erfüllen müssen. Das wird aber sicher bis ins neue Jahr dauern.
Der SPI ist direkt verbunden, ohne Serienwiderstände. Ist dann so nicht ok?
Schutzbeschaltung am DMX ist ja durch die beiden Dioden gegeben.
Spezialbauteile mag ich eigentlich auch nicht sonderlich, aber in diesem Fall gibt es eben das Bauteil von einigen Herstellern und es ist weit verbreitet.
Wenn man sich noch mehr Mühe bei der Schutzbeschaltung gibt, könnte man z.B. noch Induktivitäten in Serie vorsehen. -
Hey Labmaster , vielen vielen Dank für die Info's.
Der OKI-78 ist allerdings nicht irgend eine Auflötplatine sondern von Murata als 78xx drop-in-replacement ohne jegliche Beschaltung, Inklusive Compliance etc.: https://power.murata.com/data/power/oki-78sr.pdf.
Was die EMV-Sachen angeht, bin ich völlig bei dir. Da warte ich wie gesagt auf Rückmeldung der Agentur, was wir alles erfüllen müssen. Das wird aber sicher bis ins neue Jahr dauern.
Der SPI ist direkt verbunden, ohne Serienwiderstände. Ist dann so nicht ok?
Schutzbeschaltung am DMX ist ja durch die beiden Dioden gegeben.
Hoffe ich habe dich richtig verstanden. Häng dir mal das PDF der aktuellen Schaltung an.
Angehängte Dateien -
Genau so wichtig wie die Halbduplex Bidir Auslegung des RS485 Anschlusses, find ich dessen Schutz bezüglich Überspannung.... Hierzu gehört auch eine entsprechende Beschaltung, welche im Minimalfall aus wenigstens einer speziellen TVS Diode besteht. (z.B. eben wenigstens eine SM712 http://www.semtech.com/images/datasheet/sm712.pdf, typische Beschaltung auf Seite 5)
Auch sollte der Buck Konverter direkt aufs Board, wo man dann auch im Layout Einfluss auf die EMI hat , wenn mal ein echtes Produkt daraus werden soll wird man da mit einem nicht Cerifizierten Einlötmodul nicht weiter kommen.
Einer meiner Buck Lieblinge die ich wohl auch für diesen Fall nehmen würde (wenn man 28 bis 30V Eingnagsspannung nie überschreitet) wäre der AOZ1280 im SOT23-6 Gehäuse. ( http://aosmd.com/res/data_sheets/aoz1280ci.pdf )
Der AOZ1280 passt mit allen nötigen Komponennten (inklusive Induktivität) auf eine Fläche von weniger als 10 x10mm hat ne einstellbare Versorgungsspannung und schaft je nach Auslegung über 1A Dauer. Typische Beschaltung ist auf Seite 1 des Datenblatts zu sehen, als Schottky Diode bei dieser Anwendung (bezüglich Strom) würde hier sowas wie eine SD0805S04 (in 0805) reichen.
Passende Festinduktivitäten mit 2.2uH und 1A bis 2A gibt es im 0805 Gehäuse massig (von TDK, Murata ...)
Aufbau und Routing relativ unproblematisch.
Was auch noch zu überlegen ist, ist die Anbindung der WS5500 an den Prozessor. Ich kennen den Schaltplan nicht, jedoch würde ich z.B. in jedem Fall für den SPI Bus Serienwiderstände auf der CLK und den Datenleitungen vorsehen. Auch das Grounding Konzept ist hier gut zu bedenken.
Wir hatten in der Vergangenheit gerade bei SPI schon die eine oder andere Überaschung bei den EMV Tests in der Messkammer, was sich dann durch entsprechende Anpassung solcher Serienwiderstände beheben ließ ohne jedes mal ein neues Layout machen zu müssen.
1 BildZuletzt geändert von Labmaster; 22.12.2017, 12:04.Einen Kommentar schreiben:
-
hismastersvoice / Robert L. Ich bin nur halb weiter gekommen. Gerade habe ich das Problem, dass MightyCore zwingend die selbst mitgebrachte EthernetLib (W5100) verwenden will. Offensichtlich hat sich da irgendwas geändert, weil früher ging das (1284p, W5500). Hab bei MightyCore schon nachgefragt: https://github.com/MCUdude/MightyCore/issues/72 und auch PaulStoffregen, den Entwickler der Lib und Erfinder des Teensy, darum gebeten es zu kommentieren.
Außerdem funktioniert die DMXSimple Lib "offiziell" nicht auf __AVR_ATmega644P__, das wäre aber nur ein kleiner Patch wofür ich einen Pull-Request machen kann. (DmxSimple.cpp:64). Das mit der Nutzung des zweiten Serials von DmxSerial sollte gehen. Ich hab aber noch nicht geguckt, was Robert L. da angepasst hat.
Mein Plan wäre momentan folgender:
- Die jetzige Version 0.3 finalisieren und mit ATMega328p "fertig" bauen, damit die Leute was davon haben
- Aus der Basis eine ethernet-multi-RS485 Bridge entwickeln. Die sollte dann DMX-RDM, Modbus, RS485 etc können, ganz wie Labmaster es vorgeschlagen hat.
Was sagt ihr?
Hier mal der ATMega644 Breadboard-Aufbau:
Zuletzt geändert von pmayer; 22.12.2017, 11:09.Einen Kommentar schreiben:
-
Wichtig: 644P oder 644PA... der 644 hat nur einen UART.
Kann dir auch gerne welche als DIP-40 schicken. -
Ich baue gerade den ATMega644PA zusammen. Alles soweit in Ordnung, allerdings habe ich ein Problem: Der Arduino Bootloader möchte zwingend auf Serial(0), außer man kompiliert ihn neu. DMXSerial möchte auch auf Serial(0). Das ist soweit kein Problem, da ja während dem booten noch kein DMX läuft. Zum Debugging würde dann Serial1 herhalten - soweit ok.
Allerdings müsste man dann zwischen flashen seriellem debuggen umstecken. Das finde ich nur halb schön...
Ahh, habe aber gerade etwas gefunden:
Code:// Define port & bit values for Hardware Serial Port. // The library works unchanged with the Arduino 2009, UNO, MGEA 2560 and Leonardo boards. // The Arduino MGEA 2560 boards use the serial port 0 on pins 0 an 1. // The Arduino Leonardo will use serial port 1, also on pins 0 an 1. (on the 32u4 boards the first USART is USART1) // This is consistent to the Layout of the Arduino DMX Shield http://www.mathertel.de/Arduino/DMXShield.aspx. // For using the serial port 1 on a Arduino MEGA 2560 board, enable the following DMX_USE_PORT1 definition. // #define DMX_USE_PORT1
Zuletzt geändert von pmayer; 21.12.2017, 19:51.Einen Kommentar schreiben:
-
kann hier keinen Unterschied erkennen zwischen RS485 (halb duplex) und DMX (mit RDM)
(Lötjumpern gibts dort auch teilweise)Zuletzt geändert von Robert L.; 20.12.2017, 20:04. -
@Stromparen: nein, nie was gemacht (war auch der Meinung der Ethernet teil würd den großteil brauchen..)
Code hab ich nochmal angepasst
jetzt alternativ mit DMXSerial
UDPDebugging (anstelle von Serial)
je nach einstellung jetzt genug Speicher für 512 Kanäle am UNO (wobei nur 117 Byte SDRam übrig bleigen, und ich mir nicht 100% sicher bin ob das genug ist..)
Einen Kommentar schreiben:
-
So, kurzes Update. Prototyp fertig gebacken und läuft. Leider hatte ich zwei Pins im Schaltplan nicht richtig verbunden, weswegen da die Leiterbahnen fehlten. Ist in der nächsten Version natürlich behoben.
Ein zwei Bauteile müssen noch angepasst werden. Beispielsweise gibt es das EEProm in kleiner und ein paar Footprints haben zu kleine Löcher für die Pins.
Aktuell liege ich bei ~50mA, also doch ~1,2W. Kann gerade noch nicht sagen, warum auf der fertigen Schaltung mehr Storm verbraucht wird als auf dem Breadboard. Sind quasi nur der andere Transformer in der Netzwerkbuchse und die Schotky-Dioden dazu gekommen.
Achso, werde die Versorgung über den USB-Seriell-Adapter lassen. USB ist nur mit 500mA spezifiziert und mit Netzwerk brauchen wir mehr. Das heißt aber dann, dass man zum Programmieren das Ganze mit Strom versorgen muss.
Hab das Bild der Platine extra mal in Originalgröße gelassen.
Die wichtige Frage für mich ist jetzt, gehen wir den Weg zum ATMega mit 2 UART's und packen den MAX485 an einen von denen?
Wenn wir auf UART-MAX485 wechseln, wäre es interessant wie man - eventuell mit Lötjumpern - die Version so bauen kann, dass sie auch Modbus/RS485 sprechen könnte. Vielleicht haben da Gast oder Labmaster noch einen Vorschlag?
Robert L., um Strom zu sparen könnten wir sicher gewisse Teile im ATMega abschalten: http://ww1.microchip.com/downloads/e..._Datasheet.pdf, S. 64, 14.11. Hast du damit schon mal was gemacht?Zuletzt geändert von pmayer; 20.12.2017, 19:16.Einen Kommentar schreiben:
-
Hmm 1284 gibt es auch als 44tqfp - genau wie den 644. Die sind also einfach austauschbar. Der 644 ist halt ein Kompromis zwischen Preis und Leistung.
Mit dem 644 könnte man auf der Hardware z.B. auch mqtt implementieren, weil man genug ram/flash dafür hat (wäre zu testen). -
Ich habe nur einen 1280 oder 2560 da, einen 644 müsste ich erst noch besorgen.
Einen Kommentar schreiben: