From 826b097becc842f8fe0ab0d895c2052f929d8ba7 Mon Sep 17 00:00:00 2001 From: TK <61820360+TomKovac@users.noreply.github.com> Date: Tue, 21 Apr 2026 11:28:07 +0200 Subject: [PATCH 1/5] Create draft PR for #1115 From ee984635c0647f1655ee271cf605bf167a653ff6 Mon Sep 17 00:00:00 2001 From: TK <61820360+TomKovac@users.noreply.github.com> Date: Tue, 21 Apr 2026 12:06:39 +0200 Subject: [PATCH 2/5] done --- .../GSDML-V2.4-KUKA-KR C5-20220704.xml | 2690 +++++++++++++++++ .../assets/kuka_krc5/kuka_krc5_dio512.hwl.yml | 77 + 2 files changed, 2767 insertions(+) create mode 100644 src/components.kuka.robotics/ctrl/assets/kuka_krc5/GSDML-V2.4-KUKA-KR C5-20220704.xml create mode 100644 src/components.kuka.robotics/ctrl/assets/kuka_krc5/kuka_krc5_dio512.hwl.yml diff --git a/src/components.kuka.robotics/ctrl/assets/kuka_krc5/GSDML-V2.4-KUKA-KR C5-20220704.xml b/src/components.kuka.robotics/ctrl/assets/kuka_krc5/GSDML-V2.4-KUKA-KR C5-20220704.xml new file mode 100644 index 000000000..4bf4ad665 --- /dev/null +++ b/src/components.kuka.robotics/ctrl/assets/kuka_krc5/GSDML-V2.4-KUKA-KR C5-20220704.xml @@ -0,0 +1,2690 @@ + + + + PROFINET Device Profile + 1.00 + Device Profile for PROFINET Devices + PROFIBUS Nutzerorganisation e. V. (PNO) + Device + + 4 + 1 + GSDML + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/components.kuka.robotics/ctrl/assets/kuka_krc5/kuka_krc5_dio512.hwl.yml b/src/components.kuka.robotics/ctrl/assets/kuka_krc5/kuka_krc5_dio512.hwl.yml new file mode 100644 index 000000000..972b86adf --- /dev/null +++ b/src/components.kuka.robotics/ctrl/assets/kuka_krc5/kuka_krc5_dio512.hwl.yml @@ -0,0 +1,77 @@ +Templates: + Devices: + - Name: 'kuka_krc5_dio512' + Placeholders: + - Name: 'NAME' + Value: 'kuka_krc5_robot' + - Name: 'IP_ADDRESS_X1' + Value: '192.168.100.1/24' + - Name: 'PROFINET_DEVICE_NAME_X1' + Value: 'kuka_krc5_robot' + Content: + Name: '${NAME}' + Modules: + - Name: '${NAME}' + TypeIdentifier: + FileName: 'GSDML-V2.4-KUKA-KR C5-20220704.XML' + GsdId: 'DIM 1' + Interfaces: + - Name: 'Interface1' + Label: 'X1' + Addresses: + - Type: 'IPv4' + Address: '${IP_ADDRESS_X1}' + # RouterAddress: '192.168.0.1' + - Type: 'Profinet' + ProfinetDeviceName: '${PROFINET_DEVICE_NAME_X1}' + Parameters: + IECV22LLDPMode: False + PrioritizedStartup: False + Ports: + - Name: 'Port_1' + Label: 'X1 P1' + Parameters: + # Possible values: 8 - Automatic | 16 - TP 100 Mbps full duplex + TransmissionRateAndDuplex: 'Automatic' + EndOfDetectionOfAccessibleDevices: False + EndOfTopologyDiscovery: False + PortMonitoring: False + # TransmissionRateAutoNegotiation: True + # MediumAttachmentType: 'Copper' + - Name: 'Port_2' + Label: 'X1 P2' + Parameters: + # Possible values: 8 - Automatic | 16 - TP 100 Mbps full duplex + TransmissionRateAndDuplex: 'Automatic' + EndOfDetectionOfAccessibleDevices: False + EndOfTopologyDiscovery: False + PortMonitoring: False + # TransmissionRateAutoNegotiation: True + # MediumAttachmentType: 'Copper' + - Name: 'Port_3' + Label: 'X1 P3' + Parameters: + # Possible values: 8 - Automatic | 16 - TP 100 Mbps full duplex + TransmissionRateAndDuplex: 'Automatic' + EndOfDetectionOfAccessibleDevices: False + EndOfTopologyDiscovery: False + PortMonitoring: False + # TransmissionRateAutoNegotiation: True + # MediumAttachmentType: 'Copper' + - Name: 'Port_4' + Label: 'X1 P4' + Parameters: + # Possible values: 8 - Automatic | 16 - TP 100 Mbps full duplex + TransmissionRateAndDuplex: 'Automatic' + EndOfDetectionOfAccessibleDevices: False + EndOfTopologyDiscovery: False + PortMonitoring: False + # TransmissionRateAutoNegotiation: True + # MediumAttachmentType: 'Copper' + - TypeIdentifier: NotAssigned + Slot: 1 + - Name: DIO512 + TypeIdentifier: + GsdId: '15' + FileName: GSDML-V2.4-KUKA-KR C5-20220704.XML + Slot: 2 \ No newline at end of file From 50b6fc00d751344730e805e47b7d622cb59dff3d Mon Sep 17 00:00:00 2001 From: Peter Kurhajec <61538034+PTKu@users.noreply.github.com> Date: Tue, 21 Apr 2026 14:14:56 +0200 Subject: [PATCH 3/5] docs: Update KUKA documentation with new sections, capabilities, and troubleshooting details --- CHANGELOG.md | 22 ++ .../AxoKukaRobotics_Config.st | 10 +- .../AxoKukaRobotics_HWIDs.st | 10 +- .../docs/AxoKrc4_v_5_x_x.md | 106 ++++++++- .../docs/CHANGELOG.md | 23 ++ src/components.kuka.robotics/docs/README.md | 50 +++- src/components.kuka.robotics/docs/TROUBLES.md | 220 +++++++++++++++++- 7 files changed, 425 insertions(+), 16 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index d7af799ae..21c07f9d0 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,25 @@ +### [KUKA] KRC4 documentation refresh and GSDML/hw template callouts ([#TBD](https://github.com/Inxton/AXOpen/pulls)) + +**Note:** Documentation-only change for `components.kuka.robotics`. No runtime behavior modified. + +- docs: Added `` and `` tagged regions in `AxoKukaRobotics_Config.st` / `AxoKukaRobotics_HWIDs.st` so docs can reference them via `[!code-smalltalk[]]`. +- docs: Rewrote `docs/AxoKrc4_v_5_x_x.md` with full CONTROLLER / .NET TWIN / BLAZOR / HARDWARE tabs wired to the showcase and library source; added Capabilities + Configuration parameter table and an "Alternative example" block referencing `AxoKrc4_v_5_x_x_Showcase2.st`. +- docs: Expanded `docs/TROUBLES.md` with an error-ID reference covering the bring-up (700, 702, 710, 720–726, 1130–1133), cyclic I/O (1201, 1231), runtime-safety (20001–20005), and 500-range task *potential* identifiers; added component-specific diagnostics and known-limitations sections. +- docs: Updated `docs/README.md` with a "Hardware assets" table pointing at the library-shipped KRC4 GSDML (`ctrl/assets/kuka_krc4/GSDML-V2.33-KUKA-KRC4-ProfiNet_5.0-20181102.xml`) and the PROFINET hw template (`kuka_krc4_dio512.hwl.yml`); mirrored the callout in the `AxoKrc4_v_5_x_x.md` HARDWARE tab with GitHub links. +- docs: Repointed stale GitHub source links from branch `3-unify-showcase` to `dev`; appended `0.50.0` / `0.50.1` entries to `src/components.kuka.robotics/docs/CHANGELOG.md`. + +**Impact:** +- Integrators see the shipped GSDML and hw template path directly from the library docs, without vendor round-trips. +- Troubleshooting KRC4 cells on-site is driven from a per-error-ID table instead of generic advice. +- `[!code-smalltalk[]]` refs in the component doc now render the live `Config` / `HWIDs` declarations from the library source. + +**Risks/Review:** +- The new tagged regions must be preserved in future edits of `AxoKukaRobotics_Config.st` / `AxoKukaRobotics_HWIDs.st` — removing them breaks the doc references. +- PR number in this entry is `#TBD`; update once the PR is opened. + +**Testing:** +- Build docs locally via `scripts/_build_documentation.ps1` and confirm the KRC4 pages render, the `[!code-*]` directives resolve, and the new GitHub links on the HARDWARE tab / README resolve to existing files. + ### [CORE] Controller logger updates ([#1054](https://github.com/Inxton/AXOpen/pull/1054)) **Note:** Enhanced logging and messaging capabilities with new message categories and requalification features. diff --git a/src/components.kuka.robotics/ctrl/src/AxoKukaRobotics_Datatypes_v_5_x_x/AxoKukaRobotics_Config.st b/src/components.kuka.robotics/ctrl/src/AxoKukaRobotics_Datatypes_v_5_x_x/AxoKukaRobotics_Config.st index b1d95824c..bbbc667e2 100644 --- a/src/components.kuka.robotics/ctrl/src/AxoKukaRobotics_Datatypes_v_5_x_x/AxoKukaRobotics_Config.st +++ b/src/components.kuka.robotics/ctrl/src/AxoKukaRobotics_Datatypes_v_5_x_x/AxoKukaRobotics_Config.st @@ -1,8 +1,9 @@ NAMESPACE AXOpen.Components.Kuka.Robotics.v_5_x_x + // {#ix-attr:[Container(Layout.Stack)]} {S7.extern=ReadWrite} CLASS PUBLIC AxoKukaRobotics_Config - VAR PUBLIC + VAR PUBLIC {#ix-set:AttributeName = "<#Info time#>"} InfoTime : LTIME := LT#2S; {#ix-set:AttributeName = "<#Error time#>"} @@ -10,7 +11,8 @@ NAMESPACE AXOpen.Components.Kuka.Robotics.v_5_x_x {#ix-set:AttributeName = "<#Task timeout#>"} TaskTimeout : LTIME := LT#50S; {#ix-set:AttributeName = "<#Hardware IDs#>"} - HWIDs : AxoKukaRobotics_HWIDs; - END_VAR - END_CLASS + HWIDs : AxoKukaRobotics_HWIDs; + END_VAR + END_CLASS + // END_NAMESPACE diff --git a/src/components.kuka.robotics/ctrl/src/AxoKukaRobotics_Datatypes_v_5_x_x/AxoKukaRobotics_HWIDs.st b/src/components.kuka.robotics/ctrl/src/AxoKukaRobotics_Datatypes_v_5_x_x/AxoKukaRobotics_HWIDs.st index 74fb741ec..3268ba21f 100644 --- a/src/components.kuka.robotics/ctrl/src/AxoKukaRobotics_Datatypes_v_5_x_x/AxoKukaRobotics_HWIDs.st +++ b/src/components.kuka.robotics/ctrl/src/AxoKukaRobotics_Datatypes_v_5_x_x/AxoKukaRobotics_HWIDs.st @@ -1,7 +1,8 @@ -NAMESPACE AXOpen.Components.Kuka.Robotics.v_5_x_x +NAMESPACE AXOpen.Components.Kuka.Robotics.v_5_x_x + // {S7.extern=ReadWrite} {#ix-attr:[Container(Layout.Stack)]} - CLASS PUBLIC AxoKukaRobotics_HWIDs + CLASS PUBLIC AxoKukaRobotics_HWIDs VAR PUBLIC {#ix-set:AttributeName = "<#Hardware ID of the device#>"} HwID_Device : UINT; @@ -9,6 +10,7 @@ NAMESPACE AXOpen.Components.Kuka.Robotics.v_5_x_x HwID_None : UINT; {#ix-set:AttributeName = "<#Hardware ID of the '512_DI_DO' submodule#>"} HwID_512_DI_DO : UINT; - END_VAR - END_CLASS + END_VAR + END_CLASS + // END_NAMESPACE \ No newline at end of file diff --git a/src/components.kuka.robotics/docs/AxoKrc4_v_5_x_x.md b/src/components.kuka.robotics/docs/AxoKrc4_v_5_x_x.md index 03c4a17e6..a9b7b6663 100644 --- a/src/components.kuka.robotics/docs/AxoKrc4_v_5_x_x.md +++ b/src/components.kuka.robotics/docs/AxoKrc4_v_5_x_x.md @@ -2,7 +2,49 @@ _KUKA KRC4 industrial robot controller_ -Generated documentation for the `AxoKrc4_v_5_x_x` component. +`AxoKrc4` (namespace `AXOpen.Components.Kuka.Robotics.v_5_x_x`) is the +controller proxy for robots driven by a KUKA KRC4. It extends +`AXOpen.Core.AxoComponent` and implements +`AXOpen.Components.Abstractions.Robotics.IAxoRobotics`, exposing all programme +and motion commands as `AxoTask` instances that advance their state machine +inside the component's `Run()` call. + +## Capabilities + +- Programme control — `StartAtMain`, `StartProgram`, `StopProgram`, `StartMotorsAndProgram`, `StopMovementsAndProgram`. +- Motor control — `StartMotors`, `StopMotors`. +- Motion commands — `StartMovements(movementParams)`, `StopMovements`, + and a combined `StartMotorsProgramAndMovements(movementParams)`. +- Safety-interlocked task execution — every task checks `Inputs.Manual`, + `Inputs.Automatic`, `Inputs.AlarmStopActive`, `Inputs.UserSafetySwitchClosed`, + and `Inputs.Error` while busy (error IDs 20001–20005). +- Hardware wiring — consumes a PROFINET device identifier; the `Run()` + method auto-resolves the child slot layout (slot 1 safety-module = empty, + slot 2 = 512 DI / 512 DO) via `ReadSlotFromHardwareID` and + `ReadHardwareIOAddress` during first cycle. +- Cyclic I/O transfer — `Siemens.Simatic.DistributedIO.ReadData`/`WriteData` + on slot 2 each cycle (error IDs 1201 / 1231 on transport failure). +- Tool / area / position / coordinate outputs driven from `MovementParameters`. +- Hardware diagnostics task (`HardwareDiagnosticsTask`) and two on-delay + info/error timers (`Config.InfoTime`, `Config.ErrorTime`, + `Config.TaskTimeout`). + +## Configuration + +The component is configured via the nested `Config : AxoKukaRobotics_Config` +member. Adjust these before invoking `Run()`; they can also be set from the +commissioning UI. + +| Parameter | Type | Default | Purpose | +|-----------|------|---------|---------| +| `Config.InfoTime` | `LTIME` | `LT#2S` | Delay before a task publishes a *potential* (waiting-for-signal) message. Controls how long the component waits silently on an expected input before surfacing progress via `TaskMessenger`. | +| `Config.ErrorTime` | `LTIME` | `LT#5S` | Delay before `_errorTimer.output` throws the currently-executing task. Acts as a per-step watchdog on KRC4 responses. | +| `Config.TaskTimeout` | `LTIME` | `LT#50S` | Hard upper bound for a task's total duration. `0s` disables the timeout (used in the showcase so commissioning demos never self-abort). | +| `Config.HWIDs` | `AxoKukaRobotics_HWIDs` | — | Device hardware identifiers, auto-populated on first `Run()` from the `hwID` argument and the slot layout. | + +[!code-smalltalk[](../ctrl/src/AxoKukaRobotics_Datatypes_v_5_x_x/AxoKukaRobotics_Config.st?name=AxoKukaRoboticsConfigDeclaration)] + +[!code-smalltalk[](../ctrl/src/AxoKukaRobotics_Datatypes_v_5_x_x/AxoKukaRobotics_HWIDs.st?name=AxoKukaRoboticsHWIDsDeclaration)] # [CONTROLLER](#tab/controller) @@ -26,20 +68,31 @@ Generated documentation for the `AxoKrc4_v_5_x_x` component. [!code-pascal[](../../showcase/app/src/components.kuka.robotics/Documentation/AxoKrc4_v_5_x_x_Showcase.st?name=Usage)] +## Alternative example + +A second wired-up instance (`AxoKrc4_v_5_x_x_Showcase2`) is available and is +rendered side-by-side on the showcase Blazor page. It reuses the same +hardware identifier `kuka_rb1_HwID` and differs only in that it keeps +`Config.ErrorTime` at the library default (live error watchdog) instead of +zeroing it out for commissioning. + +[!code-pascal[](../../showcase/app/src/components.kuka.robotics/Documentation/AxoKrc4_v_5_x_x_Showcase2.st?name=ComponentDeclaration)] +[!code-pascal[](../../showcase/app/src/components.kuka.robotics/Documentation/AxoKrc4_v_5_x_x_Showcase2.st?name=Initialization)] + ## Source -View the library source at [`AxoKrc4_v_5_x_x.st`](https://github.com/Inxton/AXOpen/tree/3-unify-showcase/src/components.kuka.robotics/ctrl/src/AxoKrc4_v_5_x_x/AxoKrc4_v_5_x_x.st). +View the library source at [`AxoKrc4_v_5_x_x.st`](https://github.com/Inxton/AXOpen/tree/dev/src/components.kuka.robotics/ctrl/src/AxoKrc4_v_5_x_x.st). # [.NET TWIN](#tab/twin) ## Source -View the .NET twin source at [`AXOpen.Components.Kuka.Robotics`](https://github.com/Inxton/AXOpen/tree/3-unify-showcase/src/components.kuka.robotics/src/AXOpen.Components.Kuka.Robotics/). +View the .NET twin source at [`AXOpen.Components.Kuka.Robotics`](https://github.com/Inxton/AXOpen/tree/dev/src/components.kuka.robotics/src/AXOpen.Components.Kuka.Robotics/). # [BLAZOR](#tab/blazor) -`AxoKrc4_v_5_x_x` does not ship a dedicated Blazor view. It renders via the generic `AxoComponent` pattern using `RenderableContentControl`, which inspects the component type at runtime and selects the matching rendering based on the `Presentation` attribute. +`AxoKrc4` does not ship a dedicated Blazor view. It renders via the generic `AxoComponent` pattern using `RenderableContentControl`, which inspects the component type at runtime and selects the matching rendering based on the `Presentation` attribute. ## Status display @@ -61,13 +114,54 @@ Available `Presentation` values: `Status-Display`, `Command-Control`, `Service-C ## Source -View the Blazor package at [`AXOpen.Components.Kuka.Robotics.blazor`](https://github.com/Inxton/AXOpen/tree/3-unify-showcase/src/components.kuka.robotics/src/AXOpen.Components.Kuka.Robotics.blazor/). +View the Blazor package at [`AXOpen.Components.Kuka.Robotics.blazor`](https://github.com/Inxton/AXOpen/tree/dev/src/components.kuka.robotics/src/AXOpen.Components.Kuka.Robotics.blazor/). # [HARDWARE](#tab/hardware) +## Library-shipped assets + +The raw KRC4 GSDML and the matching PROFINET device template live inside +the library package so `AxoKrc4` can be wired up without fetching files +from the vendor: + +- GSDML — [`ctrl/assets/kuka_krc4/GSDML-V2.33-KUKA-KRC4-ProfiNet_5.0-20181102.xml`](https://github.com/Inxton/AXOpen/tree/dev/src/components.kuka.robotics/ctrl/assets/kuka_krc4/GSDML-V2.33-KUKA-KRC4-ProfiNet_5.0-20181102.xml) + — vendor GSDML for Siemens hardware-catalog import. +- HW template — [`ctrl/assets/kuka_krc4/kuka_krc4_dio512.hwl.yml`](https://github.com/Inxton/AXOpen/tree/dev/src/components.kuka.robotics/ctrl/assets/kuka_krc4/kuka_krc4_dio512.hwl.yml) + — PROFINET device template expected by `Run()` (slot 1 empty, slot 2 = `512_DI_DO`, 64-byte cyclic I/O). + +The showcase copies the template into `showcase/app/hwc/library_templates/kuka_krc4/` +so application builds do not need a catalog round-trip. + ## Device template -PROFINET hardware template at `showcase/app/hwc/library_templates/kuka_krc4/`. +PROFINET hardware template at `showcase/app/hwc/library_templates/kuka_krc4/kuka_krc4_dio512.hwl.yml`. + +The template provisions a KRC4 as a PROFINET device with two slots: + +| Slot | Module | Purpose | +|------|--------|---------| +| 1 | *(safety module, left empty by the template)* | Reserved — `AxoKrc4.Run()` verifies this slot resolves to `HwID_None = 0`. | +| 2 | `512_DI_DO` | 64-byte in / 64-byte out PROFINET I/O cyclically transferred by the component. | + +## I/O mapping + +`Run()` takes a single `hwID : UINT` that identifies the KRC4 device in the +configured hardware layout. The component then: + +1. Calls `ReadSlotFromHardwareID(hwID)` to obtain the device's geographic + address. +2. Reads the hardware ID of slot 1 and asserts it is `0` (no safety module + wired — error 710 otherwise). +3. Reads the hardware ID of slot 2 (the 512 DI / 512 DO module) and caches + it in `Config.HWIDs.HwID_512_DI_DO`. +4. Calls `ReadHardwareIOAddress` on slot 2 and asserts it exposes exactly + 64 input and 64 output bytes (error 726 otherwise). +5. Each cycle thereafter: `Siemens.Simatic.DistributedIO.ReadData` / + `WriteData` transfer the 64-byte blocks bound to `Inputs` / `Outputs`. + +Use the `AXOpen.Showcase.HwIdentifiers#{device}_HwID` constants to supply +`hwID` from application code (as the showcase does with +`kuka_rb1_HwID`). ## Device instantiation diff --git a/src/components.kuka.robotics/docs/CHANGELOG.md b/src/components.kuka.robotics/docs/CHANGELOG.md index 9d58311c8..b1dde834b 100644 --- a/src/components.kuka.robotics/docs/CHANGELOG.md +++ b/src/components.kuka.robotics/docs/CHANGELOG.md @@ -6,3 +6,26 @@ - Restructured documentation to class-name convention: added `AxoKrc4_v_5_x_x.md`; removed legacy `*_Showcase.md`, `*_Showcase2.md`, and `ComponentTemplate.md`. - Added CONTROLLER, .NET TWIN, BLAZOR, and HARDWARE tabs with DocFX source references wired to live showcase markers. - Initial CHANGELOG entry. + +### 0.50.0 + +**Other:** +- `README.md` — added Components, Configuration/state types, Packages, Dependencies tables and the KUKA vendor link. +- `AxoKrc4_v_5_x_x.md` — added Capabilities and Configuration sections with a `Config` parameter table; wired `[!code-smalltalk[]]` references to new `AxoKukaRoboticsConfigDeclaration` / `AxoKukaRoboticsHWIDsDeclaration` regions in the library source; added an "Alternative example" block referencing `AxoKrc4_v_5_x_x_Showcase2.st`; expanded the HARDWARE tab with slot layout and `hwID` resolution flow. +- `TROUBLES.md` — added component-specific common-issues, runtime-safety, and error-ID reference sections covering IDs 700, 701, 702, 710, 720–726, 1130–1133, 1201, 1231, 20001–20005, and the 500-range task *potential* identifiers; retained the existing Support pointer. +- Repointed stale GitHub source links from branch `3-unify-showcase` to `dev`. + +**New regions:** +- `AxoKukaRobotics_Config.st` — ``. +- `AxoKukaRobotics_HWIDs.st` — ``. + +### 0.50.1 + +**Other:** +- `README.md` — added a "Hardware assets" table pointing at the + library-shipped GSDML (`ctrl/assets/kuka_krc4/GSDML-V2.33-KUKA-KRC4-ProfiNet_5.0-20181102.xml`) + and the PROFINET hw template (`ctrl/assets/kuka_krc4/kuka_krc4_dio512.hwl.yml`), + plus a note that the showcase re-uses the same template. +- `AxoKrc4_v_5_x_x.md` — HARDWARE tab now opens with a "Library-shipped + assets" section linking the GSDML and hw template on GitHub, so + integrators see where the raw assets live inside this package. diff --git a/src/components.kuka.robotics/docs/README.md b/src/components.kuka.robotics/docs/README.md index 6ab1923b0..bee93dcee 100644 --- a/src/components.kuka.robotics/docs/README.md +++ b/src/components.kuka.robotics/docs/README.md @@ -4,7 +4,55 @@ The **components.kuka.robotics** is a set of libraries covering the product port The package consists of a PLC library providing control logic and its .NET twin counterpart aimed at the visualization part. This package currently covers the robots driven by KRC4 controller. +### Components + +| Component | Description | +|-----------|-------------| +| [`AxoKrc4`](AxoKrc4_v_5_x_x.md) | KUKA KRC4 controller proxy (namespace `AXOpen.Components.Kuka.Robotics.v_5_x_x`) exposing programme/motion commands, safety state, tool/zone outputs, and hardware diagnostics. Derives from `AxoComponent` and implements `IAxoRobotics`. | + +### Configuration & state types + +| Type | Role | +|------|------| +| `AxoKukaRobotics_Config` | Configuration: `InfoTime`, `ErrorTime`, `TaskTimeout`, `HWIDs`. | +| `AxoKukaRobotics_HWIDs` | Hardware identifiers: `HwID_Device`, `HwID_None`, `HwID_512_DI_DO`. | +| `AxoKukaRobotics_State` | Input image (RC_RDY1, ALARM_STOP, USER_SAF, PERI_RDY, ROB_CAL, I_O_ACTCONF, STOPMESS, ROB_STOPPED, mode, position/zone, tool feedback, coordinates). | +| `AxoKukaRobotics_Control` | Output image (EXT_START, MOVE_ENABLE, CONF_MESS, DRIVES_OFF, DRIVES_ON, I_O_ACT, START_AT_MAIN, master mode, tool commands, action/speed/tool/point numbers, coordinates). | +| `AxoKukaRobotics_Component_Status` | Runtime status (extends `AxoRobot_Status`). | + +### Packages + +| Package | Purpose | +|---------|---------| +| `@inxton/axopen.components.kuka.robotics` | PLC library (apax) | +| `AXOpen.Components.Kuka.Robotics` | .NET twin | +| `AXOpen.Components.Kuka.Robotics.blazor` | Blazor rendering assets | + +### Hardware assets + +The library ships the KRC4 GSDML and a ready-to-apply PROFINET device +template so the robot can be dropped into a `plc_line.hwl.yml` without +vendor-side configuration: + +| Asset | Path | Purpose | +|-------|------|---------| +| GSDML | [`ctrl/assets/kuka_krc4/GSDML-V2.33-KUKA-KRC4-ProfiNet_5.0-20181102.xml`](../ctrl/assets/kuka_krc4/GSDML-V2.33-KUKA-KRC4-ProfiNet_5.0-20181102.xml) | Vendor GSDML (KUKA KRC4 ProfiNet 5.0, 2018-11-02) for Siemens hardware catalog import. | +| HW template | [`ctrl/assets/kuka_krc4/kuka_krc4_dio512.hwl.yml`](../ctrl/assets/kuka_krc4/kuka_krc4_dio512.hwl.yml) | PROFINET device template with slot 1 empty (safety) and slot 2 = `512_DI_DO` (64-byte in / 64-byte out). Expected by `AxoKrc4.Run()`. | + +The showcase application uses the same template via +`showcase/app/hwc/library_templates/kuka_krc4/kuka_krc4_dio512.hwl.yml` +and wires it into `plc_line.hwl.yml` under the `` region. + +### Dependencies + +| Package | Purpose | +|---------|---------| +| `@inxton/axopen.components.robotics` | Shared robotics abstractions (`AxoRobot_Status`, task/messenger base types). | + ### Links to documentation -[Siemens AX-documentation](https://developer.siemens.com/simatic-ax/developer.html) + +[Siemens AX-documentation](https://developer.siemens.com/simatic-ax/developer.html) [AxOpen-documentation](https://inxton.github.io/AXOpen/) + +[KUKA documentation](https://www.kuka.com/en-gb) diff --git a/src/components.kuka.robotics/docs/TROUBLES.md b/src/components.kuka.robotics/docs/TROUBLES.md index 5cdc2ba7d..a3f9b545c 100644 --- a/src/components.kuka.robotics/docs/TROUBLES.md +++ b/src/components.kuka.robotics/docs/TROUBLES.md @@ -1,5 +1,223 @@ # Troubleshooting -Unfortunately, we don't have a direct solution to your problem at the moment. If you encounter any issues, please [file a report on our GitHub](https://github.com/inxton/AXOpen/issues/new/choose). We appreciate your feedback and patience. +This page catalogues the error states surfaced by `AxoKrc4_v_5_x_x.AxoKrc4`, +each tied back to its raising site in the PLC source. Error identifiers are +published through `Status.Error.Id` and the component's `Messenger` / +`TaskMessenger`, so the ID seen in a log or on the HMI always maps to one +of the entries below. + +## Common issues + +### The component never completes its first-cycle hardware check + +**Symptom.** `_initHwCheckDone` never goes `TRUE`; `Status.Error.Id` sits at +one of 700, 701, 702, 710, 720–726, or 1130–1133; no `Inputs` are populated +from the field. + +**Why.** `Run()` stays inside its one-shot bring-up block until every slot +probe succeeds. If any probe fails, it activates the matching message and +`RETURN`s, so the cyclic I/O read at the bottom of `Run()` never executes. + +**What to check.** + +- `inParent` was passed to `Run()` (missing parent → error 700 / 1130). +- A non-zero hardware identifier was passed (`hwID = 0` → error 701 / 1131). + Prefer `AXOpen.Showcase.HwIdentifiers#{device}_HwID` constants. +- Slot 1 in the PROFINET template is empty (no safety module added by the + application). A non-zero ID here raises error 710 / 1132. +- Slot 2 is the `512_DI_DO` submodule from the shipped template and is + reachable on the PROFINET subnet (errors 720–725, 1133). +- The KRC4 template at + `showcase/app/hwc/library_templates/kuka_krc4/kuka_krc4_dio512.hwl.yml` + is the one applied in `plc_line.hwl.yml` (`- Apply: kuka_krc4_dio512`). + A different template likely breaks the 64-in / 64-out I/O size assertion + (error 726). + +### `Run()` runs but tasks never start + +**Symptom.** Calls like `ExampleRobot.StartMotorsAndProgram()` stay in a +`IsBusy()` state; `Status.Error.Id` reports 500-range *potential* IDs. + +**Why.** Every task advances its state machine inside +`AxoKrc4.Run()`. The 500-range IDs are informational — they report which +KRC4 input the task is waiting on (e.g. `UserSafetySwitchClosed`, +`DrivesReady`, `Automatic`, `AlarmStopActive`). They are not errors. + +**What to check.** + +- The KRC4 is in external-automatic mode (`Inputs.ExternalAutomatic = TRUE`) + and not in `Inputs.Manual`. Any active task immediately raises error + 20001 in manual mode. +- `Inputs.UserSafetySwitchClosed`, `Inputs.AlarmStopActive`, and + `Inputs.DrivesReady` track the KRC4 safety circuit. Tasks block on + these; if they never assert, inspect the E-stop chain on the robot cell. +- `Inputs.Error = TRUE` raises error 20005 while a task is busy; clear + the KRC4-side fault, then call `ExampleRobot.ErrorConfirmation` via + `Outputs.ErrorConfirmation` or run the `Restore` sequencer step. +- `Config.TaskTimeout` has not elapsed (default `LT#50S`). Set to `0s` + during commissioning to disable the watchdog. + +### Movement parameters never take effect + +**Symptom.** `StartMovements(params)` stays busy; `Status.Error.Id` +cycles through 554–559 (or 528–533 for the combined task). + +**Why.** The task writes movement parameters to `Outputs` and then waits +for the KRC4 to mirror each parameter back on `Inputs` before advancing. +If the mirror never happens the task is stuck at `_movement_progress = 354`. + +**What to check.** + +- The KRC4 programme on the controller side is running and processing the + AXOpen interface (the `I_O_ACT` output must be accepted; `I_O_ACTCONF` + should come back on `Inputs.InterfaceActivated`). +- The `ActionNo` written by the PLC (`Outputs.ActionNo`) matches the value + echoed back on `Inputs.ActionNo`. The component handshakes action numbers + `253`, `254`, `255` during the movement step machine; a mismatch means + the KRC4 programme is not advancing. +- `AXOpen.Components.Robotics.CoordinatesAreNearlyEqual` returns `TRUE` for + the commanded vs. echoed coordinates within `0.01` tolerance. Values + outside that tolerance keep the task in the acknowledge state. + +### PROFINET read / write transport failures + +**Symptom.** `Status.Error.Id` reports 1201 or 1231 and the component +`RETURN`s early each cycle, freezing all tasks. + +**Why.** + +- 1201 — `Siemens.Simatic.DistributedIO.ReadData` returned a non-zero + status. The 64-byte input block could not be fetched from slot 2. +- 1231 — `Siemens.Simatic.DistributedIO.WriteData` returned a non-zero + status. The 64-byte output block could not be pushed to slot 2. + +**What to check.** + +- The PROFINET device is online (link up, device name applied, IP reachable). + These are transport failures, not configuration faults. +- No other controller owns the same PROFINET device name + (`PROFINET_DEVICE_NAME_X1: kuka_rb1` in the shipped template). +- Slot 2 still contains the `512_DI_DO` submodule — replacing or removing + it after commissioning invalidates `HwID_512_DI_DO`. + +### Safety-interlock errors while a task is busy + +`AxoKrc4` arms a safety gate around every programme/motion task. While +`StartAtMainTask`, `StartMotorsAndProgramTask`, `StartMovementsTask`, +`StopMovementsTask`, `StopMovementsAndProgramTask`, or `StopProgramTask` +is busy, the component raises one of 20001–20005 as soon as the +corresponding input asserts/deasserts: + +| Id | Condition | Meaning | +|----|-----------|---------| +| 20001 | `Inputs.Manual = TRUE` | KRC4 went to T1 while a task is executing — automation path invalid. | +| 20002 | `Inputs.Automatic = FALSE` | KRC4 dropped out of auto — task is now illegal. | +| 20003 | `Inputs.AlarmStopActive = FALSE` | Alarm-stop dropped, likely external E-stop. | +| 20004 | `Inputs.UserSafetySwitchClosed = FALSE` | User safety gate opened during motion. | +| 20005 | `Inputs.Error = TRUE` | KRC4 itself raised an error while the task was running. | + +Resolution: bring the cell back into the safe automatic state, call the +task's `Restore()` method so its state machine rewinds, then re-invoke the +task. + +## Error ID reference + +### Hardware bring-up errors (first cycle) + +| Id | Category | Raised when | +|----|----------|-------------| +| 700 | ProgrammingError | `Run()` called with `inParent = NULL`. | +| 701 | ProgrammingError | `Run()` called with `hwID = 0`. | +| 702 | Error | `ReadSlotFromHardwareID` returned `WORD#8090` — unknown hardware ID. | +| 710 | Error | Slot 1 (reserved for a safety module) reports a non-zero hardware ID — unexpected module occupies slot 1. | +| 720 | Error | Slot 2 hardware ID is `0` — `512_DI_DO` submodule missing. | +| 721 | Error | Slot 2 probe returned `WORD#8091`. | +| 722 | Error | Slot 2 probe returned `WORD#8094`. | +| 723 | Error | Slot 2 probe returned `WORD#8095`. | +| 724 | Error | Slot 2 probe returned `WORD#8096`. | +| 725 | Error | Slot 2 probe returned `WORD#8097`. | +| 726 | Error | Slot 2 I/O address range is not 64 in / 64 out. Wrong module template applied. | +| 1130 | Error | Post-probe re-check — `inParent = NULL`. | +| 1131 | Error | Post-probe re-check — `HwID_Device = 0`. | +| 1132 | Error | Post-probe re-check — `HwID_None <> 0`. | +| 1133 | Error | Post-probe re-check — `HwID_512_DI_DO = 0`. | + +### Cyclic I/O errors + +| Id | Category | Raised when | +|----|----------|-------------| +| 1201 | Error | `DistributedIO.ReadData` returned non-zero status — PROFINET read failed. | +| 1231 | Error | `DistributedIO.WriteData` returned non-zero status — PROFINET write failed. | + +### Runtime safety errors (during a busy task) + +| Id | Category | Raised when | +|----|----------|-------------| +| 20001 | Error | `Inputs.Manual = TRUE`. | +| 20002 | Error | `Inputs.Automatic = FALSE`. | +| 20003 | Error | `Inputs.AlarmStopActive = FALSE`. | +| 20004 | Error | `Inputs.UserSafetySwitchClosed = FALSE`. | +| 20005 | Error | `Inputs.Error = TRUE`. | + +### Task "potential" (waiting-on-input) identifiers + +The 500-range identifiers are informational — the component uses them to +show which KRC4 input the currently-executing task is waiting on. They +are surfaced via `TaskMessenger` (category `Potential`) only after +`Config.InfoTime` has elapsed, so a brief wait never raises them. Typical +ranges: + +| Range | Task | What the task is waiting for | +|-------|------|------------------------------| +| 500 | `StartAtMain` | `StartAtMain` input acknowledgement. | +| 510–516 | `StartAtMain` handshake progression | Interface activate, drives ready, programme start confirmation. | +| 520–536 | `StartMotorsProgramAndMovements` | Combined motor/programme/movement bring-up. | +| 540–542 | `StartMotors` | `UserSafetySwitchClosed`, `AlarmStopActive`, `DrivesReady`. | +| 550–562 | `StartMovements` | `ProActive`, `DrivesReady`, `StopMess` clear, parameter acknowledge. | +| 570–576 | `StopMovements` / `StartMotorsAndProgram` | Drive-off handshake, mirrored parameters. | +| 580 | `StartProgram` | Programme start acknowledgement. | +| 590, 591 | `StopProgram`, `StopMovementsAndProgram` | Programme stop acknowledgement. | +| 600, 610, 620 | `StopMovements`, `StopMotors`, `ResetAllOutputs` | Final shutdown handshakes. | + +A *potential* entry is not a fault — inspect the KRC4 inputs named in the +task's current step comment. A task only converts to an error (`10020`, +`10040`, `10041`, …) after `Config.ErrorTime` elapses without the +expected input. + +## Diagnostics + +Read these properties when triaging: + +- `Status.Error.Id` — last raised error (most recent `Messenger.Activate` + call wins). +- `Status.Action.Id` — current macro state of the task layer + (120s / 140s / 150s / 160s ranges mirror `_power_progress` and + `_movement_progress`). +- `_power_progress`, `_movement_progress` — internal step indices. Exposed + read-only on the component so the HMI shows where a task is paused. +- `HardwareDiagnosticsTask` — the embedded `AxoHardwareDiagnostics` task + returns detailed PROFINET slot health; run it whenever transport errors + (1201 / 1231) appear. +- `Messenger` and `TaskMessenger` — the component's two messenger + channels. The first carries errors/programming faults; the second + carries task-level *potential* / info messages. + +## Known limitations + +- Only the KRC4 slot layout `kuka_krc4_dio512` (64-byte I/O) is recognised. + Swapping slot 2 for a different submodule invalidates `HwID_512_DI_DO` + and raises error 720/726. +- Slot 1 must be left empty. Adding a safety module there is currently + unsupported — error 710 is raised pre-emptively (the commented-out error + IDs 711–716 in the source show this branch was intentionally disabled). +- A single `hwID` device is supported per `AxoKrc4` instance; multi-arm + coordination happens at the application level, not inside the component. + +## Support + +Unfortunately, we don't have a direct solution to every problem. If you +encounter an issue not covered here, please +[file a report on our GitHub](https://github.com/inxton/AXOpen/issues/new/choose). +We appreciate your feedback and patience. --- From fc46c06955454669a9f976cc42b175aab1ca478f Mon Sep 17 00:00:00 2001 From: Peter Kurhajec <61538034+PTKu@users.noreply.github.com> Date: Wed, 22 Apr 2026 10:55:49 +0200 Subject: [PATCH 4/5] feat: Add support for KUKA KRC5 controller in AxoKrc4 library - Updated documentation to reflect KRC5 support, including changes to AxoKrc4_v_5_x_x.md and README.md. - Introduced new showcase file AxoKrc4_v_5_x_x_Krc5Showcase.st for KRC5 instance. - Enhanced CHANGELOG.md to document new features and updates related to KRC5. - Modified hardware configuration files to include KRC5 device and IO system wiring. - Updated Blazor showcase to include KRC5 specific tabs and functionality. - Adjusted the search registry to include KRC5 related paths and tags. --- CHANGELOG.md | 30 +++ .../docs/AxoKrc4_v_5_x_x.md | 62 +++-- .../docs/CHANGELOG.md | 23 ++ src/components.kuka.robotics/docs/README.md | 31 ++- src/showcase/app/hwc/plc_line.hwl.yml | 12 + .../Documentation/KukaRobotics.razor | 192 +++++++++++++++- .../Services/Search/ShowcasePageRegistry.cs | 8 +- .../AxoKrc4_v_5_x_x_Krc5Showcase.st | 211 ++++++++++++++++++ .../Documentation/KukaRobotics.st | 2 + 9 files changed, 542 insertions(+), 29 deletions(-) create mode 100644 src/showcase/app/src/components.kuka.robotics/Documentation/AxoKrc4_v_5_x_x_Krc5Showcase.st diff --git a/CHANGELOG.md b/CHANGELOG.md index 21c07f9d0..7a38f37c0 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,33 @@ +### [KUKA] KRC5 showcase, docs, and central changelog ([#1117](https://github.com/Inxton/AXOpen/pull/1117)) + +**Note:** Extends the KRC5 library assets landed in [#1116](https://github.com/Inxton/AXOpen/pull/1116) with full showcase and documentation coverage. No runtime behavior change in `AxoKrc4` — the existing class drives both KRC4 and KRC5 because the slot 1 / slot 2 = `DIO512` layout is identical. + +- feat: Copied `kuka_krc5_dio512.hwl.yml` into `showcase/app/hwc/library_templates/kuka_krc5/`. +- feat: Added `` (IP `192.168.100.106`, `kuka_rb2`) and `` regions to `showcase/app/hwc/plc_line.hwl.yml`. +- feat: Added third showcase ST file `AxoKrc4_v_5_x_x_Krc5Showcase.st` demonstrating the same `AxoKrc4` proxy driving a KRC5 device via `kuka_rb2_HwID`. +- feat: Wired the KRC5 instance (`axoKrc4_v_5_x_x_krc5`) into `KukaRobotics.st` documentation context. +- feat: Added `AxoKrc4 on KRC5` tab to the Blazor showcase page with live `RenderableContentControl`, code-reference, hardware-configuration, and example-sequence sub-tabs; registered KRC5 DocFX snippet markers (`Krc5GenericComponent*`). +- feat: Updated `ShowcasePageRegistry.cs` `SourceFilePaths` with the new KRC5 showcase, hwl template, and library assets; tags extended with `KRC4`/`KRC5`. +- docs: `src/components.kuka.robotics/docs/README.md` — Hardware-assets table extended with KRC5 rows; intro updated to state both KRC4 and KRC5 are supported. +- docs: `src/components.kuka.robotics/docs/AxoKrc4_v_5_x_x.md` — subtitle + intro updated; HARDWARE tab split per controller; new "KRC5 example" code-reference block; KRC5 device instantiation + IO system `[!code-yaml[]]` directives. +- docs: Appended `0.51.0` entry to `src/components.kuka.robotics/docs/CHANGELOG.md` covering the KRC5 library + showcase + docs work. + +**Impact:** +- Application engineers can drop a KUKA KRC5 cell into their `plc_line.hwl.yml` using the shipped `kuka_krc5_dio512` template and use the existing `AxoKrc4` proxy — no library code changes required on consumer side. +- Showcase demonstrates the KRC5 integration live, side-by-side with two KRC4 variants. +- Central search index surfaces KRC5 documentation when users search for "KRC5" or "KUKA". + +**Risks/Review:** +- New template uses the updated hwc address schema (`Type: IPv4/Profinet` split). Verify the showcase `apax hwc && apax hwfd` run regenerates `HwIdentifiers.st` with a `kuka_rb2_HwID` constant; if the generated name differs, update `AxoKrc4_v_5_x_x_Krc5Showcase.st` `Run()` argument. +- The KRC5 GSDML filename contains a space (`GSDML-V2.4-KUKA-KR C5-20220704.xml`) — any tooling that splits on whitespace must quote the path. +- Per-library CHANGELOG version bumped to `0.51.0` (minor — new feature). + +**Testing:** +- `apax ib` in `src/showcase/app/` after `apax hwc && apax hwfd` to verify the KRC5 device wires through to the ST showcase. +- `dotnet build` on `src/showcase/app/ix-blazor/showcase.blazor/` to verify the razor page + search registry + HwIdentifiers reference compile. +- Load the "KUKA Robotics" page in the Blazor app and confirm all three tabs (KRC4 Example 1, KRC4 Example 2, AxoKrc4 on KRC5) render; on a connected PLC, verify the KRC5 sequencer step-logic cards populate. +- `scripts/_build_documentation.ps1` to verify the new `[!code-yaml]` / `[!code-pascal]` directives resolve against the new tagged regions. + ### [KUKA] KRC4 documentation refresh and GSDML/hw template callouts ([#TBD](https://github.com/Inxton/AXOpen/pulls)) **Note:** Documentation-only change for `components.kuka.robotics`. No runtime behavior modified. diff --git a/src/components.kuka.robotics/docs/AxoKrc4_v_5_x_x.md b/src/components.kuka.robotics/docs/AxoKrc4_v_5_x_x.md index a9b7b6663..f4b3ba050 100644 --- a/src/components.kuka.robotics/docs/AxoKrc4_v_5_x_x.md +++ b/src/components.kuka.robotics/docs/AxoKrc4_v_5_x_x.md @@ -1,14 +1,19 @@ # AxoKrc4_v_5_x_x -_KUKA KRC4 industrial robot controller_ +_KUKA KRC4 / KRC5 industrial robot controller_ `AxoKrc4` (namespace `AXOpen.Components.Kuka.Robotics.v_5_x_x`) is the -controller proxy for robots driven by a KUKA KRC4. It extends -`AXOpen.Core.AxoComponent` and implements +controller proxy for robots driven by a KUKA **KRC4 or KRC5** controller. +It extends `AXOpen.Core.AxoComponent` and implements `AXOpen.Components.Abstractions.Robotics.IAxoRobotics`, exposing all programme and motion commands as `AxoTask` instances that advance their state machine inside the component's `Run()` call. +Both controller families share an identical AXOpen slot layout (slot 1 +reserved, slot 2 = `DIO512` with 64-byte cyclic I/O). The component source +and API are therefore **identical** for KRC4 and KRC5 — only the GSDML and +PROFINET device template differ at hardware configuration time. + ## Capabilities - Programme control — `StartAtMain`, `StartProgram`, `StopProgram`, `StartMotorsAndProgram`, `StopMovementsAndProgram`. @@ -79,6 +84,17 @@ zeroing it out for commissioning. [!code-pascal[](../../showcase/app/src/components.kuka.robotics/Documentation/AxoKrc4_v_5_x_x_Showcase2.st?name=ComponentDeclaration)] [!code-pascal[](../../showcase/app/src/components.kuka.robotics/Documentation/AxoKrc4_v_5_x_x_Showcase2.st?name=Initialization)] +## KRC5 example + +A third wired-up instance (`AxoKrc4_v_5_x_x_Krc5Showcase`) drives a **KUKA +KRC5** cell using the same `AxoKrc4` proxy. The only difference at +application level is the hardware identifier — it points at `kuka_rb2` +which is provisioned by the `kuka_krc5_dio512` template in +`plc_line.hwl.yml`. + +[!code-pascal[](../../showcase/app/src/components.kuka.robotics/Documentation/AxoKrc4_v_5_x_x_Krc5Showcase.st?name=ComponentDeclaration)] +[!code-pascal[](../../showcase/app/src/components.kuka.robotics/Documentation/AxoKrc4_v_5_x_x_Krc5Showcase.st?name=Initialization)] + ## Source View the library source at [`AxoKrc4_v_5_x_x.st`](https://github.com/Inxton/AXOpen/tree/dev/src/components.kuka.robotics/ctrl/src/AxoKrc4_v_5_x_x.st). @@ -120,17 +136,27 @@ View the Blazor package at [`AXOpen.Components.Kuka.Robotics.blazor`](https://gi ## Library-shipped assets -The raw KRC4 GSDML and the matching PROFINET device template live inside -the library package so `AxoKrc4` can be wired up without fetching files -from the vendor: +The raw GSDMLs and matching PROFINET device templates for both KRC4 and +KRC5 live inside the library package so `AxoKrc4` can be wired up without +fetching files from the vendor: + +### KRC4 - GSDML — [`ctrl/assets/kuka_krc4/GSDML-V2.33-KUKA-KRC4-ProfiNet_5.0-20181102.xml`](https://github.com/Inxton/AXOpen/tree/dev/src/components.kuka.robotics/ctrl/assets/kuka_krc4/GSDML-V2.33-KUKA-KRC4-ProfiNet_5.0-20181102.xml) — vendor GSDML for Siemens hardware-catalog import. - HW template — [`ctrl/assets/kuka_krc4/kuka_krc4_dio512.hwl.yml`](https://github.com/Inxton/AXOpen/tree/dev/src/components.kuka.robotics/ctrl/assets/kuka_krc4/kuka_krc4_dio512.hwl.yml) — PROFINET device template expected by `Run()` (slot 1 empty, slot 2 = `512_DI_DO`, 64-byte cyclic I/O). -The showcase copies the template into `showcase/app/hwc/library_templates/kuka_krc4/` -so application builds do not need a catalog round-trip. +### KRC5 + +- GSDML — [`ctrl/assets/kuka_krc5/GSDML-V2.4-KUKA-KR C5-20220704.xml`]() + — vendor GSDML for KR C5 (2022-07-04). The filename contains a space. +- HW template — [`ctrl/assets/kuka_krc5/kuka_krc5_dio512.hwl.yml`](https://github.com/Inxton/AXOpen/tree/dev/src/components.kuka.robotics/ctrl/assets/kuka_krc5/kuka_krc5_dio512.hwl.yml) + — same slot 1 / slot 2 = `DIO512` layout as KRC4, using the newer hwc + address schema (`Type: IPv4/Profinet`) and a 4-port switch interface. + +The showcase copies both templates into `showcase/app/hwc/library_templates/kuka_krc4/` +and `.../kuka_krc5/` so application builds do not need a catalog round-trip. ## Device template @@ -145,8 +171,8 @@ The template provisions a KRC4 as a PROFINET device with two slots: ## I/O mapping -`Run()` takes a single `hwID : UINT` that identifies the KRC4 device in the -configured hardware layout. The component then: +`Run()` takes a single `hwID : UINT` that identifies the KRC4 or KRC5 device +in the configured hardware layout. The component then: 1. Calls `ReadSlotFromHardwareID(hwID)` to obtain the device's geographic address. @@ -160,15 +186,23 @@ configured hardware layout. The component then: `WriteData` transfer the 64-byte blocks bound to `Inputs` / `Outputs`. Use the `AXOpen.Showcase.HwIdentifiers#{device}_HwID` constants to supply -`hwID` from application code (as the showcase does with -`kuka_rb1_HwID`). +`hwID` from application code (as the showcase does with `kuka_rb1_HwID` +for the KRC4 instance and `kuka_rb2_HwID` for the KRC5 instance). -## Device instantiation +## KRC4 device instantiation [!code-yaml[](../../showcase/app/hwc/plc_line.hwl.yml?name=KukaKrc4Device)] -## IO system wiring +## KRC4 IO system wiring [!code-yaml[](../../showcase/app/hwc/plc_line.hwl.yml?name=KukaKrc4IoSystem)] +## KRC5 device instantiation + +[!code-yaml[](../../showcase/app/hwc/plc_line.hwl.yml?name=KukaKrc5Device)] + +## KRC5 IO system wiring + +[!code-yaml[](../../showcase/app/hwc/plc_line.hwl.yml?name=KukaKrc5IoSystem)] + --- diff --git a/src/components.kuka.robotics/docs/CHANGELOG.md b/src/components.kuka.robotics/docs/CHANGELOG.md index b1dde834b..0a40d2366 100644 --- a/src/components.kuka.robotics/docs/CHANGELOG.md +++ b/src/components.kuka.robotics/docs/CHANGELOG.md @@ -29,3 +29,26 @@ - `AxoKrc4_v_5_x_x.md` — HARDWARE tab now opens with a "Library-shipped assets" section linking the GSDML and hw template on GitHub, so integrators see where the raw assets live inside this package. + +### 0.51.0 + +**New features:** +- Added **KUKA KRC5** controller support: the library now ships the KRC5 + GSDML (`ctrl/assets/kuka_krc5/GSDML-V2.4-KUKA-KR C5-20220704.xml`) and + the matching PROFINET device template (`ctrl/assets/kuka_krc5/kuka_krc5_dio512.hwl.yml`). + The existing `AxoKrc4` class drives both KRC4 and KRC5 — the DIO512 slot + layout is identical between the two controllers. + +**Other:** +- `README.md` — Hardware-assets table extended with KRC5 rows; description + updated to call out support for both KRC4 and KRC5 controllers. +- `AxoKrc4_v_5_x_x.md` — subtitle and intro updated to cover KRC4/KRC5; + HARDWARE tab split into per-controller asset sections; new "KRC5 example" + code-reference block pointing at the `AxoKrc4_v_5_x_x_Krc5Showcase.st` + showcase file; added KRC5 device instantiation + IO system wiring + `[!code-yaml[]]` blocks. +- Showcase: added `AxoKrc4_v_5_x_x_Krc5Showcase.st` (third instance, driven + by `kuka_rb2_HwID`); wired into the `KukaRobotics` documentation context; + added an "AxoKrc4 on KRC5" tab to the Blazor page with live rendering, + code reference, hardware configuration, and sequencer views; added KRC5 + search-registry entries. diff --git a/src/components.kuka.robotics/docs/README.md b/src/components.kuka.robotics/docs/README.md index bee93dcee..9b3d4db30 100644 --- a/src/components.kuka.robotics/docs/README.md +++ b/src/components.kuka.robotics/docs/README.md @@ -2,13 +2,13 @@ The **components.kuka.robotics** is a set of libraries covering the product portfolio of the robotics systems from the vendor [Kuka](https://www.kuka.com/en-gb) for the target PLC platform [Siemens AX](https://www.siemens.com/global/en/products/automation/industry-software/automation-software/simatic-ax.html) and [AxOpen](https://github.com/inxton/AXOpen?tab=readme-ov-file) framework. -The package consists of a PLC library providing control logic and its .NET twin counterpart aimed at the visualization part. This package currently covers the robots driven by KRC4 controller. +The package consists of a PLC library providing control logic and its .NET twin counterpart aimed at the visualization part. This package currently covers robots driven by the **KRC4** and **KRC5** controllers. Both controller families expose the same AXOpen-compatible slot layout (slot 1 reserved, slot 2 = 512 DI / 512 DO, 64-byte cyclic I/O) and are driven by the single `AxoKrc4` proxy class — only the GSDML and PROFINET device template differ between them. ### Components | Component | Description | |-----------|-------------| -| [`AxoKrc4`](AxoKrc4_v_5_x_x.md) | KUKA KRC4 controller proxy (namespace `AXOpen.Components.Kuka.Robotics.v_5_x_x`) exposing programme/motion commands, safety state, tool/zone outputs, and hardware diagnostics. Derives from `AxoComponent` and implements `IAxoRobotics`. | +| [`AxoKrc4`](AxoKrc4_v_5_x_x.md) | KUKA KRC4 / KRC5 controller proxy (namespace `AXOpen.Components.Kuka.Robotics.v_5_x_x`) exposing programme/motion commands, safety state, tool/zone outputs, and hardware diagnostics. Derives from `AxoComponent` and implements `IAxoRobotics`. | ### Configuration & state types @@ -30,18 +30,21 @@ The package consists of a PLC library providing control logic and its .NET twin ### Hardware assets -The library ships the KRC4 GSDML and a ready-to-apply PROFINET device -template so the robot can be dropped into a `plc_line.hwl.yml` without -vendor-side configuration: +The library ships GSDMLs and ready-to-apply PROFINET device templates for +both KRC4 and KRC5, so either controller can be dropped into a +`plc_line.hwl.yml` without vendor-side configuration: -| Asset | Path | Purpose | -|-------|------|---------| -| GSDML | [`ctrl/assets/kuka_krc4/GSDML-V2.33-KUKA-KRC4-ProfiNet_5.0-20181102.xml`](../ctrl/assets/kuka_krc4/GSDML-V2.33-KUKA-KRC4-ProfiNet_5.0-20181102.xml) | Vendor GSDML (KUKA KRC4 ProfiNet 5.0, 2018-11-02) for Siemens hardware catalog import. | -| HW template | [`ctrl/assets/kuka_krc4/kuka_krc4_dio512.hwl.yml`](../ctrl/assets/kuka_krc4/kuka_krc4_dio512.hwl.yml) | PROFINET device template with slot 1 empty (safety) and slot 2 = `512_DI_DO` (64-byte in / 64-byte out). Expected by `AxoKrc4.Run()`. | +| Controller | Asset | Path | Purpose | +|------------|-------|------|---------| +| KRC4 | GSDML | [`ctrl/assets/kuka_krc4/GSDML-V2.33-KUKA-KRC4-ProfiNet_5.0-20181102.xml`](../ctrl/assets/kuka_krc4/GSDML-V2.33-KUKA-KRC4-ProfiNet_5.0-20181102.xml) | Vendor GSDML (KUKA KRC4 ProfiNet 5.0, 2018-11-02) for Siemens hardware catalog import. | +| KRC4 | HW template | [`ctrl/assets/kuka_krc4/kuka_krc4_dio512.hwl.yml`](../ctrl/assets/kuka_krc4/kuka_krc4_dio512.hwl.yml) | PROFINET device template with slot 1 empty (safety) and slot 2 = `512_DI_DO` (64-byte in / 64-byte out). Expected by `AxoKrc4.Run()`. | +| KRC5 | GSDML | [`ctrl/assets/kuka_krc5/GSDML-V2.4-KUKA-KR C5-20220704.xml`](<../ctrl/assets/kuka_krc5/GSDML-V2.4-KUKA-KR C5-20220704.xml>) | Vendor GSDML (KUKA KR C5, 2022-07-04) — note the space in the filename. | +| KRC5 | HW template | [`ctrl/assets/kuka_krc5/kuka_krc5_dio512.hwl.yml`](../ctrl/assets/kuka_krc5/kuka_krc5_dio512.hwl.yml) | PROFINET device template with the same slot 1 / slot 2 = `512_DI_DO` layout as KRC4, using the newer hwc address schema (`Type: IPv4/Profinet`) and a 4-port switch interface. | -The showcase application uses the same template via -`showcase/app/hwc/library_templates/kuka_krc4/kuka_krc4_dio512.hwl.yml` -and wires it into `plc_line.hwl.yml` under the `` region. +The showcase application copies both templates into +`showcase/app/hwc/library_templates/kuka_krc4/` and `.../kuka_krc5/` and +wires them into `plc_line.hwl.yml` under the `` and +`` regions respectively. ### Dependencies @@ -56,3 +59,7 @@ and wires it into `plc_line.hwl.yml` under the `` region. [AxOpen-documentation](https://inxton.github.io/AXOpen/) [KUKA documentation](https://www.kuka.com/en-gb) + +[KUKA KRC4 controller family](https://www.kuka.com/en-gb/products/robotics-systems/industrial-robots/controllers/kr-c4) + +[KUKA KRC5 controller family](https://www.kuka.com/en-gb/products/robotics-systems/industrial-robots/controllers/kr-c5) diff --git a/src/showcase/app/hwc/plc_line.hwl.yml b/src/showcase/app/hwc/plc_line.hwl.yml index 9c3402396..3ae30fb5e 100644 --- a/src/showcase/app/hwc/plc_line.hwl.yml +++ b/src/showcase/app/hwc/plc_line.hwl.yml @@ -51,6 +51,15 @@ Devices: PROFINET_DEVICE_NAME_X1: kuka_rb1 # + # + # KUKA KRC5 Robot + - Apply: kuka_krc5_dio512 + Arguments: + NAME: kuka_rb2 + IP_ADDRESS_X1: '192.168.100.106/24' + PROFINET_DEVICE_NAME_X1: kuka_rb2 + # + # # Mitsubishi TZ535 Robot - Apply: mitsubishi_tz535_64b_inout @@ -299,6 +308,9 @@ IoSystems: # - Ref: kuka_rb1/kuka_rb1/Interface1 # + # + - Ref: kuka_rb2/kuka_rb2/Interface1 + # # - Ref: mitsubishi_tz535_robot/mitsubishi_tz535_robot/Interface # diff --git a/src/showcase/app/ix-blazor/showcase.blazor/Pages/components-kuka-robotics/Documentation/KukaRobotics.razor b/src/showcase/app/ix-blazor/showcase.blazor/Pages/components-kuka-robotics/Documentation/KukaRobotics.razor index 25c235fb5..727b824d6 100644 --- a/src/showcase/app/ix-blazor/showcase.blazor/Pages/components-kuka-robotics/Documentation/KukaRobotics.razor +++ b/src/showcase/app/ix-blazor/showcase.blazor/Pages/components-kuka-robotics/Documentation/KukaRobotics.razor @@ -370,6 +370,148 @@ + +
+
+ Maturity: + +
+

+ The same AxoKrc4 proxy drives a KUKA KRC5 cell — the DIO512 slot layout is identical, + so only the GSDML and the device template differ. This tab runs against the kuka_rb2 + KRC5 device provisioned by kuka_krc5_dio512. +

+ + +
+ +
+
+ +
+
+

Component declaration (ST)

+

+ + — <ComponentDeclaration> region +

+ @if (_c3DeclarationSnippet != null && !_c3DeclarationSnippet.IsError) + { + + } + else if (_loadingCode) + { +
Loading...
+ } + else + { +

Unable to load snippet

+ } +
+
+

Component Run call (ST)

+

+ + — <Initialization> region +

+ @if (_c3InitSnippet != null && !_c3InitSnippet.IsError) + { + + } + else if (_loadingCode) + { +
Loading...
+ } + else + { +

Unable to load snippet

+ } +
+
+
+ +
+
+

Device instantiation (hwl)

+

+ + — <KukaKrc5Device> region +

+ @if (_hwcKrc5DeviceInstanceSnippet != null && !_hwcKrc5DeviceInstanceSnippet.IsError) + { + + } + else if (_loadingCode) + { +
Loading...
+ } + else + { +

Unable to load snippet

+ } +
+
+

Device template (hwl)

+

+ +

+
+
+

PROFINET IO system wiring (hwl)

+

+ + — <KukaKrc5IoSystem> region +

+ @if (_hwcKrc5IoSystemSnippet != null && !_hwcKrc5IoSystemSnippet.IsError) + { + + } + else if (_loadingCode) + { +
Loading...
+ } + else + { +

Unable to load snippet

+ } +
+
+
+ +
+ + +
+

Sequencer Step Logic

+

Each block below is parsed from + . +

+ @if (_c3StepLogicBlocks.Count > 0) + { +
+ @foreach (var step in _c3StepLogicBlocks) + { + _c3StepsBySymbol.TryGetValue(step.StepSymbol, out var liveStep); + + } +
+ } + else if (_loadingCode) + { +
Loading step logic...
+ } + else + { +
+ No sequencer step blocks were detected. +
+ } +
+
+
+
+
+
@@ -388,18 +530,26 @@ private CodeSnippet? _c2DeclarationSnippet; private CodeSnippet? _c2InitSnippet; private List _c2StepLogicBlocks = new(); + // Component 3 (KRC5) snippets + private CodeSnippet? _c3DeclarationSnippet; + private CodeSnippet? _c3InitSnippet; + private List _c3StepLogicBlocks = new(); // HWC snippets private CodeSnippet? _hwcDeviceInstanceSnippet; private CodeSnippet? _hwcDeviceTemplateSnippet; private CodeSnippet? _hwcIoSystemSnippet; + private CodeSnippet? _hwcKrc5DeviceInstanceSnippet; + private CodeSnippet? _hwcKrc5IoSystemSnippet; private bool _loadingCode = true; private string _selectedPresentation = "Command-Control"; private readonly string _plcContextPath = "src/showcase/app/src/components.kuka.robotics/Documentation/KukaRobotics.st"; private readonly string _plcComponent1Path = "src/showcase/app/src/components.kuka.robotics/Documentation/AxoKrc4_v_5_x_x_Showcase.st"; private readonly string _plcComponent2Path = "src/showcase/app/src/components.kuka.robotics/Documentation/AxoKrc4_v_5_x_x_Showcase2.st"; + private readonly string _plcComponent3Path = "src/showcase/app/src/components.kuka.robotics/Documentation/AxoKrc4_v_5_x_x_Krc5Showcase.st"; // Hardware configuration paths private readonly string _hwcPlcLineYmlPath = "src/showcase/app/hwc/plc_line.hwl.yml"; private readonly string _hwcDeviceTemplatePath = "src/showcase/app/hwc/library_templates/kuka_krc4/kuka_krc4_dio512.hwl.yml"; + private readonly string _hwcDeviceKrc5TemplatePath = "src/showcase/app/hwc/library_templates/kuka_krc5/kuka_krc5_dio512.hwl.yml"; // Library resource paths private readonly string _libReadmePath = "src/components.kuka.robotics/docs/README.md"; private readonly string _libComponent1DocPath = "src/components.kuka.robotics/docs/AxoKrc4_v_5_x_x.md"; @@ -408,8 +558,11 @@ private readonly string _libApaxYmlPath = "src/components.kuka.robotics/ctrl/apax.yml"; private readonly string _libHwlYmlPath = "src/components.kuka.robotics/ctrl/assets/kuka_krc4/kuka_krc4_dio512.hwl.yml"; private readonly string _libGsdmlPath = "src/components.kuka.robotics/ctrl/assets/kuka_krc4/GSDML-V2.33-KUKA-KRC4-ProfiNet_5.0-20181102.xml"; + private readonly string _libHwlKrc5YmlPath = "src/components.kuka.robotics/ctrl/assets/kuka_krc5/kuka_krc5_dio512.hwl.yml"; + private readonly string _libGsdmlKrc5Path = "src/components.kuka.robotics/ctrl/assets/kuka_krc5/GSDML-V2.4-KUKA-KR C5-20220704.xml"; private Dictionary _c1StepsBySymbol = new(); private Dictionary _c2StepsBySymbol = new(); + private Dictionary _c3StepsBySymbol = new(); protected override async Task OnInitializedAsync() { try @@ -422,22 +575,35 @@ var c2DeclTask = CodeProvider.GetTaggedRegionAsync(_plcComponent2Path, "ComponentDeclaration"); var c2InitTask = CodeProvider.GetTaggedRegionAsync(_plcComponent2Path, "Initialization"); var c2StepsTask = CodeProvider.GetStepLogicBlocksAsync(_plcComponent2Path); + // Component 3 (KRC5) tasks + var c3DeclTask = CodeProvider.GetTaggedRegionAsync(_plcComponent3Path, "ComponentDeclaration"); + var c3InitTask = CodeProvider.GetTaggedRegionAsync(_plcComponent3Path, "Initialization"); + var c3StepsTask = CodeProvider.GetStepLogicBlocksAsync(_plcComponent3Path); // HWC tasks var hwcInstanceTask = CodeProvider.GetTaggedRegionAsync(_hwcPlcLineYmlPath, "KukaKrc4Device"); var hwcTemplateTask = CodeProvider.GetTaggedRegionAsync(_hwcDeviceTemplatePath, "KukaKrc4Template"); var hwcIoSystemTask = CodeProvider.GetTaggedRegionAsync(_hwcPlcLineYmlPath, "KukaKrc4IoSystem"); + var hwcKrc5InstanceTask = CodeProvider.GetTaggedRegionAsync(_hwcPlcLineYmlPath, "KukaKrc5Device"); + var hwcKrc5IoSystemTask = CodeProvider.GetTaggedRegionAsync(_hwcPlcLineYmlPath, "KukaKrc5IoSystem"); await Task.WhenAll(c1DeclTask, c1InitTask, c1StepsTask, c2DeclTask, c2InitTask, c2StepsTask, - hwcInstanceTask, hwcTemplateTask, hwcIoSystemTask); + c3DeclTask, c3InitTask, c3StepsTask, + hwcInstanceTask, hwcTemplateTask, hwcIoSystemTask, + hwcKrc5InstanceTask, hwcKrc5IoSystemTask); _c1DeclarationSnippet = await c1DeclTask; _c1InitSnippet = await c1InitTask; _c1StepLogicBlocks = await c1StepsTask; _c2DeclarationSnippet = await c2DeclTask; _c2InitSnippet = await c2InitTask; _c2StepLogicBlocks = await c2StepsTask; + _c3DeclarationSnippet = await c3DeclTask; + _c3InitSnippet = await c3InitTask; + _c3StepLogicBlocks = await c3StepsTask; _hwcDeviceInstanceSnippet = await hwcInstanceTask; _hwcDeviceTemplateSnippet = await hwcTemplateTask; _hwcIoSystemSnippet = await hwcIoSystemTask; + _hwcKrc5DeviceInstanceSnippet = await hwcKrc5InstanceTask; + _hwcKrc5IoSystemSnippet = await hwcKrc5IoSystemTask; _c1StepsBySymbol = Entry.Plc.Ctx.kuka_robotics_documentation.axoKrc4_v_5_x_x.Steps .ToDictionary( s => s.Symbol.Substring(s.Symbol.LastIndexOf('.') + 1), @@ -448,6 +614,11 @@ s => s.Symbol.Substring(s.Symbol.LastIndexOf('.') + 1), s => s ); + _c3StepsBySymbol = Entry.Plc.Ctx.kuka_robotics_documentation.axoKrc4_v_5_x_x_krc5.Steps + .ToDictionary( + s => s.Symbol.Substring(s.Symbol.LastIndexOf('.') + 1), + s => s + ); } catch (Exception ex) { @@ -466,6 +637,8 @@ var steps1 = Entry.Plc.Ctx.kuka_robotics_documentation.axoKrc4_v_5_x_x.Steps; var seq2 = Entry.Plc.Ctx.kuka_robotics_documentation.axoKrc4_v_5_x_x_2.Sequencer; var steps2 = Entry.Plc.Ctx.kuka_robotics_documentation.axoKrc4_v_5_x_x_2.Steps; + var seq3 = Entry.Plc.Ctx.kuka_robotics_documentation.axoKrc4_v_5_x_x_krc5.Sequencer; + var steps3 = Entry.Plc.Ctx.kuka_robotics_documentation.axoKrc4_v_5_x_x_krc5.Steps; this.StartPolling(seq1, 250); foreach (var step in steps1) { @@ -482,6 +655,14 @@ this.StartPolling(step.Order, 250); this.StartPolling(step.Descr, 500); } + this.StartPolling(seq3, 250); + foreach (var step in steps3) + { + this.StartPolling(step.IsActive, 250); + this.StartPolling(step.IsEnabled, 250); + this.StartPolling(step.Order, 250); + this.StartPolling(step.Descr, 500); + } } } @@ -505,4 +686,13 @@ + + + + + + + + + } diff --git a/src/showcase/app/ix-blazor/showcase.blazor/Services/Search/ShowcasePageRegistry.cs b/src/showcase/app/ix-blazor/showcase.blazor/Services/Search/ShowcasePageRegistry.cs index 670aeb643..04a800a9d 100644 --- a/src/showcase/app/ix-blazor/showcase.blazor/Services/Search/ShowcasePageRegistry.cs +++ b/src/showcase/app/ix-blazor/showcase.blazor/Services/Search/ShowcasePageRegistry.cs @@ -306,18 +306,22 @@ public static List GetAllPages() => LibraryNamespace = "AXOpen.Components.Kuka.Robotics", Category = "Vendor Components", Vendor = "KUKA", - Description = "Practical reference for integrating KUKA robots in SIMATIC AX applications with runnable command widgets and live component status.", + Description = "Practical reference for integrating KUKA KRC4 and KRC5 robots in SIMATIC AX applications with runnable command widgets and live component status.", Icon = "document-text", - Tags = ["KUKA", "robot", "robotics"], + Tags = ["KUKA", "robot", "robotics", "KRC4", "KRC5"], SourceFilePaths = [ "src/showcase/app/src/components.kuka.robotics/Documentation/KukaRobotics.st", "src/showcase/app/src/components.kuka.robotics/Documentation/AxoKrc4_v_5_x_x_Showcase.st", "src/showcase/app/src/components.kuka.robotics/Documentation/AxoKrc4_v_5_x_x_Showcase2.st", + "src/showcase/app/src/components.kuka.robotics/Documentation/AxoKrc4_v_5_x_x_Krc5Showcase.st", "src/showcase/app/hwc/library_templates/kuka_krc4/kuka_krc4_dio512.hwl.yml", + "src/showcase/app/hwc/library_templates/kuka_krc5/kuka_krc5_dio512.hwl.yml", "src/components.kuka.robotics/docs/README.md", "src/components.kuka.robotics/docs/AxoKrc4_v_5_x_x.md", "src/components.kuka.robotics/docs/TROUBLES.md", "src/components.kuka.robotics/ctrl/src/AxoKrc4_v_5_x_x.st", + "src/components.kuka.robotics/ctrl/assets/kuka_krc4/kuka_krc4_dio512.hwl.yml", + "src/components.kuka.robotics/ctrl/assets/kuka_krc5/kuka_krc5_dio512.hwl.yml", "src/components.kuka.robotics/ctrl/apax.yml", ] }, diff --git a/src/showcase/app/src/components.kuka.robotics/Documentation/AxoKrc4_v_5_x_x_Krc5Showcase.st b/src/showcase/app/src/components.kuka.robotics/Documentation/AxoKrc4_v_5_x_x_Krc5Showcase.st new file mode 100644 index 000000000..678e69b41 --- /dev/null +++ b/src/showcase/app/src/components.kuka.robotics/Documentation/AxoKrc4_v_5_x_x_Krc5Showcase.st @@ -0,0 +1,211 @@ +USING AXOpen.Core; + +NAMESPACE AXOpen.Components.Kuka.Robotics + {S7.extern=ReadWrite} + CLASS AxoKrc4_v_5_x_x_Krc5Showcase EXTENDS AXOpen.Core.AxoObject + // + VAR PUBLIC + // KRC5 controller driven by the same AxoKrc4 proxy — + // the slot-2 DIO512 layout is identical between KRC4 and KRC5. + ExampleRobot : AXOpen.Components.Kuka.Robotics.v_5_x_x.AxoKrc4; + END_VAR + // + + // + VAR PUBLIC + movementParams : AXOpen.Components.Abstractions.Robotics.AxoRoboticsMovementsParams; + {#ix-set:AttributeName = "<#Activate manual control#>"} + ActivateManualControl : BOOL; + END_VAR + // + + METHOD PUBLIC OVERRIDE Run + VAR_INPUT + inParent : IAxoObject; + END_VAR + + SUPER.Run(inParent); + + IF ActivateManualControl THEN + ExampleRobot.ActivateManualControl(); + END_IF; + + // + // kuka_rb2_HwID points at the KRC5 device (192.168.100.106) + // provisioned by the kuka_krc5_dio512 template in plc_line.hwl.yml. + ExampleRobot.Run(THIS, AXOpen.Showcase.HwIdentifiers#kuka_rb2_HwID); + // + + THIS.UseInSequencer(); + END_METHOD + + // + VAR PUBLIC + Sequencer : AxoSequencer; + Steps : ARRAY[0..19] OF AXOpen.Core.AxoStep; + END_VAR + + METHOD PRIVATE UseInSequencer + + Sequencer.Run(THIS); + Sequencer.Open(); + Sequencer.SequenceMode := eAxoSequenceMode#RunOnce; + + IF(Steps[0].Execute(Sequencer, 'Restore')) THEN + ActivateManualControl := FALSE; + ExampleRobot.Config.InfoTime := LTIME#2S; + ExampleRobot.Config.TaskTimeout := LTIME#0S; + ExampleRobot.Config.ErrorTime := LTIME#0S; + ExampleRobot.Restore(); + Sequencer.MoveNext(); + END_IF; + + IF(Steps[1].Execute(Sequencer, 'Start at main')) THEN + IF(ExampleRobot.StartAtMain().IsDone()) THEN + Sequencer.MoveNext(); + END_IF; + END_IF; + + IF(Steps[2].Execute(Sequencer, 'Start motors and program')) THEN + IF(ExampleRobot.StartMotorsAndProgram().IsDone()) THEN + Sequencer.MoveNext(); + END_IF; + END_IF; + + IF(Steps[3].Execute(Sequencer, 'Move to position 100')) THEN + movementParams.ActionNo := BYTE#100; + movementParams.GlobalSpeed := BYTE#5; + movementParams.ToolNo := BYTE#10; + movementParams.WorkobjectNo := BYTE#15; + movementParams.PointNo := BYTE#20; + movementParams.UserSpecSpeed1 := INT#25; + movementParams.UserSpecSpeed2 := INT#30; + movementParams.Coordinates.X := REAL#-1.2; + movementParams.Coordinates.Y := REAL#2.3; + movementParams.Coordinates.Z := REAL#3.4; + movementParams.Coordinates.Rx := REAL#4.5; + movementParams.Coordinates.Ry := REAL#5.6; + movementParams.Coordinates.Rz := REAL#6.7; + + IF(ExampleRobot.StartMovements(movementParams).IsDone()) THEN + ExampleRobot.StartMovementsTask.Restore(); + Sequencer.MoveNext(); + END_IF; + END_IF; + + IF(Steps[4].Execute(Sequencer, 'Move to position 1')) THEN + movementParams.ActionNo := BYTE#1; + + IF(ExampleRobot.StartMovements(movementParams).IsDone()) THEN + ExampleRobot.StartMovementsTask.Restore(); + Sequencer.MoveNext(); + END_IF; + END_IF; + + IF(Steps[5].Execute(Sequencer, 'Move to position 3')) THEN + movementParams.ActionNo := BYTE#3; + + IF(ExampleRobot.StartMovements(movementParams).IsBusy() AND Sequencer.CurrentStep.Duration >= T#500ms) THEN + Sequencer.MoveNext(); + END_IF; + END_IF; + + IF(Steps[6].Execute(Sequencer, 'Stop during movement')) THEN + ExampleRobot.StartMovements(movementParams); + IF(ExampleRobot.StopMovements().IsDone()) THEN + Sequencer.MoveNext(); + END_IF; + END_IF; + + IF(Steps[7].Execute(Sequencer, '<#Unlocking and opening the robotic cell#>')) THEN + ExampleRobot.StartMovements(movementParams); + IF (Sequencer.CurrentStep.Duration >= T#1s) THEN + Sequencer.MoveNext(); + END_IF; + END_IF; + + IF (Steps[8].Execute(Sequencer, '<#Closing and locking the robotic cell#>')) THEN + ExampleRobot.StartMovements(movementParams); + IF (Sequencer.CurrentStep.Duration >= T#1s) THEN + Sequencer.MoveNext(); + END_IF; + END_IF; + + IF(Steps[9].Execute(Sequencer, 'Start motors and program')) THEN + ExampleRobot.StartMovements(movementParams); + IF(ExampleRobot.StartMotorsAndProgram().IsDone() AND Sequencer.CurrentStep.Duration >= T#1s) THEN + Sequencer.MoveNext(); + END_IF; + END_IF; + + IF(Steps[10].Execute(Sequencer, 'Continue to position 3')) THEN + ExampleRobot.StartMovements(movementParams); + IF(ExampleRobot.StartMovementsTask.IsDone()) THEN + ExampleRobot.StartMovementsTask.Restore(); + Sequencer.MoveNext(); + END_IF; + END_IF; + + IF(Steps[11].Execute(Sequencer, 'Move to position 100')) THEN + movementParams.ActionNo := BYTE#100; + + IF(ExampleRobot.StartMovements(movementParams).IsDone()) THEN + ExampleRobot.StartMovementsTask.Restore(); + Sequencer.MoveNext(); + END_IF; + END_IF; + + IF(Steps[12].Execute(Sequencer, 'Move to position 1')) THEN + movementParams.ActionNo := BYTE#1; + + IF(ExampleRobot.StartMovements(movementParams).IsDone()) THEN + ExampleRobot.StartMovementsTask.Restore(); + Sequencer.MoveNext(); + END_IF; + END_IF; + + IF(Steps[13].Execute(Sequencer, 'Stop movement and program')) THEN + IF(ExampleRobot.StopMovementsAndProgram().IsDone()) THEN + Sequencer.MoveNext(); + END_IF; + END_IF; + + IF(Steps[14].Execute(Sequencer, 'Stop motors')) THEN + IF(ExampleRobot.StopMotors().IsDone()) THEN + Sequencer.MoveNext(); + END_IF; + END_IF; + + IF(Steps[15].Execute(Sequencer, 'Reset all outputs')) THEN + IF(ExampleRobot.ResetAllOutputs().IsDone()) THEN + Sequencer.MoveNext(); + END_IF; + END_IF; + + IF(Steps[16].Execute(Sequencer, 'Start motors, program and movements combined')) THEN + IF(ExampleRobot.StartMotorsProgramAndMovements(movementParams).IsDone()) THEN + Sequencer.MoveNext(); + END_IF; + END_IF; + + IF(Steps[17].Execute(Sequencer, 'Stop program')) THEN + IF(ExampleRobot.StopProgram().IsDone()) THEN + Sequencer.MoveNext(); + END_IF; + END_IF; + + IF(Steps[18].Execute(Sequencer, 'Start program')) THEN + IF(ExampleRobot.StartProgram().IsDone()) THEN + Sequencer.MoveNext(); + END_IF; + END_IF; + + IF(Steps[19].Execute(Sequencer, 'Restore')) THEN + ExampleRobot.Restore(); + Sequencer.CompleteSequence(); + END_IF; + END_METHOD + + // + END_CLASS +END_NAMESPACE diff --git a/src/showcase/app/src/components.kuka.robotics/Documentation/KukaRobotics.st b/src/showcase/app/src/components.kuka.robotics/Documentation/KukaRobotics.st index bc4839a3a..4626dda6d 100644 --- a/src/showcase/app/src/components.kuka.robotics/Documentation/KukaRobotics.st +++ b/src/showcase/app/src/components.kuka.robotics/Documentation/KukaRobotics.st @@ -5,12 +5,14 @@ NAMESPACE AXOpen.Components.Kuka.Robotics _rootObject : AxoObject; axoKrc4_v_5_x_x : AxoKrc4_v_5_x_x_Showcase; axoKrc4_v_5_x_x_2 : AxoKrc4_v_5_x_x_Showcase2; + axoKrc4_v_5_x_x_krc5 : AxoKrc4_v_5_x_x_Krc5Showcase; END_VAR METHOD PUBLIC Execute _rootObject.Run(THIS); axoKrc4_v_5_x_x.Run(_rootObject); axoKrc4_v_5_x_x_2.Run(_rootObject); + axoKrc4_v_5_x_x_krc5.Run(_rootObject); END_METHOD END_CLASS END_NAMESPACE \ No newline at end of file From 08028a790296b1c5a488119aec56092a7a21ea6f Mon Sep 17 00:00:00 2001 From: TK <61820360+TomKovac@users.noreply.github.com> Date: Tue, 5 May 2026 13:46:43 +0200 Subject: [PATCH 5/5] done --- .../SystemConstants/plc_line_HwIdentifiers.st | 10 + .../SystemConstants/plc_line_IoAddresses.st | 1038 +++ .../hwc.gen/plc_line.HardwareIdentifiers.json | 40 + .../app/hwc/hwc.gen/plc_line.IoAddresses.json | 6169 +++++++++++++++++ src/showcase/app/hwc/plc_line.hwl.yml | 2 +- src/showcase/app/src/IO/HwIdentifierList.st | 14 +- src/showcase/app/src/IO/HwIdentifiers.st | 12 +- src/showcase/app/src/IO/Inputs.st | 3 + src/showcase/app/src/IO/IoStructures.st | 1038 +++ src/showcase/app/src/IO/Outputs.st | 2 + src/traversals/apax/apax.yml | 51 + 11 files changed, 8375 insertions(+), 4 deletions(-) create mode 100644 src/traversals/apax/apax.yml diff --git a/src/showcase/app/SystemConstants/plc_line_HwIdentifiers.st b/src/showcase/app/SystemConstants/plc_line_HwIdentifiers.st index 3708c5ab6..5ec887d1e 100644 --- a/src/showcase/app/SystemConstants/plc_line_HwIdentifiers.st +++ b/src/showcase/app/SystemConstants/plc_line_HwIdentifiers.st @@ -272,6 +272,16 @@ CONFIGURATION HardwareIDs kuka_rb1_kuka_rb1_Interface1_HwID : UINT := UINT#660; kuka_rb1_kuka_rb1_Interface1_Port_1_HwID : UINT := UINT#662; kuka_rb1_kuka_rb1_KRC4_ProfiNet_5_0_HwID : UINT := UINT#666; + kuka_rb2_HwID : UINT := UINT#686; + kuka_rb2_DIO512_512_digital_in__and_outputs_HwID : UINT := UINT#693; + kuka_rb2_Rack_HwID : UINT := UINT#691; + kuka_rb2_kuka_rb2_HwID : UINT := UINT#692; + kuka_rb2_kuka_rb2_Interface1_HwID : UINT := UINT#685; + kuka_rb2_kuka_rb2_Interface1_Port_1_HwID : UINT := UINT#687; + kuka_rb2_kuka_rb2_Interface1_Port_2_HwID : UINT := UINT#688; + kuka_rb2_kuka_rb2_Interface1_Port_3_HwID : UINT := UINT#689; + kuka_rb2_kuka_rb2_Interface1_Port_4_HwID : UINT := UINT#690; + kuka_rb2_kuka_rb2_KUKA_PROFINET_6_0_HwID : UINT := UINT#694; mitsubishi_tz535_robot_HwID : UINT := UINT#653; mitsubishi_tz535_robot_In_Out_64_byte_In_Out__64_byte_HwID : UINT := UINT#658; mitsubishi_tz535_robot_Rack_HwID : UINT := UINT#656; diff --git a/src/showcase/app/SystemConstants/plc_line_IoAddresses.st b/src/showcase/app/SystemConstants/plc_line_IoAddresses.st index 95a5896d2..ba35b29ff 100644 --- a/src/showcase/app/SystemConstants/plc_line_IoAddresses.st +++ b/src/showcase/app/SystemConstants/plc_line_IoAddresses.st @@ -475,6 +475,10 @@ CONFIGURATION IoAddresses kuka_rb1_DIO512_Input AT %IB5833 : kuka_rb1_DIO512_Input_Layout; kuka_rb1_DIO512_Output AT %QB3575 : kuka_rb1_DIO512_Output_Layout; + // Module kuka_rb2/DIO512 + kuka_rb2_DIO512_Input AT %IB6029 : kuka_rb2_DIO512_Input_Layout; + kuka_rb2_DIO512_Output AT %QB3767 : kuka_rb2_DIO512_Output_Layout; + // Module mitsubishi_tz535_robot/In_Out_64_byte mitsubishi_tz535_robot_In_Out_64_byte_Input AT %IB5769 : mitsubishi_tz535_robot_In_Out_64_byte_Input_Layout; mitsubishi_tz535_robot_In_Out_64_byte_Output AT %QB3511 : mitsubishi_tz535_robot_In_Out_64_byte_Output_Layout; @@ -6205,6 +6209,1040 @@ TYPE END_STRUCT; END_TYPE +TYPE + kuka_rb2_DIO512_Input_Layout : STRUCT + Signals_0_0 AT %X0.0 : BOOL; + Signals_0_1 AT %X0.1 : BOOL; + Signals_0_2 AT %X0.2 : BOOL; + Signals_0_3 AT %X0.3 : BOOL; + Signals_0_4 AT %X0.4 : BOOL; + Signals_0_5 AT %X0.5 : BOOL; + Signals_0_6 AT %X0.6 : BOOL; + Signals_0_7 AT %X0.7 : BOOL; + Signals_1_0 AT %X1.0 : BOOL; + Signals_1_1 AT %X1.1 : BOOL; + Signals_1_2 AT %X1.2 : BOOL; + Signals_1_3 AT %X1.3 : BOOL; + Signals_1_4 AT %X1.4 : BOOL; + Signals_1_5 AT %X1.5 : BOOL; + Signals_1_6 AT %X1.6 : BOOL; + Signals_1_7 AT %X1.7 : BOOL; + Signals_2_0 AT %X2.0 : BOOL; + Signals_2_1 AT %X2.1 : BOOL; + Signals_2_2 AT %X2.2 : BOOL; + Signals_2_3 AT %X2.3 : BOOL; + Signals_2_4 AT %X2.4 : BOOL; + Signals_2_5 AT %X2.5 : BOOL; + Signals_2_6 AT %X2.6 : BOOL; + Signals_2_7 AT %X2.7 : BOOL; + Signals_3_0 AT %X3.0 : BOOL; + Signals_3_1 AT %X3.1 : BOOL; + Signals_3_2 AT %X3.2 : BOOL; + Signals_3_3 AT %X3.3 : BOOL; + Signals_3_4 AT %X3.4 : BOOL; + Signals_3_5 AT %X3.5 : BOOL; + Signals_3_6 AT %X3.6 : BOOL; + Signals_3_7 AT %X3.7 : BOOL; + Signals_4_0 AT %X4.0 : BOOL; + Signals_4_1 AT %X4.1 : BOOL; + Signals_4_2 AT %X4.2 : BOOL; + Signals_4_3 AT %X4.3 : BOOL; + Signals_4_4 AT %X4.4 : BOOL; + Signals_4_5 AT %X4.5 : BOOL; + Signals_4_6 AT %X4.6 : BOOL; + Signals_4_7 AT %X4.7 : BOOL; + Signals_5_0 AT %X5.0 : BOOL; + Signals_5_1 AT %X5.1 : BOOL; + Signals_5_2 AT %X5.2 : BOOL; + Signals_5_3 AT %X5.3 : BOOL; + Signals_5_4 AT %X5.4 : BOOL; + Signals_5_5 AT %X5.5 : BOOL; + Signals_5_6 AT %X5.6 : BOOL; + Signals_5_7 AT %X5.7 : BOOL; + Signals_6_0 AT %X6.0 : BOOL; + Signals_6_1 AT %X6.1 : BOOL; + Signals_6_2 AT %X6.2 : BOOL; + Signals_6_3 AT %X6.3 : BOOL; + Signals_6_4 AT %X6.4 : BOOL; + Signals_6_5 AT %X6.5 : BOOL; + Signals_6_6 AT %X6.6 : BOOL; + Signals_6_7 AT %X6.7 : BOOL; + Signals_7_0 AT %X7.0 : BOOL; + Signals_7_1 AT %X7.1 : BOOL; + Signals_7_2 AT %X7.2 : BOOL; + Signals_7_3 AT %X7.3 : BOOL; + Signals_7_4 AT %X7.4 : BOOL; + Signals_7_5 AT %X7.5 : BOOL; + Signals_7_6 AT %X7.6 : BOOL; + Signals_7_7 AT %X7.7 : BOOL; + Signals_8_0 AT %X8.0 : BOOL; + Signals_8_1 AT %X8.1 : BOOL; + Signals_8_2 AT %X8.2 : BOOL; + Signals_8_3 AT %X8.3 : BOOL; + Signals_8_4 AT %X8.4 : BOOL; + Signals_8_5 AT %X8.5 : BOOL; + Signals_8_6 AT %X8.6 : BOOL; + Signals_8_7 AT %X8.7 : BOOL; + Signals_9_0 AT %X9.0 : BOOL; + Signals_9_1 AT %X9.1 : BOOL; + Signals_9_2 AT %X9.2 : BOOL; + Signals_9_3 AT %X9.3 : BOOL; + Signals_9_4 AT %X9.4 : BOOL; + Signals_9_5 AT %X9.5 : BOOL; + Signals_9_6 AT %X9.6 : BOOL; + Signals_9_7 AT %X9.7 : BOOL; + Signals_10_0 AT %X10.0 : BOOL; + Signals_10_1 AT %X10.1 : BOOL; + Signals_10_2 AT %X10.2 : BOOL; + Signals_10_3 AT %X10.3 : BOOL; + Signals_10_4 AT %X10.4 : BOOL; + Signals_10_5 AT %X10.5 : BOOL; + Signals_10_6 AT %X10.6 : BOOL; + Signals_10_7 AT %X10.7 : BOOL; + Signals_11_0 AT %X11.0 : BOOL; + Signals_11_1 AT %X11.1 : BOOL; + Signals_11_2 AT %X11.2 : BOOL; + Signals_11_3 AT %X11.3 : BOOL; + Signals_11_4 AT %X11.4 : BOOL; + Signals_11_5 AT %X11.5 : BOOL; + Signals_11_6 AT %X11.6 : BOOL; + Signals_11_7 AT %X11.7 : BOOL; + Signals_12_0 AT %X12.0 : BOOL; + Signals_12_1 AT %X12.1 : BOOL; + Signals_12_2 AT %X12.2 : BOOL; + Signals_12_3 AT %X12.3 : BOOL; + Signals_12_4 AT %X12.4 : BOOL; + Signals_12_5 AT %X12.5 : BOOL; + Signals_12_6 AT %X12.6 : BOOL; + Signals_12_7 AT %X12.7 : BOOL; + Signals_13_0 AT %X13.0 : BOOL; + Signals_13_1 AT %X13.1 : BOOL; + Signals_13_2 AT %X13.2 : BOOL; + Signals_13_3 AT %X13.3 : BOOL; + Signals_13_4 AT %X13.4 : BOOL; + Signals_13_5 AT %X13.5 : BOOL; + Signals_13_6 AT %X13.6 : BOOL; + Signals_13_7 AT %X13.7 : BOOL; + Signals_14_0 AT %X14.0 : BOOL; + Signals_14_1 AT %X14.1 : BOOL; + Signals_14_2 AT %X14.2 : BOOL; + Signals_14_3 AT %X14.3 : BOOL; + Signals_14_4 AT %X14.4 : BOOL; + Signals_14_5 AT %X14.5 : BOOL; + Signals_14_6 AT %X14.6 : BOOL; + Signals_14_7 AT %X14.7 : BOOL; + Signals_15_0 AT %X15.0 : BOOL; + Signals_15_1 AT %X15.1 : BOOL; + Signals_15_2 AT %X15.2 : BOOL; + Signals_15_3 AT %X15.3 : BOOL; + Signals_15_4 AT %X15.4 : BOOL; + Signals_15_5 AT %X15.5 : BOOL; + Signals_15_6 AT %X15.6 : BOOL; + Signals_15_7 AT %X15.7 : BOOL; + Signals_16_0 AT %X16.0 : BOOL; + Signals_16_1 AT %X16.1 : BOOL; + Signals_16_2 AT %X16.2 : BOOL; + Signals_16_3 AT %X16.3 : BOOL; + Signals_16_4 AT %X16.4 : BOOL; + Signals_16_5 AT %X16.5 : BOOL; + Signals_16_6 AT %X16.6 : BOOL; + Signals_16_7 AT %X16.7 : BOOL; + Signals_17_0 AT %X17.0 : BOOL; + Signals_17_1 AT %X17.1 : BOOL; + Signals_17_2 AT %X17.2 : BOOL; + Signals_17_3 AT %X17.3 : BOOL; + Signals_17_4 AT %X17.4 : BOOL; + Signals_17_5 AT %X17.5 : BOOL; + Signals_17_6 AT %X17.6 : BOOL; + Signals_17_7 AT %X17.7 : BOOL; + Signals_18_0 AT %X18.0 : BOOL; + Signals_18_1 AT %X18.1 : BOOL; + Signals_18_2 AT %X18.2 : BOOL; + Signals_18_3 AT %X18.3 : BOOL; + Signals_18_4 AT %X18.4 : BOOL; + Signals_18_5 AT %X18.5 : BOOL; + Signals_18_6 AT %X18.6 : BOOL; + Signals_18_7 AT %X18.7 : BOOL; + Signals_19_0 AT %X19.0 : BOOL; + Signals_19_1 AT %X19.1 : BOOL; + Signals_19_2 AT %X19.2 : BOOL; + Signals_19_3 AT %X19.3 : BOOL; + Signals_19_4 AT %X19.4 : BOOL; + Signals_19_5 AT %X19.5 : BOOL; + Signals_19_6 AT %X19.6 : BOOL; + Signals_19_7 AT %X19.7 : BOOL; + Signals_20_0 AT %X20.0 : BOOL; + Signals_20_1 AT %X20.1 : BOOL; + Signals_20_2 AT %X20.2 : BOOL; + Signals_20_3 AT %X20.3 : BOOL; + Signals_20_4 AT %X20.4 : BOOL; + Signals_20_5 AT %X20.5 : BOOL; + Signals_20_6 AT %X20.6 : BOOL; + Signals_20_7 AT %X20.7 : BOOL; + Signals_21_0 AT %X21.0 : BOOL; + Signals_21_1 AT %X21.1 : BOOL; + Signals_21_2 AT %X21.2 : BOOL; + Signals_21_3 AT %X21.3 : BOOL; + Signals_21_4 AT %X21.4 : BOOL; + Signals_21_5 AT %X21.5 : BOOL; + Signals_21_6 AT %X21.6 : BOOL; + Signals_21_7 AT %X21.7 : BOOL; + Signals_22_0 AT %X22.0 : BOOL; + Signals_22_1 AT %X22.1 : BOOL; + Signals_22_2 AT %X22.2 : BOOL; + Signals_22_3 AT %X22.3 : BOOL; + Signals_22_4 AT %X22.4 : BOOL; + Signals_22_5 AT %X22.5 : BOOL; + Signals_22_6 AT %X22.6 : BOOL; + Signals_22_7 AT %X22.7 : BOOL; + Signals_23_0 AT %X23.0 : BOOL; + Signals_23_1 AT %X23.1 : BOOL; + Signals_23_2 AT %X23.2 : BOOL; + Signals_23_3 AT %X23.3 : BOOL; + Signals_23_4 AT %X23.4 : BOOL; + Signals_23_5 AT %X23.5 : BOOL; + Signals_23_6 AT %X23.6 : BOOL; + Signals_23_7 AT %X23.7 : BOOL; + Signals_24_0 AT %X24.0 : BOOL; + Signals_24_1 AT %X24.1 : BOOL; + Signals_24_2 AT %X24.2 : BOOL; + Signals_24_3 AT %X24.3 : BOOL; + Signals_24_4 AT %X24.4 : BOOL; + Signals_24_5 AT %X24.5 : BOOL; + Signals_24_6 AT %X24.6 : BOOL; + Signals_24_7 AT %X24.7 : BOOL; + Signals_25_0 AT %X25.0 : BOOL; + Signals_25_1 AT %X25.1 : BOOL; + Signals_25_2 AT %X25.2 : BOOL; + Signals_25_3 AT %X25.3 : BOOL; + Signals_25_4 AT %X25.4 : BOOL; + Signals_25_5 AT %X25.5 : BOOL; + Signals_25_6 AT %X25.6 : BOOL; + Signals_25_7 AT %X25.7 : BOOL; + Signals_26_0 AT %X26.0 : BOOL; + Signals_26_1 AT %X26.1 : BOOL; + Signals_26_2 AT %X26.2 : BOOL; + Signals_26_3 AT %X26.3 : BOOL; + Signals_26_4 AT %X26.4 : BOOL; + Signals_26_5 AT %X26.5 : BOOL; + Signals_26_6 AT %X26.6 : BOOL; + Signals_26_7 AT %X26.7 : BOOL; + Signals_27_0 AT %X27.0 : BOOL; + Signals_27_1 AT %X27.1 : BOOL; + Signals_27_2 AT %X27.2 : BOOL; + Signals_27_3 AT %X27.3 : BOOL; + Signals_27_4 AT %X27.4 : BOOL; + Signals_27_5 AT %X27.5 : BOOL; + Signals_27_6 AT %X27.6 : BOOL; + Signals_27_7 AT %X27.7 : BOOL; + Signals_28_0 AT %X28.0 : BOOL; + Signals_28_1 AT %X28.1 : BOOL; + Signals_28_2 AT %X28.2 : BOOL; + Signals_28_3 AT %X28.3 : BOOL; + Signals_28_4 AT %X28.4 : BOOL; + Signals_28_5 AT %X28.5 : BOOL; + Signals_28_6 AT %X28.6 : BOOL; + Signals_28_7 AT %X28.7 : BOOL; + Signals_29_0 AT %X29.0 : BOOL; + Signals_29_1 AT %X29.1 : BOOL; + Signals_29_2 AT %X29.2 : BOOL; + Signals_29_3 AT %X29.3 : BOOL; + Signals_29_4 AT %X29.4 : BOOL; + Signals_29_5 AT %X29.5 : BOOL; + Signals_29_6 AT %X29.6 : BOOL; + Signals_29_7 AT %X29.7 : BOOL; + Signals_30_0 AT %X30.0 : BOOL; + Signals_30_1 AT %X30.1 : BOOL; + Signals_30_2 AT %X30.2 : BOOL; + Signals_30_3 AT %X30.3 : BOOL; + Signals_30_4 AT %X30.4 : BOOL; + Signals_30_5 AT %X30.5 : BOOL; + Signals_30_6 AT %X30.6 : BOOL; + Signals_30_7 AT %X30.7 : BOOL; + Signals_31_0 AT %X31.0 : BOOL; + Signals_31_1 AT %X31.1 : BOOL; + Signals_31_2 AT %X31.2 : BOOL; + Signals_31_3 AT %X31.3 : BOOL; + Signals_31_4 AT %X31.4 : BOOL; + Signals_31_5 AT %X31.5 : BOOL; + Signals_31_6 AT %X31.6 : BOOL; + Signals_31_7 AT %X31.7 : BOOL; + Signals_32_0 AT %X32.0 : BOOL; + Signals_32_1 AT %X32.1 : BOOL; + Signals_32_2 AT %X32.2 : BOOL; + Signals_32_3 AT %X32.3 : BOOL; + Signals_32_4 AT %X32.4 : BOOL; + Signals_32_5 AT %X32.5 : BOOL; + Signals_32_6 AT %X32.6 : BOOL; + Signals_32_7 AT %X32.7 : BOOL; + Signals_33_0 AT %X33.0 : BOOL; + Signals_33_1 AT %X33.1 : BOOL; + Signals_33_2 AT %X33.2 : BOOL; + Signals_33_3 AT %X33.3 : BOOL; + Signals_33_4 AT %X33.4 : BOOL; + Signals_33_5 AT %X33.5 : BOOL; + Signals_33_6 AT %X33.6 : BOOL; + Signals_33_7 AT %X33.7 : BOOL; + Signals_34_0 AT %X34.0 : BOOL; + Signals_34_1 AT %X34.1 : BOOL; + Signals_34_2 AT %X34.2 : BOOL; + Signals_34_3 AT %X34.3 : BOOL; + Signals_34_4 AT %X34.4 : BOOL; + Signals_34_5 AT %X34.5 : BOOL; + Signals_34_6 AT %X34.6 : BOOL; + Signals_34_7 AT %X34.7 : BOOL; + Signals_35_0 AT %X35.0 : BOOL; + Signals_35_1 AT %X35.1 : BOOL; + Signals_35_2 AT %X35.2 : BOOL; + Signals_35_3 AT %X35.3 : BOOL; + Signals_35_4 AT %X35.4 : BOOL; + Signals_35_5 AT %X35.5 : BOOL; + Signals_35_6 AT %X35.6 : BOOL; + Signals_35_7 AT %X35.7 : BOOL; + Signals_36_0 AT %X36.0 : BOOL; + Signals_36_1 AT %X36.1 : BOOL; + Signals_36_2 AT %X36.2 : BOOL; + Signals_36_3 AT %X36.3 : BOOL; + Signals_36_4 AT %X36.4 : BOOL; + Signals_36_5 AT %X36.5 : BOOL; + Signals_36_6 AT %X36.6 : BOOL; + Signals_36_7 AT %X36.7 : BOOL; + Signals_37_0 AT %X37.0 : BOOL; + Signals_37_1 AT %X37.1 : BOOL; + Signals_37_2 AT %X37.2 : BOOL; + Signals_37_3 AT %X37.3 : BOOL; + Signals_37_4 AT %X37.4 : BOOL; + Signals_37_5 AT %X37.5 : BOOL; + Signals_37_6 AT %X37.6 : BOOL; + Signals_37_7 AT %X37.7 : BOOL; + Signals_38_0 AT %X38.0 : BOOL; + Signals_38_1 AT %X38.1 : BOOL; + Signals_38_2 AT %X38.2 : BOOL; + Signals_38_3 AT %X38.3 : BOOL; + Signals_38_4 AT %X38.4 : BOOL; + Signals_38_5 AT %X38.5 : BOOL; + Signals_38_6 AT %X38.6 : BOOL; + Signals_38_7 AT %X38.7 : BOOL; + Signals_39_0 AT %X39.0 : BOOL; + Signals_39_1 AT %X39.1 : BOOL; + Signals_39_2 AT %X39.2 : BOOL; + Signals_39_3 AT %X39.3 : BOOL; + Signals_39_4 AT %X39.4 : BOOL; + Signals_39_5 AT %X39.5 : BOOL; + Signals_39_6 AT %X39.6 : BOOL; + Signals_39_7 AT %X39.7 : BOOL; + Signals_40_0 AT %X40.0 : BOOL; + Signals_40_1 AT %X40.1 : BOOL; + Signals_40_2 AT %X40.2 : BOOL; + Signals_40_3 AT %X40.3 : BOOL; + Signals_40_4 AT %X40.4 : BOOL; + Signals_40_5 AT %X40.5 : BOOL; + Signals_40_6 AT %X40.6 : BOOL; + Signals_40_7 AT %X40.7 : BOOL; + Signals_41_0 AT %X41.0 : BOOL; + Signals_41_1 AT %X41.1 : BOOL; + Signals_41_2 AT %X41.2 : BOOL; + Signals_41_3 AT %X41.3 : BOOL; + Signals_41_4 AT %X41.4 : BOOL; + Signals_41_5 AT %X41.5 : BOOL; + Signals_41_6 AT %X41.6 : BOOL; + Signals_41_7 AT %X41.7 : BOOL; + Signals_42_0 AT %X42.0 : BOOL; + Signals_42_1 AT %X42.1 : BOOL; + Signals_42_2 AT %X42.2 : BOOL; + Signals_42_3 AT %X42.3 : BOOL; + Signals_42_4 AT %X42.4 : BOOL; + Signals_42_5 AT %X42.5 : BOOL; + Signals_42_6 AT %X42.6 : BOOL; + Signals_42_7 AT %X42.7 : BOOL; + Signals_43_0 AT %X43.0 : BOOL; + Signals_43_1 AT %X43.1 : BOOL; + Signals_43_2 AT %X43.2 : BOOL; + Signals_43_3 AT %X43.3 : BOOL; + Signals_43_4 AT %X43.4 : BOOL; + Signals_43_5 AT %X43.5 : BOOL; + Signals_43_6 AT %X43.6 : BOOL; + Signals_43_7 AT %X43.7 : BOOL; + Signals_44_0 AT %X44.0 : BOOL; + Signals_44_1 AT %X44.1 : BOOL; + Signals_44_2 AT %X44.2 : BOOL; + Signals_44_3 AT %X44.3 : BOOL; + Signals_44_4 AT %X44.4 : BOOL; + Signals_44_5 AT %X44.5 : BOOL; + Signals_44_6 AT %X44.6 : BOOL; + Signals_44_7 AT %X44.7 : BOOL; + Signals_45_0 AT %X45.0 : BOOL; + Signals_45_1 AT %X45.1 : BOOL; + Signals_45_2 AT %X45.2 : BOOL; + Signals_45_3 AT %X45.3 : BOOL; + Signals_45_4 AT %X45.4 : BOOL; + Signals_45_5 AT %X45.5 : BOOL; + Signals_45_6 AT %X45.6 : BOOL; + Signals_45_7 AT %X45.7 : BOOL; + Signals_46_0 AT %X46.0 : BOOL; + Signals_46_1 AT %X46.1 : BOOL; + Signals_46_2 AT %X46.2 : BOOL; + Signals_46_3 AT %X46.3 : BOOL; + Signals_46_4 AT %X46.4 : BOOL; + Signals_46_5 AT %X46.5 : BOOL; + Signals_46_6 AT %X46.6 : BOOL; + Signals_46_7 AT %X46.7 : BOOL; + Signals_47_0 AT %X47.0 : BOOL; + Signals_47_1 AT %X47.1 : BOOL; + Signals_47_2 AT %X47.2 : BOOL; + Signals_47_3 AT %X47.3 : BOOL; + Signals_47_4 AT %X47.4 : BOOL; + Signals_47_5 AT %X47.5 : BOOL; + Signals_47_6 AT %X47.6 : BOOL; + Signals_47_7 AT %X47.7 : BOOL; + Signals_48_0 AT %X48.0 : BOOL; + Signals_48_1 AT %X48.1 : BOOL; + Signals_48_2 AT %X48.2 : BOOL; + Signals_48_3 AT %X48.3 : BOOL; + Signals_48_4 AT %X48.4 : BOOL; + Signals_48_5 AT %X48.5 : BOOL; + Signals_48_6 AT %X48.6 : BOOL; + Signals_48_7 AT %X48.7 : BOOL; + Signals_49_0 AT %X49.0 : BOOL; + Signals_49_1 AT %X49.1 : BOOL; + Signals_49_2 AT %X49.2 : BOOL; + Signals_49_3 AT %X49.3 : BOOL; + Signals_49_4 AT %X49.4 : BOOL; + Signals_49_5 AT %X49.5 : BOOL; + Signals_49_6 AT %X49.6 : BOOL; + Signals_49_7 AT %X49.7 : BOOL; + Signals_50_0 AT %X50.0 : BOOL; + Signals_50_1 AT %X50.1 : BOOL; + Signals_50_2 AT %X50.2 : BOOL; + Signals_50_3 AT %X50.3 : BOOL; + Signals_50_4 AT %X50.4 : BOOL; + Signals_50_5 AT %X50.5 : BOOL; + Signals_50_6 AT %X50.6 : BOOL; + Signals_50_7 AT %X50.7 : BOOL; + Signals_51_0 AT %X51.0 : BOOL; + Signals_51_1 AT %X51.1 : BOOL; + Signals_51_2 AT %X51.2 : BOOL; + Signals_51_3 AT %X51.3 : BOOL; + Signals_51_4 AT %X51.4 : BOOL; + Signals_51_5 AT %X51.5 : BOOL; + Signals_51_6 AT %X51.6 : BOOL; + Signals_51_7 AT %X51.7 : BOOL; + Signals_52_0 AT %X52.0 : BOOL; + Signals_52_1 AT %X52.1 : BOOL; + Signals_52_2 AT %X52.2 : BOOL; + Signals_52_3 AT %X52.3 : BOOL; + Signals_52_4 AT %X52.4 : BOOL; + Signals_52_5 AT %X52.5 : BOOL; + Signals_52_6 AT %X52.6 : BOOL; + Signals_52_7 AT %X52.7 : BOOL; + Signals_53_0 AT %X53.0 : BOOL; + Signals_53_1 AT %X53.1 : BOOL; + Signals_53_2 AT %X53.2 : BOOL; + Signals_53_3 AT %X53.3 : BOOL; + Signals_53_4 AT %X53.4 : BOOL; + Signals_53_5 AT %X53.5 : BOOL; + Signals_53_6 AT %X53.6 : BOOL; + Signals_53_7 AT %X53.7 : BOOL; + Signals_54_0 AT %X54.0 : BOOL; + Signals_54_1 AT %X54.1 : BOOL; + Signals_54_2 AT %X54.2 : BOOL; + Signals_54_3 AT %X54.3 : BOOL; + Signals_54_4 AT %X54.4 : BOOL; + Signals_54_5 AT %X54.5 : BOOL; + Signals_54_6 AT %X54.6 : BOOL; + Signals_54_7 AT %X54.7 : BOOL; + Signals_55_0 AT %X55.0 : BOOL; + Signals_55_1 AT %X55.1 : BOOL; + Signals_55_2 AT %X55.2 : BOOL; + Signals_55_3 AT %X55.3 : BOOL; + Signals_55_4 AT %X55.4 : BOOL; + Signals_55_5 AT %X55.5 : BOOL; + Signals_55_6 AT %X55.6 : BOOL; + Signals_55_7 AT %X55.7 : BOOL; + Signals_56_0 AT %X56.0 : BOOL; + Signals_56_1 AT %X56.1 : BOOL; + Signals_56_2 AT %X56.2 : BOOL; + Signals_56_3 AT %X56.3 : BOOL; + Signals_56_4 AT %X56.4 : BOOL; + Signals_56_5 AT %X56.5 : BOOL; + Signals_56_6 AT %X56.6 : BOOL; + Signals_56_7 AT %X56.7 : BOOL; + Signals_57_0 AT %X57.0 : BOOL; + Signals_57_1 AT %X57.1 : BOOL; + Signals_57_2 AT %X57.2 : BOOL; + Signals_57_3 AT %X57.3 : BOOL; + Signals_57_4 AT %X57.4 : BOOL; + Signals_57_5 AT %X57.5 : BOOL; + Signals_57_6 AT %X57.6 : BOOL; + Signals_57_7 AT %X57.7 : BOOL; + Signals_58_0 AT %X58.0 : BOOL; + Signals_58_1 AT %X58.1 : BOOL; + Signals_58_2 AT %X58.2 : BOOL; + Signals_58_3 AT %X58.3 : BOOL; + Signals_58_4 AT %X58.4 : BOOL; + Signals_58_5 AT %X58.5 : BOOL; + Signals_58_6 AT %X58.6 : BOOL; + Signals_58_7 AT %X58.7 : BOOL; + Signals_59_0 AT %X59.0 : BOOL; + Signals_59_1 AT %X59.1 : BOOL; + Signals_59_2 AT %X59.2 : BOOL; + Signals_59_3 AT %X59.3 : BOOL; + Signals_59_4 AT %X59.4 : BOOL; + Signals_59_5 AT %X59.5 : BOOL; + Signals_59_6 AT %X59.6 : BOOL; + Signals_59_7 AT %X59.7 : BOOL; + Signals_60_0 AT %X60.0 : BOOL; + Signals_60_1 AT %X60.1 : BOOL; + Signals_60_2 AT %X60.2 : BOOL; + Signals_60_3 AT %X60.3 : BOOL; + Signals_60_4 AT %X60.4 : BOOL; + Signals_60_5 AT %X60.5 : BOOL; + Signals_60_6 AT %X60.6 : BOOL; + Signals_60_7 AT %X60.7 : BOOL; + Signals_61_0 AT %X61.0 : BOOL; + Signals_61_1 AT %X61.1 : BOOL; + Signals_61_2 AT %X61.2 : BOOL; + Signals_61_3 AT %X61.3 : BOOL; + Signals_61_4 AT %X61.4 : BOOL; + Signals_61_5 AT %X61.5 : BOOL; + Signals_61_6 AT %X61.6 : BOOL; + Signals_61_7 AT %X61.7 : BOOL; + Signals_62_0 AT %X62.0 : BOOL; + Signals_62_1 AT %X62.1 : BOOL; + Signals_62_2 AT %X62.2 : BOOL; + Signals_62_3 AT %X62.3 : BOOL; + Signals_62_4 AT %X62.4 : BOOL; + Signals_62_5 AT %X62.5 : BOOL; + Signals_62_6 AT %X62.6 : BOOL; + Signals_62_7 AT %X62.7 : BOOL; + Signals_63_0 AT %X63.0 : BOOL; + Signals_63_1 AT %X63.1 : BOOL; + Signals_63_2 AT %X63.2 : BOOL; + Signals_63_3 AT %X63.3 : BOOL; + Signals_63_4 AT %X63.4 : BOOL; + Signals_63_5 AT %X63.5 : BOOL; + Signals_63_6 AT %X63.6 : BOOL; + Signals_63_7 AT %X63.7 : BOOL; + END_STRUCT; +END_TYPE + +TYPE + kuka_rb2_DIO512_Output_Layout : STRUCT + Signals_64_0 AT %X0.0 : BOOL; + Signals_64_1 AT %X0.1 : BOOL; + Signals_64_2 AT %X0.2 : BOOL; + Signals_64_3 AT %X0.3 : BOOL; + Signals_64_4 AT %X0.4 : BOOL; + Signals_64_5 AT %X0.5 : BOOL; + Signals_64_6 AT %X0.6 : BOOL; + Signals_64_7 AT %X0.7 : BOOL; + Signals_65_0 AT %X1.0 : BOOL; + Signals_65_1 AT %X1.1 : BOOL; + Signals_65_2 AT %X1.2 : BOOL; + Signals_65_3 AT %X1.3 : BOOL; + Signals_65_4 AT %X1.4 : BOOL; + Signals_65_5 AT %X1.5 : BOOL; + Signals_65_6 AT %X1.6 : BOOL; + Signals_65_7 AT %X1.7 : BOOL; + Signals_66_0 AT %X2.0 : BOOL; + Signals_66_1 AT %X2.1 : BOOL; + Signals_66_2 AT %X2.2 : BOOL; + Signals_66_3 AT %X2.3 : BOOL; + Signals_66_4 AT %X2.4 : BOOL; + Signals_66_5 AT %X2.5 : BOOL; + Signals_66_6 AT %X2.6 : BOOL; + Signals_66_7 AT %X2.7 : BOOL; + Signals_67_0 AT %X3.0 : BOOL; + Signals_67_1 AT %X3.1 : BOOL; + Signals_67_2 AT %X3.2 : BOOL; + Signals_67_3 AT %X3.3 : BOOL; + Signals_67_4 AT %X3.4 : BOOL; + Signals_67_5 AT %X3.5 : BOOL; + Signals_67_6 AT %X3.6 : BOOL; + Signals_67_7 AT %X3.7 : BOOL; + Signals_68_0 AT %X4.0 : BOOL; + Signals_68_1 AT %X4.1 : BOOL; + Signals_68_2 AT %X4.2 : BOOL; + Signals_68_3 AT %X4.3 : BOOL; + Signals_68_4 AT %X4.4 : BOOL; + Signals_68_5 AT %X4.5 : BOOL; + Signals_68_6 AT %X4.6 : BOOL; + Signals_68_7 AT %X4.7 : BOOL; + Signals_69_0 AT %X5.0 : BOOL; + Signals_69_1 AT %X5.1 : BOOL; + Signals_69_2 AT %X5.2 : BOOL; + Signals_69_3 AT %X5.3 : BOOL; + Signals_69_4 AT %X5.4 : BOOL; + Signals_69_5 AT %X5.5 : BOOL; + Signals_69_6 AT %X5.6 : BOOL; + Signals_69_7 AT %X5.7 : BOOL; + Signals_70_0 AT %X6.0 : BOOL; + Signals_70_1 AT %X6.1 : BOOL; + Signals_70_2 AT %X6.2 : BOOL; + Signals_70_3 AT %X6.3 : BOOL; + Signals_70_4 AT %X6.4 : BOOL; + Signals_70_5 AT %X6.5 : BOOL; + Signals_70_6 AT %X6.6 : BOOL; + Signals_70_7 AT %X6.7 : BOOL; + Signals_71_0 AT %X7.0 : BOOL; + Signals_71_1 AT %X7.1 : BOOL; + Signals_71_2 AT %X7.2 : BOOL; + Signals_71_3 AT %X7.3 : BOOL; + Signals_71_4 AT %X7.4 : BOOL; + Signals_71_5 AT %X7.5 : BOOL; + Signals_71_6 AT %X7.6 : BOOL; + Signals_71_7 AT %X7.7 : BOOL; + Signals_72_0 AT %X8.0 : BOOL; + Signals_72_1 AT %X8.1 : BOOL; + Signals_72_2 AT %X8.2 : BOOL; + Signals_72_3 AT %X8.3 : BOOL; + Signals_72_4 AT %X8.4 : BOOL; + Signals_72_5 AT %X8.5 : BOOL; + Signals_72_6 AT %X8.6 : BOOL; + Signals_72_7 AT %X8.7 : BOOL; + Signals_73_0 AT %X9.0 : BOOL; + Signals_73_1 AT %X9.1 : BOOL; + Signals_73_2 AT %X9.2 : BOOL; + Signals_73_3 AT %X9.3 : BOOL; + Signals_73_4 AT %X9.4 : BOOL; + Signals_73_5 AT %X9.5 : BOOL; + Signals_73_6 AT %X9.6 : BOOL; + Signals_73_7 AT %X9.7 : BOOL; + Signals_74_0 AT %X10.0 : BOOL; + Signals_74_1 AT %X10.1 : BOOL; + Signals_74_2 AT %X10.2 : BOOL; + Signals_74_3 AT %X10.3 : BOOL; + Signals_74_4 AT %X10.4 : BOOL; + Signals_74_5 AT %X10.5 : BOOL; + Signals_74_6 AT %X10.6 : BOOL; + Signals_74_7 AT %X10.7 : BOOL; + Signals_75_0 AT %X11.0 : BOOL; + Signals_75_1 AT %X11.1 : BOOL; + Signals_75_2 AT %X11.2 : BOOL; + Signals_75_3 AT %X11.3 : BOOL; + Signals_75_4 AT %X11.4 : BOOL; + Signals_75_5 AT %X11.5 : BOOL; + Signals_75_6 AT %X11.6 : BOOL; + Signals_75_7 AT %X11.7 : BOOL; + Signals_76_0 AT %X12.0 : BOOL; + Signals_76_1 AT %X12.1 : BOOL; + Signals_76_2 AT %X12.2 : BOOL; + Signals_76_3 AT %X12.3 : BOOL; + Signals_76_4 AT %X12.4 : BOOL; + Signals_76_5 AT %X12.5 : BOOL; + Signals_76_6 AT %X12.6 : BOOL; + Signals_76_7 AT %X12.7 : BOOL; + Signals_77_0 AT %X13.0 : BOOL; + Signals_77_1 AT %X13.1 : BOOL; + Signals_77_2 AT %X13.2 : BOOL; + Signals_77_3 AT %X13.3 : BOOL; + Signals_77_4 AT %X13.4 : BOOL; + Signals_77_5 AT %X13.5 : BOOL; + Signals_77_6 AT %X13.6 : BOOL; + Signals_77_7 AT %X13.7 : BOOL; + Signals_78_0 AT %X14.0 : BOOL; + Signals_78_1 AT %X14.1 : BOOL; + Signals_78_2 AT %X14.2 : BOOL; + Signals_78_3 AT %X14.3 : BOOL; + Signals_78_4 AT %X14.4 : BOOL; + Signals_78_5 AT %X14.5 : BOOL; + Signals_78_6 AT %X14.6 : BOOL; + Signals_78_7 AT %X14.7 : BOOL; + Signals_79_0 AT %X15.0 : BOOL; + Signals_79_1 AT %X15.1 : BOOL; + Signals_79_2 AT %X15.2 : BOOL; + Signals_79_3 AT %X15.3 : BOOL; + Signals_79_4 AT %X15.4 : BOOL; + Signals_79_5 AT %X15.5 : BOOL; + Signals_79_6 AT %X15.6 : BOOL; + Signals_79_7 AT %X15.7 : BOOL; + Signals_80_0 AT %X16.0 : BOOL; + Signals_80_1 AT %X16.1 : BOOL; + Signals_80_2 AT %X16.2 : BOOL; + Signals_80_3 AT %X16.3 : BOOL; + Signals_80_4 AT %X16.4 : BOOL; + Signals_80_5 AT %X16.5 : BOOL; + Signals_80_6 AT %X16.6 : BOOL; + Signals_80_7 AT %X16.7 : BOOL; + Signals_81_0 AT %X17.0 : BOOL; + Signals_81_1 AT %X17.1 : BOOL; + Signals_81_2 AT %X17.2 : BOOL; + Signals_81_3 AT %X17.3 : BOOL; + Signals_81_4 AT %X17.4 : BOOL; + Signals_81_5 AT %X17.5 : BOOL; + Signals_81_6 AT %X17.6 : BOOL; + Signals_81_7 AT %X17.7 : BOOL; + Signals_82_0 AT %X18.0 : BOOL; + Signals_82_1 AT %X18.1 : BOOL; + Signals_82_2 AT %X18.2 : BOOL; + Signals_82_3 AT %X18.3 : BOOL; + Signals_82_4 AT %X18.4 : BOOL; + Signals_82_5 AT %X18.5 : BOOL; + Signals_82_6 AT %X18.6 : BOOL; + Signals_82_7 AT %X18.7 : BOOL; + Signals_83_0 AT %X19.0 : BOOL; + Signals_83_1 AT %X19.1 : BOOL; + Signals_83_2 AT %X19.2 : BOOL; + Signals_83_3 AT %X19.3 : BOOL; + Signals_83_4 AT %X19.4 : BOOL; + Signals_83_5 AT %X19.5 : BOOL; + Signals_83_6 AT %X19.6 : BOOL; + Signals_83_7 AT %X19.7 : BOOL; + Signals_84_0 AT %X20.0 : BOOL; + Signals_84_1 AT %X20.1 : BOOL; + Signals_84_2 AT %X20.2 : BOOL; + Signals_84_3 AT %X20.3 : BOOL; + Signals_84_4 AT %X20.4 : BOOL; + Signals_84_5 AT %X20.5 : BOOL; + Signals_84_6 AT %X20.6 : BOOL; + Signals_84_7 AT %X20.7 : BOOL; + Signals_85_0 AT %X21.0 : BOOL; + Signals_85_1 AT %X21.1 : BOOL; + Signals_85_2 AT %X21.2 : BOOL; + Signals_85_3 AT %X21.3 : BOOL; + Signals_85_4 AT %X21.4 : BOOL; + Signals_85_5 AT %X21.5 : BOOL; + Signals_85_6 AT %X21.6 : BOOL; + Signals_85_7 AT %X21.7 : BOOL; + Signals_86_0 AT %X22.0 : BOOL; + Signals_86_1 AT %X22.1 : BOOL; + Signals_86_2 AT %X22.2 : BOOL; + Signals_86_3 AT %X22.3 : BOOL; + Signals_86_4 AT %X22.4 : BOOL; + Signals_86_5 AT %X22.5 : BOOL; + Signals_86_6 AT %X22.6 : BOOL; + Signals_86_7 AT %X22.7 : BOOL; + Signals_87_0 AT %X23.0 : BOOL; + Signals_87_1 AT %X23.1 : BOOL; + Signals_87_2 AT %X23.2 : BOOL; + Signals_87_3 AT %X23.3 : BOOL; + Signals_87_4 AT %X23.4 : BOOL; + Signals_87_5 AT %X23.5 : BOOL; + Signals_87_6 AT %X23.6 : BOOL; + Signals_87_7 AT %X23.7 : BOOL; + Signals_88_0 AT %X24.0 : BOOL; + Signals_88_1 AT %X24.1 : BOOL; + Signals_88_2 AT %X24.2 : BOOL; + Signals_88_3 AT %X24.3 : BOOL; + Signals_88_4 AT %X24.4 : BOOL; + Signals_88_5 AT %X24.5 : BOOL; + Signals_88_6 AT %X24.6 : BOOL; + Signals_88_7 AT %X24.7 : BOOL; + Signals_89_0 AT %X25.0 : BOOL; + Signals_89_1 AT %X25.1 : BOOL; + Signals_89_2 AT %X25.2 : BOOL; + Signals_89_3 AT %X25.3 : BOOL; + Signals_89_4 AT %X25.4 : BOOL; + Signals_89_5 AT %X25.5 : BOOL; + Signals_89_6 AT %X25.6 : BOOL; + Signals_89_7 AT %X25.7 : BOOL; + Signals_90_0 AT %X26.0 : BOOL; + Signals_90_1 AT %X26.1 : BOOL; + Signals_90_2 AT %X26.2 : BOOL; + Signals_90_3 AT %X26.3 : BOOL; + Signals_90_4 AT %X26.4 : BOOL; + Signals_90_5 AT %X26.5 : BOOL; + Signals_90_6 AT %X26.6 : BOOL; + Signals_90_7 AT %X26.7 : BOOL; + Signals_91_0 AT %X27.0 : BOOL; + Signals_91_1 AT %X27.1 : BOOL; + Signals_91_2 AT %X27.2 : BOOL; + Signals_91_3 AT %X27.3 : BOOL; + Signals_91_4 AT %X27.4 : BOOL; + Signals_91_5 AT %X27.5 : BOOL; + Signals_91_6 AT %X27.6 : BOOL; + Signals_91_7 AT %X27.7 : BOOL; + Signals_92_0 AT %X28.0 : BOOL; + Signals_92_1 AT %X28.1 : BOOL; + Signals_92_2 AT %X28.2 : BOOL; + Signals_92_3 AT %X28.3 : BOOL; + Signals_92_4 AT %X28.4 : BOOL; + Signals_92_5 AT %X28.5 : BOOL; + Signals_92_6 AT %X28.6 : BOOL; + Signals_92_7 AT %X28.7 : BOOL; + Signals_93_0 AT %X29.0 : BOOL; + Signals_93_1 AT %X29.1 : BOOL; + Signals_93_2 AT %X29.2 : BOOL; + Signals_93_3 AT %X29.3 : BOOL; + Signals_93_4 AT %X29.4 : BOOL; + Signals_93_5 AT %X29.5 : BOOL; + Signals_93_6 AT %X29.6 : BOOL; + Signals_93_7 AT %X29.7 : BOOL; + Signals_94_0 AT %X30.0 : BOOL; + Signals_94_1 AT %X30.1 : BOOL; + Signals_94_2 AT %X30.2 : BOOL; + Signals_94_3 AT %X30.3 : BOOL; + Signals_94_4 AT %X30.4 : BOOL; + Signals_94_5 AT %X30.5 : BOOL; + Signals_94_6 AT %X30.6 : BOOL; + Signals_94_7 AT %X30.7 : BOOL; + Signals_95_0 AT %X31.0 : BOOL; + Signals_95_1 AT %X31.1 : BOOL; + Signals_95_2 AT %X31.2 : BOOL; + Signals_95_3 AT %X31.3 : BOOL; + Signals_95_4 AT %X31.4 : BOOL; + Signals_95_5 AT %X31.5 : BOOL; + Signals_95_6 AT %X31.6 : BOOL; + Signals_95_7 AT %X31.7 : BOOL; + Signals_96_0 AT %X32.0 : BOOL; + Signals_96_1 AT %X32.1 : BOOL; + Signals_96_2 AT %X32.2 : BOOL; + Signals_96_3 AT %X32.3 : BOOL; + Signals_96_4 AT %X32.4 : BOOL; + Signals_96_5 AT %X32.5 : BOOL; + Signals_96_6 AT %X32.6 : BOOL; + Signals_96_7 AT %X32.7 : BOOL; + Signals_97_0 AT %X33.0 : BOOL; + Signals_97_1 AT %X33.1 : BOOL; + Signals_97_2 AT %X33.2 : BOOL; + Signals_97_3 AT %X33.3 : BOOL; + Signals_97_4 AT %X33.4 : BOOL; + Signals_97_5 AT %X33.5 : BOOL; + Signals_97_6 AT %X33.6 : BOOL; + Signals_97_7 AT %X33.7 : BOOL; + Signals_98_0 AT %X34.0 : BOOL; + Signals_98_1 AT %X34.1 : BOOL; + Signals_98_2 AT %X34.2 : BOOL; + Signals_98_3 AT %X34.3 : BOOL; + Signals_98_4 AT %X34.4 : BOOL; + Signals_98_5 AT %X34.5 : BOOL; + Signals_98_6 AT %X34.6 : BOOL; + Signals_98_7 AT %X34.7 : BOOL; + Signals_99_0 AT %X35.0 : BOOL; + Signals_99_1 AT %X35.1 : BOOL; + Signals_99_2 AT %X35.2 : BOOL; + Signals_99_3 AT %X35.3 : BOOL; + Signals_99_4 AT %X35.4 : BOOL; + Signals_99_5 AT %X35.5 : BOOL; + Signals_99_6 AT %X35.6 : BOOL; + Signals_99_7 AT %X35.7 : BOOL; + Signals_100_0 AT %X36.0 : BOOL; + Signals_100_1 AT %X36.1 : BOOL; + Signals_100_2 AT %X36.2 : BOOL; + Signals_100_3 AT %X36.3 : BOOL; + Signals_100_4 AT %X36.4 : BOOL; + Signals_100_5 AT %X36.5 : BOOL; + Signals_100_6 AT %X36.6 : BOOL; + Signals_100_7 AT %X36.7 : BOOL; + Signals_101_0 AT %X37.0 : BOOL; + Signals_101_1 AT %X37.1 : BOOL; + Signals_101_2 AT %X37.2 : BOOL; + Signals_101_3 AT %X37.3 : BOOL; + Signals_101_4 AT %X37.4 : BOOL; + Signals_101_5 AT %X37.5 : BOOL; + Signals_101_6 AT %X37.6 : BOOL; + Signals_101_7 AT %X37.7 : BOOL; + Signals_102_0 AT %X38.0 : BOOL; + Signals_102_1 AT %X38.1 : BOOL; + Signals_102_2 AT %X38.2 : BOOL; + Signals_102_3 AT %X38.3 : BOOL; + Signals_102_4 AT %X38.4 : BOOL; + Signals_102_5 AT %X38.5 : BOOL; + Signals_102_6 AT %X38.6 : BOOL; + Signals_102_7 AT %X38.7 : BOOL; + Signals_103_0 AT %X39.0 : BOOL; + Signals_103_1 AT %X39.1 : BOOL; + Signals_103_2 AT %X39.2 : BOOL; + Signals_103_3 AT %X39.3 : BOOL; + Signals_103_4 AT %X39.4 : BOOL; + Signals_103_5 AT %X39.5 : BOOL; + Signals_103_6 AT %X39.6 : BOOL; + Signals_103_7 AT %X39.7 : BOOL; + Signals_104_0 AT %X40.0 : BOOL; + Signals_104_1 AT %X40.1 : BOOL; + Signals_104_2 AT %X40.2 : BOOL; + Signals_104_3 AT %X40.3 : BOOL; + Signals_104_4 AT %X40.4 : BOOL; + Signals_104_5 AT %X40.5 : BOOL; + Signals_104_6 AT %X40.6 : BOOL; + Signals_104_7 AT %X40.7 : BOOL; + Signals_105_0 AT %X41.0 : BOOL; + Signals_105_1 AT %X41.1 : BOOL; + Signals_105_2 AT %X41.2 : BOOL; + Signals_105_3 AT %X41.3 : BOOL; + Signals_105_4 AT %X41.4 : BOOL; + Signals_105_5 AT %X41.5 : BOOL; + Signals_105_6 AT %X41.6 : BOOL; + Signals_105_7 AT %X41.7 : BOOL; + Signals_106_0 AT %X42.0 : BOOL; + Signals_106_1 AT %X42.1 : BOOL; + Signals_106_2 AT %X42.2 : BOOL; + Signals_106_3 AT %X42.3 : BOOL; + Signals_106_4 AT %X42.4 : BOOL; + Signals_106_5 AT %X42.5 : BOOL; + Signals_106_6 AT %X42.6 : BOOL; + Signals_106_7 AT %X42.7 : BOOL; + Signals_107_0 AT %X43.0 : BOOL; + Signals_107_1 AT %X43.1 : BOOL; + Signals_107_2 AT %X43.2 : BOOL; + Signals_107_3 AT %X43.3 : BOOL; + Signals_107_4 AT %X43.4 : BOOL; + Signals_107_5 AT %X43.5 : BOOL; + Signals_107_6 AT %X43.6 : BOOL; + Signals_107_7 AT %X43.7 : BOOL; + Signals_108_0 AT %X44.0 : BOOL; + Signals_108_1 AT %X44.1 : BOOL; + Signals_108_2 AT %X44.2 : BOOL; + Signals_108_3 AT %X44.3 : BOOL; + Signals_108_4 AT %X44.4 : BOOL; + Signals_108_5 AT %X44.5 : BOOL; + Signals_108_6 AT %X44.6 : BOOL; + Signals_108_7 AT %X44.7 : BOOL; + Signals_109_0 AT %X45.0 : BOOL; + Signals_109_1 AT %X45.1 : BOOL; + Signals_109_2 AT %X45.2 : BOOL; + Signals_109_3 AT %X45.3 : BOOL; + Signals_109_4 AT %X45.4 : BOOL; + Signals_109_5 AT %X45.5 : BOOL; + Signals_109_6 AT %X45.6 : BOOL; + Signals_109_7 AT %X45.7 : BOOL; + Signals_110_0 AT %X46.0 : BOOL; + Signals_110_1 AT %X46.1 : BOOL; + Signals_110_2 AT %X46.2 : BOOL; + Signals_110_3 AT %X46.3 : BOOL; + Signals_110_4 AT %X46.4 : BOOL; + Signals_110_5 AT %X46.5 : BOOL; + Signals_110_6 AT %X46.6 : BOOL; + Signals_110_7 AT %X46.7 : BOOL; + Signals_111_0 AT %X47.0 : BOOL; + Signals_111_1 AT %X47.1 : BOOL; + Signals_111_2 AT %X47.2 : BOOL; + Signals_111_3 AT %X47.3 : BOOL; + Signals_111_4 AT %X47.4 : BOOL; + Signals_111_5 AT %X47.5 : BOOL; + Signals_111_6 AT %X47.6 : BOOL; + Signals_111_7 AT %X47.7 : BOOL; + Signals_112_0 AT %X48.0 : BOOL; + Signals_112_1 AT %X48.1 : BOOL; + Signals_112_2 AT %X48.2 : BOOL; + Signals_112_3 AT %X48.3 : BOOL; + Signals_112_4 AT %X48.4 : BOOL; + Signals_112_5 AT %X48.5 : BOOL; + Signals_112_6 AT %X48.6 : BOOL; + Signals_112_7 AT %X48.7 : BOOL; + Signals_113_0 AT %X49.0 : BOOL; + Signals_113_1 AT %X49.1 : BOOL; + Signals_113_2 AT %X49.2 : BOOL; + Signals_113_3 AT %X49.3 : BOOL; + Signals_113_4 AT %X49.4 : BOOL; + Signals_113_5 AT %X49.5 : BOOL; + Signals_113_6 AT %X49.6 : BOOL; + Signals_113_7 AT %X49.7 : BOOL; + Signals_114_0 AT %X50.0 : BOOL; + Signals_114_1 AT %X50.1 : BOOL; + Signals_114_2 AT %X50.2 : BOOL; + Signals_114_3 AT %X50.3 : BOOL; + Signals_114_4 AT %X50.4 : BOOL; + Signals_114_5 AT %X50.5 : BOOL; + Signals_114_6 AT %X50.6 : BOOL; + Signals_114_7 AT %X50.7 : BOOL; + Signals_115_0 AT %X51.0 : BOOL; + Signals_115_1 AT %X51.1 : BOOL; + Signals_115_2 AT %X51.2 : BOOL; + Signals_115_3 AT %X51.3 : BOOL; + Signals_115_4 AT %X51.4 : BOOL; + Signals_115_5 AT %X51.5 : BOOL; + Signals_115_6 AT %X51.6 : BOOL; + Signals_115_7 AT %X51.7 : BOOL; + Signals_116_0 AT %X52.0 : BOOL; + Signals_116_1 AT %X52.1 : BOOL; + Signals_116_2 AT %X52.2 : BOOL; + Signals_116_3 AT %X52.3 : BOOL; + Signals_116_4 AT %X52.4 : BOOL; + Signals_116_5 AT %X52.5 : BOOL; + Signals_116_6 AT %X52.6 : BOOL; + Signals_116_7 AT %X52.7 : BOOL; + Signals_117_0 AT %X53.0 : BOOL; + Signals_117_1 AT %X53.1 : BOOL; + Signals_117_2 AT %X53.2 : BOOL; + Signals_117_3 AT %X53.3 : BOOL; + Signals_117_4 AT %X53.4 : BOOL; + Signals_117_5 AT %X53.5 : BOOL; + Signals_117_6 AT %X53.6 : BOOL; + Signals_117_7 AT %X53.7 : BOOL; + Signals_118_0 AT %X54.0 : BOOL; + Signals_118_1 AT %X54.1 : BOOL; + Signals_118_2 AT %X54.2 : BOOL; + Signals_118_3 AT %X54.3 : BOOL; + Signals_118_4 AT %X54.4 : BOOL; + Signals_118_5 AT %X54.5 : BOOL; + Signals_118_6 AT %X54.6 : BOOL; + Signals_118_7 AT %X54.7 : BOOL; + Signals_119_0 AT %X55.0 : BOOL; + Signals_119_1 AT %X55.1 : BOOL; + Signals_119_2 AT %X55.2 : BOOL; + Signals_119_3 AT %X55.3 : BOOL; + Signals_119_4 AT %X55.4 : BOOL; + Signals_119_5 AT %X55.5 : BOOL; + Signals_119_6 AT %X55.6 : BOOL; + Signals_119_7 AT %X55.7 : BOOL; + Signals_120_0 AT %X56.0 : BOOL; + Signals_120_1 AT %X56.1 : BOOL; + Signals_120_2 AT %X56.2 : BOOL; + Signals_120_3 AT %X56.3 : BOOL; + Signals_120_4 AT %X56.4 : BOOL; + Signals_120_5 AT %X56.5 : BOOL; + Signals_120_6 AT %X56.6 : BOOL; + Signals_120_7 AT %X56.7 : BOOL; + Signals_121_0 AT %X57.0 : BOOL; + Signals_121_1 AT %X57.1 : BOOL; + Signals_121_2 AT %X57.2 : BOOL; + Signals_121_3 AT %X57.3 : BOOL; + Signals_121_4 AT %X57.4 : BOOL; + Signals_121_5 AT %X57.5 : BOOL; + Signals_121_6 AT %X57.6 : BOOL; + Signals_121_7 AT %X57.7 : BOOL; + Signals_122_0 AT %X58.0 : BOOL; + Signals_122_1 AT %X58.1 : BOOL; + Signals_122_2 AT %X58.2 : BOOL; + Signals_122_3 AT %X58.3 : BOOL; + Signals_122_4 AT %X58.4 : BOOL; + Signals_122_5 AT %X58.5 : BOOL; + Signals_122_6 AT %X58.6 : BOOL; + Signals_122_7 AT %X58.7 : BOOL; + Signals_123_0 AT %X59.0 : BOOL; + Signals_123_1 AT %X59.1 : BOOL; + Signals_123_2 AT %X59.2 : BOOL; + Signals_123_3 AT %X59.3 : BOOL; + Signals_123_4 AT %X59.4 : BOOL; + Signals_123_5 AT %X59.5 : BOOL; + Signals_123_6 AT %X59.6 : BOOL; + Signals_123_7 AT %X59.7 : BOOL; + Signals_124_0 AT %X60.0 : BOOL; + Signals_124_1 AT %X60.1 : BOOL; + Signals_124_2 AT %X60.2 : BOOL; + Signals_124_3 AT %X60.3 : BOOL; + Signals_124_4 AT %X60.4 : BOOL; + Signals_124_5 AT %X60.5 : BOOL; + Signals_124_6 AT %X60.6 : BOOL; + Signals_124_7 AT %X60.7 : BOOL; + Signals_125_0 AT %X61.0 : BOOL; + Signals_125_1 AT %X61.1 : BOOL; + Signals_125_2 AT %X61.2 : BOOL; + Signals_125_3 AT %X61.3 : BOOL; + Signals_125_4 AT %X61.4 : BOOL; + Signals_125_5 AT %X61.5 : BOOL; + Signals_125_6 AT %X61.6 : BOOL; + Signals_125_7 AT %X61.7 : BOOL; + Signals_126_0 AT %X62.0 : BOOL; + Signals_126_1 AT %X62.1 : BOOL; + Signals_126_2 AT %X62.2 : BOOL; + Signals_126_3 AT %X62.3 : BOOL; + Signals_126_4 AT %X62.4 : BOOL; + Signals_126_5 AT %X62.5 : BOOL; + Signals_126_6 AT %X62.6 : BOOL; + Signals_126_7 AT %X62.7 : BOOL; + Signals_127_0 AT %X63.0 : BOOL; + Signals_127_1 AT %X63.1 : BOOL; + Signals_127_2 AT %X63.2 : BOOL; + Signals_127_3 AT %X63.3 : BOOL; + Signals_127_4 AT %X63.4 : BOOL; + Signals_127_5 AT %X63.5 : BOOL; + Signals_127_6 AT %X63.6 : BOOL; + Signals_127_7 AT %X63.7 : BOOL; + END_STRUCT; +END_TYPE + TYPE mitsubishi_tz535_robot_In_Out_64_byte_Input_Layout : STRUCT Signals_0 AT %B0 : ARRAY[0..63] OF BYTE; diff --git a/src/showcase/app/hwc/hwc.gen/plc_line.HardwareIdentifiers.json b/src/showcase/app/hwc/hwc.gen/plc_line.HardwareIdentifiers.json index 44a858a0b..5703dc13f 100644 --- a/src/showcase/app/hwc/hwc.gen/plc_line.HardwareIdentifiers.json +++ b/src/showcase/app/hwc/hwc.gen/plc_line.HardwareIdentifiers.json @@ -1089,6 +1089,46 @@ "Name": "kuka_rb1~kuka_rb1~KRC4-ProfiNet_5.0", "Value": 666 }, + { + "Name": "kuka_rb2", + "Value": 686 + }, + { + "Name": "kuka_rb2~DIO512~512 digital in- and outputs", + "Value": 693 + }, + { + "Name": "kuka_rb2~Rack", + "Value": 691 + }, + { + "Name": "kuka_rb2~kuka_rb2", + "Value": 692 + }, + { + "Name": "kuka_rb2~kuka_rb2~Interface1", + "Value": 685 + }, + { + "Name": "kuka_rb2~kuka_rb2~Interface1~Port_1", + "Value": 687 + }, + { + "Name": "kuka_rb2~kuka_rb2~Interface1~Port_2", + "Value": 688 + }, + { + "Name": "kuka_rb2~kuka_rb2~Interface1~Port_3", + "Value": 689 + }, + { + "Name": "kuka_rb2~kuka_rb2~Interface1~Port_4", + "Value": 690 + }, + { + "Name": "kuka_rb2~kuka_rb2~KUKA.PROFINET 6.0", + "Value": 694 + }, { "Name": "mitsubishi_tz535_robot", "Value": 653 diff --git a/src/showcase/app/hwc/hwc.gen/plc_line.IoAddresses.json b/src/showcase/app/hwc/hwc.gen/plc_line.IoAddresses.json index 0258e9547..aa3480655 100644 --- a/src/showcase/app/hwc/hwc.gen/plc_line.IoAddresses.json +++ b/src/showcase/app/hwc/hwc.gen/plc_line.IoAddresses.json @@ -30688,6 +30688,6175 @@ } ] }, + { + "Ref": "kuka_rb2/DIO512", + "Submodules": [ + { + "Name": "512 digital in- and outputs", + "HardwareIdentifier": 693, + "Inputs": { + "StartAddress": "6029.0", + "EndAddress": "6092.7", + "Length": 512, + "Source": "AutoAssigned", + "SignalLayout": [ + { + "Name": "Signals_0_0", + "Offset": 0, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_0_1", + "Offset": 1, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_0_2", + "Offset": 2, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_0_3", + "Offset": 3, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_0_4", + "Offset": 4, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_0_5", + "Offset": 5, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_0_6", + "Offset": 6, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_0_7", + "Offset": 7, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_1_0", + "Offset": 8, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_1_1", + "Offset": 9, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_1_2", + "Offset": 10, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_1_3", + "Offset": 11, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_1_4", + "Offset": 12, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_1_5", + "Offset": 13, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_1_6", + "Offset": 14, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_1_7", + "Offset": 15, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_2_0", + "Offset": 16, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_2_1", + "Offset": 17, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_2_2", + "Offset": 18, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_2_3", + "Offset": 19, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_2_4", + "Offset": 20, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_2_5", + "Offset": 21, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_2_6", + "Offset": 22, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_2_7", + "Offset": 23, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_3_0", + "Offset": 24, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_3_1", + "Offset": 25, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_3_2", + "Offset": 26, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_3_3", + "Offset": 27, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_3_4", + "Offset": 28, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_3_5", + "Offset": 29, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_3_6", + "Offset": 30, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_3_7", + "Offset": 31, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_4_0", + "Offset": 32, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_4_1", + "Offset": 33, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_4_2", + "Offset": 34, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_4_3", + "Offset": 35, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_4_4", + "Offset": 36, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_4_5", + "Offset": 37, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_4_6", + "Offset": 38, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_4_7", + "Offset": 39, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_5_0", + "Offset": 40, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_5_1", + "Offset": 41, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_5_2", + "Offset": 42, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_5_3", + "Offset": 43, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_5_4", + "Offset": 44, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_5_5", + "Offset": 45, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_5_6", + "Offset": 46, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_5_7", + "Offset": 47, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_6_0", + "Offset": 48, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_6_1", + "Offset": 49, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_6_2", + "Offset": 50, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_6_3", + "Offset": 51, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_6_4", + "Offset": 52, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_6_5", + "Offset": 53, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_6_6", + "Offset": 54, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_6_7", + "Offset": 55, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_7_0", + "Offset": 56, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_7_1", + "Offset": 57, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_7_2", + "Offset": 58, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_7_3", + "Offset": 59, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_7_4", + "Offset": 60, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_7_5", + "Offset": 61, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_7_6", + "Offset": 62, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_7_7", + "Offset": 63, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_8_0", + "Offset": 64, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_8_1", + "Offset": 65, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_8_2", + "Offset": 66, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_8_3", + "Offset": 67, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_8_4", + "Offset": 68, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_8_5", + "Offset": 69, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_8_6", + "Offset": 70, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_8_7", + "Offset": 71, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_9_0", + "Offset": 72, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_9_1", + "Offset": 73, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_9_2", + "Offset": 74, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_9_3", + "Offset": 75, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_9_4", + "Offset": 76, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_9_5", + "Offset": 77, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_9_6", + "Offset": 78, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_9_7", + "Offset": 79, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_10_0", + "Offset": 80, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_10_1", + "Offset": 81, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_10_2", + "Offset": 82, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_10_3", + "Offset": 83, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_10_4", + "Offset": 84, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_10_5", + "Offset": 85, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_10_6", + "Offset": 86, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_10_7", + "Offset": 87, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_11_0", + "Offset": 88, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_11_1", + "Offset": 89, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_11_2", + "Offset": 90, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_11_3", + "Offset": 91, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_11_4", + "Offset": 92, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_11_5", + "Offset": 93, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_11_6", + "Offset": 94, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_11_7", + "Offset": 95, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_12_0", + "Offset": 96, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_12_1", + "Offset": 97, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_12_2", + "Offset": 98, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_12_3", + "Offset": 99, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_12_4", + "Offset": 100, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_12_5", + "Offset": 101, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_12_6", + "Offset": 102, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_12_7", + "Offset": 103, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_13_0", + "Offset": 104, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_13_1", + "Offset": 105, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_13_2", + "Offset": 106, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_13_3", + "Offset": 107, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_13_4", + "Offset": 108, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_13_5", + "Offset": 109, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_13_6", + "Offset": 110, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_13_7", + "Offset": 111, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_14_0", + "Offset": 112, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_14_1", + "Offset": 113, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_14_2", + "Offset": 114, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_14_3", + "Offset": 115, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_14_4", + "Offset": 116, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_14_5", + "Offset": 117, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_14_6", + "Offset": 118, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_14_7", + "Offset": 119, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_15_0", + "Offset": 120, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_15_1", + "Offset": 121, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_15_2", + "Offset": 122, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_15_3", + "Offset": 123, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_15_4", + "Offset": 124, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_15_5", + "Offset": 125, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_15_6", + "Offset": 126, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_15_7", + "Offset": 127, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_16_0", + "Offset": 128, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_16_1", + "Offset": 129, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_16_2", + "Offset": 130, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_16_3", + "Offset": 131, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_16_4", + "Offset": 132, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_16_5", + "Offset": 133, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_16_6", + "Offset": 134, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_16_7", + "Offset": 135, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_17_0", + "Offset": 136, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_17_1", + "Offset": 137, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_17_2", + "Offset": 138, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_17_3", + "Offset": 139, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_17_4", + "Offset": 140, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_17_5", + "Offset": 141, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_17_6", + "Offset": 142, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_17_7", + "Offset": 143, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_18_0", + "Offset": 144, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_18_1", + "Offset": 145, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_18_2", + "Offset": 146, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_18_3", + "Offset": 147, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_18_4", + "Offset": 148, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_18_5", + "Offset": 149, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_18_6", + "Offset": 150, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_18_7", + "Offset": 151, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_19_0", + "Offset": 152, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_19_1", + "Offset": 153, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_19_2", + "Offset": 154, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_19_3", + "Offset": 155, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_19_4", + "Offset": 156, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_19_5", + "Offset": 157, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_19_6", + "Offset": 158, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_19_7", + "Offset": 159, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_20_0", + "Offset": 160, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_20_1", + "Offset": 161, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_20_2", + "Offset": 162, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_20_3", + "Offset": 163, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_20_4", + "Offset": 164, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_20_5", + "Offset": 165, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_20_6", + "Offset": 166, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_20_7", + "Offset": 167, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_21_0", + "Offset": 168, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_21_1", + "Offset": 169, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_21_2", + "Offset": 170, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_21_3", + "Offset": 171, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_21_4", + "Offset": 172, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_21_5", + "Offset": 173, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_21_6", + "Offset": 174, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_21_7", + "Offset": 175, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_22_0", + "Offset": 176, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_22_1", + "Offset": 177, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_22_2", + "Offset": 178, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_22_3", + "Offset": 179, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_22_4", + "Offset": 180, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_22_5", + "Offset": 181, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_22_6", + "Offset": 182, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_22_7", + "Offset": 183, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_23_0", + "Offset": 184, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_23_1", + "Offset": 185, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_23_2", + "Offset": 186, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_23_3", + "Offset": 187, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_23_4", + "Offset": 188, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_23_5", + "Offset": 189, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_23_6", + "Offset": 190, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_23_7", + "Offset": 191, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_24_0", + "Offset": 192, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_24_1", + "Offset": 193, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_24_2", + "Offset": 194, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_24_3", + "Offset": 195, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_24_4", + "Offset": 196, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_24_5", + "Offset": 197, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_24_6", + "Offset": 198, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_24_7", + "Offset": 199, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_25_0", + "Offset": 200, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_25_1", + "Offset": 201, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_25_2", + "Offset": 202, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_25_3", + "Offset": 203, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_25_4", + "Offset": 204, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_25_5", + "Offset": 205, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_25_6", + "Offset": 206, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_25_7", + "Offset": 207, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_26_0", + "Offset": 208, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_26_1", + "Offset": 209, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_26_2", + "Offset": 210, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_26_3", + "Offset": 211, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_26_4", + "Offset": 212, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_26_5", + "Offset": 213, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_26_6", + "Offset": 214, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_26_7", + "Offset": 215, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_27_0", + "Offset": 216, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_27_1", + "Offset": 217, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_27_2", + "Offset": 218, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_27_3", + "Offset": 219, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_27_4", + "Offset": 220, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_27_5", + "Offset": 221, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_27_6", + "Offset": 222, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_27_7", + "Offset": 223, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_28_0", + "Offset": 224, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_28_1", + "Offset": 225, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_28_2", + "Offset": 226, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_28_3", + "Offset": 227, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_28_4", + "Offset": 228, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_28_5", + "Offset": 229, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_28_6", + "Offset": 230, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_28_7", + "Offset": 231, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_29_0", + "Offset": 232, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_29_1", + "Offset": 233, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_29_2", + "Offset": 234, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_29_3", + "Offset": 235, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_29_4", + "Offset": 236, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_29_5", + "Offset": 237, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_29_6", + "Offset": 238, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_29_7", + "Offset": 239, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_30_0", + "Offset": 240, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_30_1", + "Offset": 241, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_30_2", + "Offset": 242, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_30_3", + "Offset": 243, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_30_4", + "Offset": 244, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_30_5", + "Offset": 245, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_30_6", + "Offset": 246, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_30_7", + "Offset": 247, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_31_0", + "Offset": 248, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_31_1", + "Offset": 249, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_31_2", + "Offset": 250, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_31_3", + "Offset": 251, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_31_4", + "Offset": 252, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_31_5", + "Offset": 253, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_31_6", + "Offset": 254, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_31_7", + "Offset": 255, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_32_0", + "Offset": 256, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_32_1", + "Offset": 257, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_32_2", + "Offset": 258, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_32_3", + "Offset": 259, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_32_4", + "Offset": 260, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_32_5", + "Offset": 261, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_32_6", + "Offset": 262, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_32_7", + "Offset": 263, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_33_0", + "Offset": 264, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_33_1", + "Offset": 265, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_33_2", + "Offset": 266, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_33_3", + "Offset": 267, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_33_4", + "Offset": 268, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_33_5", + "Offset": 269, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_33_6", + "Offset": 270, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_33_7", + "Offset": 271, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_34_0", + "Offset": 272, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_34_1", + "Offset": 273, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_34_2", + "Offset": 274, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_34_3", + "Offset": 275, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_34_4", + "Offset": 276, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_34_5", + "Offset": 277, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_34_6", + "Offset": 278, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_34_7", + "Offset": 279, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_35_0", + "Offset": 280, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_35_1", + "Offset": 281, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_35_2", + "Offset": 282, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_35_3", + "Offset": 283, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_35_4", + "Offset": 284, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_35_5", + "Offset": 285, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_35_6", + "Offset": 286, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_35_7", + "Offset": 287, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_36_0", + "Offset": 288, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_36_1", + "Offset": 289, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_36_2", + "Offset": 290, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_36_3", + "Offset": 291, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_36_4", + "Offset": 292, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_36_5", + "Offset": 293, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_36_6", + "Offset": 294, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_36_7", + "Offset": 295, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_37_0", + "Offset": 296, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_37_1", + "Offset": 297, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_37_2", + "Offset": 298, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_37_3", + "Offset": 299, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_37_4", + "Offset": 300, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_37_5", + "Offset": 301, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_37_6", + "Offset": 302, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_37_7", + "Offset": 303, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_38_0", + "Offset": 304, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_38_1", + "Offset": 305, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_38_2", + "Offset": 306, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_38_3", + "Offset": 307, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_38_4", + "Offset": 308, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_38_5", + "Offset": 309, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_38_6", + "Offset": 310, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_38_7", + "Offset": 311, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_39_0", + "Offset": 312, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_39_1", + "Offset": 313, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_39_2", + "Offset": 314, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_39_3", + "Offset": 315, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_39_4", + "Offset": 316, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_39_5", + "Offset": 317, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_39_6", + "Offset": 318, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_39_7", + "Offset": 319, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_40_0", + "Offset": 320, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_40_1", + "Offset": 321, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_40_2", + "Offset": 322, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_40_3", + "Offset": 323, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_40_4", + "Offset": 324, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_40_5", + "Offset": 325, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_40_6", + "Offset": 326, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_40_7", + "Offset": 327, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_41_0", + "Offset": 328, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_41_1", + "Offset": 329, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_41_2", + "Offset": 330, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_41_3", + "Offset": 331, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_41_4", + "Offset": 332, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_41_5", + "Offset": 333, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_41_6", + "Offset": 334, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_41_7", + "Offset": 335, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_42_0", + "Offset": 336, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_42_1", + "Offset": 337, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_42_2", + "Offset": 338, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_42_3", + "Offset": 339, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_42_4", + "Offset": 340, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_42_5", + "Offset": 341, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_42_6", + "Offset": 342, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_42_7", + "Offset": 343, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_43_0", + "Offset": 344, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_43_1", + "Offset": 345, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_43_2", + "Offset": 346, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_43_3", + "Offset": 347, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_43_4", + "Offset": 348, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_43_5", + "Offset": 349, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_43_6", + "Offset": 350, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_43_7", + "Offset": 351, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_44_0", + "Offset": 352, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_44_1", + "Offset": 353, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_44_2", + "Offset": 354, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_44_3", + "Offset": 355, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_44_4", + "Offset": 356, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_44_5", + "Offset": 357, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_44_6", + "Offset": 358, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_44_7", + "Offset": 359, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_45_0", + "Offset": 360, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_45_1", + "Offset": 361, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_45_2", + "Offset": 362, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_45_3", + "Offset": 363, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_45_4", + "Offset": 364, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_45_5", + "Offset": 365, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_45_6", + "Offset": 366, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_45_7", + "Offset": 367, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_46_0", + "Offset": 368, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_46_1", + "Offset": 369, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_46_2", + "Offset": 370, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_46_3", + "Offset": 371, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_46_4", + "Offset": 372, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_46_5", + "Offset": 373, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_46_6", + "Offset": 374, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_46_7", + "Offset": 375, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_47_0", + "Offset": 376, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_47_1", + "Offset": 377, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_47_2", + "Offset": 378, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_47_3", + "Offset": 379, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_47_4", + "Offset": 380, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_47_5", + "Offset": 381, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_47_6", + "Offset": 382, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_47_7", + "Offset": 383, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_48_0", + "Offset": 384, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_48_1", + "Offset": 385, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_48_2", + "Offset": 386, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_48_3", + "Offset": 387, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_48_4", + "Offset": 388, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_48_5", + "Offset": 389, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_48_6", + "Offset": 390, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_48_7", + "Offset": 391, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_49_0", + "Offset": 392, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_49_1", + "Offset": 393, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_49_2", + "Offset": 394, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_49_3", + "Offset": 395, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_49_4", + "Offset": 396, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_49_5", + "Offset": 397, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_49_6", + "Offset": 398, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_49_7", + "Offset": 399, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_50_0", + "Offset": 400, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_50_1", + "Offset": 401, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_50_2", + "Offset": 402, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_50_3", + "Offset": 403, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_50_4", + "Offset": 404, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_50_5", + "Offset": 405, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_50_6", + "Offset": 406, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_50_7", + "Offset": 407, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_51_0", + "Offset": 408, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_51_1", + "Offset": 409, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_51_2", + "Offset": 410, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_51_3", + "Offset": 411, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_51_4", + "Offset": 412, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_51_5", + "Offset": 413, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_51_6", + "Offset": 414, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_51_7", + "Offset": 415, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_52_0", + "Offset": 416, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_52_1", + "Offset": 417, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_52_2", + "Offset": 418, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_52_3", + "Offset": 419, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_52_4", + "Offset": 420, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_52_5", + "Offset": 421, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_52_6", + "Offset": 422, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_52_7", + "Offset": 423, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_53_0", + "Offset": 424, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_53_1", + "Offset": 425, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_53_2", + "Offset": 426, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_53_3", + "Offset": 427, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_53_4", + "Offset": 428, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_53_5", + "Offset": 429, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_53_6", + "Offset": 430, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_53_7", + "Offset": 431, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_54_0", + "Offset": 432, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_54_1", + "Offset": 433, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_54_2", + "Offset": 434, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_54_3", + "Offset": 435, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_54_4", + "Offset": 436, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_54_5", + "Offset": 437, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_54_6", + "Offset": 438, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_54_7", + "Offset": 439, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_55_0", + "Offset": 440, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_55_1", + "Offset": 441, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_55_2", + "Offset": 442, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_55_3", + "Offset": 443, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_55_4", + "Offset": 444, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_55_5", + "Offset": 445, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_55_6", + "Offset": 446, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_55_7", + "Offset": 447, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_56_0", + "Offset": 448, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_56_1", + "Offset": 449, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_56_2", + "Offset": 450, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_56_3", + "Offset": 451, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_56_4", + "Offset": 452, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_56_5", + "Offset": 453, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_56_6", + "Offset": 454, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_56_7", + "Offset": 455, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_57_0", + "Offset": 456, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_57_1", + "Offset": 457, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_57_2", + "Offset": 458, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_57_3", + "Offset": 459, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_57_4", + "Offset": 460, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_57_5", + "Offset": 461, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_57_6", + "Offset": 462, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_57_7", + "Offset": 463, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_58_0", + "Offset": 464, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_58_1", + "Offset": 465, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_58_2", + "Offset": 466, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_58_3", + "Offset": 467, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_58_4", + "Offset": 468, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_58_5", + "Offset": 469, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_58_6", + "Offset": 470, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_58_7", + "Offset": 471, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_59_0", + "Offset": 472, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_59_1", + "Offset": 473, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_59_2", + "Offset": 474, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_59_3", + "Offset": 475, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_59_4", + "Offset": 476, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_59_5", + "Offset": 477, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_59_6", + "Offset": 478, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_59_7", + "Offset": 479, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_60_0", + "Offset": 480, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_60_1", + "Offset": 481, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_60_2", + "Offset": 482, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_60_3", + "Offset": 483, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_60_4", + "Offset": 484, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_60_5", + "Offset": 485, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_60_6", + "Offset": 486, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_60_7", + "Offset": 487, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_61_0", + "Offset": 488, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_61_1", + "Offset": 489, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_61_2", + "Offset": 490, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_61_3", + "Offset": 491, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_61_4", + "Offset": 492, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_61_5", + "Offset": 493, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_61_6", + "Offset": 494, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_61_7", + "Offset": 495, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_62_0", + "Offset": 496, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_62_1", + "Offset": 497, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_62_2", + "Offset": 498, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_62_3", + "Offset": 499, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_62_4", + "Offset": 500, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_62_5", + "Offset": 501, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_62_6", + "Offset": 502, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_62_7", + "Offset": 503, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_63_0", + "Offset": 504, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_63_1", + "Offset": 505, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_63_2", + "Offset": 506, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_63_3", + "Offset": 507, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_63_4", + "Offset": 508, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_63_5", + "Offset": 509, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_63_6", + "Offset": 510, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_63_7", + "Offset": 511, + "Length": 1, + "DataType": "Boolean" + } + ] + }, + "Outputs": { + "StartAddress": "3767.0", + "EndAddress": "3830.7", + "Length": 512, + "Source": "AutoAssigned", + "SignalLayout": [ + { + "Name": "Signals_64_0", + "Offset": 0, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_64_1", + "Offset": 1, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_64_2", + "Offset": 2, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_64_3", + "Offset": 3, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_64_4", + "Offset": 4, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_64_5", + "Offset": 5, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_64_6", + "Offset": 6, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_64_7", + "Offset": 7, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_65_0", + "Offset": 8, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_65_1", + "Offset": 9, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_65_2", + "Offset": 10, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_65_3", + "Offset": 11, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_65_4", + "Offset": 12, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_65_5", + "Offset": 13, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_65_6", + "Offset": 14, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_65_7", + "Offset": 15, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_66_0", + "Offset": 16, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_66_1", + "Offset": 17, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_66_2", + "Offset": 18, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_66_3", + "Offset": 19, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_66_4", + "Offset": 20, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_66_5", + "Offset": 21, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_66_6", + "Offset": 22, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_66_7", + "Offset": 23, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_67_0", + "Offset": 24, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_67_1", + "Offset": 25, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_67_2", + "Offset": 26, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_67_3", + "Offset": 27, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_67_4", + "Offset": 28, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_67_5", + "Offset": 29, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_67_6", + "Offset": 30, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_67_7", + "Offset": 31, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_68_0", + "Offset": 32, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_68_1", + "Offset": 33, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_68_2", + "Offset": 34, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_68_3", + "Offset": 35, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_68_4", + "Offset": 36, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_68_5", + "Offset": 37, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_68_6", + "Offset": 38, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_68_7", + "Offset": 39, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_69_0", + "Offset": 40, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_69_1", + "Offset": 41, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_69_2", + "Offset": 42, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_69_3", + "Offset": 43, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_69_4", + "Offset": 44, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_69_5", + "Offset": 45, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_69_6", + "Offset": 46, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_69_7", + "Offset": 47, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_70_0", + "Offset": 48, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_70_1", + "Offset": 49, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_70_2", + "Offset": 50, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_70_3", + "Offset": 51, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_70_4", + "Offset": 52, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_70_5", + "Offset": 53, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_70_6", + "Offset": 54, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_70_7", + "Offset": 55, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_71_0", + "Offset": 56, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_71_1", + "Offset": 57, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_71_2", + "Offset": 58, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_71_3", + "Offset": 59, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_71_4", + "Offset": 60, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_71_5", + "Offset": 61, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_71_6", + "Offset": 62, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_71_7", + "Offset": 63, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_72_0", + "Offset": 64, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_72_1", + "Offset": 65, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_72_2", + "Offset": 66, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_72_3", + "Offset": 67, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_72_4", + "Offset": 68, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_72_5", + "Offset": 69, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_72_6", + "Offset": 70, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_72_7", + "Offset": 71, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_73_0", + "Offset": 72, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_73_1", + "Offset": 73, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_73_2", + "Offset": 74, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_73_3", + "Offset": 75, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_73_4", + "Offset": 76, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_73_5", + "Offset": 77, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_73_6", + "Offset": 78, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_73_7", + "Offset": 79, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_74_0", + "Offset": 80, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_74_1", + "Offset": 81, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_74_2", + "Offset": 82, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_74_3", + "Offset": 83, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_74_4", + "Offset": 84, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_74_5", + "Offset": 85, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_74_6", + "Offset": 86, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_74_7", + "Offset": 87, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_75_0", + "Offset": 88, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_75_1", + "Offset": 89, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_75_2", + "Offset": 90, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_75_3", + "Offset": 91, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_75_4", + "Offset": 92, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_75_5", + "Offset": 93, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_75_6", + "Offset": 94, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_75_7", + "Offset": 95, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_76_0", + "Offset": 96, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_76_1", + "Offset": 97, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_76_2", + "Offset": 98, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_76_3", + "Offset": 99, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_76_4", + "Offset": 100, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_76_5", + "Offset": 101, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_76_6", + "Offset": 102, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_76_7", + "Offset": 103, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_77_0", + "Offset": 104, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_77_1", + "Offset": 105, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_77_2", + "Offset": 106, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_77_3", + "Offset": 107, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_77_4", + "Offset": 108, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_77_5", + "Offset": 109, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_77_6", + "Offset": 110, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_77_7", + "Offset": 111, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_78_0", + "Offset": 112, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_78_1", + "Offset": 113, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_78_2", + "Offset": 114, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_78_3", + "Offset": 115, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_78_4", + "Offset": 116, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_78_5", + "Offset": 117, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_78_6", + "Offset": 118, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_78_7", + "Offset": 119, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_79_0", + "Offset": 120, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_79_1", + "Offset": 121, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_79_2", + "Offset": 122, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_79_3", + "Offset": 123, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_79_4", + "Offset": 124, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_79_5", + "Offset": 125, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_79_6", + "Offset": 126, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_79_7", + "Offset": 127, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_80_0", + "Offset": 128, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_80_1", + "Offset": 129, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_80_2", + "Offset": 130, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_80_3", + "Offset": 131, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_80_4", + "Offset": 132, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_80_5", + "Offset": 133, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_80_6", + "Offset": 134, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_80_7", + "Offset": 135, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_81_0", + "Offset": 136, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_81_1", + "Offset": 137, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_81_2", + "Offset": 138, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_81_3", + "Offset": 139, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_81_4", + "Offset": 140, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_81_5", + "Offset": 141, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_81_6", + "Offset": 142, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_81_7", + "Offset": 143, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_82_0", + "Offset": 144, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_82_1", + "Offset": 145, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_82_2", + "Offset": 146, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_82_3", + "Offset": 147, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_82_4", + "Offset": 148, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_82_5", + "Offset": 149, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_82_6", + "Offset": 150, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_82_7", + "Offset": 151, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_83_0", + "Offset": 152, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_83_1", + "Offset": 153, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_83_2", + "Offset": 154, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_83_3", + "Offset": 155, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_83_4", + "Offset": 156, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_83_5", + "Offset": 157, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_83_6", + "Offset": 158, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_83_7", + "Offset": 159, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_84_0", + "Offset": 160, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_84_1", + "Offset": 161, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_84_2", + "Offset": 162, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_84_3", + "Offset": 163, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_84_4", + "Offset": 164, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_84_5", + "Offset": 165, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_84_6", + "Offset": 166, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_84_7", + "Offset": 167, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_85_0", + "Offset": 168, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_85_1", + "Offset": 169, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_85_2", + "Offset": 170, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_85_3", + "Offset": 171, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_85_4", + "Offset": 172, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_85_5", + "Offset": 173, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_85_6", + "Offset": 174, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_85_7", + "Offset": 175, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_86_0", + "Offset": 176, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_86_1", + "Offset": 177, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_86_2", + "Offset": 178, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_86_3", + "Offset": 179, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_86_4", + "Offset": 180, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_86_5", + "Offset": 181, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_86_6", + "Offset": 182, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_86_7", + "Offset": 183, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_87_0", + "Offset": 184, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_87_1", + "Offset": 185, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_87_2", + "Offset": 186, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_87_3", + "Offset": 187, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_87_4", + "Offset": 188, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_87_5", + "Offset": 189, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_87_6", + "Offset": 190, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_87_7", + "Offset": 191, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_88_0", + "Offset": 192, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_88_1", + "Offset": 193, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_88_2", + "Offset": 194, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_88_3", + "Offset": 195, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_88_4", + "Offset": 196, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_88_5", + "Offset": 197, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_88_6", + "Offset": 198, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_88_7", + "Offset": 199, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_89_0", + "Offset": 200, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_89_1", + "Offset": 201, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_89_2", + "Offset": 202, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_89_3", + "Offset": 203, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_89_4", + "Offset": 204, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_89_5", + "Offset": 205, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_89_6", + "Offset": 206, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_89_7", + "Offset": 207, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_90_0", + "Offset": 208, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_90_1", + "Offset": 209, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_90_2", + "Offset": 210, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_90_3", + "Offset": 211, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_90_4", + "Offset": 212, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_90_5", + "Offset": 213, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_90_6", + "Offset": 214, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_90_7", + "Offset": 215, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_91_0", + "Offset": 216, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_91_1", + "Offset": 217, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_91_2", + "Offset": 218, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_91_3", + "Offset": 219, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_91_4", + "Offset": 220, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_91_5", + "Offset": 221, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_91_6", + "Offset": 222, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_91_7", + "Offset": 223, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_92_0", + "Offset": 224, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_92_1", + "Offset": 225, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_92_2", + "Offset": 226, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_92_3", + "Offset": 227, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_92_4", + "Offset": 228, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_92_5", + "Offset": 229, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_92_6", + "Offset": 230, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_92_7", + "Offset": 231, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_93_0", + "Offset": 232, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_93_1", + "Offset": 233, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_93_2", + "Offset": 234, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_93_3", + "Offset": 235, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_93_4", + "Offset": 236, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_93_5", + "Offset": 237, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_93_6", + "Offset": 238, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_93_7", + "Offset": 239, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_94_0", + "Offset": 240, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_94_1", + "Offset": 241, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_94_2", + "Offset": 242, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_94_3", + "Offset": 243, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_94_4", + "Offset": 244, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_94_5", + "Offset": 245, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_94_6", + "Offset": 246, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_94_7", + "Offset": 247, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_95_0", + "Offset": 248, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_95_1", + "Offset": 249, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_95_2", + "Offset": 250, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_95_3", + "Offset": 251, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_95_4", + "Offset": 252, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_95_5", + "Offset": 253, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_95_6", + "Offset": 254, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_95_7", + "Offset": 255, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_96_0", + "Offset": 256, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_96_1", + "Offset": 257, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_96_2", + "Offset": 258, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_96_3", + "Offset": 259, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_96_4", + "Offset": 260, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_96_5", + "Offset": 261, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_96_6", + "Offset": 262, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_96_7", + "Offset": 263, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_97_0", + "Offset": 264, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_97_1", + "Offset": 265, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_97_2", + "Offset": 266, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_97_3", + "Offset": 267, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_97_4", + "Offset": 268, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_97_5", + "Offset": 269, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_97_6", + "Offset": 270, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_97_7", + "Offset": 271, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_98_0", + "Offset": 272, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_98_1", + "Offset": 273, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_98_2", + "Offset": 274, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_98_3", + "Offset": 275, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_98_4", + "Offset": 276, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_98_5", + "Offset": 277, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_98_6", + "Offset": 278, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_98_7", + "Offset": 279, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_99_0", + "Offset": 280, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_99_1", + "Offset": 281, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_99_2", + "Offset": 282, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_99_3", + "Offset": 283, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_99_4", + "Offset": 284, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_99_5", + "Offset": 285, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_99_6", + "Offset": 286, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_99_7", + "Offset": 287, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_100_0", + "Offset": 288, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_100_1", + "Offset": 289, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_100_2", + "Offset": 290, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_100_3", + "Offset": 291, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_100_4", + "Offset": 292, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_100_5", + "Offset": 293, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_100_6", + "Offset": 294, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_100_7", + "Offset": 295, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_101_0", + "Offset": 296, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_101_1", + "Offset": 297, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_101_2", + "Offset": 298, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_101_3", + "Offset": 299, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_101_4", + "Offset": 300, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_101_5", + "Offset": 301, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_101_6", + "Offset": 302, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_101_7", + "Offset": 303, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_102_0", + "Offset": 304, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_102_1", + "Offset": 305, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_102_2", + "Offset": 306, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_102_3", + "Offset": 307, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_102_4", + "Offset": 308, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_102_5", + "Offset": 309, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_102_6", + "Offset": 310, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_102_7", + "Offset": 311, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_103_0", + "Offset": 312, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_103_1", + "Offset": 313, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_103_2", + "Offset": 314, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_103_3", + "Offset": 315, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_103_4", + "Offset": 316, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_103_5", + "Offset": 317, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_103_6", + "Offset": 318, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_103_7", + "Offset": 319, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_104_0", + "Offset": 320, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_104_1", + "Offset": 321, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_104_2", + "Offset": 322, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_104_3", + "Offset": 323, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_104_4", + "Offset": 324, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_104_5", + "Offset": 325, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_104_6", + "Offset": 326, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_104_7", + "Offset": 327, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_105_0", + "Offset": 328, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_105_1", + "Offset": 329, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_105_2", + "Offset": 330, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_105_3", + "Offset": 331, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_105_4", + "Offset": 332, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_105_5", + "Offset": 333, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_105_6", + "Offset": 334, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_105_7", + "Offset": 335, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_106_0", + "Offset": 336, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_106_1", + "Offset": 337, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_106_2", + "Offset": 338, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_106_3", + "Offset": 339, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_106_4", + "Offset": 340, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_106_5", + "Offset": 341, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_106_6", + "Offset": 342, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_106_7", + "Offset": 343, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_107_0", + "Offset": 344, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_107_1", + "Offset": 345, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_107_2", + "Offset": 346, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_107_3", + "Offset": 347, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_107_4", + "Offset": 348, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_107_5", + "Offset": 349, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_107_6", + "Offset": 350, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_107_7", + "Offset": 351, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_108_0", + "Offset": 352, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_108_1", + "Offset": 353, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_108_2", + "Offset": 354, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_108_3", + "Offset": 355, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_108_4", + "Offset": 356, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_108_5", + "Offset": 357, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_108_6", + "Offset": 358, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_108_7", + "Offset": 359, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_109_0", + "Offset": 360, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_109_1", + "Offset": 361, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_109_2", + "Offset": 362, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_109_3", + "Offset": 363, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_109_4", + "Offset": 364, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_109_5", + "Offset": 365, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_109_6", + "Offset": 366, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_109_7", + "Offset": 367, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_110_0", + "Offset": 368, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_110_1", + "Offset": 369, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_110_2", + "Offset": 370, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_110_3", + "Offset": 371, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_110_4", + "Offset": 372, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_110_5", + "Offset": 373, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_110_6", + "Offset": 374, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_110_7", + "Offset": 375, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_111_0", + "Offset": 376, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_111_1", + "Offset": 377, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_111_2", + "Offset": 378, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_111_3", + "Offset": 379, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_111_4", + "Offset": 380, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_111_5", + "Offset": 381, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_111_6", + "Offset": 382, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_111_7", + "Offset": 383, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_112_0", + "Offset": 384, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_112_1", + "Offset": 385, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_112_2", + "Offset": 386, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_112_3", + "Offset": 387, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_112_4", + "Offset": 388, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_112_5", + "Offset": 389, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_112_6", + "Offset": 390, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_112_7", + "Offset": 391, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_113_0", + "Offset": 392, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_113_1", + "Offset": 393, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_113_2", + "Offset": 394, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_113_3", + "Offset": 395, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_113_4", + "Offset": 396, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_113_5", + "Offset": 397, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_113_6", + "Offset": 398, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_113_7", + "Offset": 399, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_114_0", + "Offset": 400, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_114_1", + "Offset": 401, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_114_2", + "Offset": 402, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_114_3", + "Offset": 403, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_114_4", + "Offset": 404, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_114_5", + "Offset": 405, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_114_6", + "Offset": 406, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_114_7", + "Offset": 407, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_115_0", + "Offset": 408, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_115_1", + "Offset": 409, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_115_2", + "Offset": 410, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_115_3", + "Offset": 411, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_115_4", + "Offset": 412, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_115_5", + "Offset": 413, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_115_6", + "Offset": 414, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_115_7", + "Offset": 415, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_116_0", + "Offset": 416, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_116_1", + "Offset": 417, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_116_2", + "Offset": 418, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_116_3", + "Offset": 419, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_116_4", + "Offset": 420, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_116_5", + "Offset": 421, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_116_6", + "Offset": 422, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_116_7", + "Offset": 423, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_117_0", + "Offset": 424, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_117_1", + "Offset": 425, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_117_2", + "Offset": 426, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_117_3", + "Offset": 427, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_117_4", + "Offset": 428, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_117_5", + "Offset": 429, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_117_6", + "Offset": 430, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_117_7", + "Offset": 431, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_118_0", + "Offset": 432, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_118_1", + "Offset": 433, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_118_2", + "Offset": 434, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_118_3", + "Offset": 435, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_118_4", + "Offset": 436, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_118_5", + "Offset": 437, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_118_6", + "Offset": 438, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_118_7", + "Offset": 439, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_119_0", + "Offset": 440, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_119_1", + "Offset": 441, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_119_2", + "Offset": 442, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_119_3", + "Offset": 443, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_119_4", + "Offset": 444, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_119_5", + "Offset": 445, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_119_6", + "Offset": 446, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_119_7", + "Offset": 447, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_120_0", + "Offset": 448, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_120_1", + "Offset": 449, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_120_2", + "Offset": 450, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_120_3", + "Offset": 451, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_120_4", + "Offset": 452, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_120_5", + "Offset": 453, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_120_6", + "Offset": 454, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_120_7", + "Offset": 455, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_121_0", + "Offset": 456, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_121_1", + "Offset": 457, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_121_2", + "Offset": 458, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_121_3", + "Offset": 459, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_121_4", + "Offset": 460, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_121_5", + "Offset": 461, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_121_6", + "Offset": 462, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_121_7", + "Offset": 463, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_122_0", + "Offset": 464, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_122_1", + "Offset": 465, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_122_2", + "Offset": 466, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_122_3", + "Offset": 467, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_122_4", + "Offset": 468, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_122_5", + "Offset": 469, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_122_6", + "Offset": 470, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_122_7", + "Offset": 471, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_123_0", + "Offset": 472, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_123_1", + "Offset": 473, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_123_2", + "Offset": 474, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_123_3", + "Offset": 475, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_123_4", + "Offset": 476, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_123_5", + "Offset": 477, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_123_6", + "Offset": 478, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_123_7", + "Offset": 479, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_124_0", + "Offset": 480, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_124_1", + "Offset": 481, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_124_2", + "Offset": 482, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_124_3", + "Offset": 483, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_124_4", + "Offset": 484, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_124_5", + "Offset": 485, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_124_6", + "Offset": 486, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_124_7", + "Offset": 487, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_125_0", + "Offset": 488, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_125_1", + "Offset": 489, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_125_2", + "Offset": 490, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_125_3", + "Offset": 491, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_125_4", + "Offset": 492, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_125_5", + "Offset": 493, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_125_6", + "Offset": 494, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_125_7", + "Offset": 495, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_126_0", + "Offset": 496, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_126_1", + "Offset": 497, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_126_2", + "Offset": 498, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_126_3", + "Offset": 499, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_126_4", + "Offset": 500, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_126_5", + "Offset": 501, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_126_6", + "Offset": 502, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_126_7", + "Offset": 503, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_127_0", + "Offset": 504, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_127_1", + "Offset": 505, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_127_2", + "Offset": 506, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_127_3", + "Offset": 507, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_127_4", + "Offset": 508, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_127_5", + "Offset": 509, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_127_6", + "Offset": 510, + "Length": 1, + "DataType": "Boolean" + }, + { + "Name": "Signals_127_7", + "Offset": 511, + "Length": 1, + "DataType": "Boolean" + } + ] + } + } + ] + }, { "Ref": "mitsubishi_tz535_robot/In_Out_64_byte", "Submodules": [ diff --git a/src/showcase/app/hwc/plc_line.hwl.yml b/src/showcase/app/hwc/plc_line.hwl.yml index 3ae30fb5e..0a1970fd2 100644 --- a/src/showcase/app/hwc/plc_line.hwl.yml +++ b/src/showcase/app/hwc/plc_line.hwl.yml @@ -1,7 +1,7 @@ Devices: - Name: plc_line Modules: - - Apply: 6ES7518-3AT10-0AB0_v4_0 + - Apply: 6ES7518-3AT10-0AB0_v4_1 Arguments: NAME: plc_line IP_ADDRESS_X1: '192.168.100.130/24' diff --git a/src/showcase/app/src/IO/HwIdentifierList.st b/src/showcase/app/src/IO/HwIdentifierList.st index 9181db968..04466f8f2 100644 --- a/src/showcase/app/src/IO/HwIdentifierList.st +++ b/src/showcase/app/src/IO/HwIdentifierList.st @@ -1,5 +1,5 @@ NAMESPACE AXOpen.Showcase - TYPE HwIdentifierList : ARRAY[0..442] OF UINT := + TYPE HwIdentifierList : ARRAY[0..452] OF UINT := [ UINT#32, UINT#48, @@ -443,7 +443,17 @@ NAMESPACE AXOpen.Showcase UINT#681, UINT#682, UINT#683, - UINT#684 + UINT#684, + UINT#685, + UINT#686, + UINT#687, + UINT#688, + UINT#689, + UINT#690, + UINT#691, + UINT#692, + UINT#693, + UINT#694 ]; END_TYPE END_NAMESPACE diff --git a/src/showcase/app/src/IO/HwIdentifiers.st b/src/showcase/app/src/IO/HwIdentifiers.st index fd2efcbe9..dd45f1a8b 100644 --- a/src/showcase/app/src/IO/HwIdentifiers.st +++ b/src/showcase/app/src/IO/HwIdentifiers.st @@ -444,7 +444,17 @@ NAMESPACE AXOpen.Showcase abb_irc5_robot_DI_64_bytes_DI_64_bytes_HwID := UINT#681, abb_irc5_robot_abb_irc5_robot_Robot_Basic_Device_HwID := UINT#682, plc_line_Rail_0_HwID := UINT#683, - plc_line_A1_A1_HwID := UINT#684 + plc_line_A1_A1_HwID := UINT#684, + kuka_rb2_kuka_rb2_Interface1_HwID := UINT#685, + kuka_rb2_HwID := UINT#686, + kuka_rb2_kuka_rb2_Interface1_Port_1_HwID := UINT#687, + kuka_rb2_kuka_rb2_Interface1_Port_2_HwID := UINT#688, + kuka_rb2_kuka_rb2_Interface1_Port_3_HwID := UINT#689, + kuka_rb2_kuka_rb2_Interface1_Port_4_HwID := UINT#690, + kuka_rb2_Rack_HwID := UINT#691, + kuka_rb2_kuka_rb2_HwID := UINT#692, + kuka_rb2_DIO512_512_digital_in__and_outputs_HwID := UINT#693, + kuka_rb2_kuka_rb2_KUKA_PROFINET_6_0_HwID := UINT#694 ); END_TYPE END_NAMESPACE diff --git a/src/showcase/app/src/IO/Inputs.st b/src/showcase/app/src/IO/Inputs.st index b10aaedc0..9ec604baf 100644 --- a/src/showcase/app/src/IO/Inputs.st +++ b/src/showcase/app/src/IO/Inputs.st @@ -374,6 +374,9 @@ NAMESPACE AXOpen.Showcase // Module kuka_rb1/DIO512 kuka_rb1_DIO512_Input AT %B5833 : kuka_rb1_DIO512_Input_Layout; + // Module kuka_rb2/DIO512 + kuka_rb2_DIO512_Input AT %B6029 : kuka_rb2_DIO512_Input_Layout; + // Module mitsubishi_tz535_robot/In_Out_64_byte mitsubishi_tz535_robot_In_Out_64_byte_Input AT %B5769 : mitsubishi_tz535_robot_In_Out_64_byte_Input_Layout; diff --git a/src/showcase/app/src/IO/IoStructures.st b/src/showcase/app/src/IO/IoStructures.st index e26c6e136..73c44e152 100644 --- a/src/showcase/app/src/IO/IoStructures.st +++ b/src/showcase/app/src/IO/IoStructures.st @@ -5822,6 +5822,1044 @@ NAMESPACE AXOpen.Showcase END_STRUCT; END_TYPE + TYPE + {S7.extern=ReadWrite} + {#ix-attr:[Container(Layout.Wrap)]} + kuka_rb2_DIO512_Input_Layout : STRUCT + Signals_0_0 AT %X0.0 : BOOL; + Signals_0_1 AT %X0.1 : BOOL; + Signals_0_2 AT %X0.2 : BOOL; + Signals_0_3 AT %X0.3 : BOOL; + Signals_0_4 AT %X0.4 : BOOL; + Signals_0_5 AT %X0.5 : BOOL; + Signals_0_6 AT %X0.6 : BOOL; + Signals_0_7 AT %X0.7 : BOOL; + Signals_1_0 AT %X1.0 : BOOL; + Signals_1_1 AT %X1.1 : BOOL; + Signals_1_2 AT %X1.2 : BOOL; + Signals_1_3 AT %X1.3 : BOOL; + Signals_1_4 AT %X1.4 : BOOL; + Signals_1_5 AT %X1.5 : BOOL; + Signals_1_6 AT %X1.6 : BOOL; + Signals_1_7 AT %X1.7 : BOOL; + Signals_2_0 AT %X2.0 : BOOL; + Signals_2_1 AT %X2.1 : BOOL; + Signals_2_2 AT %X2.2 : BOOL; + Signals_2_3 AT %X2.3 : BOOL; + Signals_2_4 AT %X2.4 : BOOL; + Signals_2_5 AT %X2.5 : BOOL; + Signals_2_6 AT %X2.6 : BOOL; + Signals_2_7 AT %X2.7 : BOOL; + Signals_3_0 AT %X3.0 : BOOL; + Signals_3_1 AT %X3.1 : BOOL; + Signals_3_2 AT %X3.2 : BOOL; + Signals_3_3 AT %X3.3 : BOOL; + Signals_3_4 AT %X3.4 : BOOL; + Signals_3_5 AT %X3.5 : BOOL; + Signals_3_6 AT %X3.6 : BOOL; + Signals_3_7 AT %X3.7 : BOOL; + Signals_4_0 AT %X4.0 : BOOL; + Signals_4_1 AT %X4.1 : BOOL; + Signals_4_2 AT %X4.2 : BOOL; + Signals_4_3 AT %X4.3 : BOOL; + Signals_4_4 AT %X4.4 : BOOL; + Signals_4_5 AT %X4.5 : BOOL; + Signals_4_6 AT %X4.6 : BOOL; + Signals_4_7 AT %X4.7 : BOOL; + Signals_5_0 AT %X5.0 : BOOL; + Signals_5_1 AT %X5.1 : BOOL; + Signals_5_2 AT %X5.2 : BOOL; + Signals_5_3 AT %X5.3 : BOOL; + Signals_5_4 AT %X5.4 : BOOL; + Signals_5_5 AT %X5.5 : BOOL; + Signals_5_6 AT %X5.6 : BOOL; + Signals_5_7 AT %X5.7 : BOOL; + Signals_6_0 AT %X6.0 : BOOL; + Signals_6_1 AT %X6.1 : BOOL; + Signals_6_2 AT %X6.2 : BOOL; + Signals_6_3 AT %X6.3 : BOOL; + Signals_6_4 AT %X6.4 : BOOL; + Signals_6_5 AT %X6.5 : BOOL; + Signals_6_6 AT %X6.6 : BOOL; + Signals_6_7 AT %X6.7 : BOOL; + Signals_7_0 AT %X7.0 : BOOL; + Signals_7_1 AT %X7.1 : BOOL; + Signals_7_2 AT %X7.2 : BOOL; + Signals_7_3 AT %X7.3 : BOOL; + Signals_7_4 AT %X7.4 : BOOL; + Signals_7_5 AT %X7.5 : BOOL; + Signals_7_6 AT %X7.6 : BOOL; + Signals_7_7 AT %X7.7 : BOOL; + Signals_8_0 AT %X8.0 : BOOL; + Signals_8_1 AT %X8.1 : BOOL; + Signals_8_2 AT %X8.2 : BOOL; + Signals_8_3 AT %X8.3 : BOOL; + Signals_8_4 AT %X8.4 : BOOL; + Signals_8_5 AT %X8.5 : BOOL; + Signals_8_6 AT %X8.6 : BOOL; + Signals_8_7 AT %X8.7 : BOOL; + Signals_9_0 AT %X9.0 : BOOL; + Signals_9_1 AT %X9.1 : BOOL; + Signals_9_2 AT %X9.2 : BOOL; + Signals_9_3 AT %X9.3 : BOOL; + Signals_9_4 AT %X9.4 : BOOL; + Signals_9_5 AT %X9.5 : BOOL; + Signals_9_6 AT %X9.6 : BOOL; + Signals_9_7 AT %X9.7 : BOOL; + Signals_10_0 AT %X10.0 : BOOL; + Signals_10_1 AT %X10.1 : BOOL; + Signals_10_2 AT %X10.2 : BOOL; + Signals_10_3 AT %X10.3 : BOOL; + Signals_10_4 AT %X10.4 : BOOL; + Signals_10_5 AT %X10.5 : BOOL; + Signals_10_6 AT %X10.6 : BOOL; + Signals_10_7 AT %X10.7 : BOOL; + Signals_11_0 AT %X11.0 : BOOL; + Signals_11_1 AT %X11.1 : BOOL; + Signals_11_2 AT %X11.2 : BOOL; + Signals_11_3 AT %X11.3 : BOOL; + Signals_11_4 AT %X11.4 : BOOL; + Signals_11_5 AT %X11.5 : BOOL; + Signals_11_6 AT %X11.6 : BOOL; + Signals_11_7 AT %X11.7 : BOOL; + Signals_12_0 AT %X12.0 : BOOL; + Signals_12_1 AT %X12.1 : BOOL; + Signals_12_2 AT %X12.2 : BOOL; + Signals_12_3 AT %X12.3 : BOOL; + Signals_12_4 AT %X12.4 : BOOL; + Signals_12_5 AT %X12.5 : BOOL; + Signals_12_6 AT %X12.6 : BOOL; + Signals_12_7 AT %X12.7 : BOOL; + Signals_13_0 AT %X13.0 : BOOL; + Signals_13_1 AT %X13.1 : BOOL; + Signals_13_2 AT %X13.2 : BOOL; + Signals_13_3 AT %X13.3 : BOOL; + Signals_13_4 AT %X13.4 : BOOL; + Signals_13_5 AT %X13.5 : BOOL; + Signals_13_6 AT %X13.6 : BOOL; + Signals_13_7 AT %X13.7 : BOOL; + Signals_14_0 AT %X14.0 : BOOL; + Signals_14_1 AT %X14.1 : BOOL; + Signals_14_2 AT %X14.2 : BOOL; + Signals_14_3 AT %X14.3 : BOOL; + Signals_14_4 AT %X14.4 : BOOL; + Signals_14_5 AT %X14.5 : BOOL; + Signals_14_6 AT %X14.6 : BOOL; + Signals_14_7 AT %X14.7 : BOOL; + Signals_15_0 AT %X15.0 : BOOL; + Signals_15_1 AT %X15.1 : BOOL; + Signals_15_2 AT %X15.2 : BOOL; + Signals_15_3 AT %X15.3 : BOOL; + Signals_15_4 AT %X15.4 : BOOL; + Signals_15_5 AT %X15.5 : BOOL; + Signals_15_6 AT %X15.6 : BOOL; + Signals_15_7 AT %X15.7 : BOOL; + Signals_16_0 AT %X16.0 : BOOL; + Signals_16_1 AT %X16.1 : BOOL; + Signals_16_2 AT %X16.2 : BOOL; + Signals_16_3 AT %X16.3 : BOOL; + Signals_16_4 AT %X16.4 : BOOL; + Signals_16_5 AT %X16.5 : BOOL; + Signals_16_6 AT %X16.6 : BOOL; + Signals_16_7 AT %X16.7 : BOOL; + Signals_17_0 AT %X17.0 : BOOL; + Signals_17_1 AT %X17.1 : BOOL; + Signals_17_2 AT %X17.2 : BOOL; + Signals_17_3 AT %X17.3 : BOOL; + Signals_17_4 AT %X17.4 : BOOL; + Signals_17_5 AT %X17.5 : BOOL; + Signals_17_6 AT %X17.6 : BOOL; + Signals_17_7 AT %X17.7 : BOOL; + Signals_18_0 AT %X18.0 : BOOL; + Signals_18_1 AT %X18.1 : BOOL; + Signals_18_2 AT %X18.2 : BOOL; + Signals_18_3 AT %X18.3 : BOOL; + Signals_18_4 AT %X18.4 : BOOL; + Signals_18_5 AT %X18.5 : BOOL; + Signals_18_6 AT %X18.6 : BOOL; + Signals_18_7 AT %X18.7 : BOOL; + Signals_19_0 AT %X19.0 : BOOL; + Signals_19_1 AT %X19.1 : BOOL; + Signals_19_2 AT %X19.2 : BOOL; + Signals_19_3 AT %X19.3 : BOOL; + Signals_19_4 AT %X19.4 : BOOL; + Signals_19_5 AT %X19.5 : BOOL; + Signals_19_6 AT %X19.6 : BOOL; + Signals_19_7 AT %X19.7 : BOOL; + Signals_20_0 AT %X20.0 : BOOL; + Signals_20_1 AT %X20.1 : BOOL; + Signals_20_2 AT %X20.2 : BOOL; + Signals_20_3 AT %X20.3 : BOOL; + Signals_20_4 AT %X20.4 : BOOL; + Signals_20_5 AT %X20.5 : BOOL; + Signals_20_6 AT %X20.6 : BOOL; + Signals_20_7 AT %X20.7 : BOOL; + Signals_21_0 AT %X21.0 : BOOL; + Signals_21_1 AT %X21.1 : BOOL; + Signals_21_2 AT %X21.2 : BOOL; + Signals_21_3 AT %X21.3 : BOOL; + Signals_21_4 AT %X21.4 : BOOL; + Signals_21_5 AT %X21.5 : BOOL; + Signals_21_6 AT %X21.6 : BOOL; + Signals_21_7 AT %X21.7 : BOOL; + Signals_22_0 AT %X22.0 : BOOL; + Signals_22_1 AT %X22.1 : BOOL; + Signals_22_2 AT %X22.2 : BOOL; + Signals_22_3 AT %X22.3 : BOOL; + Signals_22_4 AT %X22.4 : BOOL; + Signals_22_5 AT %X22.5 : BOOL; + Signals_22_6 AT %X22.6 : BOOL; + Signals_22_7 AT %X22.7 : BOOL; + Signals_23_0 AT %X23.0 : BOOL; + Signals_23_1 AT %X23.1 : BOOL; + Signals_23_2 AT %X23.2 : BOOL; + Signals_23_3 AT %X23.3 : BOOL; + Signals_23_4 AT %X23.4 : BOOL; + Signals_23_5 AT %X23.5 : BOOL; + Signals_23_6 AT %X23.6 : BOOL; + Signals_23_7 AT %X23.7 : BOOL; + Signals_24_0 AT %X24.0 : BOOL; + Signals_24_1 AT %X24.1 : BOOL; + Signals_24_2 AT %X24.2 : BOOL; + Signals_24_3 AT %X24.3 : BOOL; + Signals_24_4 AT %X24.4 : BOOL; + Signals_24_5 AT %X24.5 : BOOL; + Signals_24_6 AT %X24.6 : BOOL; + Signals_24_7 AT %X24.7 : BOOL; + Signals_25_0 AT %X25.0 : BOOL; + Signals_25_1 AT %X25.1 : BOOL; + Signals_25_2 AT %X25.2 : BOOL; + Signals_25_3 AT %X25.3 : BOOL; + Signals_25_4 AT %X25.4 : BOOL; + Signals_25_5 AT %X25.5 : BOOL; + Signals_25_6 AT %X25.6 : BOOL; + Signals_25_7 AT %X25.7 : BOOL; + Signals_26_0 AT %X26.0 : BOOL; + Signals_26_1 AT %X26.1 : BOOL; + Signals_26_2 AT %X26.2 : BOOL; + Signals_26_3 AT %X26.3 : BOOL; + Signals_26_4 AT %X26.4 : BOOL; + Signals_26_5 AT %X26.5 : BOOL; + Signals_26_6 AT %X26.6 : BOOL; + Signals_26_7 AT %X26.7 : BOOL; + Signals_27_0 AT %X27.0 : BOOL; + Signals_27_1 AT %X27.1 : BOOL; + Signals_27_2 AT %X27.2 : BOOL; + Signals_27_3 AT %X27.3 : BOOL; + Signals_27_4 AT %X27.4 : BOOL; + Signals_27_5 AT %X27.5 : BOOL; + Signals_27_6 AT %X27.6 : BOOL; + Signals_27_7 AT %X27.7 : BOOL; + Signals_28_0 AT %X28.0 : BOOL; + Signals_28_1 AT %X28.1 : BOOL; + Signals_28_2 AT %X28.2 : BOOL; + Signals_28_3 AT %X28.3 : BOOL; + Signals_28_4 AT %X28.4 : BOOL; + Signals_28_5 AT %X28.5 : BOOL; + Signals_28_6 AT %X28.6 : BOOL; + Signals_28_7 AT %X28.7 : BOOL; + Signals_29_0 AT %X29.0 : BOOL; + Signals_29_1 AT %X29.1 : BOOL; + Signals_29_2 AT %X29.2 : BOOL; + Signals_29_3 AT %X29.3 : BOOL; + Signals_29_4 AT %X29.4 : BOOL; + Signals_29_5 AT %X29.5 : BOOL; + Signals_29_6 AT %X29.6 : BOOL; + Signals_29_7 AT %X29.7 : BOOL; + Signals_30_0 AT %X30.0 : BOOL; + Signals_30_1 AT %X30.1 : BOOL; + Signals_30_2 AT %X30.2 : BOOL; + Signals_30_3 AT %X30.3 : BOOL; + Signals_30_4 AT %X30.4 : BOOL; + Signals_30_5 AT %X30.5 : BOOL; + Signals_30_6 AT %X30.6 : BOOL; + Signals_30_7 AT %X30.7 : BOOL; + Signals_31_0 AT %X31.0 : BOOL; + Signals_31_1 AT %X31.1 : BOOL; + Signals_31_2 AT %X31.2 : BOOL; + Signals_31_3 AT %X31.3 : BOOL; + Signals_31_4 AT %X31.4 : BOOL; + Signals_31_5 AT %X31.5 : BOOL; + Signals_31_6 AT %X31.6 : BOOL; + Signals_31_7 AT %X31.7 : BOOL; + Signals_32_0 AT %X32.0 : BOOL; + Signals_32_1 AT %X32.1 : BOOL; + Signals_32_2 AT %X32.2 : BOOL; + Signals_32_3 AT %X32.3 : BOOL; + Signals_32_4 AT %X32.4 : BOOL; + Signals_32_5 AT %X32.5 : BOOL; + Signals_32_6 AT %X32.6 : BOOL; + Signals_32_7 AT %X32.7 : BOOL; + Signals_33_0 AT %X33.0 : BOOL; + Signals_33_1 AT %X33.1 : BOOL; + Signals_33_2 AT %X33.2 : BOOL; + Signals_33_3 AT %X33.3 : BOOL; + Signals_33_4 AT %X33.4 : BOOL; + Signals_33_5 AT %X33.5 : BOOL; + Signals_33_6 AT %X33.6 : BOOL; + Signals_33_7 AT %X33.7 : BOOL; + Signals_34_0 AT %X34.0 : BOOL; + Signals_34_1 AT %X34.1 : BOOL; + Signals_34_2 AT %X34.2 : BOOL; + Signals_34_3 AT %X34.3 : BOOL; + Signals_34_4 AT %X34.4 : BOOL; + Signals_34_5 AT %X34.5 : BOOL; + Signals_34_6 AT %X34.6 : BOOL; + Signals_34_7 AT %X34.7 : BOOL; + Signals_35_0 AT %X35.0 : BOOL; + Signals_35_1 AT %X35.1 : BOOL; + Signals_35_2 AT %X35.2 : BOOL; + Signals_35_3 AT %X35.3 : BOOL; + Signals_35_4 AT %X35.4 : BOOL; + Signals_35_5 AT %X35.5 : BOOL; + Signals_35_6 AT %X35.6 : BOOL; + Signals_35_7 AT %X35.7 : BOOL; + Signals_36_0 AT %X36.0 : BOOL; + Signals_36_1 AT %X36.1 : BOOL; + Signals_36_2 AT %X36.2 : BOOL; + Signals_36_3 AT %X36.3 : BOOL; + Signals_36_4 AT %X36.4 : BOOL; + Signals_36_5 AT %X36.5 : BOOL; + Signals_36_6 AT %X36.6 : BOOL; + Signals_36_7 AT %X36.7 : BOOL; + Signals_37_0 AT %X37.0 : BOOL; + Signals_37_1 AT %X37.1 : BOOL; + Signals_37_2 AT %X37.2 : BOOL; + Signals_37_3 AT %X37.3 : BOOL; + Signals_37_4 AT %X37.4 : BOOL; + Signals_37_5 AT %X37.5 : BOOL; + Signals_37_6 AT %X37.6 : BOOL; + Signals_37_7 AT %X37.7 : BOOL; + Signals_38_0 AT %X38.0 : BOOL; + Signals_38_1 AT %X38.1 : BOOL; + Signals_38_2 AT %X38.2 : BOOL; + Signals_38_3 AT %X38.3 : BOOL; + Signals_38_4 AT %X38.4 : BOOL; + Signals_38_5 AT %X38.5 : BOOL; + Signals_38_6 AT %X38.6 : BOOL; + Signals_38_7 AT %X38.7 : BOOL; + Signals_39_0 AT %X39.0 : BOOL; + Signals_39_1 AT %X39.1 : BOOL; + Signals_39_2 AT %X39.2 : BOOL; + Signals_39_3 AT %X39.3 : BOOL; + Signals_39_4 AT %X39.4 : BOOL; + Signals_39_5 AT %X39.5 : BOOL; + Signals_39_6 AT %X39.6 : BOOL; + Signals_39_7 AT %X39.7 : BOOL; + Signals_40_0 AT %X40.0 : BOOL; + Signals_40_1 AT %X40.1 : BOOL; + Signals_40_2 AT %X40.2 : BOOL; + Signals_40_3 AT %X40.3 : BOOL; + Signals_40_4 AT %X40.4 : BOOL; + Signals_40_5 AT %X40.5 : BOOL; + Signals_40_6 AT %X40.6 : BOOL; + Signals_40_7 AT %X40.7 : BOOL; + Signals_41_0 AT %X41.0 : BOOL; + Signals_41_1 AT %X41.1 : BOOL; + Signals_41_2 AT %X41.2 : BOOL; + Signals_41_3 AT %X41.3 : BOOL; + Signals_41_4 AT %X41.4 : BOOL; + Signals_41_5 AT %X41.5 : BOOL; + Signals_41_6 AT %X41.6 : BOOL; + Signals_41_7 AT %X41.7 : BOOL; + Signals_42_0 AT %X42.0 : BOOL; + Signals_42_1 AT %X42.1 : BOOL; + Signals_42_2 AT %X42.2 : BOOL; + Signals_42_3 AT %X42.3 : BOOL; + Signals_42_4 AT %X42.4 : BOOL; + Signals_42_5 AT %X42.5 : BOOL; + Signals_42_6 AT %X42.6 : BOOL; + Signals_42_7 AT %X42.7 : BOOL; + Signals_43_0 AT %X43.0 : BOOL; + Signals_43_1 AT %X43.1 : BOOL; + Signals_43_2 AT %X43.2 : BOOL; + Signals_43_3 AT %X43.3 : BOOL; + Signals_43_4 AT %X43.4 : BOOL; + Signals_43_5 AT %X43.5 : BOOL; + Signals_43_6 AT %X43.6 : BOOL; + Signals_43_7 AT %X43.7 : BOOL; + Signals_44_0 AT %X44.0 : BOOL; + Signals_44_1 AT %X44.1 : BOOL; + Signals_44_2 AT %X44.2 : BOOL; + Signals_44_3 AT %X44.3 : BOOL; + Signals_44_4 AT %X44.4 : BOOL; + Signals_44_5 AT %X44.5 : BOOL; + Signals_44_6 AT %X44.6 : BOOL; + Signals_44_7 AT %X44.7 : BOOL; + Signals_45_0 AT %X45.0 : BOOL; + Signals_45_1 AT %X45.1 : BOOL; + Signals_45_2 AT %X45.2 : BOOL; + Signals_45_3 AT %X45.3 : BOOL; + Signals_45_4 AT %X45.4 : BOOL; + Signals_45_5 AT %X45.5 : BOOL; + Signals_45_6 AT %X45.6 : BOOL; + Signals_45_7 AT %X45.7 : BOOL; + Signals_46_0 AT %X46.0 : BOOL; + Signals_46_1 AT %X46.1 : BOOL; + Signals_46_2 AT %X46.2 : BOOL; + Signals_46_3 AT %X46.3 : BOOL; + Signals_46_4 AT %X46.4 : BOOL; + Signals_46_5 AT %X46.5 : BOOL; + Signals_46_6 AT %X46.6 : BOOL; + Signals_46_7 AT %X46.7 : BOOL; + Signals_47_0 AT %X47.0 : BOOL; + Signals_47_1 AT %X47.1 : BOOL; + Signals_47_2 AT %X47.2 : BOOL; + Signals_47_3 AT %X47.3 : BOOL; + Signals_47_4 AT %X47.4 : BOOL; + Signals_47_5 AT %X47.5 : BOOL; + Signals_47_6 AT %X47.6 : BOOL; + Signals_47_7 AT %X47.7 : BOOL; + Signals_48_0 AT %X48.0 : BOOL; + Signals_48_1 AT %X48.1 : BOOL; + Signals_48_2 AT %X48.2 : BOOL; + Signals_48_3 AT %X48.3 : BOOL; + Signals_48_4 AT %X48.4 : BOOL; + Signals_48_5 AT %X48.5 : BOOL; + Signals_48_6 AT %X48.6 : BOOL; + Signals_48_7 AT %X48.7 : BOOL; + Signals_49_0 AT %X49.0 : BOOL; + Signals_49_1 AT %X49.1 : BOOL; + Signals_49_2 AT %X49.2 : BOOL; + Signals_49_3 AT %X49.3 : BOOL; + Signals_49_4 AT %X49.4 : BOOL; + Signals_49_5 AT %X49.5 : BOOL; + Signals_49_6 AT %X49.6 : BOOL; + Signals_49_7 AT %X49.7 : BOOL; + Signals_50_0 AT %X50.0 : BOOL; + Signals_50_1 AT %X50.1 : BOOL; + Signals_50_2 AT %X50.2 : BOOL; + Signals_50_3 AT %X50.3 : BOOL; + Signals_50_4 AT %X50.4 : BOOL; + Signals_50_5 AT %X50.5 : BOOL; + Signals_50_6 AT %X50.6 : BOOL; + Signals_50_7 AT %X50.7 : BOOL; + Signals_51_0 AT %X51.0 : BOOL; + Signals_51_1 AT %X51.1 : BOOL; + Signals_51_2 AT %X51.2 : BOOL; + Signals_51_3 AT %X51.3 : BOOL; + Signals_51_4 AT %X51.4 : BOOL; + Signals_51_5 AT %X51.5 : BOOL; + Signals_51_6 AT %X51.6 : BOOL; + Signals_51_7 AT %X51.7 : BOOL; + Signals_52_0 AT %X52.0 : BOOL; + Signals_52_1 AT %X52.1 : BOOL; + Signals_52_2 AT %X52.2 : BOOL; + Signals_52_3 AT %X52.3 : BOOL; + Signals_52_4 AT %X52.4 : BOOL; + Signals_52_5 AT %X52.5 : BOOL; + Signals_52_6 AT %X52.6 : BOOL; + Signals_52_7 AT %X52.7 : BOOL; + Signals_53_0 AT %X53.0 : BOOL; + Signals_53_1 AT %X53.1 : BOOL; + Signals_53_2 AT %X53.2 : BOOL; + Signals_53_3 AT %X53.3 : BOOL; + Signals_53_4 AT %X53.4 : BOOL; + Signals_53_5 AT %X53.5 : BOOL; + Signals_53_6 AT %X53.6 : BOOL; + Signals_53_7 AT %X53.7 : BOOL; + Signals_54_0 AT %X54.0 : BOOL; + Signals_54_1 AT %X54.1 : BOOL; + Signals_54_2 AT %X54.2 : BOOL; + Signals_54_3 AT %X54.3 : BOOL; + Signals_54_4 AT %X54.4 : BOOL; + Signals_54_5 AT %X54.5 : BOOL; + Signals_54_6 AT %X54.6 : BOOL; + Signals_54_7 AT %X54.7 : BOOL; + Signals_55_0 AT %X55.0 : BOOL; + Signals_55_1 AT %X55.1 : BOOL; + Signals_55_2 AT %X55.2 : BOOL; + Signals_55_3 AT %X55.3 : BOOL; + Signals_55_4 AT %X55.4 : BOOL; + Signals_55_5 AT %X55.5 : BOOL; + Signals_55_6 AT %X55.6 : BOOL; + Signals_55_7 AT %X55.7 : BOOL; + Signals_56_0 AT %X56.0 : BOOL; + Signals_56_1 AT %X56.1 : BOOL; + Signals_56_2 AT %X56.2 : BOOL; + Signals_56_3 AT %X56.3 : BOOL; + Signals_56_4 AT %X56.4 : BOOL; + Signals_56_5 AT %X56.5 : BOOL; + Signals_56_6 AT %X56.6 : BOOL; + Signals_56_7 AT %X56.7 : BOOL; + Signals_57_0 AT %X57.0 : BOOL; + Signals_57_1 AT %X57.1 : BOOL; + Signals_57_2 AT %X57.2 : BOOL; + Signals_57_3 AT %X57.3 : BOOL; + Signals_57_4 AT %X57.4 : BOOL; + Signals_57_5 AT %X57.5 : BOOL; + Signals_57_6 AT %X57.6 : BOOL; + Signals_57_7 AT %X57.7 : BOOL; + Signals_58_0 AT %X58.0 : BOOL; + Signals_58_1 AT %X58.1 : BOOL; + Signals_58_2 AT %X58.2 : BOOL; + Signals_58_3 AT %X58.3 : BOOL; + Signals_58_4 AT %X58.4 : BOOL; + Signals_58_5 AT %X58.5 : BOOL; + Signals_58_6 AT %X58.6 : BOOL; + Signals_58_7 AT %X58.7 : BOOL; + Signals_59_0 AT %X59.0 : BOOL; + Signals_59_1 AT %X59.1 : BOOL; + Signals_59_2 AT %X59.2 : BOOL; + Signals_59_3 AT %X59.3 : BOOL; + Signals_59_4 AT %X59.4 : BOOL; + Signals_59_5 AT %X59.5 : BOOL; + Signals_59_6 AT %X59.6 : BOOL; + Signals_59_7 AT %X59.7 : BOOL; + Signals_60_0 AT %X60.0 : BOOL; + Signals_60_1 AT %X60.1 : BOOL; + Signals_60_2 AT %X60.2 : BOOL; + Signals_60_3 AT %X60.3 : BOOL; + Signals_60_4 AT %X60.4 : BOOL; + Signals_60_5 AT %X60.5 : BOOL; + Signals_60_6 AT %X60.6 : BOOL; + Signals_60_7 AT %X60.7 : BOOL; + Signals_61_0 AT %X61.0 : BOOL; + Signals_61_1 AT %X61.1 : BOOL; + Signals_61_2 AT %X61.2 : BOOL; + Signals_61_3 AT %X61.3 : BOOL; + Signals_61_4 AT %X61.4 : BOOL; + Signals_61_5 AT %X61.5 : BOOL; + Signals_61_6 AT %X61.6 : BOOL; + Signals_61_7 AT %X61.7 : BOOL; + Signals_62_0 AT %X62.0 : BOOL; + Signals_62_1 AT %X62.1 : BOOL; + Signals_62_2 AT %X62.2 : BOOL; + Signals_62_3 AT %X62.3 : BOOL; + Signals_62_4 AT %X62.4 : BOOL; + Signals_62_5 AT %X62.5 : BOOL; + Signals_62_6 AT %X62.6 : BOOL; + Signals_62_7 AT %X62.7 : BOOL; + Signals_63_0 AT %X63.0 : BOOL; + Signals_63_1 AT %X63.1 : BOOL; + Signals_63_2 AT %X63.2 : BOOL; + Signals_63_3 AT %X63.3 : BOOL; + Signals_63_4 AT %X63.4 : BOOL; + Signals_63_5 AT %X63.5 : BOOL; + Signals_63_6 AT %X63.6 : BOOL; + Signals_63_7 AT %X63.7 : BOOL; + END_STRUCT; + END_TYPE + + TYPE + {S7.extern=ReadWrite} + {#ix-attr:[Container(Layout.Wrap)]} + kuka_rb2_DIO512_Output_Layout : STRUCT + Signals_64_0 AT %X0.0 : BOOL; + Signals_64_1 AT %X0.1 : BOOL; + Signals_64_2 AT %X0.2 : BOOL; + Signals_64_3 AT %X0.3 : BOOL; + Signals_64_4 AT %X0.4 : BOOL; + Signals_64_5 AT %X0.5 : BOOL; + Signals_64_6 AT %X0.6 : BOOL; + Signals_64_7 AT %X0.7 : BOOL; + Signals_65_0 AT %X1.0 : BOOL; + Signals_65_1 AT %X1.1 : BOOL; + Signals_65_2 AT %X1.2 : BOOL; + Signals_65_3 AT %X1.3 : BOOL; + Signals_65_4 AT %X1.4 : BOOL; + Signals_65_5 AT %X1.5 : BOOL; + Signals_65_6 AT %X1.6 : BOOL; + Signals_65_7 AT %X1.7 : BOOL; + Signals_66_0 AT %X2.0 : BOOL; + Signals_66_1 AT %X2.1 : BOOL; + Signals_66_2 AT %X2.2 : BOOL; + Signals_66_3 AT %X2.3 : BOOL; + Signals_66_4 AT %X2.4 : BOOL; + Signals_66_5 AT %X2.5 : BOOL; + Signals_66_6 AT %X2.6 : BOOL; + Signals_66_7 AT %X2.7 : BOOL; + Signals_67_0 AT %X3.0 : BOOL; + Signals_67_1 AT %X3.1 : BOOL; + Signals_67_2 AT %X3.2 : BOOL; + Signals_67_3 AT %X3.3 : BOOL; + Signals_67_4 AT %X3.4 : BOOL; + Signals_67_5 AT %X3.5 : BOOL; + Signals_67_6 AT %X3.6 : BOOL; + Signals_67_7 AT %X3.7 : BOOL; + Signals_68_0 AT %X4.0 : BOOL; + Signals_68_1 AT %X4.1 : BOOL; + Signals_68_2 AT %X4.2 : BOOL; + Signals_68_3 AT %X4.3 : BOOL; + Signals_68_4 AT %X4.4 : BOOL; + Signals_68_5 AT %X4.5 : BOOL; + Signals_68_6 AT %X4.6 : BOOL; + Signals_68_7 AT %X4.7 : BOOL; + Signals_69_0 AT %X5.0 : BOOL; + Signals_69_1 AT %X5.1 : BOOL; + Signals_69_2 AT %X5.2 : BOOL; + Signals_69_3 AT %X5.3 : BOOL; + Signals_69_4 AT %X5.4 : BOOL; + Signals_69_5 AT %X5.5 : BOOL; + Signals_69_6 AT %X5.6 : BOOL; + Signals_69_7 AT %X5.7 : BOOL; + Signals_70_0 AT %X6.0 : BOOL; + Signals_70_1 AT %X6.1 : BOOL; + Signals_70_2 AT %X6.2 : BOOL; + Signals_70_3 AT %X6.3 : BOOL; + Signals_70_4 AT %X6.4 : BOOL; + Signals_70_5 AT %X6.5 : BOOL; + Signals_70_6 AT %X6.6 : BOOL; + Signals_70_7 AT %X6.7 : BOOL; + Signals_71_0 AT %X7.0 : BOOL; + Signals_71_1 AT %X7.1 : BOOL; + Signals_71_2 AT %X7.2 : BOOL; + Signals_71_3 AT %X7.3 : BOOL; + Signals_71_4 AT %X7.4 : BOOL; + Signals_71_5 AT %X7.5 : BOOL; + Signals_71_6 AT %X7.6 : BOOL; + Signals_71_7 AT %X7.7 : BOOL; + Signals_72_0 AT %X8.0 : BOOL; + Signals_72_1 AT %X8.1 : BOOL; + Signals_72_2 AT %X8.2 : BOOL; + Signals_72_3 AT %X8.3 : BOOL; + Signals_72_4 AT %X8.4 : BOOL; + Signals_72_5 AT %X8.5 : BOOL; + Signals_72_6 AT %X8.6 : BOOL; + Signals_72_7 AT %X8.7 : BOOL; + Signals_73_0 AT %X9.0 : BOOL; + Signals_73_1 AT %X9.1 : BOOL; + Signals_73_2 AT %X9.2 : BOOL; + Signals_73_3 AT %X9.3 : BOOL; + Signals_73_4 AT %X9.4 : BOOL; + Signals_73_5 AT %X9.5 : BOOL; + Signals_73_6 AT %X9.6 : BOOL; + Signals_73_7 AT %X9.7 : BOOL; + Signals_74_0 AT %X10.0 : BOOL; + Signals_74_1 AT %X10.1 : BOOL; + Signals_74_2 AT %X10.2 : BOOL; + Signals_74_3 AT %X10.3 : BOOL; + Signals_74_4 AT %X10.4 : BOOL; + Signals_74_5 AT %X10.5 : BOOL; + Signals_74_6 AT %X10.6 : BOOL; + Signals_74_7 AT %X10.7 : BOOL; + Signals_75_0 AT %X11.0 : BOOL; + Signals_75_1 AT %X11.1 : BOOL; + Signals_75_2 AT %X11.2 : BOOL; + Signals_75_3 AT %X11.3 : BOOL; + Signals_75_4 AT %X11.4 : BOOL; + Signals_75_5 AT %X11.5 : BOOL; + Signals_75_6 AT %X11.6 : BOOL; + Signals_75_7 AT %X11.7 : BOOL; + Signals_76_0 AT %X12.0 : BOOL; + Signals_76_1 AT %X12.1 : BOOL; + Signals_76_2 AT %X12.2 : BOOL; + Signals_76_3 AT %X12.3 : BOOL; + Signals_76_4 AT %X12.4 : BOOL; + Signals_76_5 AT %X12.5 : BOOL; + Signals_76_6 AT %X12.6 : BOOL; + Signals_76_7 AT %X12.7 : BOOL; + Signals_77_0 AT %X13.0 : BOOL; + Signals_77_1 AT %X13.1 : BOOL; + Signals_77_2 AT %X13.2 : BOOL; + Signals_77_3 AT %X13.3 : BOOL; + Signals_77_4 AT %X13.4 : BOOL; + Signals_77_5 AT %X13.5 : BOOL; + Signals_77_6 AT %X13.6 : BOOL; + Signals_77_7 AT %X13.7 : BOOL; + Signals_78_0 AT %X14.0 : BOOL; + Signals_78_1 AT %X14.1 : BOOL; + Signals_78_2 AT %X14.2 : BOOL; + Signals_78_3 AT %X14.3 : BOOL; + Signals_78_4 AT %X14.4 : BOOL; + Signals_78_5 AT %X14.5 : BOOL; + Signals_78_6 AT %X14.6 : BOOL; + Signals_78_7 AT %X14.7 : BOOL; + Signals_79_0 AT %X15.0 : BOOL; + Signals_79_1 AT %X15.1 : BOOL; + Signals_79_2 AT %X15.2 : BOOL; + Signals_79_3 AT %X15.3 : BOOL; + Signals_79_4 AT %X15.4 : BOOL; + Signals_79_5 AT %X15.5 : BOOL; + Signals_79_6 AT %X15.6 : BOOL; + Signals_79_7 AT %X15.7 : BOOL; + Signals_80_0 AT %X16.0 : BOOL; + Signals_80_1 AT %X16.1 : BOOL; + Signals_80_2 AT %X16.2 : BOOL; + Signals_80_3 AT %X16.3 : BOOL; + Signals_80_4 AT %X16.4 : BOOL; + Signals_80_5 AT %X16.5 : BOOL; + Signals_80_6 AT %X16.6 : BOOL; + Signals_80_7 AT %X16.7 : BOOL; + Signals_81_0 AT %X17.0 : BOOL; + Signals_81_1 AT %X17.1 : BOOL; + Signals_81_2 AT %X17.2 : BOOL; + Signals_81_3 AT %X17.3 : BOOL; + Signals_81_4 AT %X17.4 : BOOL; + Signals_81_5 AT %X17.5 : BOOL; + Signals_81_6 AT %X17.6 : BOOL; + Signals_81_7 AT %X17.7 : BOOL; + Signals_82_0 AT %X18.0 : BOOL; + Signals_82_1 AT %X18.1 : BOOL; + Signals_82_2 AT %X18.2 : BOOL; + Signals_82_3 AT %X18.3 : BOOL; + Signals_82_4 AT %X18.4 : BOOL; + Signals_82_5 AT %X18.5 : BOOL; + Signals_82_6 AT %X18.6 : BOOL; + Signals_82_7 AT %X18.7 : BOOL; + Signals_83_0 AT %X19.0 : BOOL; + Signals_83_1 AT %X19.1 : BOOL; + Signals_83_2 AT %X19.2 : BOOL; + Signals_83_3 AT %X19.3 : BOOL; + Signals_83_4 AT %X19.4 : BOOL; + Signals_83_5 AT %X19.5 : BOOL; + Signals_83_6 AT %X19.6 : BOOL; + Signals_83_7 AT %X19.7 : BOOL; + Signals_84_0 AT %X20.0 : BOOL; + Signals_84_1 AT %X20.1 : BOOL; + Signals_84_2 AT %X20.2 : BOOL; + Signals_84_3 AT %X20.3 : BOOL; + Signals_84_4 AT %X20.4 : BOOL; + Signals_84_5 AT %X20.5 : BOOL; + Signals_84_6 AT %X20.6 : BOOL; + Signals_84_7 AT %X20.7 : BOOL; + Signals_85_0 AT %X21.0 : BOOL; + Signals_85_1 AT %X21.1 : BOOL; + Signals_85_2 AT %X21.2 : BOOL; + Signals_85_3 AT %X21.3 : BOOL; + Signals_85_4 AT %X21.4 : BOOL; + Signals_85_5 AT %X21.5 : BOOL; + Signals_85_6 AT %X21.6 : BOOL; + Signals_85_7 AT %X21.7 : BOOL; + Signals_86_0 AT %X22.0 : BOOL; + Signals_86_1 AT %X22.1 : BOOL; + Signals_86_2 AT %X22.2 : BOOL; + Signals_86_3 AT %X22.3 : BOOL; + Signals_86_4 AT %X22.4 : BOOL; + Signals_86_5 AT %X22.5 : BOOL; + Signals_86_6 AT %X22.6 : BOOL; + Signals_86_7 AT %X22.7 : BOOL; + Signals_87_0 AT %X23.0 : BOOL; + Signals_87_1 AT %X23.1 : BOOL; + Signals_87_2 AT %X23.2 : BOOL; + Signals_87_3 AT %X23.3 : BOOL; + Signals_87_4 AT %X23.4 : BOOL; + Signals_87_5 AT %X23.5 : BOOL; + Signals_87_6 AT %X23.6 : BOOL; + Signals_87_7 AT %X23.7 : BOOL; + Signals_88_0 AT %X24.0 : BOOL; + Signals_88_1 AT %X24.1 : BOOL; + Signals_88_2 AT %X24.2 : BOOL; + Signals_88_3 AT %X24.3 : BOOL; + Signals_88_4 AT %X24.4 : BOOL; + Signals_88_5 AT %X24.5 : BOOL; + Signals_88_6 AT %X24.6 : BOOL; + Signals_88_7 AT %X24.7 : BOOL; + Signals_89_0 AT %X25.0 : BOOL; + Signals_89_1 AT %X25.1 : BOOL; + Signals_89_2 AT %X25.2 : BOOL; + Signals_89_3 AT %X25.3 : BOOL; + Signals_89_4 AT %X25.4 : BOOL; + Signals_89_5 AT %X25.5 : BOOL; + Signals_89_6 AT %X25.6 : BOOL; + Signals_89_7 AT %X25.7 : BOOL; + Signals_90_0 AT %X26.0 : BOOL; + Signals_90_1 AT %X26.1 : BOOL; + Signals_90_2 AT %X26.2 : BOOL; + Signals_90_3 AT %X26.3 : BOOL; + Signals_90_4 AT %X26.4 : BOOL; + Signals_90_5 AT %X26.5 : BOOL; + Signals_90_6 AT %X26.6 : BOOL; + Signals_90_7 AT %X26.7 : BOOL; + Signals_91_0 AT %X27.0 : BOOL; + Signals_91_1 AT %X27.1 : BOOL; + Signals_91_2 AT %X27.2 : BOOL; + Signals_91_3 AT %X27.3 : BOOL; + Signals_91_4 AT %X27.4 : BOOL; + Signals_91_5 AT %X27.5 : BOOL; + Signals_91_6 AT %X27.6 : BOOL; + Signals_91_7 AT %X27.7 : BOOL; + Signals_92_0 AT %X28.0 : BOOL; + Signals_92_1 AT %X28.1 : BOOL; + Signals_92_2 AT %X28.2 : BOOL; + Signals_92_3 AT %X28.3 : BOOL; + Signals_92_4 AT %X28.4 : BOOL; + Signals_92_5 AT %X28.5 : BOOL; + Signals_92_6 AT %X28.6 : BOOL; + Signals_92_7 AT %X28.7 : BOOL; + Signals_93_0 AT %X29.0 : BOOL; + Signals_93_1 AT %X29.1 : BOOL; + Signals_93_2 AT %X29.2 : BOOL; + Signals_93_3 AT %X29.3 : BOOL; + Signals_93_4 AT %X29.4 : BOOL; + Signals_93_5 AT %X29.5 : BOOL; + Signals_93_6 AT %X29.6 : BOOL; + Signals_93_7 AT %X29.7 : BOOL; + Signals_94_0 AT %X30.0 : BOOL; + Signals_94_1 AT %X30.1 : BOOL; + Signals_94_2 AT %X30.2 : BOOL; + Signals_94_3 AT %X30.3 : BOOL; + Signals_94_4 AT %X30.4 : BOOL; + Signals_94_5 AT %X30.5 : BOOL; + Signals_94_6 AT %X30.6 : BOOL; + Signals_94_7 AT %X30.7 : BOOL; + Signals_95_0 AT %X31.0 : BOOL; + Signals_95_1 AT %X31.1 : BOOL; + Signals_95_2 AT %X31.2 : BOOL; + Signals_95_3 AT %X31.3 : BOOL; + Signals_95_4 AT %X31.4 : BOOL; + Signals_95_5 AT %X31.5 : BOOL; + Signals_95_6 AT %X31.6 : BOOL; + Signals_95_7 AT %X31.7 : BOOL; + Signals_96_0 AT %X32.0 : BOOL; + Signals_96_1 AT %X32.1 : BOOL; + Signals_96_2 AT %X32.2 : BOOL; + Signals_96_3 AT %X32.3 : BOOL; + Signals_96_4 AT %X32.4 : BOOL; + Signals_96_5 AT %X32.5 : BOOL; + Signals_96_6 AT %X32.6 : BOOL; + Signals_96_7 AT %X32.7 : BOOL; + Signals_97_0 AT %X33.0 : BOOL; + Signals_97_1 AT %X33.1 : BOOL; + Signals_97_2 AT %X33.2 : BOOL; + Signals_97_3 AT %X33.3 : BOOL; + Signals_97_4 AT %X33.4 : BOOL; + Signals_97_5 AT %X33.5 : BOOL; + Signals_97_6 AT %X33.6 : BOOL; + Signals_97_7 AT %X33.7 : BOOL; + Signals_98_0 AT %X34.0 : BOOL; + Signals_98_1 AT %X34.1 : BOOL; + Signals_98_2 AT %X34.2 : BOOL; + Signals_98_3 AT %X34.3 : BOOL; + Signals_98_4 AT %X34.4 : BOOL; + Signals_98_5 AT %X34.5 : BOOL; + Signals_98_6 AT %X34.6 : BOOL; + Signals_98_7 AT %X34.7 : BOOL; + Signals_99_0 AT %X35.0 : BOOL; + Signals_99_1 AT %X35.1 : BOOL; + Signals_99_2 AT %X35.2 : BOOL; + Signals_99_3 AT %X35.3 : BOOL; + Signals_99_4 AT %X35.4 : BOOL; + Signals_99_5 AT %X35.5 : BOOL; + Signals_99_6 AT %X35.6 : BOOL; + Signals_99_7 AT %X35.7 : BOOL; + Signals_100_0 AT %X36.0 : BOOL; + Signals_100_1 AT %X36.1 : BOOL; + Signals_100_2 AT %X36.2 : BOOL; + Signals_100_3 AT %X36.3 : BOOL; + Signals_100_4 AT %X36.4 : BOOL; + Signals_100_5 AT %X36.5 : BOOL; + Signals_100_6 AT %X36.6 : BOOL; + Signals_100_7 AT %X36.7 : BOOL; + Signals_101_0 AT %X37.0 : BOOL; + Signals_101_1 AT %X37.1 : BOOL; + Signals_101_2 AT %X37.2 : BOOL; + Signals_101_3 AT %X37.3 : BOOL; + Signals_101_4 AT %X37.4 : BOOL; + Signals_101_5 AT %X37.5 : BOOL; + Signals_101_6 AT %X37.6 : BOOL; + Signals_101_7 AT %X37.7 : BOOL; + Signals_102_0 AT %X38.0 : BOOL; + Signals_102_1 AT %X38.1 : BOOL; + Signals_102_2 AT %X38.2 : BOOL; + Signals_102_3 AT %X38.3 : BOOL; + Signals_102_4 AT %X38.4 : BOOL; + Signals_102_5 AT %X38.5 : BOOL; + Signals_102_6 AT %X38.6 : BOOL; + Signals_102_7 AT %X38.7 : BOOL; + Signals_103_0 AT %X39.0 : BOOL; + Signals_103_1 AT %X39.1 : BOOL; + Signals_103_2 AT %X39.2 : BOOL; + Signals_103_3 AT %X39.3 : BOOL; + Signals_103_4 AT %X39.4 : BOOL; + Signals_103_5 AT %X39.5 : BOOL; + Signals_103_6 AT %X39.6 : BOOL; + Signals_103_7 AT %X39.7 : BOOL; + Signals_104_0 AT %X40.0 : BOOL; + Signals_104_1 AT %X40.1 : BOOL; + Signals_104_2 AT %X40.2 : BOOL; + Signals_104_3 AT %X40.3 : BOOL; + Signals_104_4 AT %X40.4 : BOOL; + Signals_104_5 AT %X40.5 : BOOL; + Signals_104_6 AT %X40.6 : BOOL; + Signals_104_7 AT %X40.7 : BOOL; + Signals_105_0 AT %X41.0 : BOOL; + Signals_105_1 AT %X41.1 : BOOL; + Signals_105_2 AT %X41.2 : BOOL; + Signals_105_3 AT %X41.3 : BOOL; + Signals_105_4 AT %X41.4 : BOOL; + Signals_105_5 AT %X41.5 : BOOL; + Signals_105_6 AT %X41.6 : BOOL; + Signals_105_7 AT %X41.7 : BOOL; + Signals_106_0 AT %X42.0 : BOOL; + Signals_106_1 AT %X42.1 : BOOL; + Signals_106_2 AT %X42.2 : BOOL; + Signals_106_3 AT %X42.3 : BOOL; + Signals_106_4 AT %X42.4 : BOOL; + Signals_106_5 AT %X42.5 : BOOL; + Signals_106_6 AT %X42.6 : BOOL; + Signals_106_7 AT %X42.7 : BOOL; + Signals_107_0 AT %X43.0 : BOOL; + Signals_107_1 AT %X43.1 : BOOL; + Signals_107_2 AT %X43.2 : BOOL; + Signals_107_3 AT %X43.3 : BOOL; + Signals_107_4 AT %X43.4 : BOOL; + Signals_107_5 AT %X43.5 : BOOL; + Signals_107_6 AT %X43.6 : BOOL; + Signals_107_7 AT %X43.7 : BOOL; + Signals_108_0 AT %X44.0 : BOOL; + Signals_108_1 AT %X44.1 : BOOL; + Signals_108_2 AT %X44.2 : BOOL; + Signals_108_3 AT %X44.3 : BOOL; + Signals_108_4 AT %X44.4 : BOOL; + Signals_108_5 AT %X44.5 : BOOL; + Signals_108_6 AT %X44.6 : BOOL; + Signals_108_7 AT %X44.7 : BOOL; + Signals_109_0 AT %X45.0 : BOOL; + Signals_109_1 AT %X45.1 : BOOL; + Signals_109_2 AT %X45.2 : BOOL; + Signals_109_3 AT %X45.3 : BOOL; + Signals_109_4 AT %X45.4 : BOOL; + Signals_109_5 AT %X45.5 : BOOL; + Signals_109_6 AT %X45.6 : BOOL; + Signals_109_7 AT %X45.7 : BOOL; + Signals_110_0 AT %X46.0 : BOOL; + Signals_110_1 AT %X46.1 : BOOL; + Signals_110_2 AT %X46.2 : BOOL; + Signals_110_3 AT %X46.3 : BOOL; + Signals_110_4 AT %X46.4 : BOOL; + Signals_110_5 AT %X46.5 : BOOL; + Signals_110_6 AT %X46.6 : BOOL; + Signals_110_7 AT %X46.7 : BOOL; + Signals_111_0 AT %X47.0 : BOOL; + Signals_111_1 AT %X47.1 : BOOL; + Signals_111_2 AT %X47.2 : BOOL; + Signals_111_3 AT %X47.3 : BOOL; + Signals_111_4 AT %X47.4 : BOOL; + Signals_111_5 AT %X47.5 : BOOL; + Signals_111_6 AT %X47.6 : BOOL; + Signals_111_7 AT %X47.7 : BOOL; + Signals_112_0 AT %X48.0 : BOOL; + Signals_112_1 AT %X48.1 : BOOL; + Signals_112_2 AT %X48.2 : BOOL; + Signals_112_3 AT %X48.3 : BOOL; + Signals_112_4 AT %X48.4 : BOOL; + Signals_112_5 AT %X48.5 : BOOL; + Signals_112_6 AT %X48.6 : BOOL; + Signals_112_7 AT %X48.7 : BOOL; + Signals_113_0 AT %X49.0 : BOOL; + Signals_113_1 AT %X49.1 : BOOL; + Signals_113_2 AT %X49.2 : BOOL; + Signals_113_3 AT %X49.3 : BOOL; + Signals_113_4 AT %X49.4 : BOOL; + Signals_113_5 AT %X49.5 : BOOL; + Signals_113_6 AT %X49.6 : BOOL; + Signals_113_7 AT %X49.7 : BOOL; + Signals_114_0 AT %X50.0 : BOOL; + Signals_114_1 AT %X50.1 : BOOL; + Signals_114_2 AT %X50.2 : BOOL; + Signals_114_3 AT %X50.3 : BOOL; + Signals_114_4 AT %X50.4 : BOOL; + Signals_114_5 AT %X50.5 : BOOL; + Signals_114_6 AT %X50.6 : BOOL; + Signals_114_7 AT %X50.7 : BOOL; + Signals_115_0 AT %X51.0 : BOOL; + Signals_115_1 AT %X51.1 : BOOL; + Signals_115_2 AT %X51.2 : BOOL; + Signals_115_3 AT %X51.3 : BOOL; + Signals_115_4 AT %X51.4 : BOOL; + Signals_115_5 AT %X51.5 : BOOL; + Signals_115_6 AT %X51.6 : BOOL; + Signals_115_7 AT %X51.7 : BOOL; + Signals_116_0 AT %X52.0 : BOOL; + Signals_116_1 AT %X52.1 : BOOL; + Signals_116_2 AT %X52.2 : BOOL; + Signals_116_3 AT %X52.3 : BOOL; + Signals_116_4 AT %X52.4 : BOOL; + Signals_116_5 AT %X52.5 : BOOL; + Signals_116_6 AT %X52.6 : BOOL; + Signals_116_7 AT %X52.7 : BOOL; + Signals_117_0 AT %X53.0 : BOOL; + Signals_117_1 AT %X53.1 : BOOL; + Signals_117_2 AT %X53.2 : BOOL; + Signals_117_3 AT %X53.3 : BOOL; + Signals_117_4 AT %X53.4 : BOOL; + Signals_117_5 AT %X53.5 : BOOL; + Signals_117_6 AT %X53.6 : BOOL; + Signals_117_7 AT %X53.7 : BOOL; + Signals_118_0 AT %X54.0 : BOOL; + Signals_118_1 AT %X54.1 : BOOL; + Signals_118_2 AT %X54.2 : BOOL; + Signals_118_3 AT %X54.3 : BOOL; + Signals_118_4 AT %X54.4 : BOOL; + Signals_118_5 AT %X54.5 : BOOL; + Signals_118_6 AT %X54.6 : BOOL; + Signals_118_7 AT %X54.7 : BOOL; + Signals_119_0 AT %X55.0 : BOOL; + Signals_119_1 AT %X55.1 : BOOL; + Signals_119_2 AT %X55.2 : BOOL; + Signals_119_3 AT %X55.3 : BOOL; + Signals_119_4 AT %X55.4 : BOOL; + Signals_119_5 AT %X55.5 : BOOL; + Signals_119_6 AT %X55.6 : BOOL; + Signals_119_7 AT %X55.7 : BOOL; + Signals_120_0 AT %X56.0 : BOOL; + Signals_120_1 AT %X56.1 : BOOL; + Signals_120_2 AT %X56.2 : BOOL; + Signals_120_3 AT %X56.3 : BOOL; + Signals_120_4 AT %X56.4 : BOOL; + Signals_120_5 AT %X56.5 : BOOL; + Signals_120_6 AT %X56.6 : BOOL; + Signals_120_7 AT %X56.7 : BOOL; + Signals_121_0 AT %X57.0 : BOOL; + Signals_121_1 AT %X57.1 : BOOL; + Signals_121_2 AT %X57.2 : BOOL; + Signals_121_3 AT %X57.3 : BOOL; + Signals_121_4 AT %X57.4 : BOOL; + Signals_121_5 AT %X57.5 : BOOL; + Signals_121_6 AT %X57.6 : BOOL; + Signals_121_7 AT %X57.7 : BOOL; + Signals_122_0 AT %X58.0 : BOOL; + Signals_122_1 AT %X58.1 : BOOL; + Signals_122_2 AT %X58.2 : BOOL; + Signals_122_3 AT %X58.3 : BOOL; + Signals_122_4 AT %X58.4 : BOOL; + Signals_122_5 AT %X58.5 : BOOL; + Signals_122_6 AT %X58.6 : BOOL; + Signals_122_7 AT %X58.7 : BOOL; + Signals_123_0 AT %X59.0 : BOOL; + Signals_123_1 AT %X59.1 : BOOL; + Signals_123_2 AT %X59.2 : BOOL; + Signals_123_3 AT %X59.3 : BOOL; + Signals_123_4 AT %X59.4 : BOOL; + Signals_123_5 AT %X59.5 : BOOL; + Signals_123_6 AT %X59.6 : BOOL; + Signals_123_7 AT %X59.7 : BOOL; + Signals_124_0 AT %X60.0 : BOOL; + Signals_124_1 AT %X60.1 : BOOL; + Signals_124_2 AT %X60.2 : BOOL; + Signals_124_3 AT %X60.3 : BOOL; + Signals_124_4 AT %X60.4 : BOOL; + Signals_124_5 AT %X60.5 : BOOL; + Signals_124_6 AT %X60.6 : BOOL; + Signals_124_7 AT %X60.7 : BOOL; + Signals_125_0 AT %X61.0 : BOOL; + Signals_125_1 AT %X61.1 : BOOL; + Signals_125_2 AT %X61.2 : BOOL; + Signals_125_3 AT %X61.3 : BOOL; + Signals_125_4 AT %X61.4 : BOOL; + Signals_125_5 AT %X61.5 : BOOL; + Signals_125_6 AT %X61.6 : BOOL; + Signals_125_7 AT %X61.7 : BOOL; + Signals_126_0 AT %X62.0 : BOOL; + Signals_126_1 AT %X62.1 : BOOL; + Signals_126_2 AT %X62.2 : BOOL; + Signals_126_3 AT %X62.3 : BOOL; + Signals_126_4 AT %X62.4 : BOOL; + Signals_126_5 AT %X62.5 : BOOL; + Signals_126_6 AT %X62.6 : BOOL; + Signals_126_7 AT %X62.7 : BOOL; + Signals_127_0 AT %X63.0 : BOOL; + Signals_127_1 AT %X63.1 : BOOL; + Signals_127_2 AT %X63.2 : BOOL; + Signals_127_3 AT %X63.3 : BOOL; + Signals_127_4 AT %X63.4 : BOOL; + Signals_127_5 AT %X63.5 : BOOL; + Signals_127_6 AT %X63.6 : BOOL; + Signals_127_7 AT %X63.7 : BOOL; + END_STRUCT; + END_TYPE + TYPE {S7.extern=ReadWrite} {#ix-attr:[Container(Layout.Wrap)]} diff --git a/src/showcase/app/src/IO/Outputs.st b/src/showcase/app/src/IO/Outputs.st index bc33dbb5f..de5688870 100644 --- a/src/showcase/app/src/IO/Outputs.st +++ b/src/showcase/app/src/IO/Outputs.st @@ -118,6 +118,8 @@ NAMESPACE AXOpen.Showcase kuka_rb1_DIO512_Output AT %B3575 : kuka_rb1_DIO512_Output_Layout; + kuka_rb2_DIO512_Output AT %B3767 : kuka_rb2_DIO512_Output_Layout; + mitsubishi_tz535_robot_In_Out_64_byte_Output AT %B3511 : mitsubishi_tz535_robot_In_Out_64_byte_Output_Layout; // Module rexroth_cs351/Output_2_word_1 diff --git a/src/traversals/apax/apax.yml b/src/traversals/apax/apax.yml new file mode 100644 index 000000000..c378aea9f --- /dev/null +++ b/src/traversals/apax/apax.yml @@ -0,0 +1,51 @@ +name: "apax.traversal" +version: "0.0.0-dev.0" +type: "app" +targets: +- "1500" +registries: + '@inxton': "https://npm.pkg.github.com/" +devDependencies: + '@inxton/ax-sdk': "0.0.0-dev.0" +dependencies: + "@inxton/axopen.abstractions": "0.0.0-dev.0" + "@inxton/ax.axopen.app": "0.0.0-dev.0" + "@inxton/ax.axopen.hwlibrary": "0.0.0-dev.0" + "@inxton/ax.axopen.min": "0.0.0-dev.0" + "@inxton/ax.catalog": "0.0.48" + "@inxton/axopen.components.abb.robotics": "0.0.0-dev.0" + "@inxton/axopen.components.abstractions": "0.0.0-dev.0" + "@inxton/axopen.components.balluff.identification": "0.0.0-dev.0" + "@inxton/axopen.components.cognex.vision": "0.0.0-dev.0" + "@inxton/axopen.components.desoutter.tightening": "0.0.0-dev.0" + "@inxton/axopen.components.drives": "0.0.0-dev.0" + "@inxton/axopen.components.dukane.welders": "0.0.0-dev.0" + "@inxton/axopen.components.elements": "0.0.0-dev.0" + "@inxton/axopen.components.festo.drives": "0.0.0-dev.0" + "@inxton/axopen.components.keyence.vision": "0.0.0-dev.0" + "@inxton/axopen.components.kuka.robotics": "0.0.0-dev.0" + "@inxton/axopen.components.mitsubishi.robotics": "0.0.0-dev.0" + "@inxton/axopen.components.pneumatics": "0.0.0-dev.0" + "@inxton/axopen.components.rexroth.drives": "0.0.0-dev.0" + "@inxton/axopen.components.rexroth.press": "0.0.0-dev.0" + "@inxton/axopen.components.rexroth.tightening": "0.0.0-dev.0" + "@inxton/axopen.components.robotics": "0.0.0-dev.0" + "@inxton/axopen.components.siem.communication": "0.0.0-dev.0" + "@inxton/axopen.components.siem.identification": "0.0.0-dev.0" + "@inxton/axopen.components.ur.robotics": "0.0.0-dev.0" + "@inxton/axopen.components.zebra.vision": "0.0.0-dev.0" + "@inxton/axopen.core": "0.0.0-dev.0" + "@inxton/axopen.data": "0.0.0-dev.0" + "axopen_data_distributed_tests_l4": "0.0.0-dev.0" + "axopen.data.tests_l1": "0.0.0-dev.0" + "axopen.integration.tests_l4": "0.0.0-dev.0" + "@inxton/axopen.inspectors": "0.0.0-dev.0" + "@inxton/axopen.io": "0.0.0-dev.0" + "@inxton/axopen.probers": "0.0.0-dev.0" + "showcase": "0.0.0-dev.0" + "@inxton/axopen.simatic1500": "0.0.0-dev.0" + "@inxton/apaxlibname": "0.0.0-dev.0" + "@inxton/axopen.timers": "0.0.0-dev.0" + "@inxton/axopen.utils": "0.0.0-dev.0" +installStrategy: "overridable" +...