Constants ¶ IoConfigParameterIDs (GVL) NetXErrorCodes (GVL) PNConfigParameters (ParamList)
Library Reference ¶ This is a dictionary of all referenced libraries and their name spaces. 3SLicense ¶ Library Identification ¶ Placeholder: 3SLicense Default Resolution: 3SLicense, * (3S - Smart Software Solutions GmbH) Namespace: _3S_LICENSE Library Properties ¶ LinkAllContent: False Optional: False QualifiedOnly: False SystemLibrary: False Key: 3SLicense Base Interfaces ¶ Library Identification ¶ Name: Base Interfaces Version: newest Company: System Namespace: IBaseLibrary Library Properties ¶ LinkAllContent: False Optional: False QualifiedOnly: False SystemLibrary: False Key: Base Interfaces, * (System) CAA Device Diagnosis ¶ Library Identification ¶ Placeholder: CAA Device Diagnosis Default Resolution: CAA Device Diagnosis, * (CAA Technical Workgroup) Namespace: DED Library Properties ¶ LinkAllContent: False Optional: False QualifiedOnly: False SystemLibrary: False Key: CAA Device Diagnosis CAA List And Tree ¶ Library Identification ¶ Placeholder: CAA List And Tree Default Resolution: CAA List And Tree, * (CAA Technical Workgroup) Namespace: LAT Library Properties ¶ LinkAllContent: False Optional: False QualifiedOnly: True SystemLibrary: False Key: CAA List And Tree CAA Memory Block Manager Extern ¶ Library Identification ¶ Placeholder: CAA MemBlockMan Default Resolution: CAA Memory Block Manager Extern, * (CAA Technical Workgroup) Namespace: MBM Library Properties ¶ LinkAllContent: False Optional: False QualifiedOnly: True SystemLibrary: False Key: CAA MemBlockMan CAA Types Extern ¶ Library Identification ¶ Placeholder: CAA Types Default Resolution: CAA Types Extern, * (CAA Technical Workgroup) Namespace: CAA Library Properties ¶ LinkAllContent: False Optional: False QualifiedOnly: True SystemLibrary: False Key: CAA Types CmpAsyncMgr ¶ Library Identification ¶ Placeholder: CmpAsyncMgr Default Resolution: CmpAsyncMgr, * (System) Namespace: CmpAsyncMgr Library Properties ¶ LinkAllContent: False Optional: False QualifiedOnly: False SystemLibrary: False Key: CmpAsyncMgr CmpBinTagUtilIec ¶ Library Identification ¶ Placeholder: CmpBinTagUtilIec Default Resolution: CmpBinTagUtilIec, * (System) Namespace: CmpBinTagUtilIec Library Properties ¶ LinkAllContent: False Optional: False QualifiedOnly: False SystemLibrary: False Key: CmpBinTagUtilIec CmpErrors2 Interfaces ¶ Library Identification ¶ Name: CmpErrors2 Interfaces Version: newest Company: System Namespace: CmpErrors Library Properties ¶ LinkAllContent: False Optional: False QualifiedOnly: False SystemLibrary: False Key: CmpErrors2 Interfaces, * (System) CmpEventMgr ¶ Library Identification ¶ Placeholder: CmpEventMgr Default Resolution: CmpEventMgr, * (System) Namespace: CmpEventMgr Library Properties ¶ LinkAllContent: False Optional: False QualifiedOnly: False SystemLibrary: False Key: CmpEventMgr CmpHilscherCIFX ¶ Library Identification ¶ Placeholder: CmpHilscherCIFX Default Resolution: CmpHilscherCIFX, * (System) Namespace: CmpHilscherCIFX Library Properties ¶ LinkAllContent: False Optional: False QualifiedOnly: False SystemLibrary: False Key: CmpHilscherCIFX CmpIecTask ¶ Library Identification ¶ Placeholder: CmpIecTask Default Resolution: CmpIecTask, * (System) Namespace: CmpIecTask Library Properties ¶ LinkAllContent: False Optional: False QualifiedOnly: False SystemLibrary: False Key: CmpIecTask CmpLog ¶ Library Identification ¶ Placeholder: CmpLog Default Resolution: CmpLog, * (System) Namespace: CmpLog Library Properties ¶ LinkAllContent: False Optional: False QualifiedOnly: False SystemLibrary: False Key: CmpLog CmpSchedule ¶ Library Identification ¶ Placeholder: CmpSchedule Default Resolution: CmpSchedule, * (System) Namespace: CmpSchedule Library Properties ¶ LinkAllContent: False Optional: False QualifiedOnly: False SystemLibrary: False Key: CmpSchedule CmpSettings ¶ Library Identification ¶ Placeholder: CmpSettings Default Resolution: CmpSettings, * (System) Namespace: CmpSettings Library Properties ¶ LinkAllContent: False Optional: False QualifiedOnly: False SystemLibrary: False Key: CmpSettings CmpSrv ¶ Library Identification ¶ Placeholder: CmpSrv Default Resolution: CmpSrv, * (System) Namespace: CmpSrv Library Properties ¶ LinkAllContent: False Optional: False QualifiedOnly: False SystemLibrary: False Key: CmpSrv CommFB ¶ Library Identification ¶ Placeholder: CommFB Default Resolution: CommFB, * (3S - Smart Software Solutions GmbH) Namespace: CommFB Library Properties ¶ LinkAllContent: False Optional: False QualifiedOnly: True SystemLibrary: False Key: CommFB IoDriver Interfaces ¶ Library Identification ¶ Name: IoDriver Interfaces Version: newest Company: System Namespace: IoDriver_Interfaces Library Properties ¶ LinkAllContent: False Optional: False QualifiedOnly: False SystemLibrary: False Key: IoDriver Interfaces, * (System) IoDriver PNAcyclicService Interfaces ¶ Library Identification ¶ Name: IoDriver PNAcyclicService Interfaces Version: newest Company: System Namespace: IoDriver_PNAcyclicService_Interfaces Library Properties ¶ LinkAllContent: False Optional: False QualifiedOnly: False SystemLibrary: False Key: IoDriver PNAcyclicService Interfaces, * (System) IoDriver Parameter Interfaces ¶ Library Identification ¶ Name: IoDriver Parameter Interfaces Version: newest Company: System Namespace: IoDriver_Parameter_Interfaces Library Properties ¶ LinkAllContent: False Optional: False QualifiedOnly: False SystemLibrary: False Key: IoDriver Parameter Interfaces, * (System) IoDriver ProfiNet Interfaces ¶ Library Identification ¶ Name: IoDriver ProfiNet Interfaces Version: newest Company: System Namespace: IoDriver_ProfiNet_Interfaces Library Properties ¶ LinkAllContent: False Optional: False QualifiedOnly: False SystemLibrary: False Key: IoDriver ProfiNet Interfaces, * (System) IoDrvCIFXBase ¶ Library Identification ¶ Placeholder: IoDrvCifXBase Default Resolution: IoDrvCIFXBase, * (3S - Smart Software Solutions GmbH) Namespace: IoDrvCIFXBase Library Properties ¶ LinkAllContent: False Optional: False QualifiedOnly: False SystemLibrary: False Key: IoDrvCifXBase IoDrvProfinetBase ¶ Library Identification ¶ Placeholder: IoDrvProfinetBase Default Resolution: IoDrvProfinetBase, * (3S - Smart Software Solutions GmbH) Namespace: IoDrvProfinetBase Library Properties ¶ LinkAllContent: False Optional: False QualifiedOnly: True SystemLibrary: False Key: IoDrvProfinetBase IoStandard ¶ Library Identification ¶ Placeholder: IoStandard Default Resolution: IoStandard, * (System) Namespace: IoStandard Library Properties ¶ LinkAllContent: False Optional: False QualifiedOnly: False SystemLibrary: False Key: IoStandard MemoryUtils ¶ Library Identification ¶ Placeholder: MemoryUtils Default Resolution: MemoryUtils, * (3S - Smart Software Solutions GmbH) Namespace: MemUtils Library Properties ¶ LinkAllContent: False Optional: False QualifiedOnly: True SystemLibrary: False Key: MemoryUtils ProfinetCommon ¶ Library Identification ¶ Placeholder: ProfinetCommon Default Resolution: ProfinetCommon, * (3S - Smart Software Solutions GmbH) Namespace: Profinet Library Properties ¶ LinkAllContent: False Optional: False QualifiedOnly: True SystemLibrary: False Key: ProfinetCommon Rts Service Handler ¶ Library Identification ¶ Placeholder: Rts Service Handler Default Resolution: Rts Service Handler, * (3S - Smart Software Solutions GmbH) Namespace: GSH Library Properties ¶ LinkAllContent: False Optional: False QualifiedOnly: False SystemLibrary: False Key: Rts Service Handler Standard ¶ Library Identification ¶ Placeholder: Standard Default Resolution: Standard, * (System) Namespace: Standard Library Properties ¶ LinkAllContent: False Optional: False QualifiedOnly: False SystemLibrary: False Key: Standard StringUtils ¶ Library Identification ¶ Placeholder: StringUtils Default Resolution: StringUtils, * (System) Namespace: Stu Library Properties ¶ LinkAllContent: False Optional: False QualifiedOnly: False SystemLibrary: False Key: StringUtils SysCpuHandling ¶ Library Identification ¶ Placeholder: SysCpuHandling Default Resolution: SysCpuHandling, * (System) Namespace: SysCpuHandling Library Properties ¶ LinkAllContent: False Optional: False QualifiedOnly: False SystemLibrary: False Key: SysCpuHandling SysMem ¶ Library Identification ¶ Placeholder: SysMem Default Resolution: SysMem, * (System) Namespace: SysMem Library Properties ¶ LinkAllContent: False Optional: False QualifiedOnly: False SystemLibrary: False Key: SysMem SysTime ¶ Library Identification ¶ Placeholder: SysTime Default Resolution: SysTime, * (System) Namespace: SysTime Library Properties ¶ LinkAllContent: False Optional: False QualifiedOnly: False SystemLibrary: False Key: SysTime SysTypes2 Interfaces ¶ Library Identification ¶ Name: SysTypes2 Interfaces Version: newest Company: System Namespace: SysTypes Library Properties ¶ LinkAllContent: False Optional: False QualifiedOnly: False SystemLibrary: False Key: SysTypes2 Interfaces, * (System)
IoDrvCIFXProfiNet Library Documentation ¶ Company 3S - Smart Software Solutions GmbH Title IoDrvCIFXProfiNet Version 3.5.15.0 Categories Intern|IoDrivers Namespace IoDrvCIFXProfiNetLibrary Author 3S - Smart Software Solutions GmbH Placeholder IoDrvCIFXProfiNet Description 1 ¶ IO Driver ProfiNet for Hilscher NetX chip. Contents: ¶ CommFB SUBSLOT_ID (Function) Constants IoConfigParameterIDs (GVL) NetXErrorCodes (GVL) PNConfigParameters (ParamList) Datastructs Diag IO_SIGNALS (Enum) TIOSignal (Struct) Diagnosis CIFXProfinetControllerDiag (FunctionBlock) InterfaceUnion (Union) IoDrvCIFXProfiNetDiag (FunctionBlock) PNSlaveDiag (FunctionBlock) FunctionBlocks CIFXProfinetController (FunctionBlock) IoDrvCIFXProfiNet (FunctionBlock) PNSlave (FunctionBlock) Functions UDINT_TO_HEX (Function) Indices and tables ¶ 1 Based on IoDrvCIFXProfiNet.library, last modified 24.07.2019, 08:41:55. LibDoc 4.4.0.0-b.27 The content file IoDrvCIFXProfiNet.clean.json was generated with CODESYS V3.5 SP15 on 24.07.2019, 08:41:57.
IoDrvCIFXProfiNet.FindSubmoduleID (METH) ¶ METHOD FindSubmoduleID : BOOL InOut: Scope Name Type Return FindSubmoduleID BOOL Input ulHandle UDINT uiSlot UINT uiSubslot UINT Output submoduleID UDINT
DeviceAR (FB) ¶ FUNCTION_BLOCK DeviceAR A Profinet Device application uses this function block for controlling all phases of the connection establishment. In a Profinet context, this connection is also called Application Relation (AR). The AR maintains a list of configured modules, parameters, and cyclic and acylic communication channels. One instance of this function block is used for one instance of an AR. The connection establishment phase consist of these steps: - Controller sends a Connect-req to the device. This request contains a list of submodules that the controller intends to control (and to exchange cyclic data). - The Device checks the list of expected vs. the real submodules. In case of a mismatch the stack adds a Module Diff Block which contains all mismatching modules to the Connect-res. - The Controller sends paramterization data for each configured submodule. The Profinet Device application can receive the parameter data with CommFB.RCVREC function block. - The Controller sends a PrmEnd-req. for indicating that the paramterization phase is finished. - The Device application applies the received parameterization data to its internal logic and the hardware. - The Device application sends the ApplicationReady-req to th controller for indicating that it is ready for data-exchange. The use of this fucntion block is optional. But note that once it is enabled/registered for a Profinet Device, the application is responsible for confirming all AR related events within a certain time (typically 20 sec.). Otherwise the controller will abort the connection with some error code like ‘AR CMI timeout’. Update Diagnosis PROGRAM PLC_PRG VAR ar : ProfinetCommon.DeviceAR ; // FB for controlling the AR establishment i : DINT ; checkExp : ProfinetCommon.CheckExpSubmodule ; moduleDiffCounter : DINT ; prmDelay : TON ; // some delay for parameterizing the device (example) output : DINT ; // a counter variable END_VAR ar ( xEnable := TRUE , DeviceID := pnDevice.DeviceID ); IF ( ar.xAborted ) THEN // connection has been aborted ar ( xConfirmConnect := FALSE , xConfirmPrmEnd := FALSE , xApplReady := FALSE ); //reset commands moduleDiffCounter := 0 ; // reset counter prmDelay ( IN := FALSE ); // reset timer ELSIF ( ar.xData ) THEN // connection estblishment phase sucessful, AR in data exchange output := output + 1 ; ELSIF ( ar.xConnect ) THEN // received Connect-req., the AR establishment started IF ( NOT ar.xConfirmConnect ) THEN // not yet confirmed ? // check submodule config the controller expects: checkExp ( xEnable := TRUE , AR_ID := ar.AR_ID ); FOR i := 0 TO checkExp.ExpectedSubmoduleCount - 1 DO checkExp ( Index := i ); IF ( checkExp.xModuleDiff ) THEN //some module mismatch, see details moduleDiffCounter := moduleDiffCounter + 1 ; // count mismatching modules END_IF END_FOR ar ( xConfirmConnect := TRUE ); // confirm Connect-req. from controller END_IF IF ( ar.xPrmEnd ) THEN // received PrmEnd-req. from controller ar ( xConfirmPrmEnd := TRUE ); // confirm PrmEnd-req. prmDelay ( IN := TRUE , PT := T#2S ); // start prm-delay timer END_IF prmDelay (); IF ( prmDelay.Q ) THEN // timer expired ar ( xApplReady := TRUE ); // Send Application-Ready to Controller --> AR will get into 'Data' state END_IF END_IF InOut: Scope Name Type Initial Comment Input xEnable BOOL Enable function DeviceID BYTE ID of the Profinet Device in the local Profinet Device application. xConfirmConnect BOOL Send Connect-cnf to controller xConfirmPrmEnd BOOL Send PrmEnd confirmation to controller xApplReady BOOL Send Application-Ready to controller Output xBusy BOOL DeviceAR is operating and will receive connection related request and events. xError BOOL DeviceAR does not operate due to internal error. AR_ID DWORD CommFB.Constants.INVALID_ID ID of this AR endpoint. AR_Status DeviceAR_State Status of this AR endpoint. xConnect BOOL Received Connect-Req. from Controller. xPrmEnd BOOL Received PrmEnd-Ind from Controller: All data-records / parameters have been transmitted. xData BOOL AR is in Data-Exchange xAborted BOOL AR has been Aborted. (Abort reason see PNIOStatus) PNIOStatus UDINT Profinet specific protocol status/error code. ARInfo AR_Info Some information on the current AR Methods: CM_Abort_req Structure: IDeviceARClient CM_Abort_req (Method)
IoDrvCIFXProfiNet.GetAlarm (METH) ¶ METHOD GetAlarm : DWORD InOut: Scope Name Type Return GetAlarm DWORD Input MODE INT F_ID DWORD Inout AINFO CommFB.AINFO_TYPE currentAlarmID UDINT Output NEW BOOL ID DWORD LEN INT
IoDrvCIFXProfiNet.GetDiag (METH) ¶ METHOD GetDiag : DWORD InOut: Scope Name Type Return GetDiag DWORD Input ID DWORD Inout DINFO CommFB.DP_DIAG Output BUSY BOOL LEN INT
IDeviceARClient ¶ CM_Abort_req (Method)
IoDrvCIFXProfiNet.GetID (METH) ¶ METHOD GetID : UDINT InOut: Scope Name Type Return GetID UDINT Inout sStationName STRING Input uiSlot UINT uiSubslot UINT
DeviceAR_State (ENUM) ¶ TYPE DeviceAR_State : Operating Status of the DeviceAR function block. Attributes: qualified_only InOut: Name Comment Not_Init FB is not initialized. Init FB is initialized with specified inputs. W_ConnectInd Wait for connect indication W_ConnectRes Wait for connect response from the application. W_PrmEnd_Ind Wait for PrmEnd indication W_PrmEnd_Res Wait for PrmEnd response from the application W_ApplReady Wait for ARDY request from the application W_ApplReady_Cnf Wait for ARDY confirmation W_Data Wait for the established cyclic data exchange. Data Data exchange active. Abort Abort application relation Error Internal error, e.g. stack is not running or function is not implemented