Pass the second array dimension into a function as a parameter
CODESYS Forge
talk
(Thread)
Pass the second array dimension into a function as a parameter
Last updated: 2022-05-10
Targetvisu: Einem als Frame eingebundenem Visuelement ein array als In_out übergeben
CODESYS Forge
talk
(Thread)
Targetvisu: Einem als Frame eingebundenem Visuelement ein array als In_out übergeben
Last updated: 2020-05-11
Bug found? Weird behaviour of Combobox (Array and Integer) in CodeSys 3.5SP16 Patch 2 (64bit) Visu
CODESYS Forge
talk
(Thread)
Bug found? Weird behaviour of Combobox (Array and Integer) in CodeSys 3.5SP16 Patch 2 (64bit) Visu
Last updated: 2021-11-02
[SOLVED] Install ESI file: Index was outside the bounds of the array
CODESYS Forge
talk
(Thread)
[SOLVED] Install ESI file: Index was outside the bounds of the array
Last updated: 2017-12-15
how use / convert I/O name or address from array (of strings or other)
CODESYS Forge
talk
(Thread)
how use / convert I/O name or address from array (of strings or other)
Last updated: 2023-01-05
an element of "Array of BOOL" in SFC Action name
CODESYS Forge
talk
(Thread)
an element of "Array of BOOL" in SFC Action name
Last updated: 2008-05-05
Table Control on an array using a constant for its size.
CODESYS Forge
talk
(Thread)
Table Control on an array using a constant for its size.
Last updated: 2016-01-08
BUG: Why does I get garbage values when I use CONCAT and Array with CAA File?
CODESYS Forge
talk
(Thread)
BUG: Why does I get garbage values when I use CONCAT and Array with CAA File?
Last updated: 2019-07-04
Fehler C0178 Externer Zugriff auf VAR_IN_OUT-Parameter "Array" von einem FB
CODESYS Forge
talk
(Thread)
Fehler C0178 Externer Zugriff auf VAR_IN_OUT-Parameter "Array" von einem FB
Last updated: 2023-08-01
Function block with an array of unknown size as a VAR_IN_OUT
CODESYS Forge
talk
(Thread)
Function block with an array of unknown size as a VAR_IN_OUT
Last updated: 2017-03-07
How I should define a huge size byte array in CoDeSys V3?
CODESYS Forge
talk
(Thread)
How I should define a huge size byte array in CoDeSys V3?
Last updated: 2013-08-30
How can i read data from a file into an array?
CODESYS Forge
talk
(Thread)
How can i read data from a file into an array?
Last updated: 2021-08-09
Post by duvanmoreno24 on Modbus writing on value change
CODESYS Forge
talk
(Post)
Yes, I tried to do what you put in the first code. However, I have a problem with that and that is that the inputs must be declared with the type. I have many data types running in my code (real, int, uint, bool) and I can't put them in the same function, another thing is that I need to instantiate that function for everything I want to write to the slave. You put a for to 200 but it means that it has to be the same data type and inside the array, but I want to get them individually. I'm struggling to do it in a good and efficient way like wago's E-cockpit does. in the first screenshot you can see, you simply type in value, change the package of things you want to write in value change and it does everything by itself automatically, without comparing any old and new values and even less having the need to activate a bool. , it is perfect.
Last updated: 2024-04-03
Post by andrebrandt on BACnet dynamic create bacnet object
CODESYS Forge
talk
(Post)
Hi. I want to create a FB with bacnet objects. FUNCTION_BLOCK PT1000 VAR_INPUT System: STRING; In: REAL; Name:STRING; END_VAR VAR_OUTPUT Out: REAL; Out_St: Struct_PT1000; END_VAR VAR {attribute 'instance-path'} {attribute 'noinit'} Tag: STRING; Instance:DINT; //AnalogInn : WagoSysBACnet.FbAnalogInput_large(1); This works. Objectname is AnalogInn. identifier is 1 END_VAR I want to name object based on FB PT1000. In FB P1000, I want to write eUnits, Name and so on. How can i do this???
Last updated: 2025-01-15
Post by ferrim on IEC 61499
CODESYS Forge
talk
(Post)
Hello otdeveloper, I am very interested in this topic. I have been dedicated to IEC 61499 for some time and I would like to understand if the time has come to adopt it in the real world of automation or if it will continue to fill up research papers only.
Last updated: 2024-02-09
Post by calviniscoding on Publish a JSON payload via MQTT Publish (using IIot Libraries)
CODESYS Forge
talk
(Post)
Are you able to dynamically change the JSON message? As in, if wsValue or iValue is linked to some real telemetry that varies over time, will the JSON message reflect these changes? I am only able to send the values that I initialize the JSON message to
Last updated: 2024-06-18
Post by simover on TCP/IP client
CODESYS Forge
talk
(Post)
I want to send a string to a tics TCP/IP server. I got i working with the Net Base lib. for communication good with this tcis i need to by array of byte I want to include a string in the third position of the array TCIS_Send[1] :=254; //this valus is fix for evry communication TCIS_Send[2] :=80; //this valus is fix for evry communication TCIS_Send[3] := ; here I put my and my string is lik this 5806509-DRAP10#AB#3452302073 TCIS_Send[4] :=252; //this valus is fix for evry communication
Last updated: 2023-12-18
Post by janderson on OPC UA Server limitations, large array crashes runtime
CODESYS Forge
talk
(Post)
when using an array of structs, the runtime crashes. but when using an array of LREALS, it'll do 100k at least
Last updated: 2023-08-23
Post by timvh on Array of Program
CODESYS Forge
talk
(Post)
You cannot create an array of Programs. Create a Function Block for this purpose instead of a program. You can create an array of FB instances and call each instance in a loop.
Last updated: 2024-09-03
Post by stribor on Passing properties as VAR_IN_OUT variables.
CODESYS Forge
talk
(Post)
if i only use it as input variable I won't be able to update its state within the visu object. Lets say i have real value as a property, i would like the slider object to display this value and also modify it.
Last updated: 2025-04-30
Post by marekxc on Little endian to Float from Modbus RTU
CODESYS Forge
talk
(Post)
Maybe try going back to step one and: Var Reg1: WORD; Reg2: WORD; Reg12: DWORD; Value: REAL; end_var // program Reg1:= 4096; Reg2:= 14884; Reg12:= (reg2 * 65536) + reg1; Value:= DWORD_TO_REAL(Reg12);
Last updated: 2023-12-28
Post by mxj262 on FB having single input but initialized with Array
CODESYS Forge
talk
(Post)
I am adding elements of an ARRAY using pointer to access each element inside a FOR loop and the FOR loop does not stop! What is the right way to use pointers in such case?? I have another loop that is not using pointer and it stops but the loop using pointer keep on adding. METHOD FB_Init: BOOL VAR_INPUT bInitRetains: BOOL; // TRUE: the retain variables are initialized (reset warm / reset cold) bInCopyCode: BOOL; // TRUE: the instance will be copied to the copy code afterward (online change) END_VAR VAR_IN_OUT // basically REFERENCE TO window_buffer: ARRAY [*] OF INT; // array of any size END_VAR THIS^.windowPtr := ADR(window_buffer[0]); THIS^.windowSize := UPPER_BOUND(window_buffer, 1) - LOWER_BOUND(window_buffer, 1) + 1; FUNCTION_BLOCK FB500 VAR_INPUT END_VAR VAR_OUTPUT END_VAR VAR windowPtr: POINTER TO INT; windowSize: DINT; currentIndex: UINT; element1:INT; element2:INT; i:INT; j:INT; sum:DINT:=0; END_VAR element1:=windowPtr[0]; // read the first element of the Array dynamic memorry element2:=windowPtr[1]; FOR i:=0 TO (TO_INT(windowSize-1)) BY 1 DO // this loop does not stop Sum:=sum + windowPtr[i]; END_FOR FOR j:=0 TO 5 BY 1 DO // this loop stops j:=j+1; END_FOR https://ibb.co/k3DhkZT
Last updated: 2024-05-06
Post by levih on FbHTTPs_Get how to get data from a website and use it in codesys
CODESYS Forge
talk
(Post)
You get an array of DWORD into your receive buffer. You need to process this into usable data, before you can fit it into your DUT. I've made it work using FbWrite_ToIEC_ByRule in stead of Fb_JSON_ParseAndModify. I've attached images of the code. You receive the data into ARRAY[0..1023] OF DWORD. Then you use that array as the input for fbWrite_ToIEC_ByRule. To get the output from this you define a rule to fit the expected data structure including nesting levels. The you feed the rule into FbWrite_ToIEC_ByRule and then you can set the output to be of your DUT type.
Last updated: 2025-06-16
Post by andrea199403 on Assigning Modbus addresses to a structure in a dynamic way
CODESYS Forge
talk
(Post)
Hello everyone, I am new to this forum and I am also new to Codesys programming. My problem is this: I have a STRUCT of 64 bool and 30 real, this STRUCT is assigned in the programme 9 times. Now I need to communicate with an HMI via Modbus and I have defined the slave device and created the holding registers for communication. I would like to declare the first call of the STRUCT on the Modbus registers %QX2000.0 to %QX2007.7 for the booleans and on the registers %QW1004 to %QW1034 for the real registers. That said, I would like to change an index and set an offset of 100 bytes for the calls of the other 8 assignments, so that the result is: %QX2100.0 to %QX2107.7 for the booleans and on the %QW1104 to %QW1134 registers for the Real registers, etc. Is there a way to declare this? Thank you very much.
Last updated: 2025-10-21
Post by alexgooi on Codesys virtual control redundancy
CODESYS Forge
talk
(Post)
Dear Forum, I’m currently investigating the possibilities of Codesys virtual control (Linux). The research rig consists of a PC (Debian with real time kernel) with a docker server installed on it. The PC is communicating with a Remote I/O and I have to say the performance is great. The process in the container is running (soft) real time. Currently I’m checking if it is possible to replace physical controllers by remote I/O’s and run the Codesys applications on a docker server. If I’m going into this route the reliability of the server is very important (server down, complete installation down), is it possible to make the server redundant without needing 2 separate containers (including licenses), and maintaining the real time behavior? I’m not only expecting direct answers, if you have any idea or thought they are very welcome. Kind regards Alex
Last updated: 2025-09-03
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.