Sartorius Fieldbus Interface Operating Instructions
Реклама
Реклама
Operating Instructions | Betriebsanleitung
Sartorius
Fieldbus Standard Interface
Feldbus Standard-Schnittstelle
Software Interface for Sartorius Indicators and Complete Scales
Softwareschnittstelle für Sartorius-Geräte
98646-002-04
98646-002-04
Contents
English page 2
In cases involving questions of interpretation, the German-language version shall prevail.
Deutsch Seite 20
Im Auslegungsfall ist die deutsche Sprache maßgeblich.
2
Please note
All information in this document is subject to change without notice and does not represent a commitment on the part of SAG. This product should be operated only by trained and qualified personnel. In correspondence concerning this product, please specify the type, name and release number as well as all license numbers relating to the product.
Important
This product is partly copyrighted. It may not be modified or copied and may not be used without purchasing or written authority from the copyright owner (SAG). By using this product, you agree to be bound by the terms stated herein.
Bitte beachten
Alle Angaben in diesem Dokument sind unverbindlich für die SAG und stehen unter Änderungsvorbehalt. Die Bedienung des Produktes darf nur von geschultem, fach- und sachkundigem Personal durchgeführt werden. Bei Schriftwechsel über dieses Produkt bitte Typ, Bezeichnung und Versionsnummer sowie alle mit dem Produkt in Zusammenhang stehenden Lizenznummern angeben.
Wichtig
Dieses Produkt ist in Teilen urheberrechtlich geschützt. Es darf nicht verändert oder kopiert und ohne Erwerb oder schriftliche Einwilligung des unheberrechtlichen Eigentümers (SAG) nicht benutzt werden. Durch die Benutzung dieses Produktes werden obige Bestimmungen von
Ihnen anerkannt.
Contents 1 Intended Use: Profibus
Page
1 Intended Use: Profibus . . . . . . . . . . 3
2 Recording and Displaying Data . . . . 3
3 Configuring the Device . . . . . . . . . 4
Using the Menu
4 Interface Protocol . . . . . . . . . . . . 4
4.1 Write Window . . . . . . . . . . . . . . . 5
4.2 Read Window . . . . . . . . . . . . . . . 5
4.3 Reading and Writing Data . . . . . . 5
4.4 Write and Read Window Structure 6
5 Data Formats . . . . . . . . . . . . . . . . 6
6 All Write Data . . . . . . . . . . . . . . . 7
7 All Read Data . . . . . . . . . . . . . . . . 8
8 Read weights . . . . . . . . . . . . . . . . 9
8.1 Weight . . . . . . . . . . . . . . . . . . . . 9
8.2 Exponent, Unit, Scale Interval . . . 9
9 Taring and Setting to Zero . . . . . . 10
10 Initializing Applications . . . . . . . . 10
11 Describing the Display . . . . . . . . . 12
12 Error Handling . . . . . . . . . . . . . . . 13
12.1 Status Bytes . . . . . . . . . . . . . . . . . 13
12.2 Possible Command and Adjustment Errors . . . . . . . . . 13
13 Operation Using
Several Platforms . . . . . . . . . . . . . 14
14 Ethernet Interface . . . . . . . . . . . . 15
15 Standard Scale Interface with Modbus/TCP . . . . . . . . . . . . 16
16 Settings in the GSD File for Profibus and Modbus/TCP . . . 19
Indicators in the Sartorius device family can be used as a fieldbus slave by installing an additional card for the UniCom interface in the Combics device.
The network address can be freely chosen within the permissible range.
The interface is compatible with devices from Sartorius Hamburg GmbH.
If you use the remote control for the scale, we recommend that you use the menu to lock the keys on the Sartorius indicator. This can prevent inadvertent taring, for example.
2 Recording and Displaying Data
This introduction will give you an overview of the most important data transfer options. The gross weight, net weight, or tare weight can be read when the device is being used as a scale. You can tare the scale, add the tare weight back on, or set the scale to zero. You can also write and read a fixed tare weight. The scale status can be read out. The keypad function can be locked.
Because Sartorius indicators and complete scales allow two (additional) scales to be connected, data must be read from or written to each scale in sequence.
The weight of the currently active scale is always ready to be read out. You can switch from one scale to the other at any time over the bus.
3
4
3 Configuring the Device Using the Menu
Configuration parameters under the menu section
[Setup]-([Device])[UniCom]:
[DataProtocol]
[Profibus]
Select the desired fieldbus protocol here (currently Profibus-DP only).
If you selected Profibus, you can select the network address (0-126) here.
Factory default setting: 126
[Profibus address]
[Use of application data]
You can select the network address here (0-126). Factory setting: 126
You can select yes or no here. If you select yes, the scale-specific data range is expanded by 34 bytes, e.g. for initializing applications. Factory settings: No
The Sartorius indicator automatically detects the Profibus baud rate.
4 Interface Protocol
The interface works with an 8-byte write window and an 8-byte read window for each scale.
Depending on the number of scales configured in your system, the read and write windows are either 1+8 bytes, 2+8 bytes or 3+8 Byte. If two scales are configured, the read and write windows are 2+8 bytes in size.
Do not confuse the protocol described here with the fieldbus protocol you selected.
It only describes the data content that is being exchanged between the master and slave via the fieldbus protocol (Profibus).
The interface protocol is below the fieldbus level and manages access to the various data through the write and read windows.
Fieldbus protocol
e.g., Profibus DP
Fieldbus interface
Write window min. 2+8 bytes
Read window min. 2+8 bytes
Interface protocol
Address area (command no.):
8: gross value
10: tare value
…
Control and status bytes:
Scale control
Byte 0
Byte 1
Byte 2
Byte 3
Byte 4
Byte 5
Byte 6
Byte 7
Write data: MSB
Write data:
Write data:
Write data: LSB
Read data type request
Write data type
Direct check bits
Direct check bits
4.1 Write Window
Data is transferred from the master to the slave (Sartorius indicator or complete scale) in this window. The first four bytes are used to write a data value. The data or parameter type is described in byte 5.
Byte 4 requests a read value (e.g. net weight readout), which ist received via the read window. Bits in bytes 6 and 7 are accessed directly regardless of the data type of the write value.
The command is executed after a 0-1 leading edge signal.
Byte 0
Byte 1
Byte 2
Byte 3
Byte 4
Byte 5
Byte 6
Byte 7
Read data: MSB
Read data:
Read data:
Read data: LSB
Echo of Read data type request
General system bits: writehandshake, power_fail, analog error...
Status bits
Status bits
4.2 Read Window
Data is transferred from the slave (Sartorius indicator or complete scale) to the master in this window. The first four bytes are used to read a data value. The data or parameter type is mirrored by the write window in byte 4 when the data is available.
Bits in bytes 6 and 7 are status bits regardless of the data type of the read value.
4.3 Reading and Writing Data
The amount of data far exceeds the size of the write/read windows. For this reason, the parameters are addressed with the
Write data type and Read data type.
The first six bytes of the write window and the first five bytes of the read window are required for this. This allows the master to describe data in the Sartorius indicator or complete scale: for example, let’s say a tare value is supposed to be set to 100 kg.
Weights or other data can also be read by the master from the Sartorius indicator or complete scale. Both the write and read windows are required for this operation.
A write procedure and a read procedure ensure a reliable exchange of parameters.
However, a procedure is not required to read status bits or write direct control bits.
The general system bits and the status bits are always present and do not have to be specifically requested. The direct control bits are also always available.
Procedure for reading a parameter:
1. Write the type of data/parameter in byte
4 of the write window (e.g., net weight) as Read data type request.
2. Wait until byte 4 of the read window, the echo of Read data type request, is identical to the Read data type request in byte 4 of the write window.
3. Now the value will be available in bytes
0-3.
Procedure for writing a parameter with Handshake:
1. Wait until control bit write_handshake
= 0 in the read window.
If this does not occur, delete the bit by writing a zero (0) in byte 5 of the write window.
2. Write value in bytes 0–3, if required for the write data type request.
3. Write the data type request in byte 5.
4. Wait until write_handshake is set in the read window (Sartorius indicator or complete scale confirms receipt of data).
5. Write 0 in byte 5 of the write window to delete the “write-handshake” bit in the read window. If this does not delete the bit, byte 5 in the write window cannot be used for writing data.
5
4.4 Write and Read Window Structure
General structure of the write window for a scale:
3
4
5
6
Byte
0
1
2
7
Label
Value to be written (MSB)
:::
:::
:::
Read data type
Write data type bit 7 bit 6 bit 7 bit 6
LSB bit 5 bit 5 bit 4 bit 4
General structure of the read window for a scale
3
4
5
6
0
1
2
7
Label
Value to be written (MSB)
:::
:::
:::
Read data type bit 7 bit 7 bit 7 bit 6 bit 6 bit 6
LSB bit 5 bit 5 bit 5 bit 4 bit 4 bit 4 bit 3 bit 3 bit 2 bit 2 bit 3 bit 3 bit 3 bit 2 bit 2 bit 2
Description
e.g., fixed tare preset bit 2 bit 2 bit 0 bit 0 e.g., gross value writes: fixed tare preset control bits control bits bit 2 bit 2 bit 2 bit 0 bit 0 bit 0
Description
e.g., gross value e.g., gross value e.g., gross value e.g., gross value
Echo: gross value control bits control bits control bits
6
5 Data Formats
Various data formats were used in the interface description:
DINT Most data values are transferred as a four-byte double-integer value; 32-bit number with sign
Write window: byte number
Value
Example: write the weight “fixed tare 844”
0 1 2 3
00 00 03 4C
4 5
1F
Read window: byte number
Value
Example: read negative gross weight -2
0 1 2 3
FF FF FF FE
4
08
5
USINT positive 8-bit number.
Read window: byte number
Value
Example: read exponent/unit/scale interval/error
0 1 2 3
02 04 01 00
4
04
5
6
6
6
7
7
7
6 All Write Data
31
33
40
107
108
112
113
114
117
118
119
121
157
All write values are addressed using Write data type_request.
Value in byte 5
Write data type_request dec
0
03
04 hex
0
3
4
1F
21h
28h
6b
6c
70
71
72
75
76
77
79
9dh
* Write data in bytes 0 to 3 are not required for these types!
Write data to byte 0…3 (parameter)
Has no function, or deletes “write_handshake” bits.
Lock keypad, incl. ON/OFF key*
Unlock keypad
Fixed tare [DINT]
Sends application initialization data if „Use of application data“ is set to „Yes“ in the menu.
Starts an application with the previously sent initialization values (via
21H)
Start calibration* with ext. factory preset weight
Stop calibration*
Set to zero*
Tare*
Cancel tare weight*
Reset power failure bit*
Tare using the value in the fixed tare preset cache*
Copy the gross value to the fixed tare preset cache*
Acknowledge a command error in Cmd_Status byte
(Cmd_Status is part of a read data type)*
Describes display if „Use of application data“ is set to „Yes“ in the menu.
Direct check bits (write bits for the fieldbus master) bit 7 bit 6 bit 5
Byte 6
Byte 7
Use as fixed tare
Set fixed tare
Reset power fail bit 4
Cal-stop
Note:
All control bits react only to a 0 ➝ 1 switch.
A state must last for at least 100 ms before a switch will be recognized.
bit 3
Cal-start bit 2 bit 1
Cancel tare Tare
Cal-Stop
Cal-Start
stop calibration with „default weights“ start calibration with „default weight“
Use as fixed tare
writes the current gross value into the fixed tare memory
Set fixed tare
Reset powerfail
tares the scale with the value in the fixed tare memory causes power-fail flag in the slave’s read data to be reset
Cancel tare weight cancels the tare weight on the scale
Tare
Set to zero
tares the scale sets the scale to zero if the weight is within the zero-setting range bit 0
Set to zero
7
7 All Read Data
4
5
6
8
9
10
14
31
All read values are addressed by Read data type_request
Value in byte 4
Read data type_request dec
1 hex
01
04
05
06
08
09
0A
0E
1F
Direct conrol bits (to be read from the fieldbus master) bit 7 bit 6 bit 5
Byte 5
Byte 6
Byte 7
Write hand-shake Power fail
Command active
Outside adjustment
Cmd-error
Stability Inside
zero-setting range bit 4
Read data in byte 0…3 (parameter)
IndStatus/ADUstatus/CmdStatus/Activs
Exponent/Unit/Scale interval/LastError
Version information for Sartorius indicator
(control unit) (see below)
Serial number of scale
Gross
Net
Tare
Scale end value
Fixed tare (value in tare memory) bit 3
Below zero bit 2
Tare active
Large overload bit 1
Calibr.
active
Over scale end value
[USINT]
[USINT]
[DINT]
[DINT]
[DINT]
[DINT]
[DINT]
[DINT] bit 0
Scale error
Write handshake:
Power fail:
0 = Sartorius indicator (conrol unit) or complete scale is ready to receive new write values
Power to scale was interrupted (this signal must be reset using either the “Reset power fail” bit or the Write data type 0+75 hex.)
Tare active:
Calibration active:
Scale is tared
Scale is being calibrated/adjusted or the unit was changed; the exponent has changed, scale has been switched
Outside adjustment:
Stability:
The scale is between the scale end value and overload; if the W&M mode is active, then also when weight < 0
The scale is stable
Inside zero-setting range: Scale is within zero-setting range
Below zero:
Large overload:
Over scale end value:
Scale error:
The scale is below zero
The scale is loaded beyond the overload range
Scale is above scale end value to the point at which “H” is displayed (maximum scale range of e.g., 5000 kg)
Scale is in error state, e.g., ‘err 54’. The read data (weight values) in bytes 0-3 are then invalid.
Terminal is OFF, menu active, display shows “L” or “H”, no scale connected.
Cmd error:
After every write cycle, the parameter is checked for validity, or if it is an action, it is checked for feasibility.
If the parameter is invalid, or the action cannot be performed, the bit will be set, and the parameter will be ignored.
The bit can be reset using the Write data type 0+79 hex.
Command active:
The requested action is still active (e.g., the scale is waiting for stability after receiving a tare command).
8
8 Read Weights
8.1 Weight
To read weights, just write the desired weight type to byte 4 of the write window (Read data type_requirement). When the weight is available, the type will be returned in byte 4 of the read window. If the weight request is not cleared, the byte will always be updated to the last weight recorded.
Write window: byte number
Value
Example: gross value
0 1 2 3 4
08
5 6 7
Read window: byte number
Value
0
00
1
00
2
11
3
B4
4
08
5 6 7
The numerical value (11B4h =
4532 dec.) is read out to the display without units or commas. These can be requested using read data type 04.
Negative values are shown as a twos complement.
Read window: byte number
Value
Example: Negative weight -12
0
FF
1
FF
2
FF
3
F4
4
08
5 6 7
8.2 Exponent, Unit, Scale Interval
The exponent, weight unit and scale interval must always be read out when the “calibrate-active bit” is set and before the first weight is requested. This is because the unit or weighing range may have changed.
They can be read using type 4.
Write window: byte number
Value
0 1 2 3 4
04
5 6 7
Read window: byte number
Value
0
02
1
03
2
02
3
00
4
04
5 6 7
The first individual bytes have the following meanings:
Byte 0:
Exponent:
Valid range 0-7.
0 = 0000 no decimal point
1 = 000.0
2 = 00.00
3 = 0.000
Byte 1:
Unit:
Valid numbers 1-15 (Sartorius Hamburg GmbH) and 128-147 (Sartorius only)
1 = mg
2 = g
3 = kg
4 = t
5 = lb (pound)
6 = L (liter)
7 = seconds
15 = percent
Byte 2:
Scale interval Indexed to a table as follows:
1 → Interval 1
2 → Interval 2
3 → Interval 5
4 → Interval 10
5 → Interval 20
6 → Interval 50
128 = user-defined unit
131 = carat
133 = ounce
134 = Troy ounce
135 = Hong Kong taels
136 = Singapore taels
137 = Taiwanese taels
138 = grain
The calculated weight results from the DINT value and exponent as follows:
Weight = (number in byte 0–3)
DINT
*10 (-Exponent)
Therefore, the weight from the previous example is equal to: 45.32 kg with scale interval 2.
139 = pennyweight
141 = parts per pound
142 = Chinese taels
143 = momme
144 = Austrian carat
145 = tola
146 = baht
147 = mesghal
9
9 Taring and Setting to Zero
In addition to the write data types mentioned above, individual bits in byte 7 of the write window are also assigned to performing scale functions such as taring or setting to zero. The desired function is performed by a 0-1 leading edge signal at the corresponding bit.
Function of bits in write byte 7
Bit 7 writes the current gross value to the fixed tare cache (saving only, no taring)
Bit 6 tares the scale with the value in the fixed tare cache
Bit 5 resets power failure flag as an acknowledgement of a power failure
Bit 4 no function
Bit 3 no function
Bit 2 cancels the tare (deletes tare memory)
Bit 1 tares the scale with the current weight
Bit 0 sets the scale to zero if the weight is within the zero-setting range
Example:
If the scale is within the zero-setting range, this function is carried out once:
Write window: Byte number
Value
0 1 2 3 4 5 6 7
01
10 Initializing Applications
An application can be initialized using additional application data from the interface protocol. To use this feature, the „Use of application data“ option must be activated in the menu. This option attaches additional data to the standard 8-byte protocol (scale interface).
However, the application or combination of applications to be initialized must first be configured in the Scale menu.
Example: one scale plus application data (34 bytes):
Scale interf. | Application data range
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | ....
Example: two scales plus application data (34 bytes):
1st scale | 2nd scale | Application data range
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | ....
Initializing an application: „Checkweighing“:
The first application data byte is located directly behind the data of the scale interface.
Byte 0-3 (of the application data range):
Byte 4-7 (of the application data range): target value (UInt32) lower limit as an absolute value (UInt32)
Byte 8-11 (of the application data range): upper limit as an absolute value (UInt32)
Application ID and command to initialize the above limits are set in the scale interface of the active scale (numbering starting with 0):
Byte 2 (of the scale interface):
Byte 5 (of the scale interface):
0x04 // ID for checkweighing
0x21 // command for sending initialization data
Initializing an application: „Counting“ or „Neutral measurement“ or „Weighing in percent“:
The first application data byte is located directly behind the data of the scale interface.
Byte 0-3: specific piece weight (UInt32)
10
Application ID and command to initialize the above piece weight are set in the scale interface of the active scale (counting starting with 0):
Byte 3:
Byte 5:
0x01 // ID for Counting or Neutral measurement or Weighing in percent
0x21 // command for sending initialization data
The possible number of decimal places for the piece weight is based on that of the scale. If the scale has three decimal places, a piece weight of 0.123 grams can be selected, for example. The selected piece weight is also rounded according to the scale interval. Command 0x28h is written to byte 5 so that the application can be restarted using these new initialization data.
Example:
A scale using the gram unit,
„Checkweighing“ application: target value 130 g, lower limit 102 g, upper limit 135 grams
Scale interface | Application data range
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | ...
0 0 4 0 0 21 0 0 0 0 0 82 0 0 0 66 0 0 0 87 0 0 ...
Example:
A scale with two decimal places using the gram unit,
„Counting“ application: piece weight 1.15 grams
Scale interface | Application data range
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 0 | 1 | 2 | 3 | 4 | 5 | ...
0 0 0 1 0 21 0 0 0 0 0 73 0 0 0 ...
Application start with the new initialization data:
Scale interface | Application data range
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 0 | 1 | 2 | 3 | 4 | ...
0 0 0 0 0 28 0 0 0 0 0 0 0 ...
If parallel applications „Counting“ and „Checkweighing“ are active. Initialization of both applications:
The first application data byte is located directly behind the data of the scale interface.
Byte 0-3:
Byte 4-7: specific piece weight (UInt32) target value (UInt32)
Byte 8-11: lower limit as an absolute value (UInt32)
Byte 12-15: upper limit as an absolute value (UInt32)
Application ID and command to initialize the above limits are set in the standard scale interface of the active scale
(numbering starting with 1):
Byte 2:
Byte 3:
Byte 5:
0x04 // ID for Checkweighing
0x01 // ID for Counting
0x21 // command for sending initialization data
Command 0x28h is written to byte 5 so that the applications can be restarted using the new initialization data.
Example:
A scale with two decimal places and using the gram unit,
„Counting“ application: piece weight 1.15 grams
„Checkweighing“ application: target value 130 g, lower limit 102 g, upper limit 135 grams
Scale interface | Application data range
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 |...
0 0 4 1 0 21 0 0 0 0 0 73 0 0 0 82 0 0 0 66 0 0 0 87 0 ...
Application start with the new initialization data:
Scale interface | Application data range
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 0 | 1 | 2 | 3 | 4 | ...
0 0 0 0 0 28 0 0 0 0 0 0 0 ...
You can determine whether or not the initialization or restart was successful using the „Cmd error“ bit in byte 6 of the read window.
The command was successful if the bit is zero.
11
11 Describing the Display
Similar to application initialization, you can also describe parts of the display using the application data range.
The display area to be described is selected in byte 3 of the scale interface. Additional control bits can be issued in byte 2.
The first application data byte is located directly behind the data of the scale interface.
Byte 0-31: Display string to be shown (ASCII characters in hex code)
Option bits and command settings for writing to the display in the scale interface:
Byte 2: control bits:
0x04: activates the beeper when writing to the display
0x02: represents the received string inversely. Only used in combination with 0x01 and Combics 3
0x01: writes received string to the display, if not set, returns control to the scale control unit
Byte 3: for describing a window in the display:
0x1d: application display, line 1 (Combics 3 only)
0x9D: application display, line 2 (Combics 3 only)
0x13: main display (7 characters), only used with unverified control units
Byte 5: activation command:
0x9D: applies the above display string and control instructions
Please note: when you write to one of the application lines for the first time, the contents of both lines will be overwritten and/or deleted.
Example:
Describing application line 1 for a Combics 3 with string: „Sartorius“ with an inverse format
Scale interface | Application data range
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 |...
0 0 3 1d 0 9d 0 0 53 61 72 74 6f 72 69 75 73 0 0 ...
Example:
Return control of application line 1 for a Combics 3 to Combics:
Scale interface | Application data range
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 |...
0 0 0 1d 0 9d 0 0 0 0 0 0 0 ...
Example:
Writing to the main display of the control unit with string: „key“
Scale interface | Application data range
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 |...
0 0 1 13 0 9d 0 0 54 61 73 74 65 0 0 0 ...
12
12 Error Handling
There are three different types of errors:
– scale errors (indicator, hardware error)
– command errors
– adjustment errors
Scale errors are displayed to the master via bit 0 (scale error) in
byte 7 of the read data check bits. The master can then read out the IndStatus and ADU-Status bytes with read data type request
01 if the error needs to be specified more precisely. Scale errors do not affect the LastError byte!
The “scale error” bit and bit 0 in IndStatus identify all fatal errors and hardware errors in the scale and indicator.
The “scale error” bit is set for as long as the error exists in the scale and is automatically reset by the indicator. It also indicates scale states in which no weigh data can be sent; e.g. menu active; “L” or “H” displayed; indicator off.
Command and adjustment errors are displayed to the master via
bit 6 in byte 6 of the read data check bits. The master can then read out the LastError byte with read data type request 04h and specify the exact error using the error number filed here. The error numbers are company-specific.
Once command and calibration errors occur, they are displayed to the master (bit 6 in byte 6 of the read data check bits) until the master acknowledges them via the write data type request
79h and they are no longer occurring.
It is of no significance whether the error is only temporary.
If
several errors occur simultaneously and the master is unable
to read out the exact reason for the error, the last error that occurred will always be displayed to the master. An error history is not created!
12.1 Status Bytes
If the master has detected a scale or command (calibration) error, the error can be specified more exactly, if necessary, using a read data type request 01.
The following bytes are then read:
IndStatus:
Scale state
Bit 0 Fatal scale error
Bit 1 Gross weight > scale end value = max. load
Bit 2 Scale is overloaded
Bit 3 Gross weight < zero
Bit 4 The scale is at the zero point, 4 interval
Bit 5 Gross weight is inside the zero-setting range
Bit 6 Scale is stable
Bit 7 Gross weight is outside the scale
When bit 0 is set, the scale error in the AduStatus byte is specified more exactly, if possible.
ADUstatus:
State of A/D converter
Bit 0
Bit 1
Bit 2
Weight too low (ERROR 54)
Weight too high (ERROR 55)
Arithmetic error (overflow)
Bit 3
Bit 4
Bit 5
Bit 6
Bit 7
Input offset
Reserved
Reserved
No scale connected
Indicator is off
If one of the bits 0-3 is set, Bit 0 in the IndStatus byte must also be set.
CmdStatus:
Status of command execution
Bit 0 Error during execution of action (cmdError), can be read out from the LastError (see below) byte.
Identifies command and calibration errors
Bit 1 Action is being carried out, in the execution phase
Bit 2
Bit 3
Bit 4
Bit 5
Bit 6
Bit 7
Power failure, set at each power-on and reset by the master via command 75h.
Reserved
Reserved
Reserved
Reserved
Reserved
Activs:
Actions in progress:
Bit 0 Reserved
Bit 1
Bit 2
Bit 3
Bit 4
Device is in calibration mode
Device is tared
Reserved
Reserved
Bit 5
Bit 6
Bit 7
Reserved
Reserved
Reserved
12.2 Command and Adjustment Errors Possible
One of many functions the read data type request 04 can perform is reading the “Last Error” byte, which describes the current command or calibration error:
ID number of command error
2 hex
Meaning
5 hex
7 hex
8 hex
9, 11 hex
Zero point error during cal start: not tared, or scale under load
Manual cal. weight not at end position
Function or command invalid for calibrating scales (calibration switch off)
Zeroing error at gross wt. > zeroing range
Tare error at gross wt. <= 0
13
13 Operation Using Several Platforms
Up to three scales can be connected to a Sartorius control unit.
Therefore, the size of the read and write window can be 1+8, 2+8 or 3+8 bytes. The first 8 bytes represent the 1st scale, the next 8 the 2nd scale, etc.
Example: write window
0005
0006
0007
0008
0009
000A
000B
000C
Address
0000 hex
0001
0002
0003
0004
000D
000E
000F
2
2
2
2
1
1
1
2
2
2
2
Scale number
1
1
1
1
1
Input area
Value to be written (MSB)
:::
:::
:::
Read data type
(LSB)
Write data type
Check bits
Check bits
Value to be written (MSB)
:::
:::
:::
Read data type
Write data type
Check bits
Check bits
(LSB)
Only one scale can be accessed at any given time; therefore, the entire write area of the inactive scale should be filled with zeroes.
If a number other than zero is entered in bytes 4-7 of the write area for the inactive scale, this will cause the indicator to constantly switch back and forth between scales until a write data type is received for the scale that is currently inactive.
If a write or read data type request is written to the write area of both scales while only one scale is active, the command for the active scale will be executed first. After a scale switch, the command will then be executed on the second scale. The protocol then switches back and forth between the two scales continuously.
14
14 Ethernet Interface
Enter the required numbers in the
UNICOM menu under Ethernet > Source
IP, Ethernet > ListenPort, etc. Under
“Source name” you can enter letters and numbers. Enter up to 15 characters.
Port numbers
Range: 0 – 65535
Because many of the ports up to 49150 are already allocated, we recommend using numbers higher than 49150.
This does not apply for Modbus/TCP, as port number 502 is used here (see the operating instructions for the field bus module). Profibus/ Ethernet Interface:
Initialization
14.1 Display: Initialization Completed
Once initialization of the Ethernet or Profibus module has been completed successfully, the display shows “=”.
Network module initialized
If initialization was not successful, no symbol is displayed. The symbol does not indicate whether or not a network connection is active.
TCP Connections:
In the SBI C/S operating mode, the Combics breaks the connection automatically.
In other operating modes; e.g.,
SBI Serv, SMA, xBPI or Modbus/TCP, the connection remains active until the computer (client) disconnects it. Only one connection can be active at any given time.
9
Combics 3: Initialization
Once initialization of the
Ethernet or Profibus module has been completed successfully, the symbol shown here is displayed continuously. When this symbol is shown, the initialization has been completed and the device is ready for operation.
This symbol does not indicate whether or not a network connection is active.
=
14.2 Ethernet Interface: Features
Source IP: IP address of the Combics indicator
If the address 0.0.0.0 is selected, an IP address should be allocated dynamically by a DHCP server.
Source name: This parameter is alternative to the “Source IP“ address. You can enter a name of up to 15 characters for identification of the Combics. The name is passed to the domain name system (DNS) server if:
– an IP address has been entered under DNS IP, or
– an IP address has been allocated by a DHCP server.
Device port: Port number on which the Combics listens for server operation.
Subnet mask: IP address mask for activating addresses in a subnet. If the mask is allocated by a DHCP server, enter 0.0.0.0 here.
Gateway IP: IP address of the gateway
This is for addressing a server using the Target IP field when the server is in another network.
If the IP address is allocated by a DHCP server, enter 0.0.0.0 here.
DNS IP: To address a DNS server explicitly, enter the IP address of that server.
If the address 0.0.0.0 is selected, the address will either be allocated by a DHCP server or ignored.
Target IP: Address of the server that receives data from the Combics.
This is important when the Combics is operating as client in SBI C/S mode and automatic data output is active. If you are using UDP, an address must be entered here.
Target port: Number of the port over which the server with the target IP receives data from the Combics.
Protocol: Select the transport protocol for transmitting data over Ethernet.
You can choose from the following:
– TCP: connection oriented; high data security
– UDP: connection independent (does not work with Modbus/TCP)
Mode: Select the format that contains the user data embedded in TCP or UDP (SMA, for example, is tunneled with TCP or UDP over Ethernet when using TCP or
UDP) which makes the entire range of SMA functions also available over Ethernet. The same applies for SBI C/S und XBPI).
When using the SBI Serv, XBPI or SMA and Modbus/TCP protocol, Combics operates exclusively as server. If SBI C/S is used, the Combics is both server and client.
The Combics acts as client when it actively builds up a connection to the server (i.e., to the PC); for example, when the p [Print] key is pressed or when automatic data output is active; for other operations, the Combics acts as server.
In SBI Serv mode, data can be sent to the client (i.e., to the PC) by pressing the p [Print] key if the client has built up a connection to the Combics
(i.e., to the server).
Power-up response: If the interface module is active, the display may take up to 20 seconds longer to respond.
15
15 Standard Scale Interface with Modbus/TCP
IQVP
APP
IP
Network Access
Ethernet II and 802.3 layer
TCP
Modbus
Mag
15.1 Intended Use: Modbus/TCP
The Modbus protocol was developed for data transmission with controllers from the Modicon company (now called
Schneider Electric). Data is transmitted in the form of 16-bit registers (integer format) or as status information in the form of data bytes. The protocol has been expanded since its initial development and is used with devices from other manufactures as well. New data types have been added, in particular to obtain better resolution for the values transferred.
In adapting the Modbus protocol for new media, deriviative protocols such as Modbus Plus and Modbus/TCP were created.
To preserve compatibility, the basic structure of the data area and addressing mechanisms has been retained.
The following descriptions apply to the
Modbus/TCP protocol and is restricted to the functionality of this protocol in
Sartorius devices.
!
Once Modbus/TCP has been selected, the selection of TCP or UDP in the operating menu of the Sartorius display and control unit has no effect; TCP is always active.
15.2 Structure of Messages
The application data unit (ADU) in
Modbus/TCP consists of the following blocks:
MBAP header Function code Data
7 bytes 1 Byte n bytes
MBAP header = Modbus application
protocol header
Bytes 0, 1: Transaction identifier: identification during multiple simultaneous active requests.
Bytes 2, 3: Protocol identifier: always 0 (Modbus protocol)
Byte 4: Number of subsequent data bytes (high byte): always 0 (because all messages are shorter than 256 bytes)
Byte 5: Number of subsequent data bytes (low byte)
Byte 6: unit identifier (previously called
“device address“). Because the devices are addressed by their IP address, this parameter has no function and should be set to 0xFF. Exception: for communication over a gateway, the device address is set in the same manner as was previously used.
Function code
Byte 7: Function code of the standard
Modbus protocol.
Data
Bytes 8 to n: The data area corresponds to that of the standard Modbus protocol.
The CRC checksum is not used, however, because it is implemented on the TCP/
IP protocol level.
The content and structure of this data corresponds to the Sartorius Standard
Scale Interface as described in Chapters
4 through 9.
15.3 Communication Management
Modbus communication requires that a TCP connection is established between a client (e.g., a computer) and the server (Sartorius indicator or complete scale). The TCP port 502, reserved for Modbus, is generally used for this connection. The operator can configure a different port if desired. Keep in mind that if a different port is configured, communication is no longer possible over port 502.
If there is a firewall between server and client, make sure the port selected has access across the firewall.
15.4 Functionality
The following Modbus functions are implemented in Sartorius indicators and complete scales:
Function 03 hex: Read continuous words (2 bytes)
Function 10 hex: Write continuous words (2 bytes)
Function 08 hex: Diagnostics; subfunction 0000 hex
!
15.5 Error Handling
In the event of transmission error (e.g., device not found; device is switched off) the server (Sartorius indicator or complete scale) does not send confirmation to the client. This causes a client timeout.
In the event of error, the server sends an error message to the client.
Device response:
MBAP header Function code Data
Copy of request
Code+80H Error code
The functions code received is copied and the highest bit (MSB) is set.
The error code indicates an operating error or program error. The following error codes are supported:
Error code Meaning
01 hex Unknown function number
02 hex Invalid address
03 hex Incorrect data format
(e.g., data written exceeds quantity specified)
04 hex Server error; e.g., invalid message length
06 hex Server busy; e.g., server is still processing the previous message
16
15.6 Fundamentals
The Modbus/TCP protocol is used as a frame, while the data transmitted conforms to the Sartorius Standard Scale Interface protocol
(see Chapters 4 through 10).
Before data in the scale can be loaded in the PC, a request must be sent to the scale specifying the desired data (e.g., gross weight value).
After this request, for example, Modbus commands can be used to read the gross value.
To request the gross weight value, the following must be written in register 24. The data to be read is structured as a data window
(see Chapter 4), and “08“ is entered as the type of data to specify the gross weight value.
The gross value can now be read. The following is read in register 00. The data received is structured as a data window (see Chapters 4 and 7).
It includes the requested gross weight value and additional status information.
From this point on, the gross weight value is displayed each time the 00 register is read.
To read a different value; for example, the exponent of the weight value, the following must be written in register 1024. After this is written, the exponent can be read in register 00.
Only these two registers are used (1024 for writing and 00 for reading). The ‚read‘ and ‚write‘ windows in the data area of the Modbus protocol are used for control and reading of data from the scale.
15.7 Diagnostics
Function 08 hex
Sub-function 00 tests whether a particular device is connected. The message sent is returned with alteration.
Client (computer) server (Sartorius indicator or complete scale)
Transaction identifier
0x00 tno
Protocol identifier
Number of data bytes
Unit identifier
0x00 0x00 0x00 0x06 0xff
Data
Funct.
0x08
Sub-function
0x00 0x00
Data
High byte Low byte
Response: Server (Sartorius indicator or complete scale) client (computer)
Transaction identifier
0x00 tno
Protocol identifier
Number of data bytes
Unit identifier
0x00 0x00 0x00 0x06 0xff
Data
Funct.
0x08
Sub-function n
Data
High byte Low byte
Send: 00 00 00 00 00 06 ff 08 00 00 CC 33
Response: 00 00 00 00 00 06 ff 08 00 00 CC 33
15.8 Standard Scale Interface
Control is implemented over the same standard scale interface used by Sartorius equipment for other fieldbuses; e.g., Profibus (see Chapters 4 through 9), and references the data area of the MODBUS protocol.
There is a ‘read‘ window and a ‘write‘ window; both are at least 8 bytes (4 words) wide. If a second weighing instrument is configured, the width is increased to 16 bytes (8 words). These windows are the data area which is embedded in the Modbus protocol frame.
‘Write’ window for a weighing instrument in the standard scale interface:
Register 1024 dec
Byte 0
Write value
Byte 1
Register 1025 dec
Byte 2 Byte 3
Register 1026 dec
Byte 4
Read data type
Byte 5
Write data type
Register 1027 dec
Byte 6
Control_
Byte1
Byte 7
Control_
Byte2
“Registers“ are used to address data in the Modbus protocol.
To communicate with a second weighing instrument, use registers 1028 through 1031 dec.
Writing data on the server (Sartorius indicator or complete scale):
Function code: 10 hex
Before data can be read over the Modbus interface using the 03 Hex function, the function 10 Hex must be invoked to send data to the server (Sartorius indicator or complete scale) in the form of a “write” window.
The same applies when setting control bits or sending a write-data type to the server (Sartorius indicator or complete scale).
This function code enables you to switch between scales. For this purpose, bytes 4-7 must have an input in register 1028.
17
Example: request net weight value:
Client (computer) server (Sartorius indicator or complete scale)
Transaction identifier
0x00 tno
Protocol identifier
Number of data bytes
0x00 0x00 0x00 n+7
Unit identifier
0xff
Data
Funct.
0x10
Start address
No. register
High Low High Low byte byte byte byte
Bytes n
Response: Server (Sartorius indicator or complete scale) client (computer)
Transaction identifier
0x00 tno
Protocol identifier
Number of data bytes
Unit identifier
0x00 0x00 0x00 0x06 0xff
Data
Funct.
0x10
Start address
High byte
Low byte tno = transaction number, defined by client
Example:
Send: 00 00 00 00 00 0F FF 10 04 00 00 04 08 00 00 00 00 08 00 00 00
Response: 00 00 00 00 00 06 FF 10 04 00 00 04
‚Read‘ data window for a weighing instrument in the standard scale interface:
Register 0 dec
Byte 0
Read data
Byte 1
Register 1 dec
Byte 2 Byte 3
Register 2 dec
Byte 4 Byte 5
Echo read- Status data type request byte 1
No. register
High byte
Low byte
Register 3 dec
Byte 6
Status byte 2
Byte 7
Status byte 3
„Registers“ are used to address data in the Modbus protocol.
To communicate with a second scale, use registers 4 through 7.
Reading data from the server (Sartorius indicator or complete scale)
Function code: 03 hex
Client (computer) server (Sartorius indicator or complete scale)
Data
‚Write‘ window
Transaction identifier
0x00 tno
Protocol identifier
Number of data bytes
Unit identifier
0x00 0x00 0x00 0x06 0xff
Server (Sartorius indicator or complete scale) client (computer)
Data
Funct.
0x03
Start address
High byte
Low byte
No. register
High byte
Low byte
Transaction identifier
0x00 tno
Protocol identifier
Quantity data bytes
0x00 0x00 0x00 n+3
Unit identifier
0xff
Example:
Send: 00 00 00 00 00 06 FF 03 00 00 00 04
Response: 00 00 00 00 00 0B FF 03 08 00 00 00 32 08 40 20 70
Data
Funct.
0x03
No. of data bytes n
Data
‚Read‘ window
18
16 Settings in the GSD File for Profibus
There are different firmware states requiring different GSD files for the Signum, Combics Sartorius control units.
All control units with the Profibus menu upgrade: “Use of application data” require the GSD file: “sag70B1.gsd.”
All others require the GSD file: “hms_1810.gsd.”
The following applies when using the GSD file “hms_1810.gsd”:
For operation with one scale connected, select the “In/Out
8 bytes” module in the GSD file supplied.
For operation with two scales connected, select the “In/Out
16 bytes” module.
With the settings shown above, 2 bytes of “consistent data” are transferred to the PLC. This is sufficient in most cases.
If this is not sufficient, or if the hardware reports an error
(e.g., “Error 80B1” from the S7), a universal module must be configured.
For more information, please refer to section 2.3 of the PDF
document, “S7 Connections.”
The following applies when using the GSD file: “sag_70B1.gsd”:
Module: “8 bytes I/O consistent” is used when operating one scale without application data.
Module: “16 bytes I/O consistent” is used when operating two scales without application data.
Module: “24 bytes I/O consistent” is used when operating three scales without application data.
When application data are used, the number of consistent data being transmitted increases by 34. Normally, this number can also be read by a hardware configurator for a Siemens PLC.
However, if there are still problems, the universal module and the
SFC14, 15 modules should be used.
For more information about address range assignment for
SFC14,15, see file “S7-integration.pdf” starting in chapter 2.3.
Download the GSD files from the Sartorius web site.
Internet hyperlink: http://www.sartorius.com/index.php?id=613.
Go to “Select Product” and then select “Fieldbus Files.”
All GSD files from Sartorius Industry are available here in one file.
At the following link: »http://www.sartorius-mechatronics.com/index.php?id=10874&tx_sartoriusmechpdf_pi1[searchmode]=1&tx_sartoriusmechpdf_pi1[search]
[lang]=5&tx_sartoriusmechpdf_pi1[search][cat]=32&tx_sartoriusmechpdf_pi1[search][app]=1033«. File “SO-GSD-files-a.zip” contains information and the GSD files for Signum, Combics.
19
Inhalt 1 Verwendungszweck Profibus
Seite
1 Verwendungszweck: Profibus . . . . 20
2 Welche Daten sind möglich? . . . . . 20
3 Konfiguration über Menü . . . . . . . 21
4 Schnittstellenprotokoll . . . . . . . . . 21
4 .1 Schreibfenster . . . . . . . . . . . . . . . 22
4 .2 Lesefenster . . . . . . . . . . . . . . . . . 22
4 .3 Lesen und Schreiben von Daten . . 22
4 .4 Aufbau Schreib- und Lesefenster . 23
5 Datenformate . . . . . . . . . . . . . . . 23
6 Alle Schreibdaten . . . . . . . . . . . . . 24
7 Alle Lesedaten . . . . . . . . . . . . . . . 25
8 Gewichte lesen . . . . . . . . . . . . . . . 26
8 .1 Gewichtswert . . . . . . . . . . . . . . . . 26
8 .2 Exponent, Einheit, Schrittweite . . 26
9 Tarieren und Nullstellen . . . . . . . . 27
10 Applikation initialisieren . . . . . . . . 27
11 Display beschreiben . . . . . . . . . . . 29
12 Fehlerbehandlung . . . . . . . . . . . . 30
12 .1 Status-bytes . . . . . . . . . . . . . . . . 30
12 .2 Mögliche Befehls- und Justierfehler . . . . . . . . . . . . . 30
13 Betrieb mit mehreren Plattformen 31
14 Ethnert-Schnittstelle . . . . . . . . . . 32
15 Standard Scale Interface with Modbus/TCP . . . . . . . . . . . . 33
16 Einstellungen mit der GSD-Datei für Profibus oder Modbus TCP . . . 36
Durch Einstecken einer Zusatzplatine in das Gerät für die Schnittstelle UniCom kann die
Sartorius-Gerätefamilie zu einem Feldbus-Slave werden .
Die Netzwerk-Adresse ist frei in dem zulässigen Bereich wählbar .
Die Schnittstelle ist kompatibel zu den Geräten der Sartorius Hamburg GmbH .
Fernsteuerung der Waage
Es wird für eine Fernsteuerung der Waage empfohlen, die Tasten an der Sartorius-Bedieneinheit über das Menü zu sperren! Dadurch kann z .B . eine unbeabsichtigte Tarierung ausgeschlossen werden .
2 Welche Daten sind möglich?
Diese Vorstellung gibt einen Einblick in die wichtigsten Möglichkeiten zum Datenaustausch:
Bei dem Betrieb als Waage kann das Brutto-, Netto- oder Tara-Gewicht gelesen werden .
Die Waage läßt sich tarieren, enttarieren oder nullsetzen . Außerdem läßt sich ein Festtara wert schreiben und lesen . Die Status der Waage ist auslesbar . Die Tastatur ist sperrbar .
Da an Sartorius Geräten zwei Waagen angeschlossen werden können, sind die Daten für jede
Waage nacheinander zu lesen oder zu schreiben . Es steht immer der Wägewert der aktuell aktiven Waage zum auslesen bereit . Es ist ein Umschalten auf die andere Waage über den
Bus jederzeit möglich .
20
3 Konfiguration über Menü
Konfigurationsparameter unter dem Menüabschnitt
[Setup]-([Gerät])[UniCom]:
[Datenprotokoll]
[Profibus]
Hier wird das gewünschte Feldbusprotokoll gewählt (z.Zt. nur Profibus-DP)
Wurde Profibus gewählt, kann hier die Netzwerkadresse (0–126) gewählt werden.
Werksvoreinstellung: 126
[Profibus-Adresse] hier kann die Netzwerkadresse (0-126) gewählt werden. Werksvoreinstellung: 126
[Benutzung von Applikationsdaten] hier kann zwischen Ja und Nein gewählt werden. Bei Ja wird der waagenspezifische Datenbereich um
34 Byte, z.B. für die Initialisierung von Applikationen, erweitertet. Werkseinstellung: Nein
Die Baudrate des Profibusses wird von der Bedieneinheit automatisch bis zu 12 MBaud erkannt.
4 Schnittstellenprotokoll
Die Schnittstelle arbeitet mit einem 8 Byte breiten Schreibfenster und einem 8 Byte breiten Lesefenster für jede Waage.
Abhängig von der Anzahl der konfigurierten Waagen ist das Schreib- und Lesefenster entweder 1+8 Byte, 2+8 oder
3+8 Byte groß. Sind zwei Waagen konfiguriert: Schreib- und Lesefenster
2+8 Byte groß.
Das hier beschriebene Protokoll darf nicht mit dem gewählten Feldbusprotokoll verwechselt werden.
Es beschreibt nur den Dateninhalt, der über das Feldbusprotokoll (Profibus) zwischen
Master und Slave ausgetauscht wird.
Das Schnittstellenprotokoll liegt unter der
Feldbusebene und verwaltet den Zugriff auf die verschiedenen Daten über die
Schreib- und Lesefenster.
Feldbusprotokoll
z.B. Profibus-DP
Feldbus Schnittstelle für 2 Waagen
Schreibfenster min. 2+8 Byte
Lesefenster min. 2+8 Byte
Schnittstellenprotokoll
Daten in der Sartorius-Bedieneinheit
Addressbereich (Kommando-Nr.):
8: Bruttowert
10: Tarawert
…
Steuer und Status Bytes:
Waagensteuerung
21
Byte 0
Byte 1
Byte 2
Byte 3
Byte 4
Byte 5
Byte 6
Byte 7
Schreibdaten: MSB
Schreibdaten:
Schreibdaten:
Schreibdaten: LSB
Lesedatentyp Anforderung
Schreibdatentyp direkte Kontrollbits direkte Kontrollbits
4.1 Schreibfenster
In diesem Fenster werden Daten vom Master zum Slave (Sartorius-Bedieneinheit) übertragen.
Die ersten vier Bytes werden zum Schreiben eines Datenwertes verwendet. Der Typ dieser
Daten oder Parameter wird in Byte 5 geschrieben.
In Byte 6 und 7 liegen Bits im direkten Zugriff unabhängig vom Datentyp des Schreibwertes.
Nach einer 0-1 Flanke in dem entsprechenden Bit, wird das Kommando ausgeführt.
In Byte 4 wird ein Lesewert angefordert (z.B. Netto-Wert), der dann über das Lesefenster empfangen wird.
Byte 0
Byte 1
Byte 2
Byte 3
Byte 4
Byte 5
Byte 6
Byte 7
Lesedaten: MSB
Lesedaten:
Lesedaten:
Lesedaten: LSB
Echo von Lesedatentyp Anforderung
allgemeine System bits: writehandshake, power_fail,
Analogfehler...
Status Bits
Status Bits
4.2 Lesefenster
In diesem Fenster werden Daten vom Slave (Sartorius-Bedieneinheit) zum Master übertragen.
Die ersten vier Bytes werden zum Lesen eines Datenwertes verwendet. Der Typ dieser Daten oder Parameter wird von dem Schreibfenster in Byte 4 gespiegelt, wenn die Daten vorliegen.
In Byte 6 und 7 liegen Statusbits unabhängig vom Datentyp des Lesewertes.
4.3 Lesen und Schreiben von Daten
Die Zahl der Daten übersteigt die Größe der
Schreib/Lesefenster bei weitem.
Die Parameter werden daher mit dem
Schreibdatentyp und dem Lesedatentyp adressiert. Hierfür werden die ersten sechs
Byte des Schreibfensters und die ersten fünf Byte des Lesefensters benötigt.
Der Master kann so Daten der Sartorius-
Bedieneinheit beschreiben: z.B. ein
Tarawert soll auf 100 kg gesetzt werden.
Gewichts werte oder andere Daten können auch vom Master aus der Sartorius-
Bedieneinheit gelesen werden. In jedem
Fall werden dazu das Schreib- wie Lesefenster benötigt. Ein sicherer Datenaustausch von Parametern wird dabei von einer
Schreib- und einer Leseprozedur gewährleistet.
Für das Lesen von Statusbits und das
Schreiben von direkten Kontrollbits ist eine Prozedur jedoch nicht erforderlich.
Die allgemeinen Systembits und die Status
Bits sind immer präsent und müssen nicht extra angefordert werden. Ebenso stehen die direkten Kontrollbits ständig zur Verfügung.
Prozedur zum Lesen eines Parameters:
1. Schreibe den Typ der Daten / Parameter in Byte 4 vom Schreibfenster
(eg. Nettogewicht) als Lesedatentyp
Anforderung.
2. Warte bis 5. Byte des Lesefenster das
Echo von Lesedatentyp Anforderung gleich dem Lesedatentyp Anforderung vom 5. Byte im Schreibfenster ist.
3. Jetzt steht der Wert in Byte 0 bis 3 zur
Verfügung
Prozedur zum Schreiben eines Parameters mit Handshake:
1. Kontrollbit »write_handshake« in dem
Lesefenster muss Null sein. Falls nicht:
Bit löschen durch Schreiben einer Null in Byte 5 des Schreibdatentyps.
2. Schreibe Wert in Byte 0 bis 3, falls für
Schreibdatentyp-Anforderung notwendig.
3. Schreibe Schreibdatentyp-Anforderung in Byte 5 des Schreibfensters.
4. Warte bis write_handshake im Lesefenster gesetzt (0 Sartorius-Gerät bestätigt den Empfang der Daten)
5. Schreibe Null in Byte 5 des Schreibfensters, damit das Bit »write_handshake« im Lesefenster gelöscht wird. Ist das Bit nicht gelöscht, ist ein Schreiben
über Byte 5 des Schreibfensters nicht möglich.
22
4.4 Aufbau Schreib- und Lesefenster
Allgemeiner Aufbau des Schreibfensters für eine Waage:
Byte
0
1
2
3
4
5
6
7
Bezeichnung
zu schreibender Wert (MSB)
:::
:::
:::
Lesedatentyp
Schreibdatentyp bit 7 bit 6 bit 7 bit 6
LSB bit 5 bit 5 bit 4 bit 4
Allgemeiner Aufbau des Lesefensters für eine Waage
3
4
5
6
0
1
2
7
Bezeichnung
zu lesender Wert (MSB)
:::
:::
:::
Lesedatentyp bit 7 bit 7 bit 7 bit 6 bit 6 bit 6
(LSB) bit 5 bit 5 bit 5 bit 4 bit 4 bit 4 bit 3 bit 3 bit 3 bit 3 bit 3 bit 2 bit 2 bit 2 bit 2 bit 2 bit 2 bit 2 bit 2 bit 2 bit 2
Beschreibung
z.B. Fixtara Preset bit 0 bit 0 z.B. Bruttowert schreiben: Fixtara Preset
Kontrollbits.
Kontrollbits bit 0 bit 0 bit 0
Beschreibung
z.B. Brutto Wert z.B. Brutto Wert z.B. Brutto Wert z.B. Brutto Wert
Echo: Bruttowert
Kontrollbits
Kontrollbits
Kontrollbits
5 Datenformate
In der Schnittstellenbeschreibung sind verschiedene Datenformate verwendet worden:
DINT Die meisten Datenwerte werden in Form eines vier Byte langen Doppel-Integer Wertes übertragen; 32 Bit Zahl mit Vorzeichen.
Schreibfenster: Bytenummer
Wert
Beispiel: schreibe den Gewichtswert Fixtara 844
0 1 2 3
00 00 03 4C
4 5
1F
6 7
Lesefenster: Bytenummer
Wert
Beispiel: lese negatives Bruttogewicht -2
0 1 2 3
FF FF FF FE
4
08
5 6 7
USINT Positive 8 Bit Zahl.
Lesefenster: Bytenummer
Wert
Beispiel: lese Exponent/Einheit/Step/Error
0 1 2 3
02 04 01 00
4
04
5 6 7
23
6 Alle Schreibdaten
Alle Schreibwerte werden durch Schreibdatentyp_Anforderung adressiert.
31
33
40
107
108
112
113
114
Wert in Byte 5
Schreibdatentyp_Anforderung
Dez Hex
0
03
04
0
3
4
117
118
119
1F
21h
28h
6b
6c
70
71
72
75
76
77
Schreibdaten in Byte 0...3 (Parameter)
Bewirkt keine Funktion oder »Write_Handshake« Bits löschen
Sperre Tastatur, incl. EIN/AUS-Taste*
Freigabe der Tastatur
Fixtara [DINT]
Initialisierungsdaten von Applikationen senden, wenn im Menü
»Benutzung von Applikationsdate« auf »Ja« steht.
Starten einer Applikation mit den zuvor (mittels 21H) gesendeten
Initialisierungswerten
Kalibrieren: Start* mit ext. werksvoreingestelltem Gewicht
Kalibrieren: Stopp*
Null setzen * tarieren * enttarieren *
Reset Powerfail-Bit *
Tariere mit dem Wert im Fixtare-Preset Zwischenspeicher *
Kopiere Bruttowert nach FixTara-Preset-Zwischenspeicher *
121
157
79
9dh
Quittierung eines Command-Errors im Cmd_Status-Byte
(Cmd_Status ist Teil eines Lesedatentyps) *
Anzeige beschreiben, wenn im Menü »Benutzung von Applikationsdate« auf »Ja« steht.
* Bei diesen Typen sind keine Schreibdaten in den Bytes 0 bis 3 erforderlich!
Direkte Kontrollbits (Schreibbits für den Feldbus-Master) bit 7 bit 6 bit 5
Byte 6
Byte 7
nimm als
Fixtara
Fixtara setzen powerfail zurücksetzen bit 4
Cal-Stopp bit 3
Cal-Start
Bit 2
Enttarieren
Hinweis:
Alle Kontrollbits reagieren nur auf einen 0 ➝ 1 Wechsel.
Um einen Wechsel erkennen zu können muss der jeweilige Zustand für mindestens 100 ms anstehen.
bit 1 tarieren
Cal-Stopp:
Cal-Start:
Kalibrieren mit »default Gewichten« stoppen
Kalibrieren mit »default Gewicht« starten
nimm als Fixtara:
Fixtara setzen:
Schreibe aktuellen Bruttowert in den Fixtara-Zwischenspeicher
Tariere die Waage mit dem Wert im Fixtara-Zwischenspeicher
power fail zurücksetzen: Bewirkt, dass das »power fail-Flag« in den Lesedaten vom Slave zurückgesetzt wird
enttarieren:
tarieren:
Null setzen:
Die Waage wird enttariert
Die Waage wird tariert
Setze die Waage auf Null, wenn das Gewicht innerhalb des Nullsetzbereiches liegt bit 0
Null setzen
24
7 Alle Lesedaten
4
5
6
8
9
10
14
31
Alle Lesewerte werden durch Lesedatentyp_Anforderung adressiert
Wert in Byte 4
Lesedatentyp_-Anforderung
Dez Hex
1 01
04
05
06
08
09
0A
0E
1F
Direkte Kontrollbits (zu lesen vom Feldbus-Master) bit 7 bit 6 Bit 5
Byte 5
Byte 6
Byte 7
write handshake power fail
Kommando Cmd-Fehler aktiv außerhalb
Justierung
Stillstand Innerhalb des Nullsetz- bereiches bit 4
Lesedaten in Byte 0...3 (Parameter)
IndStatus/ADU-Status/CmdStatus/Activs
Exponent/Einheit/Schrittweite/LastError
Versionsinfo der Sartorius-Bedieneinheit (s.u.)
Seriennummer der Waage
Brutto
Netto
Tara
Skalenendwert
Fixttara (Wert im Tara-Speicher) bit 3
Unter
Null bit 2
Tara aktiv größer
Überlast bit 1
Kalibrier.
Aktiv
Über SKE bit 0
Waagen-
Fehler
[USINT]
[USINT]
[DINT]
[DINT]
[DINT]
[DINT]
[DINT]
[DINT]
write handshake:
power fail:
0 = Sartorius-Bedieneinheit ist bereit neue Schreibwerte zu empfangen
Waage hatte einen Spannungseinbruch (dieses Signal muss durch das Bit: »power fail zurücksetzen« zurückgesetzt werden) oder über Schreibdatentyp 0+75 hex
Tara aktiv:
Kalibrieren aktiv:
Innerhalb vom
Nullsetzbereich:
Waage ist tariert
Waage ist in der Justierung/Kalibrierung oder die Einheit wurde umgeschaltet, der Exponent hat sich geändert,
Waage wurde umgeschaltet
außerhalb Justierung: Waage ist zwischen dem Skalenendwert und Überlast; wenn W&M Modus aktiv ist, dann auch wenn Gewicht < 0
Stillstand:
Waage ist im Stillstand
Waage ist innerhalb von Nullsetzbereich
Unter Null:
größer Überlast:
Über SKE:
Waagen-Fehler:
Waage ist unter Null
Waage ist mehr als der Überlastbereich belastet
Waage ist über Skalenendwert bis Anzeige H (maximaler Skalenbereich z.B. 5000 kg)
Waage ist im Fehlerzustand z.B. ‚err 54‘. Die Wägewerte in den Lesedaten in Byte 0-3 sind dann ungültig.
(Terminal ist AUS, Menü aktiv, Anzeige: »L« oder »H«, keine Waage angeschlossen)
Cmd-Fehler:
Nach jedem Schreiben wird der Parameter auf Gültigkeit geprüft oder die Aktion auf Machbarkeit.
Ist der Parameter nicht gültig oder die Aktion nicht ausführbar wird das Bit gesetzt und der Parameter ignoriert.
Das Bit kann mit dem Schreibdatentyp 0+79 hex zurückgesetzt werden.
Kommando aktiv:
Die beauftragte Aktion ist noch aktiv (z.B. nach einem Tarierbefehl, wenn noch auf Stillstand gewartet wird).
25
8 Gewichte lesen
8.1 Gewichtswert
Zum Lesen von Gewichten muß lediglich der gewünschte Gewichtstyp in das Byte 4 des Schreibfensters (Lesedatentyp_Anforderung ) geschrieben werden. Wenn der Gewichtswert vorliegt, wird der Typ im Byte 4 des Lesefensters zurückgegeben. Bleibt die Gewichtsanforderung bestehen, wird immer das neuste Gewicht aktualisiert.
Schreibfenster: Bytenummer
Wert
Beispiel: Bruttowert
0 1 2 3 4
08
5 6 7
Lesefenster: Bytenummer
Wert
0
00
1
00
2
11
3
B4
4
08
5 6 7
Ausgelesen wird der Zahlenwert (11B4h =
4532 dez.) auf der Anzeige ohne Berücksichtigung von Einheiten und Kommastellen. Diese können
über den Lesedatentyp 04 angefordert werden.
Negative Werte werden im 2er Komplement dargestellt.
Lesefenster: Bytenummer
Wert
Beispiel: Negatives Gewicht -12
0
FF
1
FF
2
FF
3
F4
4
08
5 6 7
8.2 Exponent, Einheit, Schrittweite
Der Exponent, die Gewichtseinheit und die Schrittweite müssen immer ausgelesen werden, wenn das »Kalibrier-aktiv-Bit« gesetzt ist bzw. immer bevor der erste Wägewert angefordert wird. Da sich dann die Einheit oder der Wägebereich geändert haben könnte.
Sie können durch den Typ 4 gelesen zu werden.
Schreibfenster: Bytenummer
Wert
0 1 2 3 4
04
5 6 7
Lesefenster: Bytenummer
Wert
0
02
1
03
2
02
3
00
4
04
5 6 7
Die ersten drei einzelnen Bytes bedeuten:
Byte 0:
Exponent:
Zulässiger Bereich 0 bis 7.
0 = 0000 keine Kommastelle
1 = 000.0
2 = 00.00
3 = 0.000
Byte 1:
Einheit:
Zulässige Nummern 1 bis 15 (Sartorius Hamburg GmbH) und 128 bis 147 (nur Sartorius)
1 = mg
2 = g
3 = kg
4 = t
5 = lb (Pfund)
6 = l (Liter)
7 = Sekunden
15 = Prozent
Byte 2:
Schrittweite
ist Index auf eine Tabelle:
1 → Schrittweite 1
2 → Schrittweite 2
3 → Schrittweite 5
4 → Schrittweite 10
5 → Schrittweite 20
6 → Schrittweite 50
128 = Wahlfreie Einheit
131 = Carat
133 = Ounce
134 = Troy Ounce
135 = Tael Honkong
136 = Tael Singapur
137 = Tael Taiwan
138 = Grain
Der gerechnete Gewichtswert ergibt sich aus dem DINT-Wert und Expo wie folgt:
Gewichtswert = (Zahl in Byte 0-3)
DINT
*10 (-Exponent)
139 = Pennyweight
141 = Parts per Pound
142 = Tael China
143 = Momne
144 = Karat
145 = Tola
146 = Baht
147 = Mesghal
Deshalb muß das Gewicht aus dem vorhergehenden Beispiel gleich: 45,32kg mit Schrittweite 2 sein.
26
9 Tarieren und Nullsetzen
Für das Ausführen von Waagenfunktionen wie Tarieren oder Nullsetzen sind neben den obengenannten Schreibdatentypen zusätzlich noch einzelne Bits in Byte 7 des Schreibfensters diesen Funktionen zugeordnet. Die jeweilige Funktion wird durch eine 0-1 Flanke am entsprechenden Bit ausgeführt.
Bedeutung der Bits in Schreibbyte 7
Bit 7 Schreibe den aktuellen Bruttowert in den Fixtara-Zwischenspeicher (nur speichern nicht tarieren)
Bit 6 tariere die Waage mit dem Wert im Fixtara-Zwischenspeicher
Bit 5 power fail flag zurücksetzen, als Quittung auf einen Netzausfall
Bit 4 keine Funktion
Bit 3 keine Funktion
Bit 2 Die Waage wird enttariert (Taraspeicher wird gelöscht)
Bit 1 Die Waage wird mit dem aktuellen Gewichtswert tariert
Bit 0 Setze die Waage auf Null, wenn das Gewicht innerhalb des Nullsetzbereiches liegt
Beispiel:
Wenn die Waage sich im Nullsetzbereich befindet, wird diese Funktion einmalig ausgeführt:
Schreibfenster: Bytenummer
Wert
0 1 2 3 4 5 6 7
01
10 Applikation initialisieren
Eine Applikation wird mit Hilfe der zusätzlichen Applikationsdaten des Schnittstellenprotokolls initialisiert. Dazu muss im Menü die Option »Benutzung von Applikationsdaten« aktiviert sein. Dadurch werden dem Standard 8 Byte Protokoll(Waagen-Interface) weitere Daten
angehängt. Weiter muss im Waagen-Menü die zu initialisierende Applikation bzw. Applikationskombination bereits konfiguriert sein!
Beispiel: Eine Waage plus Applikationsdaten (34Byte):
Waagen-Interf. | Applikationsdatenbereich
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | ....
Beispiel: Zwei Waagen plus Applikationsdaten (34byte):
1.Waagen | 2. Waage | Applikationsdatenbereich
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | ....
Initialisieren einer Applikation: »Kontrollieren«:
Das erste Applikationsdatenbyte liegt direkt hinter den Daten des Waagen-Interfaces.
Byte 0-3 (des Applikationsdaten-Bereichs): Sollwert (UInt32)
Byte 4-7 (des Applikationsdaten-Bereichs): Untergrenze als absolut Wert (UInt32)
Byte 8-11 (des Applikationsdaten-Bereichs): Obergrenze als absolut Wert (UInt32)
Kennzeichnung der Applikation und Befehl zum Initialisieren der obigen Grenzen werden im Waagen-Interface der aktiven Waage gesetzt
(Zählweise von 0 beginnend):
Byte 2 (des Waage-Interfaces):
Byte 5 (des Waage-Interfaces):
0x04 // Kennzeichnung für Kontrollieren
0x21 // Befehl zum Senden von Initialisierungsdaten
Initialisieren einer Applikation: »Zählen« oder »neutrales Messen« oder »Prozent-Wägen«:
Das erste Applikationsdatenbyte liegt direkt hinter den Daten des Waagen-Interfaces.
Byte 0-3: spezifisches Stückgewicht (UInt32)
27
Kennzeichnung der Applikation und Befehl zum Initialisieren des obigen Stückgewichts werden im Waagen-Interface der aktiven Waage gesetzt (Zählweise von 0 beginnend):
Byte 3:
Byte 5:
0x01 // Kennzeichnung für Zählen oder neutrales Messen oder Prozentwägen
0x21 // Befehl zum Senden von Initialisierungsdaten
Die mögliche Anzahl Nachkommastellen des Stückgewichts richtet sich nach denen der Waage. Hat die Waage drei Nachkommastellen, kann ein Stückgewicht von z.B. 0,123 gramm gewählt werden. Auch wird das gewählte Stückgewicht entsprechend der Waagenschrittweite gerundet. Damit die Applikation mit diesen neuen Initialisierungsdaten neu startet, wird in Byte 5 das Kommando 0x28h geschrieben.
Beispiel:
Eine Waage mit Einheit Gramm,
Applikation »Kontrollieren«: Sollwert 130 g, Untergrenze 102 g, Obergrenze 135 Gramm
Waagen-Interface | Applikationsdatenbereich
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | ...
0 0 4 0 0 21 0 0 0 0 0 82 0 0 0 66 0 0 0 87 0 0 ...
Beispiel:
Eine Waage mit zwei Nachkommastellen mit Einheit Gramm,
Applikation »Zählen«: Stückgewicht 1,15 Gramm
Waagen-Interface | Applikationsdatenbereich
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 0 | 1 | 2 | 3 | 4 | 5 | ...
0 0 0 1 0 21 0 0 0 0 0 73 0 0 0 ...
Starten der Applikation mit den neuen Initialisierungsdaten:
Waagen-Interface | Applikationsdatenbereich
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 0 | 1 | 2 | 3 | 4 | ...
0 0 0 0 0 28 0 0 0 0 0 0 0 ...
Wenn parallele Applikationen »Zählen« und »Kontrollieren« aktiv sind. Initialisierung beider Applikationen:
Das erste Applikationsdatenbyte liegt direkt hinter den Daten des Waagen-Interfaces.
Byte 0-3:
Byte 4-7: spezifisches Stückgewicht (UInt32)
Sollwert (UInt32)
Byte 8-11: Untergrenze als absolut Wert (UInt32)
Byte 12-15: Obergrenze als absolut Wert (UInt32)
Kennzeichnung der Applikation und Befehl zum Initialisieren der obigen Grenzen werden im Standard-Waagen-Interface der aktiven Waage gesetzt (Zählweise von 1 beginnend):
Byte 2:
Byte 3:
Byte 5:
0x04 // Kennzeichnung für Kontrollieren
0x01 // Kennzeichnung für Zählen
0x21 // Befehl zum Senden von Initialisierungsdaten
Damit die Applikationen mit diesen neuen Initialisierungsdaten neu starten, wird in Byte 5 das Kommando 0x28h geschrieben.
Beispiel:
Eine Waage mit zwei Nachkommastellen und mit Einheit Gramm,
Applikation »Zählen«: Stückgewicht 1,15 Gramm
Applikation »Kontrollieren«: Sollwert 130 g, Untergrenze 102 g, Obergrenze 135 Gramm
Waagen-Interface | Applikationsdatenbereich
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 |...
0 0 4 1 0 21 0 0 0 0 0 73 0 0 0 82 0 0 0 66 0 0 0 87 0 ...
Starten der Applikation mit den neuen Initialisierungsdaten:
Waagen-Interface | Applikationsdatenbereich
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 0 | 1 | 2 | 3 | 4 | ...
0 0 0 0 0 28 0 0 0 0 0 0 0 ...
Ob die Initialisierung bzw. der Neustart erfolgreich war, kann anhand des »Cmd-Fehler«-Bits in Byte 6 des Lesefensters erkannt werden.
Ist das Bit Null, war der Befehl erfolgreich.
28
11 Display beschreiben
Ähnlich wie bei der Applikationsinitialisierung können mit Hilfe des Applikationsdatenbereichs Teile des Displays beschrieben werden.
Dazu wird in Byte 3 des Waagen-Interfaces der zu beschreibende Display-Bereich ausgewählt. In Byte 2 können noch zusätzliche Steuerbits
übergeben werden.
Das erste Applikationsdatenbyte liegt direkt hinter den Daten des Waagen-Interfaces.
Byte 0-31: Darzustellender Display-String (ASCII-Zeichen in Hex-Code)
Setzen von Optionsbits und Befehl zum Schreiben in das Display im Waagen-Interface:
Byte 2: Steuerbits:
0x04: aktiviere den Beeper, wenn ins Display geschrieben wird
0x02: stelle empfangenen String invers dar. Nur in Verbindung mit 0x01 und Combics 3
0x01: schreibe empfangenen String ins Display, wenn nicht gesetzt, gebe Kontrolle wieder an Waagen-Bedienteil ab
Byte 3: zu beschreibendes Fenster im Display:
0x1d: Applikationsanzeige, Zeile 1 (nur Combics 3)
0x9D: Applikationsanzeige, Zeile 2 (nur Combics 3)
0x13: Hauptanzeige (7 Zeichen), nur bei ungeeichten Bedienteilen anwenden
Byte 5: Aktivierungskommando:
0x9D Übernahme des obigen Display-Strings und der Steuer-Anweisungen
Bitte beachten: wird zum ersten Mal in eine der Applikationszeilen geschrieben, wird der Inhalt beider Zeilen überschrieben bzw. gelöscht.
Beispiel:
Beschreiben der Applikationszeile 1 eines Combics 3 mit dem String: »Sartorius« mit inverser Darstellung
Waagen-Interface | Applikationsdatenbereich
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 |...
0 0 3 1d 0 9d 0 0 53 61 72 74 6f 72 69 75 73 0 0 ...
Beispiel:
Rückgabe der Kontrolle über die Applikationszeile 1 eines Combics 3 an das Combics:
Waagen-Interface | Applikationsdatenbereich
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 |...
0 0 0 1d 0 9d 0 0 0 0 0 0 0 ...
Beispiel:
Beschreiben der Hauptanzeige Bedienteils mit dem String: »Taste«
Waagen-Interface | Applikationsdatenbereich
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 |...
0 0 1 13 0 9d 0 0 54 61 73 74 65 0 0 0 ...
29
12 Fehlerbehandlung
Es wird zwischen drei Fehlerarten unterschieden:
– Waagen-Fehler (Indikator-, Hardware-Fehler)
– Befehlsfehler
– Justier-Fehler
Waagen-Fehler werden über das Bit 0 (Waagen-Fehler) im Byte7
der Kontrollbits der Lesedaten dem Master angezeigt. Daraufhin kann sich der Master mit der Lesedatentyp-Anforde rung 01 die Bytes IndStatus und ADU-Status auslesen, wenn der Fehler genauer spezifiziert werden soll. Waagen-Fehler beeinflussen das
Byte LastError nicht!
Das Bit: »Waagen-Fehler« und das Bit 0 in IndStatus kennzeichnen alle Fatalen- und Hardware-Fehler in der Waage und im
Indikator.
Das Bit: »Waagen-Fehler« ist solange gesetzt wie der Fehler in der Waage vorliegt und wird vom Indikator selbstständig zurückgesetzt. Es zeigt auch Zustände des Indikators an, in denen keine Wägedaten geliefert werden können: z.B. Menü,
»L«-, »H«-Anzeige, Indikator is OFF.
Befehls- und Justier-Fehler werden durch das Bit 6 im Byte 6 der
Kontrollbits Lesedaten dem Master angezeigt. Daraufhin kann sich der Master mit dem Lesedatentyp-Anforderung 04 h das
Byte LastError auslesen und den Fehler über die hier abgelegte
Fehlernummer genau spezifizieren. Die Fehlernummern sind firmenspezifisch.
Befehls- und Kalibrier-Fehler werden nach dem Auftreten dem Master solange angezeigt (Bit 6 im Byte 6 der Kontrollbits
Lesedaten), bis dieser sie über das Schreibdatentyp-Anforderung
79h wieder quittiert und sie nicht mehr vorliegen.
Dabei ist es unerheblich ob es sich um einen temporären Fehler gehandelt hat.
Treten
mehrere Fehler gleichzeitig auf und war der Master
nicht in der Lage gleich den genauen Fehlergrund auszulesen, wird immer der letzte aufgetretene Fehler dem Master angezeigt.
Es wird keine Historie angelegt!
12.1 Status-Bytes
Hat der Master über Kontrollbits einen Waagen- oder Befehls-
(Kalibrier-) Fehler erkannt, kann der aufgetretene Fehler über eine Lesedatentyp-Anforderung 01 gegebenenfalls genauer spezifiziert werden.
Folgende Bytes werden dann gelesen:
IndStatus:
Zustand der Waage
Bit 0 fataler Waagenfehler
Bit 1 Bruttogew. > Skalenendwert = Maxlast
Bit 2 Waage ist überlastet
Bit 3 Bruttogew. < Null
Bit 4 Waage ist im Nullpunkt, 4 Ziffernschritt
Bit 5 Bruttogew. ist innerhalb Nullstellbereich
Bit 6 Waage in Stillstand
Bit 7 Bruttogew. ist außerhalb der Skala
Wenn Bit 0 gesetzt ist, ist der Waagenfehler im Byte AduStatus ggf. genauer spezifiziert, wenn möglich.
ADU-Status:
Zustand des ADUs
Bit 0
Bit 1
Bit 2
Gewicht zu klein (ERROR 54)
Gewicht zu groß (ERROR 55)
Arithmetischer Fehler (overflow)
Bit 3
Bit 4
Bit 5
Bit 6
Bit 7
Input Offset reserviert reserviert
Keine Waage angeschlossen
Indikator ist OFF
Ist eines der Bits0-3 gesetzt, muss gleichzeitig auch Bit0 in Byte
IndStatus gesetzt sein.
CmdStatus:
Status der Kommando-Ausführung:
Bit 0 Fehler während der Aktionsausführung (cmdError), kann in dem Byte: LastError (s.u.) ausgelesen werden.
Kennzeichnet Befehls- u. Kalibrierfehler
Bit 1 Aktion wird ausgeführt, in der Ausführungsphase
Bit 2
Bit 3
Bit 4
Bit 5
Bit 6
Bit 7
Netzausfall, wird bei jedem Netz-ein gesetzt und wird
über Kommando-Nummer 75 h vom Master wieder zurückgesetzt.
reserviert reserviert reserviert reserviert reserviert
Activs:
Laufende Aktionen:
Bit 0 reserviert
Bit 1 Gerät ist im Kalibrationsmode
Bit 2
Bit 3
Bit 4
Bit 5
Bit 6
Bit 7
Gerät ist tariert reserviert reserviert reserviert reserviert reserviert
12.2 Mögliche Befehls- und Justierfehler
Mit der Lesedatentyp-Anforderung 04 kann u.a. das Byte:
»Last Error« gelesen werden, das den anstehenden Befehls- oder
Kalibrier-Fehler beschreibt:
Kennzeichnungsnummer der Befehlsfehler Bedeutung
2 hex Nullpunkt-Fehler bei Cal-start: nicht tariert oder Waage belastet
5 hex
7 hex
8 hex
9, 11 hex manuelles Cal-Gew. nicht in Endstellung
Funktion oder Befehl. bei Eichwaagen unzulässig (Eichschalter geschlossen)
Zero-Error bei Brutto > Nullbereich
Tara-Error bei Brutto <= 0
30
13 Betrieb mit mehreren Plattformen
An Sartorius-Bedienteile können bis zu 3 Waagen angeschlossen werden. Deshalb können das Lese- und Schreibfenster 1+8, 2+8 oder 3+8 Byte groß sein. Die ersten 8 Byte stellen die 1. Waage, die nächsten 8 die 2. Waage, usw. dar.
Beispiel: Schreibfenster
0005
0006
0007
0008
0009
000A
000B
000C
Adresse
0000 hex
0001
0002
0003
0004
000D
000E
000F
2
Waagen-Nummer Input-Bereich
1 zu schreibender Wert (MSB)
:::
:::
:::
Lesedatentyp
(LSB)
Schreibdatentyp
Kontroll-Bits
Kontroll-Bits zu schreibender Wert (MSB)
:::
:::
:::
Lesedatentyp
Schreibdatentyp
Kontroll-Bits
Kontroll-Bits
(LSB)
Es ist immer nur eine Waage erreichbar, deshalb ist der gesamte
Schreib-Bereich, der nicht aktiven Waage mit Nullen gefüllt bzw. zu füllen.
Wird im Schreib-Bereich der inaktiven Waage in den Bytes 4-7 eine von Null abweichende Zahl eingetragen, bewirkt dies im Indikator einen dauerhaften Waage-Wechsel, bis wieder ein Schreibdatentyp für die gerade inaktive Waage empfangen wird.
Wird in den Schreib-Bereich beider Waagen eine Schreib- oder
Lesedatentyp-Anforderung geschrieben, aber es ist nur eine Waage aktiv, so wird zuerst das Kommando für die aktive und nach einem
Waagen-Wechsel das für die zweite Waage ausgeführt. Es findet ein ständiger Wechsel zwischen den Waagen statt.
31
32
14 Ethernet-Schnittstelle
Im Menü »UNICOM« über »Ethernet.« unter Source-IP, ListenPort, usw. Zahleneingaben vornehmen. Bei Source-Name können Buchstaben und Zahlen verwendet werden. Es können maximal 15 Zeichen eingegeben werden.
Portnummern
Gültigkeitsbereich: 0 – 65535
Da viele der Ports bis 49150 bereits vergeben sind, empfehlen wir Port-Nummern oberhalb von 49150 zu verwenden.
Gilt nicht für ModBus/TCP, denn hier gilt die Portnummer: 502 (siehe Broschüre:
Feldbus)
14.1 Profibus-/Ethernet-Schnittstelle:
Initialisierung
Anzeige: Initialisierung beendet
Wenn die Initialisierung des Ethernet- oder
Profibus-Moduls erfolgreich beendet wurde, wird das Symbol »=« angezeigt.
=
Netzwerkmodul initialisiert
War die Initialisierung nicht erfolgreich, wird kein Symbol angezeigt. Das Symbol sagt nichts über einen Verbindungszustand zum Netzwerk aus!
TCP-Verbindungen:
Bei Betriebsart SBI C/S trennt das Combics die Verbindung immer selbstständig.
Bei den anderen Betriebsarten:
Sbi Serv, SMA, XBPI, Modbus/TCP bleibt die Verbindung bestehen bis sie der PC
(Client) trennt. Es kann nur eine Verbindung gleichzeitig aufgebaut werden.
9
Combics 3: Initialisierung
Ist die Initialisierung vom
Ethernet- oder Profibus-Modul erfolgreich beendet worden, wird nebenstehendes Symbol dauerhaft an ge zeigt. Wenn dieses
Symbol erscheint, ist die Initialisierung beendet und das Gerät ein satz be reit. Dieses Symbol sagt nichts über den Ver bin dungs zustand zum Netzwerk aus!
14.2 Ethernet-Schnittstelle: Merkmale
Source IP: IP-Adresse des Combics-Indikator
Wird die Adresse 0.0.0.0 gewählt, soll über einen im Netzwerk vor han de nen
DHCP-Server eine IP-Adresse dy na misch vergeben werden.
Source Name: Dieser Parameter ist alternativ zur »Source IP«-Adresse. Es kann ein Name ein ge tra gen werden, der 15 Zeichen lang ist und zur Benennung des Combics dient. Der Name wird dem Domain-Name-Server (DNS) be kannt ge ge ben, wenn
– unter DNS-IP eine IP-Adresse ein ge ge ben wurde oder
– über DHCP eine IP-Adresse vergeben wurde.
Geräte-Port: Port-Nummer an der das Combics für den Server-Betrieb lauscht.
Subnet-Mask: IP-Adress-Maske zur Aktivierung von IP-Adressen in einem Unternetz.
Soll die Maske über einen DHCP-Server vergeben werden, muss 0.0.0.0 eingetragen werden.
Gateway-IP: IP-Adresse eines Gateways
Um einen über Ziel-IP gewünschten Server anzusprechen, der in einem anderen Netz liegt. Soll die IP-Adresse dynamisch über einen DHCP-Server ver ge ben werden, muss 0.0.0.0 ein ge tra gen werden.
DNS-IP: Soll explizit ein Domain-Name-Server angesprochen werden:
Die IP-Adresse des Servers eintragen.
Wird die Adresse 0.0.0.0 gewählt, wird die Adresse über einen im Netz vorhandenen DHCP-Server vergeben oder ignoriert.
Ziel-IP:
Ziel-Port:
Adresse des Servers, der die Daten des Combics empfangen soll.
Wichtig für den Client-Betrieb des Combics, wenn Modus »SBI V/D« mit
Datenausgabe »automatisch« gewählt wurde. Bei Verwendung von UDP muss hier auch eine IP-Adresse eingetragen werden.
Portnummer an der ein Server mit der »Ziel-IP« lauscht, um Daten vom
Combics zu empfangen.
Protokoll:
Modus:
Das Transport-Protokoll auswählen, mit dem die Daten über das Ethernet verschickt werden.
Bitte wählen zwischen:
– TCP, verbindungsorientiert mit hoher Datensicherheit oder
– UDP, verbindungslos (für Modbus/TCP wirkungslos)
Das Datenformat wählen, welches die Nutzdaten enthält, die in TCP oder
UDP eingebettet werden (z.B. SMA wird mit TCP oder UDP über Ethernet getunnelt, d.h. der gesamte Funktionsumfang von SMA ist auch über Ethernet verfügbar. Das gilt auch SBI und XBPI!).
Bei den Protokollen SBi Serv, XBPI, SMA und Modbus/TCP ist das Combics immer als Server zu sehen. Bei »SBI C/S« ist das Combics Server und Client zugleich.
Client-Betrieb liegt vor, wenn das Combics aktiv eine Verbindung zum Server
(dem PC) aufbaut; beim Drücken der Taste p [Print] oder der Pa ra me ter
»Datenausgabe« auf »Au to ma tisch« gestellt wurde.
Für die anderen Fälle ist das Combics ein Server. Ist der Mode »SBI Serv« gewählt, können auch hier durch betätigen der Taste p [Print] Daten an den Client (dem PC) gesendet werden, wenn der Client vorher eine Verbindung zum Combics (dem Server) aufgebaut hat.
Einschaltverhalten: Bei aktiviertem Schnittstellen-Modul kann die Anzeige des Ge wichts wer tes bis 20 Sekunden verzögert werden.
15 Standard-Waagen Interface mit Modbus/TCP
IQVP
APP
15.1 Verwendungszweck: Modbus/TCP
Das Modbus-Protokoll wurde für den
Datenverkehr mit Controllern der Firma
Modicon entwickelt (heute: Schneider
Electric). Daten wurden in Form von
16-Bit-Registern (Integer-Format) oder als Status-Informationen in Form von
Datenbytes übertragen. Im Laufe der
Zeit wurde das Protokoll erweitert und auch von anderen Herstellern für ihre
Geräte übernommen. Neue Datentypen wurden hinzugefügt, insbesondere um mehr Auflösung für die übertragenen
Werte zu erhalten.
Das Modbus-Protokoll wurde für neue
Übertragungsmedien adaptiert, Dialekte wie Modbus Plus oder Modbus/TCP entstanden.
Der grundsätzliche Aufbau des Datenbereichs und die Adressierungs-Mechanismen wurden dabei aber aus Kompatibilitätsgründen immer beibehalten.
Die nachfolgenden Beschreibungen beziehen sich alle auf das Protokoll
Modbus/TCP und nur auf die Funktionalität in Sartorius Geräten.
!
Die Auswahl des Protokolls TCP oder
UDP im Menü des Sartorius-Gerätes hat nach der Anwahl von Modbus/TCP keine Auswirkung. Es ist immer automatisch TCP aktiviert!
15.2 Telegramm-Aufbau
Die ADU (Application Data Unit) des
Modbus/TCP Protokolls setzt sich aus folgenden Blöcken zusammen
IP
Network Access
Ethernet II and 802.3 layer
TCP
Mag
Modbus
MBAP Header Funktions-Code Daten
7 Bytes 1 Byte n Bytes
MPAP Header (Modbus Application Pro-
tocol Header)
Byte 0,1: transaction identifier – Identifikations-Nr. bei mehreren gleichzeitig aktiven Anfragen.
Byte 2,3: protocol identifier – immer 0
(Modbus Protokoll)
Byte 4: Anzahl nachfolgende Daten bytes
(high byte) – immer 0 (da alle Mitteilungen kürzer als 256 Bytes sind)
Byte 5: Anzahl nachfolgende Datenbytes
(low byte)
Byte 6: unit identifier (vorher ‘Geräteadresse’). Da die Geräte direkt über die
IP-Adresse angesprochen werden, hat dieser Parameter keine Funktion und sollte auf 0xFF gesetzt werden. Ausnahme:
Bei einer Kommunikation via Gateway wird die Geräteadresse wie bisher gesetzt.
Funktions-Code
Byte 7: Funktions-Code des Standard
MODBUS-Protokolls.
Daten
Byte 8..n: Der Datenbereich entspricht demjenigen des Standard MODBUS-
Protokolls. Die CRC-Prüfsumme entfällt jedoch, da sie auf TCP/IP-Protokollstufe implementiert ist.
Der Inhalt und Aufbau der Daten entspricht hier dem Sartorius »Standard-
Waagen-Interface«, wie in den Kapiteln 4 bis 9 beschrieben.
15.3 Kommunikations-Management
Die Modbus-Kommunikation erfordert den Aufbau einer TCP-Verbindung zwischen einem Client (z.B. PC) und dem
Server (Sartorius-Gerät). Für die Kommuni kation wird normalerweise der für
Modbus reservierte TCP-Port 502 verwendet. Der Anwender kann jedoch auch eine andere Port-Nr. konfigurieren. Hierbei ist zu berücksichtigen, dass, wenn ein anderer Port konfiguriert wird, eine Kommunikation über den Port 502 nicht mehr möglich ist!
Falls zwischen Server und Client eine
Firewall angeordnet ist, muss sichergestellt werden, dass der konfigurierte
TCP-Port freigeschalten ist.
15.4 Funktionalität
In den Sartorius-Geräten sind die folgen den Modbus-Funktionen realisiert:
Funktion 03 hex: fortlaufende Worte
(2 Byte) lesen
Funktion 10 hex: fortlaufende Worte
(2 Byte) schreiben
Funktion 08 hex: Diagnose, Subfunktion 0000 hex
!
15.5 Fehlerbehandlung
Bei einem Übertragungsfehler oder falls ein nicht vorhandenes (oder ausgeschaltetes) Gerät adressiert wird, sendet der
Server (Sartorius-Gerät) keine Quittierung an den Client. Dies führt zu einem
Timeout beim Client.
Fehler werden vom Server mit einer entsprechenden Fehlermeldung an den
Client zurückgeschickt.
Geräte-Antwort:
MBAP Header Funktions-Code Daten
Kopie der
Anforderung
Code+80H Fehler code
Der empfangene Funktions-Code wird kopiert und das höchstwertige Bit (MSB) gesetzt. Der Fehlercode zeigt einen Bedienungs- oder Programmierfehler an.
Folgende Fehlercodes sind unterstützt:
Fehlercode Bedeutung
01 hex Nummer der Funktion unbekannt
02 hex Adresse nicht im gültigem
Bereich
03 hex Datenformat falsch (z.B. mehr Daten geschrieben als in Anzahl angegeben
04 hex Server Fehler, z.B. Telegrammlänge falsch
06 hex Server busy, Server ist z.B. noch mit der Abarbeitung eines vorherigen Telegramms beschäftigt
33
15.6 Merkmale
Das MODBUS/TCP-Protokoll wird als Rahmen verwendet. Die zu übertragenden Daten innerhalb dieses Protokolls entsprechen dem Sartorius
»Standard-Waagen-Interface« (s. Kapitel 4–9).
Um von der Waage Daten auslesen zu können, muss man der Waage erst mitteilen, was man für Daten haben möchte, z.B. Brutto-Wägewert.
Erst danach kann der Bruttowert mittels eines MODBUS-Kommandos gelesen werden.
Um der Waage mit zu teilen, dass man den Bruttowert lesen möchte, muss in das Register 1024 und folgende geschrieben werden.
Die zu schreibenden Daten sind aufgebaut wie ein Schreibfenster (s. Kapitel 4) und als Lesedatentyp ist die »08« eingetragen für das Lesen des
Bruttowertes.
Nun kann der Bruttowert gelesen werden. Dafür wird das Register 00 und folgende gelesen. Die empfangenen Daten sind gemäß einem Lesefenster (s. Kapitel 4, 7) aufgebaut. Sie enthalten den angeforderten Bruttowert und zusätzliche Status-Informationen.
Mit dem Lesen des Registers 00 wird nun der Bruttowert der Waage angezeigt.
Soll nun aber z.B. der Exponent des Wägewertes gelesen werden, muss erst das entsprechende Schreibfenster in Register 1024 und folgende geschrieben werden. Erst danach kann wieder in Register 00 der Exponenten in einem Lesefenster gelesen werden.
Es werden nur das Register 1024 für das Schreiben und das Register 00 für das Lesen verwendet. Die Steuerung bzw. das Auslesen von Daten der Waage geschieht über die Schreib- und Lesefenster im Datenteil des MODBUS-Protokolls!
15.7 Diagnose
Funktion 08 hex.
Mit der Sub-Funktion 00 kann getestet werden, ob ein bestimmtes Gerät angeschlossen ist.
Das gesendete Telegramm wird 1:1 zurück gesendet.
Client (PC) Server (Sartorius-Gerät)
Transact. identifier
0x00 tno
Protokoll identifier
Anzahl
Datenbytes
Unit identifier
0x00 0x00 0x00 0x06 0xff
Daten
Funkt.
0x08
Sub.-Funktion
0x00 0x00
Daten
High byte Low byte
Antwort: Server (Combics) Client (PC)
Transact. identifier
0x00 tno
Protokoll identifier
Anzahl
Datenbytes
Unit identifier
0x00 0x00 0x00 0x06 0xff
Daten
Funkt.
0x08
Sub.-Funktion n
Daten
High byte Low byte
Senden: 00 00 00 00 00 06 ff 08 00 00 AA 33
Antwort: 00 00 00 00 00 06 ff 08 00 00 AA 33
15.8 Standard-Waagen-Interface
Die Steuerung erfolgt über das Standard-Waagen-Interface von Sartorius, das auch bei den Feldbussen, z.B. Profibus (siehe Kapitel 4 bis 9), eingesetzt wird und sich auf den Datenbereich des MODBUS-Protokolls bezieht.
Es gibt ein Schreibfenster und ein Lesefenster. Beide Fenster sind mindestens 8 Byte (4 Worte) breit. Ist eine 2. Waage konfiguriert erhöht sich die Breite auf jeweils 16 Byte (8 Worte). Diese Fenster sind der Datenbereich, der in den Modbus-Protokollrahmens eingebettet ist.
Schreibfenster für eine Waage gemäß Standard-Waagen-Interface:
Register 1024 dez
Byte 0
Schreib-Daten
Byte 1
Register 1025 dez
Byte 2 Byte 3
Register 1026 dez
Byte 4
Lesedaten typ
Byte 5
Schreibdaten typ
Register 1027 dez
Byte 6
Kontrol_
Byte1
Byte 7
Kontrol_
Byte2
»Register« sind die Adressen, die mit dem Modbus-Protokoll angesprochen werden.
Soll eine 2. Waage angesprochen werden, sind die Register 1028 bis 1031 dez. zu verwenden.
Schreiben von Daten in den Server (Sartorius-Gerät):
Funktionscode: 10 hex
Um Daten über die Modbus-Schnittstelle mit der Funktion 03 Hex lesen zu können, muss man zuerst mit der Funktion 10 Hex Daten in Form eines Schreibfensters zum Server (Sartorius-Gerät) senden.
Gleiches gilt auch, um Kontrollbits zu setzen oder einen Schreibdatentyp an den Server (Sartorius-Gerät) zu senden.
Mit diesem Funktionscode kann auch die Waage umgeschaltet werden. Dazu muss im Register 1028 ein Eintrag in Byte 4-7 stehen.
34
Beispiel, Netto-Wägewert anfordern:
Client (PC) Server (Sartorius-Gerät)
Transact. identifier
0x00 tno
Protokoll identifier
Anzahl
Datenbytes
0x00 0x00 0x00 n+7
Unit identifier
0xff
Daten
Funkt.
0x10
Start-
Adressse
Anz.
Register
High Low High Low byte byte byte byte
Bytes n
Data
Schreib- fenster
Antwort: Server (Sartorius-Gerät) Client (PC)
Transact. identifier
0x00 tno
Protokoll identifier
Anzahl
Datenbytes
Unit identifier
0x00 0x00 0x00 0x06 0xff
Daten
Funkt.
0x10 tno = Transaction-number wird vom Client festgelegt
Beispiel:
Senden: 00 00 00 00 00 0F FF 10 04 00 00 04 08 00 00 00 00 08 00 00 00
Antwort: 00 00 00 00 00 06 FF 10 04 00 00 04
Lesefenster gemäß Standard-Waagen-Interface:
Register 0 dez
Byte 0
Lesedaten
Byte 1
Register 1 dez
Byte 2 Byte 3
Register 2 dez
Byte 4 Byte 5
Echo Status
Lesedatentyp Byte 1
Anforderung
»Register« sind die Adressen, die mit dem Modbus-Protokoll angesprochen werden.
Soll eine 2. Waage ausgelesen werden, müssen die Register 4 bis 7 gelesen werden.
Lesen von Daten aus dem Server (Sartorius-Gerät)
Funktionscode: 03 hex
Client (PC) Server (Sartorius-Gerät)
Transact. identifier
0x00 tno
Protokoll identifier
Anzahl
Datenbytes
Unit identifier
0x00 0x00 0x00 0x06 0xff
Daten
Funkt.
0x03
Start-Adressse
High
Byte
Low
Byte
Register 3 dez
Byte 6
Status
Byte 2
Byte 7
Status
Byte 3
Anz. Register
High
Byte
Low
Byte
Server (Sartorius-Gerät) Client (PC)
Start-Adressse
High byte
Low byte
Anz. Register
High byte
Low byte
Transact. identifier
0x00 tno
Protokoll identifier
Anzahl
Datenbytes
0x00 0x00 0x00 n+3
Unit identifier
0xff
Beispiel:
Senden: 00 00 00 00 00 06 FF 03 00 00 00 04
Antwort: 00 00 00 00 00 0B FF 03 08 00 00 00 32 08 40 20 70
Daten
Funkt.
0x03
Anzahl
Datenbytes n
Daten
Lesefenster
35
36
16 Einstellungen mit der GSD-Datei für Profibus
Für die Sartorius Bediengeräte Signum, Combics gibt es unterschiedliche Firmware-Stände, die unterschiedliche GSD-Dateien benötigen.
Alle Bediengeräte mit der Profibus-Menü-Erweiterung:
»Benutzung von Applikationsdaten« benötigen die GSD-Datei:
»sag70B1.gsd«.
Alle anderen benötigen die GSD-Datei: »hms_1810.gsd«.
Für die Benutzung der GSD-Datei »hms_1810.gsd« gilt
Folgendes:
Für den Betrieb mit einer Waage wird aus der mitgelieferten
GSD-Datei das Modul: In/Out 8 Byte gewählt.
Für den Betrieb mit zwei Waagen wird das Modul:
In/Out 16 Byte gewählt.
Bei oben aufgeführten Einstellungen werden 2 Byte »konsistente
Daten« zur SPS übertragen. Dies ist für die meisten Fälle ausreichend. Sollte diese Einstellung nicht ausreichen oder meldet die Hardware-Konfiguration der SPS einen Fehler (bei S7: 80B1), dann muss ein »Universal Module« konfiguriert werden.
Nähere Informationen hierzu in der PDF-Datei:
»S7-Anbindung.pdf«, Kapitel 2.3
Für die Benutzung der GSD-Datei: »sag_70B1.gsd« gilt:
Für den Betrieb mit einer Waage ohne Applikationsdaten wird das Modul: »8 Byte I/O Konsistent« verwendet.
Für den Betrieb zweier Waagen ohne Applikationsdaten wird das
Modul: »16 Byte I/O Konsistent« verwendet.
Für den Betrieb dreier Waagen ohne Applikationsdaten wird das
Modul: »24 Byte I/O Konsistent« verwendet.
Werden Applikationsdaten verwendet, erhöht sich die Zahl der konsistent übertragenen Daten um 34. Normalerweise kann auch diese Anzahl von einem Hardware-Konfigurator für Siemens
SPS einlesen werden. Sollte es dennoch Probleme geben ist das
Universal-Modul und die Bausteine SFC14, 15 zu verwenden.
Eine nähere Beschreibung der Adressbereichsbelegung für
SFC14,15 finden Sie in der Datei: »S7-Anbindung.pdf« ab
Kapitel 2.3.
Die GSD-Dateien aus dem Sartorius-Internet herunterladen.
Internet-Hyperlink: http://www.sartorius.com/index.php?id=613.
Bitte bei »Select Product« »Fieldbus-Files« auswählen.
Hier sind alle GSD-Dateien von Sartorius-Industrie in einem gepackten File.
Unter dem Link: »http://www.sartorius-mechatronics.com/ index.php?id=10874&tx_sartoriusmechpdf_pi1
[searchmode]=1&tx_sartoriusmechpdf_pi1[search][lang]=5&tx_ sartoriusmechpdf_pi1[search][cat]=32&tx_sartoriusmechpdf_ pi1[search][app]=1033«. Hier sind Infos und die GSD-Dateien für
Signum, Combics in dem File: SO-GSD-files-a.zip.
Sartorius Weighing Technology GmbH
Weender Landstrasse 94–108
37075 Goettingen, Germany
Phone +49.551.308.0
Fax +49.551.308.3289 www.sartorius .com
Copyright by Sartorius, Goettingen,
Germany.
No part of this publication may be reprinted or translated in any form or by any means without prior written
permission from Sartorius.
All rights reserved by Sartorius in accordance with copyright law.
The information and figures contained in these instructions correspond to the version date specified below. Sartorius reserves the right to make changes to the technology, features, specifications and design of the equipment without notice.
Status:
October 2011,
Sartorius Weighing Technology GmbH,
Goettingen
Printed in Germany on paper that has been bleached without any use of chlorine.
W_ WYD6114-a_Feldbus · KT
Publication No.: WYD6114-a11105
Завантажити
Реклама