Search talk: size of array

 
<< < 1 .. 55 56 57 58 59 .. 123 > >> (Page 57 of 123)

Post by scoob on ModbusFB - Slow Response Time CODESYS Forge talk (Post)
Hello, I have been trying to use the ModbusFB functions so I can put some code into libraries, but it seems to be very slow for me. I have a Modbus device with 100ms registers. I previously setup 10 channels in the 'traditional' Modbus Slave with channels and mappings - and set a cyclic trigger at 100ms - this worked fine. I then tried the ModbusFB example, and setup reading the same 10 blocks of modbus addresses, copying the example and putting all of the requests into an array and triggering the requests sequentially. I timed how long the requests are taking to get round to each one, and it is around 1s 450ms. How do I speed this up to match the cyclic time? IF NOT(init) THEN init := TRUE; // Set the required IP address: ipAddress[0] := 192; ipAddress[1] := 168; ipAddress[2] := 1; ipAddress[3] := 10; // Pass the required IP address to the clinet FB: client_NetworkSwitch.aIPaddr := ipAddress; client_NetworkSwitch.udiLogOptions := (ModbusFB.LoggingOptions.ClientConnectDisconnect OR ModbusFB.LoggingOptions.ClientReceivedValidReplies); // Try to connect the client client_NetworkSwitch(xConnect:=TRUE); // Configure all the channels to read connecting them to the client: portStatus_Request(rClient := client_NetworkSwitch, uiStartItem := 4096, uiQuantity := 32, pData := ADR(portStatus), udiReplyTimeout := udiReplyTimeout); portSpeed_Request(rClient := client_NetworkSwitch, uiStartItem := 4352, uiQuantity := 32, pData := ADR(portSpeed)); flowControl_Request(rClient := client_NetworkSwitch, uiStartItem := 4608, uiQuantity := 32, pData := ADR(flowControl)); linkUpCounter_Request(rClient := client_NetworkSwitch, uiStartItem := 5888, uiQuantity := 32, pData := ADR(linkUpCounter)); txPacketCounter1_Request(rClient := client_NetworkSwitch, uiStartItem := 8192, uiQuantity := 100, pData := ADR(txPacketCounter1)); txPacketCounter2_Request(rClient := client_NetworkSwitch, uiStartItem := 8292, uiQuantity := 28, pData := ADR(txPacketCounter2)); rxPacketCounter1_Request(rClient := client_NetworkSwitch, uiStartItem := 8448, uiQuantity := 100, pData := ADR(rxPacketCounter1)); rxPacketCounter2_Request(rClient := client_NetworkSwitch, uiStartItem := 8548, uiQuantity := 28, pData := ADR(rxPacketCounter2)); txErrors_Request(rClient := client_NetworkSwitch, uiStartItem := 8704, uiQuantity := 64, pData := ADR(txErrors)); rxErrors_Request(rClient := client_NetworkSwitch, uiStartItem := 8960, uiQuantity := 64, pData := ADR(rxErrors)); // Trigger all client requests initially FOR clientRequestsCnt := 0 TO (SIZEOF(clientRequests)/SIZEOF(clientRequests[0]))-1 DO pClientRequest := clientRequests[clientRequestsCnt]; pClientRequest^.xExecute := TRUE; END_FOR // Prepare sequential trigger / control of client requests. clientRequestsCnt := 0; pClientRequest := clientRequests[clientRequestsCnt]; END_IF // Call the client to do request processing: client_NetworkSwitch(); // Now we trigger client request sequentially ... IF NOT pClientRequest^.xExecute AND NOT pClientRequest^.xDone AND run AND client_NetworkSwitch.xConnected THEN pClientRequest^.xExecute := TRUE; END_IF // .. and check result/error IF pClientRequest^.xExecute AND run AND client_NetworkSwitch.xConnected THEN IF pClientRequest^.xDone THEN // Prepare next trigger of client request (a rising edge of xExecute) pClientRequest^.xExecute := FALSE; IF clientRequestsCnt < SIZEOF(clientRequests)/SIZEOF(clientRequests[0])-1 THEN // next client request clientRequestsCnt := clientRequestsCnt + 1; ELSE clientRequestsIterationCounter := clientRequestsIterationCounter + 1; clientRequestsCnt := 0; END_IF pClientRequest := clientRequests[clientRequestsCnt]; END_IF END_IF I did try a semi-coded way using the IoDrvModbusTCP library, and setting the slave com settings, then 10 commands and 10 requests, then using a TP on xDone as a pause, before triggering another request - this is time the delay is around 120ms - so the device is fine with the speed, just something I am doing wrong in the ModbusFB method I am sure.
Last updated: 2024-04-26

Post by totorovic on CSVReaderInit returns error : INVALID_HANDLE CODESYS Forge talk (Post)
Actually no solution. We are waiting Codesys reply. Latest version of library : licence error message Version 1.0.0.5 : INVALID_HANDLE error message
Last updated: 2023-08-21

Post by i-campbell on Ping By Name CODESYS Forge talk (Post)
What library is that? Net Base Services Is there a version 9.2 ? I've not heard of a version 9.2
Last updated: 2023-08-25

Post by danwoodlock on RPI Zero w - Edge gateway cant install CODESYS Forge talk (Post)
Thank you for the recommendation! attached result of 'usname -a'
Last updated: 2023-09-13

Post by timvh on Get the numer of day CODESYS Forge talk (Post)
For a demo application related to date/time, see: https://forge.codesys.com/prj/codesys-example/date-and-time/home/Home/
Last updated: 2023-09-14

Post by manuknecht on Specify Input Configuration "OnDialogClosed" Action to only react to certain Dialogs CODESYS Forge talk (Post)
I have a project with several buttons and dialogs. Most of the dialogs are opened using the Open Dialog action of the Input configuration of the buttons. Some dialogs are openend using the FbOpenDialogExtended FB of the Visu Utils library and the FbOpenDialogExtended FB is called in the Execute ST-Code action. I am also using the FileOpenSave dialog from Visu Dialogs which requires an OnDialogClosed action to read out. I realized that the OnDialogClosed action which is meant for the FileOpenSave dialog also triggers if a dialog is closed, which was previously openend using the FbOpenDialogExtended FB. Is there a way to detect which dialog was closed last and specify to which dialogs the OnDialogClosed action reacts?
Last updated: 2023-09-20

Post by simond on The required device description is not installed.. CODESYS Forge talk (Post)
I only get this error on the second instance of the J1939 Manager!
Last updated: 2023-10-03

Post by arnaud on eCockpit - unable to start simulation CODESYS Forge talk (Post)
Thanks for your help. Seems like one of these libraries are the root cause indeed.
Last updated: 2023-10-20

Post by simotion on Axis_Ref_SM3.perfTimers CODESYS Forge talk (Post)
What is the exact meaning of the variables that measure the softmotion performance : Axis_Ref_SM3.perfTimers.udiAI_ns Axis_Ref_SM3.perfTimers.udiAO_ns Axis_Ref_SM3.perfTimers.udiBI_ns Axis_Ref_SM3.perfTimers.udiBO_ns
Last updated: 2023-11-22

Post by srigan1986 on SP8 - New scriptengine feature - open:VersionUpdateFlags CODESYS Forge talk (Post)
Is this issue of idling before loading libraries resolved in Codesys 3.5.18.40 ?
Last updated: 2023-11-24

Post by dkugler on Management of a PLC network from a remote station CODESYS Forge talk (Post)
I would figure out, how to create a simple html webpage with 2 frames. One frame with buttons to select the plc. A second frame with hyperlink to the webvisu of the plc ("XXX.XXX.XXX.XXX:8080/webvisu.htm"). Selecting other PLC Button has to change the hyperlink in 2. frame. Costs only some time to figure out :-) Or setup a raspberry Pi with small visualization. Set up a button for each plc and add one browser element. Each button writes the URL of the depending plc to the URL setting of the browserelement. Costs 55€ for runtime licence and a Raspberry Pi.
Last updated: 2023-12-04

Post by snhatton on Saving variable values on power cycle (RevPi Connect) CODESYS Forge talk (Post)
Have you tried using the persistence manager which uses the file system of the controller to store persistent variables?
Last updated: 2023-12-04

Post by dkugler on Alarm Management - Import and Export of AlarmGroup CODESYS Forge talk (Post)
without the knowledge which error occures, it's difficult to help?!
Last updated: 2023-12-06

Post by lorenzo-pisoni on SysProcessExecuteCommand CODESYS Forge talk (Post)
Hello, problem solved, for anyone intrested, putting the command at the very end of CODESYSControl.txt solved the problem.
Last updated: 2024-07-11

Post by faceplant on Get the .git folder path via scripting CODESYS Forge talk (Post)
Using the git scripting API, is there any way to get the file path of the project's .git/ folder?
Last updated: 2024-08-08

Post by abner on Open specific Version of Codesys Control Win V3 x64 CODESYS Forge talk (Post)
Wow, I have tried it and it worked I didn´t know about Codesys installer Thank you (Y)
Last updated: 2024-08-22

Post by tk096 on SMC_NCDecoder very slow to decode lines CODESYS Forge talk (Post)
Hi, you can call the decoder function block in a loop and/or decrease the task cycle interval of Task_PATH.
Last updated: 2024-08-23

Post by gilbertamine on Comparing Arrays of structure CODESYS Forge talk (Post)
If I knew it was this simple... Exactly what I was looking for ! Thanks you very much.
Last updated: 2024-08-23

Post by fraziersedge on ModbusServer became unreachable if reach maximum of 16 byClientConnections CODESYS Forge talk (Post)
Frédéric did you ever find a solution to this problem? I am experiencing the same thing.
Last updated: 2024-08-27

Post by zatalian on Visualization Toolbox in German CODESYS Forge talk (Post)
Is there a solution for this problem? Same here where the OS language was french during the installation of codesys (SP20 Patch2)
Last updated: 2024-09-26

Post by andrebrandt on how to extract the name of an FB to a variable CODESYS Forge talk (Post)
Hi mr. Do you have the script? Cause the link is down.
Last updated: 2024-09-27

Post by andrebrandt on how to extract the name of an FB to a variable CODESYS Forge talk (Post)
Hi mr. Do you have the script? Cause the link is down.
Last updated: 2024-09-27

Post by andrebrandt on how to extract the name of an FB to a variable CODESYS Forge talk (Post)
Hi mr. Do you have the script? Cause the link is down.
Last updated: 2024-09-27

Post by timvh on FB string and naming CODESYS Forge talk (Post)
I see, you want to initialize the FB. To be able to initialise it like you described, you need to add the FB_Init method to your FB. (right click on the FB, select add object --> method). Then press the arrow down, to select the FB_Init (overwrite default implementation). In the VAR_INPUT section of this method, add the variable --> Tag : STRING; Then in the code section of this method add: THIS^.Tag := Tag; // copy initial value to local variable in FB Search Google if you want to know more about FB_Init. PS, reflection + instance path, is also an option if you want to get the full name of the instance (path) of the Function Block. See: https://content.helpme-codesys.com/en/CODESYS%20Development%20System/_cds_pragma_attribute_instance_path.html
Last updated: 2024-09-30

Post by timvh on how to extract the name of an FB to a variable CODESYS Forge talk (Post)
https://content.helpme-codesys.com/en/CODESYS%20Development%20System/_cds_pragma_attribute_instance_path.html
Last updated: 2024-10-01

<< < 1 .. 55 56 57 58 59 .. 123 > >> (Page 57 of 123)

Showing results of 3074

Sort by relevance or date