-
-
Erfahrener Benutzer
Robotik Einstein
über ein protokoll wirst du kaum eherumkommen, das musst du schon schreiben! als bussystem würd ich dir ein RS485 vielleicht nahelegen, das ist ncihts weiter als RS232 differentiell zu übertragen, dabei hast du dann einen 8beinigen umsetzer, der hat TX udn RX als eingang/ausgang für den controller und eine t+ und t- leitung als ausgang, auf rs485 wird dann auf "einer leitung" bidirektional übretragen, also ein gewisses timing musst du da schon selber vorbereiten damit es zu möglichst wenigen kollisionen kommt!
dann bleiben da noch 4 beinchen, 2 für + und - und je ein bein als signalleitung für empfangsmodus und sendenmodus
als Übertragungsleitung habe ich mal ein 100m LAN kabel genommen, wo ich an den gewünschten stellen die schirmung vorsichtig geöffnet habe, dann die adernpaare ein wenig entdrillt und dann über eine 9pin SUB-D klemmbuchse angezapft habe. am anfang und ende der leitung müssen abschlusswiderstände, aber ich kann nach belieben controller an und abstecken, aus der SUB-D bekomme ich dann 8 leitungen, 2 für stromversorgung (auf die distanz allerdings verwende ich noch optokoppler wegen spannungsdifferenz) 2 für handshake und 4 für 2 kanäle von RS485
handshake läuft einfach so, leitung ist über pullups auf definierten pegel und um einen sendevorgang anzukündigen wird einfach die polarität umgekehrt, ist sie bereits verdreht, darf der controller nicht senden, wird die leitung dann freigegeben, drehen alle controller mit sendebedarf die 2te leitung um und lassen die 1te wie sie ist und warten eine zeit, die sich aus adresse * 0.1ms ergibt und versucht dann die leitugn zu belegen, die regel mit der 2ten leitung ist, damit kein weiterer controller mit niedriger adresse ihn unterdrückt indem er die leitung vorher wieder belegt!
quasi wie eine bedarfs und eine besetzt leitung
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- Anhänge hochladen: Nein
- Beiträge bearbeiten: Nein
-
Foren-Regeln
Lesezeichen