Moin, ich habe erst kürzlich mal wieder mit einem alten Feldbus zu tun gehabt und würde ganz gerne verstehen, wie eine Positionserkennung auf diesem möglich ist. Es handelt sich hierbei um einen Bus der zur Kommunikation mit Teilnehmern Spannungsänderungen vornimmt. 12V = Logische 1 -- 27,5V = Logische 0 . Die Teilnehmer Antworten via Strom 9uA = Logische 0 -- 10mA = Logische 1 . Die Topologie ist Stichförmig und es handelt sich um einen 2Draht Bus(Power und Daten s.o.). Bsp. für einen Bus mit 4 Tln. |==========| | Zentrale |==========(TLN1)======(TLN2)======(TLN3)======(TLN4) |==========| Die Teilnehmer haben keine Trennelemente zwischeneinander(Der Bus ist immer durchgängig von Zentrale bis zum Letzten TLN) Nach einer Abfrage der Anlage melden sich die Teilnehmer(max 230) mit einer UID. Zum Zeitpunkt dieser Abfrage sind die Teilnehmer der Anlage nicht bekannt, sprich in der Zentrale Programmiert, hinterlegt, whatever. Wie ist es möglich, das nicht alle Teilnehmer gleichzeitig Antworten? Wie ist es möglich, die genaue Position eines jeden Teilnehmers zu ermitteln?(Antwortzeit?). Leider gibt es hierzu Seitens des Herstellers keine Informationen. Vielleicht kann mich ja hier jemand weiterbilden. MFG Xajarex
Xajarex schrieb: > Wie ist es möglich, das nicht alle Teilnehmer gleichzeitig Antworten? Mach die Arbitrierung kollisionsfrei wie beim CAN: wenn der Bus grad frei ist, fängt jeder an zu senden. Wenn einer als Kennung eine '1' ausgibt und eine '0' einliest, dann lässt er fürderhin die Finger vom Bus. Xajarex schrieb: > Wie ist es möglich, die genaue Position eines jeden Teilnehmers zu > ermitteln?(Antwortzeit?). Wird die Position im Bus ermittelt oder die Entfernung von der Zentrale? Und wie "genau" funktioniert diese Ermittlung?
:
Bearbeitet durch Moderator
Hey, das mit der arbitrierung macht Sinn. Die Ermittlung funktioniert folgendermaßen. Wenn alle Teilnehmer der Anlage installiert sind, wird an der Anlage das sog. Einlesen gestartet. Nun geht die Anlage jeden Teilnehmer ab und gibt ihm eine Kommunikationsadresse die von nun an zur Kommunikation verwendet wird. Beginnend ab 2 da die Anlage 3 Adressen einnimmt. Nach dem einlesen hat die Anlage eine Topologie erstellt, in der die exakte Reihenfolge der eingelesenen Teilnehmer zu sehen ist. Anhand dessen wurden auch die Kom Adressen vergeben. Die Kommunikation läuft dabei immer so: Abfrage der Anlage (mit Spannungswechsel) Stromantwort , 1 Busruhe und weiter. Allerdings soweit ich das Messen kann melden sich die Teilnehmer eben nicht in der korrekten Reihenfolge beim einlesen. Am Ende des einlesen, wenn alle (in meinem Fall 6 Teilnehmer durchgelaufen sind) passiert noch einiges auf dem Bus bis dann zu guter Letzt nur noch via Spannungspulse Kom Adressen vergeben werden. Das kann ich dann wieder Messen und nachvollziehen (einigermaßen ;) Aber wie kann sie den Abstand von sich zum Teilnehmer Messen. Ich hatte dabei an Antwortzeit gedacht wie beim Entfernungsmesser aber da müsste doch die Toleranz unmöglich gering sein oder?
Lies wie 1-wire funktioniert und verstehe. Würde mich ehrlich gesagt nicht wundern wenn es sogar genau das ist. Dumm nur, das man in der Regel nicht weiß, wer der mechanisch erste Teilnehmer ist. Es sei denn, man achtet auf die Seriennummern beim Einbau "der kleinste nach links" oder der User interagiert bei der Inbetriebnahme, durch Tastendruck oder immer-schön-eins-nach-dem-anderen-anstecken. Dabei kann dann ja eine zusätzliche BusID in den Tln gespeichert werden, die die Position am Bus kennzeichnet. Tausch man einen aus, hat der keine, aber "ich sehe 1-3 und 5-10, dann muss der neue 4 sein".
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.