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

Page 1 of 2 12 LastLast
Results 1 to 10 of 16

Thread: Hyper Terminal -> C#

  1. #1
    Join Date
    03.04.2004
    Posts
    128
    Danke
    11
    Erhielt 14 Danke für 10 Beiträge

    Default


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo,

    ich möchte aus einem Omron ZFX-Controller (Kamera) Messwerte über die Ethernet-Schnittstelle auslesen.
    Mit Hyper Terminal habe ich schon eine Verbindung aufgebaut und wenn ich 'MEASURE' eingebe triggere ich die Kamera und bekomme den Messwert angezeigt. Die Technik funktioniert also!
    Frage: Wie muss ich in C# 2008 auf die Ethernet-Schnittstelle zugreifen damit ich die Messwerte wie im Hyper Terminal angezeigt bekomme?

    Grübel
    Reply With Quote Reply With Quote Hyper Terminal -> C#  

  2. #2
    Join Date
    23.10.2008
    Location
    aktuell: planet erde
    Posts
    158
    Danke
    16
    Erhielt 23 Danke für 22 Beiträge

    Default

    hola joerg123,

    ich würde da in richtung dll gehen.
    kannst ja mal probieren mit z.b.
    aglink v deltalogic,...

    greetinx


    sue
    ...dear lord, please grant me the ability to punch people in the face over standard TCP/IP...

  3. #3
    Join Date
    27.10.2005
    Location
    Schwäbisch Gmünd
    Posts
    5,629
    Danke
    698
    Erhielt 996 Danke für 809 Beiträge

    Default

    Ich würde mal schauen, auf welche IP-Adresse und welchen Port und mit welchem Protokoll (TCP oder UDP) Hyperterminal auf die Kamera zugreift. Dann die entsprechende Klasse von .net verwenden und gemäß den obigen Daten parametrieren. Ich gehe jetzt einfach mal davon aus, dass der PC Client und die Kamera Master ist. Nach einem erfolgreichen Verbindungsaufbau den Text 'MEASURE' schicken und die erhaltenen Daten anzeigen. Dies sollte, wenn Hyperterminal das Ganze anzeigt, reiner Text sein.
    BTW: AGLink wird nicht funktionieren, das dort die Siemens-SPezialprotokolle abgehandelt werden.
    Rainer Hönle
    DELTA LOGIC GmbH

    Die Kritik an anderen hat noch niemandem die eigene Leistung erspart (Noël Coward)

  4. #4
    Joerg123 is offline Erfahrener Benutzer
    Themenstarter
    Join Date
    03.04.2004
    Posts
    128
    Danke
    11
    Erhielt 14 Danke für 10 Beiträge

    Default

    Hmmmm,

    also mir würde eigentlich helfen wenn ich wüsste wie Hyper Terminal auf Ethernet zugreift, theroetisch könnte ich doch die Befehle übernehmen, denn mit Hyper Terminal funktioniert es ja.

  5. #5
    Joerg123 is offline Erfahrener Benutzer
    Themenstarter
    Join Date
    03.04.2004
    Posts
    128
    Danke
    11
    Erhielt 14 Danke für 10 Beiträge

    Default

    Quote Originally Posted by Rainer Hönle View Post
    Ich würde mal schauen, auf welche IP-Adresse und welchen Port und mit welchem Protokoll (TCP oder UDP) Hyperterminal auf die Kamera zugreift. Dann die entsprechende Klasse von .net verwenden und gemäß den obigen Daten parametrieren. Ich gehe jetzt einfach mal davon aus, dass der PC Client und die Kamera Master ist. Nach einem erfolgreichen Verbindungsaufbau den Text 'MEASURE' schicken und die erhaltenen Daten anzeigen. Dies sollte, wenn Hyperterminal das Ganze anzeigt, reiner Text sein.
    BTW: AGLink wird nicht funktionieren, das dort die Siemens-SPezialprotokolle abgehandelt werden.
    Hallo,
    HyperTerminal greift mit (TCP/IP(WinSock)) Port 23 auf den Controller zu.
    Woran erkenne ich wer Master und wer Slave ist??

  6. #6
    Join Date
    27.10.2005
    Location
    Schwäbisch Gmünd
    Posts
    5,629
    Danke
    698
    Erhielt 996 Danke für 809 Beiträge

    Default

    Quote Originally Posted by Joerg123 View Post
    Hmmmm,

    also mir würde eigentlich helfen wenn ich wüsste wie Hyper Terminal auf Ethernet zugreift, theroetisch könnte ich doch die Befehle übernehmen, denn mit Hyper Terminal funktioniert es ja.
    Es geht hier nicht nur um Befehle. Über Ethernet muss (bei TCP) zuerst eine Verbindung aufgebaut werden. Danach können die "Befehle" gesendet werden. Bei einem Telefon macht es ja auch Sinn zuerst zu wählen und nicht gleich zu reden.
    Rainer Hönle
    DELTA LOGIC GmbH

    Die Kritik an anderen hat noch niemandem die eigene Leistung erspart (Noël Coward)

  7. #7
    Join Date
    27.10.2005
    Location
    Schwäbisch Gmünd
    Posts
    5,629
    Danke
    698
    Erhielt 996 Danke für 809 Beiträge

    Default

    Quote Originally Posted by Joerg123 View Post
    Hallo,
    HyperTerminal greift mit (TCP/IP(WinSock)) Port 23 auf den Controller zu.
    Woran erkenne ich wer Master und wer Slave ist??
    Der Client baut die Verbindung zum Server auf, ist also aktiv. Dies wird hier der Fall sein. Einfach mal die Doku der Winsock-Klasse (oder wie die heißt) von .net studieren. Mit diesen Parametern sollte (fast) alles klar sein.
    Rainer Hönle
    DELTA LOGIC GmbH

    Die Kritik an anderen hat noch niemandem die eigene Leistung erspart (Noël Coward)

  8. #8
    Joerg123 is offline Erfahrener Benutzer
    Themenstarter
    Join Date
    03.04.2004
    Posts
    128
    Danke
    11
    Erhielt 14 Danke für 10 Beiträge

    Default

    Hallo, das scheint ja einfacher zu sein wie ich dachte, habe mit folgendem Code fehlerfrei Verbindung aufgebaut und anscheinend auch irgendwelche Daten bekommen, damit komme ich erst einmal weiter, Vielen Dank!!

    class Program
    {
    static void Main(string[] args)
    {
    Console.WriteLine("Versuch zu verbinden");
    TcpClient t = new TcpClient("192.168.202.250", 23);

    Console.WriteLine("Verbindung aufgebaut! Warte auf Stream...");
    Stream str = t.GetStream();

    Console.WriteLine("Stream erhalten ... Ende!");
    t.Close();
    }
    }

  9. #9
    Joerg123 is offline Erfahrener Benutzer
    Themenstarter
    Join Date
    03.04.2004
    Posts
    128
    Danke
    11
    Erhielt 14 Danke für 10 Beiträge

    Default

    So, nun bekomme ich 50 aufeinanderfolgende Messwerte in der Console angezeigt, Juhu

    static void Main(string[] args)
    {
    TcpClient t = new TcpClient("192.168.202.250", 23);

    StreamReader sr = new StreamReader(t.GetStream());

    for (int i = 0; i < 50; i++)
    {
    Console.WriteLine("Wert Nr. {0}:{1}",i+1,sr.ReadLine());
    }

    sr.Close();
    t.Close();
    }

  10. #10
    Join Date
    27.10.2005
    Location
    Schwäbisch Gmünd
    Posts
    5,629
    Danke
    698
    Erhielt 996 Danke für 809 Beiträge

    Default


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Na also, war doch gar nicht so schwer
    Rainer Hönle
    DELTA LOGIC GmbH

    Die Kritik an anderen hat noch niemandem die eigene Leistung erspart (Noël Coward)

Similar Threads

  1. Step 7 Terminal Module
    By biofranz in forum Simatic
    Replies: 0
    Last Post: 04.02.2018, 13:17
  2. Replies: 2
    Last Post: 20.12.2016, 11:08
  3. Replies: 0
    Last Post: 07.09.2015, 12:34
  4. Microsoft Hyper-V
    By Rosenberger in forum PC- und Netzwerktechnik
    Replies: 8
    Last Post: 10.04.2014, 07:43
  5. CP 343-1 Lean an Hyper-Terminal
    By Guste in forum Simatic
    Replies: 12
    Last Post: 23.05.2012, 13:49

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •