Post by rabaggett on Reading Named Pipes in Linux Is there a better way?
CODESYS Forge
talk
(Post)
I have a Python program that will handle things in my application such as VISA over IP and Telnet control of instruments. I want the main control and HMI in Codesys. My problem is communication between the two. I have looked at several ways to accomplish this, and settled on having the Python program create two named pipes, one to send information to Codesys, and one for Codesys to send information to Python. The information would be packetized with \n for end of packet.. Seems simple. I think the named pipes method should work, but file reading in Codesys using the CAA file library starts to get difficult when the file is never ending, as in this case. Before I spend too much time making something that may be fundamentally flawed I want to ask. Is there a better way? Is there a way to read the file 'one line at a time' which might solve my never ending file problem? Thanks!
Last updated: 2024-05-09
Post by smartcoco on The text list provided outside the library is not available for visualization controls within the library.
CODESYS Forge
talk
(Post)
I have a project called 'DemoProject' and a library called 'DemoLib'. Create a visual control named "DemoVisu" in the library, with a selection box of type "ComboBoxInteger" in the space. Now 'ComboBoxInteger' requires a 'Text list'. This "Text list" is provided when I call the "DemoVisu" control of the "DemoLib" library in "DemoProject". And this text list is in 'DemoProject'. I found that 'ComboBoxInteger' no longer works at this time. Other visual controls that use text lists also have this issue. I hope there is a good solution to this problem.
Last updated: 2023-10-16
Post by elsmart on Sequential read and triggering of Modbs RTU channels in application
CODESYS Forge
talk
(Post)
Hello I need some help understanding how to use Modbus RTU (COM port) in Codesys enviroment. I defined a Modbus Server device (slave) in device tree and added some channels to read from (function 3). Also I set trigering mode to Application. I have a POU in which I want to trigger each channel one after the other something like this (C code for better visualisation): for (int i = 0; i < channelsCount; i++) { triggerChannel(channelsArray[i]); // Start transmission while(channel.xBusy); // Wait for transmission to complete } I have found ModbusChannel function block documentation but examples are scarce. I don't understand how rising edge triggering works. What would be the best solution for achieving sequntial channel triggering? What is the common way to read multiple Modbus channels once every time a specified POU is executed?
Last updated: 2025-05-16
Post by vernon-laurence on EtherCAT fieldbus
CODESYS Forge
talk
(Post)
The simplest way to do this would be to add a bus coupler dedicated to the expansion IO. The EtherCAT network does not fault when modules connected to the expander are not present. In the image below, nothing below the red line is present in the network - with the network working correctly. In your "base" project, simply include all of the possible modules, and then plug them in as you add pumps to the system. I would also highly recommend against the use of direct addressing. There are other methods to accomplish this, including using the "Optional" checkbox for modules and explicitly addressing them. Although, this would require more upfront work to design the network, and some additional work each time modules were added. https://content.helpme-codesys.com/en/CODESYS%20EtherCAT/_ecat_edt_slave_slave.html
Last updated: 2024-04-09
Post by sturmghost on Find visualization elements that require a lot of computing time
CODESYS Forge
talk
(Post)
I found out that the Codesys simulation mode is not good to measure performance. As soon as I upload the code onto the hardware PLC I can see that my visu-task needs around 60 ms to complete. I'm wondering if there is a possibility to find out which visualization/visualization element takes a lot of computing time? Then I would look for ways to decrease the long computing time.
Last updated: 2024-01-22
Post by dandyk on Dynamic Images
CODESYS Forge
talk
(Post)
Hello, I have very similar problem, but it seems that your solution does not work for me. I am using TwinCAT XAE Shell v3.1.4024.55 and TwinCAT Runtime. Sorry for writing here on codesys forge, but since I found the only relevant topic here and since TwinCAT is almost the same with CODESYS in many applications, I chose to write here. I simply need to dynamically update image in visualization based on camera trigger (I am doing a machine vision application). Camera triggers an image, my program processes it (applies thresholding, draws contours etc...) and saves the processed image in the runtime location (the same one you were mentioning). This was done successfully. I need to make it work at runtime, while the program is executing and I need to refresh the image in the visualization each time camera triggers a new image and program processes it. When I create image element in the visualization and define the bitmap ID variable as STRING which contains the image ID defined in the image pool, then it displays the image in the image pool, but does not work at runtime, while the program is executing. I also used the Bitmap Version. I declared it in Global variable list as integer with initial value of 0 and wrote the variable in the bitmap version in the image element in visualization. Each time new image is saved to the runtime location, I wrote a program to increment Bitmap Version by 1. It increments and the image does not update in the visualization, unfortunately. I think that bitmap version is working correctly and deletes the cached image as it is supposed to, but the Image Pool does not update the image ID with the new image... the path to the image is always the same... only the actual image changes with the same file name. Image Pool is not dynamic and cannot refresh the image in the path to the actual one at runtime. How can I refresh the image ID in the image pool at runtime? Bitmap version only deletes cached image and reloads the image from the image ID, but the image ID has the same image, because image pool won't update at runtime. Do you know any solution to this problem?
Last updated: 2024-04-06
Post by wbj0t on Raspberry Pi CM4. CoDeSyS files corrupted after hard reset.
CODESYS Forge
talk
(Post)
Hello everyone. Raspberry Pi CM4 after some 1 week of work was hard reset mannualy several times and after these hard resets User Management file was missed (when click login button, enter login/password, error: User Management File missed). Also programm can not open file via SysFile library, but this file exists and size of him is 0 bytes, but must be more any way (I keep some kind of archive via this lib). What happens, how files corrupted? Where do I need try to find this error of the codesys or system whole? In the log files of codesys nothing interesting about this happens. Thanks for reading Is this enough hold PlcLogic and SysFileMap.cfg as reserve copy in another place for restoring the programm? And how automate restoring actions if programm files corrupted?
Last updated: 2024-09-16
Post by gseidel on Can't get SMC_SmoothPath to work
CODESYS Forge
talk
(Post)
Hi bertus, I cannot see any problem in the code you posted. Just some ideas: What is the value of D_ANGLE_TOL? - Do you need the assignment bAbort := NOT bDecoder? Does it help to leave it out? Any errors (e.g. SMC_SmoothPath.Error/ErrorID) or PLC log messages? What if you comment out SMC_SmoothMerge and SMC_LimtiDynamics, is corner smoothing still not working? Is bDecode written from a different task (e.g. visu)? Then I would recommend to assign to a local variable (bDecodeLocal := bDecode) and use that for all FBs. Otherwise, FBs might see different values of bDecode in a single cycle, which will cause problems. Regards, Georg
Last updated: 2025-12-17
Post by eschwellinger on Connection to device closed
CODESYS Forge
talk
(Post)
is there a way to check the plclog on Opus A3 by using cmd line under Linux? This log is what you need to check for the disconnection problem
Last updated: 2023-08-24
Post by karel-bas on Loosing connection to emulation running on Linux
CODESYS Forge
talk
(Post)
Ok. I ran the vm twice until it failed and from log it seems like my OPC UA fails becouse I am not able to get HTTPs certificate ? I dont really see any other reason.
Last updated: 2024-09-20
Post by eschwellinger on Codesys Control Win 64 3.5.21.0 KNX unaufgelöste Referenzen
CODESYS Forge
talk
(Post)
Welche version genau verwendest du? Das Verzeichnis des Configfiles hat sich ja zu 3.5.20.10 verschoben..durch nen Security Bugfix. Schau dir das Log beim starten an, da müsstest du sehen ob die KNX Komponente geladen wird.
Last updated: 2025-07-07
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 aott33 on Webvisu NO load
CODESYS Forge
talk
(Post)
After loading, it seems to be quite responsive. It's just the initial loading that is taking a long time.
Last updated: 2023-09-21
Post by bamir on Calculate Time Between Two Events Using RTC
CODESYS Forge
talk
(Post)
Hi Just wanted to know which library is used to get sys_time
Last updated: 2024-08-14
Post by fleaplc on File access operation denied
CODESYS Forge
talk
(Post)
file to access has to be into the path /var/opt/codesys/PlcLogic I has same issue time ago...
Last updated: 2024-11-17
Post by ton on Project loses 'Download time' information
CODESYS Forge
talk
(Post)
Hi, This is with Combivis Studio. I thought you need a license from KEB to create a boot project.
Last updated: 2024-12-20
Post by nz-dave on Ethernet/IP Scanner Exception
CODESYS Forge
talk
(Post)
3.5,18,30 The Weintek HMI Runs a dual core CPU.. one for the HMI and one "real time OS" for Running Codesys.
Last updated: 2024-12-28
Post by tonyadrem on update data/tim
CODESYS Forge
talk
(Post)
Hello How to update the dates from timestamp to the actual time? THX!
Last updated: 2025-08-25
Post by tonyadrem on update data/tim
CODESYS Forge
talk
(Post)
Hello How to update the dates from timestamp to the actual time? THX!
Last updated: 2025-08-25
Post by hteich on Date and time to String variable
CODESYS Forge
talk
(Post)
Did you find out how to do it? The link posted by lukas didn't help me much further
Last updated: 2025-10-07
Post by ton on How to create a stopwatch?
CODESYS Forge
talk
(Post)
If you use LTIME() you will be very accurate and be able to have a normal task cycle time.
Last updated: 2023-12-16
Post by naccio on very long time building the relationship table
CODESYS Forge
talk
(Post)
I have the same problem withv codesys 3.5 sp 16 patch 6. Any idea ? Thank you Marco
Last updated: 2024-01-22
Post by aniket-b on "Distributed clocks are not synchronized, Rea time problem on hardware" ?
CODESYS Forge
talk
(Post)
I am getting the same error. does anyone know how to troubleshoot this?
Last updated: 2024-03-04
Post by nano on Display minutes as hours & minutes
CODESYS Forge
talk
(Post)
hey time := INT_TO_TIME(minutes * 1000 * 60); update: forum show the math wrong
Last updated: 2024-05-26
Post by davidbo on How to stop dhcpcd and use SysSockSetIpAddressAndNetMask to set address?
CODESYS Forge
talk
(Post)
The reason for why CODESYS halts was a CODESYS watchdog exception. 'sudo ip' takes a long time.
Last updated: 2025-11-04
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.