SDS-C: program upload

Verze z 6. 6. 2022, 12:52, kterou vytvořil Adamn (diskuse | příspěvky) (Založena nová stránka s textem „ Tato stránka popisuje programovací jazyk '''SDS-C''', který je dostupný na vybraných zařízeních SDS. Některá zařízení používají FULL-C,…“)
(rozdíl) ← Starší verze | zobrazit aktuální verzi (rozdíl) | Novější verze → (rozdíl)
Tato stránka popisuje programovací jazyk SDS-C, který je dostupný na vybraných zařízeních SDS. 
Některá zařízení používají FULL-C, pro který máme návody jinde na této WiKi.

Způsoby nahrání vašeho SDS-C programu do SDS

SDS-C program zapíšete, a zpracujete (přeložíte) v aplikaci SDSC.EXE (stáhněte si vždy tu aktuální z této wiki).

Zpracovaný program je možné:

1. přímo ve SDSC.exe nahrát do zařízení SDS

2. uložit (pomocí SDSC.exe) do souboru .SDC pro pozdější využití (= znovuotevření ve SDSC.exe)

3. uložit (pomocí SDSC.exe) do souboru .SCB pro pozdější nahrání do SDS (= přes POST)


Pokud pouze a jenom nahráváte své SDS přímo z SDSC.exe, není pro vás dále zbytek této stránky podstatný.

Alternativní možnosti jsou k dispozici, zejména pokud chcete realizovat nahrávání (a konfiguraci) SDS svou vlastní aplikací.


Soubor .FC

Tento soubor obsahuje jeden nebo více prvků, které si sami vyberete.

Každý prvek může nebo nemusí být do .FC vložen: 1. zdrojový kód FULL-C programu 2. přeložený FULL-C program (pro nahrání do SDS) 3. UserWEB project 4. obsah User DF 5. textová poznámka (pro identifikaci obsahu .FC)

Soubor .FC lze vytvořit ve FULLC.exe, a lze jej ve FULLC.exe také načíst; nebo jej lze načíst a použít i v aplikaci SDSLOAD.exe.

Soubor .FC je jako celek samostatně symetricky šifrován, a uživatel má možnost zvolit si heslo (je-li použito, nelze bez něj pak .FC otevřít).

Soubor .SCB

Soubor .SCB obsahuje jen a pouze přeložený SDS-C program. Soubor .SCB existuje z důvodu potřeby implementace (vašich vlastních) skriptovaných metod nahrávání hotového SDS-C programu do SDS.

Soubor .SCB obsahuje čistý výstup z překladu provedeného SDSC.exe, a tento obsah .SCB lze přímo 1:1 nahrát do SDS, viz popis protokolů dole na této stránce.


Soubor .UWB

Soubor .UWB obsahuje přeložený UserWEB project. Soubor .UWB existuje z důvodu potřeby implementace (vašich vlastních) skriptovaných metod nahrávání hotového UserWEB projektu do SDS.

Obsah .UWB lze přímo 1:1 nahrát do SDS, viz popis protokolů dole na této stránce.


Komunikační protokoly pro nahrání SDS-C programu do SDS

Existují dva protokoly:

1. prostřednictvím UDP (8081) s proprietárním symetrickým šifrováním přenosu (unikátní klíč pro každé spojení)

Tento programovací UDP protokol je využit na všech SDS, nicméně interně se různě odlišuje (v detailech) podle Produktové Řady.

Tento protokol je dostupný jedině a pouze přes aplikaci SDSC.exe

Na některých SDS lze programování přes tento protokol dodatečně zakázat.


2. prostřednictvím HTTP POST protokolu (REST API) (unikátní salt pro každé spojení)

Přenáší se obsah .SCB nebo .UWB souboru (nebo také další funkce, jako je IP konfigurace).

Tento protokol je k dispozici na SDS řady ST - a to primárně z důvodu potřeby zákazníků skriptovat nahrávání a konfiguraci svých SDS (např. vlastním python skriptem).

Uživatel je nejprve autorizován (průmyslový standard: dvojitý SHA-256 hash vůči unikátnímu Salt, který je vždy jiný pro každé nové spojení), a poté je provedeno smazání původního programu a nahrání nového (klient pošle sekvenci příkazů a obsah svého souboru .SCB nebo .UWB).

Detaily tohoto protokolu jsou popsány zde: SDS: POST upload

Vzorová aplikace FCB_LOADER.exe je k dispozici na dotaz, i se zdrojovými kódy. Tato aplikace je univerzálně použitelná napříč všemi SDS které tento protokol mají implementován.


Proč tento způsob ?

  • Protože UDP protokol (8081) je proprietární a není možné jeho specifikaci běžně veřejně uvolnit.
  • Protože implementace autorizované komunikace přes HTTPS POST je průmyslovým standardem a je velmi snadné provést jeho skriptování v různých jazycích