Search talk: array to int

 
<< < 1 .. 24 25 26 27 28 .. 223 > >> (Page 26 of 223)

How to change bHiresMode CODESYS Forge talk (Thread)
How to change bHiresMode
Last updated: 2024-03-12

CODESYSControl_User.cfg - link to documentation? CODESYS Forge talk (Thread)
CODESYSControl_User.cfg - link to documentation?
Last updated: 2024-06-11

Data to server CODESYS Forge talk (Thread)
Data to server
Last updated: 2025-11-11

Post by stevens on No option to create "Parameter List" in library CODESYS Forge talk (Post)
I am struggling with this issue right now (again). I have nested structures with configurable array sizes. In the past I ever used parameter list. Very easy way! As of now I cannot find any solution. Ridiculous that they deprecated it without an alternative solution.
Last updated: 2025-08-26

Post by gatto on warning C0195 CODESYS Forge talk (Post)
Good morning dear codesys users. I'm using 3.5.20.40 and I get this warning C0195 when I assign an initial value to xyz. However, if I do it on a single byte (abc), it doesn't display any warning. Why? VAR_GLOBAL abc : BYTE := 100 ; xyz : ARRAY [1..10] OF BYTE := [10(100)] ; END_VAR
Last updated: 2025-11-20

Post by comingback4u on Memory Address Overlap CODESYS Forge talk (Post)
Hello, We use a controller that comes with a bunch of predefined faults. These faults are considered active and historic. They are a 32 byte array but only take up 26 bytes of data. Because of this the historic faults start at address 26 instead of 31. Active faults variable take up address location 0 to 31. Historic faults variable take up address location 26 to 57. Because of this overlap I get an error that these overlap and it wont allow me to download to my controller. This isn't an issue in 3.5.5.4 but becomes an issue in newer version. Is there a way to turn this off? If I change the address location, the historic faults then become broken without doing some manipulation in the code. The software will build just fine. Thank you for your time.
Last updated: 2024-03-07

Post by spice on WebVisu Recipe Save/Load CODESYS Forge talk (Post)
I'm currently reworking the controls on a cnc press brake and wanted to load various recipes as programs to run. I'm using a 2d array of REALs to store the X and Y coordinates as well as some other program parameters in a recipe. I'd like to store all of the recipes on a computer used as the HMI that way the text files can be edited and uploaded offline. I'm using Automation Directs P2CDS-622 Can this be done through webvisu? If not would a license for Codesys HMI SL on the computer allow me to accomplish this? I've attached the Project File Thanks, Spice
Last updated: 2024-05-31

Post by bertrand-major on Cancelling a selection from a "combobox array" in Visu CODESYS Forge talk (Post)
Hi Joanm, Did you get an answer from anybody in anather section ?
Last updated: 2024-07-17

Post by pilouuu on problem OPC UA array CODESYS Forge talk (Post)
Hello, why can't I read the arrays on my PLC's UA OPC server with codesys, even though they are accessible from UA Expert?
Last updated: 2025-02-26

Post by pilouuu on problem OPC UA array CODESYS Forge talk (Post)
Hello, why can't I read the arrays on my PLC's UA OPC server with codesys, even though they are accessible from UA Expert?
Last updated: 2025-02-26

Post by timvh on control loop library IIR filter CODESYS Forge talk (Post)
In the Control Loop Library package are multiple example projects, including one for the filters. Program containing: GVL.filterIIR( xEnable:= GVL.xEnableFilter, lrValue:= GVL.lrYOriginal, lrFilteredValue=> GVL.lrOutputIIR); GVL.filterFIR( xEnable:= GVL.xEnableFilter, lrValue:= GVL.lrYOriginal, lrFilteredValue=> GVL.lrOutputFIR); GVL.filterSOS( xEnable:= GVL.xEnableFilter, lrValue:= GVL.lrYOriginal, lrFilteredValue=> GVL.lrOutputSOS); GVL containing aCoefficientsA_IIR : ARRAY[0.. 4] OF LREAL := [1,-2.3695130071820376,2.31398841441588,-1.0546654058785676,0.18737949236818494]; aCoefficientsB_IIR : ARRAY[0.. 4] OF LREAL := [0.0048243433577162282,0.019297373430864913,0.028946060146297369,0.019297373430864913,0.0048243433577162282]; filterIIR : Ctrl.Filter_IIR := (palrCoefficientsA:= ADR(GVL.aCoefficientsA_IIR), udiSizeCoefficientsA:= SIZEOF(GVL.aCoefficientsA_IIR), palrCoefficientsB:= ADR(GVL.aCoefficientsB_IIR), udiSizeCoefficientsB:= SIZEOF(GVL.aCoefficientsB_IIR)); aCoefficientsB_FIR : ARRAY[0.. 5] OF LREAL := [0.01982722552692669,0.1325131219866022,0.34765965248647102,0.34765965248647107,0.13251312198660226,0.019827225526926694]; filterFIR : Ctrl.Filter_FIR := (palrCoefficientsB:= ADR(GVL.aCoefficientsB_FIR), udiSizeCoefficientsB:= SIZEOF(GVL.aCoefficientsB_FIR)); aCoefficientMatrix_SOS : ARRAY[0.. 1] OF Ctrl.FilterCoefficients_SOS := [(b0:= 1, b1:= 2, b2:= 1, a0:= 1, a1:= -1.048599576362609, a2:= 0.2961403575616683), (b0:= 1, b1:= 2, b2:= 1, a0:= 1, a1:= -1.320913430819428, a2:= 0.6327387928852787)]; lrG : LREAL := 0.004824343357716228; filterSOS : Ctrl.Filter_SOS := (paCoefficientMatrix:= ADR(GVL.aCoefficientMatrix_SOS), udiSizeCoefficientMatrix:= SIZEOF(GVL.aCoefficientMatrix_SOS), lrGain:= GVL.lrG); lrX : LREAL; lrYOriginal : LREAL; lrOutputFIR : LREAL; lrOutputIIR : LREAL; lrOutputSOS : LREAL; xEnableFilter : BOOL := TRUE;
Last updated: 2025-08-01

Post by wollvieh on Array of UDT Compare CODESYS Forge talk (Post)
use sysmemcmp. https://content.helpme-codesys.com/en/libs/SysMem23/Current/POUs/SysMemCmp.html
Last updated: 2024-04-08

Post by albertovalente on How extract JSONElement containing Array data CODESYS Forge talk (Post)
Hi Creator: hazarath, Have you fix the problem? because I have the same issue Thanks a lot
Last updated: 2025-11-12

Post by albertovalente on How extract JSONElement containing Array data CODESYS Forge talk (Post)
Hi Creator: hazarath, Have you fix the problem? because I have the same issue Thanks a lot
Last updated: 2025-11-12

Post by gatto on warning C0195 CODESYS Forge talk (Post)
I answer myself: xyz : ARRAY [1..10] OF BYTE := [10(BYTE#100)] ; // no warning :-)
Last updated: 2025-11-20

Post by garyl on Comments in arrays and assigning RST coil's to 600 outputs CODESYS Forge talk (Post)
Hello all, im working on a project that requires me to convert an old automation direct DirectSoft PLC d2-250-1. One of the problems im encountering is that all of the comments are attached to members of the different addresses. When i convert the addresses (1777 "C" registers, 777 X registers, and 20,0000 V registers) im running into difficulties keeping the inputs/outputs correct since they are missing documentation. Is there a good way to retain the comments of the indexes in the array? Secondly, initially i was declaring the "C" and "V" addresses individually and this worked to retain the comments as to which register did what, however i ran into a problem when one rung reset (or set to 0) approximately 600 C Addresses. Since each tag is separately declared this proved to be nearly impossible without a literal wall of code that attempted to crash the program. So i converted all of the registers (C,X,Y,V) into separate structs, declared them as arrays and pointed all of the original call outs in the program to the newly defined structs. However i have now lost comments and the program is very hard to follow. Thanks for any help with this issue.
Last updated: 2023-08-31

Post by garrian on How to write multiple coils (Modbus FC15) CODESYS Forge talk (Post)
Thanks! As far as I can see, the client can only send words. And on the server side there are an array for each of the functions: bool for coil and discrete, word for holding and input registers. I assume I can use holding register, then use bit mapping on the words instead of coils. But I really want to use the FC15/coils.
Last updated: 2024-11-17

Post by alimans on OPC-UA Server, Symbol Set: Raise an error: Object reference not set to an instance of an object. CODESYS Forge talk (Post)
Hi everyone, I just created a very simple library without any code and, added it to my very simple project. after adding this library, I get an error when I try to open "Symbol Set" in "OPC UA Server" in "Communication Manager". Here is the code of my POU in the library: FUNCTION_BLOCK POU VAR eCommand : (CMD_NONE:=0, CMD_RESET:=-1) INT := CMD_NONE; END_VAR Attached is the error that I get. I also noticed that by removing the enumeration variable above (eCommand), I can open the "Symbol Set" again. Anybody has any idea why this error is raised and how could I use enumeration variables without error in "OPC UA Symbol Set"?
Last updated: 2024-08-08

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

Post by wiresplus on Cannot get INT_TO_TIME working CODESYS Forge talk (Post)
Hello, I have a simple TON timer. It is watching prime loss for a pump. The operator can set the delay via the HMI, it is an integer (seconds) As the TON uses milliseconds, we then multiply the entry by 1000 to get seconds. Seems simple, but... VAR PrimeTimer : TON; primetime : INT; END_VAR PrimeTimer(in:=State>0 AND FlowRate<MinimumFlow,pt:=INT_TO_TIME(primetime *1000)); For an entered 15 seconds (VAR primetime:=15;) the timer reads 49d17h2m26s760ms !!!! What am I doing wrong?
Last updated: 2024-01-26

Post by amy123 on Alarm Manager Example Alarm Client doesn't Populate CODESYS Forge talk (Post)
Hello, I tried to run the example project from https://forge.codesys.com/prj/codesys-example/alarm-manager/home/Home/ However, I can not get the interface for Alarm History 12 Alarm Manager client to populate with any alarms. 'udiResult := AlarmManager.g_AlarmHandler.RegisterClient(itfAlarmManagerClient12, ADR(arritfAlarmsFromHistory12), iMaxCountAlarmsFromHistory12);' when I look at itfAlarmManagerClient12 its always empty. What is confusing is that when I simulate 2 alarms, iCountActiveAlarms 12 has a vlaue of 2, associated with itfAlarmManagerClient12 - so that appears to work. And yet, its useless as the ProcessAlarms Function can't extract anything from the empty array. I dont understand how these arrays are supposed to be populated and why its not working. Any help would be greatly appreciated!
Last updated: 2024-07-15

Post by ben1 on How to write multiple coils (Modbus FC15) CODESYS Forge talk (Post)
If I am understanding what you are saying, then yes that would be your problem. I would create an array of bools on the client side for the transfer and try that. Or if client can't be changed then use words on server and unpack. But I am not sure if you or I are mis interpreting but it sounds a bit jumbled. I don't know what you have control of, but, if you are turning on BITS in the server, you should write to BITS in the client with a Function 15. If you are writing to WORDS in the server, you should write to WORDS in the client with a Function 16.
Last updated: 2024-11-17

Post by riccardo on Error while processing the visualization: Client id not present or no longer valid CODESYS Forge talk (Post)
Hallo goodmorning, I am using codesys 3.5 sp19 with Weidmueller PLC. I created a page with several checkbox to manage an array of bool. When I build the project the system doesn't signal any error, when I go in simulation mode everything works until I click on checkbox to toggle the variables. Other visu elements works proprerly (e.g. bottons, lights, ect, ect) but the check boxes cause a crash giving the following error: Error while processing the visualization: Client id not present or no longer valid I serched to figure the problem out and to search a solution on the web but nothing. Can someone help? Thanks and Regards, Scanu
Last updated: 2024-01-23

Post by timo on String nach erlaubten/unerlaubten Zeichen durchsuchen CODESYS Forge talk (Post)
Vielen Dank. Das ist natürlich etwas eleganter zu prüfen ob ein ASCII Wert von meinen Zeichen abweicht. Der INT Zähler ist bei dir in der Deklaration anders benannt als im Code, aber das Konzept in meinem Code integriert funktioniert scheinbar.
Last updated: 2025-01-21

Post by jampid on Struct Literal CODESYS Forge talk (Post)
Bonjour Davidmic, Il n'est pas possible d'associer une méthode à une fonction. Cela est possible sur les Blocs fonctions. En utilisant ta DUT MyStruct, je créé une fonction avec en entrée un tableau de structure :** FUNCTION F_F3 : REAL VAR_IN_OUT // bien définir un type IN_OUT IN_ptrINT: ARRAY[*] OF MyStruct; // la taille sera définie ultérieurement/ END_VAR VAR _di: DINT; // Index de parcours du tableau pour l'écriture dans les cases ENDVAR ============== //Programme F_F3: FOR _di := LOWER_BOUND(IN_ptrINT,1) TO UPPER_BOUND(IN_ptrINT,1) DO IN_ptrINT[_di].som:=IN_ptrINT[_di].a + IN_ptrINT[_di].b; END_FOR J'utilise ensuite cette fonction dans un POU Programme : PROGRAM Test_F_Fx VAR _aiTAB9:ARRAY[0..3] OF MyStruct := [(a := 1, b := 1.2), (a := 2, b := 2.2), (a := 3, b := 3.3), (a := 4, b := 4.4)]; END_VAR ** ==========** F_F3(IN_ptrINT:=_aiTAB9 ); Voilà l'idée pour avancer. Une autre idée, est d'utiliser les pointeurs ou les références. Bon développement!
Last updated: 2025-04-07

<< < 1 .. 24 25 26 27 28 .. 223 > >> (Page 26 of 223)

Showing results of 5552

Sort by relevance or date