Prodave MPI Handbuch

background image

s

Vorwort,
Inhaltsverzeichnis


Einführung

1


Beschreibung

2


Bedienung

3

Funktionen von
PRODAVE MPI V6.0

4


Demonstrationsprogramme

5


Anhang

A











SIMATIC

PRODAVE MPI V6.0


Handbuch



Ausgabe 05/2005

A5E00417149-01

background image

Copyright Siemens AG 2005 All rights reserved

Weitergabe sowie Vervielfältigung dieser Unterlage,
Verwertung und Mitteilung ihres Inhalts ist nicht gestattet,
soweit nicht ausdrücklich zugestanden. Zuwiderhandlungen
verpflichten zu Schadenersatz. Alle Rechte vorbehalten,
insbesondere für den Fall der Patenterteilung oder GM-
Eintragung


Siemens AG
Bereich Automation and Drives
Geschäftsgebiet Industrial Automation Systems
Postfach 4848, D- 90327 Nürnberg

Haftungsausschluss

Wir haben den Inhalt der Druckschrift auf Übereinstimmung mit der
beschriebenen Hard- und Software geprüft. Dennoch können
Abweichungen nicht ausgeschlossen werden, so dass wir für die
vollständige Übereinstimmung keine Gewähr übernehmen. Die Angaben
in dieser Druckschrift werden regelmäßig überprüft, und notwendige
Korrekturen sind in den nachfolgenden Auflagen enthalten. Für
Verbesserungsvorschläge sind wir dankbar.



Siemens AG 2005
Technische Änderungen bleiben vorbehalten

Siemens Aktiengesellschaft

A5E00417149-01

Sicherheitstechnische Hinweise

Dieses Handbuch enthält Hinweise, die Sie zu Ihrer persönlichen Sicherheit sowie zur Vermeidung von

Sachschäden beachten müssen. Die Hinweise sind durch ein Warndreieck hervorgehoben und je nach

Gefährdungsgrad folgendermaßen dargestellt:

!

Gefahr

bedeutet, dass Tod, schwere Körperverletzung oder erheblicher Sachschaden eintreten werden,
wenn die entsprechenden Vorsichtsmaßnahmen nicht getroffen werden.

!

Warnung

bedeutet, dass Tod, schwere Körperverletzung oder erheblicher Sachschaden eintreten können,
wenn die entsprechenden Vorsichtsmaßnahmen nicht getroffen werden.

!

Vorsicht

bedeutet, dass eine leichte Körperverletzung oder ein Sachschaden eintreten können, wenn die
entsprechenden Vorsichtsmaßnahmen nicht getroffen werden.

Vorsicht

bedeutet, dass ein Sachschaden eintreten kann, wenn die entsprechenden Vorsichtsmaßnahmen
nicht getroffen werden.

Achtung

ist eine wichtige Information über das Produkt, die Handhabung des Produktes oder den jeweiligen
Teil der Dokumentation, auf den besonders aufmerksam gemacht werden soll.

Qualifiziertes Personal

Inbetriebsetzung und Betrieb eines Gerätes dürfen nur von qualifiziertem Personal vorgenommen
werden. Qualifiziertes Personal im Sinne der sicherheitstechnischen Hinweise dieses Handbuchs sind
Personen, die Berechtigung haben, Geräte, Systeme und Stromkreise gemäß den Standards der
Sicherheitstechnik in Betrieb zu nehmen, zu erden und zu kennzeichnen.

Bestimmungsgemäßer Gebrauch

Beachten Sie Folgendes:

!

Warnung

Das Gerät darf nur für die im Katalog und in der technischen Beschreibung vorgesehenen Einsatzfälle
und nur in Verbindung mit von Siemens empfohlenen bzw. zugelassenen Fremdgeräten und -
komponenten verwendet werden.

Der einwandfreie und sichere Betrieb des Produktes setzt sachgemäßen Transport, sachgemäße
Lagerung, Aufstellung und Montage sowie sorgfältige Bedienung und Instandhaltung voraus.

Marken

SIMATIC®, SIMATIC HMI® und SIMATIC NET® sind Marken der Siemens AG.

Die übrigen Bezeichnungen in dieser Schrift können Marken sein, deren Benutzung durch Dritte für

deren Zwecke die Rechte der Inhaber verletzen kann.

background image

PRODAVE MPI V6.0
A5E00417149-01

iii

Vorwort

Zweck des Handbuchs

Dieses Handbuch gibt Ihnen einen vollständigen Überblick über die Funktionen
von PRODAVE MPI V6.0.

Es richtet sich an Personen, die in den Bereichen Projektierung, Inbetriebsetzung
und Service von Automatisierungssystemen tätig sind.

Erforderliche Grundkenntnisse

Zum Verständnis des Handbuchs sind allgemeine Kenntnisse auf dem Gebiet der
Automatisierungstechnik erforderlich.

Außerdem werden Kenntnisse über die Verwendung von Computern oder PC-
ähnlichen Arbeitsmitteln (z. B. Programmiergeräten) unter dem Betriebssystem
Windows 2000 bzw. XP vorausgesetzt.

Gültigkeitsbereich des Handbuchs

Das Handbuch ist gültig für das Softwarepaket PRODAVE MPI V6.0.

background image

Vorwort

PRODAVE MPI V6.0

iv

A5E00417149-01

Weitere Unterstützung

Bei Fragen zur Nutzung der im Handbuch beschriebenen Produkte, die Sie hier
nicht beantwortet finden, wenden Sie sich bitte an Ihren Siemens-Ansprechpartner
in den für Sie zuständigen Vertretungen und Geschäftsstellen.

Ihren Ansprechpartner finden Sie unter:

http://www.siemens.com/automation/partner

Den Wegweiser zum Angebot an technischen Dokumentationen für die einzelnen
SIMATIC Produkte und Systeme finden Sie unter:

http://www.siemens.de/simatic-tech-doku-portal

Den Online-Katalog und das Online-Bestellsystem finden Sie unter:

http://mall.automation.siemens.com/

Trainingscenter

Um Ihnen den Einstieg in das Automatisierungssytem S7 zu erleichtern, bieten wir
entsprechende Kurse an. Wenden Sie sich bitte an Ihr regionales Trainingscenter
oder an das zentrale Trainingscenter in D 90327 Nürnberg.

Telefon:

+49 (911) 895-3200.

Internet:

http://www.sitrain.com

background image

Vorwort

PRODAVE MPI V6.0
A5E00417149-01

v

A&D Technical Support

Sie erreichen den Technical Support für alle A&D-Produkte

Über das Web-Formular für den Support Request

http://www.siemens.de/automation/support-request

Telefon: + 49 180 5050 222

Fax:

+ 49 180 5050 223

Weitere Informationen zu unserem Technical Support finden Sie im Internet unter

http://www.siemens.com/automation/service

background image

Vorwort

PRODAVE MPI V6.0

vi

A5E00417149-01

Service & Support im Internet

Zusätzlich zu unserem Dokumentations-Angebot bieten wir Ihnen im Internet unser
komplettes Wissen online an.

http://www.siemens.com/automation/service&support

Dort finden Sie:

den Newsletter, der Sie ständig mit den aktuellsten Informationen zu Ihren
Produkten versorgt.

die für Sie richtigen Dokumente über unsere Suche in Service & Support.

ein Forum in welchem Anwender und Spezialisten weltweit Erfahrungen
austauschen.

Ihren Ansprechpartner für Automation & Drives vor Ort.

Informationen über Vor-Ort Service, Reparaturen, Ersatzteile. Vieles mehr
steht für Sie unter dem Begriff "Leistungen“ bereit.

background image

PRODAVE MPI V6.0
A5E00417149-01

vii

Inhaltsverzeichnis

1

Einführung

1-1

1.1

Grundfunktionen................................................................................................1-2

1.1.1

Funktionen zum Datentransfer zur S7 300/400 ................................................1-2

1.1.2

Funktionen zum Datentransfer zur S7 200 .......................................................1-3

1.2

Funktionen zum Datenhandling im PG/PC .......................................................1-4

2

Beschreibung 2-1

2.1

Arbeitsweise von PRODAVE ............................................................................2-1

2.2

Benutzung des Hochsprachenadapters............................................................2-1

2.3

Voraussetzungen ..............................................................................................2-1

2.4

Verbindung von PG/PC zum jeweiligen AG......................................................2-2

2.4.1

Treiber unter Windows 95/98/NT ......................................................................2-2

3

Bedienung

3-1

3.1

Installation von PRODAVE MPI V6.0................................................................3-1

3.1.1

Installation von PRODAVE MPI V6.0 unter Windows 95/98/NT/ME/2000/XP .3-1

3.2

Lieferumfang PRODAVE MPI V6.0...................................................................3-2

3.2.1

PRODAVE MPI V6.0 für Windows 95/98/NT/ME/2000/XP...............................3-2

3.2.2

PRODAVE MPI V6.0 Mini für Windows 95/98/NT/ME/2000/XP .......................3-3

3.3

Arbeiten mit PRODAVE ....................................................................................3-4

3.3.1

Anmerkung zur S7-200 .....................................................................................3-4

3.3.2

Anmerkung zur S7-300/400 ..............................................................................3-4

3.4

Unterschiede zwischen S5 und S7 ...................................................................3-5

3.5

Anbindung an Standardtools.............................................................................3-7

3.5.1

PRODAVE unter Delphi (32-Bit) Beispiel..........................................................3-7

3.5.2

PRODAVE unter Access (32-Bit) Beispiel ........................................................3-8

3.5.3

PRODAVE unter Visual Basic (32-Bit) Beispiel ................................................3-8

4

Funktionen von PRODAVE MPI V6.0

4-1

4.1

Grundfunktionen................................................................................................4-3

4.1.1

load_tool............................................................................................................4-3

4.1.2

unload_tool........................................................................................................4-5

4.1.3

new_ss ..............................................................................................................4-6

4.2

Funktionen zum Datenverkehr zur S7 300/400 ................................................4-7

4.2.1

ag_info...............................................................................................................4-7

4.2.2

ag_zustand........................................................................................................4-9

4.2.3

db_buch...........................................................................................................4-10

4.2.4

db_read ...........................................................................................................4-11

4.2.5

d_field_read ....................................................................................................4-13

4.2.6

e|a|m_field_read..............................................................................................4-14

4.2.7

t|z_field_read...................................................................................................4-16

4.2.8

mix_read..........................................................................................................4-17

4.2.9

db_write...........................................................................................................4-21

4.2.10

d_field_write ....................................................................................................4-23

4.2.11

a|m_field_write ................................................................................................4-24

4.2.12

z_field_write ....................................................................................................4-25

background image

Inhaltsverzeichnis

PRODAVE MPI V6.0

viii

A5E00417149-01

4.2.13

mix_write .........................................................................................................4-26

4.2.14

mb_setbit.........................................................................................................4-30

4.2.15

mb_resetbit......................................................................................................4-31

4.2.16

mb_bittest........................................................................................................4-32

4.3

Funktionen Datenverkehr zur S7 200 .............................................................4-33

4.3.1

as200_ag_info.................................................................................................4-33

4.3.2

as200_ag_zustand ..........................................................................................4-34

4.3.3

as200_e|a|m|sm|vs_field_read .......................................................................4-35

4.3.4

as200_t_field_read..........................................................................................4-37

4.3.5

as200_z_field_read.........................................................................................4-39

4.3.6

as200_mix_read..............................................................................................4-41

4.3.7

as200_a|m|sm|vs_field_write ..........................................................................4-44

4.3.8

as200_z_field_write ........................................................................................4-46

4.3.9

as200_mix_write .............................................................................................4-47

4.3.10

as200_mb_setbit .............................................................................................4-50

4.3.11

as200_mb_resetbit..........................................................................................4-51

4.3.12

as200_mb_bittest ............................................................................................4-52

4.4

Komfortfunktionen ...........................................................................................4-53

4.4.1

error_message ................................................................................................4-53

4.4.2

kg_to_float.......................................................................................................4-55

4.4.3

float_to_kg.......................................................................................................4-56

4.4.4

gp_to_float.......................................................................................................4-57

4.4.5

float_to_gp.......................................................................................................4-58

4.4.6

testbit...............................................................................................................4-59

4.4.7

byte_boolean...................................................................................................4-60

4.4.8

boolean_byte...................................................................................................4-61

4.4.9

kf_integer.........................................................................................................4-62

4.4.10

swab_buffer.....................................................................................................4-63

4.4.11

copy_buffer......................................................................................................4-64

4.4.12

USHORT_2_bcd .............................................................................................4-65

4.4.13

bcd_2_USHORT .............................................................................................4-66

4.5

Teleservice Funktionen ...................................................................................4-67

4.5.1

ts_dial ..............................................................................................................4-67

4.5.2

ts_hang_up_dial..............................................................................................4-69

4.5.3

ts_set_ringindicator .........................................................................................4-70

4.5.4

ts_read_info ....................................................................................................4-72

4.5.5

ts_hang_up_ring .............................................................................................4-73

4.5.6

ts_get_modem_name .....................................................................................4-74

5

Demonstrationsprogramme 5-1

5.1

Demonstrationsprogramme für den PC ............................................................5-1

A

Anhang

A-1

A.1

Fehlertexte ....................................................................................................... A-1

A.2

Verwendete Abkürzungen................................................................................ A-4

background image

PRODAVE MPI V6.0
A5E00417149-01

1-1

1 Einführung

Neben den Programmiergeräten dringt der Personal-Computer immer mehr in die
Fabrikhallen ein, weil er ständig leistungsfähiger wird und weil es vor allem ein
riesiges Angebot an Applikationen für die Fertigung gibt. Dabei stellt sich Ihnen als
Anwender jedoch meist das Problem, dass zwar eine Vielzahl von Programmen
zur Nachbearbeitung von Prozessdaten zur Verfügung stehen (z. B. Datenbanken,
statistische Auswertung u. a.), dass Sie aber Ihre Daten im Automatisierungsgerät
nur schwer für diese Applikationen verfügbar machen können. Denn dafür
brauchen Sie eine funktionierende und kostengünstige Kopplung zwischen AG und
PG/PC.

Hier hilft Ihnen das Softwarepaket PRODAVE MPI V6.0. PRODAVE MPI V6.0 stellt
in einer DLL (Dynamic Link Library) bzw. LIB (Library) ausgetestete Funktionen
(Tools) zur Verfügung, die Sie für jede Ihrer Anwendungen neu kombinieren. Die
Kombination der Tools erfolgt in den Programmiersprachen, mit denen Sie
Windows 95/98/ME und Windows NT/2000/XP Applikationen erstellen können.

Über diese kombinierten Funktionen baut PRODAVE MPI V6.0 den
Prozessdatenverkehr über die MPI-Anschaltung des AG zwischen AG und PG/PC
auf. Die nun verfügbaren Daten können in ein PC-gerechtes Format gewandelt und
von Ihrer eigenen Applikation oder von gängigen Applikationen verarbeitet werden.
Sie können damit ohne Detailkenntnisse eine Datenkopplung zwischen AG und
PG/PC errichten und Ihre Entwicklungsaktivitäten auf die spezifische Verarbeitung
Ihrer Daten konzentrieren.

Mit PRODAVE MPI V6.0 können Sie Ihren Prozess nicht nur auswerten und be-
obachten, sondern auch beeinflussen, denn Sie haben verschiedene Funktionen,
um vom PG/PC aus Daten ins AG zu schreiben.

Um Einstieg und Umgang mit PRODAVE MPI V6.0 zu erleichtern, liefern wir Ihnen
als Beispiel mehrere Demonstrationsprogramme. Diese Programme sind voll
funktionsfähig und stehen Ihnen im Quellcode zur Verfügung (siehe Kapitel
"Demonstrationsprogramme").

PRODAVE MPI V6.0 läuft unter Windows 95/98/NT/ME/2000/XP auf PG 7xx und
auf PCs, die kompatibel zum Industriestandard sind in Verbindung mit einer MPI-
Anschaltung (CP5511, CP5611) oder PC/MPI-Kabel.

Die PRODAVE Funktionen lassen sich in 3 grundsätzliche Arten unterteilen:

background image

Einführung

PRODAVE MPI V6.0

1-2

A5E00417149-01

1.1 Grundfunktionen

System initialisieren und deinitialisieren (load_tool, unload_tool).

Aktivieren der Verbindung (new_ss).

1.1.1

Funktionen zum Datentransfer zur S7 300/400

Ausgangsbytes aus dem AG lesen (a_field_read).

Ausgangsbytes schreiben (a_field_write).

Eingangsbytes aus dem AG lesen (e_field_read).

Datenbytes aus einem Baustein DB lesen (d_field_read).

Datenbytes in einen Baustein DB schreiben (d_field_write).

Merkerbytes aus dem AG lesen (m_field_read).

Merkerbytes im AG beschreiben (m_field_write).

Zustandsprüfung eines Merkers (mb_bittest).

Merker setzen und rücksetzen (mb_setbit, mb_resetbit).

Zeitworte aus dem AG lesen (t_field_read).

Zählerworte aus dem AG lesen (z_field_read).

Zählerwort im AG überschreiben (z_field_write).

Lesen von gemischten Daten (mix_read).

Schreiben von gemischten Daten (mix_write).

background image

Einführung

PRODAVE MPI V6.0
A5E00417149-01

1-3

1.1.2

Funktionen zum Datentransfer zur S7 200

Ausgangsbytes aus dem AG lesen (as200_a_field_read).

Ausgangsbytes schreiben (as200_a_field_write).

Eingangsbytes aus dem AG lesen (as200_e_field_read).

Datenbytes aus Variablenspeicher lesen (as200_vs_field_read).

Datenbytes in Variablenspeicher schreiben (as200_vs_field_write).

Merkerbytes aus dem AG lesen (as200_m_field_read).

Merkerbytes im AG beschreiben (as200_m_field_write).

Sondermerkerbytes aus dem AG lesen (as200_sm_field_read).

Sondermerkerbytes im AG beschreiben (as200_sm_field_write).

Zustandsprüfung eines Merkers (as200_mb_bittest).

Merker setzen und rücksetzen (as200_mb_setbit, as200_mb_resetbit).

Zeitworte aus dem AG lesen (as200_t_field_read).

Zählerworte aus dem AG lesen (as200_z_field_read).

Zählerwort im AG überschreiben (as200_z_field_write).

Lesen von gemischten Daten (as200_mix_read).

Schreiben von gemischten Daten (as200_mix_write).

background image

Einführung

PRODAVE MPI V6.0

1-4

A5E00417149-01

1.2

Funktionen zum Datenhandling im PG/PC

Fehlertextausgabe zur Fehlernummer (error_message).

Formatwandlung von S7-Daten (gp_to_float, float_to_gp).

Formatwandlung von S5-Daten (kg_to_float, float_to_kg).

Bytewandlung von einem Byte in acht logische Werte und umgekehrt
(boolean_byte, byte_boolean).

1.3 TeleService-Funktionen

Bei den TeleService-Funktionen handelt es sich um eine Erweiterung der
PRODAVE Funktionalität, die es ermöglicht, einen Verbindungsaufbau von bzw. zu
einer S7-Steuerung über das öffentliche Telefonnetz herzustellen. Die
Vorraussetzung hierfür ist die Installation von SIMATIC TeleService (= SW-
Optionspaket zu STEP 7) zur Anbindung von SIMATIC S7-Steuerungen (PLC)
über das öffentliche Telefonnetz.

Anwahl einer Station bzw. eines TS-Adapters (ts_dial).

Beenden einer TeleService-Verbindung (ts_hang_up_dial).

Initialisierung des Systems für Anruferkennung (ts_set_ringindicator).

Informationen der Alarmauslösenden Station auslesen (ts_read_info).

Beenden einer TeleService-Verbindung (ts_hang_up_ring).

background image

PRODAVE MPI V6.0
A5E00417149-01

2-1

2 Beschreibung

2.1

Arbeitsweise von PRODAVE

Mit dem Programmpaket PRODAVE MPI V6.0 können Sie unter Windows
95/98/NT/ME/2000/XP über verschiedene CPUs der S7-Reihe Daten aus einem
Automatisierungsgerät (AG) lesen und Daten in ein AG schreiben.

PRODAVE MPI V6.0 besteht im wesentlichen aus zwei Teilen:

Treiber für Windows 95/98/ME und Windows NT/2000/XP
und

Hochsprachenadapter

PRODAVE MPI V6.0 bietet Ihnen den Adapter für Windows 95/98/NT/ME/2000/XP
in Form einer 32-Bit-DLL (Dynamic Link Library) erstellt mit VC++ Version 6.0 an.

Wollen Sie mit einer Hochsprache aus dem AG Daten lesen oder in das AG Daten
schreiben, so bedienen Sie ausschließlich den Adapter und dessen Funktionen.

2.2

Benutzung des Hochsprachenadapters

Die zur Verfügung stehenden Funktionen finden Sie im Kapitel "Funktionen von
PRODAVE MPI V6.0" für die verschiedenen Programmiersprachen des
vorliegenden Handbuchs ausführlich beschrieben.

2.3 Voraussetzungen

PRODAVE MPI V6.0 arbeitet mit den AGs S7-200, S7-300, S7-400, M7 und C7
der S7-Reihe.

Software-Voraussetzung:

Betriebsystem Windows 95/98/ME oder Windows NT V4.x/2000/XP.

Hardware-Voraussetzung:

PRODAVE MPI V6.0
PRODAVE MPI V6.0 mini
Ein Simatic PG oder ein AT kompatibler Industrie-PC mit 64MB Hauptspeicher und
MPI-ISA-Anschaltung, CP5511,CP 5512, CP5611 oder PC-Adapter.

background image

Beschreibung

PRODAVE MPI V6.0

2-2

A5E00417149-01

2.4

Verbindung von PG/PC zum jeweiligen AG

2.4.1

Treiber unter Windows 95/98/NT

Der PG/PC-AG-Anschluss kann über folgende Komponenten erfolgen:

CP 5611 PCI-Card

CP 5511/CP 5512 PCMCIA-Card

MPI-ISA-Card oder MPI-ISA on Board (Simatic PG, PC RI45,25,FI25)

COM 1/2 via PC-Adapter

PC S7-300/400/M7/C7

MPI-ISA MPI-Schnittstelle CP5511/5512/5611 S7-200 PPI-Schnittstelle

Die Installation und Einstellungen der verwendeten Hardware erfolgt über das
STEP7-Tool PG/PC-Schnittstelle parametrieren, das nach erfolgreicher
Installation in der Systemsteuerung zur Verfügung steht.

background image

PRODAVE MPI V6.0
A5E00417149-01

3-1

3 Bedienung

3.1

Installation von PRODAVE MPI V6.0

3.1.1

Installation von PRODAVE MPI V6.0 unter Windows
95/98/NT/ME/2000/XP

Die Installation von PRODAVE MPI V6.0 erfolgt über ein Windows-Installations-
Programm (SETUP.EXE), das vom Dateimanager unter Windows aktiviert werden
muss. Nach dem Start von SETUP.EXE wird Ihnen ein Zielpfad für die Installation
angeboten, den Sie durch Neueingabe oder über BROWSE ändern können. Nach
der Zielpfadangabe werden Ihnen die Auswahl folgender Installationskomponenten
angeboten:

PRODAVE MPI V6.0 for Windows 95/98/NT/ME/2000/XPPRODAVE DLL und
Demonstrationsprogramm für Windows95/98/NT/ME/2000/XP.STEP7 Driver
for Windows 95/98/NT/ME/2000/XP

Dokumentation.

Das Setup generiert automatisch einen Eintrag in der Systemsteuerung zum
Einstellen der verwendeten Schnittstelle unter Windows 95/98/NT/ME/2000/XP.

Die zu verwendeten Treiber können mit Hilfe des STEP7-Tools PG/PC-
Schnittstelle einstellen
(S7EPATSX.EXE) geladen, parametriert und in das
System eingebunden werden. Nach der korrekten Installation werden die Treiber
automatisch bei Neustart von Windows 95/98/NT/ME/2000/XP aktiviert.

background image

Bedienung

PRODAVE MPI V6.0

3-2

A5E00417149-01

3.2

Lieferumfang PRODAVE MPI V6.0

3.2.1

PRODAVE MPI V6.0 für Windows 95/98/NT/ME/2000/XP

Nach erfolgreicher Installation sind folgende PRODAVE Komponenten verfügbar:

SIEMENS\PRODAVE_S7\INCLUDE\

W95_S7 .H = Headerfile für PRODAVE-DLL

KOMFORT .H = Headerfile für Komfort-DLL

W95_S7 .DEF = Definitionfile für PRODAVE-DLL

KOMFORT .DEF = Definitionfile für Komfort-DLL

SIEMENS\PRODAVE_S7\LIB\

W95_S7 .LIB = Importlibrary für PRODAVE-DLL

KOMFORT .LIB = Importlibrary für Komfort-DLL

SIEMENS\PRODAVE_S7\SAMPLE_VC\

DEMO .EXE = Demoprogramm

DEMO .DSP = Visual C Projektdatei

DEMO .C = Quellcode Demoprogramm

ICON1 .ICO = 32 x 32 icon

DEMO .RC = Resource Code Demoprogramm

ERROR .DAT = Datei mit deutschen Fehlertexten

RESOURCE.H = Headerfile Demoprogramm

SIEMENS\PRODAVE_S7\SAMPLE_VB\

VBDEMO .VBP = Visual Basic Projetdatei

ERROR .DAT = Fehlertextdatei

VBDEMO .EXE = Ablauffähiges Demoprogramm

VBDEMO .BAS = Funktionsdeklarationen für VB

VBDEMO .FRM = Forms

DBBUCH_FRM .FRM

ERROR .FRM FLAG .FRM

INFO .FRM

LOAD .FRM

READ_FRM .FRM

STATUS .FRM

TS_FRM .FRM

TSINFO_FRM .

background image

Bedienung

PRODAVE MPI V6.0
A5E00417149-01

3-3

FRM WRITE_FRM .FRM

\WINDOWS\SYSTEM32\

W95_S7 .DLL = PRODAVE-DLL

KOMFORT .DLL = Komfort -DLL

3.2.2

PRODAVE MPI V6.0 Mini für Windows 95/98/NT/ME/2000/XP

Nach erfolgreicher Installation sind folgende PRODAVE Komponenten verfügbar:

SIEMENS\PRODAVE_S7_MINI\INCLUDE\

W95_S7M .H = Headerfile für PRODAVE-DLL

KOMFORT .H = Headerfile für Komfort-DLL

W95_S7M .DEF = Definitionfile für PRODAVE-DLL

KOMFORT .DEF = Definitionfile für Komfort-DLL

SIEMENS\PRODAVE_S7_MINI\LIB\

W95_S7M .LIB = Importlibrary für PRODAVE-DLL

KOMFORT .LIB = Importlibrary für Komfort-DLL

SIEMENS\PRODAVE_S7_MINI\SAMPLE_VC_MINI\

DEMO .EXE = Demoprogramm

DEMO .DSP = Visual C Projektdatei

DEMO .C = Quellcode Demoprogramm

ICON1 .ICO = 32 x 32 icon

DEMO .RC = Resource Code Demoprogramm

ERROR .DAT = Datei mit deutschen Fehlertexten

RESOURCE.H = Headerfile Demoprogramm

SIEMENS\PRODAVE_S7_MINI\SAMPLE_VB_MINI\

VBDEMO .VBP = visual basic projectfile

ERROR .DAT = Fehlertextdatei

VBDEMO .EXE = Ablauffähiges Demoprogramm

VBDEMO .BAS = Funktionsdeklarationen für VB

VBDEMO .FRM = Forms

ERROR .FRM

INFO .FRM
LOAD .FRM
READ_FRM .FRM
STATUS .FRM
WRITE_FRM .FRM

\WINDOWS\SYSTEM32

background image

Bedienung

PRODAVE MPI V6.0

3-4

A5E00417149-01

W95_S7M .DLL = PRODAVE-DLL

KOMFORT .DLL = Komfort -DLL

3.3

Arbeiten mit PRODAVE

Sie schreiben Ihr Anwenderprogramm in einer Hochsprache und verwenden die
Funktionsaufrufe in der Form, wie sie im Kapitel "Funktionen von PRODAVE MPI
V6.0" aufgelistet sind.

3.3.1

Anmerkung zur S7-200

Bei Kopplung zur S7-200 darf nur 1 Verbindung in der Funktion load_tool
parametriert werden.

Das Initialisieren der Verbindung erfolgt mit dem Aufruf der Funktion load_tool.
Dann folgt der anwenderspezifische Teil, in dem Sie ausschließlich as200_......
Funktionen (siehe auch Kapitel "Grundfunktionen zum Datentransfer S7-200") aus
dem Adapter aufrufen dürfen. Schließen Sie Ihr Programm ab, müssen Sie die
Verbindungen mit der Funktion unload_tool wieder deinitialisieren.

3.3.2

Anmerkung zur S7-300/400

Obligatorischer Anfang jedes Anwenderprogramms ist das Initialisieren der
Verbindungen mit dem Aufruf der Funktion load_tool. Dann folgt der
anwenderspezifische Teil, in dem Sie beliebig viele PRODAVE-Funktionen (mit
Ausnahme der as200_....-Funktionen) aus dem Adapter aufrufen können.
Schließen Sie Ihr Programm ab, müssen Sie die Verbindungen mit der Funktion
unload_tool wieder deinitialisieren.

Achten Sie bei der Entwicklung Ihres Programm immer auf folgende Punkte,
um Datenverluste oder einen Systemabsturz zu vermeiden:

-Vor Verlassen des Programms müssen die Verbindungen durch Aufruf der
Adapter-Funktion unload_tool deinitialisiert werden!

-Wenn Sie Daten aus dem AG lesen, müssen die Felder, in welche die Daten
übertragen werden, auch groß genug sein, um diese Daten aufzunehmen, da
der Adapter keine Feldprüfung vornimmt!

-Die Fehlertextdatei muss im gleichen Katalog wie das entwickelte Programm
stehen, da sonst der Adapter die Fehlertexte nicht laden kann!

-Um eine wiederholte "Prüfung auf Vorhandensein" der Fehlertextdatei zu ver-
meiden, können Sie am Programmanfang die Funktion error_message auf-
rufen, um bei Fehlern eine entsprechende Meldung ausgeben zu können.
Beim ersten Aufruf dieser Funktion wird die Fehlertextdatei geladen.

background image

Bedienung

PRODAVE MPI V6.0
A5E00417149-01

3-5

3.4

Unterschiede zwischen S5 und S7

Ein wesentlicher Unterschied zwischen S5-AG und S7-AG besteht in der
Verwaltung der Datenbausteine. Während die S5 Datenbausteine wortweise
verwaltet, bearbeitet die S7 Datenbausteine byteweise.

S5
bit 15 .. bit 0

S7
bit 7 ..0 bit 7 ..0

DW 0

DW 1

DW 2

DW 3

...

DW 0

DW 1

DW 2

DW 3

DW 4

DW 5

DW 6

DW 7

...

...

= DW 0

= DW 2

= DW 4

= DW 6

...

Bei Verwendung der Funktion d_field_read wird auf den Datenbaustein wie z. B.
auf den Merkerbereich byteweise zugegriffen.

Wenn Sie mit der Funktion db_read 3 Datenworte lesen, werden aus AG-Sicht
DBW0 bis DBW5 übertragen. D.h. im PG/PC liegen drei 16bit-Worte zur
Bearbeitung frei, die im AG über DBW0, DBW2 und DBW4, PG/PC-seitig jedoch
über DW0, DW1 und DW2 adressiert werden.

Um Verwechslungen bei der Datenverwaltung zu vermeiden empfielt es sich, AG-
seitig den Datenbaustein symbolisch, über eine Typzuweisung in folgender Form
zu bearbeiten:

background image

Bedienung

PRODAVE MPI V6.0

3-6

A5E00417149-01

Typdeklaration in der Symbolliste:

Baustein: DB10 DB_10

Adresse

Variable

Datentyp

Anfangswert

Kommentar

STRUCT

DW

ARRAY[0 .. 255]

WORD

END STRUCT

Beispiel für den Zugriff auf Variable im AG:

L "DB_10".DW[2]

T MW10

oder

L MW10

T "DB_10".DW[2]

background image

Bedienung

PRODAVE MPI V6.0
A5E00417149-01

3-7

3.5

Anbindung an Standardtools

3.5.1

PRODAVE unter Delphi (32-Bit) Beispiel

Um PRODAVE-Funktionen unter Delphi nutzen zu können, müssen Sie diese wie
folgt deklarieren:

function Load_tool ( no:Byte;

name: {pointer} PChar;
adr:{pointer} PChar): longint;

stdcall;
external ´w95_s7.dll´ name ´load_tool´;

function DB_read ( dbno: longint;

dwno: longint;
var amount: longint;
var buffer): longint

stdcall;
external ´ w95_s7.dll´ name ´db_read´;

function Unload_tool: longint;
stdcall;
external ´ w95_s7.dll´ name ´unload_tool´;

Beispiel:

var

plc_adr_table : array [0..15] of byte;
name:array[0..255] of char;
res ,amount: longint;
buffer : array[0..255] of word;

plc_adr_table[0] := 2; {adresse}
plc_adr_table[1] := 0; {segment id}
plc_adr_table[2] := 2; {slot nr}
plc_adr_table[3] := 0; {rack nr}
plc_adr_table[4] := 0;
strcopy(name,'S7ONLINE');
res := Load_tool(1,addr(name),addr(plc_adr_table[0]));
res := DB_read(10,0,amount,buffer);
res := Unload_tool;

background image

Bedienung

PRODAVE MPI V6.0

3-8

A5E00417149-01

3.5.2

PRODAVE unter Access (32-Bit) Beispiel

Um PRODAVE-Funktionen unter Access nutzen zu können, müssen Sie diese wie
folgt deklarieren:

Declare Function load_tool Lib " w95_s7" ( ByVal no As Byte, ByVal name As
String, ByVal adr As String) As Long

Declare Function db_read Lib " w95_s7" ( ByVal dbno As Long, ByVal dwno As
Long, amount As Long, buffer As Integer) As Long

Declare Function unload_tool Lib " w95_s7" () As Long

Beispiel:

Dim dbno As Long, dwno As Long, amount As Long Dim buffer(50) As Integer Dim
plc_adr_table As String

res = load_tool 1, "S7ONLINE", plc_adr_table res = db_read dbno, dwno, amount,
buffer(0) res = unload_tool

3.5.3

PRODAVE unter Visual Basic (32-Bit) Beispiel

Um PRODAVE-Funktionen unter Visual-Basic nutzen zu können, müssen Sie
diese wie folgt deklarieren:

Declare Function load_tool Lib " w95_s7.dll" (ByVal nr As Byte, ByVal dev As
String, adr As plcadrtype) As Long

Declare Function db_read Lib " w95_s7.dll" ( ByVal dbno As Long, ByVal dwno As
Long, amount As Long, buffer%) As Long

Declare Function unload_tool Lib " w95_s7.dll" () As Long

Beispiel:

Dim dbno As Long, dwno As Long, amount As Long Dim buffer(50) As Integer

Type plcadrtype adr As Byte SEGMENTID As Byte SLOTNO As Byte RACKNO As
Byte

End Type

Dim plcadr (5) As plcadrtype

plcadr(0).adr = 2 plcadr(0).SEGMENTID = 0 plcadr(0).SLOTNO = 2
plcadr(0).RACKNO = 0 plcadr(1).adr = 0

res = load_tool (1, "S7ONLINE", plcadr) res = db_read (dbno, dwno, amount,
buffer(0)) res = unload_tool()

background image

PRODAVE MPI V6.0
A5E00417149-01

4-1

4

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI
V6.0

PRODAVE MPI
V6.0 Mini

neue Abbildung in V6.0

Version

bis V5.6

bis V5.6

W95_S7. DLL

W95_S7M.DLL

Library

KOMFORT.DLL

KOMFORT.DLL

W95_S7. H

W95_S7M.H

Header

KOMFORT.H

KOMFORT.H

Grundfunktionen

load_tool: MPI/Profibus

x

x

LoadConnection_ex6

unload_tool: MPI/Profibus oder ISO-
Protokoll

x x

UnloadConnection_ex6

new_ss: MPI/Profibus oder ISO-
Protokoll

x x

SetActiveConnection_ex6

Funktionen Datenverkehr zur S7 300/400

ag_info x

x

as_info_ex6

ag_zustand x

as_zustand_ex6

db_buch x

db_buch_ex6

db_read x

x

db_read_ex6

d_field_read x

e_field_read x

a_field_read x

m_field_read x

t_field_read x

z_field_read x

mix_read x

field_read_ex6

db_write x

x

db_write_ex6

d_field_write x

a_field_write x

m_field_write x

z_field_write x

mix_write x

field_write_ex6

mb_setbit x

mb_resetbit x

mb_setbit_ex6

mb_bittest x

mb_bittest_ex6

Funktionen Datenverkehr zur S7 200

as200_ag_info x

x

as200_as_info_ex6

as200_ag_zustand x

as200_as_zustand_ex6

as200_e_field_read x

as200_field_read_ex6

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0

4-2

A5E00417149-01

as200_a_field_read x

as200_m_field_read x

as200_sm_field_read x

as200_vs_field_read x x

as200_t_field_read x

as200_z_field_read x

as200_mix_read

x

as200_a_field_write x

as200_m_field_write x

as200_sm_field_write x

as200_vs_field_write x x

as200_z_field_write x

as200_mix_write x

as200_field_write_ex6

as200_mb_setbit x

as200_mb_resetbit x

as200_mb_setbit_ex6

as200_mb_bittest x

as200_mb_bittest_ex6

Komfortfunktionen

error_message x

x

GetErrorMessage_ex6

kg_to_float x

x

kg_2_float_ex6

float_to_kg x

x

float_2_kg_ex6

gp_to_float x

x

gp_2_float_ex6

float_to_gp x

x

float_2_gp_ex6

testbit x

x

testbit_ex6

byte_boolean x

x

byte_2_bool_ex6

boolean_byte x

x

bool_2_byte_ex6

kf_integer x

x

kf_2_integer_ex6

swab_buffer *

2

x

x

swab_buffer_ex6

copy_buffer *

2

x

x

copy_buffer_ex6

USHORT_2_bcd *

2

x

x

ushort_2_bcd_ex6

bcd_2_USHORT *

2

x

x

bcd_2_ushort_ex6

Teleservice Funktionen

ts_dial x

ts_dial_ex6

ts_hang_up_dial x

ts_hang_up_dial_ex6

ts_set_ringindicator x

ts_set_ringindicator_ex6

ts_read_info x

ts_read_info_ex6

ts_hang_up_ring x

ts_hang_up_ring_ex6

ts_get_modem_name

*

2

x

ts_get_modem_name

_ex6

*

2

Diese Funktionen sind in der Anwenderdokumentation von PRODAVE S7 V5.6 nicht

dokumentiert!

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0
A5E00417149-01

4-3

4.1 Grundfunktionen

4.1.1 load_tool

Die Grundfunktion load_tool initialisiert den Adapter, prüfen ob der Treiber
geladen ist, initialisieren die parametrierten Adressen und schalten die angewählte
Schnittstelle aktiv.

Mit load_tool werden Transportverbindung via MPI/PB-Adressen aufgebaut.

int load_tool (char chConNo, char* pstrAccessPoint, char* pConTable);

Parameter

chConNo

[in] Nummer der Verbindung.

pstrAccessPoint

[in] Zugangspunkt (nullterminiert) des verwendeten Treibers z.B. "S7ONLINE" für
den MPI-Treiber oder 0 (default).

pConTable

[in] Zeiger auf Adressliste der angeschlossenen Teilnehmer. cAdr == 0 wird als
Endekennung der Liste gewertet.

Rückgabewerte

Wenn keine Fehler aufgetreten sind, liefert die Funktion als Rückgabewert eine 0,
andernfalls eine Fehlernummer, die anhand der Fehlertabelle ausgewertet werden
kann (siehe error_message).

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0

4-4

A5E00417149-01

Aufrufbeispiel

Mit der AS300/400 können maximal 32 Verbindungen eingerichtet werden.

Mit der AS200 darf maximal eine Verbindung eingerichtet werden.

Aufbau Adresslisten:

#pragma pack(1)

typedef struct {

unsigned char

cAdr; //

Stationsadresse

unsigned char

cSegmentId;

// Segment-ID

unsigned char

cSlotNo;

// Steckplatznummer

unsigned char

cRackNo; //

Baugruppenträgernummer

} adr_table_type;

#pragma pack()

Jeder Teilnehmer wird durch den Eintrag in der Adressliste beschrieben:

cAdr

Stationsadresse des Teilnehmers, default: 2

cSegmentId

Segment ID des Teilnehmers, default: 0 (reserviert für spätere
Erweiterungen)

cSlotNo

Steckplatznummer des Teilnehmers, default: 1

cRackNo

Baugruppenträgernummer des Teilnehmers, default: 0

Voraussetzungen

V5.6

load_tool,

load_tool_ex

V6.0 LoadConnection_ex6

Windows:

95, ME, NT4, 2000, XP

Header: W95_S7.H,

W95_S7M.H

Library: W95_S7.DLL,

W95_S7M.DLL

Siehe auch:

unload_tool, new_ss, LoadConnection_ex6

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0
A5E00417149-01

4-5

4.1.2 unload_tool

Die Grundfunktion unload_tool deinitialisiert die Verbindungen und den Adapter
und muss vor dem Beenden der Applikation aufgerufen werden.

Mit unload_tool werden Verbindungen deinitialisiert, die mit load_tool initialisiert
wurden.

int unload_tool (void);

Parameter

Keine

Rückgabewerte

Wenn keine Fehler aufgetreten sind, liefert die Funktion als Rückgabewert eine 0,
andernfalls eine Fehlernummer, die anhand der Fehlertabelle ausgewertet werden
kann (siehe error_message).

Aufrufbeispiel

Keines

Voraussetzungen

V5.6

unload_tool

V6.0
UnloadConnection_ex6

Windows:

95, ME, NT4, 2000, XP

Header: W95_S7.H,

W95_S7M.H

Library: W95_S7.DLL,

W95_S7M.DLL

Siehe auch:

load_tool, new_ss, UnloadConnection_ex6

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0

4-6

A5E00417149-01

4.1.3 new_ss

Die Grundfunktion new_ss schaltet die Verbindung des PG/PC aktiv, über die der
weitere Datenaustausch stattfinden soll.

Die Beschreibung der Verbindungen bzw. Teilnehmer für new_ss wird bei den
Funktionen load_tool übergeben.

int new_ss (char chConNo);

Parameter

chConNo

[in] Nummer der Verbindung, die aktiviert werden soll.

Rückgabewerte

Wenn keine Fehler aufgetreten sind, liefert die Funktion als Rückgabewert eine 0,
andernfalls eine Fehlernummer, die anhand der Fehlertabelle ausgewertet werden
kann (siehe error_message).

Aufrufbeispiel

Keines

Voraussetzungen

V5.6

new_ss

V6.0
SetActiveConnection_ex6

Windows:

95, ME, NT4, 2000, XP

Header: W95_S7.H,

W95_S7M.H

Library: W95_S7.DLL,

W95_S7M.DLL

Siehe auch:

load_tool, unload_tool, SetActiveConnection_ex6

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0
A5E00417149-01

4-7

4.2

Funktionen zum Datenverkehr zur S7 300/400

4.2.1 ag_info

Die Funktion ag_info liest den Ausgabestand der AG-Software und der PG-
Anschaltung, sowie die MLFB-Nummer des AG aus und legt diese als ASCII-String
nullterminiert im Übergabepuffer des PG/PC ab.

int ag_info (void *

Buffer);

Parameter

Buffer

[out] Übergabepuffer mit den zu liefernden AG-Informationen

Rückgabewerte

Wenn keine Fehler aufgetreten sind, liefert die Funktion als Rückgabewert eine 0,
andernfalls eine Fehlernummer, die anhand der Fehlertabelle ausgewertet werden
kann (siehe error_message).

Aufrufbeispiel

char

Buffer[MAX_BUFFER];

unsigned short * wBuffer = (unsigned short *
)Buffer;

// wortweiser Zugriff

Die Ausgabestände müssen als Integerwerte, die MLFB als ASCII-Werte interpretiert
werden.

wBuffer[0] Integerwert

Ausgabestand

PLC

wBuffer[2] Integerwert

Ausgabestand

PGAS

Buffer[4] ...Buffer[24]

ASCII-Wert MLFB des angeschlossenen
AGs

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0

4-8

A5E00417149-01

Voraussetzungen

V5.6

ag_info

V6.0

as_info_ex6

Windows:

95, ME, NT4, 2000, XP

Header: W95_S7.H,

W95_S7M.H

Library: W95_S7.DLL,

W95_S7M.DLL

Siehe auch:

ag_zustand, as_info_ex6

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0
A5E00417149-01

4-9

4.2.2 ag_zustand

Die Funktion ag_zustand liest den AG-Zustand (RUN oder STOP) aus dem AG
aus und legt die Daten in einem Speicherbereich des PG/PC ab.

int ag_zustand (void * Buffer);

Parameter

Buffer

[out] Übergabepuffer mit den zu liefernden AG-Zuständen

Rückgabewerte

Wenn keine Fehler aufgetreten sind, liefert die Funktion als Rückgabewert eine 0,
andernfalls eine Fehlernummer, die anhand der Fehlertabelle ausgewertet werden
kann (siehe error_message).

Aufrufbeispiel

char

Buffer[MAX_BUFFER];

unsigned char * cBuffer = (unsigned char *)Buffer; // byteweiser vorzeichenloser

Zugriff

cBuffer[0]

==

0

AG

ist

im

Zustand

RUN

cBuffer[0]

!= 0

AG ist im Zustand STOP oder im Zustand

ANLAUF

Voraussetzungen

V5.6

ag_zustand

V6.0

as_zustand_ex6

Windows:

95, ME, NT4, 2000, XP

Header: W95_S7.H,

W95_S7M.H

Library: W95_S7.DLL,

W95_S7M.DLL

Siehe auch:

ag_info, as_zustand_ex6

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0

4-10

A5E00417149-01

4.2.3 db_buch

Die Funktion db_buch prüft, welche Datenbausteine im AG vorhanden sind.
Hierbei muss ein 512 Worte großer Übergabepuffer bereitgestellt werden, für jeden
Baustein ein Wort. Ist der Wert im indizierten Pufferwort == 0, so ist der
zugeordnete Baustein nicht vorhanden.

int db_buch (void * Buffer);

Parameter

Buffer

[out] Übergabepuffer mit der zu liefernden DB-Liste

Rückgabewerte

Wenn keine Fehler aufgetreten sind, liefert die Funktion als Rückgabewert eine 0,
andernfalls eine Fehlernummer, die anhand der Fehlertabelle ausgewertet werden
kann (siehe error_message).

Aufrufbeispiel

char

Buffer[MAX_BUFFER];

unsigned short * wBuffer = (unsigned short * )Buffer;

// wortweiser Zugriff

wBuffer[0]

!=

0

DB0

ist

vorhanden

wBuffer[24]

== 0

DB24 ist nicht vorhanden

wBuffer[511]

!= 0

DB511 ist vorhanden

Voraussetzungen

V5.6 db_buch

V6.0 db_buch_ex6

Windows:

95, ME, NT4, 2000, XP

Header: W95_S7.H,

W95_S7M.H

Library: W95_S7.DLL,

W95_S7M.DLL

Siehe auch:

db_buch_ex6

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0
A5E00417149-01

4-11

4.2.4 db_read

Die Funktion db_read liest eine Anzahl Datenworte aus einem Datenbaustein im
AG aus und transferiert diese in einen Übergabepuffer des PG/PC.

Mit db_read können Datenworte wortweise (pnAnzahl = 1) oder blockweise
(pnAnzahl > 1) ausgelesen werden.

int db_read (int nBstNo, int nStartNo, int * pnAnzahl, void * Buffer);

Parameter

nBstNo

[in] Nummer des Datenbausteins

nStartNo

[in] Startnummer des ersten zu lesenden Datenwortes

pnAnzahl

[in/out] Anzahl der zu lesenden Datenworte

Buffer

[out] Übergabepuffer für die gelesenen Datenworte

Rückgabewerte

Wenn keine Fehler aufgetreten sind, liefert die Funktion als Rückgabewert eine 0,
andernfalls eine Fehlernummer, die anhand der Fehlertabelle ausgewertet werden
kann (siehe error_message).

Existiert der Datenbaustein nicht, so wird dies durch einen Rückgabewert =
Fehlernummer angegeben.

Sollen mehr Daten gelesen werden als im Datenbaustein vorhanden sind, so wird
der Inhalt von

pnAnzahl korrigiert und eine Fehlermeldung 303 Hex

zurückgegeben.

Aufrufbeispiel

char

Buffer[MAX_BUFFER];

unsigned short * wBuffer = (unsigned short *)Buffer;

//wortweiser Zugriff

Achtung: Beim Zugriff auf einen Datenbaustein sind die Datenworte in Buffer nicht
nach Intel-Notation (low Byte - high Byte), sondern in STEP5-Notation (high Byte -
low Byte) abgelegt. Bei einer Weiterverarbeitung der Daten muss dies beachtet
werden. Zum Tauschen von Bytes stehen die Funktionen kf_integer und
swab_buffer zur Verfügung.

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0

4-12

A5E00417149-01

Voraussetzungen

V5.6 db_read

V6.0 db_read_ex6

Windows:

95, ME, NT4, 2000, XP

Header: W95_S7.H,

W95_S7M.H

Library: W95_S7.DLL,

W95_S7M.DLL

Siehe auch:

db_write, kf_integer, swab_buffer, db_read_ex6

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0
A5E00417149-01

4-13

4.2.5 d_field_read

Die Funktion d_field_read liest eine Anzahl Datenbytes aus einem Datenbaustein
im AG aus und transferiert diese in einen Übergabepuffer des PG/PC.

int d_field_read (int

nBstNo, int nStartNo, int * pnAnzahl, void * Buffer);

Parameter

nBstNo

[in] Nummer des Datenbausteins

nStartNo

[in] Startnummer des ersten zu lesenden Datenbytes

pnAnzahl

[in] Anzahl der zu lesenden Datenbytes

Buffer

[out] Übergabepuffer für die gelesenen Datenbytes

Rückgabewerte

Wenn keine Fehler aufgetreten sind, liefert die Funktion als Rückgabewert eine 0,
andernfalls eine Fehlernummer, die anhand der Fehlertabelle ausgewertet werden
kann (siehe error_message).

Aufrufbeispiel

char

Buffer[MAX_BUFFER];

unsigned char * cBuffer = (unsigned char *)Buffer; // byteweiser vorzeichenloser

Zugriff

Voraussetzungen

V5.6 d_field_read

V6.0 field_read_ex6

Windows:

95, ME, NT4, 2000, XP

Header: W95_S7.H,

W95_S7M.H

Library: W95_S7.DLL,

W95_S7M.DLL

Siehe auch:

e|a|m_field_read, t|z_field_read, field_read_ex6

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0

4-14

A5E00417149-01

4.2.6 e|a|m_field_read

Die Funktionen lesen eine Anzahl Bytes aus dem AG aus und transferieren diese
in einen Übergabepuffer des PG/PC.

Mit e_field_read werden Eingangsbytes gelesen.

Mit a_field_read werden Ausgangsbytes gelesen.

Mit m_field_read werden Merkerbytes gelesen.

int e_field_read (int nStartNo, int * pnAnzahl, void * Buffer);

int a_field_read (int nStartNo, int * pnAnzahl, void * Buffer);

int m_field_read (int nStartNo, int * pnAnzahl, void * Buffer);

Parameter

nStartNo

[in] Startnummer des ersten zu lesenden Bytes

pnAnzahl

[in] Anzahl der zu lesenden Bytes

Buffer

[out] Übergabepuffer für die gelesenen Bytes

Rückgabewerte

Wenn keine Fehler aufgetreten sind, liefert die Funktion als Rückgabewert eine 0,
andernfalls eine Fehlernummer, die anhand der Fehlertabelle ausgewertet werden
kann (siehe error_message).

Aufrufbeispiel

char

Buffer[MAX_BUFFER];

unsigned char * cBuffer = (unsigned char *)Buffer; // byteweiser vorzeichenloser

Zugriff

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0
A5E00417149-01

4-15

Voraussetzungen

V5.6 e_field_read, …

V6.0 field_read_ex6

Windows:

95, ME, NT4, 2000, XP

Header: W95_S7.H,

W95_S7M.H

Library: W95_S7.DLL,

W95_S7M.DLL

Siehe auch:

d_field_read, t|z_field_read, field_read_ex6

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0

4-16

A5E00417149-01

4.2.7 t|z_field_read

Die Funktionen lesen eine Anzahl Worte aus dem AG aus und transferieren diese
in einen Übergabepuffer des PG/PC.

Mit t_field_read werden Timerworte gelesen.

Mit z_field_read werden Zählerworte gelesen.

int t_field_read (int nStartNo, int * pnAnzahl, void * Buffer);

int z_field_read (int nStartNo, int * pnAnzahl, void * Buffer);

Parameter

nStartNo

[in] Startnummer des ersten zu lesenden Wortes

pnAnzahl

[in] Anzahl der zu lesenden Worte

Buffer

[out] Übergabepuffer für die gelesenen Worte

Rückgabewerte

Wenn keine Fehler aufgetreten sind, liefert die Funktion als Rückgabewert eine 0,
andernfalls eine Fehlernummer, die anhand der Fehlertabelle ausgewertet werden
kann (siehe error_message).

Aufrufbeispiel

char

Buffer[MAX_BUFFER];

unsigned short * wBuffer = (unsigned short *)Buffer;

//wortweiser Zugriff

Voraussetzungen

V5.6 t_field_read

V6.0 field_read_ex6

Windows:

95, ME, NT4, 2000, XP

Header: W95_S7.H,

W95_S7M.H

Library: W95_S7.DLL,

W95_S7M.DLL

Siehe auch:

d|e|a|m_field_read, field_read_ex6

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0
A5E00417149-01

4-17

4.2.8 mix_read

Die Funktion mix_read liest die durch "data" parametrierten Daten aus einem
Datenbaustein im AG aus und transferiert diese in einen Übergabepuffer des
PG/PC.

Mit mix_read kann Size ein Byte oder ein Wort sein.

int mix_read (char * pData, void * Buffer);

Parameter

pData

[in] Zeiger auf Typliste. Typelementinhalt == 0 wird als Endekennung der Liste
gewertet.

Buffer

[out] Übergabepuffer für die gelesenen Datenbytes/-worte/-doppelworte

Rückgabewerte

Wenn keine Fehler aufgetreten sind, liefert die Funktion als Rückgabewert eine 0,
andernfalls eine Fehlernummer, die anhand der Fehlertabelle ausgewertet werden
kann (siehe error_message).

Aufrufbeispiel

Die Funktion ermöglicht das Lesen von gemischten Daten. Es können maximal 20
Listenelemente angelegt werden! Auf die Typliste kann mit Hilfe einer Struktur
zugegriffen werden:

#pragma pack(1)

typedef

struct

{

unsigned

char

Typ;

unsigned

char

Size;

unsigned

short

nBstNo;

unsigned

short

nDatNo;

}

mix_tab_type;

#pragma pack()

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0

4-18

A5E00417149-01

Typ

Folgende Daten können gelesen werden (ASCII-Zeichen klein oder groß):

e

Eingangsbytes

a

Ausgangsbytes

m

Merkerbytes

t

Timerworte

z

Zählerworte

d

Daten

aus

DB

Size

Die zu lesenden Daten können folgende Datentypen haben (ASCII-Zeichen klein
oder groß):

b,w Byte

oder

Wort

bei

den

Eingangsbytes

b,w Byte

oder

Wort

bei

den

Ausgangsbytes

b,w Byte

oder

Wort

bei

den

Merkerbytes

w

Wort

bei

den

Timerworten

w

Wort

bei

den

Zählerworte

nBstNo

Nummer des Datenbausteins

nDatNo

Nummer des zu lesenden Datenbytes/-wortes/-doppelwortes

Bei Typ m, t und z

0 ... 255

Bei

Typ

d

0

...

4090

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0
A5E00417149-01

4-19

"data" muss folgenden Aufbau haben:

Size = ’b’

Byte lesen und im Puffer eintragen

Size = ’w’

Wort lesen und im Puffer eintragen

Die gelesenen Werte werden im Puffer sequenziell eingetragen. D.h. der
Anwender muss selber das mit den gelesenen Werten belegte Feld strukturiert
bearbeiten:

char

Buffer[MAX_BUFFER];

unsigned char * cBuffer = (unsigned char *)Buffer; // byteweiser vorzeichenloser

Zugriff

unsigned short * wBuffer = (unsigned short *)Buffer; // wortweiser Zugriff

Achtung: Beim Zugriff auf einen Datenbaustein sind die Datenworte in Buffer nicht
nach Intel-Notation (low Byte - high Byte), sondern in STEP5-Notation (high Byte -
low Byte) abgelegt. Bei einer Weiterverarbeitung der Daten muss dies beachtet
werden. Zum Tauschen von Bytes stehen die Funktionen kf_integer und
swab_buffer zur Verfügung.

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0

4-20

A5E00417149-01

Voraussetzungen

V5.6 mix_read

V6.0 field_read_ex6

Windows:

95, ME, NT4, 2000, XP

Header: W95_S7.H,

W95_S7M.H

Library: W95_S7.DLL,

W95_S7M.DLL

Siehe auch:

mix_write, kf_integer, swab_buffer, field_read_ex6

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0
A5E00417149-01

4-21

4.2.9 db_write

Die Funktion db_write schreibt eine Anzahl Datenworte aus einen Übergabepuffer
des PG/PC in einen Datenbaustein des AG.

Mit db_write können Datenworte wortweise (pnAnzahl = 1) oder blockweise
(pnAnzahl > 1) geschrieben werden.

int db_ write (int nBstNo, int nStartNo, int * pnAnzahl, void * Buffer);

Parameter

nBstNo

[in] Nummer des Datenbausteins

nStartNo

[in] Startnummer des ersten zu schreibenden Datenwortes

pnAnzahl

[in/out] Anzahl der zu schreibenden Datenworte

Buffer

[in] Übergabepuffer für die zu schreibenden Datenworte

Rückgabewerte

Wenn keine Fehler aufgetreten sind, liefert die Funktion als Rückgabewert eine 0,
andernfalls eine Fehlernummer, die anhand der Fehlertabelle ausgewertet werden
kann (siehe error_message).

Existiert der Datenbaustein nicht, so wird dies durch einen Rückgabewert =
Fehlernummer angegeben.

Aufrufbeispiel

char

Buffer[MAX_BUFFER];

unsigned short * wBuffer = (unsigned short *)Buffer; // wortweiser Zugriff

Achtung: Beim Schreiben in einen Datenbaustein müssen die Datenworte in Buffer
nicht nach Intel-Notation (low Byte - high Byte), sondern in STEP5-Notation (high
Byte - low Byte) abgelegt werden. Zum Tauschen von Bytes stehen die Funktionen
kf_integer und swab_buffer zur Verfügung.

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0

4-22

A5E00417149-01

Voraussetzungen

V5.6 db_write

V6.0 db_write_ex6

Windows:

95, ME, NT4, 2000, XP

Header: W95_S7.H,

W95_S7M.H

Library: W95_S7.DLL,

W95_S7M.DLL

Siehe auch:

db_read, kf_integer, swab_buffer, db_write_ex6

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0
A5E00417149-01

4-23

4.2.10 d_field_write

Die Funktion d_field_write schreibt eine Anzahl Datenbytes aus einen
Übergabepuffer des PG/PC in einen Datenbaustein des AG.

int d_field_write (int

nBstNo, int nStartNo, int * pnAnzahl, void * Buffer);

Parameter

nBstNo

[in] Nummer des Datenbausteins

nStartNo

[in] Startnummer des ersten zu schreibenden Datenbytes

pnAnzahl

[in] Anzahl der zu schreibenden Datenbytes

Buffer

[in] Übergabepuffer für die zu schreibenden Datenbytes

Rückgabewerte

Wenn keine Fehler aufgetreten sind, liefert die Funktion als Rückgabewert eine 0,
andernfalls eine Fehlernummer, die anhand der Fehlertabelle ausgewertet werden
kann (siehe error_message).

Aufrufbeispiel

char

Buffer[MAX_BUFFER];

unsigned char * cBuffer = (unsigned char *)Buffer; // byteweiser vorzeichenloser

Zugriff

Voraussetzungen

V5.6 d_field_write

V6.0 field_write_ex6

Windows:

95, ME, NT4, 2000, XP

Header: W95_S7.H,

W95_S7M.H

Library: W95_S7.DLL,

W95_S7M.DLL

Siehe auch:

e|a|m_field_write, z_field_write, field_write_ex6

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0

4-24

A5E00417149-01

4.2.11 a|m_field_write

Die Funktionen schreiben eine Anzahl Bytes aus einem Übergabepuffer des
PG/PC in das AG.

Mit a_field_write werden Ausgangsbytes geschrieben.

Mit m_field_write werden Merkerbytes geschrieben.

int a_field_ write (int nStartNo, int * pnAnzahl, void * Buffer);

int m_field_ write (int nStartNo, int * pnAnzahl, void * Buffer);

Parameter

nStartNo

[in] Startnummer des ersten zu schreibenden Bytes

pnAnzahl

[in] Anzahl der zu schreibenden Bytes

Buffer

[out] Übergabepuffer für die zu schreibenden Bytes

Rückgabewerte

Wenn keine Fehler aufgetreten sind, liefert die Funktion als Rückgabewert eine 0,
andernfalls eine Fehlernummer, die anhand der Fehlertabelle ausgewertet werden
kann (siehe error_message).

Aufrufbeispiel

char

Buffer[MAX_BUFFER];

unsigned char * cBuffer = (unsigned char *)Buffer; // byteweiser vorzeichenloser

Zugriff

Voraussetzungen

V5.6 a_field_write, …

V6.0 field_write_ex6

Windows:

95, ME, NT4, 2000, XP

Header: W95_S7.H,

W95_S7M.H

Library: W95_S7.DLL,

W95_S7M.DLL

Siehe auch:

d_field_write, z_field_write, field_write_ex6

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0
A5E00417149-01

4-25

4.2.12 z_field_write

Die Funktion z_field_write schreibt eine Anzahl Zählerworte aus einem
Übergabepuffer des PG/PC in das AG.

int z_field_ write (int nStartNo, int * pnAnzahl, void * Buffer);

Parameter

nStartNo

[in] Startnummer des ersten zu schreibenden Zählerwortes

pnAnzahl

[in] Anzahl der zu schreibenden Zählerworte

Buffer

[out] Übergabepuffer für die zu schreibenden Zählerworte

Rückgabewerte

Wenn keine Fehler aufgetreten sind, liefert die Funktion als Rückgabewert eine 0,
andernfalls eine Fehlernummer, die anhand der Fehlertabelle ausgewertet werden
kann (siehe error_message).

Aufrufbeispiel

char

Buffer[MAX_BUFFER];

unsigned short * wBuffer = (unsigned short *)Buffer; // wortweiser Zugriff

Voraussetzungen

V5.6 z_field_write

V6.0 field_write_ex6

Windows:

95, ME, NT4, 2000, XP

Header: W95_S7.H,

W95_S7M.H

Library: W95_S7.DLL,

W95_S7M.DLL

Siehe auch:

d|a|m_field_write, field_write_ex6

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0

4-26

A5E00417149-01

4.2.13 mix_write

Die Funktion mix_write schreibt die durch "data" parametrierten Daten aus einem
Übergabepuffer des PG/PC in einen Datenbaustein des AG.

Mit mix_write kann Size ein Byte oder ein Wort sein.

int mix_ write (char *

pData, void * Buffer);

Parameter

pData

[in] Zeiger auf Typliste. Typelementinhalt == 0 wird als Endekennung der Liste
gewertet.

Buffer

[out] Übergabepuffer für die zu schreibenden Datenbytes/-worte/-doppelworte

Rückgabewerte

Wenn keine Fehler aufgetreten sind, liefert die Funktion als Rückgabewert eine 0,
andernfalls eine Fehlernummer, die anhand der Fehlertabelle ausgewertet werden
kann (siehe error_message).

Aufrufbeispiel

Die Funktion ermöglicht das Schreiben von gemischten Daten. Es können maximal
20 Listenelemente angelegt werden

.

Auf die Typliste kann mit Hilfe einer Struktur

zugegriffen werden:

#pragma pack(1)

typedef struct {

unsigned char

Typ;

unsigned char

Size;

unsigned short

nBstNo;

unsigned short

nDatNo;

}

mix_tab_type;

#pragma pack()

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0
A5E00417149-01

4-27

Typ

Folgende Daten können geschrieben werden (ASCII-Zeichen klein oder groß):

e/E

Eingangsbytes

a/A

Ausgangsbytes

m/M Merkerbytes

t/T

Timerworte

z/Z

Zählerworte

d/D Daten

in

DB

Size

Die zu schreibenden Daten können folgende Datentypen haben (ASCII-Zeichen
klein oder groß):

b,w Byte

oder

Wort

bei

den

Eingangsbytes

b,w Byte

oder

Wort

bei

den

Ausgangsbytes

b,w Byte

oder

Wort

bei

den

Merkerbytes

w

Wort

bei

den

Timerworten

w

Wort

bei

den

Zählerworte

nBstNo

Nummer des Datenbausteins

nDatNo

Nummer des zu schreibenden Datenbytes/-wortes/-doppelwortes

Bei Typ m, t und z

0 ... 255

Bei

Typ

d

0

...

4090

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0

4-28

A5E00417149-01

"data" muss folgenden Aufbau haben:

Size = ’b’

Byte im Puffer eintragen

Size = ’w’

Wort im Puffer eintragen

Die zu schreibenden Werte müssen im Puffer sequenziell eingetragen werden:

char

Buffer[MAX_BUFFER];

unsigned char * cBuffer = (unsigned char *)Buffer; // byteweiser vorzeichenloser

Zugriff

unsigned short * wBuffer = (unsigned short *)Buffer; // wortweiser Zugriff

unsigned long * dwBuffer = (unsigned long *)Buffer; // doppelwortweiser Zugriff

Achtung: Beim Schreiben in einen Datenbaustein müssen die Datenworte in Buffer
nicht nach Intel-Notation (low Byte - high Byte), sondern in STEP5-Notation (high
Byte - low Byte) abgelegt werden. Zum Tauschen von Bytes stehen die Funktionen
kf_integer und swab_buffer zur Verfügung.

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0
A5E00417149-01

4-29

Voraussetzungen

V5.6 mix_write

V6.0 field_write_ex6

Windows:

95, ME, NT4, 2000, XP

Header: W95_S7.H,

W95_S7M.H

Library: W95_S7.DLL,

W95_S7M.DLL

Siehe auch:

mix_read, kf_integer, swab_buffer, field_write_ex6

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0

4-30

A5E00417149-01

4.2.14 mb_setbit

Die Funktion mb_setbit setzt einen Merker im AG auf 1. Es erfolgt keine
Abprüfung, ob das Merkerbit in dem verwendeten AG vorhanden ist.

int mb_setbit (int nMbNo, int nBitNo);

Parameter

nMbNo

[in] Nummer des Merkerbytes

nBitNo

[in] Bitnummer im Merkerbyte

Rückgabewerte

Wenn keine Fehler aufgetreten sind, liefert die Funktion als Rückgabewert eine 0,
andernfalls eine Fehlernummer, die anhand der Fehlertabelle ausgewertet werden
kann (siehe error_message).

Aufrufbeispiel

Keines

Voraussetzungen

V5.6 mb_setbit

V6.0 mb_setbit_ex6

Windows:

95, ME, NT4, 2000, XP

Header: W95_S7.H,

W95_S7M.H

Library: W95_S7.DLL,

W95_S7M.DLL

Siehe auch:

mb_resetbit, mb_bittest, mb_setbit_ex6

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0
A5E00417149-01

4-31

4.2.15 mb_resetbit

Die Funktion mb_resetbit setzt einen Merker im AG auf 0. Es erfolgt keine
Abprüfung, ob das Merkerbit in dem verwendeten AG vorhanden ist.

int mb_resetbit (int nMbNo, int nBitNo);

Parameter

nMbNo

[in] Nummer des Merkerbytes

nBitNo

[in] Bitnummer im Merkerbyte

Rückgabewerte

Wenn keine Fehler aufgetreten sind, liefert die Funktion als Rückgabewert eine 0,
andernfalls eine Fehlernummer, die anhand der Fehlertabelle ausgewertet werden
kann (siehe error_message).

Aufrufbeispiel

Keines

Voraussetzungen

V5.6 mb_resetbit

V6.0 mb_setbit_ex6

Windows:

95, ME, NT4, 2000, XP

Header: W95_S7.H,

W95_S7M.H

Library: W95_S7.DLL,

W95_S7M.DLL

Siehe auch:

mb_setbit, mb_bittest, mb_setbit_ex6

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0

4-32

A5E00417149-01

4.2.16 mb_bittest

Die Funktion mb_bittest prüft ein Bit in einem angegebenen Merkerbyte und liefert
im *bitwert den Zustand des angegebenen Bits.

int mb_bittest (int nMbNo, int nBitNo, char * bitwert);

Parameter

nMbNo

[in] Nummer des Merkerbytes

nBitNo

[in] Bitnummer im Merkerbyte

bitwert

[out] Übergabepuffer mit dem getesteten Bitwert

Rückgabewerte

Wenn keine Fehler aufgetreten sind, liefert die Funktion als Rückgabewert eine 0,
andernfalls eine Fehlernummer, die anhand der Fehlertabelle ausgewertet werden
kann (siehe error_message).

Aufrufbeispiel

Keines

Voraussetzungen

V5.6 mb_bittest

V6.0 mb_bittest_ex6

Windows:

95, ME, NT4, 2000, XP

Header: W95_S7.H,

W95_S7M.H

Library: W95_S7.DLL,

W95_S7M.DLL

Siehe auch:

mb_setbit, mb_resetbit, mb_bittest_ex6

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0
A5E00417149-01

4-33

4.3

Funktionen Datenverkehr zur S7 200

4.3.1 as200_ag_info

Die Funktion as200_ag_info liest den Ausgabestand der AG-Software und der
PG-Anschaltung, sowie den PLC-Typ des AG aus und legt diese als ASCII-String
nullterminiert im Übergabepuffer des PG/PC ab.

int as200_ag_info (void * Buffer);

Parameter

Buffer

[out] Übergabepuffer mit den zu liefernden AG-Informationen

Rückgabewerte

Wenn keine Fehler aufgetreten sind, liefert die Funktion als Rückgabewert eine 0,
andernfalls eine Fehlernummer, die anhand der Fehlertabelle ausgewertet werden
kann (siehe error_message).

Aufrufbeispiel

char

Buffer[MAX_BUFFER];

unsigned short * wBuffer = (unsigned short * )Buffer;

// wortweiser Zugriff

Die Ausgabestände müssen als Integerwerte, die MLFB als ASCII-Werte
interpretiert werden.

wBuffer[0]

Integerwert

Ausgabestand

PLC

wBuffer[2]

Integerwert

Ausgabestand

PGAS

Buffer[4] ...Buffer[24]

ASCII-Wert PLC-Typ des angeschlossenen AG

Voraussetzungen

V5.6

as200_ag_info

V6.0

as200_as_info_ex6

Windows:

95, ME, NT4, 2000, XP

Header: W95_S7.H,

W95_S7M.H

Library: W95_S7.DLL,

W95_S7M.DLL

Siehe auch:

as200_ag_zustand, as200_as_info_ex6

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0

4-34

A5E00417149-01

4.3.2 as200_ag_zustand

Die Funktion as200_ag_zustand liest den AG-Zustand (RUN oder STOP) aus
dem AG aus und legt die Daten in einem Speicherbereich des PG/PC ab.

int as200_ag_zustand (void * Buffer);

Parameter

Buffer

[out] Übergabepuffer mit den zu liefernden AG-Zuständen

Rückgabewerte

Wenn keine Fehler aufgetreten sind, liefert die Funktion als Rückgabewert eine 0,
andernfalls eine Fehlernummer, die anhand der Fehlertabelle ausgewertet werden
kann (siehe error_message).

Aufrufbeispiel

char

Buffer[MAX_BUFFER];

unsigned char * cBuffer = (unsigned char *)Buffer; // byteweiser vorzeichenloser

Zugriff

cBuffer[0]

== 0

AG ist im Zustand RUN

cBuffer[0]

!= 0

AG ist im Zustand STOP oder im Zustand ANLAUF

Voraussetzungen

V5.6

as200_ag_zustand

V6.0
as200_as_zustand_ex6

Windows:

95, ME, NT4, 2000, XP

Header: W95_S7.H,

W95_S7M.H

Library: W95_S7.DLL,

W95_S7M.DLL

Siehe auch:

as200_ag_info, as200_as_zustand_ex6

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0
A5E00417149-01

4-35

4.3.3 as200_e|a|m|sm|vs_field_read

Die Funktionen lesen eine Anzahl Bytes aus dem Datenbereich des AG aus und
transferieren diese in einen Übergabepuffer des PG/PC.

Mit as200_e_field_read werden Eingangsbytes gelesen.

Mit as200_a_field_read werden Ausgangsbytes gelesen.

Mit as200_m_field_read werden Merkerbytes gelesen.

Mit as200_sm_field_read werden Sondermerkerbytes gelesen.

Mit as200_vs_field_read werden Variablenspeicherbytes gelesen.

int as200_e_field_read (int nStartNo, int * pnAnzahl, void * Buffer);

int as200_a_field_read (int nStartNo, int * pnAnzahl, void * Buffer);

int as200_m_field_read (int nStartNo, int * pnAnzahl, void * Buffer);

int as200_sm_field_read (int nStartNo, int * pnAnzahl, void * Buffer);

int as200_vs_field_read (int nStartNo, int * pnAnzahl, void * Buffer);

Parameter

nStartNo

[in] Startnummer des ersten zu lesenden Bytes

pnAnzahl

[in] Anzahl der zu lesenden Bytes

Buffer

[out] Übergabepuffer für die gelesenen Bytes

Rückgabewerte

Wenn keine Fehler aufgetreten sind, liefert die Funktion als Rückgabewert eine 0,
andernfalls eine Fehlernummer, die anhand der Fehlertabelle ausgewertet werden
kann (siehe error_message).

Aufrufbeispiel

char

Buffer[MAX_BUFFER];

unsigned char * cBuffer = (unsigned char *)Buffer; // byteweiser vorzeichenloser

Zugriff

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0

4-36

A5E00417149-01

Voraussetzungen

V5.6

as200_e_field_read,

V6.0 as200_field_read_ex6

Windows:

95, ME, NT4, 2000, XP

Header: W95_S7.H,

W95_S7M.H

Library: W95_S7.DLL,

W95_S7M.DLL

Siehe auch:

as200_t|z_field_read, as200_mix_read, as200_field_read_ex6

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0
A5E00417149-01

4-37

4.3.4 as200_t_field_read

Die Funktion as200_t_field_read liest eine Anzahl Timerwerte aus dem AG aus
und transferiert diese in einen Übergabepuffer des PG/PC.

int as200_t_field_read (int nStartNo, int * pnAnzahl, void * Buffer);

Parameter

nStartNo

[in] Startnummer des ersten zu lesenden Timerwertes

pnAnzahl

[in] Anzahl der zu lesenden Timerwertes

Buffer

[out] Übergabepuffer für die gelesenen Timerwertes

Rückgabewerte

Wenn keine Fehler aufgetreten sind, liefert die Funktion als Rückgabewert eine 0,
andernfalls eine Fehlernummer, die anhand der Fehlertabelle ausgewertet werden
kann (siehe error_message).

Aufrufbeispiel

Pro Timerwert werden 5 Bytes empfangen, von denen nur 2 Bytes den
angeforderten Timerwert enthalten.

In folgendem Beispiel werden die Timerwerte 0 und 1 gelesen:

char

Buffer[MAX_BUFFER];

unsigned short T0, T1;

// Timerwort

int error;

error = as200_t_field_read((int)0, (int)2, Buffer);

T0 = (unsigned short)Buffer[4] | (unsigned
short)Buffer[3] << 8;

T1 = (unsigned short)Buffer[9] | (unsigned
short)Buffer[8] << 8;

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0

4-38

A5E00417149-01

Voraussetzungen

V5.6

as200_t_field_read

V6.0

as200_field_read_ex6

Windows:

95, ME, NT4, 2000, XP

Header: W95_S7.H,

W95_S7M.H

Library: W95_S7.DLL,

W95_S7M.DLL

Siehe auch:

as200_e|a|m|sm|vs_field_read, as200_z_field_read, as200_mix_read,
as200_field_read_ex6

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0
A5E00417149-01

4-39

4.3.5 as200_z_field_read

Die Funktion as200z_field_read liest eine Anzahl Zählerwerte aus dem AG aus
und transferiert diese in einen Übergabepuffer des PG/PC.

int z_field_read (int nStartNo, int * pnAnzahl, void * Buffer);

Parameter

nStartNo

[in] Startnummer des ersten zu lesenden Zählerwertes

pnAnzahl

[in] Anzahl der zu lesenden Zählerwerte

Buffer

[out] Übergabepuffer für die gelesenen Zählerwerte

Rückgabewerte

Wenn keine Fehler aufgetreten sind, liefert die Funktion als Rückgabewert eine 0,
andernfalls eine Fehlernummer, die anhand der Fehlertabelle ausgewertet werden
kann (siehe error_message).

Aufrufbeispiel

Pro Zählerwert werden 3 Bytes empfangen, von denen nur 2 Bytes den
angeforderten Zählerwert enthalten.

In folgendem Beispiel werden die Zählerwerte 3 und 4 gelesen:

char

Buffer[MAX_BUFFER];

unsigned short Z3, Z4;

// Zählerwort

int error;

error = as200_z_field_read((int)3, (int)2, Buffer);

Z3 = (unsigned short)Buffer[2] | (unsigned
short)Buffer[1] << 8;

Z4 = (unsigned short)Buffer[5] | (unsigned
short)Buffer[4] << 8;

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0

4-40

A5E00417149-01

Voraussetzungen

V5.6

as200_z_field_read

V6.0

as200_field_read_ex6

Windows:

95, ME, NT4, 2000, XP

Header: W95_S7.H,

W95_S7M.H

Library: W95_S7.DLL,

W95_S7M.DLL

Siehe auch:

as200_e|a|m|sm|vs_field_read, as200_t_field_read, as200_mix_read,
as200_field_read_ex6

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0
A5E00417149-01

4-41

4.3.6 as200_mix_read

Die Funktion as200_mix_read liest die durch "data" parametrierten Daten aus
einem Datenbaustein im AG aus und transferiert diese in einen Übergabepuffer
des PG/PC.

int as200_mix_read (char * pData, void * Buffer);

Parameter

pData

[in] Zeiger auf Typliste. Typelementinhalt == 0 wird als Endekennung der Liste
gewertet.

Buffer

[out] Übergabepuffer für die gelesenen Datenbytes

Rückgabewerte

Wenn keine Fehler aufgetreten sind, liefert die Funktion als Rückgabewert eine 0,
andernfalls eine Fehlernummer, die anhand der Fehlertabelle ausgewertet werden
kann (siehe error_message).

Aufrufbeispiel

Die Funktion ermöglicht das Lesen von gemischten Daten. Es können maximal 20
Listenelemente angelegt werden. Auf die Typliste kann mit Hilfe einer Struktur
zugegriffen werden:

#pragma pack(1)

typedef struct {

unsigned char

Typ;

unsigned char

Size;

unsigned short

nBstNo;

unsigned short

nDatNo;

}

mix_tab_type;

#pragma pack()

Typ

Folgende Daten können gelesen werden (ASCII-Zeichen klein oder groß):

e

Eingangsbytes

a

Ausgangsbytes

m

Merkerbytes

v

Variablenspeicherworte

s

Sondermerkerbytes

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0

4-42

A5E00417149-01

Size

Für alle zu lesenden Daten muss der Datentypen Byte sein (ASCII-Zeichen klein
oder groß):

b

Byte

bei

allen

Daten

nBstNo

Nummer des Datenbausteins

nDatNo

Nummer des zu lesenden Datenbytes

"data" muss folgenden Aufbau haben:

Size = ’b’

Byte lesen und im Puffer eintragen

Die gelesenen Werte werden im Puffer sequenziell eingetragen. D.h. der
Anwender muss selber das mit den gelesenen Werten belegte Feld strukturiert
bearbeiten:

char

Buffer[MAX_BUFFER];

unsigned char * cBuffer = (unsigned char *)Buffer; // byteweiser vorzeichenloser

Zugriff

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0
A5E00417149-01

4-43

Achtung: Beim Zugriff auf einen Datenbaustein sind die Datenworte in Buffer nicht
nach Intel-Notation (low Byte - high Byte), sondern in STEP5-Notation (high Byte -
low Byte) abgelegt. Bei einer Weiterverarbeitung der Daten muss dies beachtet
werden. Zum Tauschen von Bytes stehen die Funktionen kf_integer und
swab_buffer zur Verfügung.

Voraussetzungen

V5.6

as200_mix_read

V6.0

as200_field_read_ex6

Windows:

95, ME, NT4, 2000, XP

Header: W95_S7.H,

W95_S7M.H

Library: W95_S7.DLL,

W95_S7M.DLL

Siehe auch:

as200_mix_write, kf_integer, swab_buffer, as200_field_read_ex6

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0

4-44

A5E00417149-01

4.3.7 as200_a|m|sm|vs_field_write

Die Funktionen schreiben eine Anzahl Bytes aus dem Übergabepuffer des PG/PC
in den Datenbereich des AG.

Mit as200_a_field_write werden Ausgangsbytes geschrieben.

Mit as200_m_field_write werden Merkerbytes geschrieben.

Mit as200_sm_field_write werden Sondermerkerbytes geschrieben.

Mit as200_vs_field_write werden Variablenspeicherbytes geschrieben.

int as200_a_field_write (int nStartNo, int * pnAnzahl, void * Buffer);

int as200_m_field_write (int nStartNo, int * pnAnzahl, void * Buffer);

int as200_sm_field_write (int nStartNo, int * pnAnzahl, void * Buffer);

int as200_vs_field_write (int nStartNo, int * pnAnzahl, void * Buffer);

Parameter

nStartNo

[in] Startnummer des ersten zu schreibenden Bytes

pnAnzahl

[in] Anzahl der zu schreibenden Bytes

Buffer

[out] Übergabepuffer für die zu schreibenden Bytes

Rückgabewerte

Wenn keine Fehler aufgetreten sind, liefert die Funktion als Rückgabewert eine 0,
andernfalls eine Fehlernummer, die anhand der Fehlertabelle ausgewertet werden
kann (siehe error_message).

Aufrufbeispiel

char

Buffer[MAX_BUFFER];

unsigned char * cBuffer = (unsigned char *)Buffer; // byteweiser vorzeichenloser

Zugriff

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0
A5E00417149-01

4-45

Voraussetzungen

V5.6

as200_e_field_write,

V6.0 as200_field_write_ex6

Windows:

95, ME, NT4, 2000, XP

Header: W95_S7.H,

W95_S7M.H

Library: W95_S7.DLL,

W95_S7M.DLL

Siehe auch:

as200_z_field_write, as200_mix_write, as200_field_write_ex6

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0

4-46

A5E00417149-01

4.3.8 as200_z_field_write

Die Funktion as200_z_field_write schreibt eine Anzahl Zählerwerte aus einem
Übergabepuffer des PG/PC in das AG.

int as200_z_field_write (int nStartNo, int * pnAnzahl, void * Buffer);

Parameter

nStartNo

[in] Startnummer des ersten zu schreibenden Zählerwertes

pnAnzahl

[in] Anzahl der zu schreibenden Zählerwerte

Buffer

[out] Übergabepuffer für die zu schreibenden Zählerwerte

Rückgabewerte

Wenn keine Fehler aufgetreten sind, liefert die Funktion als Rückgabewert eine 0,
andernfalls eine Fehlernummer, die anhand der Fehlertabelle ausgewertet werden
kann (siehe error_message).

Aufrufbeispiel

Pro Zählerwert werden 3 Bytes gesendet, von denen nur 2 Bytes den
angegebenen Zählerwert beinhalten.

Voraussetzungen

V5.6

as200_z_field_write

V6.0

as200_field_write

Windows:

95, ME, NT4, 2000, XP

Header: W95_S7.H,

W95_S7M.H

Library: W95_S7.DLL,

W95_S7M.DLL

Siehe auch:

as200_a|m|sm|vs_field_write, as200_mix_write, as200_field_write_ex6

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0
A5E00417149-01

4-47

4.3.9 as200_mix_write

Die Funktion as200_mix_write schreibt die durch "data" parametrierten Daten aus
einem Übergabepuffer des PG/PC in einen Datenbaustein im AG.

int as200_mix_write (char * pData, void * Buffer);

Parameter

pData

[in] Zeiger auf Typliste. Typelementinhalt == 0 wird als Endekennung der Liste
gewertet.

Buffer

[out] Übergabepuffer für die zu schreibenden Datenbytes

Rückgabewerte

Wenn keine Fehler aufgetreten sind, liefert die Funktion als Rückgabewert eine 0,
andernfalls eine Fehlernummer, die anhand der Fehlertabelle ausgewertet werden
kann (siehe error_message).

Aufrufbeispiel

Die Funktion ermöglicht das Schreiben von gemischten Daten. Es können maximal
20 Listenelemente angelegt werden. Auf die Typliste kann mit Hilfe einer Struktur
zugegriffen werden:

#pragma pack(1)

typedef struct {

unsigned char

Typ;

unsigned char

Size;

unsigned short

nBstNo;

unsigned short

nDatNo;

}

mix_tab_type;

#pragma pack()

Typ

Folgende Daten können geschrieben werden (ASCII-Zeichen klein oder groß):

e

Eingangsbytes

a

Ausgangsbytes

m

Merkerbytes

v

Variablenspeicherworte

s

Sondermerkerbytes

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0

4-48

A5E00417149-01

Size

Für alle zu schreibenden Daten muss der Datentyp Byte sein (ASCII-Zeichen klein
oder groß):

b

Byte

bei

allen

Daten

nBstNo

Nummer des Datenbausteins

nDatNo

Nummer des zu schreibenden Datenbytes

"data" muss folgenden Aufbau haben:

Size = ’b’

Byte schreiben

Die zu schreibenden Werte müssen im Puffer sequenziell eingetragen werden.

char

Buffer[MAX_BUFFER];

unsigned char * cBuffer = (unsigned char *)Buffer; // byteweiser vorzeichenloser

Zugriff

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0
A5E00417149-01

4-49

Achtung: Beim Zugriff auf einen Datenbaustein sind die Datenworte in Buffer nicht
nach Intel-Notation (low Byte - high Byte), sondern in STEP5-Notation (high Byte -
low Byte) abgelegt. Bei einer Weiterverarbeitung der Daten muss dies beachtet
werden. Zum Tauschen von Bytes stehen die Funktionen kf_integer und
swab_buffer zur Verfügung.

Voraussetzungen

V5.6

as200_mix_write

V6.0

as200_field_write_ex6

Windows:

95, ME, NT4, 2000, XP

Header: W95_S7.H,

W95_S7M.H

Library: W95_S7.DLL,

W95_S7M.DLL

Siehe auch:

as200_mix_read, kf_integer, swab_buffer, as200_field_write_ex6

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0

4-50

A5E00417149-01

4.3.10 as200_mb_setbit

Die Funktion as200_mb_setbit setzt einen Merker im AG auf 1. Es erfolgt keine
Abprüfung, ob das Merkerbit in dem verwendeten AG vorhanden ist.

int as200_mb_setbit (int nMbNo, int nBitNo);

Parameter

nMbNo

[in] Nummer des Merkerbytes

nBitNo

[in] Bitnummer im Merkerbyte

Rückgabewerte

Wenn keine Fehler aufgetreten sind, liefert die Funktion als Rückgabewert eine 0,
andernfalls eine Fehlernummer, die anhand der Fehlertabelle ausgewertet werden
kann (siehe error_message).

Aufrufbeispiel

Keines

Voraussetzungen

V5.6

as200_mb_setbit

V6.0

as200_mb_setbit_ex6

Windows:

95, ME, NT4, 2000, XP

Header: W95_S7.H,

W95_S7M.H

Library: W95_S7.DLL,

W95_S7M.DLL

Siehe auch:

as200_mb_resetbit, as200_mb_bittest, as200_mb_setbit_ex6

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0
A5E00417149-01

4-51

4.3.11 as200_mb_resetbit

Die Funktion as200_mb_resetbit setzt einen Merker im AG auf 0. Es erfolgt keine
Abprüfung, ob das Merkerbit in dem verwendeten AG vorhanden ist.

int as200_mb_resetbit (int nMbNo, int nBitNo);

Parameter

nMbNo

[in] Nummer des Merkerbytes

nBitNo

[in] Bitnummer im Merkerbyte

Rückgabewerte

Wenn keine Fehler aufgetreten sind, liefert die Funktion als Rückgabewert eine 0,
andernfalls eine Fehlernummer, die anhand der Fehlertabelle ausgewertet werden
kann (siehe error_message).

Aufrufbeispiel

Keines

Voraussetzungen

V5.6

as200_mb_resetbit

V6.0

as200_mb_setbit_ex6

Windows:

95, ME, NT4, 2000, XP

Header: W95_S7.H,

W95_S7M.H

Library: W95_S7.DLL,

W95_S7M.DLL

Siehe auch:

as200_mb_setbit, as200_mb_bittest, as200_mb_setbit_ex6

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0

4-52

A5E00417149-01

4.3.12 as200_mb_bittest

Die Funktion as200_mb_bittest prüft ein Bit in einem angegebenen Merkerbyte
und liefert im * bitwert den Zustand des angegebenen Bits.

int as200_mb_bittest (int nMbNo, int nBitNo, char * bitwert);

Parameter

nMbNo

[in] Nummer des Merkerbytes

nBitNo

[in] Bitnummer im Merkerbyte

bitwert

[out] Übergabepuffer mit dem getesteten Bitwert

Rückgabewerte

Wenn keine Fehler aufgetreten sind, liefert die Funktion als Rückgabewert eine 0,
andernfalls eine Fehlernummer, die anhand der Fehlertabelle ausgewertet werden
kann (siehe error_message).

Aufrufbeispiel

Voraussetzungen

V5.6

as200_mb_bittest

V6.0

as200_mb_bittest_ex6

Windows:

95, ME, NT4, 2000, XP

Header: W95_S7.H,

W95_S7M.H

Library: W95_S7.DLL,

W95_S7M.DLL

Siehe auch:

as200_mb_setbit, as200_mb_resetbit, as200_mb_bittest_ex6

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0
A5E00417149-01

4-53

4.4 Komfortfunktionen

4.4.1 error_message

Die Funktion error_message liefert zu einer Fehlernummer den zugehörigen
Fehlertext als nullterminierten Character-String.

int error_message (int nErrorNnr, char * Buffer);

Parameter

nErrorNnr

[in] Fehlernummer

Buffer

[out] Übergabepuffer mit den Fehlertexten

Rückgabewerte

Wenn keine Fehler aufgetreten sind, liefert die Funktion als Rückgabewert eine 0.
Bei Fehler liefert die Funktion folgende Werte:

Datei ERROR.DAT ist nicht vorhanden oder kann nicht geöffnet werden

Fehler beim Lesen von ERROR.DAT

Falscher Aufbau der Datei ERROR.DAT

Zu dieser Fehlernummer existiert kein Fehlertext

Zu viele Fehlertexte in ERROR.DAT

Aufrufbeispiel

In ERROR.DAT dürfen maximal 100 Fehlertexte gespeichert werden.

Bei Übergabe der Fehlernummer 0 kann in "Buffer" der Dateiname der zu
ladenden Fehlertextdatei übergeben werden (z. B. eine englische oder eine
deutsche Fehlertextdatei). Wurde kein gültiger Dateiname oder ein NULL-Pointer
übergeben, wird die Datei ERROR.DAT im aktuellen Verzeichnis gelesen. Deshalb
sollte sichergestellt sein, dass die Datei ERROR.DAT vorhanden ist und im
gleichen Verzeichnis wie das Programm liegt.

Die Datei ERROR.DAT wird beim ersten Aufruf der Funktion error_message
gelesen, und die Texte werden in einem Feld gespeichert.

Es ist empfehlenswert, kurz nach Programmbeginn die Funktion error_message
mit error_no = 0 aufzurufen, um die Datei ERROR.DAT zu laden. Somit ist bei
weiteren Aufrufen dieser Funktion die Ausführungszeit nahezu konstant.

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0

4-54

A5E00417149-01

Aufbau der Fehlertext-Datei

[Fehlernummer als ASCII-Hex]: [Fehlertext]

Die Fehlertexte finden Sie iom Anhang.

Voraussetzungen

V5.6 error_message

V6.0 GetErrorMessage_ex6

Windows:

95, ME, NT4, 2000, XP

Header: KOMFORT.H

Library: KOMFORT.DLL

Siehe auch:

GetErrorMessage_ex6

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0
A5E00417149-01

4-55

4.4.2 kg_to_float

Die Funktion kg_to_float wandelt einen S5-Gleitpunktwert in einen Wert vom Typ
float (IEEE-Format) um.

int kg_to_float (void * kg, void * ieee);

Parameter

kg

[in] S5-Gleitpunktwert

ieee

[out] Floatwert

Rückgabewerte

Wenn keine Fehler aufgetreten sind, liefert die Funktion als Rückgabewert eine 0,
andernfalls eine 1.

Aufrufbeispiel

Keines

Voraussetzungen

V5.6

kg_to_float

V6.0

kg_2_float_ex6

Windows:

95, ME, NT4, 2000, XP

Header: KOMFORT.H

Library: KOMFORT.DLL

Siehe auch:

float_to_kg, kg_2_float_ex6

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0

4-56

A5E00417149-01

4.4.3 float_to_kg

Die Funktion float_to_kg wandelt einen Wert vom Typ float (IEEE-Format) in einen
S5-Gleitpunktwert um.

int float_to_kg (void * ieee, void * kg);

Parameter

ieee

[in] Floatwert

kg

[out] S5-Gleitpunktwert

Rückgabewerte

Wenn keine Fehler aufgetreten sind, liefert die Funktion als Rückgabewert eine 0,
andernfalls eine 1.

Aufrufbeispiel

Keines

Voraussetzungen

V5.6 float_to_kg

V6.0 float_2_kg_ex6

Windows:

95, ME, NT4, 2000, XP

Header: KOMFORT.H

Library: KOMFORT.DLL

Siehe auch:

kg_to_float, float_2_kg_ex6

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0
A5E00417149-01

4-57

4.4.4 gp_to_float

Die Funktion gp_to_float wandelt einen S7-Gleitpunktwert in einen Wert vom Typ
float (IEEE-Format) um.

void gp_to_float (void * gp, void * ieee);

Parameter

gp

[in] S7-Gleitpunktwert

ieee

[out] Floatwert

Rückgabewerte

Keine

Aufrufbeispiel

Keines

Voraussetzungen

V5.6 gp_to_float

V6.0 gp_2_float_ex6

Windows:

95, ME, NT4, 2000, XP

Header: KOMFORT.H

Library: KOMFORT.DLL

Siehe auch:

float_to_gp, gp_2_float_ex6

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0

4-58

A5E00417149-01

4.4.5 float_to_gp

Die Funktion float_to_gp wandelt einen Wert vom Typ float (IEEE-Format) in
einen S7-Gleitpunktwert um.

void float_to_gp (void * ieee, void * gp);

Parameter

ieee

[in] Floatwert

gp

[out] S7-Gleitpunktwert

Rückgabewerte

Keine

Aufrufbeispiel

Keines

Voraussetzungen

V5.6 float_to_gp

V6.0 float_2_gp_ex6

Windows:

95, ME, NT4, 2000, XP

Header: KOMFORT.H

Library: KOMFORT.DLL

Siehe auch:

gp_to_float, float_2_gp_ex6

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0
A5E00417149-01

4-59

4.4.6 testbit

Die Funktion testbit prüft, ob ein angegebenes Bit in einer Bytevariablen gesetzt
ist. Die Bytevariable und die Bitnummer werden der Funktion als Parameter
übergeben.

char testbit (char Wert, char BitNo);

Parameter

Wert

[in] Wert der Bytevariablen

BitNo

[in] zu testendes Bit in der Bytevariablen

Rückgabewerte

Rückgabewert TRUE (oder 1):

Bit ist gesetzt (oder 1)

Rückgabewert FALSE (oder 0):

Bit ist nicht gesetzt (oder 0)

Aufrufbeispiel

Keines

Voraussetzungen

V5.6 testbit

V6.0 testbit_ex6

Windows:

95, ME, NT4, 2000, XP

Header: W95_S7.H,

W95_S7M.H

Library: W95_S7.DLL,

W95_S7M.DLL

Siehe auch:

testbit_ex6

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0

4-60

A5E00417149-01

4.4.7 byte_boolean

Die Funktion byte_boolean wandelt ein Byte in acht logische Werte (PC-
Darstellung) um.

void byte_boolean (char Wert, char * Buffer);

Parameter

Wert

[in] Bytewert

Buffer

[out] Zeiger auf Puffer mit acht umgewandelten logischen Werten

Rückgabewerte

Keine

Aufrufbeispiel

Der übergebene Zeiger sollte auf ein char-Feld mit folgendem Aufbau zeigen:

Buffer[0] Buffer[1] Buffer[2] Buffer[3] Buffer[4] Buffer[5] Buffer[6] Buffer[7]

bit 0

bit 1

bit 2

bit 3

bit 4

bit 5

bit 6

bit 7

Voraussetzungen

V5.6 byte_boolean

V6.0 byte_2_bool_ex6

Windows:

95, ME, NT4, 2000, XP

Header: KOMFORT.H

Library: KOMFORT.DLL

Siehe auch:

boolean_byte, byte_2_bool_ex6

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0
A5E00417149-01

4-61

4.4.8 boolean_byte

Die Funktion boolean_byte wandelt acht logische Werte (PC-Darstellung) in ein
Byte um.

char boolean_byte (char * Buffer);

Parameter

Buffer

[in] Zeiger auf Puffer mit acht logischen Werten

Rückgabewerte

Umgewandelter Bytewert

Aufrufbeispiel

Der übergebene Zeiger sollte auf ein char-Feld mit folgendem Aufbau zeigen:

Buffer[0] Buffer[1] Buffer[2] Buffer[3] Buffer[4] Buffer[5] Buffer[6] Buffer[7]

bit 0

bit 1

bit 2

bit 3

bit 4

bit 5

bit 6

bit 7

Voraussetzungen

V5.6 boolean_byte

V6.0 bool_2_byte_ex6

Windows:

95, ME, NT4, 2000, XP

Header: KOMFORT.H

Library: KOMFORT.DLL

Siehe auch:

byte_boolean, bool_2_byte_ex6

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0

4-62

A5E00417149-01

4.4.9 kf_integer

Die Funktion vertauscht High- und Low-Byte eines übergebenen Werts.

Mit kf_integer werden die High- und Low-Bytes eines 16-Bit-Wertes vertauscht.

unsigned short kf_integer (unsigned short wWert);

Parameter

wWert

[in] 16-Bit-Werte

Rückgabewerte

kf_integer liefert einen 16-Bit-Wert mit vertauschten Bytes.

Aufrufbeispiel

Keines

Voraussetzungen

V5.6

kf_integer

V6.0

kf_2_integer_ex6

Windows:

95, ME, NT4, 2000, XP

Header: KOMFORT.H

Library: KOMFORT.DLL

Siehe auch:

swab_buffer, kf_2_integer_ex6

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0
A5E00417149-01

4-63

4.4.10 swab_buffer

Die Funktion swab_buffer vertauscht High- und Low-Bytes eines übergebenen
Puffers.

void swab_buffer (void * Buffer, int nAnzahl);

Parameter

Buffer

[in/out] Zeiger auf Puffer, in dem die Bytes getauscht werden

nAnzahl

[in] Anzahl der zu tauschenden Bytes

Rückgabewerte

Keine

Aufrufbeispiel

Intern wird die Standard C-Funktion void _swab(char * src, char * dest, int n)
aufgerufen.

Voraussetzungen

V5.6

swab_buffer

V6.0

swab_buffer_ex6

Windows:

95, ME, NT4, 2000, XP

Header: KOMFORT.H

Library: KOMFORT.DLL

Siehe auch:

kf_integer, copy_buffer, swab_buffer_ex6

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0

4-64

A5E00417149-01

4.4.11 copy_buffer

Die Funktion copy_buffer kopiert eine Anzahl Bytes von einem Puffer in einen
anderen.

void copy_buffer (void * ZielBuffer, void * QuellBuffer, int nAnzahl);

Parameter

ZielBuffer

[out] Zeiger auf Puffer, in den die Bytes kopiert werden

QuellBuffer

[in] Zeiger auf Puffer, aus dem die Bytes geholt werden

nAnzahl

[in] Anzahl der zu kopierenden Bytes

Rückgabewerte

Keine

Aufrufbeispiel

Intern wird die Standard C-Funktion void *memcpy(char * dest, char * src, size_t
count) aufgerufen.

Voraussetzungen

V5.6

copy_buffer

V6.0

copy_buffer_ex6

Windows:

95, ME, NT4, 2000, XP

Header: KOMFORT.H

Library: KOMFORT.DLL

Siehe auch:

swab_buffer, copy_buffer_ex6

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0
A5E00417149-01

4-65

4.4.12 USHORT_2_bcd

Die Funktionen sind Wandelroutinen, die eine Anzahl von Dualwerten in BCD-
Werte umwandeln.

Mit USHORT_2_bcd werden 16-Bit-Werte (Worte) gewandelt.

void USHORT_2_bcd (unsigned short * pwWerte, unsigned short wAnzahl,
char InBytechange, char OutBytechange);

Parameter

pwWerte

[in/out] Zeiger auf 16-Bit-Dualwerte

wAnzahl

[in] Anzahl Werte

InBytechange

[in] Boolscher Ausdruck TRUE oder FALSE

OutBytechange

[in] Boolscher Ausdruck TRUE oder FALSE

Rückgabewerte

Ist InBytechange gesetzt (1), so werden vor dem Wandeln in einen BCD-Wert die
High und Low Bytes vertauscht. Wird statt dessen OutBytechange gesetzt, so
werden die High und Low Bytes erst nach der Wandlung vertauscht.

Wird keines der beiden Bytechange-Argumente gesetzt, so wird keine High-Low-
Byte-Vertauschung durchgeführt.

Nach Aufruf der Funktion zeigt

pwWerte auf 16-Bit BCD-Werte.

Aufrufbeispiel

Mit der Funktion kann man z. B. Zähler setzen oder Zeitfunktionen versorgen.

Der verfügbare Zahlenbereich für 16-Bit BCD-Werte ist +999 bis –999.

Voraussetzungen

V5.6 USHORT_2_bcd

V6.0 ushort_2_bcd_ex6

Windows:

95, ME, NT4, 2000, XP

Header: KOMFORT.H

Library: KOMFORT.DLL

Siehe auch:

bcd_2_USHORT, ushort_2_bcd_ex6

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0

4-66

A5E00417149-01

4.4.13 bcd_2_USHORT

Die Funktionen sind Wandelroutinen, die eine Anzahl von BCD-Werten in
Dualwerte umwandeln.

Mit bcd_2_USHORT werden 16-Bit-Werte (Worte) gewandelt.

void bcd_2_ USHORT (unsigned short * pwWerte, unsigned short wAnzahl,
char InBytechange, char OutBytechange);

Parameter

pwWerte

[in/out] Zeiger auf 16-bit BCD-Werte

wAnzahl

[in] Anzahl Werte

InBytechange

[in] Boolscher Ausdruck TRUE oder FALSE

OutBytechange

[in] Boolscher Ausdruck TRUE oder FALSE

Rückgabewerte

Nach Aufruf der Funktion zeigt

pwWerte auf 16-Bit Dualwerte.

Aufrufbeispiel

Mit der Funktion kann man z. B. Zähler setzen oder Zeitfunktionen versorgen.

Der verfügbare Zahlenbereich für 16-Bit BCD-Werte ist +999 bis –999.

Voraussetzungen

V5.6 bcd_2_USHORT

V6.0 bcd_2_ushort_ex6

Windows:

95, ME, NT4, 2000, XP

Header: KOMFORT.H

Library: KOMFORT.DLL

Siehe auch:

USHORT_2_bcd, bcd_2_ushort_ex6

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0
A5E00417149-01

4-67

4.5 Teleservice

Funktionen

4.5.1 ts_dial

Die Funktion ts_dial wählt eine entfernte Station über Modem an und baut die
Verbindung zum TS-Adapter auf.

int ts_dial (char * cModemName, char * cStandort, char * cTelNo, char *
cUserName
, char * cPassword, HANDLE WindowHandle, unsigned int
Message
, WPARAM wParam, char * Res1);

Parameter

cModemName

[in] Name des zu verwendenden Modems, einstellbar in Systemsteuerung /
Modems / Wahlparameter.

cStandort

[in] Name des zu Modem Standortes, einstellbar in Systemsteuerung / Modems /
Wahlparameter.

cTelNo

[in] Telefonnummer, die vom angeschlossenen Modem angewählt wird.

cUserName

[in] Hier wird der Benutzername angegeben, der im anzuwählenden TS-Adapter
parametriert wurde.

cPassword

[in] Hier wird das Passwort angegeben, welches im anzuwählenden TS-Adapter
parametriert wurde.

WindowHandle

[in] Hier kann ein Fenster-Handle übergeben werden.

Message

[in] Nachricht, die an das Fenster geschickt wird, wenn die Verbindung aufgebaut
oder der Timeout abgelaufen ist.

wParam

[in] Parameter für die Nachricht.

Res1

[in] Reserviert für spätere Erweiterungen, muss jetzt mit NULL vorbelegt werden.

Rückgabewerte

Wenn keine Fehler aufgetreten sind, liefert die Funktion als Rückgabewert eine 0,
andernfalls eine Fehlernummer, die anhand der Fehlertabelle ausgewertet werden
kann (siehe error_message).

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0

4-68

A5E00417149-01

Hinweis

Wenn die Funktion ts_dial asynchron aufgerufen wird, wird im Fehlerfall keine
Fehlernummer ausgegeben. Informieren Sie in diesem Fall den Bediener und
lassen Sie ihn entscheiden, ob der die Funktion nochmals ausführen möchte, oder
ob er detaillierte Fehlerinformationen benötigt. Für detaillierte Informationen
verwenden Sie den Synchronaufruf.

Aufrufbeispiel

Keines

Voraussetzungen

V5.6

ts_dial

Windows:

95, ME, NT4, 2000, XP

Header: W95_S7.H,

W95_S7M.H

Library: W95_S7.DLL,

W95_S7M.DLL

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0
A5E00417149-01

4-69

4.5.2 ts_hang_up_dial

Die Funktion ts_hang_up_dial bricht die momentan stehende Verbindung oder
einen momentan laufenden asynchronen Wählvorgang ab.

int ts_hang_up_dial (void);

Parameter

Keine

Rückgabewerte

Wenn keine Fehler aufgetreten sind, liefert die Funktion als Rückgabewert eine 0,
andernfalls eine Fehlernummer, die anhand der Fehlertabelle ausgewertet werden
kann (siehe error_message).

Aufrufbeispiel

Keines

Voraussetzungen

V5.6

ts_hang_up_dial

Windows:

95, ME, NT4, 2000, XP

Header: W95_S7.H,

W95_S7M.H

Library: W95_S7.DLL,

W95_S7M.DLL

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0

4-70

A5E00417149-01

4.5.3 ts_set_ringindicator

Die Funktion ts_set_ringindicator initialisiert das unterlagerte System für
Anrufannahme, Verbindungsaufbau und Benachrichtigung (Ringindication).

int ts_set_ringindicator (char * cModemName, char * cNumberOfRings,
HANDLE WindowHandle
, unsigned int Message, WPARAM wParam, char *
Res1
);

Parameter

cModemName

[in] Name des für die Ringindication zu verwendenden Modems, einstellbar in
Systemsteuerung / Modems.

cNumberOfRings

[in] Anzahl Klingelzeichen, bis das Modem abnehmen soll.

WindowHandle

[in] Hier kann ein Fenster-Handle übergeben werden.

Message

[in] Nachricht, die an das Fenster geschickt wird, wenn die Verbindung aufgebaut
oder der Timeout abgelaufen ist.

wParam

[in] Parameter für die Nachricht.

Res1

[in] Reserviert für spätere Erweiterungen, muss jetzt mit NULL vorbelegt werden.

Rückgabewerte

Wenn keine Fehler aufgetreten sind, liefert die Funktion als Rückgabewert eine 0,
andernfalls eine Fehlernummer, die anhand der Fehlertabelle ausgewertet werden
kann (siehe error_message).

Aufrufbeispiel

Keines

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0
A5E00417149-01

4-71

Voraussetzungen

V5.6

ts_set_ringindicator

Windows:

95, ME, NT4, 2000, XP

Header: W95_S7.H,

W95_S7M.H

Library: W95_S7.DLL,

W95_S7M.DLL

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0

4-72

A5E00417149-01

4.5.4 ts_read_info

Die Funktion ts_read_info liefert Informationen über die alarmauslösende Station.

int ts_read_info (void * IventId, unsigned char * MpiAdr);

Parameter

IventId

[in] Zeiger auf ein 16 Byte langes Feld. Hier werden Informationen der
alarmauslösenden Station eingetragen.

MpiAdr

[in] Zeiger auf ein Byte. Hier wird die MPI-Adresse der alarmauslösenden Station
eingetragen.

Rückgabewerte

Wenn keine Fehler aufgetreten sind, liefert die Funktion als Rückgabewert eine 0,
andernfalls eine Fehlernummer, die anhand der Fehlertabelle ausgewertet werden
kann (siehe error_message).

Aufrufbeispiel

Keines

Voraussetzungen

V5.6

ts_read_info

Windows:

95, ME, NT4, 2000, XP

Header: W95_S7.H,

W95_S7M.H

Library: W95_S7.DLL,

W95_S7M.DLL

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0
A5E00417149-01

4-73

4.5.5 ts_hang_up_ring

Die Funktion ts_hang_up_ring bricht die vom TS-Adapter aufgebaute Verbindung
ab.

int ts_hang_up_ring (void);

Parameter

Keine

Rückgabewerte

Wenn keine Fehler aufgetreten sind, liefert die Funktion als Rückgabewert eine 0,
andernfalls eine Fehlernummer, die anhand der Fehlertabelle ausgewertet werden
kann (siehe error_message).

Aufrufbeispiel

Keines

Voraussetzungen

V5.6

ts_hang_up_ring

Windows:

95, ME, NT4, 2000, XP

Header: W95_S7.H,

W95_S7M.H

Library: W95_S7.DLL,

W95_S7M.DLL

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0

4-74

A5E00417149-01

4.5.6 ts_get_modem_name

Die Funktion ts_get_modem_name liefert alle Namen der dem System bekannten
Modems.

int ts_get_modem_name (int ModemId, char * Buffer, int * BufferLen);

Parameter

ModemId

[in] Modem-ID

0 ... n

Buffer

[out] Zeiger auf Puffer für Modemname

BufferLen

[in/out] Zeiger auf die Länge des Puffers; enthält nach dem Aufruf die tatsächliche
Länge des Strings mit dem Modemnamen. Achtung: BufferLen muss vor dem
Aufruf der Funktion ausreichend groß für den zu erwartenden Modemnamen
gewählt werden!

Rückgabewerte

Wenn keine Fehler aufgetreten sind, liefert die Funktion als Rückgabewert eine 0,
andernfalls eine Fehlernummer, die anhand der Fehlertabelle ausgewertet werden
kann (siehe error_message).

Aufrufbeispiel

Keines

Voraussetzungen

V5.6

ts_get_modem_name

Windows:

95, ME, NT4, 2000, XP

Header: W95_S7.H,

W95_S7M.H

Library: W95_S7.DLL,

W95_S7M.DLL

background image

Funktionen von PRODAVE MPI V6.0

PRODAVE MPI V6.0
A5E00417149-01

4-75

background image
background image

PRODAVE MPI V6.0
A5E00417149-01

5-1

5 Demonstrationsprogramme

5.1

Demonstrationsprogramme für den PC

Demonstrationsprogramme für den PC finden Sie nach erfolgreicher Installation
unter dem Pfad :

..\SIEMENS\PRODAVE_S7\..

..\SIEMENS\PRODAVE_S7_MINI\..

Anhand dieser Beispielprogramme zeigen wir Ihnen in überschaubarer Form, wie
Sie die PRODAVE Funktionen benutzen. Damit diese Beispiele nicht überfrachtet
werden, haben wir nur wenige Funktionen realisiert.

Daher erheben diese beiden Programme keinen Anspruch auf Vollständigkeit,
sondern sie bieten eine Hilfestellung bei der Programmierung Ihrer Anwendung.

Die Demonstrationsprogramme bauen grundsätzlich den Prozessdatenverkehr zu
einer PLC mit Adresse = 2 und Slotno = 2 auf !

Bei Anschluss einer S7-400 mit doppelt breiter Stromversorgungsbaugruppe muss
Slotno = 3 gesetzt werden.

Aufrufen der Demonstrationsprogramme für Windows 95/98/NT/ME/2000/XP:

Stecken Sie das entsprechende Kopplungskabel AG - PG/PC auf die PG-
Schnittstelle am AG und auf die MPI-Anschaltung (bzw. COM-Port bei
Verwendung des PC-Adapter-Kabels) des PG/PC.

Konfigurieren Sie die verwendete PG/PC-Schnittstelle mit Hilfe des STEP 7-
Tools (S7EPATSX.EXE).
Der Zugangspunkt der Applikation "S7ONLINE" muss mit der verwendeten
Baugruppenparametrierung verbunden werden.

Bei Kopplung zu einer S7-200 muss die entsprechende
Baugruppenparametrierung mit dem Zusatz (PPI) angewählt werden.

Starten Sie Windows 95/98/NT/ME/2000/XP neu, damit die Konfiguration
übernommen wird.

Starten Sie das Demonstrationsprogramm in der PRODAVE-Programmgruppe.

Wählen Sie das Menü load_tool und geben darin die Parameter (Adresse,
Steckplatznummer, Segment-ID und Baugruppenträgernummer) des
Zielsystems an.

background image

Demonstrationsprogramme

PRODAVE MPI V6.0

5-2

A5E00417149-01

background image

PRODAVE MPI V6.0
A5E00417149-01

A-1

A Anhang

A.1 Fehlertexte

Zu diesen Fehlertexten können Sie in der Datei ERROR.DAT eigene hinzufügen.
Siehe Funktion "error_message".

Fehlermeldungen

0000

:

** ERROR.DAT = Fehlertextdatei für PRODAVE MPI **

00CA :

Keine

Ressourcen

verfügbar

00CE :

Baugruppe

nicht

gefunden

00CF

:

Treiber nicht geladen

00E1

:

Zu viele offene Kanäle

00E9 :

sin_serv.exe

nicht

gestartet

00F1

:

Kein globaler DOS-Speicher verfügbar

0101

:

Verbindung nicht aufgebaut / parametriert

010A

:

Negative Quittung empfangen / Timeout-Fehler

010C

:

Daten nicht vorhanden oder gesperrt

0201 :

Falsche

Schnittstelle

angegeben

0202 :

Maximalanzahl

Schnittstellen

überschritten

0203

:

Toolbox schon installiert

0204

:

Toolbox schon mit anderen Verbindungen installiert

0205 :

Toolbox

nicht

installiert

0206

:

Handle kann nicht gesetzt werden

0207

:

Datensegment kann nicht gesperrt werden

0209 :

Datenfeld

fehlerhaft

0302

:

Baustein zu klein, DW ist nicht vorhanden

0303

:

Bausteingrenze überschritten, Anzahl korrigieren

0310 :

Baugruppe

nicht

gefunden

0311 :

Hardwarefehler

0312 :

Falsche

Konfigurationsparameter

0313 :

Falsche

Baudrate/interruptvector

0314 :

Falsche

HSA

0315 :

MPI-Addressfehler

0316

:

HW-Gerät schon vergeben

0317 :

Interrupt

nicht

verfügbar

0318 :

Interrupt

belegt

031A :

Verbindungsfehler

background image

Anhang

PRODAVE MPI V6.0

A-2

A5E00417149-01

0320 :

Hardwarefehler

0330 :

Versionskonflikt

0331 :

COM-Fehler

0332 :

keine

Rückmeldung

0333 :

COM-Fehler

0334 :

COM-Fehler

0336

:

Keine Modemverbindung aufgebaut

0337 :

Legitimierung

fehlt

0381

:

Gerät nicht vorhanden

0382

:

Kein Treiber oder Gerät gefunden

0384

:

Kein Treiber oder Gerät gefunden

03FF :

Systemfehler

4001

:

Verbindung nicht bekannt

4002

:

Verbindung nicht aufgebaut

4003

:

Verbindung wird gerade aufgebaut

4004

:

Verbindung ist zusammengebrochen

800 :

Toolbox

belegt

8001

:

In diesem Betriebszustand nicht erlaubt

8101 :

Hardwarefehler

8103

:

Objektzugriff nicht erlaubt

8104 :

Kontext

wird

nicht

unterstützt

8105 :

Ungültige

Adresse

8106

:

Typ (Datenart) nicht unterstützt

8107

:

Typ (Datenart) nicht konsistent

810A

:

Objekt nicht existent

8301

:

Speicherplatz auf CPU nicht ausreichend

8404 :

Gravierender

Fehler

8500 :

Falsche

PDU-Größe

8702 :

Adresse

ungültig

D201 :

Syntaxfehler

Bausteinname

D202 :

Syntaxfehler

Funktionsparameter

D203 :

Syntaxfehler

Bausteintyp

D204

:

Kein eingeketteter Baustein im Speichermedium

D205 :

Objekt

bereits

vorhanden

D206 :

Objekt

bereits

vorhanden

D207

:

Baustein im EPROM vorhanden

D209 :

Baustein

nicht

vorhanden

D20E :

Kein

Baustein

vorhanden

D210 :

Bausteinnummer

zu

groß

D241

:

Schutzstufe der Funktion nicht ausreichend

D406 :

Information

nicht

vorhanden

EF01 :

Falsche

ID2

FFFE

:

Unbekannter Fehler FFFE hex

FFFF

:

Timeout-Fehler, Schnittstelle überprüfen

background image

Anhang

PRODAVE MPI V6.0
A5E00417149-01

A-3

TeleService-Fehlermeldungen

0048

:

Fehler beim Verbinden

4350 :

Nicht

implementiert

4360 :

Zeitüberschreitung

(timeout)

8001 :

Kein

Speicher

8305

:

Fehler beim Zugriff auf Registry

8306

:

Adapter im Direktbetrieb

8FFF

:

Interner Fehler

8305

:

Fehler beim Zugriff auf Registry

4501

:

Falscher Parameter, Modem oder Standort-Fehler

4502

:

Keine weiteren Einträge

4503 :

Modemfunktion

nicht

ausreichend

4504

:

Übergebener String zu lang

4510 :

Adapter

im

Modembetrieb

4540

:

Alarm bereits vergeben

4541

:

Alarm nicht benutzt

4580

:

Login Fehler Username

4581

:

Login Fehler Passwort

A0CE : Besetzt

A0CF

:

Partner antwortet nicht

A0D4 : Anschluss

nicht

verfügbar

A0D5 : Kein

Freizeichen

background image

Anhang

PRODAVE MPI V6.0

A-4

A5E00417149-01

A.2 Verwendete

Abkürzungen

AG

Automatisierungsgerät

CP

Kommunikationsprozessor

CPU Central-Processing-Unit

DB

Datenbaustein

DLL

Dynamic Link Library

MPI Multi

Point

Interface

PC

Personal

Computer

PG

Programmiergerät

PPI

Point to Point Interface

PRODAVE

Prozess-Daten-Verkehr


Document Outline


Wyszukiwarka

Podobne podstrony:
Prodave MPI IE Handbuch
Prodave MPI manual
Prodave MPI IE manual
MPI
Handbuch Linux
MPI lab4 opracowanie odpowiedz
handbuch serwo motory
9 Uruchamianie sieci MPI
handbuch
Instalacja Deino MPI
Kiran Prodavshie sotsializm Tenevaya ekonomika v SSSR 254996
Sieci Sprawko MPI, Sprawozdania
Przewodnik MPI v2

więcej podobnych podstron