Hello, by searching the forum, I have found an example of batch script that can be used to start codesys projct by temporarily setting env variables. However, I'm not sure how to modify this to start Codesys 3.5.20 and whether or not I need to specify "profile" with Codesys version at all. @echo off SET PROJECT=D:\TestScripts\Data\OnlineTest.project SET VARIABLES=POU.testint,POU.testoutput start /wait CoDeSys.exe --profile="CoDeSys V3.4 SP3" --noUI --runscript="D:\TestScripts\Forum_Environment.py"...
Hello, by searching the forum, I have found an example of batch script that can be used to start codesys projct by temporarily setting env variables. However, I'm not sure how to modify this to start Codesys 3.5.20 and whether or not I need to specify "profile" with Codesys version at all. @echo off SET PROJECT=D:\TestScripts\Data\OnlineTest.project SET VARIABLES=POU.testint,POU.testoutput start /wait CoDeSys.exe --profile="CoDeSys V3.4 SP3" --noUI --runscript="D:\TestScripts\Forum_Environment.py"...
Hello, by searching the forum, I have found an example of batch script that can be used to start codesys projct by temporarily setting env variables. However, I'm not sure how to modify this to start Codesys 3.5.20 and whether or not I need to specify "profile" with Codesys version at all. @echo off SET PROJECT=D:\TestScripts\Data\OnlineTest.project SET VARIABLES=POU.testint,POU.testoutput start /wait CoDeSys.exe --profile="CoDeSys V3.4 SP3" --noUI --runscript="D:\TestScripts\Forum_Environment.py"...
Hello, I have just went through all steps shown on Codesys YT channel https://www.youtube.com/watch?v=RPoPscbo3Kc And it works, I have installed PI OS 32 bit and choose Single Core. However, immediattely when I create standard project with Raspberrz pi device, "Application" is underlined, like there is an error, but in reality there are no errors, and I cannot see what are these 3 messages like shown in attachment. Aside for this red underline, everything seems to work fine. How to correct this?...
Hello, I have just went through all steps shown on Codesys YT channel https://www.youtube.com/watch?v=RPoPscbo3Kc And it works, I have installed PI OS 32 bit and choose Single Core. However, immediattely when I create standard project with Raspberrz pi device, "Application" is underlined, like there is an error, but in reality there are no errors, and I cannot see what are these 3 messages like shown in attachment. Aside for this red underline, everything seems to work fine. How to correct this?...
Hello, I'm getting the data in Codesys that is an array of 8 bytes. From this array, I need to foram LREAL number, however, because of different endiannes I need to reverse bytes in this array and then copy to a LREAL variable. For this I'm using a loop and it works OK. I wonder if there is a built in function to do this. I have found CAA Memory library but it has functions like reverse bytes in DWORD. But it seems it doesn't have what I need. https://content.helpme-codesys.com/en/libs/CAA%20Memory/Current/CAA_Memory/Reverse-Bit-Swap-ByteWord-order/ReverseBYTEsInDWORD.html...
Hello, I'm getting the data in Codesys that is an array of 8 bytes. From this array, I need to foram LREAL number, however, because of different endiannes I need to reverse bytes in this array and then copy to a LREAL variable. For this I'm using a loop and it works OK. I wonder if there is a built in function to do this. I have found CAA Memory library but it has functions like reverse bytes in DWORD. But it seems it doesn't have what I need. https://content.helpme-codesys.com/en/libs/CAA%20Memory/Current/CAA_Memory/Reverse-Bit-Swap-ByteWord-order/ReverseBYTEsInDWORD.html...
Hello, I have almost exactly problem already discussed here in this old thread: https://forge.codesys.com/forge/talk/Engineering/thread/03af9426eb/ However, this is quite old and I assume not completely relevant. In my case, I use v3.5.20 on windows 11, so Winpcap is no longer supported on newer OS. Also, this hint about adding entry to the .cfg file under ProgramFiles(x86) is also not relevant anymore. I guess, I need to add entry SysEthernet to this .cfg file: C:\ProgramData\CODESYS\CODESYSControlWinV3x64...\CODESYSControl.cfg...
Hello pietrobalint, could you please how exactly you call this program? if not in the main task? Caould you please share a screenshot of how exactly you made it work? Thank you!
Hi, I have the same problem. Some of the libraries I created over time depend on writing files to a folders like c:\Temp. I can confirm that proposed solution is not working with 3.5.20 Patch 2. Can you please specify wich exactly .cfg file needs to be modified and in what way, in order to include c:\Temp in the SysFile path? Thank you!
Hi, I have the same problem. Some of the libraries I created over time depend on writing fikes to a folders like c:\Temp. I can confirm that proposed solution is not working with 3.5.20 Patch 2. Can you please specify wich exactly .cfg file needs to be modified and in what way, in order to include c:\Temp in the SysFile path? Thank you!
Hello, if I try to use ERR_Ok in my code to check whether the file is open correctly or not, I get an error "Identifier ERR_OK not recognized", I can use plain 0 (zero) instead. But in general, is this a proper way to check for success of file operation since the 4th parameter is a poinmter to RTS_IEC_RESULT, and normally I would expect this to be used somehow. _hFile := SysFileOpen(_sFileName, am:=SysFile.ACCESS_MODE.AM_WRITE, ADR(_result)); IF _result <> 0 THEN udDiag := 100; RETURN;
Hello, I''m trying to properly check whether SysFileOpen is executed without errors. If I try to use global constant ERR_OK (as defined here: https://content.helpme-codesys.com/en/libs/Standard%20Monitoring%20Data%20Server%20Driver/Current/ReturnValues.html) I end up with compile errors, and messgaes such as: Identifier ERR_OK not defined. This is how I try to check for successfull operation: _hFile := SysFileOpen(_sFileName, am:=SysFile.ACCESS_MODE.AM_WRITE, ADR(_result)); IF _result <> ERR_OK THEN...
Hello, I''m trying to properly check whether SysFileOpen is executed without errors. If I try to use global constant ERR_OK (as defined here: https://content.helpme-codesys.com/en/libs/Standard%20Monitoring%20Data%20Server%20Driver/Current/ReturnValues.html) I end up with compile errors, and messgaes such as: Identifier ERR_OK not defined. This is how I try to check for successfull operation: _hFile := SysFileOpen(_sFileName, am:=SysFile.ACCESS_MODE.AM_WRITE, ADR(_result)); IF _result <> ERR_OK THEN...
Hello, I have found a script for printing device tree in Codesys project. This script is available as code snippet as an exmaple for using Python in Codesys. However I feel main documentation is lacking. For example, where can I find that object has "is_device" attribute? Code examples are given here: https://content.helpme-codesys.com/en/CODESYS%20Scripting/_cds_access_cds_func_in_python_scripts.html However, I have a question how to print the whole Project tree and not just devices? Of course I...
That really depends on this third party software you want to use. It is possible that .xml file generated with "Generate EtherCAT XML" will not be recognized as valid ENI file. Anyway, "Generate EtherCAT XML" command is not available through standard menus and needs to be added via Tools->Customize and then Add Command. You'll find it under "Devices" section. If you provide more info, we might be able to help you further.
Hello, I have almost exactly problem already discussed here in this old thread: https://forge.codesys.com/forge/talk/Engineering/thread/03af9426eb/ However, this is quite old and I assume not completely relevant. In my case, I use v3.5.20 on windows 11, so Winpcap is no longer supported on newer OS. Also, this hint about adding entry to the .cfg file under ProgramFiles(x86) is also not relevant anymore. I guess, I need to add entry SysEthernet to this .cfg file: C:\ProgramData\CODESYS\CODESYSControlWinV3x64...\CODESYSControl.cfg...
Thank you very much for answering my question.
Hello, what CAA stands for? Since it is a collection of different libraries, does it mean it is created by some specific organization? Thanks!
Thank you wollview, it is clear now, it is due to security reasons that access to the file system is restricted.
double post - created by mistake
Hello, I'm trying to use FILE.Open to open file that exists in the given location. sFileName is formed from "Copy as path" in Windows. So I'm sure file exists and it is in the given location. And still, I get thiss denied error. What could be the problem here? Attached is a screenshot with current implementation.
Hello, I'm trying to use FILE.Open to open file that exists in the given location. sFileName is formed from "Copy as path" in Windows. So I'm sure file exists and it is in the given location. And still, I get thiss denied error. What could be the problem here? Attached is a screenshot with current implementation.
Hello, what would be the most efficient way to check whether the file exists or not. I don't want to use file.Open function, it seems like rather inefficiet operaton. I considered GetAttribute function, but this function doesn't accept filename (with path) as an input. Basically I need to check first time when program is loaded to the runtime i.e. when application is started for the first time, whether a file exists on the specific location or not.
Hello to all, I'm totally new to Codesys, but I do have some PLC programming experience, mosty with Siemens TIA and STEP7. I have just installed Codesys 3.5. sp19 and I have downloaded example with Ethernet Rockwell 1734AENT. The example can be found here: https://forge.codesys.com/prj/codesys-example/rockwell-1734-c/home/Home/ After opening, I had to manually update devices (Device, Ethernet, IP Scanner, EthernetIP adapter). However, when trying to build the project, I get the following errors:...