Forum: Mikrocontroller und Digitale Elektronik RS232 Ethernet Strecke mit Pollin Net-IO


von Dings (Gast)


Lesenswert?

Hallo ich möchte eine RS232 Streke mit dem Pollin Net-IO und über 
Ethernt machen. Kann mann dafür die Ulrich R. Firmware anpassen?

RS232 - NetIO - Eth.Switch - NetIO - RS232

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Das wird man schon können.

Was Du da basteln möchtest, nennt sich "Device Server", allerdings mit 
der Erweiterung, daß zwei davon direkt miteinander reden können.

Bedenke allerdings, daß das nicht timingtransparent (also ohne 
Verzögerungen) möglich ist.

Was ist der tiefere Sinn des Unterfangens? Welche Baudrate willst Du 
verwenden, und wie weit sollen die beiden RS232-Enden auseinanderliegen?

von Dings (Gast)


Lesenswert?

Die beiden Stellen sollen etwa 50m auseinander im Selben Netzwerk liegen 
und Ethernt ist schon vorhanden.

Es ist nichts Timing kritisches. Baudrate liegt so bei 9600 Baud.

von Wolfgang A. (Gast)


Lesenswert?

Rufus Τ. Firefly schrieb:
> Was Du da basteln möchtest, nennt sich "Device Server",

Andere nennen es auch einfach "Serial Server" oder in voller Schönheit 
"Serial-to-Ethernet Device Server"

von El Patron B. (bastihh)


Lesenswert?

Besteht nicht die möglichkeit das Netzwerkkabel zweckzuentfremden?

Sprich am Node-Punkt die beiden Kabel zu verdrillen? Ist wesentlich 
einfacher und effektiver, da RS232 bis 900m gehen kann.

von Michael L. (michaelx)


Lesenswert?

Wolfgang A. schrieb:
> Rufus Τ. Firefly schrieb:
>> Was Du da basteln möchtest, nennt sich "Device Server",
>
> Andere nennen es auch einfach "Serial Server" oder in voller Schönheit
> "Serial-to-Ethernet Device Server"

Damals(TM) (als M$ sich den Begriff noch nicht angeeignet hatte) hieß es 
ganz einfach Terminalserver, weil Terminals dumm und seriell angebunden 
waren. Es gab Terminalserver als Boxen, mit denen man z.B. 4, 8 oder 16 
serielle Schnittstellen ins Netzwerk hängen konnte. Anspechen konnte man 
die Schnittstellen ganz simpel über einen Socket. Und wenn man nicht 
programmieren kann, nimmt man Telnet oder NetCat um darauf zuzugreifen. 
Ebenso gibt es Programme (z.B. com2tcp), die die Netzwerkverbindung mit 
einen virtuellen COM-Port zugänglich machen, für irgendwelche Programme 
die nur mit COMx können.

von Georg (Gast)


Lesenswert?

Dings schrieb:
> RS232 - NetIO - Eth.Switch - NetIO - RS232

Das heisst einen binären Zustand in realtime ans andere Ende übermitteln 
- ein sehr ungünstiger Weg und funktioniert wahrscheinlich nur, wenn die 
Ethernetleitung exklusiv dafür verwendet wird - wenn überhaupt. Für ein 
serielles Signal mit 9600 Baud wird eine zeitliche Genauigkeit von etwa 
10 µs gebraucht. Wenn das serielle Signal den üblichen Normen 
entspricht, ist es wesentlich intelligenter, Wandler RS232C <-> Ethernet 
zu verwenden.

Georg

von c-hater (Gast)


Lesenswert?

Georg schrieb:

> Dings schrieb:
>> RS232 - NetIO - Eth.Switch - NetIO - RS232
>
> Das heisst einen binären Zustand in realtime ans andere Ende übermitteln

Nicht wirklich. Das wäre nur der Fall, wenn Bitbanging über die 
Steuerleitungen unterstützt werden soll. Hier ist aber wohl die reine 
Datenübertragung gemeint, also das, was bei einer physischen 
RS232-Verbindung über RxD/TxD läuft. Und das geht natürlich und wird 
auch in Millionen von Anwendungen praktisch genau so gemacht.

Klar, durch die Wandlung ergibt sich eine höhere Latenz, aber das spielt 
eben in den meisten Anwendungen keine Rolle.

> Für ein
> serielles Signal mit 9600 Baud wird eine zeitliche Genauigkeit von etwa
> 10 µs gebraucht.

Das interessiert kein Schwein. Die Endgeräte arbeiten natürlich als 
Seriell/Parallel-Wandler, über's Netz gehen also keine einzelnen Bits, 
sondern komplette Datenbytes (oft sogar Pakete von mehreren Datenbytes)


> Wenn das serielle Signal den üblichen Normen
> entspricht, ist es wesentlich intelligenter, Wandler RS232C <-> Ethernet
> zu verwenden.

Die machen aber auch nix anderes und haben dementsprechend auch 
dieselben Einschränkungen...

von Joerg F. (felge1966)


Lesenswert?

Wenn es ein reines Cu Kabel ist, wären doch zwei RS232/RS485 sinnvoller.

von Dirk B. (dirkb2)


Lesenswert?

Joerg F. schrieb:
> Wenn es ein reines Cu Kabel ist, wären doch zwei RS232/RS485 sinnvoller.

Geht da auch durch den Eth.Switch ?

Dings schrieb:
> RS232 - NetIO - Eth.Switch - NetIO - RS232

von Georg (Gast)


Lesenswert?

c-hater schrieb:
> Das interessiert kein Schwein. Die Endgeräte arbeiten natürlich als
> Seriell/Parallel-Wandler

NetIO hat aber keine seriellen Anschlüsse, sondern 8 digitale Ausgänge 
und 4 digitale Eingänge.

Wenn du dich schon überhaupt nicht informierst, dann spar dir wenigstens 
deine aggressive Ausdrucksweise. Die wäre schon schwer erträglich wenn 
du was richtiges beitragen könntest. Aber dafür bist du ja bekannt.

Georg

von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

Georg schrieb:
> Dings schrieb:
>> RS232 - NetIO - Eth.Switch - NetIO - RS232
>
> Das heisst einen binären Zustand in realtime ans andere Ende übermitteln
> - ein sehr ungünstiger Weg und funktioniert wahrscheinlich nur, wenn die
> Ethernetleitung exklusiv dafür verwendet wird - wenn überhaupt.

Überdenke bitte Deine Interpretation nochmal.

> Für ein
> serielles Signal mit 9600 Baud wird eine zeitliche Genauigkeit von etwa
> 10 µs gebraucht.

Meinst Du tatsächlich, er will jedes RS232-Bit in ein Netzwerkpaket 
stopfen? Er wird schon ein komplettes Zeichen, was er übers Netzwerk 
empfangen hat, dann auch wieder über RS232 senden wollen. Das macht er 
mit einem UART und nicht mit Bitbanging auf der kompletten Strecke.

> Wenn das serielle Signal den üblichen Normen
> entspricht, ist es wesentlich intelligenter, Wandler RS232C <-> Ethernet
> zu verwenden.

Was glaubst Du, was er denn da anderes bauen will?

von Mark R. (stevestrong)


Lesenswert?

Eni Möglichkeit wäre noch das Net-IO mit Arduino IDE zu benutzen, da 
dort ein Ethercard Lib für ENC28J60 zur verfügung steht.
NET-IO mit Arduino: https://code.google.com/p/avr-netino/
Step-by-step: https://code.google.com/p/avr-netino/wiki/GettingStarted

: Bearbeitet durch User
von Dirk B. (dirkb2)


Lesenswert?

Georg schrieb:
> NetIO hat aber keine seriellen Anschlüsse, sondern 8 digitale Ausgänge
> und 4 digitale Eingänge.

Und wozu ist die 9-poleige D-Sub-Buchse da?

Ein MDA oder CGA ist nicht dahinter.

von Georg (Gast)


Lesenswert?

Dirk B. schrieb:
> Und wozu ist die 9-poleige D-Sub-Buchse da?

Zum Einstellen der Parameter - ein Betrieb als serieller Server ist in 
der Software nicht vorgesehen. Das selber zu programmieren (TCP <-> 
RS232C) ist nicht so ganz trivial. Ein echter serieller Server wie XPort 
macht das von Haus aus.

Georg

von Dirk B. (dirkb2)


Lesenswert?

Georg schrieb:
> Zum Einstellen der Parameter - ein Betrieb als serieller Server ist in
> der Software nicht vorgesehen.

Es ist aber eine serielle Schnittstelle (es wurde bestritten dass der 
NET-IO eine hat)

Georg schrieb:
> Das selber zu programmieren (TCP <->
> RS232C) ist nicht so ganz trivial.

Soll ja auch nicht selber gemacht werden sondern (siehe ersten Post)

Dings schrieb:
> Kann mann dafür die Ulrich R. Firmware anpassen?

von Georg (Gast)


Lesenswert?

Dirk B. schrieb:
> Soll ja auch nicht selber gemacht werden

Was veranlasst dich zu der Annahme? Einen kommerziellen Auftrag wird er 
100%ig nicht vergeben, und für umsonst wäre das schon ein bisschen viel 
- meiner Meinung nach. Aber du kannst ihm ja gern das Angebot machen. 
Kennst du die Firmware so gut?

Georg

von c-hater (Gast)


Lesenswert?

Georg schrieb:

> Zum Einstellen der Parameter - ein Betrieb als serieller Server ist in
> der Software nicht vorgesehen.

So what? Flasht man halt eine andere drauf, wo soll das Problem sein?

> Das selber zu programmieren (TCP <->
> RS232C) ist nicht so ganz trivial.

Ach watt, man muß das ja garnicht vollständig selber programmieren. Man 
nimmt sowas wie Ethersex, konfiguriert das passend und schreibt dann 
eine kleine Anwendung, die diesen Unterbau benutzt.

Im Prinzip sind eigentlich nur zwei FIFOs zu programmieren. Naja, und 
das bissel Zeugs für Listen und Accept, um die Verbindung vom Client 
erstmal anzunehmen.

Und das Lustige ist, der wesentliche Teil der Anwendung ist beim Client 
dann genau der gleiche: zwei Fifos. Bloß für den Aufbau der Verbindung 
muß er halt nicht Listen und Accept machen, sondern Open (und vorher 
ggf. einen DNS-Lookup).

Kinderkram.

> Ein echter serieller Server wie XPort

Was macht einen "echten" seriellen Server aus? Doch nur, daß er nix 
anderes kann, das ist alles. Ansonsten funktioniert er nämlich ganz 
genauso wie einer, den man mit AVR-NetIO und ein bissel Software selbst 
gestrickt hat...

von Georg G. (df2au)


Lesenswert?

Man könnte auch nach Etherkiss suchen. Das setzt via RS232 Zeilen (SLIP 
mit CRC) in UDP um und verschickt sie. Da müsste man nur den CRC und 
SLIP Kram auf der seriellen streichen und noch ein Timeout für 
"langsames Tippen" einbauen.

von Dings (Gast)


Lesenswert?

Ohmanoman!!! was sind denn das schon wieder für Mikrokontroller.net 
typische Kindergartenstreiterreien...   ...hört denn das gar nicht mehr 
auf...

Ich wollte nur eine RS232 Streke von einem Messgerät zur Anzeige
Es werden da auch nur alle Paar minuten von der Anzeige ne Datenanfrage 
gestellt und dann antworte dass Messgerät und schiebt ein paar Bytes 
rüber.

Ich wollte die RS232-Ethernet-Brücke mit 2 Pollin Net-IOs erschlagen die 
ich unter anderem schon seit ewigkeiten liegen habe.
Und hätte dafür die Ulrich Rading Firmware genommen. Da ist ja schon 
soetwas wie Telnet implementiert. Blos ich habe zu wenig ahnung was ich 
da an der Firmware ändern muss dass mein vorhaben funktioniert.

Ich gehe mal dovon aus dass eines dann den Master machen muss und das 
andere dan den Slave. Dem Master müsste mann dann halt die IP vom Slave 
noch mitteilen.

Kann mir da bitte jemand helfen?

von holger (Gast)


Lesenswert?

>Blos ich habe zu wenig ahnung was ich
>da an der Firmware ändern muss dass mein vorhaben funktioniert.

Dann mach es ohne Ethernet.

von Mark R. (stevestrong)


Lesenswert?

Dings schrieb:
> Ich wollte die RS232-Ethernet-Brücke mit 2 Pollin Net-IOs erschlagen die
> ich unter anderem schon seit ewigkeiten liegen habe.
> Und hätte dafür die Ulrich Rading Firmware genommen. Da ist ja schon
> soetwas wie Telnet implementiert. Blos ich habe zu wenig ahnung was ich
> da an der Firmware ändern muss dass mein vorhaben funktioniert.
>
> Ich gehe mal dovon aus dass eines dann den Master machen muss und das
> andere dan den Slave. Dem Master müsste mann dann halt die IP vom Slave
> noch mitteilen.

So ist es. Da gibt es aber noch andere Einstellungen zu machen.

>
> Kann mir da bitte jemand helfen?

Hast du Programierkenntisse?

- Wenn ja, dann entweder machtst du wie hier vorgeschlagen 
(Beitrag "Re: RS232 Ethernet Strecke mit Pollin Net-IO"), oder muss du dich 
einfach in die Ulrich R. SW einarbeiten, zusätzlich brauchst du noch 
einen Programmer damit du den Kontroller mit der SW flashen kannst.

- Wenn nicht, und WLAN vorhanden, dann würde ich dir vorschlagen, nimmst 
du diese boards:
http://www.aliexpress.com/item/serial-uart-wifi-module-HLK-RM04-free-shipping/1351870217.html 
(ich benutze solche boards, sie funktionieren prima und sind wirklich 
zuverlässig).
Die Einstellungen kann mann auf der Web-Oberfläche machen. Verkabeln, 
Fertig.

: Bearbeitet durch User
von Mark R. (stevestrong)


Lesenswert?


: Bearbeitet durch User
von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Mark R. schrieb:
> Alternative zu NET-IO für eine RS232 Verbindung über LAN (Kabel) wäre
> noch dieses Modul:
> 
http://www.aliexpress.com/item/Serial-Port-Server-Module-Ethernet-Network-To-RS232-TCPIP-RJ45-To-TTL-Seckill-ENC28J60/1906651780.html

Nein, es sei denn, man kann die Firmware davon ändern, damit zwei dieser 
Dinger über Ethernet miteinander kommunizieren und ein transparente 
serielle Verbindung zur Verfügung stellen.

Zwei Ethernet-Deviceserver alleine genügen nicht, da fehlt der Teil, der 
beide miteiander "verheiratet".

von Dings (Gast)


Lesenswert?

Mark R hatt mich so weit verstanden.

Meine Programmierkenntnise bestehhen hauptsächlich aus BASCOM7Assembler 
und bei C etwa bei "Hallo Welt"

Mit der Ulrich Software hatte ich schon manche Erfolge. Nur in meinem 
Fall wäre gut wenn es über Eth. laufen würde. Vor allem weil es schon 
Vorhanden ist und ich "keine weiter Strippe" durch die Bude ziehen will.

von Dirk (Gast)


Lesenswert?

Vielleicht denk' ich ja zu kompliziert ;), aber ich würde zweimal

http://www.bilder.delock.de/produkte/orig/5162c950a92822.50715202.jpg

und zweimal

http://www.netzwerkkabel.biz/images/product_images/popup_images/151_0.jpg

hernehmen und fertig ist's.

Soll die Ethernetstrecke erhalten bleiben und 100Mbit reichen, kämen 
noch zweimal

http://www.digitus.info/typo3temp/pics/c778211cb3.jpg

dazu.

PS: Hersteller/Händler nur rein zufällig wegen der Bilder gewählt, das 
Zeuch kostet je nach Einkauf nur ein paar Cents. Selbst wenn's 'nen 
Zehner wird - dafür kann ich nicht lange Firmwares umstricken ;)

von Dirk (Gast)


Lesenswert?

http://www.netzwerkkabel.biz/images/product_images/popup_images/151_0.jpg

natürlich nur einmal, wenn die Strippen am Switch lang genug sind.

von Dings (Gast)


Lesenswert?

Dirk deine Idde funktioniert bei mir leider nicht da zwischen den beiden 
Switch die ich habe LWL habe. Und über die LWL leitung läuft auch schon 
etwas anderes und ich wollte kein Funk nehemn.

         Haus                    Gartenhaus
(Anzeige-NetIO-Switch)-LWL-(Switch-NetIO-Messgerät)

Ich würde gerne die Firmware umstricken nur weiß ich leider nicht wie 
ich dass anpacken muss. Könnt mir da jemand helfen oder hatt soetwas 
schoneinmal gemacht? Ich glaube nicht das das so viel ist da Telnet ja 
schon vorhanden ist, nur leider habe ich etwas zu wenig Netzwerk und C 
kenntnisse um es selbst hinzubekommen.

von c-hater (Gast)


Lesenswert?

Dings schrieb:

> nur leider habe ich etwas zu wenig Netzwerk und C
> kenntnisse um es selbst hinzubekommen.

Keine Arme -> keine Kekse.

Abhilfe: Arme wachsen lassen, also notorische Faulheit überwinden und 
lernen.

von Mark R. (stevestrong)


Lesenswert?

@Dirk
Vorsicht, was du vorgeschlagen hast, funktioniert nur wenn du eine 
direkte LAN verbindung hast (sprich "peer-to-peer"), one irgendein 
Ethernet-switch dazwischen. In diesem Fall kannst du die Adern so 
verwenden wie du willst. Ansonsten NICHT!

Rufus Τ. Firefly schrieb:
>> Alternative zu NET-IO für eine RS232 Verbindung über LAN (Kabel) wäre
>> noch dieses Modul:
>> http://www.aliexpress.com/item/Serial-Port-Server-...
>
> Nein, es sei denn, man kann die Firmware davon ändern, damit zwei dieser
> Dinger über Ethernet miteinander kommunizieren und ein transparente
> serielle Verbindung zur Verfügung stellen.
>
> Zwei Ethernet-Deviceserver alleine genügen nicht, da fehlt der Teil, der
> beide miteiander "verheiratet".

Doch, man kann die Dinge über ihren eigenen web-interface so 
konfigurieren, dass einer als "server" fungiert, der andere als 
"client". Dem "client" wird man die Adresse der "server" bekanntgeben, 
der "server" antwortet automatisch an den "client". Das Systetem kann 
man beliebig erweitern.

: Bearbeitet durch User
von Mark R. (stevestrong)


Lesenswert?

Dings schrieb:
> Ich würde gerne die Firmware umstricken nur weiß ich leider nicht wie
> ich dass anpacken muss. Könnt mir da jemand helfen oder hatt soetwas
> schoneinmal gemacht? Ich glaube nicht das das so viel ist da Telnet ja
> schon vorhanden ist, nur leider habe ich etwas zu wenig Netzwerk und C
> kenntnisse um es selbst hinzubekommen.

Ich hab leider kein NET-IO Board.
Aber C lernen, wenn du bereits BASCOM kennst, ist auch nicht sooooo 
schwierig.

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Mark R. schrieb:
> Doch, man kann die Dinge über ihren eigenen web-interface so
> konfigurieren, dass einer als "server" fungiert, der andere als
> "client".

Wenn das geht, dann ist das die Lösung. Danke für den Hinweis.

Damit ist das Problem von "Dings" gelöst.

von Dirk (Gast)


Lesenswert?

Mark R. schrieb:
> @Dirk
> Vorsicht, was du vorgeschlagen hast, funktioniert nur wenn du eine
> direkte LAN verbindung hast (sprich "peer-to-peer"), one irgendein
> Ethernet-switch dazwischen. In diesem Fall kannst du die Adern so
> verwenden wie du willst. Ansonsten NICHT!

Auch wenn Dings Glas liegen hat und damit die Lösung sowieso nicht in 
Frage kommt, will ich hier dennoch widersprechen: Diese hier

http://www.netzwerkkabel.biz/images/product_images/popup_images/151_0.jpg

sind ja gerade dafür da, das Kabel am Switch vorbei durchzuverbinden. 
Soll zusätzlich Ethernet erhalten bleiben, müssten mehrere hiervon

http://www.digitus.info/typo3temp/pics/c778211cb3.jpg

her, um vier Adern am Switch vorbei zu leiten.

Also: Wenn Kupfer läge, würde es problemlos funktionieren.

von Georg (Gast)


Lesenswert?

Rufus Τ. Firefly schrieb:
> Wenn das geht, dann ist das die Lösung.

Soweit ich mich erinnern kann, müsste das mit XPort auch gehen: man kann 
konfigurieren, dass ein XPort automatisch eine Verbindung aufbaut zu 
einer IP-Adresse. Wenn das ein anderer Xport ist, sollten sie die 
seriellen Daten austauschen können. Ausprobiert habe ich das allerdings 
nicht.

Georg

von Mark R. (stevestrong)


Lesenswert?

Ausprobiert hab ich die Dinge auch nicht, nur die WiFi-Module. Die sind 
super und auch einfach konfigurierbar.

Ich vertraue trotzdem dem was in der Beschreibung steht:
"1 Support TCP Server, TCP Client, UDP, UDP, Server four models
2 serial port baud rate can be 1200 ~ 256000 arbitrarily set
3 also support the setting parameters through the network and serial 
port , automatically save the setting parameter settings"

Mehr braucht man eigentlich gar nichts zu wissen.
Zur Sicherheit kann man Infos vom Verkaufer anfordern.

@Dirk
Mich würde schon interessieren wie das eigentlich funktionieren soll, 
ich komme nicht darauf. Hast du das schon mal probiert?

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Dirk will die RS232-Signale direkt über das Netzwerkkabel führen. Damit 
ein Switch nicht stört, will er die entsprechenden Kabel vom Switch 
trennen und am Switch vorbei direkt verbinden.

Wenn die RS232-Verbindung keine Handshake-Signale benötigt, werden nur 
zwei Aderpaare des Netzwerkkabels benutzt. Die beiden "übrigen" 
Aderpaare lassen sich für eine 10/100-MBit-Ethernet-Verbindung nutzen, 
um beides in ein Kabel hinein- und wieder herauszubekommen, werden 
"Y-Stücke" verwendet, im Extremfall braucht man vier davon.

So etwas kann man machen, aber es grenzt schon arg an Gefrickel.

von Mark R. (stevestrong)


Lesenswert?

Ah so, habs endlich kapiert :o)
Na ja, so würde es auch schon gehen, stimme zu.
Aber es hängt von der Länge der Strecke ab, ich weiss nicht genau ob 
RS232, in dieser Konfiguration, mehreren 10 m noch störungsfrei 
funktionieren würde.

: Bearbeitet durch User
von Joerg F. (felge1966)


Lesenswert?

War da nicht was mit LWL?


         Haus                    Gartenhaus
(Anzeige-NetIO-Switch)-LWL-(Switch-NetIO-Messgerät)

Da dürfte die Lösung mit Cu nicht funktionieren.

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Mark R. schrieb:
> ich weiss nicht genau ob
> RS232, in dieser Konfiguration, mehreren 10 m noch störungsfrei
> funktionieren würde.

Bei 9600 Baud? Locker.

Joerg F. schrieb:
> War da nicht was mit LWL?

Ja, daher ist Dirks Vorschlag auch nur als Lösung für andere Leute zu 
gebrauchen, die ein vergleichbares Problem haben.

: Bearbeitet durch User
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
Noch kein Account? Hier anmelden.