PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : OPC - ODBC Schnittstelle



kantau28
12.10.05, 15:23
Hallo!

Ich habe eine Anwendung die nur eine ODBC Schnittstelle besitzt, müsste aber Daten aus einer Datenquelle einlesen, die nur eine OPC-Schnittstelle besitzt.:shithappe

Ist dies möglich und wie kann das realisiert werden.

mfg
kan tau

Meudenbach
12.10.05, 15:42
Alles geht !!!

Du könntest zb mit einer B-CON eine DB "füttern" SQL oder was auch immer. Mit ODBC müsste man eigentlich darauf zugreifen können.

NachteiL: Du musst permanent die DB pollen...

Ich könnte Dir da eine kleine Anwendung programmieren. Wieviel Datenpunkte benötigst Du denn ??

Gruss

Martin J.
12.10.05, 17:27
Hallo,

vielleicht hilft folgendes weiter

Link (http://www.matrikonopc.com/products/opc-drivers/details.asp?driver=1039&dname=)

Vielleicht kann ich auch auf anderem Weg helfen, dazu müßte ich aber wissen ob die Clientanwendung eventuell auch eine offene API hat o.ä.

Bei Bedarf PN an mich.

Gruß

Martin

kantau28
13.10.05, 07:31
Hallo!

Mein SCADA-System mit der OPC Schnittstelle ist erst in der Programmierphase.
Es werden im Endausbau einige Tausend Online Datenpunkte vorhanden sein, auf die über OPC zugegriffen werden soll. Weiters besitzt das SCADA-System eine ODBC-Schnittstelle mit der man auf bestimmte Sachdaten zugreifen kann.
Weiters habe ich dann eine Oracle-Datenbank, auch mit einer ODBC-Schnittstelle, in der zusätzliche Daten verfügbar sind. Ich muß diese Daten mit den Daten aus dem SCADA-System vergleichen und wenn man eine gleiche Datensatznummer in der Oracle Dtenbank und dem SCADA-System findet, sollen die Online-Daten zu diesem Datensatz hinzugefügt werden.
Für einige Werte soll es zu einer mathematischen Verknüpfung kommen. Ist das alles erledigt, sollen die Daten einer Berechnungssoftware zur Verfügung gestellt werden. Dies könnte man mit einer Exportdatei (strukturiertes Textfile) oder über ODBC realisieren.
Wobei hier dem Textfile der Vorzug zu geben ist, da eine solche Schnittstelle schon mehrfach Programmiert wurde und das Format bereits feststeht.

Gruß kan tau

Gaston
13.10.05, 08:42
Hallo Kan Tau,

Mir ist dein Problem noch nicht so ganz klar. DAs SCADA System mir OPC Server und die Datenbank sind ja Server die Ihere diesnte zur verfügung stellen also muss sowieso ein Program zwischen beiden vermitteln. Mir ist nicht ganz klar ob Du da was Programieren willst, oder aber etwas fertiges dafür brauchst.

Im ersteren Fall könntest Du also ein Program schreiben das OPC Daten liest und über ODBC in die Datenbank schreibt. Ich gehe mal davon aus dass das nicht das ist was Du machen willst.

Es gibt irgendwo (link muss ich wiedersuchen) ein Data-Transfer-Utility das Daten von einem OPC-Server zu einer ODBC Datenbank transferieren kann. Inwieweit man hier jedoch berechnungen oder Bedingnungen einbringen kann weiss ich nicht.

Es gibt auch eine firma MatrikonOPC (http://www.matrikonopc.com) die bieten eine vielzahl an Virtualisierungstreibern für OPC an, so auch für ODBC.

Gruss,
Gaston

kantau28
13.10.05, 10:03
Konkretiesierung der Aufgabenstellung!

Leider bin ich Programmtechnisch nicht so versiert, dass ich alle Zusammenhänge immer einwandfrei erklären kann. Vielleicht versteht man das folgend besser:

Aufgabenstellung:

Ich will aus einer OPC Datenquelle durch Anstoß aus einer Anwendung einen Export der aktuellen Onlinedaten erreichen. Diese Daten sollen den richtigen Daten aus einer Datenbank zugewiesen werden.
In der Datenbank befinden sich zusätzlich Datensätze, denen keine Online Daten zugewiesen werden können, da diese nicht gemessen werden und daher nicht vorhanden sind.
Sind alle Daten in der Datenbank, müssen einzelne Daten miteinender mathematisch (Division,Addition...) verknüpft werden.
Wenn die Aufbereitung der Daten abgeschlossen ist, stehen die Daten für eine andere Anwendung zur verfügung.
Diese Schnittstelle kann über ODBC errichtet werden, oder man kann sie über Textfiles realisieren.

mfg
kan tau

Meudenbach
13.10.05, 10:31
@Kan Tau,

Du kommst nicht zufällig aus Dortmund :rolleyes: ...

Also mit der B-CON ist das wirklich kein grosser Aufwand. Wir haben so etwas schon realisiert für zB eine FM Software, wo über eine ACCESS Datenbank Zählerdaten übergeben werden, die vom EIB über einen entsprechenden OPC-Server empfangen werden. Das ist eigentlich gar nicht schwierig.

Aber wie Gaston schon sagte wundert es mich eigentlich auch, dass das SCADA System keinen OPC-Client enthält. Das ist eigentlich Standard.

Gruss

Filo
13.10.05, 11:33
[QUOTE=MeudenbachAber wie Gaston schon sagte wundert es mich eigentlich auch, dass das SCADA System keinen OPC-Client enthält. Das ist eigentlich Standard.

Gruss[/QUOTE]

Das SCADA packet hat ganz sicher einen OPC Client, wenn auch das ganze System eher Preisklasse "hoch gegen den Himmel" ist.

Kaucher
13.10.05, 11:43
@KanTau

um welches SCADA-System handelt es sich denn eigentlich, vielleicht lässt sich ja da was draus ableiten ?
Gruß Jörg

kantau28
13.10.05, 12:52
Villeicht kann damit jemand etwas anfangen: Bei meinem SCADA System handelt es sich um RESY PMC von der Fa. Repas-AEG. Zu finden unter:

http://www.repas-aeg.de

Kaucher
13.10.05, 13:45
:23:
das kenn ich nicht, sehe ich hier zum ersten mal.

Scheint ja aber ein etwas größeres System zu sein.
Ich würde mich einfach mal bei repas melden, auf der Website sind ja auch Ansprechpartner benannt.
Mit Sicherheit können die Dir Unterstützung und Tipps zur Umsetzung geben.

Gruß Jörg

Martin J.
13.10.05, 15:19
Hallo,

RESY-PMC ist auf jeden Fall OPC-Client fähig, habe es selbst zwar noch nicht eingesetzt aber schon eine Verbindung zwischen Siemens WinCC als OPC Server und RESY-PMC als OPC Client gesehen. Vielleicht muss nur ein Treiber hinzugefügt werden o.ä.. Ich würde mich mal an den Hersteller wenden wird auf jeden Fall die bessere Lösung sein, als Fremdprodukte einzusetzen.

Gruß

Martin

Purrath
13.10.05, 16:22
Hallo Kantau28,

Mit anrufen könnte es Probleme geben oder Du mußt Dich beeilen:
<TABLE cellSpacing=2 cellPadding=3 width="90%" border=1><TBODY><TR><TD width=128 bgColor=#c0c0c0>11.10.2005</TD><TD width=539 bgColor=#c0c0c0>Repas AEG Automation Systems, Software, Teltow, hat Insolvenz beantragt. Betroffen sind 72 Mitarbeiter, 40 in Teltow, die übrigen in Laatzen, Norderstedt und Dreieich</TD><TD width="15%" bgColor=#c0c0c0>
72











</TD></TR></TBODY></TABLE>
Quelle:http://www.egon-w-kreutzer.de/Meinung/12700cFrame-SetAlmanach.html

Gruß Michael

Meudenbach
13.10.05, 18:44
Na wenn das so ist.....

B-CON kann auch das gesamte System ersetzen ;). Ist doch genau mein Ding :cool:

LG

kantau28
14.10.05, 07:34
Hallo!

Was genau macht B-CON und was kann damit alles ersetzt werden?

mfg
Kan tau

Meudenbach
14.10.05, 09:11
B-CON ist wirklich die "eierlegende Wollmichsau". Mit dem richtigem Programmierer ist hier alles möglich. Der Einstieg ist eigentlich auch gar nicht so schwierig. Es sind schon mehrere 1000 System im Einsatz, auch sehr, sehr grosse Anlagen. Eine enorme Auswahl an Schnittstellen zu den verschiedensten Systemen ist ebenfalls vorhanden.

Am besten Du informierst Dich mal hier:
http://www.iconag.de

Kann ich Dir aber auch gerne eine Vorführen...

Gruss

Martin J.
14.10.05, 10:41
Hallo,

je nach Aufgabenbereich kommt vielleicht eher eine etwas Industrietauglichere Visualisierungssoftware in Frage ? Also ich arbeite schon seit längerer Zeit beruflich mit Siemens WinCC. Ist natürlich auch ne Kostenfrage. Aber wenn vorher RESY-PMC gefragt war ist das vielleicht eher ein Ersatz.

WinCC (http://www2.automation.siemens.com/hmi/html_00/products/software/wincc/index.htm)

Gruß

Martin

Meudenbach
14.10.05, 10:54
Was soll denn an WinCC bitteschön tauglicher sein :confused: wir haben schon so einige vom Gegenteil überzeugen können und WinCC Projekte gekippt !!!

Soll nicht heissen, dass WinCC schlecht ist... ganz im Gegenteil, nur sehe ich bei B-CON bzw. Labview ganz entscheidende Vorteile. Vor allem in preislicher Sicht.
Die "Offenheit" und die damit verbundene Skalierbarkeit ist unübertroffen. LabVIEW erfüllt alle!!! Industrienormen.

Gruss

Martin J.
14.10.05, 11:26
Hallo,

ich kenne B-CON nur von den Beschreibungen der Webseite und will das System nicht schlecht machen und denke auch wenn es für den Einsatz geeignet ist, preislich sicherlich wesentlich günstiger und in Ordnung.

Es ist halt oft auch die Bekanntheit, die ein Produkt in der Industrie trägt, aber, wie sieht es bei B-CON mit Hochverfügbarkeit, Änderungsverfolgbarkeit, Schnittstellen zu Standardautomatiesierungssystem ausser über Feldbus aus, kann es 80000 Tags pro Sekunde archivieren ? Gibt es Standardschnittstellen wie OPC HDA, OPC A&E, OPC XML.

Ich weiss auch nicht wo die Offenheit von WinCC , bei einer Standard C und VB-API begrenzt sein sollte.

Woran liegt es, dass ich in Industrieanlagen schon Yokogawa, ABB Freelance, Citect, AEG, WinCC gesehen habe aber noch nie B-CON ?

Gruß

Martin

Kaucher
14.10.05, 11:26
Hi Mike,

... wofür's gut sein soll !
Für Gebäudeleitsysteme ist WinCC ursprünglich auch nicht gedacht, sondern als SCADA-System für Prozessleittechnik und Visualisierungen, und da sehe ich eindeutig Vorteile beim WinCC.

Allein schon die Schnittstellenthematik zu gängigen SPS-Systemen ist direkt integriert und braucht nicht über 'Umwege' wie OPC/ODBC o.ä. zu laufen.

Die B-Con kenne ich zugegebenerweise nur vom Prospekt und von der Webseiten-Beschreibung, aber mit WinCC arbeite ich jetzt schon einige Jahre.
Labview wollen wir mal in dem Vergleich weglassen, halt ich für 'Spielzeug'.;)

Im konkreten Fall hab ich mir auch schon Überlegt, gleich WinCC vorzuschlagen.:D Da sind nämlich alle benötigten Schnittstellen (OPC, ODBC) gleich drin und 'ne Kopplung an eine Oracle 9i bin ich auch grad am realisieren (über ODBC). Der Zugriff kann entweder über VBA oder über C-Routinen erfolgen und ist relativ simpel.


Gruß Jörg

Kaucher
14.10.05, 11:28
@Martin J.

hihi, bin nicht mehr alleine auf der HS-welt :D :D :D

Meudenbach
14.10.05, 14:08
Es ist halt oft auch die Bekanntheit, die ein Produkt in der Industrie trägt, aber, wie sieht es bei B-CON mit Hochverfügbarkeit, Änderungsverfolgbarkeit, Schnittstellen zu Standardautomatiesierungssystem ausser über Feldbus aus, kann es 80000 Tags pro Sekunde archivieren ? Gibt es Standardschnittstellen wie OPC HDA, OPC A&E, OPC XML.

... aber selbstverständlich sind diese Schnittstellen verfügbar. Hochverfügbarkeit etc. ebenfalls kein Problem, vor allem dann nicht, wenn auf die Hardware von NI (National Instruments) zugegriffen wird. Dann aber steigt der Preis auch drastisch... :rolleyes:

Wie sieht es denn bei WinCC mit Echtzeitanwendungen aus ???

80000 Tags (was auch immer das unter WinCC bedeuten mag, ich denke DP Informationen Werte etc..) ist natürlich schon beachtlich. Habe ich noch nicht geprüft bzw. realisieren müssen. Ich denke aber, dass ist mit entsprechenden Datenbank Technologien und Hardwareplattformen realisierbar. Dies ist ja nicht nur eine Frage der Anwendung...

LabView ist bekannter als man denkt. In der USA zB verhält sich dieser Vergleich genau anders herum... LabVIEW findet man eher in der Simulation und der Qualitätsicherung wieder. Auch in der Maschinensteuerung und das dann auch in der Luft- und Raumfahrt... LabVIEW ist letztendlich ja nicht als SCADA System konzipiert worden. Auf diese Einsatzmöglichkeiten wurden ja erst durch Firmen wie zB ICONAG (es gibt auch einige andere) aufmerksam gemacht. Diese Perspekiven gibt es nun ja auch "erst" seit ca. 8-10 Jahren und das ist rechnerisch gesehen noch sehr "jung"...


Ich weiss auch nicht wo die Offenheit von WinCC , bei einer Standard C und VB-API begrenzt sein sollte.

Klar, dass eine API zu irgendeiner Hochsprache "alle Tore" offenhält. Nur wie verhält sich das in der gesamt Anwendung...

Ich habe bei einem ziemlich aktuellem Projekt (1000 Anlagenseiten ca. 200.000 Datenpunkte) zB mit Programmierern aus der WinCC Welt zu tun. Die Vergleichen natürlich deren und meine Möglichkeiten ziemlich kritisch. Die Junx sind regelrecht erstaunt, wie einfach und mit welch geringem Aufwand sich wiederkehrende Prozesse dynamisch einbinden lassen. Von der gnadenlosen performance wollen wir gar nicht erst reden.

... "noch", und das wird hoffentlich auch so bleiben, stehe ich bei dem Vergleich sehr gut dar :) .

@Kaucher

Für Gebäudeleitsysteme ist WinCC ursprünglich auch nicht gedacht, sondern als SCADA-System für Prozessleittechnik und Visualisierungen, und da sehe ich eindeutig Vorteile beim WinCC.[QUOTE]

Dem möchte ich gar nicht widersprechen. Das mag eben daran liegen, dass diese Anwendung eben für diesen Zweck entwickelt wurde. Jedes System hat Stärken und Schwächen, so natürlich auch LabVIEW und auch WinCC.

[QUOTE]Die B-Con kenne ich zugegebenerweise nur vom Prospekt und von der Webseiten-Beschreibung, aber mit WinCC arbeite ich jetzt schon einige Jahre.
Labview wollen wir mal in dem Vergleich weglassen, halt ich für 'Spielzeug'.;)


Nun muss ich ein wenig schmunzeln... B-CON ist ein Aufsatz auf LabVIEW. LabVIEW mag zwar spielerisch und bunt aussehen.. es aber daher als Spielzeug abzuwerten halte ich für etwas voreilig. LabVIEW gibt es ja nicht nur in der Ausführung "bunt" sondern auch in textbasierter Form. Nennt sich dann LabVIEW CVI... und dann kannst Du mir ja mal den Unterschied zu C zeigen :rolleyes: ... labVIEW ist "C" !!! Die signalfluss orientierte Programmierung, nennt sich "G", hat enorme Vorteile in punkto Übersichtlichkeit, vor allem bei komplexeren Projekten... das musste ich auch erst lernen. Nun möchte ich es nicht mehr missen... So geht es im übrigen vielen Anwendern, die ich auf der einen oder anderen LV Schulung kennengelernt habe... erst spotten, dann staunen ;)


Der Zugriff kann entweder über VBA oder über C-Routinen erfolgen und ist relativ simpel.

Ja klar, wenn Du dann Experte bist und deratige Routinen aus dem Handgelenk zauberst... Wir mögen das können und somit ist für Erweiterungen immer Expertenwissen gefragt und somit ist der Kunde "verhaftet". Solche Startegieen hasse ich wie die Pest !!! Bei uns werden solche "Erweiterungen" funktional eingebunden. Der Nutzer erhält ein Makro bzw. ein VI, welches er eben ohne Spezialkenntnisse nutzen kann.... und das, so oft er will.

Schaut euch einfach mal auf den Seiten von NI um http://www.ni.com da erhaltet ihr sämtliche Informationen über Leistung und Funktionalität...

aber ich diskutiere auch gern weiter. :cool:

LG

kantau28
17.10.05, 08:04
Es ist nicht meine Aufgabe verschiedene Systeme zu bewerten und andere teure Systeme anzukaufen. Ich muß für meine Arbeit eine Anwendung zur Verfügung stellen, mit der man die Daten aus bestehenden Systemen RESY PMC und einer bestehenden Oracle Datenbank auszulesen, diese miteinander zu Verknüpfen und einer Berechnungssoftware zur Verfügung zu stellen. Diese Berechnugssoftware kann auch Daten aus einem Textfile einlesen.
Es ist nicht notwendig, Daten online zur Verfügung zu haben. Es müssen aber Onlinewerte mit dem selben Zeitstempel der Berechnung zur Verfügung stellen.
Es werden hier nicht 10.000de Datenpunkte benötigt, sondern lediglich einige hundert.

mfg Kan Tau

Meudenbach
17.10.05, 08:32
:shithappe ... ja so ist das eben hier ;) :D .


Aber mal im ernst:
Ich denke mit der B-CON ist das sehr schnell zu realisieren. Durch das gestaffelte Lizenzmodel auch relativ günstig. Jedoch muss man auch sagen, dass die von beschriebene Anwendung nix für Einsteiger ist...

Gruss

kantau28
20.10.05, 09:48
Hallo!

Wenn ich diese Anwendung welber ausprogrammieren will, wie müsste ich an die Aufgabenstellung herangehen?

gruß kan tau

Meudenbach
20.10.05, 11:01
Nicht ist unmöglich :D evtl. würde ich mit einer Schulung beginnen...
Dann Software kaufen, Du benötigst zus. noch ein spezielles Toolkit, und dann ran....

Gruss

kantau28
20.10.05, 13:42
Hallo,

habe VB und Gupta von centura im Haus. evtl. auch .Net Software. Besitze aber nur Programmiererfahrung in c und C++. Sql habe ich mir bereits angesehen.
Welches Paket würde sich zum bearbeiten der Aufgabenstellung anbieten?

Die Oracle Datenbank ist bereits aufgebaut, so das ich die Datensätze bereits habe.
Die Onlinedaten stehen noch nicht zur Verfügung.

Zum Programmieren eines Prototypen: Wie könnte dieser aufgebaut sein?

Ich bedanke mich für die immer rasche Beantwortung meiner Fragen.

Gruß kan tau

kantau28
21.10.05, 07:16
O.K.



Wie kann ich die Aufgabe aufteilen, um vernünftige Teilprobleme lösen zu können?
Ich habe mir folgendes Vorgestellt:

1. Verbindung aufbauen
2. Daten auslesen
3. Einfügepunkt suchen
4. Daten einfügen
5. Daten aufbereiten
6. Bereitstellen der Daten für andere Anwendungen Würde das funktionieren?
Was ist noch zu berücksichtigen?