File and Project Information ¶ Scope Name Type Content FileHeader creationDateTime date 20.04.2021, 16:01:02 companyName string 3S-Smart Software Solutions GmbH libraryFile Redundancy Implementation.library primaryProject True productName CODESYS productProfile CODESYS V3.5 SP16 Patch 3 contentFile Redundancy Implementation.clean.json version version 2.0.0.0 ProjectInformation IsEndUserLibrary bool False Released True SourceLibrary False LastModificationDateTime date 20.04.2021, 16:01:01 LibraryCategories library-category-list System|Redundancy Author string 3S - Smart Software Solutions GmbH Company System CompiledLibraryCompatibilityVersion CODESYS V3.5 SP16 DefaultNamespace Description See: Description DocFormat reStructuredText Placeholder Redundancy Implementation Project Redundancy Implementation Title Redundancy Implementation Version version 3.5.17.0
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 Redundancy Interfaces ¶ Library Identification ¶ Name: Redundancy Interfaces Version: newest Company: System Namespace: Redundancy_Interfaces Library Properties ¶ LinkAllContent: False Optional: False QualifiedOnly: False SystemLibrary: False Key: Redundancy Interfaces, * (System) 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)
RdtInitStructServerTCP (STRUCT) ¶ TYPE RdtInitStructServerTCP : STRUCT Structurce for TCP server initialization InOut: Name Type Initial Comment sName STRING Name of the client, the name can be completely user defined sIPAddress STRING IpAdd of the server to connect with uiPort UINT Port of the server to connect with iMaxConnections INT Max connection allowed tTrsTimeout TIME Transmission timeout tRcvTimeout TIME Receiving timeout tConnTimeout TIME Connection timeout tWaitAfterReset TIME Time to wait after reset (see time above) xUseTLS BOOL If the TLS encryption is used or not xUseCert BOOL If the certificate is used or not sCertCommonName STRING A string to select the correct certificate in local certificate store, hCert RTS_IEC_HANDLE RTS_INVALID_HANDLE External cert handle to use. Exclusive use vs cert name udiVerificationMode UDINT (2 + 4) 1 => No peer verification 2 => Active Peer verification (4) => 2+4 = 6 => Force termination, if no client certificate (8) => 2+8=10 or 2+4+8 = 14 => Request client certificate only whithin initial handshake sTLSVersion STRING ‘1.2’ A string to select the correct protocol version, e.g.: ‘1.1’, ‘1.2’, sHostname STRING ‘’ A hostname to select the correct certificate on the server side. sCipher STRING ‘HIGH’ The cipher strings. See for example: https://www.openssl.org/docs/man1.1.1/man1/ciphers.html#CIPHER - LIST-FORMAT itfCertVerifer NBS.ICertificateVerifier 0 A callback for application specific certificate verification
RdtProtStructCommPh (STRUCT) ¶ TYPE RdtProtStructCommPh : STRUCT Redundancy Data Transfer Protocol Command phase header InOut: Name Type Comment wKeyH WORD Head key bType BYTE Protocol type bFill BYTE uiCmd UINT Command diLen DINT Data length wKeyT WORD Tail key
RecipeManCommands.SetStoragePath (METH) ¶ METHOD SetStoragePath : BOOL Sets the storage path of the recipe management dynamically It overrides the storage path which is normally configured in the recipe manager configuration. InOut: Scope Name Type Comment Return SetStoragePath BOOL TRUE, if the storage path was set successfully. Possible error reasons are: ERR_NO_RECIPE_MANAGER_SET The recipe management contains no recipe definition See ReturnValues (GVL) for a description of all possible errors. Input stPath STRING(512) The storage path i.e. c:/recipes/
RDT_Server.Create (METH) ¶ METHOD Create : IRdtProtServer It creates and initializes the object Server InOut: Scope Name Type Comment Return Create IRdtProtServer Input pStruIni POINTER TO RdtInitStructServerTCP Parameters to use Output error INT
RecipeManCommands.WriteRecipe (METH) ¶ METHOD WriteRecipe : DWORD Writes the recipe into the PLC variables InOut: Scope Name Type Comment Return WriteRecipe DWORD Possible last error values: ERR_RECIPE_DEFINITION_NOT_FOUND ERR_RECIPE_NOT_FOUND ERR_NO_RECIPE_MANAGER_SET ERR_OK See ReturnValues (GVL) for a description of all possible errors. Inout Const RecipeDefinitionName STRING Name of the recipe definition RecipeName STRING Name of the recipe
ReturnValues (GVL) ¶ InOut: Scope Name Type Initial Comment Constant ERR_OK UDINT 16#0 The operation succeeded ERR_FAILED UDINT 16#1 The operation failed ERR_PARAMETER UDINT 16#2 Wrong parameter ERR_NOTINITIALIZED UDINT 16#3 The dataserver object is not initialized. The dataserver is necessary if the recipe management is used in combination with the CODESYS HMI. ERR_NOTIMPLEMENTED UDINT 16#C The dataserver does not implement the interface IDataServer4, which is necessary if the recipe management is used in combination with the CODESYS HMI. ERR_NO_OBJECT UDINT 16#10 Not all recipe definition variables can be written via the dataserver. Only the valid recipe definition variables are written. ERR_NOMEMORY UDINT 16#11 The dataserver did not get enough memory ERR_RECIPE_FILE_NOT_FOUND UDINT 16#4000 The recipe file was not found. ERR_RECIPE_MISMATCH UDINT 16#4001 The content of the recipe file does not match the current recipe. This error is only generated when the storage type is textual (see “RecipeManager” “Storage Type” in your project) and when a variable name in the file does not match the variable name in the recipe definition. The recipe file is not loaded when this error occurs. Possible reasons: A variable has been removed in the recipe definition of the project. ERR_RECIPE_SAVE_ERR UDINT 16#4002 The save operation failed. Possible reasons: The file cannot be created or opened because the disk is full. The configured file path does not exist (see “RecipeManager” “File Path” in your project). The configured file extension is not allowed by the runtime (see “RecipeManager” “File Extension” in your project). ERR_RECIPE_NOT_FOUND UDINT 16#4003 The recipe does not exist ERR_RECIPE_DEFINITION_NOT_FOUND UDINT 16#4004 The recipe definition does not exist ERR_RECIPE_ALREADY_EXIST UDINT 16#4005 The recipe already exists in the recipe definition. Use another name to create a new recipe. ERR_NO_RECIPE_MANAGER_SET UDINT 16#4006 The global recipe manager is not set. Possible reasons: This can happen when the option recipe management in plc is not set in the recipe manager of the current application. ERR_RECIPE_NOT_ALL_VARIABLES_WERE_LOADED UDINT 16#4007 The recipe definition contains more variables than the recipe file. In this case the variable values from the recipe file are written anyway. This is only an info not an error. ERR_RECIPE_NOMEMORY UDINT 16#4008 The recipe definition has no free memory to create an new recipe. Possible reasons: This can happen when the option “save recipe changes to recipe files automatically” is not set in the recipe manager of the current application. In this case only 50 recipes per recipe definition are possible. If the option “save recipe changes to recipe files automatically” is set the error cannot happen. When the disk is full the error ERR_RECIPE_SAVE_ERR is created. ERR_RECIPE_MANAGER_LOCKED_DURING_ONLINE_CHANGE UDINT 16#4009 The recipe manager was locked during online change. Possible reasons: Some of the recipe man commands should be executed while an online change occurs. These commands were not executed during online change. ERR_SOURCE_EXHAUSTED UDINT 16#40A0 Used for UTF8 helper ERR_TARGET_EXHAUSTED UDINT 16#40A1 Used for UTF8 helper ERR_SOURCE_ILLEGAL UDINT 16#40A2 Used for UTF8 helper
RDT_Server.CyclicCall (METH) ¶ METHOD CyclicCall Server cyclic call
TL_RecipeManager (Text List) ¶ ID Default en de CheckOverwriteTitel Save as... Save as… Speichern unter… CheckOverwriteMessage `` The file already exists. Do you want to overwrite the file? `` The file already exists. Do you want to overwrite the file? Die Datei ist bereits vorhanden. Möchten Sie die Datei überschreiben? CheckOverwriteBusy `` Another client is saving a recipe at the moment. This action is canceled. `` Another client is saving a recipe at the moment. This action is canceled. Ein anderer Client speichert gerade eine Rezeptur. Diese Aktion wird abgebrochen.