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

Ergebnis 1 bis 5 von 5

Thema: Zugriff auf WinPLC-Engine mit externem Programm

  1. #1
    Registriert seit
    20.02.2009
    Beiträge
    3
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo lieber Leser,
    mittels der WS7_S7AG.DLL kann man mit den Funktionen S7AG_GetPeriEPtr() und S7AG_GetPeriAPtr() auf den Peripheriebereich der Ein- und Ausgänge der Software-SPS zugreifen. D.h. ein Byte auslesen bzw. ein Byte in die Software-SPS schreiben.
    Meine Frage:
    Wie sind die Bytes den digitalen und analogen Ein- Ausgängen der Software-SPS zugeordnet?
    Grüße aus Mittelfranken
    Murdock73
    Zitieren Zitieren Zugriff auf WinPLC-Engine mit externem Programm  

  2. #2
    Registriert seit
    18.08.2006
    Beiträge
    92
    Danke
    0
    Erhielt 24 Danke für 22 Beiträge

    Standard

    Hallo,

    normalerweise kann der Zugriff über TCP/IP mittels Protokoll (von z.B. S7-Programmiersoftware oder Visualisierung usw.) erfolgen.
    Wieso möchten Sie über die DLL-Funktionen auf die SoftSPS zugreifen?

    Anbei die Beschreibung wie dies machbar ist:

    BYTE* _export FAR PASCAL S7AG_GetPeriEPtr()
    Liefert einen BYTE-Zeiger auf den Peripheriebereich der Eingänge.
    Dieser Bereich ist 2048 Byte groß.
    Beispiel in C:
    BYTE *pInputs=S7AG_GetPeriEPtr();
    pInputs[0]=200; //Schreibt 200dezimal in das Eingangsbyte 0
    pInputs[2]=50; //Schreibt 50dezimal in das Eingangsbyte 2

    BYTE* _export FAR PASCAL S7AG_GetPeriAPtr();
    Liefert einen BYTE-Zeiger auf den Peripheriebereich der Ausgänge.
    Dieser Bereich ist 2048 Byte groß.
    Beispiel in C:
    BYTE *pOutputs=S7AG_GetPeriAPtr();
    //Liest das Ausgangsbyte 0 und schreibt es in die Variable AB0
    BYTE AB0=pOutputs[0];
    //Liest das Ausgangsbyte 1 und schreibt es in die Variable AB1
    BYTE AB1=pOutputs[1];

    Gruss
    T.Weiss
    Zitieren Zitieren WinPLC-Engine  

  3. #3
    Murdock73 ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    20.02.2009
    Beiträge
    3
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Danke T.Weiss für die schnelle Antwort. Die Zugriffsmethoden via DLL kenne ich. Was mir nicht klar ist, was die Bytes bedeuten? Welchen Signalen sind sie zugeordnet?

    Meine Fragen zeigen, dass ich mit der Thematik SPS noch nicht vertraut bin und ich mich erst in diese Thematik einarbeite. Meine Aufgabe ist es, eine Prozessvisualisierung mit WinCC zu erstellen. Um das Projekt auf einem PC ohne die zugehörige Anlage simulieren zu können, möchten ich WinPLC verwenden. Damit ich den Ablauf und die Tests automatisieren kann, will ich mit einem externem Programm die Tests steuern. Dies müsste meiner Ansicht nach doch funktionieren.
    Murdock73
    Zitieren Zitieren WinPLC-Engine  

  4. #4
    Registriert seit
    18.08.2006
    Beiträge
    92
    Danke
    0
    Erhielt 24 Danke für 22 Beiträge

    Standard

    Hallo,
    wie schon geschrieben
    BYTE* _export FAR PASCAL S7AG_GetPeriEPtr()
    Liefert einen BYTE-Zeiger auf den Peripheriebereich der Eingänge.
    Dieser Speicherbereich entspricht also den Eingangsbaugruppen einer realen CPU.
    Das Byte 0 des Speicherbereichs entspricht den Eingängen E0.0 bis E0.7.
    Das Byte 1 des Speicherbereichs entspricht den Eingängen E1.0 bis E1.7.
    Sie Verändern den Speicherbereich um der SoftSPS andere Eingangsinformationen zu geben.

    BYTE* _export FAR PASCAL S7AG_GetPeriAPtr();
    Liefert einen BYTE-Zeiger auf den Peripheriebereich der Ausgänge.
    Dieser Speicherbereich entspricht also den Ausgangsbaugruppen einer realen CPU.
    Das Byte 0 des Speicherbereichs entspricht den Ausgängen A0.0 bis A0.7.
    Das Byte 1 des Speicherbereichs entspricht den Ausgängen A1.0 bis A1.7.
    Sie lesen den Speicherbereich um die Ausgangsresultate der SoftSPS zu ermitteln.

    Sie könnten allerdings Ihr Vorhaben auch mit unserer Prozess-Simulation SPS-VISU realisieren.
    In SPS-VISU arbeitet die gleiche SoftSPS und Sie können mit Objekten eine virtuelle Anlage zusammenbauen
    und für die Simulation nutzen.
    Infos finden Sie unter:
    http://www.mhj-software.com/de/VISU.HTM

  5. #5
    Murdock73 ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    20.02.2009
    Beiträge
    3
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Danke für die ausführliche Information und den Hinweis. Ich habe es jetzt verstanden und kann mich nun weiter in das Thema einarbeiten.
    Murdock73

Ähnliche Themen

  1. Antworten: 0
    Letzter Beitrag: 12.09.2011, 21:44
  2. Zugriff auf Programm ohne Projktdatei
    Von Timbo84 im Forum Simatic
    Antworten: 8
    Letzter Beitrag: 25.11.2010, 19:26
  3. WinPLC Engine und Step7 lite - Simulation
    Von Prybe im Forum Simatic
    Antworten: 3
    Letzter Beitrag: 30.06.2009, 12:50
  4. Schutz vor unberechtigten Zugriff auf das Programm
    Von B-K im Forum Sonstige Steuerungen
    Antworten: 0
    Letzter Beitrag: 02.08.2008, 13:20
  5. no script execution engine
    Von chriscruiser im Forum HMI
    Antworten: 1
    Letzter Beitrag: 12.07.2007, 13:01

Lesezeichen

Berechtigungen

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