Basler Vision Connector Messaging: IE Common Payload Format#
- The
providerAppInstanceIdused isbvc1. - As
publishTypeonlytimeseriesis supported as defined in the see General Payload Specification. - There is one connection for each opened recipe. The connection name is
recipe.{RecipeID}, using the ID that was used when opening the recipe; e.g.,recipe.MyRecipeID. The connection type is alwaysrecipe.
The Basler Vision Connector doesn't support sending all recipe data types via the IE Common Payload Format.
Not supported data types are:
- Images
- Regions
Also, the Siemens IIH Essentials app doesn't support receiving arrays via the Common Payload Format. This means that if an array comes out of a recipe and is transmitted via the Common Payload Format, you can't receive it with IIH Essentials. You can use the IIH Semantics app instead. Find here more information in the IIH documentation.
Support for Basic Data Types#
The name of a basic data type directly corresponds to the name of the pin in the recipes output terminal.
| Recipe Data Type | IE Common Payload Format Type | Remarks |
|---|---|---|
| Integer | LInt | If the value is in the range of a signed 64-bit integer, otherwise this value would be considered to be erroneous. |
| Boolean | Bool | - |
| String | String | - |
| Float | LReal | - |
| TransformationData | 2D Array of LReal | - |
Support for Composite Data Types#
Composite data types in recipes are composed using basic data types or other composite types. They're broken down into the following basic data types when transmitted over the Common Payload Format:
| Recipe Data Type | Names | IE Common Payload Format Types |
|---|---|---|
| PointF2D | {PinName}.X {PinName}.Y | LReal LReal |
| LineF2D | {PinName}.PointA.X {PinName}.PointA.Y {PinName}.PointB.X {PinName}.PointB.Y | LReal LReal LReal LReal |
| RectangleF | {PinName}.Center.X {PinName}.Center.Y {PinName}.Width {PinName}.Height {PinName}.Rotation | LReal LReal LReal LReal LReal |
| CircleF | {PinName}.Center.X {PinName}.Center.Y {PinName}.Radius | LReal LReal LReal |
| EllipseF | {PinName}.Center.X {PinName}.Center.Y {PinName}.Radius1 {PinName}.Radius2 {PinName}.Rotation | LReal LReal LReal LReal LReal |
Support for Arrays#
Arrays of basic data types are directly mapped to arrays in the IE Common Payload Format. As an exception, an array of TransformationData is mapped to a 3D array of LReal types. However, composite data types are broken down into basic data types. So, if you have an array of composite data types, this results in one separate array for each broken down basic data type in the IE Common Payload Format.
Error Handling#
In recipes, each type can be in an error state. Composite data types can even partially be in error state. For example, only the X component of a PointF type can be in an error state, while the Y component carries a valid value. Arrays can also be either entirely in an error state or they can be partially in an error state. In a partial error state, only elements of the array are in an error state.
These partial error states can't be mapped to the IE Common Payload Format. Therefore, data types that are partially in an error state are mapped to have a BAD quality and only values that aren't in any error state at all are mapped to the GOOD (cascade) quality in the IE Common Payload Format. See also the Common Payload Format Specification.