Network variables not working in some of the downloads of the application
CODESYS Forge
talk
(Thread)
Network variables not working in some of the downloads of the application
Last updated: 2020-03-19
CmpIecVarAccess to get name of a type, not of a variable (instance)
CODESYS Forge
talk
(Thread)
CmpIecVarAccess to get name of a type, not of a variable (instance)
Last updated: 2016-06-08
What is the meaning of colored symbols leftside of each device ?
CODESYS Forge
talk
(Thread)
What is the meaning of colored symbols leftside of each device ?
Last updated: 2020-03-31
call of a method of a function block in another program
CODESYS Forge
talk
(Thread)
call of a method of a function block in another program
Last updated: 2024-06-03
call of a method of a function block in another program
CODESYS Forge
talk
(Thread)
call of a method of a function block in another program
Last updated: 2024-06-03
Post by paro on Modbus Client Request Not Processed
CODESYS Forge
talk
(Post)
Hi, works in my case if I increase the timeout! to_udint(t#100ms) -> 100 -> 100us.. FUNCTION_BLOCK MODBUS_master_example_ST VAR initDone : BOOL := FALSE; aIPAddress : ARRAY [0..3] OF BYTE := [127,0,0,1]; clientTcp: ModbusFB.ClientTcp; // buffer to read input registers aDataInputRegisters : ARRAY[0..9] OF UINT; // some client requests clientRequestReadInputRegisters: ModbusFB.ClientRequestReadInputRegisters; xExecute: BOOL; uistart: UINT := 100; udiTimeout1: UDINT; END_VAR IF NOT initDone THEN initDone := TRUE; // configure clientTcp clientTcp(aIPaddr:=aIPAddress, uiPort:=502, udiLogOptions := ModbusFB.LoggingOptions.All); // configure clientRequestReadInputRegisters clientRequestReadInputRegisters(rClient:=clientTcp, uiUnitId:=1, udiTimeout:=1000000); // 1sec END_IF // call the client FB's clientTcp(); clientRequestReadInputRegisters(rClient:=clientTcp,xExecute := xExecute AND NOT clientRequestReadInputRegisters.xBusy ,uiStartItem:=uistart, uiQuantity:=3, pData:=ADR(aDataInputRegisters[0]));
Last updated: 2024-05-30
Post by zer0g on Modbus Client Request Not Processed
CODESYS Forge
talk
(Post)
I'm using the code bellow which is based on the Codesys example: FUNCTION_BLOCK MODBUS_master_example_ST VAR initDone : BOOL := FALSE; aIPAddress : ARRAY [0..3] OF BYTE := [127,0,0,1]; clientTcp: ModbusFB.ClientTcp; // buffer to read input registers aDataInputRegisters : ARRAY[0..9] OF UINT; // some client requests clientRequestReadInputRegisters: ModbusFB.ClientRequestReadInputRegisters; xExecute: BOOL; END_VAR IF NOT initDone THEN initDone := TRUE; // configure clientTcp clientTcp(aIPaddr:=aIPAddress, uiPort:=502, udiLogOptions := ModbusFB.LoggingOptions.All); // configure clientRequestReadInputRegisters clientRequestReadInputRegisters(rClient:=clientTcp, uiUnitId:=1, udiTimeout:=TO_UDINT(T#1000MS)); END_IF // call the client FB's clientTcp(); clientRequestReadInputRegisters(rClient:=clientTcp,xExecute := xExecute AND NOT clientRequestReadInputRegisters.xBusy ,uiStartItem:=2, uiQuantity:=3, pData:=ADR(aDataInputRegisters[0])); As you can see the clientTCP is called cyclically with the same result.
Last updated: 2024-05-30
Post by dkugler on Webvisu client connection monitoring
CODESYS Forge
talk
(Post)
you can give this code snippet a try. It's extracted and simplyfied from my code: Install VisuElemBase lib if not installed yet. Execute in visu task: VAR pClientData : ARRAY [-1..100] OF POINTER TO VisuElemBase.VisuStructClientData; END_VAR VisuElemBase.g_ClientManager.BeginIteration(); pClientData := VisuElemBase.g_ClientManager.GetNextClient(); WHILE pClientData <> 0 DO pClientData[pClientData^.GlobalData.GlobalClientID] := pClientData; END_WHILE You have to make shure every no longer updated pointers in the array have to be deleted and no longer used by your code! Usage of this pointer access at your own risk :-) Works with SP16. From SP17 and newer there will be warnigs etc. using this solution as I remember. It will be great, if Codesys publishes a example or give a hint how to accesse this client values with the VisuUtil lib or other future-proof way!
Last updated: 2024-09-09
Get the numer of day
CODESYS Forge
talk
(Thread)
Get the numer of day
Last updated: 2023-09-14
Get Version of Installed Package
CODESYS Forge
talk
(Thread)
Get Version of Installed Package
Last updated: 2019-03-08
Issues of Large Ethernet IP project
CODESYS Forge
talk
(Thread)
Issues of Large Ethernet IP project
Last updated: 2022-02-01
Use of the CPLCHandlerCallback
CODESYS Forge
talk
(Thread)
Use of the CPLCHandlerCallback
Last updated: 2012-02-06
Dinamic assignement of a variable
CODESYS Forge
talk
(Thread)
Dinamic assignement of a variable
Last updated: 2016-06-28
Maintenance of the forum
CODESYS Forge
talk
(Thread)
Maintenance of the forum
Last updated: 2010-07-09
configuration of alarm table
CODESYS Forge
talk
(Thread)
configuration of alarm table
Last updated: 2007-06-18
Scan the bit of WORD variable
CODESYS Forge
talk
(Thread)
Scan the bit of WORD variable
Last updated: 2018-01-29
Retrigger Execution of Initialization Slots
CODESYS Forge
talk
(Thread)
Retrigger Execution of Initialization Slots
Last updated: 2021-11-13
Offline conversion of alarm storage file
CODESYS Forge
talk
(Thread)
Offline conversion of alarm storage file
Last updated: 2016-12-12
Use of user and password
CODESYS Forge
talk
(Thread)
Use of user and password
Last updated: 2020-07-02
Problem with database of amlarm
CODESYS Forge
talk
(Thread)
Problem with database of amlarm
Last updated: 2020-11-16
Simulation of a program
CODESYS Forge
talk
(Thread)
Simulation of a program
Last updated: 2019-10-07
Read/Write access of Axis parameters
CODESYS Forge
talk
(Thread)
Read/Write access of Axis parameters
Last updated: 2018-09-27
Out Of Bounds memory access
CODESYS Forge
talk
(Thread)
Out Of Bounds memory access
Last updated: 2022-04-07
Runtime enable update of ip-address
CODESYS Forge
talk
(Thread)
Runtime enable update of ip-address
Last updated: 2022-06-06
Rounded look of common controls, visu
CODESYS Forge
talk
(Thread)
Rounded look of common controls, visu
Last updated: 2012-03-07
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
.