Search talk: notes on task

 
<< < 1 .. 219 220 221 222 223 .. 236 > >> (Page 221 of 236)

Post by itsthefabs on (no subject) CODESYS Forge talk (Post)
Hallo zusammen, ich nutze eine Wago 8212 als Modbus Client (in früheren Codesys Versionen hieß der Modbus Master) und habe einen weitere Wago 8212 als Modbus Server (früher Modbus Slave). Bisher habe ich für den Client den Funktionsblock FbMbMasterTcp aus der WagoAppPlcModbus-Library genutzt. Zukünftig würde ich das allerdings gerne über das Anhängen eines Modbus-Geräts am Ethernet-Knoten im Projektbaum realisieren. Zum besseren Verständnis habe ich ein Bild beigefügt. Der Modbus mit dem Server läuft auch. Kommt es allerdings zum Fehler des Modbus, z.B. kurzzeitig keine Verbindung oder timeout, wird der Fehler nicht automatisch quittiert. Ich muss dann manuell über den Status des Server-Knotens einen Button mit "Bestätigen" drücken. Im Betrieb kann ich mich aber nicht jedes Mal einloggen um einen Fehler zu quittieren. Gibt es hier irgend einen Trick, wie ich das aus dem Programm-Code quittieren kann? Vielen Dank schon einmal.
Last updated: 2025-02-26

Post by reiterf on Visualisierungs-Stil White style, 3.5.16.0 verursacht Überseztungsfehler CODESYS Forge talk (Post)
Hi, ich möchte ein kleine Testaufbau viualisieren und hätte mich für den Stil "White" entschieden. nun ist es allerdings so daß dieser Stiel einige fehler beim übersetzen erzeugt. Ich habe dann versicht auf den Basic-Style zurückzugehen -- dann sind auch die Fehler weg. Leider wird dann aus der WebVisu (nur am Gerät) kein Druckknopf mehr angezeigt. Ich habe die gleichen Fehler auf 2 Codesys-Installationen (Gleicher Software Stand, 2 PCs) Kann mir da jemand weiterhelfen? ... ich Konnte den Fehler zwar nicht finden aber durch eine Komplette Deinstallation von Codesys und Übertragung der Projektdaten in ein neues Projekt ist der Fehler verschwunden. danke
Last updated: 2025-02-27

Post by bingo on PLC Shell commands via ST Code CODESYS Forge talk (Post)
Suppose you need to switch PLC IP dynamically between 192.168.1.10\192.168.2.10, First, set PLC IP to 192.16.1.10. Create a PGVL with a flag ‘xUseSecondry’ xUseSecondry : bool ; create a function that use socket to update IP: FUNCTION fSwitchIP : bool VAR_INPUT useMainIP:bool; END_VAR --------------------------------CODE------ if useMainIP then SysSockSetIPAddress(‘0’, ‘192.168.1.10’); PGVL.xUseSecondry := 0; else SysSockSetIPAddress(‘0’, ‘192.168.2.10’); PGVL.xUseSecondry := 1; end_if Now, if during execution, you need to switch IP, call the function ‘fSwitchIP()’, Set input to 1 for main IP, 0 for secondary IP. In order to set secondary IP at startup, you can do the following: in your PLC_PRG add a flag: xInit : bool := 1 ; and the code: if xInit then if PGVL.xUseSecondry then fSwitchIP(0); end_if xInit := 0 ; end_if *Alternative way is to use system events.
Last updated: 2025-03-03

Post by pernockham on Inheritence of struct, CODESYS Forge talk (Post)
Apparently my construction will not work as any of the sub-types are not be able to accept any (further) value-initiation. Ie: string_item : log_data_base := (string_value := 'test', val_type := STRING_); is not eq to (the string_value will not be assigned): string_item_2 : log_data_string := (string_value := 'test'); Because effectively for the compiler this is eq. to a "double" assignment where the compiler sees only the first assignment (my guess). string_item_2 : log_data_base := (val_type := STRING_) := (string_value := 'test'); Im not sure this should be treated as a bug, but it would surely be nice to be able to use this construction (compiler is 3.5.20.40). Anyone see any other alternative for solution (other than 4 complete STRUCTS with all fields individually defined)?
Last updated: 2025-03-07

Post by timvh on Problem Reading Registers via Modbus from non Codesys device CODESYS Forge talk (Post)
According to the documentation: https://wiki.teltonika-networks.com/view/RUT956_Modbus You need to create a Channel to read 2 registers from address 143 to get the lattitude. It doesn't specify if you need to read it as a Holding Register or as an Input Register. You could try both. So in the Teltonika router, you need to enable it as being a Modbus Server. Then in CODESYS add an Ethernet Adapter, then a Modbus Client (Master) and to the Client (Master) add the Modbus Server (Slave). Set the IP address and add the Channel. The please consider that CODESYS doesn't update any variables when they are not used in the application. In the I/O mapping tab of your I/O configuration, you can set the "Always update" to enabled.
Last updated: 2025-03-08

Post by trusty-squire on AXIS Rollover CODESYS Forge talk (Post)
If you mean you want to shift the Origin or Zero position of your axis, you can try MC_SetPosition and set the position to 0 (if you want to take the current active position and make it the new 0. Adjust this number accordingly if/as needed). This means the servo drive keeps it's current origin position, and Codesys applies an offset to the servo drive position in the logic. You can also use the homing function of your servo drive using MC_Home and have your drive configured to set the current position as origin when it receives a homing command.
Last updated: 2025-03-11

Post by dkugler on HMI über Webbrowser CODESYS Forge talk (Post)
Auf die Schnelle fällt mir keine Möglichkeit ein, wie die Webvisu aus dem WebBrowser heraus den PC auf dem der Browser läuft, direkt beeinflussen, sprich herunterfahren könnte. Die Webvisu ist ja letztlich nichts anderes, als eine HTML Seite, die im Browser angezeigt wird. Als einzige Lösung fällt mir der file transfer (Beispiel findest du hier https://content.helpme-codesys.com/de/CODESYS%20Examples/_ex_visu_logging_of_variable_value_changes-1799730.html) ein. Du könntest über einen Button in der Visu z.B. eine Datei shutdown.txt von der PLC an den IPC senden. Auf dem IPC müsste dann entsprechend ein Dienst laufen, der zyklisch schaut: Datei shutdown.txt vorhanden, wenn ja, Datei löschen und IPC herunterfahren. Viel Erfolg!
Last updated: 2025-03-12

Post by twofacexx on Package Sound Demo funktioniert nicht CODESYS Forge talk (Post)
Moin, ich grab mal den alten Thread hier aus, habe das gleiche Vorhaben, Sounds auf dem Raspberry abzuspielen. Habe einen Pi5 mit Codesys Pi 64 SL und benutze auch die SysProcessExecuteCommand sowie die SysProcessExecuteCommand2. Habe das auch schon erfolgreich umgesetzt um Kamerabilder aufzunehmen und Bilder zu kopieren, aber die Sounds funktionieren leider nicht. Wenn ich direkt in der Konsole die Befehle eingebe, werden die Sounds abgespielt, werden diese aber durch Codesys getriggert, wird kein Sound abgespielt. Ich habe bis jetzt - espeak - espeak-vg - aplay - omxplayer versucht. Alle in die CodesysControl_User.cfg eingetragen etc und keine Fehlermeldung beim ausführen. Habe BT Headset und USB Headset getestet, wie gesagt, direkt in der Konsole gehts, durch Codesys nicht. Hat irgend jemand eine Idee woran es liegen könnte?
Last updated: 2025-03-13

Post by alberto on ExportPLCopenXML is failing CODESYS Forge talk (Post)
I'm trying to export my whole project through the option ExportPLCopenXML. It seems working, but when I'm trying to import the xml I have the following error during the importation process: Object reference not set to an instance of an object. It seems a usual issue with this process that affects to the pointer to user classes inside a procedure. I receive this error for two general functions that have this pointer declarations in the VAR_INPUT section. It seems a bug into the export/import process of CodeSYS and I couldn't skip it so far. Anyone could help me? Thanks in advance.
Last updated: 2025-03-15

Post by r-c-r on SM3RaspiStepper 0.0.0.6 issue CODESYS Forge talk (Post)
Hello, I noticed that version 0.0.0.6 is now available, so I tested it using CODESYS V3.5 SP19 Patch 7 and SoftMotion 4.17.0.0. While the project compiles and downloads without issues, I encountered a problem with the 'Enable: GPIO pin number that is set when the axis is enabled (with MC_Power) (0: not used)' functionality — it no longer works (HIGH level not present at the output pin). I observed the same behavior with version 0.0.0.5, whereas version 0.0.0.4 functions correctly. Could you help me identify what might be causing this issue or suggest how to resolve it? Thanks.
Last updated: 2025-03-19

Post by atone on CAA File Handling: "Read only" error CODESYS Forge talk (Post)
In case of error while opening the file to read you assume that the file doesn't exist and try to create one. But it could be that the SD card is not ready yet or simply not there. I would try to check first if the SD card is there and accessible. Otherwise with FILE.Create you could end up creating a new directory that is not mapped to the SD card. This would explain the errors even after a reboot, though it doesn't explain the READ_ONLY_CAA error I guess? I would use FILE.DirOpen and FILE.DirList to check if the SD card is there and ready.
Last updated: 2025-03-20

Post by beginner on ERROR: Demo mode for SoftMotion Basic expired. Feature stopped! CODESYS Forge talk (Post)
Hello. Please help me. Sometimes SoftMotion starts in demo mode and stops working after 2 hours. When I check with the license manager, it is recognized normally. I checked the log. After changing online or logging in with a download, the message "**** ERROR: Demo mode for SoftMotion Basic started. Will expire and stop!" was left. Even if you change online or log in with a download, this phenomenon may not occur. Please tell me how to solve this problem. Thank you in advance. Codesys Ver 3.5.20.0 SM3 Basic SoftMotion Ver 4.16.0.0 ※This text was translated using a translator.
Last updated: 2025-03-25

Post by agentcousto on [Bug report] Issue with Importing XML Files Containing "POINTER TO" Variables in Codesys Platform Plugins Versions 2.7 and 2.8 CODESYS Forge talk (Post)
Hello, I have developed a Python script that I run to import XML files into my project. For this, I use the Python function import_xml(). Everything was working fine when I was using Codesys platform plugins version 2.6.1.2320, but since I upgraded to versions 2.7 and even 2.8, some files are no longer imported correctly. After some research, I identified that all the files containing variables of the type "POINTER TO" are affected. I have attached a screenshot of the error I am encountering. Do you know about this bug? Do you plan to fix it?
Last updated: 2025-03-26

Post by rickmotion on Opening and saving files with fileOpenSave dialog CODESYS Forge talk (Post)
I have a customer that types in machine programs in a text file for machines and lets the machine execute it. In the old situation they can open and edit these files in a winform application. Now I want to move this to codesys. What I need is a simple way to open, close, save, edit the machine file in codesys visualisation. I want to use the fileOpenSave dialog. But don't understand how it works. I have the file transfer example and some other examples. But it is hard to figure out how the part with the file dialog works so that you can select a folder or file. Does someone know how that works?
Last updated: 2025-03-26

Post by rickmotion on Opening and saving files with fileOpenSave dialog CODESYS Forge talk (Post)
I have a customer that types in machine programs in a text file for machines and lets the machine execute it. In the old situation they can open and edit these files in a winform application. Now I want to move this to codesys. What I need is a simple way to open, close, save, edit the machine file in codesys visualisation. I want to use the fileOpenSave dialog. But don't understand how it works. I have the file transfer example and some other examples. But it is hard to figure out how the part with the file dialog works so that you can select a folder or file. Does someone know how that works?
Last updated: 2025-03-26

Post by spiessli on Objects in OPC UA Information Model CODESYS Forge talk (Post)
Hi, I have an OPC UA information model with objects defined in it. I can import the model and use the data types defined in it and create instances of these types. These instances are accessible at Root > Objects > DeviceSet > CODE[...] > Resources > Application > GlobalVars > OPC_UA_Symbols for created instances and at [...] > Programs > PLC_PRG for mapped instances. The object defined in the information model is accessible in UA Expert by the name I have defined in the information model (Manipulator) at Root > Objects > Manipulator. How can I assign values to the Variables defined in the object "Manipulator"? Cheers, spiessli
Last updated: 2025-03-27

Post by eaglealex on Length of string and Array of bytes CODESYS Forge talk (Post)
Hello! I have tried read a file to the string variable. But I faced a problem - there is about 2800 bytes of information in file, but string have a limit 2393 bytes. I made two variables with same address (for automatic convertion) - string[3000] and array of bytes[1..3000]. And I noticed that array of bytes contains all information from file, but string shows only first 2393 bytes. So I have lost information. Is there really such a limitation? Or I have an error in my program and Codesys 2.3 have no limit for such kind of conversation between string and array of bytes? Thank you very much!
Last updated: 2025-04-01

Post by aeem on CODESYS Installer does't open CODESYS Forge talk (Post)
Just downloaded stand alone setup, deleted old installer and installed new. Looked up at the installation log - MSI (c) (48:E0) [19:33:49:483]: Windows Installer installed the product. Product Name: CODESYS Installer. Product Version: 2.4.0.3545. Product Language: 1033. Manufacturer: CODESYS GmbH. Installation success or error status: 0. Installer still not running EDIT: It's working. Somehow my Windows Event Log service was disabled. I restarted the service and everything is working fine right now. Click the Start Menu or (Windows key + R) Type services.msc into the search field (Enter) Open the Services app Find a service you want to disable/enable (Windows Event Log), and double click Click Start
Last updated: 2025-04-01

Post by ameba on PersistentVars and Webvisu Element CODESYS Forge talk (Post)
hello everyone I would like to try to better understand how persistent variables work. I created some boolean variables in the PersistentVars section initialized to the value TRUE. I have tied these boolean variables to toggle switches placed inside the HMI interface pages. Once the PLC program is started, the lever selectors, if operated, change their state, at least at a graphical level, but the persistent variables do not undergo any variation. Initially the above variables were declared as simple global variables, in this case the operation with the levers was correct; I then tried to transform them into persistent ones with the aim of using them as "settings saver" Thank you for support Bye
Last updated: 2025-04-03

Post by ahofer on ETHERCAT EK1100 und EL8601-8411 CODESYS Forge talk (Post)
Liebe Forumsteilnehmer, hat jemand schon die Beckhoff-Multi-Klemme EL8601-8411 am EK1100 zusammen mit dem Raspberry Pi verwendet? Ich bin gerade am Testen und habe festgestellt - dass das mit dem Einstecken der Geräte nur teilweise funktioniert. - DI/DO und AI(U) lässt sich benutzen. - Den Zähler kann ich nicht testen, weil das Gerät nicht einsteckbar ist. Ich kann es zwar einstecken, aber dann läuft der Bus nicht. - Beim Encodereingang fehlt mir vermutlich ein geeigneter Funktionsbaustein um den zu betreiben. Gibts da evtl. irgendwo eine Bibliothek? Ich benutze CODESYS V3.5.19.70, habe die neuesten Gerätedateien (XML) von Beckhoff eingespielt und für den Raspberry Pi benutze ich die Version Codesys Control for Raspberry Pi 4.14. Für Antworten bedanke ich mich schon mal herzlich VG A. Hofer
Last updated: 2025-04-04

Post by pernockham on How to manage soft container licenses for (remote) multi units? CODESYS Forge talk (Post)
Using Codesys runtime for Linux and thinking of the process of preparing multiple such systems for my customer. I don't necessarily have physical access to these units, they can be (very) remote. The idea so far is to use an image to install the Linux OS and codesys runtime. Application updates can be done by distribution of the PlcLogic/Application/application.app and application.crc files. But whats the most practical way of managing the license for these units? Do each controller need to be physically connected to a License Manager instance or can licenses be distributed by means of a license file for each unit? I believe that the license should be stored in soft containers for each unit. Help and insights appreciated! Per
Last updated: 2025-04-04

Post by jampid on Struct Literal CODESYS Forge talk (Post)
Bonjour Davidmic, Il n'est pas possible d'associer une méthode à une fonction. Cela est possible sur les Blocs fonctions. En utilisant ta DUT MyStruct, je créé une fonction avec en entrée un tableau de structure :** FUNCTION F_F3 : REAL VAR_IN_OUT // bien définir un type IN_OUT IN_ptrINT: ARRAY[*] OF MyStruct; // la taille sera définie ultérieurement/ END_VAR VAR _di: DINT; // Index de parcours du tableau pour l'écriture dans les cases ENDVAR ============== //Programme F_F3: FOR _di := LOWER_BOUND(IN_ptrINT,1) TO UPPER_BOUND(IN_ptrINT,1) DO IN_ptrINT[_di].som:=IN_ptrINT[_di].a + IN_ptrINT[_di].b; END_FOR J'utilise ensuite cette fonction dans un POU Programme : PROGRAM Test_F_Fx VAR _aiTAB9:ARRAY[0..3] OF MyStruct := [(a := 1, b := 1.2), (a := 2, b := 2.2), (a := 3, b := 3.3), (a := 4, b := 4.4)]; END_VAR ** ==========** F_F3(IN_ptrINT:=_aiTAB9 ); Voilà l'idée pour avancer. Une autre idée, est d'utiliser les pointeurs ou les références. Bon développement!
Last updated: 2025-04-07

Post by bjarne-pagaard on Global Variables CODESYS Forge talk (Post)
Old thread, I know - but it still has good answers. I would like to add a bit of info to it, as I was having a problem that lead me to this thread, but didn't give an exact answer. I am porting a project to a different PLC architecture. (Wago PFC300) A GVL named 'GVL' in the POUs section of my project was shadowed by a PLC-specific library in the Application->Library Manager. So all the existing references in the device specific code to 'GVL.something' would not resolve. Right-clicking the GVL in the code and 'Go to definition' would point me to the library in the Application Library Manager. All I had to do from there, was right-click the library, and set the property 'Only allow qualified access to all identifiers' in the library.
Last updated: 2025-04-11

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 abuckie on Getting raw value as full resolution for ADS1115 CODESYS Forge talk (Post)
I just found this and I am getting a value larger than 16 bit, around 81000 something. I am reading a 5 volt value and I am using level shifters for the i2c bus. This is how I have the channel configured: ADS1115.usiAddress := 16#48; ADS1115.ChannelConfigs[0].Active := TRUE; ADS1115.ChannelConfigs[0].PGA := FSR_6144mV; ADS1115.ChannelConfigs[0].InputMux := Single_0; RawAnalogValue := ADS1115.Channels[0].Value; It looks like every value is a multiple of 3. Any idea where to look to fix this? I think i found what I want to change in UpdateChannels Channels[FChannelNo].Value := INT_TO_REAL(WORD_TO_INT(LValue) * GetFullScaleRange(ChannelConfigs[FChannelNo].PGA)) / 2048.0; I try to edit it but I can't, sorry if this is a basic question, I am new to CODESYS.
Last updated: 2025-05-22

<< < 1 .. 219 220 221 222 223 .. 236 > >> (Page 221 of 236)

Showing results of 5882

Sort by relevance or date