[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: OPC unter Debian?



Thomas Schmidt schrieb:
Nun, ich hab jetzt ein wenig Ahnung, was das ist, das OPC, aber nicht wirklich. Hätte ich Dein Problem, würde ich versuchen, einen zweiten Server schön langsam daneben aufzubauen.

Das habe ich auch vor, habe da eine Maschine, die nicht genutzt wird. Diese besitzt drei Ethernet -Schnittstellen. so dürfte die Anbindung an sich kein Problem sein. In der Regel nutzte ich eine für das Polen zu der Hardware (CPU), eine für die Klient -Anbindung und eine für die Administration. So ist gewährleistet, dass die Netze getrennt bleiben.

Die Umstellung ist interessant und lehrreich, ich vermute, er geht nicht von heute auf morgen.
Wie Wahr...
Aber empfehlenswert ist er. IMHO. Ab jetzt müßte man mehr wissen :-)

Das Hauptproblem ist, dass OPC für Windows Betriebssysteme geschrieben wurde. Die Hersteller der CPU's liefern proprietäre OPC-Server, OPCxxx.exe Files (sind in der Regel in C++ geschrieben) die via Schnittstellen LAN, CAN, Com, direkt auf die Speicher der Steuerungen zugreifen; dazu wird dem Server in einem xxx.ocf-File (Beispiel am Ende) die Ressourcen bekannt gegeben.. In einem sogenannten VARLIST-File (Beispiel am Ende) wird dem Server via xxx.ocf die Struktur des Speichers bekanntgegeben. Ab da läuft das Daten-Polen automatisch nach vorgegebenem Intervall, wobei zumeist durch Statusänderung einer geforderten Variablen ein Refresh ausgelöst wird. So wird eine Echtzeitreaktion erreicht.Der OPC-Server kommuniziert mit den Steuerung (Vendor Specific Logic) und herstellerspezifisch über Device Driver Interface (DDI).

Der OPC-Server seinerseits kann durch jeden OPC-Client, der lokal oder auf externe Ressource läuft, durch Aufrufen eines Items oder ganzen Groups, abgefragt werden. Dieser hat Zugriff auf:
 - Statusinformationen
 - Fehlerbhandlung
 - lesen und schreiben von Items

Als Client sind diverse Applikationen möglich.
 - Visualisierung
 - Leitsysteme
 - Datenbanken
 - AciveX Komponenten
 - Delphi, Visual Basic, Visual C++ (Eigenentwicklungen)

-> http://www.matrikonopc.de   (diese bietet universelle PLC-Server an)
-> http://www.factorysoft.com

Gruss Marino

*(Beispiel xxx.ocf)
*
;******************************************************
;MAS OPC-Server Configurationfile generated by TOP1131
;TOP1131-Project: .\Examples\Example.top
;******************************************************


SECTION,COMMON
VERSION,"2.0"


SECTION,SERVER
UPDATERATE,250
INITIALITEMSTATE,0
NOPUBLICGROUPS,0
NOGLOBALVARSFROMULIB,0
NOLOCALVARS,0
NOARRAYELEMENTS,0
ARRAYINDEXSTYLE20357,0
ERRORBOX,0
ONLINETIMEOUT,2000
ONLYLEGALVBTYPES,1
CONNECTATSTARTUP,0
RECONNECTAFTERERROR,0
SYSTEMMARKER,SYSTEM.CSV


SECTION,MEDIA
MEDIANUMBER,1

'in diesem Beispiel wird lediglich die RS-232 Schnittstelle angesprochen'

MEDIALIB,SysComSIO
ENTRYNUMBER,5
MEDIANAME,COM1
BAUDRATE,AUTO
DATABIT,8
STOPBIT,1
PARITY,NONE


SECTION,RESOURCE
RESOURCENUMBER,2

RESOURCENAME,Demo752
VARLISTFILE,".\Demo752\varlist.csv"
ACCESSPATH,"COM1,0"
CONFIGSTRING,"MEDIANAME=COM1 BAUDRATE=AUTO DATABIT=8 STOPBIT=1 PARITY=NONE"

RESOURCENAME,Demo723
VARLISTFILE,".\Demo723\varlist.csv"
ACCESSPATH,"COM1,0/CAN1,0"
CONFIGSTRING,"MEDIANAME=COM1 BAUDRATE=AUTO DATABIT=8 STOPBIT=1 PARITY=NONE"

*(Beispiel vaelist.csv)*

SECTION,COMMON
ENTRYNUMBER,13
PROJECT,J:\PROJEKTE\OPENCOM\7_REL\OPC\OPC1131\EXAMPLES\DEMO752
TIME,21.03.2003 15:12:27
PROJECT_VERSION,3
COMMENT,""
SOFTCONTROL,3.00.04
PLC_VERSION,MOS700_752 R114.6C5D
CPU,CPU752
AVAILABLE_CODE,524032
AVAILABLE_DATA,393024
USED_CODE,2676
USED_DATA,284
FREE_CODE,504972
FREE_DATA,392740

SECTION,GLOBAL_VARS
LIBNUMBER,1

LIBNAME,Project
VARNUMBER,1
VAR_GLOBAL,g_xEnable,#655624,BOOL,TRUE,""

SECTION,TASK_POOL
TASKNUMBER,1
TASKNAME,Scanner
VARNUMBER,0

SECTION,POU_POOL
POUNUMBER,1

LIBNAME,Project
POUNAME,P_Main
VARNUMBER,2
VAR,iCounter,#655620,INT,0,""

SECTION,TYPE
TYPENUMBER,0

SECTION,PLC_CONFIG
VARNUMBER,10
VAR_GLOBAL,CPU752,,CPU752_INIT,,""
VAR_GLOBAL,Ix0000,%IX0.0.0.0,BOOL,FALSE,""
VAR_GLOBAL,Ix0001,%IX0.0.0.1,BOOL,FALSE,""
VAR_GLOBAL,Ix0002,%IX0.0.0.2,BOOL,FALSE,""
VAR_GLOBAL,Ix0003,%IX0.0.0.3,BOOL,FALSE,""
VAR_GLOBAL,Ib0000,%IB0.0.0.0,BYTE,0,""
VAR_GLOBAL,Qx0000,%QX0.0.0.0,BOOL,FALSE,""
VAR_GLOBAL,Qx0001,%QX0.0.0.1,BOOL,FALSE,""
VAR_GLOBAL,Qb0000,%QB0.0.0.0,BYTE,0,""
VAR_GLOBAL,ModL0K0M0C0,,SIO_CH_INIT,,""

--
Salvalaggio Marino
Kraftwerktechnik
Technische Betriebe Glarus-Nord
Produktion
Zentrale Risi 30
8752 Näfels
http://www.tbgn.ch/xml_3/internet/de/application/d223/f229.cfm


Reply to: