Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next 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 06:48] avsetula |
||
---|---|---|---|
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ý archiv s [[cs:files:software:os-images:00-start#unipi_11_mervis_os|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 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. |
---- | ---- |