This is an old revision of the document!
SSCP protocol
Mervis controllers support full configuration and communication via SSCP protocol. Detail description of this protocol is available in: SSCP description.
Základní charakteristiky
- Protokol specifikován především na aplikační úrovni
- V PLC je nyní implementován přenos po TCP a seriové lince. Částečně pak po UDP pro účely autodetekce a přenosu konfigurace.
- Jednoduchá struktura přenosového rámce.
- Bezpečně lze vypočítat délku rámce z hlavičky.
- Pro různé fyzické vrstvy lze přidat hlavičky a patičky, vnitřní struktura zůstává stejná.
- Každý telegram (kromě broadcastových) s sebou nese informaci o adrese cílového zařízení (8 bit slave ID). Pouze PLC s odpovídajícím ID na telegram odpovídá.
- Využití pro veškerou komunikaci s PLC
- Přenos statistik a nastavení, detekce PLC, přenos hodnot, vzdálené ladění PLC programu.
- Umožňuje vyjednání délky přenosových bufferů mezi jednotlivými stranami, vyžaduje při jinicializaci komunikace ověření.
- Podpora Mervis Proxy.
- Protokol je verzován. Novější verze vždy podporuje i předchozí funkce, ale je silně doporučeno nevyužívat funkce označené jako “zastaralé”.
Přenos hodnot proměnných
- Protokol podporuje přenos dlouhých bloků paměti. Pokud se hodnota proměnné nevejde do vyjednaných bufferů, přenese se pomocí stavového přenosu delších dat.
- Každá proměnná je identifikována komunikačním ID. ID se může měnit (vývojové prostředí ho změní) v případě, že u proměnné dojde ke změně typu nebo jména.
- Přenos hodnot je implementován jako přenos paměťové oblasti, kde je proměnná uložena. Lze definovat offset od začátku hodnoty proměnné a její délku. To je vhodné pro případy, kdy se například mění pouze jedno číslo ve složitější struktuře (pole, struktura, funkční blok).
- Je nutné znát layout paměti. Ten se řídí standardními pravidly o zarovnávání proměnných dle paměťové náročnosti typu (1-8 bajtové zarovnání).