====== Příklady ====== ===== Modbus TCP klient pomocí CloudAccess ===== {{:en:mervis-scada:70-generator:modbus_excel.png?direct&800|}} * Je potřeba vytvořit správně naformátovaný soubor s mapováním. * Stáhnout příklad: {{ :en:mervis-scada:70-generator:ca_modbus.xlsx |}} * **Důležité** * Používejte unikátní GUID. * Online generátor: https://guidgenerator.com/online-guid-generator.aspx * Když rozšiřujete tento příklad o Driver a DriverChannelParameters, nepoužívejte veřejnou IP adresu pro komunikaci. Místo toho použijte službu [[cs:mervis-cloudaccess:|CloudAccess]]. * Přejděte na https://generator.mervis.info, vyberte mapovací soubor a vložte parametry (nebo vyberte .txt soubor). * **Důležité** * Pro nový projekt použijte unikátní GUID. * Použijte správné informace k Mervis DB: * Funkční URL databáze * Uživatelské jméno a heslo * Unikátní klíč „Root“ pro každý projekt ==== Modbus ==== === Podporované datové typy === | Bit | | UInt8 | | SInt8 | | UInt16 | | SInt16 | | UInt32 | | SInt32 | | Float32 | | Float64 | | SInt48 | | UInt48 | | SInt64 | | UInt64 | === Podporované Modbus funkce === ^ Funkce ^ Kód ^ | ReadCoils | 1 | | ReadDiscreteInputs | 2 | | ReadHoldingRegister | 3 | | ReadInputRegister | 4 | ^ Funkce ^ Kód ^ | WriteSingleCoil | 5 | | WriteMultipleCoils | 15 | | WriteSingleRegister | 6 | | WriteMultipleRegisters | 16 | ==== Parametry generátoru ==== --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 ===== Projekt MervisDB s Datapoint Transformacemi a Alarmy ===== * Je potřeba vytvořit správně naformátovaný soubor s mapováním. * Stáhnout příklad: {{ :en:mervis-scada:70-generator:mervisdb_example.xlsx |}} * **Důležité** * Používejte unikátní GUID. * Online generátor: https://guidgenerator.com/online-guid-generator.aspx * Nepoužívejte veřejnou IP adresu pro komunikaci. Místo toho použijte službu [[cs:mervis-cloudaccess:|CloudAccess]]. * Přejděte na https://generator.mervis.info, vyberte mapovací soubor a vložte parametry (nebo vyberte .txt soubor). * **Důležité** * Pro nový projekt použijte unikátní GUID. * Použijte správné informace k Mervis DB: * Funkční URL databáze * Uživatelské jméno a heslo * Unikátní klíč „Root“ pro každý projekt ==== Parametry generátoru ==== --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 ===== SSCP klient s komunikací PLC ===== * Je potřeba vytvořit správně naformátovaný soubor s mapováním. * Stáhnout příklad: {{ :en:mervis-scada:70-generator:sscp_plc_example.xlsx |}} * **Důležité** * Používejte unikátní GUID. * Online generátor: https://guidgenerator.com/online-guid-generator.aspx * Přejděte na https://generator.mervis.info, vyberte mapovací soubor a vložte parametry (nebo vyberte .txt soubor). * **Důležité** * Pro nový projekt použijte unikátní GUID. * Použijte správné informace k Mervis DB: * Funkční URL databáze * Uživatelské jméno a heslo * Unikátní klíč „Root“ pro každý projekt ==== SSCP ==== Informace týkající se definování sloupců ovladače SSCP v mapovacím souboru: [[https://kb.mervis.info/doku.php/cs:mervis-scada:70-generator:20-help?tns#sloupce_pro_sscp_driver_pouziva_se_s_driversscp|Sloupce pro SSCP driver (používá se s Driver: SSCP)]] ==== Parametry generátoru ==== --sourceType MervisDb --projId ed18bc18-972a-457a-bc4b-fa96f3a14fb9 --projName "ExampleSSCP" --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)" # Je nepoužitý --mdbTreeLevelKeys Level1/Level2 --outputDirectory ed18bc18-972a-457a-bc4b-fa96f3a14fb9 --useDbV2 --mdbUnitKey Unit --mdbExportOnlyIdKeys --dbWriteModeOn --dbEnableWriteFromDriver --dbWriteModeDecimals 4 --dpVisualDecimals 3 ===== Klient s komunikací PLC přes Proxy s využitím metadat ===== * Project Generator se připojuje k PLC přes proxy. Projekt je generován pomocí metadat stažených z PLC. * Přejděte na https://generator.mervis.info, vložte parametry (nebo vyberte .txt soubor). * **Důležité** * Pro nový projekt použijte unikátní GUID. ==== Parametry generátoru ==== --sourceType SharkPlc --projId f6f6cfdd-7b7e-4fef-94ad-1cc573c4919f --projName "ExamplePLC" --projTimeZone Europe/Prague --connectionType Proxy --proxyId iiiiiii --host proxy.mervis.info --port 12349 --ssl true --plcUser uuuuuuu --plcPassword ppppppp --mdbDpNameKey {VariableName} --mdbUnitKey Unit --outputDirectory f6f6cfdd-7b7e-4fef-94ad-1cc573c4919f ===== Amit WebSocket - integrace ===== * Po možnosti využívat DB-net prostřednictvím Mervis služby [[cs:mervis-proxy:db-net|Amit Proxy]] nabízí Amit v nejnovějších regulátorech přímo nativní podporu technologie [[cs:mervis-cloudaccess:00-start#amit_-_websocket_komunikace|Mervis CloudAccess]] a svého **WebSocket** protokolu. * **Mervis SCADA projekt** se generuje pouze pomocí excelového mapovacího ''XLSX'' souboru, který musí obsahovat všechny potřebné údaje pro vytvoření všech datových bodů * **Mapovací soubor** si lze nechat připravit pomocnou aplikací ''AmitWebSocketUtil.exe'' přímo z projektu, který je nahraný do PLC * Ukázkový mapovací soubor ke stažení: [[https://drive.google.com/open?id=1090Oc1m3f8P97I7t-ls9uPD-w7iagSHc&usp=drive_fs|mapping-amit.xlsx]] * **Postup** * Nastavte si v PLC komunikaci na CloudAccess server: [[cs:mervis-cloudaccess:00-start#amit_-_websocket_komunikace|DetStudio - nastavení CloudAccess]] * Vygenerujte si podle příkladu níže CSV soubor a uložte ho jako XLSX * Soubor volitelně upravte podle vlastní potřeby * Přejděte na https://generator.mervis.info, vložte parametry (nebo vyberte .txt soubor) a zvolte svůj XLSX mapovací soubor ==== AmitWebSocketUtil ==== * Download: [[https://drive.google.com/open?id=1090Oc1m3f8P97I7t-ls9uPD-w7iagSHc&usp=drive_fs|AmitWebSocketUtil.exe a mapping-amit.xlsx]] .\AmitWebSocketUtil.exe ^ --host cloudaccess.mervis.info ^ --port 23000 ^ --use-cloud-access true ^ --ca-channel iiiii^ --ca-user uuuuu ^ --ca-password ppppp ^ --output-file amit_websocket_variables.csv ^ --hash-string AmitWSTest ^ --comm-params "{\"host\": \"cloudaccess.mervis.info\", \"port\": 80, \"useCloudAccess\": \"true\", \"cloudAccess\": {\"host\": \"cloudaccess.mervis.info\", \"port\": 23000, \"ssl\": \"true\", \"channelId\": \"iiiii\", \"user\": \"uuuuu\", \"password\": \"ppppp\"}" ==== Parametry generátoru ==== * použijte náhodně vygenerované Project ID (generátor: https://guidgenerator.com/online-guid-generator.aspx) * zadejte platné ChannelID, username a password pro připojení ke CloudAccess službě * zadejte správné jméno a heslo pro Mervis DB --sourceType MervisDb --projId f481fd8d-fb10-443f-9747-62458e42aaa --projName "amit-ws-test" --projTimeZone "Europe/Prague" --mdbConnStr "rcwaredb://amit_ws_example:amit_password@db.mervis.info:443/?protocol=https,endpoint=RcWareDbHttpsAccess,uriaccess=db/imports4/RcWareDbAccess" --mdbDpNameKey {FixedName} --mdbSourceKeys "(Foo|bar|false)" --mdbTreeLevelKeys {FixedLevel1} --mdbExportOnlyIdKeys --outputDirectory f481fd8d-fb10-443f-9747-62458e424aaa --useDbV2 --mdbCommErrorIntervalMultiple 2000 --dbWriteModeOn --dbWriteModeSamplingInterval 180 --dbWriteModeDecimals 2