Search talk: check object is null

 
<< < 1 .. 112 113 114 115 116 .. 129 > >> (Page 114 of 129)

Post by jonasz on Device diagnosis ( EtherCAT IO card ) CODESYS Forge talk (Post)
Hi, I'll link to the topic not wanting to start a new one. In the application I am building, I wanted to use the diagnostics described in the CAA Device Diagnosis library. In principle, everything is ok, except for the elements related to ModbusTCP. Despite the fact that ModbusTCP is taken into account in the documentation, it is not recognised via the interfaces. FUNCTION_BLOCK NET_HW_DIAG VAR_INPUT END_VAR VAR_OUTPUT END_VAR VAR (* Referencja do struktury z danymi dla HMI ASTRAADA.*) Visu: REFERENCE TO VISU; (* Wskaźnik na mastera EtherCAT.*) pEtherCATMaster : POINTER TO IoDrvEtherCAT; (* Wskaźnik na slave EtherCAT.*) pEtherCATSlave : POINTER TO EtcSlave; (* Interfejs dla węzła w drzewie urządzeń.*) _itfNode: DED.INode; (* Ogólny interfejs magistrali. Zapewnia podstawowe informacje o magistrali polowej.*) _itfBus: DED.IBus; (* Interfejs urządzenia. Zapewnia rozszerzone informacje o urządzeniu (magistralowym).*) _itfDevice2: DED.IDevice2; (* Ogólny interfejs magistrali. Zapewnia podstawowe informacje o magistrali polowej.*) _itfStack: DED.IStack; (* Numer węzła w drzewie urządzeń.*) uiNodes: UINT; (* Operator jest rozszerzeniem normy IEC 61131-3. W czasie wykonywania operator wykonuje konwersję typu odwołania do interfejsu na inny typ. Operator zwraca wynik BOOL. Wartość TRUE oznacza, że CODESYS pomyślnie wykonał konwersję. *) xQueryResultBus: BOOL; xQueryResultDevice2: BOOL; xQueryResultStack: BOOL; (* Struktura danych dotyczących węzłów w drzewie urządzeń.*) NetHwDiag: NW_HW_STAT; ModbusTcpClientDeviceInfo: IoDrvModbusTCP.DED.DEVICE_INFO; ModbusTcpClientDeviceState: IoDrvModbusTCP.DED.DEVICE_STATE; ModbusTcpDeviceInfo: IoDrvModbusTCP.DED.DEVICE_INFO; ModbusTcpDeviceState: IoDrvModbusTCP.DED.DEVICE_STATE; END_VAR (* Pobranie wskaźników dla pierwszego mastera i pierwszego slave w sieci EtherCAT.*) pEtherCATMaster := g_pFirstMaster; pEtherCATSlave := pEtherCATMaster^.FirstSlave; (* Diagnostyka sieci EtherCAT.*) pEtherCATMaster := g_pFirstMaster; pEtherCATSlave := pEtherCATMaster^.FirstSlave; NetHwDiag.xConfigFinished := pEtherCATMaster^.xConfigFinished; NetHwDiag.xDistributedClockInSync := pEtherCATMaster^.xDistributedClockInSync; NetHwDiag.xError := pEtherCATMaster^.xError; NetHwDiag.xSyncInWindow := pEtherCATMaster^.xSyncInWindow; NetHwDiag.sLastMessage := pEtherCATMaster^.LastMessage; NetHwDiag.LastError := pEtherCATMaster^.LastError; (* Diagnostyka drzewa urządzeń.*) uiNodes := 0; _itfNode := DED.GetRoot(); REPEAT NetHwDiag.asDeviceName[uiNodes] := DED.GetDeviceNameString(itfNode := _itfNode); xQueryResultBus := __QUERYINTERFACE(_itfNode,_itfBus); IF xQueryResultBus THEN _itfBus.GetBusInfo(buiInfo := NetHwDiag.aBusInfo[uiNodes]); NetHwDiag.aBusState[uiNodes] := _itfBus.GetBusState(); END_IF xQueryResultDevice2 := __QUERYINTERFACE(_itfNode,_itfDevice2); IF xQueryResultDevice2 THEN _itfDevice2.GetDeviceInfo(deiInfo := NetHwDiag.aDeviceInfo[uiNodes]); NetHwDiag.aDeviceState[uiNodes] := _itfDevice2.GetDeviceState(); IF pEtherCATSlave <>0 THEN pEtherCATSlave^(); IF pEtherCATSlave^.SlaveAddr = NetHwDiag.aDeviceInfo[uiNodes].idSystem THEN NetHwDiag.aAlStatus[uiNodes] := pEtherCATSlave^.ALStatus; pEtherCATSlave := pEtherCATSlave^.NextInstance; END_IF END_IF ELSE xQueryResultStack := __QUERYINTERFACE(_itfNode,_itfStack); IF xQueryResultStack THEN _itfStack.GetDeviceInfo(deiInfo := NetHwDiag.aDeviceInfo[uiNodes]); NetHwDiag.aDeviceState[uiNodes] := _itfStack.GetDeviceState(); END_IF END_IF uiNodes := uiNodes + 1; _itfNode := DED.GetNextNode(_itfNode); UNTIL _itfNode = 0 END_REPEAT (* Diagnostyka Modbus.*) Modbus_TCP_Client.GetDeviceInfo(deiInfo := ModbusTcpClientDeviceInfo); ModbusTcpClientDeviceState := Modbus_TCP_Client.GetDeviceState(); PAC_3200T.GetDeviceInfo(deiInfo := ModbusTcpDeviceInfo); ModbusTcpDeviceState := PAC_3200T.GetDeviceState(); Of course, you can take the easy way out and refer directly to the devices, but I wanted a reusable component. Any constructive help is very welcome Best regards Jonasz
Last updated: 2025-07-15

Post by jeroenaero on Autostart Targetvisualization 4.16.0.0 doesn't work on Linux device CODESYS Forge talk (Post)
Hi, How can we configure autostart of TargetVisualization on the remote device? The device is a Raspberry PI CM4 with PIXEL Desktop on display. I installed Targetvisu for Linux SL 4.16.0.0 on it. After each restart of the Raspberry PI CM4, we have to start Targetvisu fot Linux SL manually. i tried the step on this page: https://content.helpme-codesys.com/en/CODESYS%20Control/_rtsl_target_visu_for_linux.html but i don't get it working
Last updated: 2025-07-24

Post by clarenced on ERROR: Calling the program "AlarmStorage_Prg" is not allowed from multiple tasks CODESYS Forge talk (Post)
Using codesys v3.5 SP21 Patch 1. We are using Visualization to display alarms. Other then the automatically created AlarmManagerTask, there is no code written to call AlarmStorage_Prg. Any ideas why we would be seeing this error in the log? The runtime actually shutdown. Not sure if that was caused by this error or not. 2025-08-03T02:45:35.444Z, 0x00001012, 4, 0, 0, * ERROR: Calling the program "AlarmStorage_Prg" is not allowed from multiple tasks. 2025-08-03T03:48:15.294Z, 0x00001012, 4, 0, 0, * ERROR: Calling the program "AlarmStorage_Prg" is not allowed from multiple tasks. 2025-08-03T04:38:11.557Z, 0x00000103, 65544, 1, 0, runtime received SIGABRT - system may be in an inconsistent state * We recommend a reboot of the controller now! * 2025-08-03T04:38:11.576Z, 0x0000010f, 8, 1, 0, #### Exception: SysSemEnter - Semaphore deadlock detected - owner thread died [tid:726740] - system may be in an inconsistent state. 2025-08-03T04:38:11.576Z, 0x00000103, 65544, 1, 0, runtime received SIGABRT - system may be in an inconsistent state * We recommend a reboot of the controller now! 2025-08-03T04:38:11.576Z, 0x00000001, 8, 260, 3, #### Exception: HANDLED EXCPT* <excpt>NonContinuable</excpt> in CH_COMM_CYCLE 2025-08-03T04:40:12.308Z, 0x00000001, 1, 0, 35, CODESYS Control shutdown... 2025-08-03T04:40:13.436Z, 0x00000071, 1, 0, 13, Webserver stopped 2025-08-03T04:40:13.437Z, 0x00000114, 2, 1, 0, !!!! Warning: task_signalhandler_exit [MainTask] lost cycles: 14809 2025-08-03T04:40:13.497Z, 0x00000001, 1, 0, 10, [UNLOADED] IEC|Dynamic: <cmp>IecVarAccess</cmp>, <id>0x00001007</id> <ver>3.5.3.64</ver> 2025-08-03T04:40:13.506Z, 0x00000001, 1, 0, 10, [UNLOADED] IEC|Dynamic: <cmp>AlarmMgr</cmp>, <id>0x00001012</id> <ver>4.7.0.0</ver> 2025-08-03T04:40:13.513Z, 0x00000071, 2, 0, 14, !!!! Warning: Unbalanced calls to WebServerRequestRunning/WebServerReleaseRunning 2025-08-03T04:40:13.513Z, 0x00000001, 1, 0, 10, [UNLOADED] IEC|Dynamic: <cmp>IECVisualization</cmp>, <id>0x0000100c</id> <ver>4.7.0.0</ver> 2025-08-03T04:40:13.611Z, 0x00000124, 1, 0, 0, Provider 'AddressSpaceFragment Provider' (version 0x3051500) unregisterd at the OPC UA server. 2025-08-03T04:40:13.611Z, 0x00000124, 1, 0, 0, Provider 'OPC UA for IEC-61131-3' (version 0x3051500) unregisterd at the OPC UA server. 2025-08-03T04:50:17.708Z, 0x00000001, 1, 0, 36, CODESYS Control shutdown done
Last updated: 2025-08-04

Post by griinde on display values with frames CODESYS Forge talk (Post)
i want to make a frame for use multiple places for showing pressure and temperature. ive tried to decleare a variable in the frame config, if i put a fixed value in the value text field it show correct until i simulate. and if i point to a variable i gvl it show the name of the variable, and when i simulate it shows rValue. is there a way to do what i want?
Last updated: 2025-08-16

Post by camjam on BOOL variable in OPC UA and modbus simultaneously CODESYS Forge talk (Post)
I have come across this. The only way i could get it to work would be to define a word that is also the same address as the Bools. eg %MX600.0 through to %MX600.15 would be individually defined in the variables and them have another variable word defined at %MW300. You still need to break out the word in what ever program you are using to read/write the OPCUA tags.
Last updated: 2025-08-18

Post by pernockham on Persistence Manager: Config File not found? CODESYS Forge talk (Post)
I still cannot enable persistent manager for my project (and successfully login to a device). Project compiles with no errors but during download/login it fails with the fairly limited message "one or more errors occurred". The only clue I get from the system that this messages is displayed during "Generating code..: relocation pou". Any tips pointing me in a direction how to solve this very much appreciated!
Last updated: 2025-08-22

Post by yann2021 on Execute a .py file with Codesys CODESYS Forge talk (Post)
Hello, I have a Raspberry Pi 3 which has a printer connected to his USB port. I have a PiFace Board on the Raspberry. I have a python script file (.py) to print a logo + a text. The script is working because when I execute it from the Raspberry terminal it works. Now, when I push a button on the PiFace I would like to execute the python script file to print. How can I do that ? Many thanks for your help and advices!
Last updated: 2025-08-26

Post by sandro66 on Application-based license Modbus Channels CODESYS Forge talk (Post)
Hi Gatto, Using version 3.5.21.xx, it is no longer possible to use Modbus function blocks (I make extensive use of these FBs.)as shown in the example. https://content.helpme-codesys.com/en/CODESYS%20Examples/_ex_modbus_example.html The compiler detects one Modbus instance for each instance of the communication FB block. The example program above, although simple, reports 8 Modbus instances when compiled with the latest version. Codesys Support says that you must use fieldbus I/O mapping, but this will result in the loss of the ability to programmatically modify communication parameters. Sandro
Last updated: 2025-09-04

Post by sigurdrb on Network log messages CODESYS Forge talk (Post)
Hi, I'm having some trouble with an OPC client connecting to the PLC. It could be that the problem is on the client side of things. The PLC have UPS power, but the switch and OPC client does not. It could explain some of the log messages. Could any of you help debugging by the log messages in the attachment? And if possible point me to the right library that explains the different messages? Thanks for all the help.
Last updated: 2025-09-11

Post by monw on Unable to Re-Import Native XML Exported Using CODESYS Script API CODESYS Forge talk (Post)
When exporting a Logical Device or Logical Exchange GVL using the native XML export functionality of the CODESYS Script API, I encounter the following error upon re-import: "Error in IEnumeratorOfTWrapper. Current. Could not cast: System.String in System.Char" I am using CODESYS V3.5 SP21 Patch 2. Is there a known solution or workaround for this issue? Notably, importing the same XML file through the CODESYS Engineering IDE's menu import works without error.
Last updated: 2025-09-12

Post by nha451 on EIP Scanner not receiving data from adapter CODESYS Forge talk (Post)
Hello, I have an EtherNet IP adapter (GoPxL) running with a virtual PLC. I have successfully connected the adapter with green icons next to it. On WireShark I can see the data coming from GoPxL but on CODESYS it shows up as all 0. My firewall is turned off and I have enabled the device to always update variables. I tested my set up with Profinet and I can receive the data. Please let me know if you have any suggestions!
Last updated: 2025-09-12

Post by astutoski on MCP23017: inputs OK, but outputs won’t switch (CODESYS on Raspberry Pi) CODESYS Forge talk (Post)
Hi everyone, I’ve connected and configured an MCP23017 over I²C on a Raspberry Pi using the available CODESYS/RPi library. Input reading works fine (I can reliably read a digital input). However, I can’t get any output pin to change state. Example: when I try to drive PB0, the watch shows MCP23017.Out_B.0 = TRUE (1), but there is no actual output on the pin (no voltage change). Anyone solved this?
Last updated: 2025-09-17

Post by monteta on Automation without UI CODESYS Forge talk (Post)
Problem solved, Once the perform_network_scan() is done, y just had to recover the address and using set_gateway_and_address(). Now i'm looking how to deploy all my device's applications on the PLC, I guess it will looks like : for app in allapplication: with online.create_online_application(app) as onlineapp onlinedevice = onlineapp.get_online_device() online.set_default_credentials(x,y) try: onlineapp.login(OnlineChangeOption.Keep, False) except Exception as e: msg = str(e).lower() if "rescan" in msg : print("PLC service might be off") elif "targetdo" in msg: print("Bad credentials") else print(msg) else: onlineapp.create_boot_application()
Last updated: 2025-09-29

Post by alexgooi on Licensing info not available. CODESYS Forge talk (Post)
Dear Eschwellinger, Thank you for the response. Does that mean that the license-manager inside the Codesys-IDE does not work with this setup anymore? Because when I use this I get the notification that there is no dongle attached to the device (see picture). And If I insert the license by the deploy tool, can I then redeploy the Codesys virtual control container, or does this erase the license completely?
Last updated: 2025-09-30

Post by gseidel on MC_MoveAbsolute: C0138: No matching 'FB_Init' method found for instantiation of SMC_MoveAbsRelPerformerImpl [ERROR] CODESYS Forge talk (Post)
Hi imdatatas, sorry to hear this issue caused so much overhead for you. Frankly, I'd expect a project created with an older version to compile without errors after opening > it with the latest Codesys version and updating all libraries. Yes, that is a reasonable expectation. I tried a few times but could not reproduce the problem. In case you run into the problem again, we can investigate the issue if you send a project archive. Best regards, Georg
Last updated: 2025-10-02

Post by timvh on How to correctly create a device descriptor (.devdesc.xml) for a custom Linux ARM64 PLC in CODESYS 3.5.21.20? CODESYS Forge talk (Post)
If you are a vendor of controllers and want to have your own CODESYS Runtime on your device, then you need to contact the CODESYS Sales team and ask for the runtime Toolkit. For resellers of CODESYS devices, this can be interesting. If it is only for a few devices, then why not just take the standard runtime?
Last updated: 2025-10-07

Post by mdetrana on VPLC Section 'Gray-ed Out' CODESYS Forge talk (Post)
When evaluating Codesys functionality, I found that the VPLC tab under Deploy Control SL > Operation > VPLCs is 'gray-ed out', see attached image. I'm trying to evaluate how my infrastructure will interact with Codesys on a Raspberry Pi 4, so I'm trying to demo running it. I was going through the Codesys tutorial here, and it never shows the tab as grey, so I do not know how to proceed. Let me know if I can get any additional information that can help.
Last updated: 2025-10-09

Post by mg0815 on Codesys Control log "eventbuffer full" CODESYS Forge talk (Post)
Device: RPI 3b or 3B+ System: Wheezy Codesys: 3.5.16.2 I got the Log: 2023-12-13T00:38:43Z, 0x00000054, 2,6,11, !!!! Warning: Eventbuffer full for app=<app>Application</app>; an inputevent with the tag <tag>128</tag> has been dropped This log happens aroud 10 times a second. Sometimes the controller stopped working any more. What is the reason for this? I will update this controller soon (I hope so, but in the meantime I should at least know hoe to prevent this issue) Mario
Last updated: 2023-12-14

Post by arvindkumar on Wago plc not going back to RUN Mode after Power failure CODESYS Forge talk (Post)
Hi im using wago pfc750-8207 plc and my programming software was codesys v2.3, im facing some issue in my plc after power failure my plc not going back to run mode sometimes, i did sourecode download, boot application created and still facing this issue, out of 10 power failure 8 times its going to run mode some time its missing to go run mode and only sys indication is in on condition Kindly please help me.
Last updated: 2023-12-15

Post by nz-dave on Bool turning on in case stament in wrong state? CODESYS Forge talk (Post)
I have a case statement running a process. during one of the steps it has started calling a bool var that is 2 steps further on in the case? i have even tried //commenting it out but it still turns on at the same point in the case. i have also run a trace but cant see anything that would trigger it. Any Ideas? Cheers
Last updated: 2023-12-15

Post by wedahitha on Could not open library 'SysSocket23, CODESYS Forge talk (Post)
Hi there, I am trying to open a codesys project done by someone else and Once I install all the libraries I get this error [ERROR] : Library Manager [PROJECT 01: PLC Logic: Application]: Could not open library 'SysSocket23, * (System)'. (Reason: The library 'SysSocket23, * (System)' has not been installed to the system.) SysSocket23 is a standard library and I also tried using the same OSCAT library which was from the original computer that made this code. Using CODESYS V3.5 SP18 Patch 2 Please help me how to solve this problem.
Last updated: 2023-12-19

Post by andrax on Mux I2C CODESYS Forge talk (Post)
the TCA9548a does not work in Codesys. In Pyton this is only queried once and in Codesys cyclically. Of course you can also insert a terminating resistor in each port, then you should have no problems. I use this one: https://botland.de/8-bit-multiplexer/12723-qwiic-mux-breakout-8-kanal-modul-mit-i2c-multiplexer-tca9548a-sparkfun-bob-16784-5904422341428.html You can simply set the library to the latest version. You do not need Oscat. Do you need an example project for the BMP280?
Last updated: 2024-01-02

Post by andrax on Mux I2C CODESYS Forge talk (Post)
the TCA9548a does not work in Codesys. In Pyton this is only queried once and in Codesys cyclically. Of course you can also insert a terminating resistor in each port, then you should have no problems. I use this one: https://botland.de/8-bit-multiplexer/12723-qwiic-mux-breakout-8-kanal-modul-mit-i2c-multiplexer-tca9548a-sparkfun-bob-16784-5904422341428.html You can simply set the library to the latest version. You do not need Oscat. Do you need an example project for the BMP280?
Last updated: 2024-01-02

Post by tvm on SEND_RECV_MSG function block on Schneider Machine Expert CODESYS Forge talk (Post)
Anyone else using the SEND_RECV_MSG function block for RS-485 communication on Schneider Machine Expert? I have had ongoing issues with it for several years, which Schneider tech support is aware of, but hasn't been able to fix. The latest version of Machine Expert (v2.2) appears to have broken some of the functionality altogether. I'd be interested in hearing from anyone else using this platform for serial communication.
Last updated: 2024-01-03

Post by tvm on multiply gives negatives CODESYS Forge talk (Post)
It's probably because you have an INT in the input to the MUL function, which will then try to output an INT as well. INT variables can only handle values of -32768 to 32767. Your value of 523000 won't fit in an INT, so it turns into an invalid number. Use a DINT. This is usually better for working with time values anyway, because time values are all 32 bit. Or if you can't, use INT_TO_DINT(gvlp.detectie_nalooptijd_s) in the input to the MUL function.
Last updated: 2024-01-04

<< < 1 .. 112 113 114 115 116 .. 129 > >> (Page 114 of 129)

Showing results of 3221

Sort by relevance or date