====== Nápověda pro Project Generator ======
===== Použití generator.mervis.info =====
Na stránce [[https://generator.mervis.info]] lze vygenerovat Mervis SCADA projekt podle zadaných parametrů a volitelně s využitím mapovacího souboru ve formátu ''XLSX''.
Parametry lze definovat jako jednotlivé hodnoty v textovém poli, nebo mohou být uloženy v textovém souboru (např. ''params.txt'') a vybrány z vašeho počítače.
Dále lze využít tzv. mapovací soubor ve formátu ''XLSX'', ve kterém mohou být definovány jednotlivé datové body. V tomto souboru je možné transformovat vstupní hodnoty (klíče a hodnoty) na nové, čímž lze vytvořit vlastní datovou strukturu pro výsledný projekt.
Níže jsou popsány jednotlivé dostupné možnosti. Na stránce [[cs:mervis-scada:70-generator:30-examples|]] jsou uvedeny konkrétní praktické příklady použití.
===== Nastavení =====
===== Konfigurace Projektu =====
==== Identita Projektu ====
=== Parametry ===
* ''%%--projId 5eee5946-293c-4753-9495-d6b11f73d670%%'' Jedinečný GUID jako identifikátor projektu
* ''%%--projName ExampleProject%%'' Srozumitelný název projektu
* ''%%--projTimeZone Europe/Prague%%'' Časové pásmo projektu
==== Konfigurace Výstupu ====
=== Parametry ===
* ''%%--outputDirectory 5eee5946-293c-4753-9495-d6b11f73d670%%'' Adresář pro generované soubory
==== Mapovací soubor ====
=== Parametry ===
* ''%%--mdbKeyMappingTable [filepath]%%'' Excelový soubor s direktivami pro zpracování dat. Podporuje více cest k souborům oddělených čárkou.
==== Řízení časového razítka ====
=== Parametry ===
* ''%%--forceTimestamp [value]%%'' Vynutit konkrétní časové razítko pro všechny generované hodnoty (výchozí: min)
* Možnosti: ''%%'min'%%'' (0001-01-01T00:00:00), ''%%'current'%%'' (aktuální UTC), nebo explicitní ISO formát např. ''%%'2025-03-25T14:30:00.000'%%''
===== Konfigurace zdroje dat =====
==== Výběr typu zdroje ====
=== Parametry ===
* ''%%--sourceType [MervisDb|DataHub|SharkPlc]%%'' Určuje typ zdroje dat
==== Konfigurace MervisDb ====
=== Parametry ===
* ''%%--mdbConnStr [connection_string]%%'' Připojovací řetězec MervisDb – formát: ''%%rcwaredb://user_name:password@host:port/?protocol=http,endpoint=MervisDbAcces,uriaccess=MervisDbAcces%%''
* ''%%--mdbSourceKeys [keys]%%'' Páry klíč–hodnota, které se mají zahrnout do generování
* ''%%--mdbSourceKeysSkip [keys]%%'' Páry klíč–hodnota, které se mají z generování vynechat
==== Konfigurace Data Hubu ====
=== Parametry ===
* ''%%--pmUrl [url]%%'' URL správce projektu – formát: http://localhost:5123/
* ''%%--dataHubUrl [url]%%'' URL datového hubu – formát: http://localhost:5005/hub/data/
* ''%%--dataHubLogin [username]%%'' Uživatelské jméno pro přihlášení k Data Hubu
* ''%%--dataHubPass [password]%%'' Heslo k Data Hubu
* ''%%--dataNodeIds [ids]%%'' Konkrétní ID datových uzlů ke zpracování
* ''%%--dataHubUpdatePeriod [seconds]%%'' Interval aktualizace čtecí skupiny z Data Hubu v sekundách (výchozí: 2)
* ''%%--pmPropFilter [filter]%%'' Filtrování vlastností PM
==== Konfigurace SharkPLC ====
=== Parametry ===
* ''%%--connectionType [Tcp|Proxy|CloudAccess]%%'' Typ připojení k SharkPLC
* ''%%--host [hostname]%%'' Adresa hostitele SharkPLC
* ''%%--port [number]%%'' Port SharkPLC
* ''%%--ssl [true|false]%%'' Použít připojení TLS/SSL
* ''%%--validateCertificate [true|false]%%'' Ověřit SSL certifikáty
* ''%%--plcAddr [number]%%'' Adresa zařízení (výchozí: 1)
* ''%%--plcUser [username]%%'' Uživatelské jméno pro autentizaci PLC
* ''%%--plcPassword [password]%%'' Heslo pro autentizaci PLC
* ''%%--readTimeout [timespan]%%'' Časový limit pro čtecí operaci
* Používá se s typem připojení **Proxy**:
* ''%%--proxyId [id]%%'' Identifikátor proxy pro připojení přes proxy
* Používá se s typem připojení **CloudAccess**:
* ''%%--caChannelId [id]%%'' Identifikátor kanálu CloudAccess
* ''%%--caUser [username]%%'' Uživatelské jméno CloudAccess
* ''%%--caPassword [password]%%'' Heslo CloudAccess
===== Konfigurace zpracování dat =====
==== Filtrování podle časového rozsahu ====
=== Parametry ===
* ''%%--mdbFrom [ISO_datetime]%%'' Zahrnout pouze proměnné novější než zadaný čas
* ''%%--mdbTo [ISO_datetime]%%'' Zahrnout pouze proměnné starší než zadaný čas
==== Pojmenování datových bodů ====
=== Parametry ===
* ''%%--mdbDpNameKey [key_name]%%'' Klíč použitý pro názvy datových bodů
* Podporuje přímé názvy klíčů: ''%%Name%%''
* Podporuje seznam oddělený čárkami: ''%%Name,Description%%''
* Podporuje šablony: ''%%{Name}%%''
* Podporuje regulární výrazy: ''%%"{Name, '([^\:]):(.)', $2} ({Guid})"%%''
==== Hierarchická struktura ====
=== Parametry ===
* ''%%--mdbTreeLevelKeys [path]%%'' Klíče pro hierarchické uspořádání
* Příklad: ''%%Level1/Level2/Level3%%''
* Podporuje syntaxi regulárních výrazů na každé úrovni
* Viz také ''%%--mdbDpNameKey%%'' pro použití šablon
==== Řazení a uspořádání ====
=== Parametry ===
* ''%%--sortBy [keys]%%'' Řadit datové body podle zadaných klíčů (příklad: ''%%"Level1,Level2,myLevel3,Name"%%'')
* ''%%--notSortDataPoints [true|false]%%'' Zakázat abecední řazení datových bodů (výchozí: false)
* ''%%--keepEmptyFolders [true|false]%%'' Zachovat prázdné skupiny ve výstupu (výchozí: false)
==== Filtrování dat ====
=== Parametry ===
* ''%%--mdbExportOnlyIdKeys [true|false]%%'' Exportovat pouze ID klíče jako parametry ovladače (výchozí: false)
==== Komunikace ====
=== Parametry ===
* ''%%--driverDataUpdatePeriod [milliseconds]%%'' Interval aktualizace čtení proměnných z ovladače (výchozí: 100)
* ''%%--dataHubTimestampValidityLimit [timespan]%%'' Limit platnosti časového razítka. Při překročení limitu je vyvolána chyba komunikace. (výchozí: žádný), (příklad: ''P1DT4H30M'')
* ''%%--mdbUrl [url]%%'' Volitelné. Vynutit, aby URL databáze v datovém souboru byla nahrazena touto hodnotou
==== Desetinná místa ====
=== Parametry ===
* ''%%--dpVisualDecimals 3%%'' nastavení počtu desetinných míst pro všechny numerické datové body
=== Mapovací soubor ===
* **SetTransformation** {"type":"linear","unit":"°C","decimalPlaces":1,"params":{"k":0.1, "q":0}}
definuje počet desetinných míst pro konkrétní datový bod
==== Jednotky ====
=== Parametry ===
* ''%%--mdbUnitKey FixedUnit%%'' určuje klíč použitý pro nastavení jednotky
=== Mapovací soubor ===
* **SetTransformation** {"type":"linear","unit":"°C","decimalPlaces":1,"params":{"k":0.1, "q":0}}
definuje jednotky pro konkrétní datový bod
==== Nastavení databáze ====
=== Parametry ===
* ''%%--dbWriteModeOn [true|false]%%'' Povolit režim zápisu při přístupu k databázi (výchozí: false)
* ''%%--dbWriteModeDecimals [number]%%'' Počet desetinných míst při zápisu do databáze (výchozí: 2)
* ''%%--dbWriteModeNoTriggers [true|false]%%'' Zakázat spouštěče při zápisu do databáze (výchozí: false)
* ''%%--dbWriteModeSamplingInterval [seconds]%%'' Interval vzorkování pro zápis do databáze
* ''%%--useDbV2 [true|false]%%'' Použít vlastnosti databáze verze 2 (výchozí: false)
* ''%%--dbEnableWriteFromDriver [true|false]%%'' Povolit zápis z ovladače MervisDb (výchozí: false)
* ''%%--dbUseSourcePropertyTimestampForSave [true|false]%%'' Při ukládání do DB použít časové razítko zdrojové vlastnosti (výchozí: false)
* ''%%--mdbDataSpecification [specification]%%'' Specifikace pro získávání dat (výchozí: MaxTimestamp)
* Možnosti: ''%%MinTimestamp%%'', ''%%MaxTimestamp%%'', ''%%FirstLessThanReferenceDateTime%%'', ''%%FirstLessThanOrEqualThanReferenceTime%%'', ''%%FirstGreaterThanReferenceDateTime%%'', ''%%FirstGreaterThanOrEqualThanReferenceTime%%'', ''%%MaxGoodThroughTime%%''
* ''%%--mdbDateTimeShift [timespan]%%'' Časový posun pro načítání dat (příklad: ''-PT1H30M'')
* ''%%--mdbWriteValueDbSaveInterval [timespan]%%'' Interval ukládání pro zápisové operace (výchozí: 1H, příklad: ''P1DT1H30M'')
* ''%%--mdbCommErrorIntervalMultiple [number]%%'' Chyba komunikace, pokud je poslední hodnota starší než zadaný násobek intervalu (0 = zakázáno)
====== Specifikace mapovacího souboru ======
==== Obecná specifikace záhlaví sloupců ====
=== Záhlaví pro zpracování datových bodů ===
* ''%%dataPointId%%'' – Explicitní GUID datového bodu
* Určuje pevný GUID pro datový bod
* Používá se pro explicitní definice datových bodů
* Musí být ve formátu platného GUID
* ''%%dataPointType%%'' – Základní typ datového bodu
* Určuje základní typ datového bodu
* Možnosti: ''%%DiscreteInput%%'', ''%%DiscreteOutput%%'', ''%%AnalogInput%%'', ''%%AnalogOutput%%'', ''%%StringInput%%'', ''%%StringOutput%%'', ''%%DateTimeInputOutput%%'', ''%%PlanningCalendarForBasicTpg%%'', ''%%BasicTpg%%'', ''%%AlarmPoint%%''
* ''%%dataPointSourceType%%'' – Vynucený typ zdrojových dat
* Přepisuje automatickou detekci typu
* Možnosti: ''%%Bool%%'', ''%%Int64%%'', ''%%Double%%'', ''%%String%%'', ''%%DateTime%%''
* ''%%getKey[index]%%'' – Definice klíče podmínky pro porovnání řádku
* Určuje, který klíč musí odpovídat, aby byl řádek aplikován
* Index umožňuje více klíčů podmínek (např. ''%%getKey1%%'', ''%%getKey2%%'')
* ''%%getValue[index]%%'' – Definice hodnoty podmínky pro porovnání řádku
* Určuje hodnotu, která musí odpovídat příslušnému getKey
* Podporuje regulární výrazy, pokud hodnota začíná znakem '^' nebo končí '$'
* Index odpovídá indexu klíče getKey
* ''%%setKey[index]%%'' – Nastavení nebo úprava názvu klíče
* Určuje, který klíč má být nastaven nebo upraven, pokud jsou splněny podmínky
* Index umožňuje více úprav klíčů na řádek
* ''%%setValue[index]%%'' – Nastavení nebo úprava hodnoty klíče
* Určuje hodnotu, která bude přiřazena příslušnému setKey
* Podporuje šablonové nahrazení pomocí syntaxe ''%%{keyname}%%''
* Index odpovídá indexu setKey
* ''%%setIsId[index]%%'' – Označení klíče jako identifikátoru
* Boolean hodnota (true/false nebo 1/0) určující, zda je klíč součástí unikátního identifikátoru
* Index odpovídá indexu setKey
* ''%%setTagKey[index]%%'' – Definice názvu tagu
* Určuje název tagu, který bude přidán k datovému bodu
* Index umožňuje více tagů na řádek
* ''%%setTagValue[index]%%'' – Definice hodnoty tagu
* Určuje hodnotu pro příslušný setTagKey
* Podporuje šablonové nahrazení pomocí syntaxe ''%%{keyname}%%''
* Index odpovídá indexu setTagKey
* ''%%setTagType[index]%%'' – Definice typu hodnoty tagu
* Určuje datový typ hodnoty tagu
* Možnosti: ''%%string%%'' (výchozí), ''%%bool%%'', ''%%number%%''
* Index odpovídá indexu setTagKey
* ''%%setTransformation%%'' – Aplikace transformace dat
* JSON specifikace pro transformace datových bodů
* Používá se pro mapování hodnot, škálování nebo jiné zpracování dat
* ''%%setMetadata%%'' – Alternativní název pro setTransformation
* Alias pro typ sloupce ''%%setTransformation%%''. Stejná funkcionalita a syntaxe jako setTransformation
* ''%%setAlarm%%'' – Konfigurace alarmu
* JSON specifikace pro nastavení alarmu
* Definuje podmínky, limity a chování alarmu
* ''%%[custom][index]%%'' – Sloupce generátoru dokumentace
* Jakýkoliv název sloupce, který neodpovídá výše uvedeným vzorům, se stává generátorem dokumentace
* Používá se pro vlastní nastavení vlastností a konfigurace
* Příklady: ''%%setProperties1%%'', ''%%Driver%%'', ''%%setCALayer%%''
=== Syntaxe šablonového nahrazení ===
* ''%%{keyname}%%'' – Nahrazuje se hodnotou zadaného klíče
* Podporuje vnořená nahrazení a složité výrazy
* Dostupné ve sloupcích setValue, setTagValue a generátorech dokumentace
* Klíče jsou vyhodnoceny z dvojic klíč-hodnota aktuálního řádku
=== Speciální funkce tagů ===
* ''%%*tagname%%'' – Předpona hvězdičky pro povolení duplicitních tagů
* Bez hvězdičky: uchovává se pouze poslední hodnota pro daný název tagu
* S hvězdičkou: povoluje více hodnot pro stejný název tagu
=== Sloupce generátoru dokumentace (vlastní dokumenty) ===
* ''%%setBlock%%'' – Konfigurace blokování pro datové body
* JSON formát pro funkční a alarmové blokování
* Parametry: ''%%kind (typ blokování)%%'', ''%%propRef%%'' (referenční vlastnost), ''%%propBlockValue%%'' (hodnota, která aktivuje blokování)
* Typy blokování: ''%%PermanentFunctionBlock%%'', ''%%PermanentAlarmBlock%%'', ''%%ConditionalFunctionBlock%%'', ''%%ConditionalAlarmBlock%%''
* ''%%setProperties%%'' – Definice vlastností datového bodu
* JSON formát pro nastavení vlastních vlastností datových bodů
* Podporované typy vlastností: ''%%ReferenceValueProperty%%'', ''%%DoubleValueProperty%%'', ''%%Int64ValueProperty%%'', ''%%BoolValueProperty%%'', ''%%StringValueProperty%%'', ''%%DateTimeValueProperty%%''
* Příklad: {properties: [{name:"PropName", type: "doubleValueProperty", value: "123.45", unit: "°C"}]}
* ''%%setGroupRights%%'' – Konfigurace přístupových práv
* JSON formát pro definici oprávnění uživatelů/skupin. Pokud je vyplněno, vytvoří se skupina pro daný datový bod a přiřadí se jí zadaná oprávnění. Pokud skupina již existuje, přidají se práva. Pokud má entita již práva, dojde k jejich rozšíření (nic se neodebírá).
* Možnosti:
- type: User/Group
- access: R/RA/RW
- R – pouze pro čtení
- RA – čtení a akce s alarmy
- RW – čtení/zápis
* Struktura: {group_name: "GroupName", rights: [{type: "Group", name: "GroupName", access: "rw"}]}
* ''%%Driver%%'' – Typ komunikačního driveru
* Určuje typ driveru pro komunikaci datového bodu
* Možnosti: ''%%SSCP%%'', ''%%MERVISDB%%'', ''%%MODBUS%%'', ''%%AMITWEBSOCKET%%'', ''%%INSPECTOR%%'', ''%%SOFTPLCLINK%%''
* Spouští nastavení specifická pro daný driver
* ''%%DriverChannelParameters%%'' – Parametry konfigurace driveru
* JSON konfigurace komunikačních parametrů driveru
* Obsahuje parametry připojení specifické pro daný driver (host, port, přihlašovací údaje atd.)
* Používá se ve spojení se sloupcem Driver
* Příklady podle typu driveru:
''%%SSCP%%'': {"pauseBetweenTelegrams": 2000,
"host": "localhost",
"port": 12346,
"user": "admin",
"password": "rw",
"proxyId": "PRX232232",
"ssl": false,
"slaveId": 0
}
''%%MervisDb%%'': {"pauseBetweenRequestCycles": "PT10S",
"writeValueDbSaveInterval": "PT1H",
"readRequestVariableCount": 1000,
"url": "http://localhost:9876/RcWareDbAccess",
"user": "rc_user",
"password": "rc_user",
"dataSpecification": 0,
"dateTimeShift": "PT15M"
}
''%%Modbus%%'': { "host": "localhost",
"port": 502,
"useCloudAccess": "true",
"cloudAccess":
{
"host": "cloudaccess.mervis.info",
"port": 23000,
"ssl": "true",
"channelId": "chxxxxxxx",
"user": "uxxxxxxxx",
"password": "pxxxxxxxx"
}
}
Pokud je specifikována část cloudAccess, bude použita pro komunikaci.
''%%AmitWebSocket%%'': {
"host": "amitws.mervis.info",
"port": 80,
"useCloudAccess": "false",
"cloudAccess":
{
"host": "cloudaccess.mervis.info",
"port": 23000,
"ssl": "true",
"channelId": "chxxxxxxx",
"user": "uxxxxxxxx",
"password": "pxxxxxxxx"
}
}
''%%SoftPlcLink%%'':
Bez CloudAccess:
{"host": "hostname",
"port": portnumber,
"user": "user",
"password": "password"}
S CloudAccess:
{"host": "localhost",
"port": portnumber,
"user": "user",
"password": "password",
"useCloudAccess": "true",
"cloudAccess": {"host": "host", "port": portnumber, "ssl": "true/false", "channelId": "channel", "user": "user", "password": "password"}}
=== Dokumenty pro plánovací kalendář ===
* ''%%setCALayer%%'' – Definice vrstvy plánovacího kalendáře
* JSON formát pro definici vrstev událostí kalendáře
* Vytváří vlastnost PlanningCalendarValueProperty s daty vrstvy událostí
* ''%%setCADefaultValue%%'' – Výchozí hodnota kalendáře
* Celé číslo určující výchozí stav plánovacího kalendáře
* Nastavuje výchozí hodnotu pro datové body kalendáře
* ''%%setCAEmailForNotifications%%'' – Nastavení e-mailových notifikací
* E-mailové adresy pro notifikace z kalendáře
* Nastavuje příjemce notifikací pro události
* ''%%setCANotificationBlacklist%%'' – Seznam vyloučení notifikací
* Seznam vyloučených e-mailových adres nebo podmínek
* Zabraňuje odesílání notifikací na zadané adresy
* ''%%setCASumLayer%%'' – Vrstva souhrnu kalendáře
* Podobné jako setCALayer, ale pro souhrnná/agregovaná data
* Vytváří souhrnnou vrstvu plánovacího kalendáře
* ''%%setCATPGDefinition%%'' – Definice TPG pro kalendář
* Definuje nastavení TPG (Time Profile Generator)
* Propojuje plánovací kalendář s komunikací PLC
* ''%%setCATPGSetup%%'' – Konfigurace TPG nastavení
* JSON formát parametrů TPG
* Zahrnuje položky, metadata, min/max hodnoty a typy
* Příklad struktury: {items: [...], max: 100, min: 0, type: "Planning", noExceptions: false}
* ''%%setCAType%%'' – Specifikace typu kalendáře
* Celé číslo určující typ chování kalendáře
* Určuje funkci plánování vs. blokování
==== Záhlaví specifická pro drivery ====
=== Sloupce pro Modbus driver (používá se s Driver: MODBUS) ===
* ''%%ModbusDeviceAddress%%'' – Adresa Modbus zařízení (hodnota v bajtech)
* ''%%ModbusReadFunctionCode%%'' – Čtecí funkční kód Modbus
* ''%%ModbusWriteFunctionCode%%'' – Zapisovací funkční kód Modbus
* ''%%ModbusStartingAddress%%'' – Počáteční adresa registru
* ''%%ModbusQuantity%%'' – Počet registrů ke čtení
* ''%%ModbusVariableType%%'' – Typ proměnné (Bit, UInt16, SInt16, Float32 atd.)
* ''%%ModbusByteOrder%%'' – Konfigurace pořadí bajtů
Viz stránka [[cs:mervis-scada:70-generator:30-examples|]] pro příklad se specifikací Modbus.
=== Sloupce pro SSCP driver (používá se s Driver: SSCP) ===
* ''%%SSCPCOMMUID%%'' – Komunikační UID (povinné)
* Nezáporné celé číslo (uint), identifikující komunikační prvek
* Používá se pro adresování konkrétních paměťových oblastí v PLC
* Musí být platná hodnota uint
* ''%%SSCPOFFSET%%'' – Offset v paměti (povinné)
* Nezáporné celé číslo (uint), určující bajtový posun v paměti PLC
* Výchozí pozice pro čtení/zápis dat
* Musí být platná hodnota uint
* ''%%SSCPLEN%%'' – Délka dat (povinné)
* Nezáporné celé číslo (uint), určující počet bajtů pro čtení/zápis
* Definuje velikost datového prvku
* Musí být platná hodnota uint
* ''%%SSCPELEMENTTYPE%%'' – Datový typ prvku (povinné)
* Enum hodnota určující způsob interpretace dat
* Možnosti: BYTE, WORD, DWORD, FLOAT, DOUBLE atd.
* Určuje způsob zpracování surových bajtů
* ''%%SSCPTIMEISSYSTEMRTC%%'' – Příznak systémového RTC (volitelné)
* Boolean hodnota (true/false)
* Pokud je true, používá se systémové RTC místo paměti PLC
* Používá se pro synchronizaci časových razítek
* Výchozí hodnota je false, pokud není zadána
* ''%%SSCPTPGSPECS%%'' – Specifikace TPG (volitelné)
* JSON formát pro nastavení Time Profile Generator
* Struktura: {ExceptionLength: int, ExceptionOffset: int, HasExceptions: bool, ItemType: enum}
* Používá se pro plánovací kalendář a řízení na základě času
* Při zpracování se vytváří objekt TpgV1_0Specs
=== Sloupce pro SoftPLC Link driver (používá se s Driver: SOFTPLCLINK) ===
* ''%%SPLCID%%'' – ID prvku SoftPLC (povinné)
* GUID identifikující konkrétní proměnnou v SoftPLC
* Musí být platný GUID
* Používá se pro adresování a identifikaci proměnných
* ''%%SPLCNAME%%'' – Název proměnné (povinné)
* Řetězec – název proměnné v SoftPLC
* Identifikátor datového prvku pro uživatele
* Používá se spolu s ID pro vyhledání proměnné
* ''%%SPLCDATETIMEISEPOCH%%'' – Příznak epochy pro DateTime (volitelné)
* Boolean hodnota (true/false)
* Pokud je true, DateTime hodnoty jsou ve formátu Unix epoch timestamp
* Pokud je false, používá se standardní formát DateTime
* Výchozí hodnota je false, pokud není specifikováno
=== Sloupce pro SCADA Inspector driver (používá se s Driver: INSPECTOR) ===
* ''%%INSPECTORTARGET%%'' – Cílový selektor (povinné)
* Enum hodnota určující typ kontrolovaného cíle
* Určuje, jak inspektor najde cíl ke sledování
* ''%%INSPECTORDATAID%%'' – Identifikátor dat (povinné)
* Řetězec identifikující konkrétní datový prvek ke kontrole
* Používá se pro přesné vyhledání datového bodu v cíli
* Musí odpovídat dostupným ID ve sledovaném systému
* ''%%INSPECTORDIRECTTARGET%%'' – Přímý odkaz na cíl (povinné)
* Řetězcový odkaz na konkrétní objekt cíle
* Používá se, pokud je INSPECTORTARGET nastaven na DirectTarget
* Mapuje se na existující instance driveru v projektu
=== Sloupce pro AMiT WebSocket driver (používá se s Driver: AMITWEBSOCKET) ===
* ''%%AMITWEBSOCKETVARIABLEID%%'' – Identifikátor proměnné (povinné)
* ID proměnné v systému AMiT
* Jedinečný identifikátor pro datový prvek
* Používá se pro adresování v komunikaci přes WebSocket
* ''%%AMITWEBSOCKETVARIABLETYPE%%'' – Typ proměnné (povinné)
* Enum hodnota určující typ proměnné v AMiT systému
* Možnosti: BOOL, INT, REAL, BYTE, WORD, DWORD atd.
* Určuje interpretaci datového typu a použitý komunikační protokol
* ''%%AMITWEBSOCKETVARIABLEMATRIXROW%%'' – Index řádku matice (volitelné)
* Celé číslo určující index řádku pro proměnné typu matice/pole
* Používá se pro přístup ke konkrétním prvkům v matici
* Výchozí hodnota je 0, pokud není zadáno
* ''%%AMITWEBSOCKETVARIABLEMATRIXCOL%%'' – Index sloupce matice (volitelné)
* Celé číslo určující index sloupce pro proměnné typu matice/pole
* Používá se pro přístup ke konkrétním prvkům v matici
* Výchozí hodnota je 0, pokud není zadáno
* ''%%AMITWEBSOCKETVARIABLETPGTYPE%%'' – Typ TPG (volitelné)
* Enum hodnota pro typ Time Profile Generator v AMiT
* Možnosti: BOOL, INT, REAL, BYTE, WORD, DWORD, UNKNOWN
* Používá se pro konfiguraci plánovacího kalendáře a řízení podle času
* Automaticky nastavuje TPG vlastnosti pro datové body typu BasicTpg
* ''%%AMITWEBSOCKETVARIABLETPGMIN%%'' – Minimální hodnota TPG (volitelné)
* Číselná hodnota určující minimální rozsah pro proměnné TPG
* Používá se s typem TPG pro validaci rozsahu
* Aplikuje se na jádra datových bodů typu BasicTpgInputOutput
* ''%%AMITWEBSOCKETVARIABLETPGMAX%%'' – Maximální hodnota TPG (volitelné)
* Číselná hodnota určující maximální rozsah pro proměnné TPG
* Používá se s typem TPG pro validaci rozsahu
* Aplikuje se na jádra datových bodů typu BasicTpgInputOutput
=== Poznámky k použití driverů ===
* Všechny sloupce specifické pro driver se používají ve spojení se sloupcem Driver, který určuje typ driveru
* Konfigurace driveru se zadává ve sloupci DriverChannelParameters (formát JSON)
* Volitelné sloupce mají rozumné výchozí hodnoty, pokud nejsou zadány
* Všechny hodnoty podporují šablonové nahrazení pomocí syntaxe {keyname} z klíčů a hodnot daného řádku