Programm Modbus RTU Multi Reader - readme
== = = = = = = = = = = = = = = = = = = = =

Programm Modbus RTU Multi Reader - actual version MR12
= = = = = = = = = = = = = = = = = = = = = = = = = = = =
Date of last finalising : 2023-10-31

Preface :
=========

History of my Modbus Rtu Programs :

I have created more programms for solar inverters and at first for three black boxes,
at first it was programm Modbus RTU Reader for grid-tie inverter SUN-1000G
(from GWL deliver)
and second  Modbus Ansi Reader-Controler for inverter/charger PS 3KVA
(from the PS1-5KVA series like predecestors of Axpert Max from Voltronic)
and third ModbusRtuRW12 Reader and Writer for inverter/charger INVSOL01 
(from Green Cell series INVSOL01-04)

I have inform about actual version for Modbus30 Ansi (renamed later on ModbusAnsi10) on Github and on MyPower.

This readme is for Modbus RTU Reader and Writer - actual version is ModbusRtuRW12 .

At 27.10. 2023 					Pavel Oupicky

Short description of programm ModbusRtuMR12 Multi Reader  :
= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = 

Actual version of ModbusRtu programm : MR12
Date of last updating  : 30. 10. 2023

Programm was created in Delphi XE Starter 
and it is working under operating system Windows W7 till W10 32/64 bit .

Programm was created by Pavel Oupicky, rentier and home worker.

Programm in full version is distributed as licensed for end user.
   
Demo version of programm is distributed as freeware.
    There is blocked the comunication between PC and device.
    This version is suitable for preparing parameters for next full use.

Shareware version is limited in the data time interval to 1 sec 
    and 60 registrations of measured data.

Author takes no liability towards of any use of his programms.

Contact  on author : pavel.oupicky@seznam.cz

Default known problems in this program ModbusRtuRW12 :
= = = = = = = = = = = = = = = = = = = = = = = = = = =
- the program is the compilation of many of previous programs created by author,
- so some functions of his programs are inserted but are not ready for use.
- Window OS can open many of windows, but when is program running, it is not impossible use the mini- or maximalization of ones, 
  as the OS and Deplphi program cannot right open or closed them .. so if my programs are running do not use them ones,
  or runned programs and data will be lost.

Basic description of program :
= = = = = = = = = = = = = = = = 

Program was created for devices with communication protocol Modbus RTU
 and for communication between personal computers
 with connectors RS232, RS485 or USB and converters from USB to RS232 or RS485
 and devices like inverters SUN1000G or wattmeter SDM120M, for example.

When there is known Modbus Rtu protocol, it is possible to use next devices, too.

Description of basic buttons on home page in upper line:
= = = = = = = = = = = = = = = = = = = = = = = = = = = = =

About
- basic description of program

Memo
- memory for notes on PC

Help
- reads this similar file

Graphs
- first visualisation of parameters  for graphs

Data
- reads recorded data from pevious measurements

Hex counts
- some transfers between bits, bytes and hexbytes

End
- ends programm

Description of basic buttons on home page in bottom line:
= = = = = = = = = = = = = = = = = = = = = = = = = = = = = 

Parameters
- primary list of basic parameters for measurements, com, Rtu data, graph etc.

Com
- parameters for communication via com ports and MODBUS RTU commands
  and with the button for opening choosed port for next use in tests and measurements

Rtu
- list of  commands for measurement and suiteable tasks

Measure
- preparing and start for measurement processes

Menu
- when there are a data from measuremet, it is possible to see them 
  or get them into table or graph

Input Test
- basic test of Rtu RO commands

Rtu Test
- basic test of communication between PC and devices in Modbus RTU

Parameters for tests and measurement :
= = = = = = = = = = = = = = = = = = = =

- basic and driver parameters must be set before then the programm is started
  in files with parameters for com port, Rtu commands and suitable tasks.

- basic parameters must be set in file with extension .par in Par folder
- driver parameters for port - com  must be set in file with extension .com in Com folder
- Modbus Rtu  parameters for RO commands must be set in file with extension .rtu in Rtu folder
- task parameters must be set in the file with extensions .task in Task folder
- parameters for graphs are in the file with extension .grp in  Grp folder
- help  for program must be set in file with extension .txt  in the Help folder
- initialization file can be in the root folder with main program in file with extension .ini
  if it will be not ready for use, it will be created by program 
  or it can be set from program for used choosed parameters

Example of initialization file (.ini)
= = = = = = = = = = = = = = = = = = =

ModbusRtu/11/Inicialisation
Inicial file for program Modbus28
06.07.2023/17:12:14
User: shareware
Path:Par
File:ModbusRtu11-SDM230M-9600-basic.par
end

Example of basic parameters (.par file):
= = = = = = = = = = = = = = = = = = = = = 

ModbusRtuMR12/params
Measuring with system of SDM230M+SDM120M test
Test of program functions
Date:2023-09-09*10:22
System:System-SDM,USB-RS485
Protocols:Rtu/Eastron V2.4
Com:ModbusRtuMR12-SDM120+230M-Com7-9600.com
Rtu:ModbusRtuMR12-SDM120+230M-RS485-01+02-9600-2x10-Inputs.rtu
Tasks:ModbusRtuMR12-SDM120+230M-2x10-Inputs.task
Measured interval:0
Data:Data
Help:Help\ModbusRtuMR12-help.txt
Graf-par:Grp\Grf-Modbus-SystemSDM.grp
end


Example of file for com port (.com file):
= = = = = = = = = = = = = = = = = = = = = 

ModbusRtuMR/12/params
Parameters for communication with SDM System SDM120+230M via port Com7
17.08.2023*8:47:45
Device:SDM120+230M,RS485
Port:Com,7,9600,8,1,0
Timing:Timer=10,Sleep=10,Wait=200,Timeout=5
end

Parameters for Modbus Rtu (.rtu file) with inputs commands (RO) example :
= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =

ModbusRtuMR12/params
Parameters for measurig with SDM230M and SDM120M via RS485 by Modbus Rtu
29.10.2023*12:47:45
Protocol:Rtu
Description:Protocol Modbus V2.4 of Eastron for SDM230 and 120M
System:SystemSDM,USB-RS485
Devices:SDM120MCT/01+SDM230M/02
Commands:20
1:0x01,0x04,0x00,0x00,0x00,0x02/4,0,999.99,1.0/V-01,Volts
2:0x01,0x04,0x00,0x06,0x00,0x02/4,0,99.999,1.0/A-01,Ampers
3:0x01,0x04,0x00,0x0C,0x00,0x02/4,0,999.99,1.0/W-01,Watts
4:0x01,0x04,0x00,0x12,0x00,0x02/4,0,999.99,1.0/VA-01,Voltampers
5:0x01,0x04,0x00,0x18,0x00,0x02/4,0,999.99,0.1/VAr-01,Voltamper r
6:0x01,0x04,0x00,0x1E,0x00,0x02/4,0,999.99,1.0/au-01,Power Factor
7:0x01,0x04,0x00,0x24,0x00,0x02/4,0,999.99,1.0/Deg-01,Degree
8:0x01,0x04,0x00,0x46,0x00,0x02/4,0,99.999,1.0/Hz-01,Frekvence
9:0x01,0x04,0x00,0x48,0x00,0x02/4,0,99.999,1.0/kWh-01,Import Active Energy
10:0x01,0x04,0x00,0x4A,0x00,0x02/4,0,99.999,1.0/kWh-01,Export Active Energy
11:0x02,0x04,0x00,0x00,0x00,0x02/4,0,999.99,1.0/V-02,Volts
12:0x02,0x04,0x00,0x06,0x00,0x02/4,0,99.999,1.0/A-02,Ampers
13:0x02,0x04,0x00,0x0C,0x00,0x02/4,0,999.99,1.0/W-02,Watts
14:0x02,0x04,0x00,0x12,0x00,0x02/4,0,999.99,1.0/VA-02,Voltampers
15:0x02,0x04,0x00,0x18,0x00,0x02/4,0,999.99,0.1/VAr-02,Voltamper r
16:0x02,0x04,0x00,0x1E,0x00,0x02/4,0,999.99,1.0/au-02,Power Factor
17:0x02,0x04,0x00,0x24,0x00,0x02/4,0,999.99,1.0/Deg-02,Degree
18:0x02,0x04,0x00,0x46,0x00,0x02/4,0,99.999,1.0/Hz-02,Frekvence
19:0x02,0x04,0x00,0x48,0x00,0x02/4,0,99.999,1.0/kWh-02,Import Active Energy
20:0x02,0x04,0x00,0x4A,0x00,0x02/4,0,99.999,1.0/kWh-02,Export Active Energy
end


Example of file for tasks (.task file):
= = = = = = = = = = = = = = = = = = = = =

ModbusRtuMR12/tasks
Tasks for wattmeterers SDM120+230M basic
Date:2023-10-30*10:22
Devices:SDM120+230M
Protocol:Rtu/Eastron
VAW:1,2,3,4,11,12,13,14,end
WVArkWh:3,4,5,9,10,end
kWh:9,10,11,12,13,14,end
Params:15,19,20,end
Port:17,18,16,end
end

Example of file for graphs (.grp file):
= = = = = = = = = = = = = = = = = = = = = 

ModbusRW/parameters/graphs
Graph:ModbusRtu - test
28.6.2023/21:25:21
0*1*5*min*Axe of time for graph
0*1*5*2*min*Axe of time for measuring
0*50*250*a.u.*Axe of intensity for graph
0*50*250*a.u.*Axe of intensity for measuring - basic
0*10*50*a.u.*Axe of intensity for measuring - user
1*1*.point for data on x and y
1*0*rastr x and rastr y , 0 = no rastr
Color of line*type of line*width of line from 0 to 8 works
clBlue*psSolid*3
clGreen*psSolid*2
clRed*psSolid*1
clBlack*psDot*0
clLima*psDash*2
clFuchsia*psDashDot*1
clAqua*psDashDotDot*2
clPurple*psSolid*0
end




