====== Jazyk a editor FUPLA (Function Block Diagram) ====== **FUPLA (Function Block Diagram – FBD)** je grafický programovací jazyk speciálně navržený pro programování řídicích jednotek v Mervis IDE. Je založen na předdefinovaných programových blocích, z nichž každý má konkrétní funkci, vstupy a výstupy. Je velmi vhodný pro spojité procesy, jako je regulace HVAC a základní logické blokování. Protože se řídicí logika vytváří jednoduše propojováním bloků a proměnných, je FBD vynikající volbou pro uživatele bez hlubších znalostí programování. V jednom projektu můžete volně kombinovat FUPLA se Structured Text (ST) podle toho, který jazyk je pro danou úlohu nejvhodnější. {{ en:mervis-ide:30-fbd:fbd.png?900&direct |Rozhraní FBD v Mervis IDE }} ===== Struktura editoru a pracovní plocha ===== Dvojklikem na nově vytvořený program v průzkumníku sestavy (Solution explorer) spustíte editor FUPLA. Editor pracuje s logickou strukturou „Signálový tok“ (Signal Flow) zleva doprava: {{:en:mervis-ide:35-help:fupla.png?&direct}} * **Levý žebřík (vstupy):** Zde umisťujete globální proměnné nebo fyzické vstupy, ze kterých program čte hodnoty. * **Pracovní plocha (Canvas):** Centrální prostor, do kterého se umisťují funkční bloky a vzájemně se propojují. * **Pravý žebřík (výstupy):** Tato oblast obsahuje proměnné, do kterých chcete zapisovat výsledky. ==== Změna velikosti pracovní plochy a žebříků ==== Velikost pracovní plochy můžete zvětšovat nebo zmenšovat pomocí úchytů v rozích. Máte také možnost upravovat rozložení žebříků: * **Ruční změna velikosti:** V horních rozích aktivního žebříku najdete červené kruhové úchyty. Jednoduše na ně klikněte levým tlačítkem myši a tažením ručně zvětšete nebo zmenšete šířku žebříku. * **Změna velikosti pomocí nabídky:** Případně můžete na červený kruhový úchyt kliknout pravým tlačítkem myši a otevřít kontextovou nabídku. Zde můžete vybrat **„Set Default Width“** nebo **„Match Other Ladder's Width“**, čímž okamžitě nastavíte šířku vybraného žebříku tak, aby odpovídala druhému žebříku v aktuálně otevřeném schématu. {{:en:mervis-ide:35-help:025-new_project:020-fupla_editor:fbd3.png|}} {{:en:mervis-ide:35-help:025-new_project:020-fupla_editor:fbd4.png|}} ===== Postup programování ===== Pro vytvoření spustitelného programu postupujte podle těchto standardních kroků: ==== 1. Umístění proměnných ==== Začněte umístěním proměnných, ze kterých chcete číst, do levého žebříku. Klikněte pravým tlačítkem myši na pole v žebříku a vyberte příkaz pro vložení existující globální proměnné nebo vytvoření nové. {{:en:mervis-ide:35-help:fupla3.png}} ==== 2. Přidání funkčních bloků ==== Klikněte pravým tlačítkem myši do pracovní plochy a vyberte **„Add library box“**. Pomocí filtru a/nebo šipek vyhledejte požadovaný funkční blok a poté klikněte na OK. Mervis IDE obsahuje rozsáhlou knihovnu výchozích funkčních bloků pokrývajících většinu základních operací PLC. Pokud požadovaný blok není v seznamu, s největší pravděpodobností není v projektu odkazována knihovna, která jej obsahuje. {{:en:mervis-ide:35-help:fupla4.png}} ==== 3. Konfigurace bloků a viditelnost I/O ==== Kliknutím na libovolný funkční blok zobrazíte jeho vlastnosti v mřížce vlastností (property grid). V panelu Properties se zobrazuje seznam hodnot společně s jejich hodnotami a údaji o viditelnosti. Zde můžete přepínat viditelnost vstupů, parametrů a výstupů a zadávat pevné (výchozí) hodnoty. {{:en:mervis-ide:35-help:fbio_visibility.png}} ==== 4. Vedení vodičů a propojení ==== Propojení bloků a vstupních/výstupních proměnných se provádí tažením propojovacího vodiče. * Umístěte kurzor myši na výstupní port proměnné nebo bloku; kurzor změní svůj tvar. * Podržte levé tlačítko myši a přetáhněte vodič na vstupní port cílového bloku nebo výstupního žebříku. * Pokud je propojení správné, vodič zezelená. Uvolněním levého tlačítka myši vodič vložíte. * **Poznámka:** Dávejte pozor na vodiče, které propojují vstup a výstup téhož bloku. Po vložení vodiče jej nezapomeňte vést zespodu bloku. {{:en:mervis-ide:35-help:fupla_wires3.png}} === Úprava vodičů a spojovacích bodů === Propojovací vodiče můžete upravovat kliknutím na existující vodič, čímž zobrazíte editační body. Tvar vodiče můžete změnit tažením jeho vnitřních bodů nebo přesunout koncové body a připojit jej k jinému vstupu/výstupu. Pro uspořádání složitých schémat můžete využít lomové body a spojovací body: * **Vytvoření lomového bodu:** Klikněte pravým tlačítkem myši na aktivní vodič a vyberte **„Create point“**, čímž do vodiče vložíte upravitelný roh. * **Práce se spojovacími body:** Spojovací body slouží jako vizuální pomůcka, která pomáhá předcházet nepřehledným a překrývajícím se vodičům. Namísto vedení více vodičů přes celé schéma veďte jeden vodič do centrálního místa, klikněte pravým tlačítkem myši na jeho segment a vyberte **„Insert Junction Point“**. Z tohoto jediného bodu pak můžete odbočit více propojení. Chcete-li jej odstranit, vyberte bod a stiskněte **Delete**. {{:en:mervis-ide:35-help:fupla_wires5.png}} {{:en:mervis-ide:35-help:025-new_project:020-fupla_editor:fbd2.png|}} === Barevné rozlišení vodičů a indikátory ladění === Pro rychlou identifikaci datových typů na pracovní ploše jsou barvy vodičů pevně dané a automaticky se přizpůsobují kontrastu ve světlém/tmavém motivu: ^ Datový typ ^ Barva vodiče ^ | **Booleovské hodnoty** | Modrá | | **Analogové hodnoty (Real/Float)** | Zelená | | **Ukazatele (Pointers)** | Hnědá | | **Ostatní** | Černá (nebo kouřově bílá v tmavém motivu) | Kromě toho editor v režimu Debug poskytuje okamžitou vizuální indikaci booleovských stavů: * **Silný modrý vodič** představuje hodnotu **True**. * **Tenký modrý vodič** představuje hodnotu **False**. {{:en:mervis-ide:35-help:025-new_project:020-fupla_editor:fbd1.png|}} ==== 5. Kompilace a nasazení ==== Jakmile propojíte řídicí logiku, klikněte na tlačítko **„Build solution“** a program zkompilujte. V okně s výsledky zkontrolujte případné chyby a po jejich opravě nasaďte program do řídicí jednotky.