Post by wollvieh on Display minutes as hours & minutes
CODESYS Forge
talk
(Post)
Here a code for an Operation Counter with : days,hours,minutes,seconds as an example, maybe it points you the right direction ? FUNCTION_BLOCK OperationDayHour VAR_INPUT IN : BOOL; // Betrieb Takt : BOOL; // 1Hz Systemtakt END_VAR VAR_OUTPUT BetrTag : UDINT; // Ausgabe Betriebstage Betrstd : UDINT; // Ausgabe Betriebsstunden Betrmin : UDINT; // Ausgabe Betriebsminuten Betrsec : UDINT; // Ausgabe Betriebsekunden BetrString : STRING; // Ausgabe als String END_VAR VAR ///Erkennung Taktflanke Flanke: R_TRIG; END_VAR VAR_IN_OUT BetrsecAbsolut: UDINT; //Ein/Ausgangsvariable Betriebssekunden RETAIN !!! END_VAR Flanke(CLK:= Takt, Q=> ); (*Erkennung Taktflanke*) IF (IN AND Flanke.Q) THEN (*Sekunden hochzählen*) BetrsecAbsolut := BetrsecAbsolut + 1; END_IF Betrsec := BetrsecAbsolut MOD 60; Betrmin := ( BetrsecAbsolut / 60) MOD 60; Betrstd := ( BetrsecAbsolut / 60 / 60 ) MOD 24; BetrTag := ( BetrsecAbsolut / 60 / 60 /24 ); BetrString := RIGHT ( UDINT_TO_STRING( BetrTag + 100000),5); BetrString := CONCAT (BetrString, 'd_'); BetrString := CONCAT (BetrString,RIGHT ( UDINT_TO_STRING( Betrstd + 100000),5)); BetrString := CONCAT (BetrString, 'h_'); BetrString := CONCAT (BetrString, RIGHT ( UDINT_TO_STRING( Betrmin + 100),2)); BetrString := CONCAT (BetrString, 'm_'); BetrString := CONCAT (BetrString, RIGHT ( UDINT_TO_STRING( Betrsec + 100),2)); BetrString := CONCAT (BetrString, 's');
Last updated: 2024-05-27
Post by vtec35 on search runtime 4.9.0.0 for pi 3
CODESYS Forge
talk
(Post)
yes but impossible to upload runtime 4.9.0.0 now we have put an image on the sd card with 4.13.0.0, i have 27 error message to this type, and if i test some output not work, et some work ------ Processus de compilation entamé : application : Device.HiddenOnlineConfigModeApp ------- Affecter un type à un code... [ERREUR] conditionneuse_camphre-ssa-05-02-24-V3 maj 241025: C0032: Le type 'Type inconnu : 'ADR(GVL_Io_73f6cbf3_7be8_4500_8421_47e565d899a0_HPS_1.Io_73f6cbf3_7be8_4500_8421_47e565d899a0_HPS_1)'' ne peut pas être converti en type 'POINTER TO IoConfigParameter' [ERREUR] conditionneuse_camphre-ssa-05-02-24-V3 maj 241025: C0077: Type inconnu : 'GVL_Io_73f6cbf3_7be8_4500_8421_47e565d899a0_HPS_1.Io_73f6cbf3_7be8_4500_8421_47e565d899a0_HPS_1' [ERREUR] conditionneuse_camphre-ssa-05-02-24-V3 maj 241025: C0046: Identificateur 'GVL_Io_73f6cbf3_7be8_4500_8421_47e565d899a0_HPS_1' non défini [ERREUR] conditionneuse_camphre-ssa-05-02-24-V3 maj 241025: C0032: Le type 'Type inconnu : 'ADR(GVL_Io_1b6dcc3b_ae11_4288_b9a9_86f9323448d1_HPS_1.Io_1b6dcc3b_ae11_4288_b9a9_86f9323448d1_HPS_1)'' ne peut pas être converti en type 'POINTER TO IoConfigParameter' [ERREUR] conditionneuse_camphre-ssa-05-02-24-V3 maj 241025: C0077: Type inconnu : 'GVL_Io_1b6dcc3b_ae11_4288_b9a9_86f9323448d1_HPS_1.Io_1b6dcc3b_ae11_4288_b9a9_86f9323448d1_HPS_1' [ERREUR] conditionneuse_camphre-ssa-05-02-24-V3 maj 241025: C0046: Identificateur 'GVL_Io_1b6dcc3b_ae11_4288_b9a9_86f9323448d1_HPS_1' non défini [ERREUR] conditionneuse_camphre-ssa-05-02-24-V3 maj 241025: C0032: Le type 'Type inconnu : 'ADR(GVL_Io_5ae6fa5a_c197_4038_9581_03e1650806a0_HPS_4.Io_5ae6fa5a_c197_4038_9581_03e1650806a0_HPS_4)'' ne peut pas être converti en type 'POINTER TO IoConfigParameter' [ERREUR] conditionneuse_camphre-ssa-05-02-24-V3 maj 241025: C0077: Type inconnu : 'GVL_Io_5ae6fa5a_c197_4038_9581_03e1650806a0_HPS_4.Io_5ae6fa5a_c197_4038_9581_03e1650806a0_HPS_4' [ERREUR] conditionneuse_camphre-ssa-05-02-24-V3 maj 241025: C0046: Identificateur 'GVL_Io_5ae6fa5a_c197_4038_9581_03e1650806a0_HPS_4' non défini [ERREUR] conditionneuse_camphre-ssa-05-02-24-V3 maj
Last updated: 2025-10-26
Post by fpawlak on How to register own component - CMAddComponent() or CMAddComponent2()
CODESYS Forge
talk
(Post)
Hi All, I wonder which way is correct or better? I would like to register my own component in order to use it in CMPLog. I can use CMAddComponent() or CMAddComponent2() to do it. The main difference is whether I provide udiCmpId myself or it will be generated by runtime. But I don't know which way is correct. Please look at those two examples below. I don't know if CMAddComponent2() is newer and then should be used? CMAddComponent() + providing my own udiCmpId //16#FFFF0000 for unknown myVendorId := 16#FFFF0000; myLibId := 1; myComponentId := myVendorId OR CMPID_IecCode OR myLibId; componentHandle := CMAddComponent(pszComponent:= 'myComponent', udiCmpId:= myComponentId, udiVersion:= 1, pResult:= ADR(result)); IF componentHandle <> RTS_INVALID_HANDLE AND result = CmpErrors.Errors.ERR_OK THEN LogAdd2( hLogger:= STD_LOGGER, udiCmpID:= myComponentId, udiClassID:= CmpLog.LogClass.LOG_ERROR, udiErrorID:= 0, udiInfoID:= 0, pszInfo:= 'myComponent regidtered succsefull.' ); ELSE LogAdd2( hLogger:= STD_LOGGER, udiCmpID:= CMPID_CmpMgr, udiClassID:= CmpLog.LogClass.LOG_ERROR, udiErrorID:= 0, udiInfoID:= 0, pszInfo:= 'Error while regidtering myComponent.'); END_IF CMAddComponent2() + udiCmpId generated by runtime componentHandle := CMAddComponent2(pszComponent:= 'myComponent2', udiVersion:= 1, udiCmpId:= ADR(myComponentId), pResult:= ADR(result)); IF componentHandle <> RTS_INVALID_HANDLE AND result = CmpErrors.Errors.ERR_OK THEN LogAdd2( hLogger:= STD_LOGGER, udiCmpID:= myComponentId, udiClassID:= CmpLog.LogClass.LOG_ERROR, udiErrorID:= 0, udiInfoID:= 0, pszInfo:= 'myComponent2 regidtered succsefull.' ); ELSE LogAdd2( hLogger:= STD_LOGGER, udiCmpID:= CMPID_CmpMgr, udiClassID:= CmpLog.LogClass.LOG_ERROR, udiErrorID:= 0, udiInfoID:= 0, pszInfo:= 'Error while regidtering myComponent2.'); END_IF
Last updated: 2026-02-27
Post by mattplc on OPC UA Codesys 3.5 Symbolkonfiguration VS Kommunikationsverwalter und Python/UA-Expert
CODESYS Forge
talk
(Post)
Hallo, bisher war die Benutzung der Symbolkonfiguration für die OPC-UA Variablen recht easy einsetzbar. Im UAExpert Tool konnte man im Klarnamen den String sehen. var1 = client.get_node("ns=4;s=|var|WAGO 750-8212 PFC200 G2 2ETH RS.Application.PLC_PRG.fbTest.StateActual") Die Anbindung an die Python opcua Library hat so eigentlich gut funktioniert. Auch zum debuggen im UAExptert, konnte man den Value so sehen wie die Varibale heißt. In meinem Fall ein Enum. Was seit längerer Zeit nicht mehr funktionier ist das eingeben von Enums. Im UAExpert kommt die Fehlermeldung "BadTypeMismatch" früher war das nicht der Fall. Da die Symbolkonfiguration demnächst bei Codesys 3.5 rausfällt, wollte ich den Kommunikationsverwalter nutzen. Jetzt schaut der String mit der Node ID komplett anders aus. Bsp.: NS5|Opaque|0x01000000A6E12A718AF7333ABAFA2D7686EF27669CF33071C7D034759DE601779DF62178E9 Hier sieht man den Value gar nicht mehr im UA Expert. In Python finde ich auch keine Möglichkeit die OPC UA Variable einzulesen. Python: var1 = client.get_node("ns=5;s=|var|0x01000000A6E12A718AF7333ABAFA2D7686EF27669CF33071C7F016759BDC7114.PLC_PRG.fbTest.sVar_1") Weiß jemand wir das in Zukunft läuft? ich hab etwas das Gefühl, das die Übergeordneten Systeme die OPC UA Variablen nicht mehr so einfach einlesen können oder mache ich etwas falsch? Danke
Last updated: 2025-01-14
Post by janderson on OPC UA Server limitations, large array crashes runtime
CODESYS Forge
talk
(Post)
when using an array of structs, the runtime crashes. but when using an array of LREALS, it'll do 100k at least
Last updated: 2023-08-23
Post by eschwellinger on Same program to more than one PLC
CODESYS Forge
talk
(Post)
just open http://localhost:8080 in Chromium then it will show the webvisu ( sure you need to this in your CODESYS Application)
Last updated: 2023-08-24
Post by roundex on CSVReaderInit returns error : INVALID_HANDLE
CODESYS Forge
talk
(Post)
I got same issue but managed to get it to work again by downgrading the Runtime. Here's my specs: CODESYS V3.5.19.0 Runtime Linux SL 4.7.0.0. CSV Utility SL 1.1.0.0 (Licensed IIoT libraries SL) I tried Runtime 4.8.0.0. and 4.9.0.0 but both result in INVALID_HANDLE error.
Last updated: 2023-08-30
Post by richard-wang on When Keyboard Key is in Hold, then Webvisu is extreme slow and latent
CODESYS Forge
talk
(Post)
Hi Tyro Did you resove your problem? I have the same issue. BR Richard
Last updated: 2023-09-05
Post by jinil on Import RsLogix 5000 project to Codesys
CODESYS Forge
talk
(Post)
Hello, I am trying to do the same thing. I want my Rslogix 5000 project into Codesys. Was wondering if you have found a way to do it. Thank you.
Last updated: 2023-09-07
Post by jinil on Import RsLogix 5000 project to Codesys
CODESYS Forge
talk
(Post)
Hello, I am trying to do the same thing. I want my Rslogix 5000 project into Codesys. Was wondering if you have found a way to do it. Thank you.
Last updated: 2023-09-07
Post by dexterdva on Creating a custom kinematics starting from Scara2 model.
CODESYS Forge
talk
(Post)
Hello, I'm trying to develop a custom kinematics derived to Kin_Scara2_Z. there is someone that have the source code of this library? Thanks Dexter
Last updated: 2023-09-11
Post by chris12345 on OPC UA datasource low read frequency
CODESYS Forge
talk
(Post)
Hi yr00, the default sampling interval is set to 1s. you can generate your own client settings, this link should help you:- https://content.helpme-codesys.com/en/CODESYS%20Communication/_comm_use_dynamic_opc_ua_server_comm_settings.html
Last updated: 2023-09-13
Post by chris12345 on OPC UA datasource low read frequency
CODESYS Forge
talk
(Post)
Hi yr00, the default sampling interval is set to 1s. you can generate your own client settings, this link should help you:- https://content.helpme-codesys.com/en/CODESYS%20Communication/_comm_use_dynamic_opc_ua_server_comm_settings.html
Last updated: 2023-09-13
Post by eschwellinger on Codesys läuft nicht hoch
CODESYS Forge
talk
(Post)
du startest so nur die SPS selber nicht die CODESYS Entwicklungsumgebung. Die kannst du entweder über den CODESYS Installer oder aber ueber das Startmenu starten. By the way, die SPS: Control Win 64 kannst du auch ueber den Tasktray unten starten ihne dieses Fenster.
Last updated: 2023-09-19
Post by eschwellinger on PCAN serial "No CAN driver found"
CODESYS Forge
talk
(Post)
which system are you using on the target system? If this is Linux this is different - in compare to use it on Control Win
Last updated: 2023-09-20
Post by derpaul on PFC200 Update to 4.9.0.0 - No Connection
CODESYS Forge
talk
(Post)
This is: 02.04.22(06) As I do see now, minimal Version is 17, but why did my Controller work with Runtime 4.8.0.0 (Which was the last installed When I remember correctly)
Last updated: 2023-09-28
Post by tomas111 on Help with error C0142
CODESYS Forge
talk
(Post)
There was an exact mistake. I did as they wrote. I created a visualization and transferred it from the old one and everything works. CS 3.5 SP 19. Thank you.
Last updated: 2023-10-04
Post by damian177 on Delete PLC Log
CODESYS Forge
talk
(Post)
You already know how clear log ? In codesys I am reading twenty Modbus TCP Devices. When several of those doesn't response , the logs is grovs very fast and my PLC hangs.
Last updated: 2023-10-16
Post by necatibilgin on Communication betwee 2 codesys devices with PROFINET
CODESYS Forge
talk
(Post)
Hi everybody, Is there any sample project that communicates 2 devices with profinet using Codesys platform on the devices? BR, Necati.
Last updated: 2023-11-03
Post by snhatton on How to switch between dynamic IP address and dynamic?
CODESYS Forge
talk
(Post)
Does this help: https://pimylifeup.com/raspberry-pi-static-ip-address/#:~:text=1%20To%20begin%20setting%20up%20a%20static%20IP,go%20ahead%20and%20restart%20the%20Raspberry%20Pi.%20. Following those instructions, it is possible to configure the ip address as static.
Last updated: 2023-11-08
Post by davidbo on How to switch between dynamic IP address and dynamic?
CODESYS Forge
talk
(Post)
Well. One can do that, I have found a python script which can modify /etc/dhcpcd.conf and I suppose there is a way I can execute it from CODESYS and it seems to be the only way
Last updated: 2023-11-08
Post by bossjosh21 on Codesys Modbus RTU (Modbus_Slave_Com_Port Not Running)
CODESYS Forge
talk
(Post)
Can someone help me about my problem of my Modbus_Slave_Com_Port Not Running. I am using RevPiConnect 4 and I connected my actuator to the RS485 of my RevPI.
Last updated: 2023-12-05
Post by mybackingtracks on Codesys Control Raspberry PI 4.10.0 - missing 'Update Raspberry PI' option
CODESYS Forge
talk
(Post)
I have updated Codesys Control Raspberry PI form 4.8.0 to 4.10.0. After I did it, 'Update Raspberry PI' disappeared from the 'Tools' menu How to solve it?
Last updated: 2023-12-06
Post by e71828 on how to calculate the D-term in PID?
CODESYS Forge
talk
(Post)
D.OUT: 5000 -> 2214 ->662 -> -888; X = ACTUAL= -100; SET_POINT = 0; Error = 100; D.OUT = 5000 = 100 / 0.02; Y = 0.1*(100 + 0.04 * 5000) = 30; X = ACTUAL= -70; Error = 70; D.OUT = (30-70)/0.02 <=> -1500;???? How to explain this?
Last updated: 2024-06-27
Post by lhohmann on EtherNet_IP_Scanner - No driver found
CODESYS Forge
talk
(Post)
I've managed to run Ladder logic code on a virtual PLC running on my laptop. Now, I want to connect to a device over EthernetIP, but I always get the "No driver found" message. Can anyone shed me some light?
Last updated: 2024-07-02
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.