Zuviel Werbung? - > Hier kostenlos beim SPS-Forum registrieren

Seite 2 von 2 ErsteErste 12
Ergebnis 11 bis 14 von 14

Thema: RS232 über Funk

  1. #11
    Registriert seit
    25.09.2007
    Beiträge
    13
    Danke
    3
    Erhielt 2 Danke für 1 Beitrag

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    "Mit etwas Anbau der Schnittstellenwandler lässt sich auch ein MPI-Netzwerk darüber verbinden - ging jedenfalls bei mir gut"

    @Tobias: Das würde mich interessieren. Auf beiden Seiten XBee Module auf RS485 wandeln und 187,5kbit einstellen? Und das geht bei der S7-300?

  2. #12
    Registriert seit
    22.06.2003
    Beiträge
    242
    Danke
    9
    Erhielt 19 Danke für 19 Beiträge

    Standard

    Zitat Zitat von automatisierungsprofi Beitrag anzeigen
    "Mit etwas Anbau der Schnittstellenwandler lässt sich auch ein MPI-Netzwerk darüber verbinden - ging jedenfalls bei mir gut"

    @Tobias: Das würde mich interessieren. Auf beiden Seiten XBee Module auf RS485 wandeln und 187,5kbit einstellen? Und das geht bei der S7-300?
    Hallo
    ich muss dazu etwas in die Historie der Maxstreamm-XBee Baureihen, wie von mir verwendet, zurückgreifen. Bei anderen 'Vertreibern' weiss ich den Aufbau nicht - das scheint stark firmwareabhängig
    Vorweggestellt: Meine XBees haben allesamt RS232 Ausgang mit 3V-Pegel; zur PPI/MPI-Schnittstelle ist ein RS485 Wandler nötig. (Wie ich im HB verstand sollte das in RS485 umschaltbar sein, ging aber nicht). Deswegen verbandelte ich bis zuletzt immer die MAX481 in 3V Ausführung hinters XBee. Sende- Empfangsumschaltung steuert dabei der XBee; meine (Mitte 2008 ) zuletzt geladene FW ( eine Weiterentwicklung der XC09-009) brachte dazu nötiges 'RS485 transmit enable' bereits mit.
    Alternativ geht die Sende-Empfangsumsteuerung aber auch bei Einbindung des XBees in vorhandenen BUS inkl. Repeater, am Repeater (automatisch - weil der das RTS liefert). Etwas Bauen war allerdings auf jeden Fall angesagt, die übliche Pegelanpassung der Schnittstellen
    Zur Konfiguration wird ja das berühmte 'X-CTU' verwendet. Dort ist die Ausstattung der FW-Stände zu erlesen. Einige Firmwarestände besitzen die 187,5kB bereits integriert, anderen liess es sich per Faktor (oder 'customs') zu 230kB beibringen. Irgendwo gabs anfangs noch eine KOnfiguration für 'customs'; später waren alle Baudraten in der Liste anwählbar.
    (Nebenbei noch, da das X-CTU auf Wunsch gewählte FW ins Modul lädt: Auf XBees mit geladenen uralt Firmwareständen ist dabei ein FW-Update evtl. nur mit einer Hilfsschaltung möglich - in Module mit neuerer FW kann fortan ohne Zusatzschaltung jeweils benötigte FW geladen werden).
    Danach läuft das - es gab aber ein Abgleichproblem (Timing). Im MPI-Netzwerk spielte der (ja auch 'MPI-Adaptertypische' )Verbindungsaufbau eine Rolle. Die Verbindung (oder der Token auf dem Bus) muss ja fortlaufend herumgereicht werden.
    Da wurds allerdings schwierig eine geeignete Konfig der XBees zusammenzustellen (besser gesagt ausprobieren). Es gibt zudem verschiedenste Aufbauten des XBee-Netzes bei Betrieb von mehr als zwei miteinander kommunizierenden Funk-Chips.
    Drei und mehr, anstatt per Kabel über Funk verbundene CPU's erzwingen da quasi zwei gleichzeitig ablaufende 'Busse'. Einmal der Funkbus, mit der Adressierung angesprochenen XBee-Moduls - und darauf'modelliert' sozusagen der MPI-Bus ....
    Mit 2 CPU-300er und einer 226 im Verbund hatte ich das Mitte 2008 hin und kann Daten austauschen. Seitdem benutze ich zugehörigen FW-Stand, wie ich ihn damals in die Module lud und weiss nicht inwieweit es sich bis 'heutzutage' weiterentwickelt hat. Da seinerzeit alles noch 'handwarm' aus der Hersteller-Schreibmaschine kam, war ein Hauptproblem das XBee-Funk-Netzwerk ersteinmal zum Laufen zu bekommen. Irgendwo meine ich ein halbes Jahr später auch fertig für MPI konfigurierte Module gesehen zu haben.

    Mit RS485 (unidirektionalen) Signalen ging es aber jeweils verhältnismässig einfach mehrere XBee-Teilnehmer zu verbinden, soweit die Timeouts nicht blockierten. (Die XBees schicken normal erst mit vollem Sendepuffer ab, Handshakes mit einem Steuerzeichen wie im MPI-Netzwerk brauchen etwas bis das XBee merkt die loszuschicken)
    Mit reinen bidirektionalen RS232 Signalen (und getesteten 230kB) war das allerdings noch schwieriger.
    Fällt mir gerade noch ein: Es gab anfangs Module die waren im Datenblatt mit 115kB auf der Funkstrecke beschrieben. Später stand überall 230kB - die sollten natürlich 230kB haben, sonst staut sich das im Puffer.
    Gruss
    tobias

    Edit/ : Ist vielleicht noch sinnvoll hier anzufügen, dass bei Justierung der XBees auf 'exotische' Baudraten wie 187,5kBaud der Zugriff vom PC verloren geht - soweit man nicht eine geeignete Schnittstellenkarte benutzt.
    Das Rückstellen per 'Hardwarereset' ist an den Chips wohl nicht vorhanden, ebenso gibt es (auf Nachfrage beim Hersteller) keine Möglichkeit die über die Funkstrecke zurückzusetzen.
    Bleibt nur: Sich jeweiligen Chip geladene Baudrate gut zu merken und per geeigneter Interfacekarte über die AT-Kommandos von Hand zurückzusetzen.
    Ohne einstellbare Schnittstellenkarte bleibt nur im Selbstbau die 187,5kBaud zu erzeugen. Bspw. einigermassen einfach, indem man die Teiler zu typischerweise auf der Basis von 1,8 oder 3,6MHZ getakteten Baudratengeneratoren auf 230kBaud einstellt und anschliessend mit 1,5 bzw. 3MHZ taktet. Das ging bspw. mit den AVR Mikrocontrollern easy, womit dann AT-Kommandos zum Reset ins XBee gesendet werden konnten.
    Geändert von tobias (18.11.2009 um 07:59 Uhr) Grund: ... weils immer so ist ...

  3. #13
    Registriert seit
    24.08.2006
    Beiträge
    6
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Zitat Zitat von tobias Beitrag anzeigen
    Hallo
    ich muss dazu etwas in die Historie der Maxstreamm-XBee Baureihen, wie von mir verwendet, zurückgreifen. Bei anderen 'Vertreibern' weiss ich den Aufbau nicht - das scheint stark firmwareabhängig
    Vorweggestellt: Meine XBees haben allesamt RS232 Ausgang mit 3V-Pegel; zur PPI/MPI-Schnittstelle ist ein RS485 Wandler nötig. (Wie ich im HB verstand sollte das in RS485 umschaltbar sein, ging aber nicht). Deswegen verbandelte ich bis zuletzt immer die MAX481 in 3V Ausführung hinters XBee. Sende- Empfangsumschaltung steuert dabei der XBee; meine (Mitte 2008 ) zuletzt geladene FW ( eine Weiterentwicklung der XC09-009) brachte dazu nötiges 'RS485 transmit enable' bereits mit.
    Alternativ geht die Sende-Empfangsumsteuerung aber auch bei Einbindung des XBees in vorhandenen BUS inkl. Repeater, am Repeater (automatisch - weil der das RTS liefert). Etwas Bauen war allerdings auf jeden Fall angesagt, die übliche Pegelanpassung der Schnittstellen
    Zur Konfiguration wird ja das berühmte 'X-CTU' verwendet. Dort ist die Ausstattung der FW-Stände zu erlesen. Einige Firmwarestände besitzen die 187,5kB bereits integriert, anderen liess es sich per Faktor (oder 'customs') zu 230kB beibringen. Irgendwo gabs anfangs noch eine KOnfiguration für 'customs'; später waren alle Baudraten in der Liste anwählbar.
    (Nebenbei noch, da das X-CTU auf Wunsch gewählte FW ins Modul lädt: Auf XBees mit geladenen uralt Firmwareständen ist dabei ein FW-Update evtl. nur mit einer Hilfsschaltung möglich - in Module mit neuerer FW kann fortan ohne Zusatzschaltung jeweils benötigte FW geladen werden).
    Danach läuft das - es gab aber ein Abgleichproblem (Timing). Im MPI-Netzwerk spielte der (ja auch 'MPI-Adaptertypische' )Verbindungsaufbau eine Rolle. Die Verbindung (oder der Token auf dem Bus) muss ja fortlaufend herumgereicht werden.
    Da wurds allerdings schwierig eine geeignete Konfig der XBees zusammenzustellen (besser gesagt ausprobieren). Es gibt zudem verschiedenste Aufbauten des XBee-Netzes bei Betrieb von mehr als zwei miteinander kommunizierenden Funk-Chips.
    Drei und mehr, anstatt per Kabel über Funk verbundene CPU's erzwingen da quasi zwei gleichzeitig ablaufende 'Busse'. Einmal der Funkbus, mit der Adressierung angesprochenen XBee-Moduls - und darauf'modelliert' sozusagen der MPI-Bus ....
    Mit 2 CPU-300er und einer 226 im Verbund hatte ich das Mitte 2008 hin und kann Daten austauschen. Seitdem benutze ich zugehörigen FW-Stand, wie ich ihn damals in die Module lud und weiss nicht inwieweit es sich bis 'heutzutage' weiterentwickelt hat. Da seinerzeit alles noch 'handwarm' aus der Hersteller-Schreibmaschine kam, war ein Hauptproblem das XBee-Funk-Netzwerk ersteinmal zum Laufen zu bekommen. Irgendwo meine ich ein halbes Jahr später auch fertig für MPI konfigurierte Module gesehen zu haben.

    Mit RS485 (unidirektionalen) Signalen ging es aber jeweils verhältnismässig einfach mehrere XBee-Teilnehmer zu verbinden, soweit die Timeouts nicht blockierten. (Die XBees schicken normal erst mit vollem Sendepuffer ab, Handshakes mit einem Steuerzeichen wie im MPI-Netzwerk brauchen etwas bis das XBee merkt die loszuschicken)
    Mit reinen bidirektionalen RS232 Signalen (und getesteten 230kB) war das allerdings noch schwieriger.
    Fällt mir gerade noch ein: Es gab anfangs Module die waren im Datenblatt mit 115kB auf der Funkstrecke beschrieben. Später stand überall 230kB - die sollten natürlich 230kB haben, sonst staut sich das im Puffer.
    Gruss
    tobias

    Edit/ : Ist vielleicht noch sinnvoll hier anzufügen, dass bei Justierung der XBees auf 'exotische' Baudraten wie 187,5kBaud der Zugriff vom PC verloren geht - soweit man nicht eine geeignete Schnittstellenkarte benutzt.
    Das Rückstellen per 'Hardwarereset' ist an den Chips wohl nicht vorhanden, ebenso gibt es (auf Nachfrage beim Hersteller) keine Möglichkeit die über die Funkstrecke zurückzusetzen.
    Bleibt nur: Sich jeweiligen Chip geladene Baudrate gut zu merken und per geeigneter Interfacekarte über die AT-Kommandos von Hand zurückzusetzen.
    Ohne einstellbare Schnittstellenkarte bleibt nur im Selbstbau die 187,5kBaud zu erzeugen. Bspw. einigermassen einfach, indem man die Teiler zu typischerweise auf der Basis von 1,8 oder 3,6MHZ getakteten Baudratengeneratoren auf 230kBaud einstellt und anschliessend mit 1,5 bzw. 3MHZ taktet. Das ging bspw. mit den AVR Mikrocontrollern easy, womit dann AT-Kommandos zum Reset ins XBee gesendet werden konnten.
    Das interessiert auch, kann mir aber leider nicht vorstellen, wie Du mit ein paar Einstellungen am XBee- Modul die harten Timing-Anforderungen der MPI-Schnittstelle erfüllen willst. Wie -genau - hast Du den Datenaustausch realisiert ? (Globaldaten, XPUT etc..)

  4. #14
    Registriert seit
    22.06.2003
    Beiträge
    242
    Danke
    9
    Erhielt 19 Danke für 19 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo
    nochmal vorweg, das Handling der XBees ist sicherlich Extract vieler kleiner Schritte. Im Stand Mitte 2008 war es zudem so, dass ein Grossteil der FW-Funktion entweder undokumentiert oder nur durch gleichzeitige Projekte in einigen Foren zum Vorschein kamen. NonPlusUltra bei all diesen 'Verstellungen' bleibt aber: Ein einmal falsch konfigurierter Chip ist danach kaum wiederzubeleben. Beispiel wäre: Für einen von Hand auf 166500bps getakteten Chip wird normal kaum eine Gegenstelle mit 166500bps zu finden sein, die den wieder auf gebräuchlichere Baudraten zurückstellen könnte. Dann ist das Ding verloren und um das Risiko zu minimieren ist es anfangs allemal ratsam ausschliesslich bei 19.200-MPIspeed zu üben. Ein Vorteil der XBees ist gerade unterschiedliche Baudraten koppeln zu können - so wurde es bspw. auch möglich in einen 187,5kB MPI/PPI-Bus eine alte 21x mit max.19.200bps einzubinden. Und was bei 19.200Baud lief funktionierte auf 187,5kB hochgedreht dann auch.
    Ob das irgendwelchen 'Spezifikationen' standhält habe ich natürlich nicht überprüft, geschweige denn das mich das interessieren würde
    Es ist sicherlich auch nicht unbedingt ratsam nicht mit einer MPI Konfiguration zu beginnen. Ich hatte zuerst mal versucht die Daten einige Fühler ganz konventionell über PtP in eine 300-er einzulesen, also ohne den ganzen Protokollaufwand der MPI-Schnittstellen. Adäquat der freien Kommunikation der 200-er; eben weil es per XBees einfach und ohne zusätzliche Umschaltkontakte geht, die (eine)onboard Schnittstelle mehreren Fühlern nacheinander zur Verfügung zu stellen. Dabei erledigt sich dann die ganze Pegelei (RS485 - Max481 etc.) fast nebenbei, ohne das und zugehörige Sende- Empfangsteuerung erstmal herauszufinden geht das schon nicht
    Im zweiten Schritt benutzte ich die XBees zur Anbindung über die Programmierschnittstelle um per Libnodave etc. auf die 187,5kB zu kommen. (Funk-verbundene XBees können am jeweiligen Kabelende an unterschiedlichen Baudraten betrieben werden und so natürlich auch von bspw. 19.200bps auf 187500bps 'umsetzen') Da tauchen auch erstmalig die Timingprobleme der Steuerzeichen im MPI-Protokoll auf, bis das funktioniert gewinnt man so nach und nach etwas Einblick in die Parametrierung der XBees. Sonst funktioniert der Zugriff über die Programmierschnittstelle auch nicht


    Zitat Zitat von Pfaffi Beitrag anzeigen
    Wie -genau - hast Du den Datenaustausch realisiert ? (Globaldaten, XPUT etc..)
    im MPI/PPI Netz läuft die Kommunikation meine ich unter dem Siemens Oberbegriff S7-Kommunikation - also XPUT,XGET bzw. bei S7-2xx netwrite/netread. Jeweils begrenzt auf irgendwas bei 16Bytes - übergeben wird zuerst der Anypointer auf den Datenbereich und die MPI Adresse.
    Mein Aufbau ist dabei: Zwei 300-er (318 & 314C-2PtP), eine 226 mit TP. Die Daten zum TP werden von der 226 eingesammelt und am TP angezeigt bzw. Knopfdruck am TP steuert über die 226 auch die 300-er; mangels besserer Teile, die ich nicht habe. Das funktionierte sowohl kabelverbunden als auch per XBee-Bus.
    Das interessiert auch, kann mir aber leider nicht vorstellen, wie Du mit ein paar Einstellungen am XBee- Modul die harten Timing-Anforderungen der MPI-Schnittstelle erfüllen willst.
    Zur Parametrierung der XBees läuft irgendwo ein Forum, es ist ansonsten kaum herauszufinden welche Einstellungen in welchem FW-Stand was überhaupt bewirken. 2008 gab es nur zwei FW's welche die RS485 Anbindung 'muddelten', von daher kamen nur die erstmal in Frage. Was heute aktuell ist weiss ich nicht
    Wenn die FW Einzelzeichenversendung und RS485 beeinhaltet lässt sich der Rest (also Timing, Broadcasts und Funknetzaufbau etc.) einfach per AT Kommandos konfigurieren. Man benötigt nichts weiter als ein passendes Terminal und einen Editor.
    Die AT-Kommandos sind grösstenteils im HB dokumentiert - Der Funkbus selber verhält sich im Broadcastmodus der XBees eigentlich wirklich als reiner Kabelersatz ... .( ... Zitat der Handbuchaussagen zu den Gigaset DECT-Adaptern, die zwar ähnlich funktionierten, hier aber nichts mit zu tun haben).
    Bei RS485 funktioniert die XBee-Verbindung prinzipiell sowieso leichter in 'Echtzeit', als dass sowohl die Funkstrecke als auch die RS485 Zweidraht Verbindung unidirektional laufen. Die Steuerung (quasi jeweiliger Master) bleibt umlaufend bei der jeweils sendendenden CPU.

    Bei bidirektionalen Verbindungen (bspw. RS232 oder RS485-Vierdraht zum Display per bidirektionalen-PtP) funktionierte das nicht ! Deswegen war auch mein Display an der PtP per Funkbus nicht zu aktivieren - und ich behielt meinen Aufbau zweier 300-er und eingebundener 226 mit TP bei.



    Was ansonsten gut funktioniert mit den XBees hat natürlich auch Nachteile. Zuerst wäre da mal der wirklich schwer zu 'administrierende' Funkbus
    Wer mehrere Teilnehmer zu 'verfunken' dennoch nicht scheut, bekommt das Problem nachträglich hinzukommende Teilnehmer jedem Funkchip 'persönlich' bekanntmachen zu müssen. Ich fand keinen anderen Weg als jedesmal die um den Neuling erweiterte komplette Konfiguration in jeden Chip einzulesen. Das ist überaus fehlerträchtig - einmal verhauen steht alles.
    Einen Teilnehmer herauszulösen geht hingegen problemlos. Aber nach dem Prinzip einfach einige Reserveteilnehmer von vornherein vorzusehen versagte, da jeweils genau angemeldeter Chip (wahrscheinlich Teil der Seriennummer) wenn, auch vorhanden sein musste
    Weiterer Nachteil im MPI/PPI Verbund ist ein ausdauernder Stromhunger (bei den XBee-Pros nochmals quadriert), da die Dinger nonstop laufen und nie den Hörer auflegen
    Was jedoch einmal läuft, scheint fortan sehr zuverlässig zu 'funzen'. (Jedenfalls läuft mein erster XBee-Verbund störungsfrei seit 01.01.2007. Damit lese ich über den MPI-Bus Werte aus zwei digitalen Kamstrup Stromzählern aus. Das ist auch ein ganz anderes Thema, war damals aber der Versuch im XBee Controller eigenen Code abzulegen. Auch das geht).
    Ansonsten kenne ich wie gesagt den heutigen Stand der X- und Zigbees nicht, da ich mittlerweile alle CPU's nur noch per Ethernet verbändselt habe und sich damit alle anderen Busse erledigten, ging ich dem nicht mehr weiter nach.
    Gruss
    tobias

Ähnliche Themen

  1. Antworten: 4
    Letzter Beitrag: 09.01.2011, 17:54
  2. S7 1200 Panelanbindung über Funk
    Von slk230-power im Forum Simatic
    Antworten: 0
    Letzter Beitrag: 05.01.2011, 12:29
  3. Endschalter über Funk
    Von WimC im Forum Elektronik
    Antworten: 8
    Letzter Beitrag: 12.11.2010, 17:21
  4. Profibus DP über Funk
    Von HaSchi im Forum Feldbusse
    Antworten: 10
    Letzter Beitrag: 19.10.2007, 11:40
  5. S7 Onlineverbindung über Funk (Dataeagle)
    Von mitchih im Forum Simatic
    Antworten: 5
    Letzter Beitrag: 10.01.2007, 19:40

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •