Post by kewitsch on Compiling Errors with Ethernet/IP Scanner
CODESYS Forge
talk
(Post)
Hi, I'm trying to implement a Ethernet/IP-Scanner in a blank project using Codesys 3.5.20.30. While compiling I got the following error messages (see attached screenshot) Any ideas or tips to solve this?
Last updated: 2024-11-06
Post by sigurdrb on Codesys and error messages, warnings exceptions etc.
CODESYS Forge
talk
(Post)
I can add that the values I want to read are typical these values highlighted in red on the picture attached.
Last updated: 2024-11-06
Post by andrax on CodeSys Raspberry pi I2C driver not found
CODESYS Forge
talk
(Post)
Note: if you do not get any values. Check the correct wiring again. The board seems to be running and you have no error.
Last updated: 2024-11-07
Post by fefefede on Get the numer of day
CODESYS Forge
talk
(Post)
Hello i tro to create a program to turn on or off the air condition in relationship temperature and numer of day. I can't get the number of day. I try this after installing SysTime library but this not work and have this error on debug ------ Build started: Application: Device.Sim.Device.Application ------- Typify code... Generate code... [ERROR] giorno_accensione_aria: PLC_PRG Device: PLC Logic: Application: C0032: Cannot convert type 'Unknown type: 'SysTimeCore(TRUE)'' to type 'TIME' [ERROR] giorno_accensione_aria: PLC_PRG Device: PLC Logic: Application: C0035: Program name, function or function block instance expected instead of 'SysTimeCore' [ERROR] giorno_accensione_aria: PLC_PRG Device: PLC Logic: Application: C0032: Cannot convert type 'Unknown type: 'DayOfWeek(CurrentTime)'' to type 'INT' [ERROR] giorno_accensione_aria: PLC_PRG Device: PLC Logic: Application: C0035: Program name, function or function block instance expected instead of 'DayOfWeek' [INFORMATION] giorno_accensione_aria: PLC_PRG Device: PLC Logic: Application: C0181: Related position Build complete -- 4 errors, 0 warnings : No download possible PROGRAM PLC_PRG VAR Temperatura: UDINT; AriaCondizionata: BOOL := FALSE; CurrentDayOfWeek: INT; //Variabile Giorno CurrentTime: TIME; GiornoDellaSettimana: INT; DayOfWeek: INT; END_VAR CurrentTime := SysTimeCore(TRUE); // Ottieni l'ora corrente CurrentDayOfWeek := DayOfWeek(CurrentTime); CASE GiornoDellaSettimana OF 1: // Azioni per Lunedì 2: // Martedì se più 10° accend altrimenti spegni IF Temperatura >= 10 THEN AriaCondizionata := TRUE; ELSE AriaCondizionata := FALSE; END_IF 3: // Mercoledì se più di 50° accendi altrimenti spegni IF Temperatura >=50 THEN AriaCondizionata := TRUE; ELSE AriaCondizionata := FALSE; END_IF 4: // Giovedì se più di 40° accendi altrimenti spegni IF Temperatura >=40 THEN AriaCondizionata := TRUE; ELSE AriaCondizionata := FALSE; END_IF 5: // Venerdì se più di 50° accendi altrimenti spegni IF Temperatura >=50 THEN AriaCondizionata := TRUE; ELSE AriaCondizionata := FALSE; END_IF 6: // Sabato se più di 25° accendi altrimenti spegni IF Temperatura >=25 THEN AriaCondizionata := TRUE; ELSE AriaCondizionata := FALSE; END_IF 7: // Domenica sempre spenta AriaCondizionata := FALSE; END_CASE
Last updated: 2023-09-14
Post by jari-koivuluoma on Problem trying Net Base Services 3.5.15.0 TCP connection
CODESYS Forge
talk
(Post)
I have a need to send messages between 2 PLCs and I cant use network variables (because of size limit) so I tried writing this simple test program. This seems to work fine. I can send messages back and forth when a first "Start server" and then "Connect client". See the attached image. However, if I disconnect the client by setting ClientConnect to false and try to re-connect then the TCP_Client just gives me TIMEOUT error. When I stop and start the server again, then Im able to reconnect. How is this supposed to work? Why reconnecting wont work. There is not other way of disconnecting the client than setting xEnable of the TCP_Client to false. This is just a testing program and I will try it on 2 seperate devices once this works. PROGRAM PLC_PRG VAR CONSTANT mySize : UDINT := 255; END_VAR VAR Server: NBS.TCP_Server; ServerIpStr: STRING := '127.0.0.1'; ServerIP: NBS.IP_ADDR; ServerPort: UINT := 50000; ServerConnection: NBS.TCP_Connection; Client: NBS.TCP_Client; ServerRead: NBS.TCP_Read; ServerWrite: NBS.TCP_Write; ServerSend: STRING(mySize); ServerReceive: STRING(mySize); ServerConnect: BOOL; bServerSend: BOOL; IP: NBS.INADDR; ConnectedClientIP: STRING; ClientPort: UINT := 50000; ClientIpStr: STRING := '192.168.1.49'; ClientIP: NBS.IP_ADDR; ClientRead: NBS.TCP_Read; ClientWrite: NBS.TCP_Write; ClientSend: STRING(mySize); ClientReceive: STRING(mySize); ClientConnect: BOOL; bClientSend: BOOL; Error: BOOL; Message: BOOL; END_VAR // Server ServerIP.sAddr := ServerIpStr; Server( ipAddr := ServerIP, uiPort := ServerPort ); ServerConnection( xEnable := Server.xEnable, hServer := Server.hServer, ); IP := ServerConnection.IPAddress; ConnectedClientIP := F_Concat7( BYTE_TO_STRING(IP.S_un_b.s_b1),'.', BYTE_TO_STRING(IP.S_un_b.s_b2),'.', BYTE_TO_STRING(IP.S_un_b.s_b3),'.', BYTE_TO_STRING(IP.S_un_b.s_b4)); ServerRead( xEnable := ServerConnection.xActive, hConnection := ServerConnection.hConnection, szSize := SIZEOF(ServerReceive), pData := ADR(ServerReceive) ); IF ServerRead.xReady AND ServerRead.szCount > 0 THEN Message := TRUE; END_IF IF ServerRead.eError > 0 THEN Error := TRUE; END_IF ServerWrite( xExecute := ServerConnection.xActive AND bServerSend, hConnection := ServerConnection.hConnection, szSize := LEN(ServerSend)+1, pData := ADR(ServerSend) ); IF ServerWrite.xDone THEN bServerSend := FALSE; END_IF IF ServerWrite.eError > 0 THEN Error := TRUE; END_IF // Client ClientIP.sAddr := ClientIpStr; Client( xEnable := ClientConnect, ipAddr := ClientIP, uiPort := ServerPort, udiTimeOut := 10000000 ); ClientRead( xEnable := Client.xActive, hConnection := Client.hConnection, szSize := SIZEOF(ClientReceive), pData := ADR(ClientReceive) ); IF ClientRead.xReady AND ClientRead.szCount > 0 THEN Message := TRUE; END_IF IF ClientRead.eError > 0 THEN Error := TRUE; END_IF ClientWrite( xExecute := Client.xActive AND bClientSend, hConnection := Client.hConnection, szSize := LEN(ClientSend)+1, pData := ADR(ClientSend) ); IF ClientWrite.xDone THEN bClientSend := FALSE; END_IF IF ClientWrite.eError > 0 THEN Error := TRUE; END_IF
Last updated: 2024-10-03
Post by fefefede on Error C0521 - unknow compiler
CODESYS Forge
talk
(Post)
Hello and thanks for reply. I not have "Libray Manager" on "Update Device". I not try to open project but i open Codesys and then create a new project and when try to generate code i have the error :/ I notiche a strnge situation. I have two different software on my pc: CODESYS V3.5 SP15 Patch 4 (with this my new program not work but can open and work with some course example); CODESYS V3.5 SP19 Patch 2 (with this my custom program work) Wich version i must be choose? Why i have two different version? Thanks
Last updated: 2023-09-02
Post by jari-koivuluoma on JSON_Utilities_SL JSONFileWriter error NULL_POINTER
CODESYS Forge
talk
(Post)
FB jsonFileWriter gives a NULL_POINTER error, why? JSONByteArrayWriter works fine so the JSONData FB should be fine. The device is CODESYS Control Win V3 x64 in simulation mode. Codesys version is V3.5 SP16 Patch 5 JSON_Utilities_SL version is 1.3.0.0 Src: ST_TestStruct1a; TXT: WSTRING(10000); MakeJSON : BOOL := TRUE; SrcJSONData: JSON.JSONData; jsonFileWriter : JSON.JSONFileWriter; IF MakeJSON THEN MakeJSON := FALSE; // Struct data to JSONData FB F_TestStructToJSON(ADR(Src),ADR(SrcJSONData)); // Writing to file jsonFileWriter( xExecute := TRUE, sFileName := 'c:\JSONTEST\JSON.txt', eEncoding := JSON.Encoding.UTF_16, xAsyncMode := TRUE, jsonData := SrcJSONData ); // Waiting to finish WHILE jsonFileWriter.xBusy DO ; END_WHILE // To text jsonArrayWriter( xExecute := TRUE, pwData := ADR(TXT), udiSize := SIZEOF(TXT), jsonData := SrcJSONData, xAsyncMode := FALSE, ); END_IF
Last updated: 2023-09-08
Post by lraja on Codesys Programming with phyBOARD®-Pollux i.MX8M Plus
CODESYS Forge
talk
(Post)
Dear All, I am trying to Developing a PLC using phyBOARD®-Pollux i.MX 8M Plus. It is very difficult to find the suitable Codesys control for i.MX8M. I have tried to install CODESYS Control for Linux ARM SL , but unable install it and I am getting the following error, [INFORMATION] Executing SSH command on root@192.168.0.10: Retrieving architecture from package management [ERROR] Expected exit value of command failed: expected 0, received 127 [INFORMATION] Standard output: sh: line 1: dpkg: command not found Kindly check and help phyBOARD®-Pollux i.MX 8M Plus Link : https://www.phytec.eu/en/produkte/single-board-computer/phyboard-pollux/
Last updated: 2023-09-23
Post by damian177 on Codesys V3.5 + Pixtend v1.3 + RaspberryPi
CODESYS Forge
talk
(Post)
Hi, I use Pixtend v1.3 with my RaspberryPi with Codesys V3.5 SP15 Patch1. Actually in my project I used two packages: - CODESYS Contro for Raspberry PI 3.5.15.10 - PiXtend for CODESYS 1.3.8.0 Now I would like to extend my project about the IIot Libraries SL package, I installed them. Next I added SMS_Service_SL 1.0.0.8 version library and I have problem with compile my project because I get error: [ERROR] PiXtend_DemoProject_q: Library Manager [Device: PLC Logic: Application]: Could not open library '#CAADTUtil'. (Reason: The placeholder library 'CAADTUtil' could not be resolved.) Any have idea what can I do to properly add SMS library to my project?
Last updated: 2023-09-26
Post by ewi04 on Recipe Manager - RecipeManCommands, load & write wrong values, Bug?
CODESYS Forge
talk
(Post)
I'm getting closer to the error. The combination of STRUCT and ARRAY probably causes the strange behavior. As soon as the ARRAY is followed by a variable, the problem arises. Examples: X: ARRAY[1..2] OF INT; // okay Y: ARRAY[1..2] OF STRUCT; // problem Z: STRUCT; Z.ArrayOfInt[1]; // okay Z.ArrayOfStruct[1].Variable // problem // *update - array of array also causes the error A: ARRAY[1..2] OF ARRAY[1..4] OF BOOL; // problem I can't be the only one who has this problem. Or? Maybe there is a solution. Anyone? Or is it a bug after all?
Last updated: 2023-11-17
Post by tomgr on Codesys 3.5.19 Control Win x64 - network adapter for EtherCAT master not working
CODESYS Forge
talk
(Post)
Hi guys I am trying to run on my laptop Codesys 3.5.19 Control Win x64 where I created a EtherCAT master. I have defined the controler, specified network adapter (my docking station) and everything worked as expected. Later I needed to test it on site (without docking station) so I changed the network adapter by EC master to my laptop network card. After that it shows "Network adapter opened" but no device can be found by scanning and in LOG is saying "SysEthernet: packet could not be sent, error code: -1". Same error with USB network card, but if I switch back to docking station, all is working again... Any idea what I'm doing wrong?
Last updated: 2023-11-22
Post by drno on Konfigurierte Compilerversion in Installation nicht verfügbar
CODESYS Forge
talk
(Post)
Hallo, bedingt durch einen Rechnerwechsel musste ich verschiedene Codesys-Versionen wieder neu installieren, bzw. habe mit dem Codesys-Installer beim Setup einer neuen Version Add-ons einer bestehenden Installation importiert. Nun möchte ich ein bestehendes Projekt, welches auf einem Zielgerät mit recht alter Runtime läuft öffnen, dabei kommt der error "C0510: The configured compilerversion '3.5.8.0' is not available in your installation". Auf dem alten Rechner wurde mit CODESYS V3.5 SP18 Patch 4 eben mit der Compilerversion 3.5.8.0 übersetzt, beim Erstellen des Projektarchives geht jedoch der Compiler nicht mit und so kommt es auf dem neuen Rechner mit der Installation V3.5 SP18 Patch 4 zu diesem error. Übersetze ich das Projekt mit dem aktuellen Compiler, kommt eine ganze Latte an Fehlermeldungen. Gibt es eine Möglichkeit die Compilerversion 3.5.8.0 in die Installation 3.5.18.4 zu bekommen? Danke, schöne Grüße
Last updated: 2023-12-01
Post by fajean on Issues with "Add all instance path"
CODESYS Forge
talk
(Post)
In the past, we have routinely used the "add all instance paths" function to automatically add variables to VAR_CONFIG lists. My recollection is that compiling a project did not require VAR_CONFIG to be fully populated, and, once successfully compiled, instance paths could be added. Errors related to missing declarations, if I recall correctly, were thrown when downloading to the PLC, they did not prevent a successful compile. At some point, it stopped working. Missing declarations in a VAR_CONFIG now cause a compile error, so the application is never "current", the only reason I can see being the missing VAR_CONFIG declarations themselves (no other error). We observe the same behavior across all our projects. This is really aggravating, and I must be missing something simple. We use 3.5 SP17p3, 64 bits. Can anyone help?
Last updated: 2023-12-29
Post by andrax on Save Recipe on Paspberry
CODESYS Forge
talk
(Post)
Unfortunately not. The folder does not work. There are neither error messages nor any other indication that this may be due to missing rights. I have searched the entire forum and also tested the Codesys example. The simple recipe management generally does not work! The Raspi crashes with the extended recipe management from the example. I have now found another sample that works. https://forge.codesys.com/forge/talk/Engineering/thread/61c6a04b79/ Many thanks to mcodem. After some trial and error I have found out: xcreate must be called at least once at runtime. After that xload_write and xread_save work All other functions do not work. It is also possible to save to the /home/Documents folder. So it is not due to the rights. It would be nice if Codesys would check where the problem really lies.
Last updated: 2023-12-30
Post by i-campbell on What does CODESYS expect to do when I get such an error message
CODESYS Forge
talk
(Post)
you need to get the addons that the person that programmed it used. I always store an .installation-config file alongside the project. If you have lost that, then it gets a bit of a headache: I think even with SP18 you can hit yes to open it anyway, and it will suggest which addons it thinks are missing, if you double click the yellow "missing-addons" in the status bar. If you know you have the right addons, you can do a "Save As.." and it will write your current addon list to the file, and you wont get the error next time.
Last updated: 2024-01-08
Post by cedriclee on RaspberryPI reconnection error
CODESYS Forge
talk
(Post)
"Hello, I'm Cedric Lee, a PLC engineer based in Korea. I'm reaching out about an ongoing issue with the connection when attempting to control Beckhoff modules using Raspberry Pi with CODESYS for the first time. I use CODESYS to target the Raspberry Pi's IP, install version 4.10.0.0 of the CODESYS Runtime Package, and upon pressing Start in the Runtime, the target connects to the Raspberry Pi. However, within about a minute, an error window appears, stating 'no connection to the device. please rescan your network,' leading to the disconnection of the target. This cycle repeats. I've attached some pictures for your reference. I'm using CODESYS Development System V3, Raspberry Pi 4 Model B (installed as 64-bit), and Beckhoff EK1100 modules. If anyone has a solution to this issue, please help. Your assistance is greatly appreciated."
Last updated: 2024-01-11
Post by yang123 on EtherCAT Can't reconnect to servo drive
CODESYS Forge
talk
(Post)
I am using Ethercat Master 4.6.0.0 and have use the automatic restart slaves feature. But we found of after the Ethercat communication normal and slave drive power-off and power-on the slave can't reconnect sucess. The PLC Log show the drive was al status "6#34 : Invalid DC Timeout Error" and its was reconnection sucess first but seconced later the drive will show the "16#2C : Fatal Sync error" and then drive will can't reconnection. Other slave are reconnect sucess which was link after the can't reconnect's drive the drive was OMRON R88D-1SN
Last updated: 2024-01-23
Post by jtebokkel on Access to the path *** is denied
CODESYS Forge
talk
(Post)
I am also having this issue. It was working fine for the first 2ish months and is now throwing this error. I can just try and go online again a second time and it works. I'm wondering if there is an environmental variable or something that isn't set that is causing it to use an empty path as a temp directory. The empty path will be the location the app is running from which is that path C:\Program Files\CODESYS 3.5.19.50\CODESYS\Common. The permissions don't allow a normal user to write to that directory which causes the error. It also only seems to happen when there are changes or the build has been cleaned.
Last updated: 2024-02-14
Post by valenting on Can't use new licensing with Raspberry Pi
CODESYS Forge
talk
(Post)
Hi, I'm using Codesys control for Raspberry Pi in the latest version (4.11.0.0) When I try to install a license with the new application-based licensing, I have an error "returncode 403046401" (using codesys SP18) I updated to codesys SP20, and now I get the following error: "The selected conainer [0]: SN=..., Version=1.18, Chip=0, Rev=0 does not fit to your ticket. Please select a suitable one." The license I'm trying to install is a Codesys Control Basic L license, with a Codesys Visualization L option, according to the needs of my application. What can I do to activate my license ?
Last updated: 2024-04-22
Post by stewnguth on New License not working.
CODESYS Forge
talk
(Post)
Hey there, I am pretty new to the codesys space, but I got a codesys control basic M license for my raspberry pi that isntalled with no problem yesterday. Today, I went to install the visualization M locense as well because I went over the variable limit and am getting a "servernotfound" error in codesys when attempting to activate. I also tried to follow the advice in some other threads and install using a license request file on the web interface but am getting a message saying "An internal error occured" when attempting to install the license. Can anyone help me get this up and running? Thanks for your time.
Last updated: 2024-05-23
Post by dhumphries on Rounding error in simple addition
CODESYS Forge
talk
(Post)
Thanks for the response, as I've thought about this problem over the last month I began to suspect this was a problem with not being able to exactly represent .1 as a 32 bit binary number. I think I've found a work around by making the number an integer, then dividing it by 10 and storing that value as a floating point number. There is still an issue with the value not being exact somewhere in the 8th or 9th decimal place, but because I'm incrementing an integer value then dividing it, the error doesn't compound.
Last updated: 2024-05-25
Post by installwhat on C0077 on one machine but not another
CODESYS Forge
talk
(Post)
I have a version of codesys 3.5.16 on my local machine and a vm. The local machine has loads of codesys versions and libraries installed etc. I can open the FPosCR_Example_Project_SP16_patch1 project on my vm without any errors. On the local machine I get the error C0077: unknown type IoDrvEthercatLib.ETC_CO_SdoWrite. I can, on the local machine, declare a var of type IoDrvEthercatLib.ETC_CO_SdoWrite and include it in the code without adding an extra error. The problem only seems to affect the library. This is seems more an issue with my codesys set up rather than something with festo. I would like to know the possible causes. I understand most of the library manager features but it's not clear how to find the cause. Thanks
Last updated: 2024-06-11
Post by mikek10 on HTTP Client TCP Init Error
CODESYS Forge
talk
(Post)
Hi, I tried posting in the discussion for the HTTP Client example but perhaps that is not monitored? I have been using http client successfully for approximately 12 months, however in recent weeks I have begun to get TCP_INIT_ERROR when attempting to communicate. The only resolution seems to be power cycling and then the connection begins to work again for a time. I am not aware of any changes to code or libraries between working ok and now. Cold reset does not resolve, only power cycle. It seems the error from NBS.TCP_Client is 6002 which I think is invalid_addr However the address is the same when working and not working?
Last updated: 2024-07-04
Post by alez on CANopen safety , SRDO error behavior
CODESYS Forge
talk
(Post)
I have a project in which there is a Safety device in CANopen, and the PLC interfaces with it as Master. I would like to understand if it is possible to set the behavior in case one of the SRDOs that I receive from the slave is no longer received. From what I have seen, if the SRDOs are not received, the CANopen safety status becomes "Not in progress" and the mapped variables freeze at the last value detected. I want to understand if it was possible to set the variables connected to the SRDOs to take a default value (e.g. zero) in the event of a CANOpen error during reception.
Last updated: 2024-07-15
Post by shrikantp007 on new to codesys help on modbus with ardunio modbus rtu
CODESYS Forge
talk
(Post)
Hello , I am new to codesys ,working with it for just 15-17 days so ,i think i am able to installed it and configure it ,not i want to use ardunio program (smart dustbin ,college project using motor and Ultrasonic Module HC-SR04 and servo motor). i use ardunio program to write code with chatgpt to work ardunio as a modbus rtu as i dont have ethernet or wifi shild ,i wrote program in ariduno but now don have idea what change i have to make in codesys to comunicate as modbus slave it give error with bus error ,where i can get all errors ? Thanks in advance :)
Last updated: 2024-07-21
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
.