PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Kommunikationsbus / Lösung für 18 Controler gesucht.



dolphin
24.09.2008, 13:47
Hallo liebe Maschinenmenschen, O:)
ich habe mit großem Interesse dieses Forum verfolgt und dachte mir, ich könnte hier Hilfe von Experten bekommen.
Ich arbeite an einem größeren Projekt bei dem es darum geht, 18 Schrittmotoren von einem zentralen Rechner zu kontrollieren. Ich habe nun auf einem ATMega8 eine Rampensteuerung und 16-fach-Mikroschritt implementiert um zunächst die mechanische Machbarkeit zu prüfen. Das Ganze funktioniert soweit. Die Verbindung ist für diesen Test einfach via RS232 zum Zentralrechner realisiert und ich kann immer nur einen Motor ansprechen.
Nun habe ich das Problem, dass die 18 Motoren im Kreis, mit einem Durchmesser von 61cm, angeordnet sind und ich nun mit allen 'sprechen' muss. Die Kommunikation muss nicht gleichzeitig erfolgen aber wenigstens Zeitnah. Ich suche nach einem soliden Bus, welcher mit wenigen Leitungen (evtl. keinen wenn IR benutzt wird) auskommt. Das Problem dabei ist, das die Motoren sehr empfindliche Gewichte von Wägebalken bewegen und ich keine starren Drähte an den Controler führen kann. Motor und Controler sitzen auf dem Wägebalken und bewegen sich also mit. Die Stromversorgung (Controler und Motor) würde ich zum einen via Masse (Edelstahlgestell) und einem sehr dünnen Draht durch die sich bewegende Achse des Wiegebalken führen. Vier Leitungen wie sie für einen Stepper nötig sind, kann ich keinesfalls durch/an diese Achse führen. Die Wägebalken bewegen sich nur im Millimeterbereich (genauer +/- 2 Grad). Ich hatte auch schon daran gedacht, eine Lipozelle gleich auf jeden Motor/Controler zu setzen und diese im Wartungsbetrieb via mechanischer Verbindung zu laden aber das ist nicht gerade eine solide Sache und erhöht den Aufwand noch drastisch.
Zur Verdeutlichung der Herrausforderung kann man sich eine Personenwaage vorstellen, wie sie beim Arzt verwendet wird (mit den Schiebegewichten und Wägebalken). Die Gewichte werden sodann von einem Spindeltrieb mit dem Stepper bewegt.

Ein paar Daten:
Stepper: 7,5V, 250mA pro Phase, 30Ohm (ich benötige nicht das ganze Dehmoment).
ATMegaXXXXX oder was auch immer passt.
Treiber H-Brücke derzeit L293 (Chopper/PWM in Software realisiert): kann irgendwas sein solange es schön klein ist.
Die Kommunikation _MUSS_ bi-direktional sein weil ich die Position benötige).
Die Wägebalken sind dummer Weise auch noch so angeordnet, das sie sich untereinander nicht oder nur teilweise sehen können.

...ufff

Für gute Ideen wäre ich Euch sehr verbunden.


Aloha,
Peter

pongi
24.09.2008, 14:14
Wenn du bei einem Kontroller pro Motor bleiben möchtest, könntest Du die Kommunikation via I2C oder RS485 machen, die benötigen alle nur 2 Leitungen. Beim I2C würdest Du einen zentralen uC brauchen, der als I2C Master arbeitet, und per RS232 mit dem PC spricht. Für RS485 brauchst Du passende Pegelwandler am PC, und an allen uCs.

Natürlich würde das auch per Funk gehen, nur wirds dann ein bisschen teuerer.

dolphin
24.09.2008, 15:19
Hallo Pongi,
vielen Dank.
Ja, an I2C habe ich schon gedacht. Ich hatte den Gedanken aber wieder verworfen, da ich nicht sicher bin, ob die Distanzen damit überbrückt werden können. Ich müsste ja dann eine Sternform aufbauen....wie wäre dann der Busabschluss/Terminierung auszulegen?

RS485 wäre schon interessant. Die Pegewandler wären kein Problem. Kann man dann RS485 auch 'wireless' betreiben? Ich könnte mir vorstellen, das dies dann Schwierigkeiten auf Grund der Verzögerungen macht?

Die Funksache wäre eine Option, hast DU da ein paar Hinweise/Pointer zum Recherchieren ?

pongi
24.09.2008, 15:37
I2C und RS485 müssen baumförmig verdrahtet werden, damit sie terminiert werden können (glaub ich zumindest).

Bei Funk hab ich an die Zigbee Module gedacht, es gibt auf der Atmel Seite AVRs, die das eingebaut haben, glaub ich. Dann wären noch vielleicht die Funkmodule die Du über Robotikhardware beziehen kannst. Ich persönlich habe sehr gute Erfahrungen mit Bluetooth <-> RS232 Modulen gemacht, da gibts inzwischen auch kleinere und günstigere.

dolphin
05.10.2008, 15:13
Hallo Pongi,
ich habe Deine Anregungen mal der Reihe nach angeschaut und ich glaube BT und ZigBee sind eine gute Alternative. Wenn ich die Tests abgeschlossen habe, werde ich hier darüber berichten (falls es interessiert).

Dank' Dir.
Servus
Peter