Search talk: type convert

 
<< < 1 .. 12 13 14 15 16 > >> (Page 14 of 16)

Post by agentcousto on [Bug report] Issue with Importing XML Files Containing "POINTER TO" Variables in Codesys Platform Plugins Versions 2.7 and 2.8 CODESYS Forge talk (Post)
Hello, I have developed a Python script that I run to import XML files into my project. For this, I use the Python function import_xml(). Everything was working fine when I was using Codesys platform plugins version 2.6.1.2320, but since I upgraded to versions 2.7 and even 2.8, some files are no longer imported correctly. After some research, I identified that all the files containing variables of the type "POINTER TO" are affected. I have attached a screenshot of the error I am encountering. Do you know about this bug? Do you plan to fix it?
Last updated: 2025-03-26

Post by aeem on CODESYS Installer does't open CODESYS Forge talk (Post)
Just downloaded stand alone setup, deleted old installer and installed new. Looked up at the installation log - MSI (c) (48:E0) [19:33:49:483]: Windows Installer installed the product. Product Name: CODESYS Installer. Product Version: 2.4.0.3545. Product Language: 1033. Manufacturer: CODESYS GmbH. Installation success or error status: 0. Installer still not running EDIT: It's working. Somehow my Windows Event Log service was disabled. I restarted the service and everything is working fine right now. Click the Start Menu or (Windows key + R) Type services.msc into the search field (Enter) Open the Services app Find a service you want to disable/enable (Windows Event Log), and double click Click Start
Last updated: 2025-04-01

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

Post by rossanoparis on Internal Error (ARM): Unsupported conversion! With new version v3.5 SP21 CODESYS Forge talk (Post)
I have updated CODESYS development tool to the version v3.5 SP21 (64bit) The previous version was v3.5.20.40 Compiling an existing application with the new evelopment tool I get the following error. kunbusiodrvrevpibridge, 1.4.1.0 (kunbus gmbh): IoDrvScanModules [IoDrvRevPiBridge](Line 51, Column 1 (Impl)): Internal Error (ARM): Unsupported conversion! This error was not reported in the previous compiler version and is now highlighted in a third-party library, which I cannot change or modify. The error is due to the following conversion: m_udiError := TO_UDINT(excCode); . The excCode variable is a system type, declared as shown below, and should be converted to a UDINT excCode : __SYSTEM.ExceptionCode; m_udiError: UDINT; . I would appreciate it if someone could provide feedback on this issue.
Last updated: 2025-04-15

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 jzhvymetal77 on VarAccGetAddress does not return the correct address for TYPE_ARRAY or TYPE_USERDEF. CODESYS Forge talk (Post)
VarAccGetAddress does not return the correct address for TYPE_ARRAY or TYPE_USERDEF. When you use VarAccGetNode, it returns a proper IBaseTreeNode if you provide the full path of an array element or structure element, and it even provides the correct data type. The problem is that with TYPE_ARRAY, it returns the start address of the array rather than the indexed element. With TYPE_USERDEF, it only returns the offset of the element instead of the actual address. This causes many issues with nested structures or arrays of structures, since it requires manually calculating the address based on the parent IBaseTreeNode. See attached image and example.
Last updated: 2025-08-28

Post by reinier-geers on Web client CODESYS Forge talk (Post)
Hi, ive got the webclient example. So now i want to use it. Ive got an example. but thats some JSON type. As far i know is JSONe som kind of structure. But thats new for me. I think its posible with get. Can someone help me? This is the link witch explains what to do https://reversed.notion.site/Marktprijzen-API-89ce600a88ac4abe8c2ad89d3167a83e i tried this : sURL : STRING(1024) := 'https://graphql.frankenergie.nl/get/ {"query":"query MarketPrices {\n marketPrices(date:\"2022-01-01\") {\n electricityPrices {\n from\n till\n marketPrice\n marketPriceTax\n sourcingMarkupPrice\n energyTaxPrice\n perUnit\n }\n gasPrices {\n from\n till\n marketPrice\n marketPriceTax\n sourcingMarkupPrice\n energyTaxPrice\n perUnit\n }\n }\n}\n"}'; // URL But thats a bad request
Last updated: 2025-10-08

Post by khaledkhalil on Import OPC UA model to Codesys CODESYS Forge talk (Post)
I have added a models in SiOME which a software to design nodes and add instances. and created a resultant xml file. I tried to import the xml file to Codesys through OPC UA information model Repository the problem i don't know how to view my objects which i have designed. and map it to my PLC to make viewable on my server UaExpert. I watched the tutorial video https://youtu.be/aJhzN3Uk-Do?feature=shared. But it only give you how to add the Information model, and my resultant model doesn't have information type. So how in Codesys i can view a model which i have designed in SiOME and mapped my instances (Objects, Variable or methods) with my Variables in PLC I saw people do it in Tia Portal or other Software, but i have no clue how to do it on CODESYS
Last updated: 2024-03-12

Post by francescoc on Logger in ms CODESYS Forge talk (Post)
Hi, I cannot find any documentation regarding the codesys configuration file. I modified this part to have log files saved to disk: [CmpLog] Logger.0.Name=LOGS/PlcLog Logger.0.Filter=0xFFFFFFFF Logger.0.Enable=1 Logger.0.MaxEntries=20000 Logger.0.MaxFileSize=5000 Logger.0.MaxFiles=10 Logger.0.Backend.0.ClassId=0x0000010B ;sends logger messages to SysOut Logger.0.Backend.1.ClassId=0x00000104 ;writes logger messages in a file Logger.0.Backend.2.ClassId=0x00000135 ;sends logger messages as UDP syslog Logger.0.Type=0x314;Set the timestamp to RTC ;Logger.1.Name=/tmp/CommLog ;Logger.1.Enable=1 I need to have milliseconds in the timestamp as well. What value should I use instead of 0x314? Is there any documentation regarding this file? Thank you
Last updated: 2024-03-16

Post by wollvieh on Raspi Pi Bullseye Webvisu Autostart CODESYS Forge talk (Post)
Anbei meine Lösung zum Autostart der Webvisu, vllt. hilft es jemandem... =============================== Raspberry Pi Bullseye 11 Autostart Codesys Webvisu im Kiosk Mode 1)Datei erstellen: sudo nano/etc/xdg/autostart/Visustart.desktop 2)Inhalt der Datei: [Desktop Entry] Type=Application Name=Visustart Exec=bash -c "sleep 30 && /home/pi/Desktop/Visu" 3)Visu Datei erstellen sudo nano /home/pi/Desktop/Visu 4) Inhalt der Datei: #!/bin/sh xset -dpms xset s off xset s noblank matchbox-window-manager -use_titlebar no & unclutter & chromium-browser -display=:0 --kiosk --incognito --window-positon=0,0 5) Datei ausführbar machen sudo chmod+x /home/pi/Desktop/Visu ... nach Neustart Raspi startet die Codesys Webvisu automatisch im Kiosk Mode ===============================
Last updated: 2024-03-24

Post by wollvieh on Raspi Pi Bullseye Webvisu Autostart CODESYS Forge talk (Post)
Anbei meine Lösung zum Autostart der Webvisu, vllt. hilft es jemandem... =============================== Raspberry Pi Bullseye 11 Autostart Codesys Webvisu im Kiosk Mode 1)Datei erstellen: sudo nano/etc/xdg/autostart/Visustart.desktop 2)Inhalt der Datei: [Desktop Entry] Type=Application Name=Visustart Exec=bash -c "sleep 30 && /home/pi/Desktop/Visu" 3)Visu Datei erstellen sudo nano /home/pi/Desktop/Visu 4) Inhalt der Datei: #!/bin/sh xset -dpms xset s off xset s noblank matchbox-window-manager -use_titlebar no & unclutter & chromium-browser -display=:0 --kiosk --incognito --window-positon=0,0 5) Datei ausführbar machen sudo chmod+x /home/pi/Desktop/Visu ... nach Neustart Raspi startet die Codesys Webvisu automatisch im Kiosk Mode ===============================
Last updated: 2024-03-24

Post by esave on OPC UA Server with on Codesys + OPC UA Client on Labview CODESYS Forge talk (Post)
Hello everyone I want a communication between my PLC as an OPC UA Server and Labview on my PC as the OPC UA Client. I have an Festo CPX-E-CEC-C1-PN PLC and I have the OPC UA Toolkit from Labview. I created some Variables for testing (see picture 1) on Codesys. I tried to use this Labview block diagram (see picture 2) but I cant connect the PLC to it. What do I have to type in the Server Endpoint URL and what in the Node ID? Is this a good way for communication with a PLC to a PC? If not is there another way?
Last updated: 2024-04-12

Post by jbcregen on Accessing parameters from a structure or function block with the web interface CODESYS Forge talk (Post)
I have a project with hundreds of OPC-UA variables available on the network. A lot of these variables are used actively in various scripts that run in background in the OS (Linux). I'm experimenting with Automation Server and I have a hard time understanding how the web interface populates its parameters list for a given PLC (<plc details="" parameters="" for="" plc="" 'xyz'="">).</plc> In this page, it looks like the only variables available are the ones that are of a "base" type : bool, TIME, String, INT, etc. All the variables that are nested into function blocks or structures are not available in the web interface, even if they are available to any OPC-UA client. Is this a limitation of the Automation Server or is there something that can be done in Codesys?
Last updated: 2025-12-01

Post by jorenbeyl on library inside library CODESYS Forge talk (Post)
I am currently developing a library that contains real‑time data. To handle this real‑time data, I am using additional libraries called SysTime and SysTypes Interfaces. When I compile my library on its own, no errors occur. However, when I use this library in a project and compile the project, I get an error indicating that the SysTime data type is not recognized. This happens even though the SysTime library is visible as a dependency under my library. Does anyone know how to correctly include a library within another library so that the project recognizes the sub‑library without causing compilation errors?
Last updated: 2026-04-23

Post by timvh on library inside library CODESYS Forge talk (Post)
1) it should be possible to access the type SysTime in the project as A_Lib.SysTime. 2) you could add the SysTimeCore library to the library manager of your library (POU Pool). This might seem as a double library, but because of the placeholder resolution only one will be used. Then, in your library manager of your library, select the SysTimeCore library, right-click, select "Properties" and enable the option "Publish all IEC symbols ...." For more information about library development, you could follow our advanced training course in Ridderkerk. The next is scheduled for 24 and 25 June 2026 https://www.extendsmartcoding.nl/codesys-training/
Last updated: 2026-04-25

Post by baotthitawat on Cloud SCADA for Industrial Energy Monitoring CODESYS Forge talk (Post)
Recently I’ve been exploring ATSCADA iEnergy Tools for SCADA-based energy monitoring systems. One thing I find interesting is how modern SCADA platforms are evolving beyond traditional machine monitoring. Many industrial systems are now using Cloud SCADA architectures for centralized energy management, remote dashboards, and operational analytics. ATSCADA iEnergy Tools supports: Real-time energy monitoring Historical data logging MySQL integration Reporting and Excel export Remote SCADA dashboards Cloud-based monitoring systems I think this type of solution is practical for factories, power monitoring applications, building management systems, and other industrial automation projects where energy optimization is becoming increasingly important. Industrial automation is clearly moving toward web-based and cloud-connected SCADA platforms, especially as more facilities focus on digital transformation and smarter energy management
Last updated: 1 day ago

Post by baotthitawat on Cloud SCADA for Industrial Energy Monitoring CODESYS Forge talk (Post)
Recently I’ve been exploring ATSCADA iEnergy Tools for SCADA-based energy monitoring systems. One thing I find interesting is how modern SCADA platforms are evolving beyond traditional machine monitoring. Many industrial systems are now using Cloud SCADA architectures for centralized energy management, remote dashboards, and operational analytics. ATSCADA iEnergy Tools supports: Real-time energy monitoring Historical data logging MySQL integration Reporting and Excel export Remote SCADA dashboards Cloud-based monitoring systems I think this type of solution is practical for factories, power monitoring applications, building management systems, and other industrial automation projects where energy optimization is becoming increasingly important. Industrial automation is clearly moving toward web-based and cloud-connected SCADA platforms, especially as more facilities focus on digital transformation and smarter energy management
Last updated: 1 day ago

Post by otbeka on CAA File Handling: "Read only" error CODESYS Forge talk (Post)
Hi, On CODESYS V3.5.19.50 I am using the latest 3S File Access library (CAA File & CAA Types) to save and retrieve configuration data from the User Data section of an SD card, via file called config.txt. The application reads the file to memory once upon initialisation, and then the only other operation is overwriting the file with the updated configuration whenever the user changes the settings. An issue is ocurring, seemingly randomly, where the config.txt file, and all surrounding directories, cannot be written to by the unit, returning a READ_ONLY_CAA error upon file open. This sometimes does not clear even after power-cycling the PLC several times, yet checking the file permissions with ls -l shows normal read, write, and execute access. I am wondering if this is caused by the PLC itself or by an issue in my application. I have included my CAA File handler function block (SD_Card_Bin(FB).txt) and any associated types/calls below: TYPE ConfigData : STRUCT Config : ARRAY[0..256] OF STRING(64); NumberOfStrings : UDINT; END_STRUCT END_TYPE TYPE Buffer : STRUCT Data : ARRAY[0..SIZEOF(ConfigData)] OF BYTE; DataLength : UDINT; END_STRUCT END_TYPE A case within my MAIN PRG: mode.WriteConfigDataToFile: VisuElems.CURRENTVISU := 'Screen_Write'; IF xModeHasChanged THEN iErrorCount := 0; iRoute := 0; END_IF CASE iRoute OF 0: inBuffer := ConfigData_To_Buffer(GVL.UnitData); xConfigError := FALSE; xDataConfigured := FALSE; iRoute := 1; 1 : //Read Data from Card SD_Card_Bin.strFileName :=FileName; SD_Card_Bin.iFileOperation := 2; SD_Card_Bin(xExecute :=TRUE, WriteBuffer := inBuffer, xDone =>xDataConfigured, xError=>xConfigError, strErrorCodes=>strError); IF xDataConfigured THEN SD_Card_Bin(xExecute :=FALSE); IF xConfigError THEN iRoute := 32767; ELSE iRoute :=100; END_IF END_IF 100: // The end bCurMode := mode.DisplayProcessVariables; 32767: // Config error iErrorCount := iErrorCount + 1; IF iErrorCount > 2 THEN // Repeats 3 times, if no progress abandons and returns error bCurMode := mode.WriteError; ELSE iRoute := 0; // Try again END_IF END_CASE I'd like to rule out my application as the cause of this bug - help via comments or criticism would be greatly appreciated.
Last updated: 2025-03-19

Post by alexgooi on Codesys KNX implementation CODESYS Forge talk (Post)
Dear forum, We are currently doing some research on the Codesys KNX implementation (https://store.codesys.com/en/codesys-knx-sl.html). We almost have it working but we are missing the last part. The setup: We have a Codesys virtual control container running on docker (4.17.0.0), the I/O is running over an Ethernet IP coupler (Weidmüller), and this is running fine. As far as I’m concerned this tells me that the ethernet device is working properly (the container has access to the outside world, including multicast). Underneath this ethernet adapter the KNX module is added (see picture). In the KNX device (Codesys) 2 input variables are added (see picture), and these are exported to ETS (ETS 5). In ETS A Codesys KNX device has been imported and the Codesys export was imported, afterwards the group addresses are attached to the variables (see picture). Afterwards this configuration is downloaded to the Codesys controller (Container) via ETS. ETS asks for the pressing of the programming button, when the virtual programming button is pressed the download starts and finishes without any errors. This tells me that ETS is communicating with the Codesys controller, and that the download process is ok (so far so good). Now the part where we are struggling with, somehow we need to convert the KNX TP to KNX IP. For this we have the following interface: Zenio KIPI SC (https://www.zennio.com/product/kipi-sc/) this is a KNX TP to IP interface. We have the following setup for this device (see picture) (an IP in the same subnet is used). We tried multiple combinations of IP addresses but the TP devices are simply not communicating to the Codesys container. Does anyone has any advice on what to try next. To make the question more explicit how can we link the TP bus to the Codesys device? Kind Regards Alex
Last updated: 2026-01-05

Post by critcho on WebVisu Numpad dialog - Dialogtitle not accepting string variable CODESYS Forge talk (Post)
I have a WebVisu page which is re-used for multiple types of gas; it displays the alarm thresholds etc. for one gas at a time. I have an array of structures holding the set-points for each of the gasses. I'm trying to change the dialog title for the value input pop-up (VisuDialogs.Numpad). The Dialogtitle is set to Gas_Alarms.HighAlarmActivationLevelDialog, which is a string(50): When the gas type is changed (page first loaded, or prev/next buttons), METHOD Gas_Alarms.Update_Display_Variables is called, to update the strings used for the dialog titles so it shows GasName High Alarm Activation Level (EngineeringUnits), e.g. CO2 High Alarm Activation Level (PPM): HighAlarmActivationLevelDialog := Insert(' High Alarm Activation Level ()', EngineeringUnits, 30); HighAlarmActivationLevelDialog := Insert(HighAlarmActivationLevelDialog, GasName, 0); (That's not where the problem is, I'm just explaining why I'm using a variable dialogue title.) The variables used are definitely strings, but i'm always getting the error: "The type of the dialog title must be either STRING or WSTRING". I've tried moving HighAlarmActivationLevelDialog etc. to the GVL and also changing them to WSTRING, I even tried adding them to the structure array, but I always get the same error. Clearing the dialog title for that element removes the error - so I'm confident it's not a phantom error caused by something else. But I should be able to add these titles, can't just nuke them all to make it work. The MinVal and MaxVal for the Numpad are called from the array, e.g. GVL.Gas_Alarm_Configs[0].ScaledValueMIN, they are not getting an error. I am using array indexes 1 - 5 for the gasses, when I load the form or change gas, I copy the selected index to index 0 of the array, and values from Gas_Alarm_Configs[0].[ALL] are displayed on the page. When they hit save, I copy Gas_Alarm_Configs[0].[ALL] to Gas_Alarm_Configs[CurrentGasIndex].[ALL]. (ALL just means every element, I can't figure out how to display an asterix in this question... :) ) I've searched online for variable title dialog, but not found anything to help. Thanks for your help!
Last updated: 2025-05-29

Post by ara32 on CODESYS 4 Linux: CODESYS Forge talk (Post)
Hello! I managed to correctly launch CODESYS Developer Studio 3.5.17, almost all functionality works. The only issue remaining is that when connecting to a device and obtaining its public key, the NCryptEncrypt function is called, which is not fully implemented in the DLL source code, resulting in the connection not being established. Currently, the code of this function in the Wine repository looks like this: SECURITY_STATUS WINAPI NCryptEncrypt(NCRYPT_KEY_HANDLE key, BYTE *input, DWORD insize, void *padding, BYTE *output, DWORD outsize, DWORD *result, DWORD flags) { struct object *key_object = (struct object *)key; TRACE("(%#Ix, %p, %lu, %p, %p, %lu, %p, %#lx)\n", key, input, insize, padding, output, outsize, result, flags); if (flags & ~(NCRYPT_NO_PADDING_FLAG | NCRYPT_PAD_OAEP_FLAG | NCRYPT_PAD_PKCS1_FLAG | NCRYPT_SILENT_FLAG)) { FIXME("Flags %lx not supported\n", flags); return NTE_BAD_FLAGS; } if (flags & NCRYPT_NO_PADDING_FLAG || flags & NCRYPT_PAD_OAEP_FLAG) { FIXME("No padding and oaep padding not supported\n"); return NTE_NOT_SUPPORTED; } if (key_object->type != KEY) return NTE_INVALID_HANDLE; return map_ntstatus(BCryptEncrypt(key_object->key.bcrypt_key, input, insize, padding, NULL, 0, output, outsize, result, flags)); } The program crashes due to the NCRYPT_PAD_OAEP_FLAG flag. I'm not proficient in C++, but I attempted to add handling myself, and here's the result: SECURITY_STATUS WINAPI NCryptEncrypt(NCRYPT_KEY_HANDLE key, BYTE *input, DWORD insize, void *padding, BYTE *output, DWORD outsize, DWORD *result, DWORD flags) { struct object *key_object = (struct object *)key; TRACE("(%#Ix, %p, %lu, %p, %p, %lu, %p, %#lx)\n", key, input, insize, padding, output, outsize, result, flags); if (flags & ~(NCRYPT_NO_PADDING_FLAG | NCRYPT_PAD_OAEP_FLAG | NCRYPT_PAD_PKCS1_FLAG | NCRYPT_SILENT_FLAG)) { FIXME("Flags %lx not supported\n", flags); return NTE_BAD_FLAGS; } if (flags & NCRYPT_NO_PADDING_FLAG) { FIXME("No padding not supported\n"); return NTE_NOT_SUPPORTED; } BCRYPT_OAEP_PADDING_INFO oaepInfo = { 0 }; oaepInfo.pszAlgId = BCRYPT_SHA1_ALGORITHM; NTSTATUS status = BCryptEncrypt(key_object->key.bcrypt_key, input, insize, &oaepInfo, NULL, 0, output, outsize, result, flags); if (key_object->type != KEY) return NTE_INVALID_HANDLE; return map_ntstatus(BCryptEncrypt(key_object->key.bcrypt_key, input, insize, padding, NULL, 0, output, outsize, result, flags)); } Now, when calling the connection, it crashes with the error "bcrypt:BCryptEncrypt flags 0x4 not implemented." Can anyone help with enhancing this functionality or at least point me in the right direction?
Last updated: 2024-03-22

Post by mariusz997 on Visualisation - internal error CODESYS Forge talk (Post)
Hi everyone. I try to reach Codesys but I have problem on the beginning. I use Codesys 3.5.18.60 and 3.5.18.30 . On both version I have this same problem - when I create new standard project with controller Control Win v3 x64, empty PLC program - I compile it and everything is ok. But when I add visualisation without any elements and compile it - I get: ~~~ ------ Build started: Application: Device.Application ------- Typify code... Generate code... Generate global initializations... [WARNING] SortingStation: HMI Device: PLC Logic: Application: Missing element configuration. Element may not be usable. [WARNING] SortingStation: fbOutletConveyour Device: PLC Logic: Application: C0196: Implicit conversion from unsigned Type 'WORD' to signed Type 'INT' : Possible change of sign [ERROR] Internal error:System.NullReferenceException: Odwołanie do obiektu nie zostało ustawione na wystąpienie obiektu (in english: Object reference not set to an instance of an object.). w _3S.CoDeSys.Codex86_64.V351500.CPUx86_64.CodeStore(TypeClass tc, Register RegBase, Register RegIndex, Int32 nOffset, Register RegSrc, Int32 nScale) w _3S.CoDeSys.Codex86_64.V351500.Codex86_64_V351500.GenerateVarAbsolut(IVariableExpression varexp, Int32 iArea, Int32 nAddress, IIndexInfo indexinfo, ICompiledType ctype, Int32 nTypeSize, IAccessMode am) w ..(_IVariableExpression ) w ..(IExprement ) w ..(IExprement ) w ..(_ICompoAccessExpression ) w ..(IExprement ) w _3S.CoDeSys.Codex86_64.V351500.Codex86_64_V351500.Generate(IAssignmentExpression assign) w ..(_IAssignmentExpression ) w ..(IExprement ) w _3S.CoDeSys.Codex86_64.V351500.Codex86_64_V351500.Generate(IExpressionStatement expstat) w ..(IExprement ) w _3S.CoDeSys.Codex86_64.V351500.Codex86_64_V351500.Generate(ISequenceStatement seq) w ..(IExprement ) w _3S.CoDeSys.Codex86_64.V351500.Codex86_64_V351500.Generate(ISequenceStatement seq) w ..(IExprement ) w _3S.CoDeSys.Codex86_64.V351500.Codex86_64_V351500.Generate(ISequenceStatement seq) w ..(IExprement ) w _3S.CoDeSys.Codex86_64.V351500.Codex86_64_V351500.Generate(ISequenceStatement seq) w ..(IExprement ) w _3S.CoDeSys.Codex86_64.V351500.Codex86_64_V351500.Generate(ISequenceStatement seq) w ..(IExprement ) w _3S.CoDeSys.Codex86_64.V351500.Codex86_64_V351500.Generate(ICompiledPOU cpou, ISequenceStatement mainRoutine, Boolean bKeepCompileInformation, IEnumerable`1 subroutines) w _3S.CoDeSys.Codex86_64.V351500.Codex86_64_V351500.Generate(ICompiledPOU cpou, Boolean bKeepCompileInformation) w ..(_ICompiledPOU ) w _3S.CoDeSys.Compiler35180.Phase5_Codegeneration.Codegeneration.(_ICompiledPOU , _ISignature ) w ..(_ICompiledPOU , Boolean , Boolean , _ICompileContext , _ICompileContext , Boolean , Codegeneration , Boolean& , Boolean , Boolean ) w ..(Boolean , Boolean , _ICompileContext , _ICompileContext , InitExitSignatureInfo , Boolean , Codegeneration , _ISignature , Boolean& , Boolean , Boolean ) w _3S.CoDeSys.Compiler35180.CompilerPhases.CompilerPhase5_Codegenerator.(Codegeneration , _ISignature , InitExitSignatureInfo& , Boolean& ) w _3S.CoDeSys.Compiler35180.CompilerPhases.CompilerPhase5_Codegenerator.(Codegeneration , _ISignature ) w _3S.CoDeSys.Compiler35180.CompilerPhases.CompilerPhase5_Codegenerator.(ICodegenerator ) w ..() w ..() Build complete -- 1 errors, 2 warnings : No download possible ~~~ Could someone help me with this problem? Thank you in advance Mariusz
Last updated: 2025-11-11

Post by ryusoup on JSONByteArrayWriter problem? CODESYS Forge talk (Post)
Hello, I am trying to implement a FB to make JSON formatted WSTRING type message using JSON Utilities 1.9.0.0 included in the IIoT library. In my case, I want to set some objects or arrays and set values to them later. But when I wrote as the sample below, // init builder builder(pJsonData:=pJsonData, diRootObj=>diRootObj); // set the 1st key to root diKey1 := builder.SetKeyWithArray(wsKey:="key1", diParentIndex:=diRootObj, eError=>eError); // set a value to the 1st key wsValue:="value01"; builder.SetValue(Value:=wsValue, diParentIndex:=diKey1, eError=>eError); // set the 2nd key to root diKey2 := builder.SetKeyWithArray(wsKey:="key2", diParentIndex:=diRootObj, eError=>eError); // set a value to the 2nd key wsValue:="value02"; builder.SetValue(Value:=wsValue, diParentIndex:=diKey2, eError=>eError); // set a value to the 1st key again wsValue:="value03"; builder.SetValue(Value:=wsValue, diParentIndex:=diKey1, eError=>eError); // set a value to the 2nd key again wsValue:="value04"; builder.SetValue(Value:=wsValue, diParentIndex:=diKey2, eError=>eError); // write build result writer(xExecute:=TRUE, pwData:=ADR(wsResult), udiSize:=SIZEOF(wsResult), xAsyncMode:=FALSE, jsonData:=pJsonData^); the result was: { "key1": ["value01"], "key2": ["value02", "value03", "value04"] } while my expection was: { "key1": ["value01", "value03"], "key2": ["value02", "value04"] } Inspecting pJsonData^, JSONData itself seems to be ok, so I believe the issue is something caused by the writer FB. Does anyone know how to fix it? Thanks,
Last updated: 2023-10-04

Post by manuknecht on Persistence Manager does not save alphabetically first value CODESYS Forge talk (Post)
After some more digging I realized that I get an error on the PLC Logger saying PersistenceChannel: 150 (invalid type in data: SimpleLibrary). I suppose the issue could be found in the ConfigData, which is automatically generated and which looks like this: 1 9##83 SimpleLibrary#GVL.aMoreZeros.[1]#0#64512#15#0 <[2]#0#64520#15#0 <[3]#0#64528#15#0 <[4]#0#64536#15#0 <#0#64544#15#0 <[6]#0#64552#15#0 <<lrVar#0#64560#15#0 <strVar#0#64428#16#80 <uiDummy#0#64370#11#0 Perhaps the fact that the variable is stored within a library confused the compiler? I tried changing the PersistenceChannel parameters to xCompressTags := FALSE which changed the entry in the data file from _xCompressTags BOOL:TRUE _xCompressTags BOOL:FALSE but the actual content of the data file and also the config data did not change.
Last updated: 2023-10-17

Post by solve-it on SysFileOpenAsync CODESYS Forge talk (Post)
Just realized that it is the /dev/input/js0 file. Don't think this is a prob either. Found the ConfigFile. Where and how to add /dev/input/js0? raspberry [SysFile] FilePath.1=/etc/, 3S.dat PlcLogicPrefix=1 [SysTarget] TargetVersionMask=0 TargetVersionCompatibilityMask=0xFFFF0000 [CmpLog] Logger.0.Name=/tmp/codesyscontrol.log Logger.0.Filter=0x0000000F Logger.0.Enable=1 Logger.0.MaxEntries=1000 Logger.0.MaxFileSize=1000000 Logger.0.MaxFiles=1 Logger.0.Backend.0.ClassId=0x00000104 ;writes logger messages in a file Logger.0.Type=0x314 ;Set the timestamp to RTC [CmpSettings] FileReference.0=SysFileMap.cfg, SysFileMap FileReference.1=/etc/CODESYSControl_User.cfg [SysExcept] Linux.DisableFpuOverflowException=1 Linux.DisableFpuUnderflowException=1 Linux.DisableFpuInvalidOperationException=1 [CmpWebServer] ConnectionType=0 [CmpOpenSSL] WebServer.Cert=server.cer WebServer.PrivateKey=server.key WebServer.CipherList=HIGH [SysMem] Linux.Memlock=0 [CmpCodeMeter] InitLicenseFile.0=3SLicense.wbb [SysEthernet] Linux.ProtocolFilter=3 [CmpSchedule] ProcessorLoad.Enable=1 ProcessorLoad.Maximum=95 ProcessorLoad.Interval=5000 DisableOmittedCycleWatchdog=1 [CmpUserMgr] AsymmetricAuthKey=6873d655ac1f166f3743feea42d2f3dd1b39ae40 [CmpSecureChannel] CertificateHash=09fd8d52be4ddd45a709bc9c95e2aa093b3f5695 [SysSocket] Adapter.0.Name="eth0" Adapter.0.EnableSetIpMask=1 ;raspberry [ComponentManager] ;Component.1=CmpGateway ;Component.2=CmpGwCommDrvTcp ;Component.3=CmpGwCommDrvShm [SysCom] ;Linux.Devicefile=/dev/ttyS [CmpBlkDrvCom] ;Com.0.Name=MyCom ;Com.0.Baudrate=115200 ;Com.0.Port=3 ;Com.0.EnableAutoAddressing=1 [SysProcess] Command.0=shutdown [CmpApp] Bootproject.RetainMismatch.Init=1 ;Application.1=Application ;Application.1=Application ;Application.1=Application Application.1=Application [CmpRasPi] Architecture=armv6l [CmpRedundancyConnectionIP] [CmpRedundancy] [CmpSrv] [IoDrvEtherCAT]
Last updated: 2024-07-16

<< < 1 .. 12 13 14 15 16 > >> (Page 14 of 16)

Showing results of 392

Sort by relevance or date