Mapping members of a struct to Inputs/outputs
CODESYS Forge
talk
(Thread)
Mapping members of a struct to Inputs/outputs
Last updated: 2021-09-03
Unable to read ADC values of MCP3008
CODESYS Forge
talk
(Thread)
Unable to read ADC values of MCP3008
Last updated: 2017-11-28
Is it possible to automaticly export Testreport of Test Manager?
CODESYS Forge
talk
(Thread)
Is it possible to automaticly export Testreport of Test Manager?
Last updated: 2016-11-29
Mapping of Array Element to a EtherCAt Slave variable
CODESYS Forge
talk
(Thread)
Mapping of Array Element to a EtherCAt Slave variable
Last updated: 2018-07-25
How to resolve "ambiguous use of name" - dependency management
CODESYS Forge
talk
(Thread)
How to resolve "ambiguous use of name" - dependency management
Last updated: 2020-03-30
How to Install different versions of Codesys 3.5?
CODESYS Forge
talk
(Thread)
How to Install different versions of Codesys 3.5?
Last updated: 2021-11-19
How to get the name of POU
CODESYS Forge
talk
(Thread)
How to get the name of POU
Last updated: 2013-06-27
How to read MAC address of Modbus TCP slave
CODESYS Forge
talk
(Thread)
How to read MAC address of Modbus TCP slave
Last updated: 2022-02-04
save the varies of array to a TXT file
CODESYS Forge
talk
(Thread)
save the varies of array to a TXT file
Last updated: 2014-05-26
how to determine the cycle time of a POU?
CODESYS Forge
talk
(Thread)
how to determine the cycle time of a POU?
Last updated: 2010-03-01
How to Choose Library of CANopen Application?
CODESYS Forge
talk
(Thread)
How to Choose Library of CANopen Application?
Last updated: 2011-04-27
Convert array of 4 byte to real
CODESYS Forge
talk
(Thread)
Convert array of 4 byte to real
Last updated: 2021-06-30
How to transfer SDO message of CanOpen fieldbus
CODESYS Forge
talk
(Thread)
How to transfer SDO message of CanOpen fieldbus
Last updated: 2012-01-31
Using old versions of libraries, link to Codesys repository
CODESYS Forge
talk
(Thread)
Using old versions of libraries, link to Codesys repository
Last updated: 2022-01-28
[SOLVE] Convert array of word to string
CODESYS Forge
talk
(Thread)
[SOLVE] Convert array of word to string
Last updated: 2023-06-30
How to Hide Action or Method of FB
CODESYS Forge
talk
(Thread)
How to Hide Action or Method of FB
Last updated: 2020-02-04
Codesys access to DICTIONARY OBJECTS of ethercat (CoE ) Servo Drive
CODESYS Forge
talk
(Thread)
Codesys access to DICTIONARY OBJECTS of ethercat (CoE ) Servo Drive
Last updated: 2024-06-19
Codesys access to DICTIONARY OBJECTS of ethercat (CoE ) Servo Drive
CODESYS Forge
talk
(Thread)
Codesys access to DICTIONARY OBJECTS of ethercat (CoE ) Servo Drive
Last updated: 2024-06-19
How to read effective version of libraries?
CODESYS Forge
talk
(Thread)
How to read effective version of libraries?
Last updated: 2024-07-25
Number of Connections to Modbus TCP Slave
CODESYS Forge
talk
(Thread)
Number of Connections to Modbus TCP Slave
Last updated: 2024-08-01
Number of Connections to Modbus TCP Slave
CODESYS Forge
talk
(Thread)
Number of Connections to Modbus TCP Slave
Last updated: 2024-08-01
Number of Connections to Modbus TCP Slave
CODESYS Forge
talk
(Thread)
Number of Connections to Modbus TCP Slave
Last updated: 2024-08-01
Number of Connections to Modbus TCP Slave
CODESYS Forge
talk
(Thread)
Number of Connections to Modbus TCP Slave
Last updated: 2024-08-01
Post by manuknecht on Persistence Manager does not save alphabetically first value
CODESYS Forge
talk
(Post)
I have several libraries which contain values that should be saved on a PLC. As apparently no Persistent Variable List is available within Libraries, I use the Persistence Manager to create a Persistence Channel in the Project which imports the library. I then specify the persistence channel in the library using the {attribute 'ac_persist':='PersistenceChannel_CT'} specifier. This generally works very well and gives me exactly the properties I require. However, it came to my attention that the (alphabetially) first value from the library is not saved in the created ASCII file. When checking the content of the Persistence Channel, it shows all the variables as defined in the library. But the created file does not contain the first value and it is not restored after restart or reset. (see attached picture) I disabled Periodic Saving and set xSaveOnChange to TRUE and so the file usually updates immediately after changing one of the values. When changing the first value, it does not update which is consistent with this value not being saved. I also created a sample project and library from scratch which shows the same issue both using a Raspberry Pi and using a Linux machine. Does someone know what the reason for this could be or did someone make similar experiences? Looking forward to hearing your suggestions. Thanks in advance and best wishes Manuel
Last updated: 2023-10-17
Post by caprez95 on Trace Restart Visuelement
CODESYS Forge
talk
(Post)
Hallo zusammen. Ich habe schon länger mit dem Problem zu kämpfen, dass ich einen Trend (Visuelement) nicht resetten (neustarten) kann. Ich habe es jetzt mit dem Beispiel hinbekommen, die Trace-Aufzeichnung über die CmpTraceMgr Bibliothek zu steuern. Aber wie bekomme ich diese Trace-Aufzeichnung in ein Visuelement? Der Code sieht wie folgt aus: // Configure trace IF xInit THEN // Create a trace packet PacketConfig.pszName := ADR('IECTraceConfiguration.Trace1'); // Name of trace PacketConfig.pszApplicationName := ADR('IECTraceConfiguration'); // Name of the application PacketConfig.pszIecTaskName := ADR('Task'); // Name of the task PacketConfig.pszComment := ADR('Demo packet'); PacketConfig.ulEveryNCycles := 1; PacketConfig.ulBufferEntries := 1000; PacketConfig.ulFlags := TRACE_PACKET_FLAGS.TRACE_PACKET_FLAGS_TIMESTAMP_MS AND TRACE_PACKET_FLAGS.TRACE_PACKET_FLAGS_AUTOSTART; IF (NOT fbTraceManager.CreatePacket(PacketConfig := PacketConfig, hPacket=>hPacket1)) THEN xError := TRUE; END_IF // Create a trace record RecordConfig.pszVariable := ADR('iSignal'); // This is the name of variable to record RecordConfig.tcClass := INT_TO_UDINT(TypeClass.TYPE_INT); // Type of the recording variable RecordConfig.ulSize := SIZEOF(iSignal); // Size of the recording variable pApp := AppFindApplicationByName('IECTraceConfiguration', 0); AppGetAreaOffsetByAddress(pApp, ADR(iSignal), ADR(RecordConfig.tvaAddress.taAddress.Area.usArea), ADR(RecordConfig.tvaAddress.taAddress.Area.ulOffset)); // Get and set area offsets RecordConfig.tvaAddress.ulAddressFlags := TRACE_VAR_ADDRESS_FLAGS_IEC OR TRACE_VAR_ADDRESS_FLAGS_AREA_OFFSET; RecordConfig.ulGraphColor := 16#FF00FF00; // green RecordConfig.ulGraphType := 1; // Line with points IF (NOT fbTraceManager.AddRecord(RecordConfig := RecordConfig, hPacket := hPacket1, hRecord => hRecord1)) THEN xError := TRUE; END_IF xInit := FALSE; END_IF // Starts the recording IF xStart THEN IF (NOT fbTraceManager.StartPacket(hPacket := hPacket1)) THEN xError := TRUE; END_IF xStart := FALSE; END_IF // Stop the recording IF xStop THEN IF (NOT fbTraceManager.StopPacket(hPacket := hPacket1)) THEN xError := TRUE; END_IF xStop := FALSE; END_IF // Reset the recording IF xReset THEN IF (NOT fbTraceManager.ResetPacket(hPacket := hPacket1)) THEN xError := TRUE; END_IF xReset := FALSE; END_IF
Last updated: 2024-06-04
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
.