Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Last revision Both sides next revision
cs:sw:01-mervis:creating-new-project-on-unipi11-hidden [2021/05/11 11:11]
avsetula
cs:sw:01-mervis:creating-new-project-on-unipi11-hidden [2021/09/10 13:07]
avsetula [První projekt s Unipi 1.1/Lite]
Line 22: Line 22:
   - [[https://​www.unipi.technology/​cs/​2gb-prumyslova-microsd-pametova-karta-slc-p232|Kartu microSD]] pro PLC    - [[https://​www.unipi.technology/​cs/​2gb-prumyslova-microsd-pametova-karta-slc-p232|Kartu microSD]] pro PLC 
   - Redukci z microSD na klasickou SD kartu, případně čtečku paměťových karet do USB   - Redukci z microSD na klasickou SD kartu, případně čtečku paměťových karet do USB
-  - [[https://​www.unipi.technology/​cs/​napajeci-zdroj-pro-din-listu-5v-dc-2-4a-p65?​categoryId=15|5 ​VDC / 2 A zdroj napájení]] +  - [[https://​www.unipi.technology/​cs/​napajeci-zdroj-pro-din-listu-5v-dc-2-4a-p65?​categoryId=15|5 ​V⎓ / 2 A zdroj napájení]] 
-  - Stažený ​archiv ​s [[cs:files:software:os-images:00-start#​unipi_11_mervis_os|Mervis OS pro Unipi 1.1/Lite]]+  - Stažený ​obraz s [[cs:hw:03-unipi11:download-image:01-mervis|Mervis OS pro Unipi 1.1/Lite]]
   - Počítač s nainstalovaným prostředím [[cs:​files:​software:​mervis:​00-start#​aktualni_verzi_mervis_ide_naleznete_zde|Mervis IDE]]    - Počítač s nainstalovaným prostředím [[cs:​files:​software:​mervis:​00-start#​aktualni_verzi_mervis_ide_naleznete_zde|Mervis IDE]] 
  
Line 31: Line 31:
   - [[cs:​sw:​01-mervis:​01-mervis-ide|Seznámit se s Mervis IDE]]   - [[cs:​sw:​01-mervis:​01-mervis-ide|Seznámit se s Mervis IDE]]
   - [[cs:​sw:​01-mervis:​connecting-to-unipi-hidden|Propojit PLC s počítačem]]   - [[cs:​sw:​01-mervis:​connecting-to-unipi-hidden|Propojit PLC s počítačem]]
-  - [[cs:​sw:​01-mervis:​running-on-neuron-hidden#​mervis_na_unipi_neuron_11|Nahrát Mervis OS na SD kartu]]+  - [[cs:​sw:​01-mervis:​running-on-unipi11-hidden|Nahrát Mervis OS na SD kartu]]
   - Připojit napájení - počkejte alespoň minutu, než se OS v PLC spustí   - Připojit napájení - počkejte alespoň minutu, než se OS v PLC spustí
 </​WRAP>​ </​WRAP>​
Line 44: Line 44:
 {{ :​en:​sw:​01-mervis:​02_creating-new-project-on-unipi11_en.png?​direct |}} {{ :​en:​sw:​01-mervis:​02_creating-new-project-on-unipi11_en.png?​direct |}}
  
-Druhou věcí, kterou je třeba při vytváření sestavy specifikovat,​ je **výběr režimu**. Režim určuje chování Mervis IDE -> **Zjednodušený mód** za Vás vytvoří celé jádro sestavy, tj. definuje základní programy, vygeneruje mapování proměnných apod. Zároveň Vám ale tato volba omezí výběr programovací metody pouze na **metodu funkčních bloků (FBD)**. Zjednodušený mód je proto vhodný především pro začátečníky. Pro zkušenější uživatele je určen **Plný mód** ze kteréhou ​se do zjednodušeného módu můžete přepnout, tento krok je však nevratný. Plný mód neprovádí automaticky nic a veškeré nastavení je proto zcela na Vás.+Druhou věcí, kterou je třeba při vytváření sestavy specifikovat,​ je **výběr režimu**. Režim určuje chování Mervis IDE -> **Zjednodušený mód** za Vás vytvoří celé jádro sestavy, tj. definuje základní programy, vygeneruje mapování proměnných apod. Zároveň Vám ale tato volba omezí výběr programovací metody pouze na **metodu funkčních bloků (FBD)**. Zjednodušený mód je proto vhodný především pro začátečníky. Pro zkušenější uživatele je určen **Plný mód** ze kterého ​se do zjednodušeného módu můžete přepnout, tento krok je však nevratný. Plný mód neprovádí automaticky nic a veškeré nastavení je proto zcela na Vás.
  
 Je tedy vhodné, nechat si vytvořit základ sestavy automaticky ve **Zjednodušeném módu** (až na speciální situace) a až následně převést do **Plného módu**. Je tedy vhodné, nechat si vytvořit základ sestavy automaticky ve **Zjednodušeném módu** (až na speciální situace) a až následně převést do **Plného módu**.
Line 56: Line 56:
 {{ :​en:​sw:​01-mervis:​04_creating-new-project-on-unipi11_en.png?​direct |}} {{ :​en:​sw:​01-mervis:​04_creating-new-project-on-unipi11_en.png?​direct |}}
  
-Zobrazí se dialog **Přiřadit PLC**. V něm můžeme vybrat způsob, kterým se Mervis IDE pokusí připojit ke kontroléru. Pokud se kontrolér nachází ve stejné místní síti, použijte **UDP Broadcast** a klikněte na **Další >​**. ​+Zobrazí se dialog **Přiřadit PLC**. V něm můžeme vybrat způsob, kterým se Mervis IDE pokusí připojit ke kontroléru. Pokud se kontrolér nachází ve stejné místní síti, použijte **UDP Broadcast** a klikněte na **Další >​**. ​
  
 {{ :​en:​sw:​01-mervis:​05_creating-new-project-on-unipi11_en.png?​nolink |}} {{ :​en:​sw:​01-mervis:​05_creating-new-project-on-unipi11_en.png?​nolink |}}
  
-Nyní se zobrazí výzva k vyplnění jména a hesla (SSCP přístup) pro připojení ke kontroléru. Výchozí údaje jsou: **admin / rw**. Nyní ponechcejte a klikněte na **Další >**.+Nyní se zobrazí výzva k vyplnění jména a hesla (SSCP přístup) pro připojení ke kontroléru. Výchozí údaje jsou: **admin / rw**. Nyní ponechcejte a klikněte na **Další >**.
  
 {{ :​en:​sw:​01-mervis:​06_creating-new-project-on-unipi11_en.png?​nolink |}} {{ :​en:​sw:​01-mervis:​06_creating-new-project-on-unipi11_en.png?​nolink |}}
Line 68: Line 68:
 {{ :​en:​sw:​01-mervis:​07_creating-new-project-on-unipi11_en.png?​nolink |}} {{ :​en:​sw:​01-mervis:​07_creating-new-project-on-unipi11_en.png?​nolink |}}
  
-Po dokončení vyhledávání Mervis IDE zobrazí seznam všech nalezených kontrolérů. Cílový kontrolér můžete najít podle jejího názvu v poli **Platforma**. Návod jsme vytvařeli se zařízením Unipi 1.1, vy však vyberte ze seznamu váš konrétní kontrolér se kterým pracujete a následně klikněte na **Další >**.+Po dokončení vyhledávání Mervis IDE zobrazí seznam všech nalezených kontrolérů. Cílový kontrolér můžete najít podle jejího názvu v poli **Platforma**. Návod jsme vytvařeli se zařízením Unipi 1.1, vy však vyberte ze seznamu váš konrétní kontrolér se kterým pracujete a následně klikněte na **Další >**.
  
 /* FIXME */ /* FIXME */
Line 102: Line 102:
  
 ===== Připojení vstupů/​výstupů ===== ===== Připojení vstupů/​výstupů =====
-V Mervis IDE nyní máte přiřazeno PLC Unipi 1.1/Lite. Z konstrukčního hlediska jsou kontroléry Unipi složeny z výpočetního modulu (zde RPi) a desky plošných spojů se vstupy a výstupy, která s výpočetním modulem komunikuje skrze protokol **Modbus TCP** a **I2C**.+V Mervis IDE nyní máte přiřazeno PLC Unipi 1.1/Lite. Z konstrukčního hlediska jsou kontroléry Unipi složeny z výpočetního modulu (zde RPi) a desky plošných spojů se vstupy a výstupy, která s výpočetním modulem komunikuje skrze protokol **Modbus TCP** a **I²C**.
  
-Proto je nutné v Mervis IDE nastavit **dva** komunikační kanály, aby jste mohli ovládat desku Unipi 1.1/Lite. První z nich je řízen protokolem Modbus TCP pro analogové a digitální vstupy a výstupy, druhým potřebným je kanál s protokolem ​I2C k ovládání relé výstupů.+Proto je nutné v Mervis IDE nastavit **dva** komunikační kanály, aby jste mohli ovládat desku Unipi 1.1/Lite. První z nich je řízen protokolem Modbus TCP pro analogové a digitální vstupy a výstupy, druhým potřebným je kanál s protokolem ​I²C k ovládání relé výstupů.
  
 Nyní přidejte k PLC dva **komunikační kanály**. Pro přidání kanálu klikněte pravým tlačítkem na jméno **PLC** a poté klikněte na **Přidat kanál**. Opakujte i pro druhý kanál. Nyní přidejte k PLC dva **komunikační kanály**. Pro přidání kanálu klikněte pravým tlačítkem na jméno **PLC** a poté klikněte na **Přidat kanál**. Opakujte i pro druhý kanál.
Line 114: Line 114:
 {{ :​en:​sw:​01-mervis:​12_creating-new-project-on-unipi11_en.png?​direct |}} {{ :​en:​sw:​01-mervis:​12_creating-new-project-on-unipi11_en.png?​direct |}}
  
-Když na první kanál kliknete myší, zobrazí se v pravém sloupci vlastnosti vybraného kanálu. První položka slouží k pojmenování,​ kanály proto doporučujeme vždy popisně pojmenovat, v tomto případě např.: ​I2C+Když na první kanál kliknete myší, zobrazí se v pravém sloupci vlastnosti vybraného kanálu. První položka slouží k pojmenování,​ kanály proto doporučujeme vždy popisně pojmenovat, v tomto případě např.: ​I²C
-Klikněte na **no protocol** a vyberte ze seznamu protokol **PlatformIO**. Tím se vám objeví další možnosti, zde se pouze ujistěte, aby **linkový protokol** byl nastaven na **I2C**.+Klikněte na **no protocol** a vyberte ze seznamu protokol **PlatformIO**. Tím se vám objeví další možnosti, zde se pouze ujistěte, aby **linkový protokol** byl nastaven na **I²C**.
  
 První kanál pro relé výstupy již máte nastaven. První kanál pro relé výstupy již máte nastaven.
Line 130: Line 130:
  
  
-==== I2C ==== +==== I²C ==== 
-V **levém panelu** klikněte pravým tlačítkem na kanál ​I2C. V kontextovém menu pak vyberte **Přidat zařízení z knihovny**.+V **levém panelu** klikněte pravým tlačítkem na kanál ​I²C. V kontextovém menu pak vyberte **Přidat zařízení z knihovny**.
  
 {{ :​en:​sw:​01-mervis:​15_creating-new-project-on-unipi11_en.png?​direct |}} {{ :​en:​sw:​01-mervis:​15_creating-new-project-on-unipi11_en.png?​direct |}}
  
-V dialogovém okně **Přidat zařízení z knihovny** naleznete seznam různých zařízení. V tomto dialogu rozbalte složku **Unipi (v1.1)** a pokračujte podsložkou **I2C**, zde označte vhodnou definici zařízení podle toho, zda máte Unipi 1.1 (**Unipi1_Relays** a **Analog-Inputs**) , nebo Unipi 1.1 Lite (**Unipi1Lite_Relay**). Pokud ji máte označenu, klikněte na ikonu šipky {{:​files:​dialog_arrow_right.png?​nolink|}},​ čímž přidáte do seznamu zvolených zařízení definici připojení k relé. Poté již stačí pouze potvrdit kliknutím na OK.+V dialogovém okně **Přidat zařízení z knihovny** naleznete seznam různých zařízení. V tomto dialogu rozbalte složku **Unipi (v1.1)** a pokračujte podsložkou **I²C**, zde označte vhodnou definici zařízení podle toho, zda máte Unipi 1.1 (**Unipi1_Relays** a **Analog-Inputs**) , nebo Unipi 1.1 Lite (**Unipi1Lite_Relay**). Pokud ji máte označenu, klikněte na ikonu šipky {{:​files:​dialog_arrow_right.png?​nolink|}},​ čímž přidáte do seznamu zvolených zařízení definici připojení k relé. Poté již stačí pouze potvrdit kliknutím na OK.
  
 {{ :​en:​sw:​01-mervis:​16_creating-new-project-on-unipi11_en.png?​direct |}} {{ :​en:​sw:​01-mervis:​16_creating-new-project-on-unipi11_en.png?​direct |}}
Line 151: Line 151:
 {{ :​en:​sw:​01-mervis:​18_creating-new-project-on-unipi11_en.png?​direct |}} {{ :​en:​sw:​01-mervis:​18_creating-new-project-on-unipi11_en.png?​direct |}}
  
-Nová zařízení se objeví pod příslušným kanálem ​I2C / ModbusTCP.+Nová zařízení se objeví pod příslušným kanálem ​I²C / ModbusTCP.
  
 {{ :​en:​sw:​01-mervis:​19_creating-new-project-on-unipi11_en.png?​direct |}} {{ :​en:​sw:​01-mervis:​19_creating-new-project-on-unipi11_en.png?​direct |}}
Line 165: Line 165:
 {{ :​en:​sw:​01-mervis:​20_creating-new-project-on-unipi11_en.png?​direct |}} {{ :​en:​sw:​01-mervis:​20_creating-new-project-on-unipi11_en.png?​direct |}}
  
-Nyní budete upozorněni,​ že se jednou ​o nevratnou akci, zvolte **OK** pro pokračování.+Nyní budete upozorněni,​ že se jedná ​o nevratnou akci, zvolte **OK** pro pokračování.
  
 {{ :​en:​sw:​01-mervis:​21_creating-new-project-on-unipi11_en.png?​direct |}} {{ :​en:​sw:​01-mervis:​21_creating-new-project-on-unipi11_en.png?​direct |}}
  
-Výsledkem této operace je povolení dalších funkcí, na první pohled viditelná změna nastala v levém panelu, kde se na konci seznamu objevila položka **Historie**,​ případně ve **Spustitelných projektech** naleznete zviditelněnou složku **Globals** a v ní soubor **generated.Mixed.st**. Tento soubor obsahuje definici proměnných,​ v tomto případě již obsahuje proměnné generované ve Zjednodušeném módu. Tento soubor nemažte, nepřesunujte,​ ani jiným způsobem neupravujte,​ je generován i upravován automaticky. Autogen slouží pro automatické vytvoření proměnných z datových bodů, lze jej ale aplikovat i na celé zařízení obsahující více datových bodů, skupin, atd. Více o Autogenu se dočtete [[autogen-hidden|v tomto článku]].+Výsledkem této operace je povolení dalších funkcí, na první pohled viditelná změna nastala v levém panelu, kde se na konci seznamu objevila položka **Historie**,​ případně ve **Spustitelných projektech** naleznete zviditelněný soubor **generated.Mixed.st**. Tento soubor obsahuje definici proměnných,​ v tomto případě již obsahuje proměnné generované ve Zjednodušeném módu. Tento soubor nemažte, nepřesunujte,​ ani jiným způsobem neupravujte,​ je generován i upravován automaticky. Autogen slouží pro automatické vytvoření proměnných z datových bodů, lze jej ale aplikovat i na celé zařízení obsahující více datových bodů, skupin, atd.  
 + 
 +<WRAP center round info 90%> 
 +Více o Autogenu se dočtete [[autogen-hidden|v tomto článku]]. 
 +</​WRAP>​
  
 {{ :​en:​sw:​01-mervis:​22_creating-new-project-on-unipi11_en.png?​direct |}} {{ :​en:​sw:​01-mervis:​22_creating-new-project-on-unipi11_en.png?​direct |}}
Line 192: Line 196:
  
 ==== Nahrání sestavy ==== ==== Nahrání sestavy ====
-Nahrání sestavy znamená kompilaci a následné nahrání vytvořeného binárního souboru do kontroléru a spuštění v **Plném běhu**. Pro nahrání sestavy klikněte na **Nahrát sestavu** na **horní liště**.+**Nahrání sestavy znamená:** kompilaci a následné nahrání vytvořeného binárního souboru do kontroléru a spuštění v **Plném běhu**. Pro nahrání sestavy klikněte na **Nahrát sestavu** na **horní liště**.
  
 {{ :​en:​sw:​01-mervis:​26_creating-new-project-on-unipi11_en.png?​direct |}} {{ :​en:​sw:​01-mervis:​26_creating-new-project-on-unipi11_en.png?​direct |}}
Line 206: Line 210:
  
 ===== Spínaní relé ===== ===== Spínaní relé =====
-Nyní je projekt nastaven, přejdeme ​proto k vytváření vašeho prvního programu, který bude mít za úkol střídavě přepínat výstup **Relay1**. “Přepínat” znamená, že bude třeba výstup ​Relay1 ​nastavit tak, aby se na něm opakovaně měnila hodnota ''​True''​ a ''​False''​. Základní spustitelný projekt byl automaticky vygenerovnán ještě ve Zjednodušeném módu, díky tomu máme k dispozici ​programu ​**main**, do něj budeme vytvářet logiku. V **levém panelu** dvojitě klikněte na **main.Program.fbd**.+Nyní je projekt nastaven, přejděte ​proto k vytváření vašeho prvního programu, který bude mít za úkol střídavě přepínat výstup **Relay1**. “Přepínat ​výstup” znamená, že je třeba výstup nastavit tak, aby se na něm opakovaně měnila hodnota ''​True''​ a ''​False''​. Základní spustitelný projekt byl automaticky vygenerovnán ještě ve Zjednodušeném módu, díky tomu máte k dispozici ​program ​**main**, do něj budeme vytvářet logiku. V **levém panelu** dvojitě klikněte na **main.Program.fbd**.
  
 {{ :​en:​sw:​01-mervis:​29_creating-new-project-on-unipi11_en.png?​direct |}} {{ :​en:​sw:​01-mervis:​29_creating-new-project-on-unipi11_en.png?​direct |}}
Line 234: Line 238:
 {{ :​en:​sw:​01-mervis:​34_creating-new-project-on-unipi11_en.png?​direct |}} {{ :​en:​sw:​01-mervis:​34_creating-new-project-on-unipi11_en.png?​direct |}}
  
-Nyní vyhledejte generátor pulzů. Zadejte do vyhledávače **pulse generator**. Vyhledávač prohledává funkční bloky v reálném čase, při psaní proto můžete vidět, jak se výsledky hledání postupně upřesňují. Po dopsání pak uvidíte pouze jeden výsledek - blok **Pulse Generator (BD2)**. Klikněte a přetáhněte ​jej do **logické sekce** a poté tlačítko myši pusťte.+Nyní vyhledejte generátor pulzů. Zadejte do vyhledávače **pulse generator**. Vyhledávač prohledává funkční bloky v reálném čase, při psaní proto můžete vidět, jak se výsledky hledání postupně upřesňují. Po dopsání pak uvidíte pouze jeden výsledek - blok **Pulse Generator (BD2)**. Klikněte a tahem myši jej přetáhněte do **logické sekce** a poté tlačítko myši pusťte.
  
 {{ :​en:​sw:​01-mervis:​35_creating-new-project-on-unipi11_en.png?​direct |}} {{ :​en:​sw:​01-mervis:​35_creating-new-project-on-unipi11_en.png?​direct |}}
Line 244: Line 248:
 {{ :​en:​sw:​01-mervis:​36_creating-new-project-on-unipi11_en.png?​direct |}} {{ :​en:​sw:​01-mervis:​36_creating-new-project-on-unipi11_en.png?​direct |}}
  
-Nyní je třeba propojit výstup generátoru pulzů k výstupu Relay1. Klikněte pravým tlačítkem myši na **sekci výstupů**. V kontextovém menu pak přesuňte kurzor nad **Globální proměnné** a z podřazeného menu vyberte **Vložit existující proměnnou**.+Nyní je třeba propojit výstup generátoru pulzů k výstupu ​**Relay1**. Klikněte pravým tlačítkem myši na **sekci výstupů**. V kontextovém menu pak přesuňte kurzor nad **Globální proměnné** a z podřazeného menu vyberte **Vložit existující proměnnou**.
  
 {{ :​en:​sw:​01-mervis:​37_creating-new-project-on-unipi11_en.png?​direct |}} {{ :​en:​sw:​01-mervis:​37_creating-new-project-on-unipi11_en.png?​direct |}}
  
-V dialogovém okně Vložit existující proměnnou uvidíte seznam všech dostupných proměnných,​ vstupů a výstupů ​Vašeho ​kontroléru.  +V dialogovém okně **Vložit existující proměnnou** uvidíte seznam všech dostupných proměnných,​ vstupů a výstupů kontroléru.  
-Pokud by byl seznam téměř prázdný, nemáte Autogenem definované proměnné dostupné pro vaše PLC. V takovém případě klikněte na zařízení u I2C a ModbusTCP kanálu pravým tlačítkem myši a v kontextovém menu zvolte **Nastavit autogen**.+Pokud by byl seznam téměř prázdný, nemáte Autogenem definované proměnné dostupné pro vaše PLC. V takovém případě klikněte na zařízení u I²C a ModbusTCP kanálu pravým tlačítkem myši a v kontextovém menu zvolte **Nastavit autogen**.
  
 Pokud jste však postupovali přesně podle návodu, máte v programu všechny proměnné vygenerované automaticky ještě ve Zjednodušeném módu. Pokud jste však postupovali přesně podle návodu, máte v programu všechny proměnné vygenerované automaticky ještě ve Zjednodušeném módu.
Line 272: Line 276:
 {{ :​en:​sw:​01-mervis:​40_creating-new-project-on-unipi11_en.png?​direct |}} {{ :​en:​sw:​01-mervis:​40_creating-new-project-on-unipi11_en.png?​direct |}}
  
-Nyní se můžete ​pokusit ​**zkompilovat**. Viz. sekce [[#​kompilace_sestavy|Kompilace sestavy]]. Pokud se vše podařilo, ve **stavovém řádku** se zobrazí zpráva **Kompilace se podařila**. Hlášení se značkou **Varování** v tabulce **Výsledky** na spodním panelu můžete ignorovat.+Nyní se můžete ​projekt ​**zkompilovat**. Viz. sekce [[#​kompilace_sestavy|Kompilace sestavy]]. Pokud se vše podařilo, ve **stavovém řádku** se zobrazí zpráva **Kompilace se podařila**. Hlášení se značkou **Varování** v tabulce **Výsledky** na spodním panelu můžete ​pro tentokrát ​ignorovat.
  
 Pokud se kompilace podařila a vy jste výše uvedené instrukce správně následovali,​ můžete sestavu **nahrát** do kontroléru. Viz. sekce [[#​nahrani_sestavy|Nahrání sestavy]]. Pokud se kompilace podařila a vy jste výše uvedené instrukce správně následovali,​ můžete sestavu **nahrát** do kontroléru. Viz. sekce [[#​nahrani_sestavy|Nahrání sestavy]].
  
-Po nahrání sestavy začne relé výstup Relay1 přepínat v intervalech po 5s. +Po nahrání sestavy začne relé výstup ​**Relay1** přepínat v intervalech po 5s. 
  
 ---- ----