Search talk: visu registration in the plc failed

 
<< < 1 .. 179 180 181 182 183 .. 281 > >> (Page 181 of 281)

Post by kleeswi on SysFileOpen does not work after update to V3.5 SP19 Patch 5 CODESYS Forge talk (Post)
I use the function SysFile.SysFileOpen(sFileNamePara, SysFile.ACCESS_MODE.AM_WRITE, pErrorFileOpen); to open and write a file. Since the update from Codesys V3.5 SP17 to V3.5 SP19 Patch 5 it does not work anymore. I first had SysFile.SysFileOpen(sFileNamePara, SysFile.ACCESS_MODE.AM_APPEND_PLUS, pErrorFileOpen); in both versions. hFile_Test is a pointer to byte. It gives an exceptional error when dereferencing the hFile_Test pointer. Edit: I use Codesys on a Raspberry pi
Last updated: 2024-02-19

Post by richard-wang on Codesys recipe manager - what does it do? CODESYS Forge talk (Post)
Hi All Thanks for sharing this information. For whom may not know why always get error code 16#4000 or 16#4002 while performing Recipe commands, the root cause is There is a line need to be inserted in CODESYSControl.cfg file, which is PlaceholderFilePath.1=/var/opt/codesys/PlcLogic/ I am using Pi, therefore the above path is set to my pi unit, after adding above line to my cfg file, all the Recipe commands work fine. But I still do not know how and when this file got modified though.
Last updated: 2024-04-29

Post by wiresplus on Display minutes as hours & minutes CODESYS Forge talk (Post)
Hello, I have a counter that increments an INT value once per minute I want to display this value in Minutes until 60, then Hours/Minutes thereafter on the HMI Codesys V3.5 SP16 I can divide the minutes by 60 to get hours, but then the minutes is still more than 60. Example: a process has run for 350 Minutes. I need to display "5 Hours 50 Minutes" But if it's only been 45 Minutes, I don't want "0 Hours 45 Minutes" , just "45 Minutes"
Last updated: 2024-05-25

Post by kris-samoy on Get Alarm status in Codesys CODESYS Forge talk (Post)
I am rather new to Codesys and I'm trying to figure out how to get the status of an alarm. This to interlock the start of a device until the alarm has been acknowledged... I am not sure if IAlarm.GetState (METH) can be used for this purpose. If yes then could someone please briefly explain how to use this? https://content.helpme-codesys.com/en/libs/AlarmManager/4.1.0.0/Interfaces/pou-IAlarm/GetState.html Thx & grtz, Kris
Last updated: 2024-06-03

Post by mozed on Bug Device login CODESYS Forge talk (Post)
Good morning, The problem I encounter is very disturbing, when I try to connect to my project, it asks me to put in my username and password, which I do. However, I cannot connect and it restarts. the window to rewrite my identifiers. However it is the correct identifier and password I do not understand why. When I try to put false identifiers there strangely it tells me that these are not valid identifiers. There is something what can I do? Sincerely
Last updated: 2024-06-11

Post by ranadheer on Request to share documents about SoftPLC Extension SL CODESYS Forge talk (Post)
Hello Everyone Our team is planning to begin an industrial automation project and we are currently evaluating the use of SoftPLC Extension SL as a potential solution. As we are in the early stages and have yet to start the implementation, we kindly request access to official reference documents, technical manuals, and datasheets relating to SoftPLC Extension SL. Thank you very much for your assistance. We look forward to your response.
Last updated: 2025-10-18

Post by alimans on High Cycle Times for SoftMotion_PlanningTask when using AxisGroup CODESYS Forge talk (Post)
Hi Manuknecht, Did you manage to solve the problem? I’m facing the same issue with Windows RTE SoftMotion β€” it works fine as long as nothing else is open in Windows, but as soon as I start another application, the EtherCAT DC time and max jitter values spike, and then all axes stop. I’ve already sent a support request to CODESYS, but haven’t received a response yet.
Last updated: 2025-10-23

Post by struccc on Inheritence of struct, CODESYS Forge talk (Post)
Strangely reminds me to my struggles... Want to do something "Elegant", reusable, universal, practical... In CODESYS??? πŸ™ƒ First of all, before you get too deep into this: If you could find a way, to make a "universal" log entry object, containing the variable length data itself, you wouldn't be able to store them in an array, or access them like an array, or pass them by value as a type. (please correct me, if I'm wrong, incorrect, or not precise). Because... Basically you can't declare a type with variable memory footprint. This is a very deeply embedded characteristic of CODESYS, and all IEC 61131-3 systems, and it has many reasons behind. And yes, it is a very common trap / mistake, to forget about. So, with a log entry - I guess - it's pretty much the purpose: store data and metadata together, and then handle it in a uniform way. There are ways to handle this, really depends on what is the purpose. For example: 1. Entries with fixed length (Maybe it is not as evil as it looks for the first time. Depends on the situation, but definitely the fastest and easiest code) You can have your base object, with an internal, fixed length string or byte array variable. I would go with a string, and call it _Data.; And then you can make properties, like As_Bool, As_Int, As_Real... In the 'set' accessors, you can do like: pReal := ADR(_Data); // POINTER TO REAL As_Real := pReal^; In the 'get' accessors, evidently: pReal := ADR(_Data); // POINTER TO REAL pReal^ := AS_Real; Or, can use ANY type, if you are not obsessed with variable / property like access: 2. Fixed length, but nicer First, some disadvantage to any values: - You can only assign values with write access. No literals, constants, etc... - Can only be used as input variable of function or function_block - Therefore, stg you could reach: LogEntry.Initialize (stVariable|rVariable|iVariable|xVariable); Just a quick example (it's funny to play with ANY): Be careful it was not tested. I'm sure can be done better, please feel free to comment FUNCTION_BLOCK FB_LogEntry VAR_INPUT MsgClass : UDINT; // Like DEBUG, WARN, ERR... MsgCode : UDINT; // Like Errors.ERR_FAILED MsgTS : DT; // The timestamp END_VAR VAR _Data : STRING(80); // Our data container... _Descr : __SYSTEM.AnyType; // A standard descriptor for our data, containing TYPE_CLASS, address and size END_VAR METHOD SET_Value : BOOL VAR_INPUT anyValue : ANY; END_VAR VAR I : DINT; diSize : DINT; pStr : POINTER TO STRING; END_VAR // Check what did we receive in anyValue. diSize := anyValue.diSize; // We use constant __SYSTEM.TYPE_CLASS to identify the received data type CASE anyValue.TypeClass OF // Maybe we don't want to store references, pointers... and who knows what else... __SYSTEM.TYPE_CLASS.TYPE_REFERENCE, __SYSTEM.TYPE_CLASS.TYPE_POINTER : SET_Value := FALSE; // For the planned types we will be just fine. TYPE_CLASS.TYPE_BOOL, TYPE_CLASS.TYPE_INT, TYPE_CLASS.TYPE_REAL : SET_Value := TRUE; // Optionally string can be handled separately, maybe we have received STRING(255), but practically it is shorter than 80 bytes... TYPE_CLASS.TYPE_STRING : pStr := anyValue.pValue; diSize := MIN(anyValue.diSize, LEN(pStr^) + 1); // Get the actual size, and rewrite the received structure member diSize := MIN(SIZEOF(_Data), diSize); // Can chop down the received string to our length... SET_Value := TRUE; // Maybe want to play a little bit more here, to narrow down or convert datatypes, etc... // Or just reject any other datatype ELSE SET_Value := FALSE; RETURN; END_CASE // Fail, if the received value is still larger than our container... IF diSize > SIZEOF(_Data) THEN SET_Value := FALSE; END_IF // Here we should be ok, just set up the _DataType structure, and copy store the data IF SET_Value THEN THIS^._Descr.TypeClass := anyValue.TypeClass; // The typeclass is already filtered THIS^._Descr.diSize := diSize; // Set the (adjusted) size THIS^._Descr.pValue := ADR(_Data); // This will not change, just to be sure {IF defined (pou:SysMem.SysMemCpy)} SysMem.SysMemCpy(_DataType.pValue, anyValue.pValue, TO_UDINT(anyValue.diSize)); {ELSE} // An ugly replacement MemCpy FOR I:=0 TO diSize - 1 DO _Descr.pValue[I] := anyValue.pValue[i]; END_FOR {END_IF} // Otherwise, in case of failure maybe better set an empty value (overwrite the former data descriptor) ELSE THIS^._Descr.TypeClass := TYPE_CLASS.TYPE_NONE; THIS^._Descr.pValue := ADR(_Data); THIS^._Descr.diSize := 0; END_IF METHOD GET_Value : BOOL VAR_INPUT anyValue : ANY; END_VAR VAR I : DINT; END_VAR // We just have to serve the data, using the __System.AnyType structure received // Roughly we can say: IF anyValue.TypeClass = _Descr.TypeClass AND anyValue.pValue <> 0 // This should not be possible, already taken care of by Codesys (?) THEN {IF defined (pou:SysMem.SysMemCpy)} SysMem.SysMemCpy(anyValue.pValue, _DataType.pValue, TO_UDINT(MIN(anyValue.diSize, _Descr.diSize))); {ELSE} // An ugly replacement MemCpy FOR I:=0 TO MIN(anyValue.diSize -1, _Descr.diSize - 1) DO anyValue.pValue[I] := _Descr.pValue[I]; END_FOR {END_IF} // Just to make sure, that our string is terminated... IF anyValue.TypeClass = TYPE_CLASS.TYPE_STRING THEN anyValue.pValue[anyValue.diSize -1] := 0; END_IF GET_Value := TRUE; RETURN; END_IF // ... But can play more CASE anyValue.TypeClass OF TYPE_CLASS.TYPE_WSTRING : ; // Could do conversion TYPE_CLASS.TYPE_XSTRING : ; // Wow, I have to figure this out TYPE_CLASS.TYPE_PARAMS : ; // BTW, what is this, how to use? TYPE_CLASS.TYPE_ANYNUM : ; // ... END_CASE Be careful it was not tested. I'm sure can be done better, please feel free to comment 3. If you really want to do entries with variable size In a standard environment, it would be similar to the previous, except you dont have the container variable _Data, just use a pointer, practically _Descr.pValue At Initialize (SET_Value), you have to allocate the memory, would be easy with SysMem.SysMemAlloc - nowadays with SysMem.SysMemAllocData -, and you make sure to release it after use with SysMem.SysMemFreeData... SysMemAlloc was already hidden. The problem with this, that sooner or later your application will totally fragment the dynamic memory, and fail... So should look for some form of dynMaybe MemUtils.MemoryManager (I am not sure what is the status and the future of it). 4. You will end up by a LogEntry Factory ... 5. You could still have a look at this IEC Snippets BTW, Standard Codesys Logger is not a bad choice either. If you are really interested, I share some more code / library.
Last updated: 2025-03-09

Post by pierre123 on User management - User Tab missing CODESYS Forge talk (Post)
i had the same problem. Thanks you for the response.
Last updated: 2023-08-25

new feature: list/view plclogs from the plcs CODESYS Forge talk (Thread)
new feature: list/view plclogs from the plcs
Last updated: 2023-08-30

Need help before losing control over myself with the BK1150 ;-) CODESYS Forge talk (Thread)
Need help before losing control over myself with the BK1150 ;-)
Last updated: 2017-05-31

Compiling CoDeSys project using the command line interface CODESYS Forge talk (Thread)
Compiling CoDeSys project using the command line interface
Last updated: 2021-01-27

How to control the Amp2 from HifiBerry ? CODESYS Forge talk (Thread)
How to control the Amp2 from HifiBerry ?
Last updated: 2023-07-04

The required device description is not installed.. CODESYS Forge talk (Thread)
The required device description is not installed..
Last updated: 2023-10-03

Focus/Selection color frame around the element CODESYS Forge talk (Thread)
Focus/Selection color frame around the element
Last updated: 2023-10-27

Post by mmoncada on Dinamically loading recipes CODESYS Forge talk (Post)
I'm having trouble with the initial loading of recipes. I can create them and load one or the other, but when the program restarts the recipes are not listed. I'm calling: RecipeManCommands.ReloadRecipes and then RecipeManCommands.GetRecipeCount which returns 0 recipes. None of the methods returns error and if i call them again after RecipeManCommands.CreateRecipe RecipeManCommands.ReadAndSaveRecipe getRecipeCount returns the number of recipes created. When i restart the system, once again they are not listed even though the recipe files are there. Any ideas? Martin Btw, Codesys 3.5 SP 16 Path 9
Last updated: 2023-12-06

Using the Wago 750-658 CAN Gateway CODESYS Forge talk (Thread)
Using the Wago 750-658 CAN Gateway
Last updated: 2024-07-23

No gateway with the given settings could be found CODESYS Forge talk (Thread)
No gateway with the given settings could be found
Last updated: 2024-08-02

Get the .git folder path via scripting CODESYS Forge talk (Thread)
Get the .git folder path via scripting
Last updated: 2024-08-08

How Could I Desactivated The Watchdog ? CODESYS Forge talk (Thread)
How Could I Desactivated The Watchdog ?
Last updated: 2024-08-13

Post by remoyang on Package manager CODESYS Forge talk (Post)
Also during the installation, it has the following error as attached
Last updated: 2024-08-16

Disable Communications to 'Modbus_Server_COM_Port' from the logic CODESYS Forge talk (Thread)
Disable Communications to 'Modbus_Server_COM_Port' from the logic
Last updated: 2024-08-30

Is the Realtek RTL8119I-CG ethernet controler on supported list? CODESYS Forge talk (Thread)
Is the Realtek RTL8119I-CG ethernet controler on supported list?
Last updated: 2024-09-04

Is the Realtek RTL8119I-CG ethernet controler on supported list? CODESYS Forge talk (Thread)
Is the Realtek RTL8119I-CG ethernet controler on supported list?
Last updated: 2024-09-04

Is the Realtek RTL8119I-CG ethernet controler on supported list? CODESYS Forge talk (Thread)
Is the Realtek RTL8119I-CG ethernet controler on supported list?
Last updated: 2024-09-04

<< < 1 .. 179 180 181 182 183 .. 281 > >> (Page 181 of 281)

Showing results of 7003

Sort by relevance or date