﻿<?xml version="1.0" encoding="utf-8"?>
<TcPlcObject Version="1.1.0.1">
  <GVL Name="gvlTractionWinch01" Id="{c62f513d-e1cd-4219-aea0-6bf3b64180c8}">
    <Declaration><![CDATA[{attribute 'qualified_only'}
VAR_GLOBAL
	winchIo_out						AT %Q*	: p6winch.WinchIO_Out;
	winchIo_in						AT %I*	: p6winch.WinchIO_In;
	deckCtrlPanel_WP02_Io_in		AT %I*	: p6manualDevices.BaseControlUnitIO_in;
	deckCtrlPanel_WP02_Io_out		AT %Q*	: p6manualDevices.BaseControlUnitIO_out;
	
	bridgeCtrlPanel_CP01_Io_in		AT %I*	: p6manualDevices.BridgeControlIO_in;
	bridgeCtrlPanel_CP01_Io_out		AT %Q*	: p6manualDevices.BridgeControlIO_out;
	panelTraction_io_in				AT %I*  : p6manualDevices.BaseControlUnitIO_in;
	panelTraction_io_out			AT %Q*	: p6manualDevices.BaseControlUnitIO_out;
	(*ROV HANGAR PANEL*)
	hangarCtrlPanel_WP03_IO_In		AT %I*	: p6manualDevices.BaseControlUnitIO_in;
	hangarCtrlPanel_WP03_IO_Out		AT %Q*  : p6manualDevices.BaseControlUnitIO_out;
	//AHC auto IO
	AHC_auto_io_in							: p6manualDevices.BaseControlUnitIO_in;
	AHC_auto_io_out							: p6manualDevices.BaseControlUnitIO_out;
	// HMI_Io_in						AT %I*	: p6manualDevices.BaseControlUnitIO_in;
	// HMI_Io_out						AT %Q*	: p6manualDevices.BaseControlUnitIO_out;
	
	// Triplex radio
	RadioOHC_IO_in					: p6manualDevices.BaseControlUnitIO_in;
	RadioOHC_IO_out					: p6manualDevices.BaseControlUnitIO_out;
	TriplexOHCRemoteControl			: p6manualDevices.StandardControlUnit;
	
	eWinch							: LocalEWinch;  
	Drive							: localEDriveSimple;

	winch							: TRWAutoWinch; // uses identical copy with local modified baseUserWinch
	
	localCtrlPanel_WP02				: p6manualDevices.StandardControlUnit; //Winch room?
	TRWCtrRoomBridgelPanel_CP01 	: p6manualDevices.BridgeControl;
	TRWCtrRoomPanell_CP01			: p6manualDevices.StandardControlUnit;
	hangarCtrlPanel_WP03			: p6manualDevices.StandardControlUnit;
	OHCautoControl					: p6manualDevices.StandardControlUnit; // used by Overhead crane for constant tension
	
	splitModeRequest				AT %I*  : BOOL;		// AKA split mode
	
	SheaveEncoder					: IncrementalEncoder := ( config := ConfigPersistent.Config.sheaveSensor[1]);
	Sheavesensor					: fb_SheaveMesurements := (ID := 1, config := ConfigPersistent.Config.sheaveSensor[1], encoder := SheaveEncoder);
	
	autoControl						: AutoController;
		
END_VAR]]></Declaration>
  </GVL>
</TcPlcObject>