Hallo, ich setze gerade die Steuerungselektronik für ein größeres Musikinstrument (Orgel) um bei dem ca. 70 Ventile über einen Bus gesteuert werden. Die Steuerung ist modular aufgebaut. Jede Treiberplatine hat einen kleinen Controller (Atmega), nimmt Befehle über einen RS485 Bus entgegen und steuert 6 Ventile an. Die einzelnen Module sind komplett gleich aufgebaut, damit sie bei einem defekt einfach ausgetauscht werden können (Vorrat). Gibt es eine Alternative dazu zwei Kodierschalter (z.B. 10 Stellungen) auf jedem Modul zu verbauen damit dieses weiss welche ID auf dem Bus es hat? Kopierschalter gehen natürlich - uC Pins gibt es auch noch ein paar - irgendwie fühlt sich das aber auch nicht nach einer guten Lösung an... Vorproduzierte Jumperbrücken oder Kopierbrücken würde ich auch gerne verbauen weil diese zu leicht verloren gehen. Auch eine Programmierung der IDs über den Bus o.Ä. kommt nicht in Frage...
Benjamin M. schrieb: > Die Steuerung ist modular aufgebaut. Jede Treiberplatine hat einen > kleinen Controller (Atmega), nimmt Befehle über einen RS485 Bus entgegen > und steuert 6 Ventile an. > > Die einzelnen Module sind komplett gleich aufgebaut, Dann könnte ja jede Treiberplatine wenn sie angeschlossen wird (oder wenn man einen Taster auf dem Modul drückt) eine Kommunikation zum Steuerrechner aufbauen um sich zu identifizieren. Gruss Klaus
Poti + ADC geht auch, wird aber bei 12 Stellungen zu schwierig einzustellen. Da ist ein Drehschalter mit 16 Positionen besser. Ganz ohne Kodierung kommst du nur aus, wenn die Daten mit einer Schieberegister-Logik durch die Module durchgeschoben werden. Da du dir dabei die Adressierung sparst und synchron schalten kannst, könnte das eine gute Lösung sein.
Klaus De lisson schrieb: > Dann könnte ja jede Treiberplatine wenn sie angeschlossen wird (oder > wenn man einen Taster auf dem Modul drückt) eine Kommunikation zum > Steuerrechner aufbauen um sich zu identifizieren. Danke. Grundsätzlich ja. Es gibt allerdings nicht wirklich einen Steuerrechner in diesem Sinne, sondern ein spezielles Modul, dass über MIDI, etc. Befehle und Noten entgegennimmt und diese an die Module weiterschickt. Außerdem sind die verschiedenen Ventile in ein paar Flightcases die später weit weg voneinander stehen werden. Schön wäre wenn man die defekte/alte Platine herausnehmen könnte und bei der neuen einfach dieselbe Id einstellt und diese dann einbaut.
Helge A. schrieb: > Ganz ohne Kodierung kommst du nur aus, wenn die Daten mit einer > Schieberegister-Logik durch die Module durchgeschoben werden. Da du dir > dabei die Adressierung sparst und synchron schalten kannst, könnte das > eine gute Lösung sein. Jedes Modul soll wirklich gleich sein und die Strecken sind sehr lang. Aus diesem Grund kommt durchschieben nicht wirklich in Frage.
Benjamin M. schrieb: > Außerdem sind die verschiedenen Ventile in ein paar > Flightcases die später weit weg voneinander stehen werden. > Schön wäre wenn man die defekte/alte Platine herausnehmen könnte und bei > der neuen einfach dieselbe Id einstellt und diese dann einbaut. Warum sollten dann die Kodierschalter auf der Platine sitzen? Es wäre doch sinnvoller, diese am Case zu verbauen oder eventuell sogar hart zu verdrahten und über den Steckverbinder auf die Platine zu führen. Welche Funktion steckt hinter der Codierung - z.B Pfeifen-hinten-links?
@ Benjamin M. (allesblinkt) >Gibt es eine Alternative dazu zwei Kodierschalter (z.B. 10 Stellungen) >auf jedem Modul zu verbauen damit dieses weiss welche ID auf dem Bus es >hat? Kopierschalter gehen natürlich - uC Pins gibt es auch noch ein paar >- irgendwie fühlt sich das aber auch nicht nach einer guten Lösung an... Warum nicht? Was glaubst, wozu es diese Kodierschalter gibt? >Vorproduzierte Jumperbrücken oder Kopierbrücken würde ich auch gerne >verbauen weil diese zu leicht verloren gehen. Auch eine Programmierung >der IDs über den Bus o.Ä. kommt nicht in Frage... KISS !!! http://de.wikipedia.org/wiki/KISS-Prinzip
Benjamin M. schrieb: > Kopierschalter gehen natürlich - uC Pins gibt es auch noch ein paar > - irgendwie fühlt sich das aber auch nicht nach einer guten Lösung an... > > Vorproduzierte Jumperbrücken oder Kopierbrücken würde ich auch gerne > verbauen weil diese zu leicht verloren gehen. Auch eine Programmierung > der IDs über den Bus o.Ä. kommt nicht in Frage... Einen Tod wirst du sterben müssen. Im ATmega könntest du die Adresse im Flash oder Eprom ablegen, wenn das Modul eine bestimmte Kommandofolge über den Bus bekommt. Wenn es für Dummies funktionieren soll, ist die Kodierung über die Steckplätze wohl die sicherste Lösung.
Dein Modul wird irgentwie zum Bus eine Verbindung aufnehmen müssen... vermutlich über einen Steckbverbinder... plane dort 4 Pins mehr ein, über die Du dann Binär eine Adress 0-F kodieren kannst... soweiß nach dem Stecken jedes Modul, wo es ist sitzt ... alternative könnte man auch eine analoge Spannung nehmen, und diese mit dem ADC auf dem Modul einlesen...
Warum gehen die Platinen denn ständig kaputt? Ich würde die Codierung am Steckplatz hard verdrahten, dann weiß das Modul gleich wo es ist.
Falk Brunner schrieb: > Warum nicht? Was glaubst, wozu es diese Kodierschalter gibt? Natürlich genau deswegen. An die Idee die Steckverbinder, die ins Case verbaut sind zu kodieren hatte ich beispielsweise nicht gedacht.
freak schrieb: > Warum gehen die Platinen denn ständig kaputt? Noch gehen sie nicht kaputt, aber was bei einer solchen Tour und auf Bühnen passiert mag man sich nicht vorstellen. > Ich würde die Codierung am Steckplatz hard verdrahten, dann weiß das > Modul gleich wo es ist. Das klingt für mich nach einer guten Lösung. Fest am Case verbaute Steckverbinder gibt es einige, die sich für eine solche Kodierung eignen. Danke auch den anderen mit der gleichen Idee.
:
Bearbeitet durch User
Benjamin M. schrieb: > Schön wäre wenn man die defekte/alte Platine herausnehmen könnte und bei > der neuen einfach dieselbe Id einstellt und diese dann einbaut. Klar ginge das mit einer Einmalseriennummer (Dallas). Aber ich denke die Kommunikation zur Initialierung und Zuordnung über den Bus zu implementieren ist deutlich komplexer als einen Drehkodierschalter reinzuwerfen mit 0...15 Positionen. rgds
Benjamin M. schrieb: > ich setze gerade die Steuerungselektronik für ein größeres > Musikinstrument (Orgel) um bei dem ca. 70 Ventile über einen Bus > gesteuert werden. Früher hat man doch alle Kirchenorgeln mit einer mechanischen Steuerung gebaut?! Wird das heutzutage wirklich alles elektronisch angesteuert?
Schreiber schrieb: > Benjamin M. schrieb: >> ich setze gerade die Steuerungselektronik für ein größeres >> Musikinstrument (Orgel) um bei dem ca. 70 Ventile über einen Bus >> gesteuert werden. > > Früher hat man doch alle Kirchenorgeln mit einer mechanischen Steuerung > gebaut?! > > Wird das heutzutage wirklich alles elektronisch angesteuert? Ja.
Schon recht lange ist es auch bei großen Kirchenorgeln üblich dass unter jeder Taste ein Kontakt sitzt, der Relais schaltet. Die Relais schalten dann wiederum die Ventile an den Pfeifen Wen das interessiert: http://www.ottoheuss.de Katalog Gruppe 5 (Relais, Ventile, etc.): http://www.ottoheuss.de/downloads/Otto_Heuss_Gruppe_5_de.pdf
:
Bearbeitet durch User
Hallo, was verstehst du unter größeren Orgeln? Ich kenne das eher so, dass wenn Spieltisch und werke räumlich getrennt sind nimmst du elektrische Traktur. Deswegen eher bei großen wo du dann bei großen abständen mit Reibung zu kämpfen hast (Als Orgelbauer und als Organist :-) ) Grüßle Peter
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.