Programm Modbus RTU SPM Reader and Writer - readme
== = = = = = = = = = = = = = = = = = = = = = = = =

Programm ModbusRtuSpm Reader and Writer - actual version 10
= = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
Date of last finalising : 2023-12-03

Preface :
=========

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 in the third ModbusRtuSpm Reader and Writer for inverter/charger INVSOL01 
(from Green Cell series INVSOL01-04)
This program is bringing many improovements and it is specialised for inverters
from Green Cell and MUST with Modbus Rtu protocol 1.04.14 or 1.04.15 .

I have inform about actual version for ModbusRtuSpm10 on Github and on MyPower.

This readme is for Modbus RTU Spm Reader and Writer - actual version is ModbusRtuSpm10 .

At 3.12.2023 					Pavel Oupicky

Short description of programm ModbusRtuSpm10 Reader and Writer :
= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =

Actual version of programm : 10
Date of last updating  : 3. 12. 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 are blocked the write functions and direct measuring into graph.
    There is posible to record data till 50 ones.
    This version is suitable for reading and preparing parameters for next full use.

These verision like demo one, where are all written functions opened, is distributed as shareware.
    There is posible to record data till 100 ones.

Author takes no liability towards of any use of his programms.

Contact  on author : pavel.oupicky@seznam.cz

Default known problems in this program ModbusRtuSpm10 :
= = = = = = = = = = = = = = = = = = = = = = = = = = =
- 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 this 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 program and data will be lost.

Basic description of program ModbusRtuSpm10 :
= = = = = = = = = = = = = = = = = = = = = = =

Program was created for devices with communication protocol Modbus RTU
 and for communication between personal computers
 with connectors RS232 or USB converters to RS232 or RS485
 and devices like inverters INVSOL01 from Green Cell, for example.

This program was tested on Green Cell inverter/charger INVSOL01 by OS W10 32bit .

When the inverter use  Modbus Rtu protocol 1.04.14 or 1.04.15, 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

Menu
- when there are a data from measuremet, it is possible to see them 
  or get them into tables or graphs

Data
- reads recorded data from převious measurements

Rtu Test
- basic test of communication between PC and device in Modbus RTU

Hex counts
- some transfers between bits, bytes and hexbytes

End
- ends programm

Description ob basic buttons on home page in bottom line:
= = = = = = = = = = = = = = = = = = = = = = = = = = = = = 

Parameters
- primary basic parameters for measurements, data, graph etc.

Com
- parameters for communication via com ports and MODBUS RTU commands

Rtu
- list of  modbus commands for measurement and prepared tasks for measurement.

Inputs
- list of  modbus commands with possibility of simply reading.

Measure
- start for measurement process and recording of data in max nr. 8 outputs.

INV RO
 - window for reading and listing of data from all readable commands

INV RW
 - window for reading and writing most of writeable commands of inverter

Charger
 - window for reading and writing most of writeable commands of charger

Rtu set
- work with basic read and write commands


Parameters for tests and measurement :
= = = = = = = = = = = = = = = = = = = =

- basic and driver parameters must be set before then the programm is started

- basic parameters must be set in file with extension .par in Par folder
- driver (port - com) parameters must be set in file with extension .com in Com folder
- Modbus Rtu  parameters for RO and RW 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 is in the root and with extension .ini

Example of initialization file (.ini)
= = = = = = = = = = = = = = = = = = =

ModbusRtuSpm10/Inicialisation
Inicial file for program ModbusRtuSpm
26.11.2023/17:12:14
User: shareware (or demo or licensed)
Path:Par
File:ModbusRtu11-SDM230M-9600-basic.par
end

Example of basic parameters (.par file):
= = = = = = = = = = = = = = = = = = = = = 

ModbusRtuSpm10/params
Measuring with wattmeter SDM120M
Test of inverter Green Cell INVSOL01
Date:2023-11-26*10:22
Device:INVSOL01,RS485,04
Protocol:Rtu/MUST 1.04.15
Com:ModbusRtuSpm10-INVSOL01-USB-Com5-04-19200.com
Rtu:ModbusRtuSpm10-INVSOL01-commands-INV+CH-all.rtu
Tasks:ModbusRtuSpm10-INVSOL01-basic.task
Measured interval:0 (or 1 till integer range)
Data:Data
Help:Help\ModbusRtuSpm10-help.txt
Graf-par:Grp\Grf-Modbus-basic-en.grp
end

Example of file for com port (.com file):
= = = = = = = = = = = = = = = = = = = = = 

ModbusRtu/14/params
Parameters for communication with INVSOL01 via port Com5
17.10.2023*8:47:45
Device:INVSOL01,USB
Port:Com,5,19200,8,1,0
Timing:Timer=10,Sleep=10,Wait=200,Timeout=20
end


Parameters for Modbus Rtu (.rtu file) with RO and RW commands ( example ):
= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =

ModbusRtuSph10/params
Parameters for transfer data from inverter INVSOL01 via Modbus line
17.11.2023*8:47:45
Protocol:Rtu
Description:Protocol Modbus RTU 1.04.15 for MUST
Device:INVSOL01,USB
Commands:163,10001-25279
001:10001:0x03,0x27,0x11,0x00,0x01/1,0,99999,1.0/Nr,The type of machine,RO PC1600
002:10002:0x03,0x27,0x12,0x00,0x01/1,0,99999,1.0/Nr,Serial number High,RW 
003:10003:0x03,0x27,0x13,0x00,0x01/1,0,99999,1.0/Nr,Serial number Low,RW' 
004:10004:0x03,0x27,0x14,0x00,0x01/1,0,99999,1.0/Nr,Hardware version,RO 1.0.00
005:10005:0x03,0x27,0x15,0x00,0x01/1,0,99999,1.0/Nr,Software version,RO 1.0.00
. . . . . . . . 
158:25274:0x03,0x62,0xBA,0x00,0x01/1,0,99999,1.0/A,Batt current,RO A;
159:25275:0x03,0x62,0xBB,0x00,0x01/1,0,99999,1.0/V,Batt voltage grade,RO 48:48V 24:24V 12:12V;
160:25276:0x03,0x62,0xBC,0x00,0x01/1,0,99999,1.0/Nr,reserved, ;
161:25277:0x03,0x62,0xBD,0x00,0x01/1,0,99999,1.0/W,Rated power,RO W;
162:25278:0x03,0x62,0xBE,0x00,0x01/1,0,99999,1.0/Nr,Communication Protocal Edition,RO 1.00.00; 1.04.15;
163:25279:0x03,0x62,0xBF,0x00,0x01/1,0,99999,1.0/Nr,Arrow Flag,RO bits;Refer to the frame Arrow Flag bits
end

Example of file for tasks (.task file):
= = = = = = = = = = = = = = = = = = = = = 

ModbusRtuR10/tasks
Tasks for inverter INVSOL01 basic
Date:2023-10-23*10:22
Device:INVSOL01
Protocol:Rtu/MUST 1.04.15
PV Charger:31,32,33,end
PV Batt:11,12,15,end
Grid+Load:91,95,98,102,92,96,99,103,end
Temperatures:35,36,117,119,end
Grid+Inverter:90,94,97,101,91,95,98,102,end
Inverter+Load:90,94,97,101,92,96,99,103,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
Axes-Time
0*0.2*2*min*
0*0.5*3*min*
0*0.5*5*min*
0*2*5*min
0*2*10*min
0*5*6*min
0*5*10*min*
end
Axes-Y
0*0.2*1*A*
0*1*5*A*
0*2*10*A*
0*5*40*V*
0*50*250*V*
end




