how to convert library from CodeSys 2.3 to CodeSys 3.x ?
CODESYS Forge
talk
(Thread)
how to convert library from CodeSys 2.3 to CodeSys 3.x ?
Last updated: 2020-01-21
Licence lost due to broken SD Card. How to reactivate it on same Rapsperry device
CODESYS Forge
talk
(Thread)
Licence lost due to broken SD Card. How to reactivate it on same Rapsperry device
Last updated: 2019-10-07
how to execute a pointer to a function or a function block?
CODESYS Forge
talk
(Thread)
how to execute a pointer to a function or a function block?
Last updated: 2017-04-04
How to set Codesys to use defaut keyboard of a smartphone?
CODESYS Forge
talk
(Thread)
How to set Codesys to use defaut keyboard of a smartphone?
Last updated: 2023-02-13
3.5: How to get online to CPU with USB/CAN Kvaser
CODESYS Forge
talk
(Thread)
3.5: How to get online to CPU with USB/CAN Kvaser
Last updated: 2020-12-22
'The object GUID 'xxxx' is not valid' message when trying to commit a project to SVN
CODESYS Forge
talk
(Thread)
'The object GUID 'xxxx' is not valid' message when trying to commit a project to SVN
Last updated: 2022-09-14
Is it possible to convert a string of 32-bit of binary to a float32?
CODESYS Forge
talk
(Thread)
Is it possible to convert a string of 32-bit of binary to a float32?
Last updated: 2023-03-23
Convert from string containing HEX values to the corresponding chars (E.G. '414141' to 'AAA')
CODESYS Forge
talk
(Thread)
Convert from string containing HEX values to the corresponding chars (E.G. '414141' to 'AAA')
Last updated: 2023-07-19
Need to know about the possibility of sending reset signal to codesys over Ethernet
CODESYS Forge
talk
(Thread)
Need to know about the possibility of sending reset signal to codesys over Ethernet
Last updated: 2020-06-29
How to functionally copy a BUTTON from one page to another
CODESYS Forge
talk
(Thread)
How to functionally copy a BUTTON from one page to another
Last updated: 2023-07-10
How to initialize arrays of function blocks that need FB_Init to work
CODESYS Forge
talk
(Thread)
How to initialize arrays of function blocks that need FB_Init to work
Last updated: 2020-08-21
Impossible to enter en FB from a CFC to debug it: "nProjectHandle: 'xxx' is invalid." error
CODESYS Forge
talk
(Thread)
Impossible to enter en FB from a CFC to debug it: "nProjectHandle: 'xxx' is invalid." error
Last updated: 2023-02-23
How to create an alias or other parallel definition to a structure
CODESYS Forge
talk
(Thread)
How to create an alias or other parallel definition to a structure
Last updated: 2022-10-27
How to use __VARINFO within a function block to obtain the origin variable name?
CODESYS Forge
talk
(Thread)
How to use __VARINFO within a function block to obtain the origin variable name?
Last updated: 2022-03-15
How to Map Arrary of Bool to fixed IEC Address?
CODESYS Forge
talk
(Thread)
How to Map Arrary of Bool to fixed IEC Address?
Last updated: 2023-06-30
How to modify the time zone information to set with Adelaide, AU in DTutil library?
CODESYS Forge
talk
(Thread)
How to modify the time zone information to set with Adelaide, AU in DTutil library?
Last updated: 2017-11-04
Post by ph0010421 on How to transfer data from DINT to Union(16 Bools) which I need to use in Few FBs
CODESYS Forge
talk
(Post)
In the Struct, change the 'BOOL' to 'BIT'
Last updated: 2023-12-14
Open dialog from ST , how to set parameters (vars) to dialog
CODESYS Forge
talk
(Thread)
Open dialog from ST , how to set parameters (vars) to dialog
Last updated: 2024-06-05
Any ways to prevent Infinite scroll when moving an object to the left or top edge?
CODESYS Forge
talk
(Thread)
Any ways to prevent Infinite scroll when moving an object to the left or top edge?
Last updated: 2025-10-24
Which Lib to use, connect to a socket with URL instead of IP address
CODESYS Forge
talk
(Thread)
Which Lib to use, connect to a socket with URL instead of IP address
Last updated: 2025-11-12
Two licenses have to be installed forgot to enable one license
CODESYS Forge
talk
(Thread)
Two licenses have to be installed forgot to enable one license
Last updated: 3 hours ago
Post by mondinmr on Unexpected behavior in cyclic encoder read method during INT overflow (wrap-around)
CODESYS Forge
talk
(Post)
Hi everyone, Iβm investigating a potential issue with a cyclic method we use for reading incremental encoders in our libraries. Iβve come across two implementations that, at first glance, appear to perform the same operation: motionUnit.vlPositionActualValue is UINT due strange encoder type. Version A METHOD PROTECTED cyclicReadField VAR_INST actPosFieldOld: INT; rI: INT; delta: INT; END_VAR rI := TO_INT(motionUnit.vlPositionActualValue); delta := rI - actPosFieldOld; m_actPosRaw := m_actPosRaw + TO_LREAL(delta); actPosFieldOld := rI; IF settings.velocityFeebackMapped THEN m_actVelRaw := TO_LREAL(motionUnit.velocityActualValue); END_IF Version B METHOD PROTECTED cyclicReadField VAR_INST actPosFieldOld: INT; END_VAR m_actPosRaw := m_actPosRaw + TO_LREAL(TO_INT(motionUnit.vlPositionActualValue) - actPosFieldOld); actPosFieldOld := TO_INT(motionUnit.vlPositionActualValue); IF settings.velocityFeebackMapped THEN m_actVelRaw := TO_LREAL(motionUnit.velocityActualValue); END_IF Both use INT and the same delta logic, so they seem equivalent. However, when an overflow (wrap-around) occurs, version A continues correctly as expected, while version B unexpectedly resets to -32768 without a clear reason. Has anyone experienced similar behavior or can shed light on what might be happening here? It almost seems as if the cast to LREAL is being applied before the calculation β but that would be illogical and potentially very dangerous in many situations! Thanks!
Last updated: 2025-05-13
Post by vipul on Multicast udp
CODESYS Forge
talk
(Post)
Hi, Good afternoon can anybody help me with UDP Multicast code. I am not able to send or recieve data when code is dumped on linux device. Below is my code. Declaration: PROGRAM udp_multicast VAR oneTimeFlag :UINT :=0; state: INT:=0; driver: UDP.UDPDriver; //port : UDP.Port;//moved to GVL src_ipAddr_ud: UDINT; src_ipAddr_st:STRING := '192.168.127.155';//'192.168.1.155';//ipms ip address dst_ipAddr_ud:UDINT; group_ipAddr_st:STRING := '239.1.5.10'; //group_ipAddr_ud:UDINT; result: SysTypes.RTS_IEC_RESULT; //result of recieve function. bind: UDINT; //result of binding. resultCreate:SysTypes.RTS_IEC_RESULT;//result of port creation. timer:BLINK; temFlag :INT:= 0; post:INT :=0; checksumFunc:checksumXor; localStringBuf:STRING[500]; chksum:BYTE; dataBuffer:POINTER TO BYTE; checksumString:ARRAY[0..5] OF BYTE; recvSize:__XINT; errorCode:UDINT; joinGroupErrorCode:UDINT; END_VAR ************8 Implementation: IF oneTimeFlag <> 1 THEN oneTimeFlag:=1; resultCreate := driver.CreatePort(ADR(GVL.port)); src_ipAddr_ud := UDP.IPSTRING_TO_UDINT(sIPAddress:= src_ipAddr_st); GVL.group_ipAddr_ud := UDP.IPSTRING_TO_UDINT(sIpAddress:= group_ipAddr_st); GVL.port.IPAddress := src_ipAddr_ud; GVl.port.ReceivePort:= GVL.src_port;//port on which messages are expected. GVl.port.SendPort := GVL.dest_port; GVl.port.OperatingSystem := 0; //0- any system GVL.port.Socket :=3; //3- socket type is multicast bind := GVL.port.Bind(udiIPAddress:=src_ipAddr_ud,); GVl.port.JoinGroup(udiGroupAddress:= GVL.group_ipAddr_ud,udiInterfaceAddress:= src_ipAddr_ud,eLogCode=>joinGroupErrorCode); END_IF timer(ENABLE:=TRUE,TIMELOW:=T#100MS,TIMEHIGH:=T#100MS); IF timer.OUT = TRUE THEN GVL.port.Send(udiIPTo:=GVL.group_ipAddr_ud,GVL.dest_port,pbyData:=ADR(GVL.writeData),diDataSize:=SIZEOF(GVL.writeData)); ELSE SysMemSet(ADR(GVL.readData[0]),0,SIZEOF(GVL.readData)); result := GVl.port.Receive(ADR(GVL.readData),diDataSize:=SIZEOF(GVL.readData),udiIPFrom=>dst_ipAddr_ud,diRecvSize=>recvSize,eLogCode=>errorCode); SysMemMove(ADR(GVL.readDataBuf[0]),ADR(GVL.readData[0]),SIZEOF(GVL.readData)); END_IF post:=LEN(GVL.readDataBuf);
Last updated: 2024-01-14
Import RsLogix 5000 project to Codesys
CODESYS Forge
talk
(Thread)
Import RsLogix 5000 project to Codesys
Last updated: 2023-09-07
IMAGE DISPLAY ACCORDING TO INPUT VARIABLE
CODESYS Forge
talk
(Thread)
IMAGE DISPLAY ACCORDING TO INPUT VARIABLE
Last updated: 2023-09-12
To search for an exact phrase, put it in quotes. Example: "getting started docs"
To exclude a word or phrase, put a dash in front of it. Example: docs -help
To search on specific fields, use these field names instead of a general text search. You can group with AND or OR.