====== Examples ======
===== Modbus TCP Client Using CloudAccess =====
{{:en:mervis-scada:70-generator:modbus_excel.png?direct&800|}}
* A well formatted mapping file needs to be created
* Download example: {{ :en:mervis-scada:70-generator:ca_modbus.xlsx |}}
* **Important**
* Use unique GUIDs
* Online generator: https://guidgenerator.com/online-guid-generator.aspx
* Do NOT use public IP address for communication. Use [[en:mervis-cloudaccess:|CloudAccess]] instead
* Go to https://generator.mervis.info, select mapping file and paste parameters (or select .txt file)
* **Important**
* Use unique GUID for a new project
* Use correct Mervis DB info
* Working DB URL
* User name, password
* Unique "Root" key for each project
==== Modbus ====
=== Supported data types ===
| Bit |
| UInt8 |
| SInt8 |
| UInt16 |
| SInt16 |
| UInt32 |
| SInt32 |
| Float32 |
| Float64 |
| SInt48 |
| UInt48 |
| SInt64 |
| UInt64 |
=== Supported Modbus functions ===
^ Function ^ Code ^
| ReadCoils | 1 |
| ReadDiscreteInputs | 2 |
| ReadHoldingRegister | 3 |
| ReadInputRegister | 4 |
^ Function ^ Code ^
| WriteSingleCoil | 5 |
| WriteMultipleCoils | 15 |
| WriteSingleRegister | 6 |
| WriteMultipleRegisters| 16 |
==== Generator Parameters ====
--sourceType MervisDb
--projId ecd6fa5d-78c1-4120-9b11-23521bee7688
--projName "AnyNameWouldDoModbus"
--projTimeZone "Europe/Prague"
--mdbConnStr "rcwaredb://uuuuuser:ppppasword@db.mervis.info:443/?protocol=https,endpoint=RcWareDbHttpsAccess,uriaccess=db/imports5/RcWareDbAccess"
--mdbDpNameKey {FixedName}
--mdbSourceKeys "(Root|ahoj|true)"
--mdbTreeLevelKeys Level1/Level2
--outputDirectory ecd6fa5d-78c1-4120-9b11-23521bee7688
--useDbV2
--mdbUnitKey Unit
--mdbExportOnlyIdKeys
--dbWriteModeOn
--dbWriteModeSamplingInterval 180
--dbEnableWriteFromDriver
--dbWriteModeDecimals 2
--notSortDataPoints
--dpVisualDecimals 2
--mdbReadGroupUpdateInterval 10
===== MervisDB project with Datapoint Transformations and Alarms =====
* A well formatted mapping file needs to be created
* Download example: {{ :en:mervis-scada:70-generator:mervisdb_example.xlsx |}}
* **Important**
* Use unique GUIDs
* Online generator: https://guidgenerator.com/online-guid-generator.aspx
* When you extend this example with a Driver and DriverChannelParameters, do NOT use public IP address for communication. Use [[en:mervis-cloudaccess:|CloudAccess]] instead
* Go to https://generator.mervis.info, select mapping file and paste parameters (or select .txt file)
* **Important**
* Use unique GUID for a new project
* Use correct Mervis DB info
* Working DB URL
* User name, password
* Unique "Root" key for each project
==== Generator Parameters ====
--sourceType MervisDb
--projId e519e6ab-3971-4504-ba2a-9db81c723c1e
--projName "ExampleMervisDb"
--projTimeZone "Europe/Prague"
--mdbConnStr "rcwaredb://uuuuuser:ppppasword@db.mervis.info:443/?protocol=https,endpoint=RcWareDbHttpsAccess,uriaccess=db/imports5/RcWareDbAccess"
--mdbDpNameKey {FixedName}
--mdbSourceKeys "(Root|ahoj|true)"
--mdbTreeLevelKeys Level1/Level2
--outputDirectory e519e6ab-3971-4504-ba2a-9db81c723c1e
--useDbV2
--mdbUnitKey Unit
--mdbExportOnlyIdKeys
--dbWriteModeOn
--dbEnableWriteFromDriver
--dbWriteModeDecimals 4
--dpVisualDecimals 3