Überwachungsprogramm schreiben

Jumpinjack

Level-1
Beiträge
52
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,

muss für eine Firma ein Überwachungsprogramm in ST (in plattformübergreifender Norm) für Beckhoff IPCs und Möller SPSen schreiben. Es sollen bestimmte Programmdaten z. B. (Uhrzeitsynchronisation, Maschinenlaufzeiten) von den angeschlossenen SPSen zu einer Soft SPS auf dem Notebook über die Ethernetschnittstelle übertragbar und abrufbar sein.
Hat jemand ne Idee wie man das bewerkstelligen kann? Gibt es da fertige Bausteine für?
Bitte helft mir!
 
Hi,

für Beckhoff-Geräte kann ich dir weiterhelfen. Da könntest du die ADS-Bausteine verwenden. Mit denen kannst senden und empfangen. Die befinden sich in der system.lib
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Wenn ich den Bibliotheksverwalter in TwinCat öffne hab ich da nur die standard.lib. wo finde ich die denn? Und wenn ich neue Bibliotheken einbinden will ist die system.lib in der Liste nicht zu finden.
 
Zuletzt bearbeitet:
Ich verwende in einem Projekt den ADSWRITEIND und ADSWRITERES und den ADSWRITE Baustein.
Ich bekomme von einem Rechner übers Inet Daten zugeschickt.

Ich hab wie folgt angefangen:

(*---Erkennung Kommunikationsparameter---*)
FBadsWRITEIND ();

(*---Timer für Verbindungsstatus---*)
timer_commStatus(IN:= NOT(FBadsWRITEIND.VALID), PT:=T#5s ,Q=>commfailure);

IF (FBadsWRITEIND.VALID) THEN
ADSnetid:=FBadsWRITEIND.NETID;
ADSport:= FBadsWRITEIND.PORT;
ADSinvokeID:=FBadsWRITEIND.INVOKEID;
ADSidxgrp:=FBadsWRITEIND.IDXGRP;
ADSidxoffs:= FBadsWRITEIND.IDXOFFS;
ADSlength:= FBadsWRITEIND.LENGTH;
ADSdataadress:= FBadsWRITEIND.DATAADDR;
(*---Erkennung ende---*)

MEMCPY(ADR(ab8RecvBuffer), ADSdataadress, ADSlength);
RecBufToStr(); (* Receivebuffer in Strukturen kopieren *)
FBadsWRITEIND( CLEAR := TRUE);
FBadsWRITERES.NETID:=ADSnetid;
FBadsWRITERES.PORT:= ADSport;
FBadsWRITERES.INVOKEID:=ADSinvokeID;
FBadsWRITERES.RESULT:=0;
FBadsWRITERES(RESPOND:=TRUE);
commfailure:=FALSE;
ELSE
FBadsWRITEIND( CLEAR:=FALSE);
END_IF


Zur Erklärung:
Mit dem WRITEIND erkenne ich, ob ein Telegramm angekommen ist. Der WRITERES gibt dem Sender ein OK zurück.
 
muss für eine Firma ein Überwachungsprogramm in ST (in plattformübergreifender Norm) für Beckhoff IPCs und Möller SPSen schreiben.
...
Hat jemand ne Idee wie man das bewerkstelligen kann? Gibt es da fertige Bausteine für?
Mann du hast es ja echt drauf. Bin leider erst SPS Anfänger. KAnn man dich irgendwie per Email oder so kontaktieren?
Dann solltest du erstmal die Grundlagen beherrschen. Sonst ist euch oder evtl. dem Kunden nicht geholfen.

Beckhoff-Steuerungen können auf verschiedenen Wegen kommunizieren, z. B. ADS, Modbus/TCP, OPC (auch UA) und diverse Feldbussysteme. Teilweise unter Nutzung kostenpflichtigen Bibliotheken.
Jeder Kommunikaitonsweg hat Vor- und Nachteile. Hier muss erstmal der effizienteste Weg für die Aufgabe gefunden werden.
Innerhalb der Beckhoff-Welt ist sicherlich ADS die beste Methode. Es werden Funktionalitäten zum Schreiben und Lesen von Daten angeboten.

Dann sollte aber erstmal die Methode festgelegt werden, wie diese Überwachung am besten von statten gehen soll. Über eine Watchdog-Funktion (Bit togglen) oder Austausch von Statusdaten usw...

Off Topic (geht an niemanden persönlich!!!):
Wir haben immer wieder Probleme mit der Kopplung oder dem Datenaustausch von Anlagen(teilen), weil deren Hersteller nur oberflächliches Wissen haben und Programme produzieren, die "so gerade" funktionieren. Aber wenn's dann mal ein Problem gibt, kostet es enorm viel Zeit und Nerven, die Fehler zu finden oder Erweiterungen zu adaptieren.
... Daher bitte an alle Programmierer, wenn ihr was neues anpackt:
erst einmal die Basics intus haben, Funktionsweisen verstehen und dann anhand klarer Strukturen anfangen zu programmieren!
 
Das ADS-Protokoll ist zwar offengelegt, wird aber m. W. n. von keinem anderen Steuerungshersteller unterstützt und ist auch nicht genormt.

Funktioniert bei allen Beckhoff-Steuerungen (dort standardmäßig implementiert und notwendig für die Funktion), aber ohne umfangreiche Programmierarbeit nicht bei Fremdsteuerungen.
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Beckhoff-Steuerungen können auf verschiedenen Wegen kommunizieren, z. B. ADS, Modbus/TCP, OPC (auch UA) und diverse Feldbussysteme.
Ich würde OPC (auch UA) empfehlen, selbst wenn mir nicht bekannt ist ob es OPC UA schon für Möller gibt. Da müsstest du mal anfragen. Wenn Möller das nicht selber macht, gibt es bestimmt OPC-Server von Drittanbietern (Matrikon, Kepware, Softing, ...)

Vorteil wäre das wenn mal eine SPS hinzukommt oder du das selbe Programm mal mit noch einem dritten oder vierten SPS-Hersteller (z.B. Siemens, Phönix, Mitsubishi, etc.) verwenden willst, dann bist du mit OPC (insbesondere UA) auf der sicheren Seite. OPC gibt es für jede SPS eines jeden Herstellers. OPC UA ist noch nicht so verbreitet, gibt es aber auch schon einiges.
 
Zurück
Oben