ProfiLab TCP Problem

Antworten
miau
Beiträge: 8
Registriert: Dienstag 22. November 2011, 09:01

ProfiLab TCP Problem

Beitrag von miau » Freitag 16. Dezember 2011, 12:40

Hi,

ich habe gerade folgendes Prolbem.
Ich habe einen "Server" gebaut mit TCP-Bausteinen.
Jetzt habe ich quasi zwei "Clients".
Das ganze soll vom Datenaustausch so funktionieren:

Client1--->Server--->Client2
und auch andersrum
Client1<---Server<----Cient2

Das ganze funktioniert leider nicht so richtig.
Ich kann von Client1 an den Server was schicken. Aber vom Server dann nicht weiter an Client2.
Ich habe beim Server je zwei TCP-Bausteine. Einen für den Empfang von C1 und einen zum weiterleiten an C2.
Und eben der, der weiterleiten soll funktioniert nicht richtig. Er leite das Signal einfach nicht weiter an C2.

Andersrum funktioniert das Ganze komischerweiße. Also wenn ich bei C2 an TX was anlege sehe ich das auf dem Server bei RX.
Wenn ich jetzt bei C2 den EN mit nem Taster versehe, und den Baustein somit immer An/Aus mache, dann zieht er sich immer das Signal vom Server. Aber halt nur nach jedem Klicken.

Ich dachte die Bausteine können problemlos Daten in beide Tichtungen senden, nachdem die Verbindung aufgebaut wurde.
Alle ham nen anderen Kanal und ich habe erst den Server und C1 und dann C2 gestartet.

MfG
Nico

edit:
Also ich habe bei C1 einen TCP Baustein (Client) mit nem analogem Schieber an TX und nem Display an RX.
Beim Server habe ich zwei TCP Bausteine (Server) RX1-->TX2 und RX2-->TX1
Beim C2 habe ich das selbe wie bei C1.
Und eben die Weiterleitung von Schieber bei C1 an C2 funktioniert nicht.

Jetzt kommt aber das beste: Sobald ich die Bausteine die ich habe Duplizieren, den Kanal beim neuen habe ich natürlich geändert, gehen auf einmal beide o_O
Sobald ich die Kopie wieder lösche geht es wieder nicht...wie geht denn das bitte?

Actrosfahrer
Beiträge: 4
Registriert: Dienstag 13. Dezember 2011, 15:32

Re: ProfiLab TCP Problem

Beitrag von Actrosfahrer » Samstag 17. Dezember 2011, 20:56

Wie hast du die TCP´s eingestellt? Also Port´s und Host´s??
Solltest die server Host in beiden Bauteilen gleich einstellen, der port sollte sich nur ändern. Also port nr. 30001 im TCP 1
für Client 1 und im TCP 2 port nr. 30002 für Client 2.
Die selben mußt du dann nur noch in den client anwendungen eingeben und es sollte gehn.

Gruß Ralf


P.S. Du solltest die EN eingänge nicht mit einem Taster belegen sondern mit einem schalter.
Der Taster geht wieder LOW sobald du los läst, der schalter bleibt solange HIGH bis du ihn wieder auschaltest.
Nur mit einem HIGH signal an dem EN eingang arbeitet der TCP Baustein oder alle anderen bauteile die ein EN eingang haben.

tom_g
Beiträge: 215
Registriert: Freitag 31. Oktober 2008, 14:59

Re: ProfiLab TCP Problem

Beitrag von tom_g » Sonntag 18. Dezember 2011, 09:09

Hi miau,

ist es das, was Du suchst ?
In dem Fall fungiert der server als repeater (Drehscheibe) für viele clients. Diese Clients können durchaus in parallelen PL-Projekten, und übers Netz verteilt sein.

siehe Hilfe aus PL
"Multi-Client-Anwendungen
Es ist durchaus möglich, dass sich mehrere Clients gleichzeitig mit einem Server verbinden. Beispielsweise könnte ein Server in Hamburg einen Temperaturwert messen, und drei Clients in Berlin, Frankfurt und München könnten diesen Wert ohne Probleme parallel abfragen. Auch könnte ein Server zu hause die Alarmanlage steuern, die sich dann z.B. von einem Client im Büro, oder jedem anderen Ort der Welt ein- und ausschalten liesse. Ein Problem tritt erst dann auf wenn beide Clients gleichzeitig Werte an den Server übertragen: Client 1 befiehlt AUS, Client 2 befiehlt EIN!? In diesem Fall "siegt" die Einstellung des Clients, der seinen Wert zuletzt übermittelt hat. Dieses Verhalten ist zwangsläufig und muss evtl. beim Entwurf der Anwendung berücksichtigt werden, indem man z.B. das Senden mit dem Steuereingang EN verhindert. "


Ich weiss nicht, ob PL den socket-traffic eventgesteuert (= on change) übermittelt. Zu Vorsicht habe ich daher für die Rekursion ein Sample-Hold-Element eingefügt und sie hiermit zeitdiskretisiert. Weiss jemand von Euch, ob diese Massnahme nötig ist ?

Gruss Thomas
Dateianhänge
server_client_1.prj
(8.01 KiB) 411-mal heruntergeladen
Curiousity makes us progress !

tom_g
Beiträge: 215
Registriert: Freitag 31. Oktober 2008, 14:59

Re: ProfiLab TCP Problem

Beitrag von tom_g » Mittwoch 21. Dezember 2011, 21:42

Hi,

ich beantworte meine Frage halt selbst:

die Rekursion braucht keine Sample/Hold Diskretisierung, sie kann direkt zurückgeführt werden. Daten werden nur bei Aenderung von Werten gesendet. Sie können z.B. mit dem Tool "SocketSniff" von http://www.nirsoft.net/ untersucht werden.

Viele Grüsse von

Thomas
Curiousity makes us progress !

Antworten

Zurück zu „Thema: Schaltung und Bauteile“