Rozdíly
Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.
Obě strany předchozí revize Předchozí verze Následující verze | Předchozí verze Následující verze Obě strany příští revize | ||
cs:mervis-ide:30-communication-protocols:10-sscp [2017/06/19 14:40] m.chlupac [SSCP protokol] |
cs:mervis-ide:30-communication-protocols:10-sscp [2017/06/19 17:10] m.chlupac |
||
---|---|---|---|
Řádek 10: | Řádek 10: | ||
* Bezpečně lze vypočítat délku rámce z hlavičky. | * 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á. | * Pro různé fyzické vrstvy lze přidat hlavičky a patičky, vnitřní struktura zůstává stejná. | ||
- | * Každý | + | * Každý |
* Využití pro veškerou komunikaci s PLC | * Využití pro veškerou komunikaci s PLC | ||
* Přenos statistik a nastavení, detekce PLC, přenos hodnot, vzdálené ladění PLC programu. | * 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 | + | * Umožňuje vyjednání délky přenosových bufferů mezi jednotlivými stranami |
- | * Podpora Mervis Proxy. | + | * Vyžaduje při inicializaci |
+ | * Podpora | ||
* 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 " | * 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 " | ||
===== Přenos hodnot proměnných ===== | ===== 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. | + | * 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 se zaručenou atomicitou. |
- | * 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. | + | * Každá proměnná je identifikována komunikačním ID. |
* 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). | * 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í). | * 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í). | ||