Search talk: array address

 
<< < 1 .. 16 17 18 19 20 .. 28 > >> (Page 18 of 28)

Post by tvm on Cannot pass array of constant size to a function as a reference CODESYS Forge talk (Post)
maybe this would be a better approach, then you don't have to pass the constant at all. FUNCTION fun : INT VAR_IN_OUT arr: ARRAY[*] OF INT; END_VAR VAR lower: DINT; upper: DINT; END_VAR lower:= LOWER_BOUND(arr, 1); upper:= UPPER_BOUND(arr, 1); see here as well https://help.codesys.com/api-content/2/codesys/3.5.12.0/en/_cds_datatype_array/
Last updated: 2024-01-08

Post by timvh on Limiting Memory Access of an Array to Within its Bounds CODESYS Forge talk (Post)
Add the object "POU for Implicit Checks" to your application, then select "Bounds check". This will create a function which is automatically called each time an array is write accessed. In the function you can handle "out of bounds" situations. By default it will be limited to its lower or upper bound.
Last updated: 2024-03-06

Post by bjarne-pagaard on Multiple WebVisu CODESYS Forge talk (Post)
You can use the switch frame variable, but there should be a variable for each active visu user. You can put the switch frame variable in an array, and use CURRENTCLIENTID as index into the array to get what you want. The CURRENTCLIENTID is assigned to new users automagically by the Visu Management.
Last updated: 2024-03-14

Post by timvh on Configuring a 2's compliment CODESYS Forge talk (Post)
You could create a DUT of the Type Union and add an array of 2 bytes + an Int. Then write the byte values in the array of the Union and read the Int. Or VAR iInt : INT; byHigh : BYTE := 2#1111_1111; byLow : BYTE := 2#1111_1111; END_VAR iInt := TO_INT(byHigh*16#100 + byLow);
Last updated: 2024-09-28

Post by rafaelbrito on The element of type 'VisuFbElemImage' could not be updated. Reason: Index was outside the bounds of the array. CODESYS Forge talk (Post)
When trying to use the Visualization ToolBox, no objects appear and the following error appears. Could you tell me what this error could be? The element of type 'VisuFbElemImage' could not be updated. Reason: Index was outside the bounds of the array. Can anyone tell me what this error is?
Last updated: 2024-12-03

Post by timvh on STRING conversions to DWORD CODESYS Forge talk (Post)
I guess that the printer expects to receive an array of byte values. So where it is described that it expects to receive: Hercules String : 1B4F513030311B7532626C61636B04 it actually expects to receive an array of bytes with the values 1B,4F,51,30,30, etc. So what you can do is create an array of bytes and assign the byte value to each item in the array: VAR abyToSend : ARRAY[0..99] OF BYTE; END_VAR abyToSend[0] := 16#1B; // ASCII Escape character, hexadecimal representation uses 16# as prefix abyToSend[1] := 16#4F; // ASCII 'O' abyToSend[2] := 16#51; // ASCII 'Q' abyToSend[3] := 16#30; // ASCII '0' // you can do the rest yourself // maybe could be created a lot smarter, but gives you an indication how to handle this. Then with the serial communication (or TCP/IP?) you can send a message with the reference to the array (abyToSend) and the number of bytes to send (15 bytes for the string you gave as example).
Last updated: 2025-02-02

Post by laurits on Max lines of code, codesys CNC ? CODESYS Forge talk (Post)
Hi, okay here's the project, it's a modified version of "CNC Example 10: Programming Dynamic CNC Paths", no need for G Code text file (i have also tried with G code text file, same problem) in "PROGRAM PLC_PRG" you can set bStart to true, and the program should start running, go to "PROGRAM CNC" and you can see axis moving. lrXpos := IoConfig_Globals.XAixs.fSetPosition; lrYpos := IoConfig_Globals.YAxis.fSetPosition; Now you can can change the number of movements in the the "PROGRAM PLC_PRG" From this number of movements in "program PLC_PRG" BUF : ARRAY[0..32010] OF SMC_GEOINFO; xp : ARRAY[1..32000] OF REAL; yp : ARRAY[1..32000] OF REAL; to this number to this number of movements BUF : ARRAY[0..132010] OF SMC_GEOINFO; xp : ARRAY[1..132000] OF REAL; yp : ARRAY[1..132000] OF REAL; Now if you start the program again you should see an error in the "sMC_Interpolator: SM3_CNC.SMC_Interpolator;" function block Let me know if you can not get it running.
Last updated: 2025-06-03

Post by matt-purcell on Which Lib to use, connect to a socket with URL instead of IP address CODESYS Forge talk (Post)
Hello, I have a new project and I need to connect to a TCP socket using the URL instead of an explicit IP address, myendpoint@mydomain.com Which library is best suited for this? This is for a new enterprise project, the endpoint is a server in a datacenter running some real time application. We have big IP, it will automatically reassign the IP address to the backup server if a crash occurs so an explicit IP won't work for me. I've done this in RS logix, working now to migrate that code over to codesys. Thanks in advance!
Last updated: 2024-06-17

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 davidbo on How to switch between dynamic IP address and dynamic? CODESYS Forge talk (Post)
Well. One can do that, I have found a python script which can modify /etc/dhcpcd.conf and I suppose there is a way I can execute it from CODESYS and it seems to be the only way
Last updated: 2023-11-08

Post by lostcontrol on Bool turning on in case stament in wrong state? CODESYS Forge talk (Post)
are you sure it is not used anywhere else.? does it have an address that could be duplicated perhaps? nothing external writing to it?
Last updated: 2023-12-16

Post by alexgooi on Codesys OPC DA server requires more then 2 GB of ram CODESYS Forge talk (Post)
My colleague has found a tool online, Now it is possible to go to 4 GB instead of 2, which is plenty for now: https://www.techpowerup.com/forums/threads/large-address-aware.112556/ Use at own risk
Last updated: 2024-01-25

Post by nano on Dynamic setting of the modbus tcp/ip slave ip address CODESYS Forge talk (Post)
habe a look to this faq, this should work for u https://faq.codesys.com/plugins/servlet/mobile?contentId=24510471#content/view/24510471
Last updated: 2024-02-17

Post by ragarcia on Error while using UpdateConfiguredIPSettings to change IP address CODESYS Forge talk (Post)
I did check I cannot see any error log. It is when executing the Reconfigure function that I get an error as return from that function.
Last updated: 2024-02-19

Post by ralfk on Dynamic Setting IP Address from IEC code CODESYS Forge talk (Post)
Hello together. I also want to try it but when enter Ethernet.UpdateConfiguredIPSettings I don't see this Option. what do I wrong. I hope somebody can help me.
Last updated: 2024-02-19

Post by ralfk on Dynamic Setting IP Address from IEC code CODESYS Forge talk (Post)
Hello together. I also want to try it but when enter Ethernet.UpdateConfiguredIPSettings I don't see this Option. what do I wrong. I hope somebody can help me.
Last updated: 2024-02-19

Post by vkira on Radio module on wago 750-8217 CODESYS Forge talk (Post)
Hello. Tell me how to connect to the internal radio module PLC 750-8217. I use the gsm sms_01 library. I don't understand how to connect. via com port? what's the address?
Last updated: 2024-05-06

Post by alex-wall on Network Variables not updating CODESYS Forge talk (Post)
This worked for me. I had four identical PLC's. Three of them worked just fine with 255.255.255.255 as the broadcasting address but the 4th would not update the variables. Changed it to 192.168.x.255 and everything worked.
Last updated: 2024-05-07

Post by pasillalej on No gateway with the given settings could be found CODESYS Forge talk (Post)
Go to Online>Communication Parameters...>Gateway>TCP/IP> Click on "New..." and reestablish your connections with whatever IP address and set up information you have. Bypass whatever is necessary as you may have to redownload to the PLC.
Last updated: 2024-05-09

Post by mondinmr on First IO address of a CAADiagDeviceDefault. CODESYS Forge talk (Post)
I have a device CAADiagDeviceDefault: IoConfig_Globals.Axis_A In our library, we perform introspection of the Etc_SlaveDiag. In that case, we have connectors, and by searching for them by address, I can find them in the IO mapping using the offset and size provided by EtherCAT. However, a Lenze i700 drive, instead of placing the IO mapping in the Etc_SlaveDiag device, places it in a sub-device CAADiagDeviceDefault. So, when I perform introspection, I cannot find the IO correspondences. Yet, in the CAADiagDeviceDefault, I do not find the connectors and cannot do the matching. Is there a way with a pointer or reference to a CAADiagDeviceDefault to obtain the address of the first input and the address of the first output? This is because we have our own motion library with many EtherCAT devices that automatically configure the mappings, but I can't manage to do so with the Lenze i700.
Last updated: 2024-08-22

Post by pablotorres on Dynamic Setting IP Address from IEC code CODESYS Forge talk (Post)
Hi! I have a problem, when I write Ethernet.Enable, I get an error ("Enable" undefined). Could you send me the program? I can't solve it, and I don't know if it's because I'm missing a library or some FB...
Last updated: 2024-09-30

Post by timvh on Modbus TCP & RTU with Control for Linux SL CODESYS Forge talk (Post)
Most likely your IP address is set to 172.... because you use a VPN connection to your device. Probably best to use the other Ethernet interface for your modbus communication.
Last updated: 2024-10-24

Post by fless on Help with __SYSTEM.VAR_INFO CODESYS Forge talk (Post)
to get the address just use ADR( ) variables defined in a VAR_IN_OUT block are references pointing to the passed variables. VAR_IN_OUT MyVar: bool; END_VAR VAR adrMyVar: __XWORD; END_VAR adrMyVar := ADR(MyVar);
Last updated: 2025-01-26

Post by chrisdeloglos on Network Variables not updating CODESYS Forge talk (Post)
Thanks for the comment. I'm using Weidmueller UC20-WL2000-AC's and changing the broadcast address to match the current subnet this worked for me as well!
Last updated: 2025-01-27

Post by timvh on VisuElems.cmpDynamictext.DynamicTextGetTextW returns pointer to empty string CODESYS Forge talk (Post)
Try this: VAR sTextList : STRING; END_VAR sTextList := 'NameOfTheTextList'; // call to the function with the address of the string variable which contains the name of the textlist : ... ADR(sTextList), ....
Last updated: 2025-02-07

<< < 1 .. 16 17 18 19 20 .. 28 > >> (Page 18 of 28)

Showing results of 684

Sort by relevance or date