Probleme mit TELNET_LOG

Begonnen von sps-boss, 16. September 2011, 19:21:55

Vorheriges Thema - Nächstes Thema

0 Mitglieder und 1 Gast betrachten dieses Thema.

sps-boss

Hi,

ich habe das TELNET_LOG mit dem Test-Programm das in der Lib war ausprobiert. Die PLC ist eine Beckhoff CX1000-0011 mit Win-CE. Prinzipiell funktioniert das Beispiel auch. Es gibt aber ein paar Probleme der einer sinnvollen Nutzung im Wege sehen.

- Die Telnet Login-Aufforderung wird angezeigt, gleichzeitig werden die Daten angezeigt. Ist halt verwirrend.
- Habe Telnet mit Hyperterminal und mit CMD ausprobiert, bei beiden gibt es ein durcheinander mit den Attributen. Beim einlogen ist die Schrifftfarbe sw/ws und nachher gr/sw aber nur wo Text kommt. Das sieht richtig doof aus.
- Die Daten werden nur beim Ersten mal angezeigt. Wenn man sich neu verbindet kommt nichts mehr. 

Was kann ich machen um dies Problem zu umgehen?


peewit

#1
hallo

welches demo hast du denn nun probiert
auf welchem betriebssystem läuft dein telnet-client mit welchen einstellungen

kannst du einfach ein paar screenshots online stellen, dann kann ich besser sehen, was bei dir passiert
bzw welche demo du dann genau meinst
optional vielleicht auch gleich dein demoprojekt, dann kann ich schneller testen wie es bei mir sich verhält

was ich allerdings schon kenne ist das problem mancher telnet-clients mit meiner ansi-codierung
es gibt nur wenige telnet-clients die das alles fehlerfrei mitmachen

ich habe zum test nochmal aktuelle screenshots gemacht
win-xp telnet-client mit dem vorhanden demoprogrammen
plattform: twincat softplc auf basis win xp

aber noch kenne ich dein problem nicht wirklich


[gelöscht durch Administrator]

sps-boss

Hi,
also ich verwende Win2k und dort gibt es den C:\WINDOWS\system32\TELNET.EXE und das HyperTerminal. Andere Software zu Instalieren ist mir nicht erlaubt. Die PLC ist eine Beckhoff CX1000-0011 mit Win-CE. Das Testprogramm TELNET_LOG_DEMO2 habe ich aus der Lib (beckhoff_network_112.lib) geholt. Hier ist das Programm zum Importieren: "http://pastebin.com/ydcsrKiP".


[gelöscht durch Administrator]

peewit

#3
hallo


also das kommt mir bekannt vor.... aber hier bin ich meiner meinung nach unschuldig
das habe ich selber schon bemerkt, das manche telnet-client nach einer gewissen anzahl an durchgescrollten zeilen plötzlich nicht mehr wissen was die gesetzte background farbe ist.

möglicher ausweg:
ich nehme an das dein win2k telnet-client standardmässig mit weissen hintergrunf und schwarzer schrift startet
das kannst du wahrscheinlich auch ändern , auf weiss auf schwarz

andere telnet-client haben dieses problem nicht

ein weiterer weg wäre beim telnet_log bzw. beim telnet_pring baustein die farbe überhaupt abzuschalten, das ist aber nicht vorgesehen

beweiss:
im anhang siehst du dein telnet_log2_demo auf einer beckhoff CX maschine mit einem win7 telnet_client (cmd basis) betrachtet
und da passiert das farben problem nicht !

mit dem winxp telnet-client (cmd basis) ist das problem auch nicht aufgetreten
wobei der winxp telnet_client mit der grafischen oberfläche hat statt schwarz aber auch grau/wiess dargestellt !

-----------------------------

problem nummer 2

nach verbindung beenden und wiederverbinden kommt "login" etc...

da bin ich 100% umschuldig !!

deine sps hat selber einen telnet-server integriert der auch am standard-port 23 arbeitet
das überhaupt zuerst einmal das telnet-log programm sichtbar wird, ist schon ein zufall

das was du das sieht kommt 100% vom sps betriebssystem !

zwei telnet-server auf einem gerät das geht natürlich nicht !
da du wahrscheinlich den sps telnet-server nicht auf einen anderen port legen kannst , müsstest du
im sps programm einen anderen port vorgeben

leider ist die portnummer im telnet_print direkt hinterlegt, und ist nicht variabel somit müsstest du den port dort direkt ändern

10: (* Bei IP_Control anmelden und auf freigabe warten *)
IF ip_state = BYTE#3 THEN

(* IP Datenverkehr einrichten *)
IP_C.C_PORT := WORD#23; (* Portnummer eintragen *)




ich habe dir zum testen einen telnet_print baustein gemacht der sämtliche farben (ansi codes ignoriert)
somit sollten die farben probleme beim scrollen nicht auftreten (theoretisch zumindest)

vorsicht, dann gehen aber andere demoprogramme nicht mehr korrekt, aber das soll ja nur für dich zum testen sein


[gelöscht durch Administrator]

sps-boss

Hi,

Gut das mit dem ANSI Farben ist jetzt OK, mit deinem Beispiel werden jetzt keine Farben mehr verändert. Grau auf Schwarz sah halt schon komisch aus.
Leider kann ich mich immer noch nur einmal verbinden und das obwohl ich den Prot geändert habe (auf 9999). Beim zweiten Verbindungsversuch gibt es einen Timeout. Ich habe mein Testprogramm jetzt mal im Anhang mit geschickt (ohne pastebin)

[gelöscht durch Administrator]

peewit

hallo

also in deinem testprogramm ist ansich kein fehler drinnen
ich kann beliebig oft den telnet-client beenden und wieder neu verbinden

habe mich abwechselnt mit win7 und winxp telnet-client mit der sps verbunden

kein problem

warum es bei dir probleme gibt, kann ich aufgrund fehlender probleme nicht klären


sps-boss

Hi,

Also dann ist erst mal klar das die Oscat_NetLib112 nicht auf meiner Beckhoff CX1000-0011 (386 Win-CE) läuft.

Ich habe das gleiche Problem auf einer Beckhoff CX1001-0021 (386 Win-XP). Ich verwende dafür den TwinCAT TPC/IP Server v1.0.51. Nach dem Einschalten der CX, geht das Telnet, wenn ich dann den Telnet Client beende und wieder verbinde bekomme ich keine Verbindung mehr.

Ich könnte das Telnet noch auf einer Beckhoff BK9000 testen, habe aber keine Lust mehr.

Kanst du das in die Doku reinschreiben, das es mit CX100X Probleme gibt?




peewit

#7
hallo

wenn du eine verbindung aufgebaut hast (sps ist server , und telnet ist natürlich client) und den telnet-client beendest dann wird normalerweise
bei der datenempfangsabfrage ein errorcode gemeldet wie normalerweise 0x8004 (verbindungsabbruch durch remote)

was anscheinend bei deiner testumgebung nicht passiert !

der nächste schritt wäre , einen angepassten baustein anzuwenden, um herauszufinden was bei dir passiert

nachdem du keine luste mehr hast , ist die sache wohl erledigt
ohne mitarbeit, gibt es auch keine verbesserung

wenn du aber mitheilfen willst, oscat zu verbessern, dann gib mir bescheid, dann werde ich mir einen fangschaltung überlegen, damit wir herausfinden
was bei dir passiert.


hast du irgendeine bibliothek die als server arbeitet, und dieses problem nicht aufweist !
wenn ja welche, dann könnte ich schauen was dort anders gemacht wird.


ich habe dir einen test-baustein mitgeschickt
öffne die network.lib und importiere den baustein ip_control.exp
probier mal ob du dich nun mehr als 1 x verbinden kannst



[gelöscht durch Administrator]

sps-boss

Hi,

habe IP_CONTROL eingebunden. Ich kann immer nur noch einmal Verbindung aufbauen, beim zweiten mal kommt nichts. Habe die Variable fbReceive.nErrIDd beobachtet. Nach dem Einschalten ist sie =0. wenn ich den Telnet verbinde ist sie immer noch =0. Wenn ich den TelnetClient abmelde dann ist die Variable 32772.

[gelöscht durch Administrator]

peewit

#9
hallo sps-boss

probiere mal die neue lib im anhang
importiere keine bausteine aus der alten network.lib , oder die was ich dir einzeln gegeben habe !

du musst noch im baustein "telnet_print" die telnet port nummer manuell anpassen
da du sonst eine kollision mit den winCE eigenen telnet_server hast





[gelöscht durch Administrator]

sps-boss

Hi

mit der neuen beckhoff_network_120.lib funktionierts endlich.

Das der Telnet Server der Win-CE den gleichen Port verwendet ist kein Problem.

Danke