PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Lichterkette - 60 Lampen auf 200m mit Rückkanal - Bussystem?



Jörg9
25.03.2008, 22:31
Hallo,

ich möchte folgende Aufgabe lösen:

Ich habe 60 Glühlampen verteilt auf 20 Stationen auf einer Strecke von 200m. Jede Station hat drei Lampen: Eine rote, eine gelbe, eine blaue. Außerdem ist an jeder Station ein Schalter (ein / aus).

Die einzelnen Lampen möchte ich über einen PC ein- und ausschalten können. Außerdem möchte ich die Schalterposition an jeder Station mit dem PC abfragen können.

Wichtig ist, dass es nur ein Stromkabel gibt an dem die Lampen angeschlossen sind und nur ein (mehradriges) Datenkabel über das die Steuerung der Lampen und die Abfrage des Schalters funktioniert. Ich möchte also keine sternförmige Architektur.

Als ersten Ansatz habe ich mir gedacht, den PC über RS232 mit einem Mega8 zu verbinden. An den 20 Stationen soll sich nun jeweils ein weiterer Mega8 befinden, der von dem direkt mit dem PC verbundenen Mega8 angesteuert / abgefragt wird. Der direkt mit dem PC verbundene Mega8 nimmt also eine Mittlerposition ein. Das ist aber nur ein absolut erster Ansatz wo ich mir nicht sicher bin ob das funktionieren könnte.

Wie könnte man sowas realisieren? Mit welchem Bussystem ließe sich das am einfachsten machen?

Grüße,
Jörg

BASTIUniversal
26.03.2008, 11:33
Hi!
Also ich würde da zu einem klassischen Master-Slave Bus tendieren. Du bringst an jeder Station einen kleinen Controller an (dein Mega8 ist da vermutlich viel zu groß Dimensioniert). Jeder Controller erhält eine Adresse, auf die er reagiert. Wenn diese Adresse über den Bus kommt, sendet dein Slave Controller den aktuellen Status an den Master (dein PC).

Feinheiten sind dann halt noch die Art des Busses. RS232 würde ich hier nicht verwenden, eher RS485, welches von Haus aus auf große Entfernungen getrimmt ist. Pegelwandler gibt's bei Reichelt.
Zu deinem Schalter: Ich nehme an, der ist rein mechanischer Natur. Das könnte dann etwas problematisch werden...ein Controller hat ja nun mal keinen Finger zum anknippsen! Rein aus Kostengründen würde ich hier einen elektronischen Schalter anbringen.
Laufen deine Lampen mit 230V oder einer anderen Spannung (welche)?

MfG
Basti

Jörg9
26.03.2008, 14:17
Also, die Lampen werden an 230 V Wechselstrom betrieben. Der Schalter kann von einem Menschen (mit dem Finger) ein und ausgeschaltet werden.

Statt der Lampen können auch andere Verbraucher angeschlossen werden, zum Beispiel Motoren und statt des Schalters verschiedene Sensoren. Die Lampen und der Schalter sind für mich momentan eine Vereinfachung der Gesamtaufgabe - damit es für den Anfang überschaubar bleibt. Die Anzahl der Stationen kann sich ebenfalls vergrößern.

Mir geht es vor allem um die Auswahl eines geeigneten Bussystems und um die hardwareseitige Umsetzung der Datenübertragung zwischen den Stationen und dem PC über ein Kabel. Welche Hardware brauche ich für ein RS485 - oder anderes Bussystem außer dem AVR?

Wie viele Knoten (Adressen) können denn in einem RS485 Bussystem angesprochen werden?

Wie bekomme ich die Verbindung mit dem PC hin?

Jörg9
26.03.2008, 14:24
Ach so, jetzt kommt noch ein Hammer:-)

An jeder Station sollen noch zwei Kameras (niedrige Auflösung) installiert sein (Webcam-Qualiät). Per PC soll es möglich sein von der Kamera ein Foto anzufordern.

Wer weiß Rat wie ich das aufbauen könnte?

Lorenz
26.03.2008, 15:57
Naja die 40 Webcams die du mal eben so unterschlagen hasst vergrößern den Rahmen des Projekts dann doch ein klein wenig...:-) Wie wäre es mit in diesem Zusammenhang dann mit Ethernet? Du müsstest dann die max. Segmentlänge, die ja bekanntlicherweise bei 100m liegt nur mit ein oder besser zwei Switchen erweitern. Ist halt nur ein wenig komplexer, weil du Module bauen musst, die einen TCP/IP Stack beinhalten.

Lorenz

Jörg9
26.03.2008, 16:24
Also: Es müssen keine 40 Webcams sein, die permanent "streamen". Es geht im Prinzip darum, ab und zu (auf Anforderung bei Bedarf) ein Foto mit Weitwinkel in geringer Auflösung zu bekommen.

Wäre schön wenn das mit dem Bussystem, das die Lampen steuert gleich mit erschlagen werden könnte. Wenn die Übertragung eines Fotos für 1 Minute den Bus komplett in Anspruch nehmen würde, wäre das kein Problem.

BASTIUniversal
26.03.2008, 17:23
Naja, das mit dem Webcams vergrößert dein Projekt wie Lorenz schon gesagt hat, erheblich.
Ein kleiner Controller ist damit hoffnungslos verloren, da brauchts dann schon einen ATMega8 oder ähnliche.
Als Kamera könnte man dann die "CAM-C328" von Sander-Electronic verwenden. Die hat eine serielle Schnittstelle eingebaut und kostet "nur" knappe 60€. Mit Weitwinkel schauts da aber eher schlecht aus, dafür ist ein JPEG Encoder direkt mit an Bord. Durch die Komprimierung wird das Bild in unter einer halben Minute übertragen.
Eine einfach USB-WebCam kann man hier nicht ohne weiteres Verwenden. Man müsste einen USB-Host in einen Controller (Größenordnung vermutlich ARM7) einprogrammieren plus den Treiber der Kamera. Da sind dann schon höhere Hard- und Software Kenntnisse erforderlich!

Mit der oben erwähnten seriellen Kamera könnte man bei der Master-Slave Busarchitektur bleiben. Für eine Halb-Duplex Verbindung brauchst du da auf beiden Seiten einen RS-485 Transceiver wie z.B. den ADM485 von Reichelt (1,50€). Für eine Full-Duplex Verbindung je einen (also Master einen und jeder Slave einen) MAX489 (2,45€) oder zwei ADM485.

MfG
Basti

Besserwessi
26.03.2008, 17:26
Den Controller müßte man dann nach der Camera aussuchen, denn das wäre die bei weitem größte Anforderung. Für einzelne Standbilder sollte RS485 ausreichen. Die Zeiten sollten soch im Bereich einiger Sekunden pro Bild bewegen. Eventuell sollte man zur 230 V Versorgung noch die Versorgung der Controller/Camera extra legen, denn kleine Trafos haben ziehmlich viel Versluste.

Jörg9
26.03.2008, 21:39
Ich glaube die Kameras rücken gerade in weite Ferne. Die "CAM-C328" von Sander-Electronic scheint zwar geeignet, aber der Preis erscheint mir doch etwas hoch. Ich bräuchte auch noch ein wetterfestes Gehäuse dafür.

Ich versuche mich mal von der Idee zu lösen, dass das Bildsignal durch den gleichen Bus muss.
Da die Stationen draußen sind, müssen die Kameras wetterfest sein. Ich habe gerade eine Kamera "Sharp-CCD Aussenkamera und Infrarot Nachtsicht" gefunden. Für ca. 55 Euro bei Ebay. Die macht einen guten Eindruck. Ich glaube, dass die Geschichte mit den Kameras evtl. in einem eigenen System abläuft.

Was die Verbindung der Knoten mit RS485 anbelangt habe ich ehrlich gesagt jetzt noch keinen Ansatz wie ich das lösen kann. Ich werde wohl auf einer RN-Mini-Control aufbauen und mich erstmal rantasten.

shaun
27.03.2008, 01:18
Zu Deiner RS485-Frage: der Standard ist hardwareseitig auf 32 Geräte begrenzt, mit neueren Treiber-Bausteinen gehen auch 256. Deine Frage nach der Adressierung geht in die falsche Richtung - RS485 sagt darüber nichts, der beschreibt nur einen differenziellen Zweidrahtbus mit Halbduplexübertragung. Das Protokoll ist Deine Sache!
Was die Kameras angeht: wenn nur das Bild von einer benötigt wird, könntest Du eine Koax-Leitung mitschleppen und an jedem Modul ein Relais vorsehen, welches (exklusiv!!!) die jeweilige Kamera auf das Koaxkabel durchschaltet. Am Zielort kannst Du dann damit machen was Du willst - Fernseher dran, TV-Karte, Videorecorder. Setzt natürlich Videokameras voraus, Webcams brauchen wie schon gesagt wurde etwas andere Plattformen. Du kannst das Videosignal natürlich auch in ein differenzielles Signal umwandeln und über ein Aderpaar CAT5 schicken, ein weiteres Paar nimmst Du für RS485 und über die beiden letzten Paare schickst Du 24V und setzt die im Modul mit einem kleinen Schaltregler auf 5V runter. Nur so als Idee...

Jörg9
27.03.2008, 08:21
Die Idee mit den Relais geschalteten Kameras ist mir sehr sympathisch. Ich habe mich schon 2 Kilometer Kabel verlegen sehen.

Shaun, welchen Baustein könnte ich verwenden um 256 Knoten zu adressieren? Ich möchte diesbezüglich für die Zukunft gewappnet sein.

Weiß jemand ein Beispiel - hardware und softwareseitig - für einen funktionierenden RS485 Bus mit AVRs an den Knoten?