| Obě strany předchozí revizePředchozí verzeNásledující verze | Předchozí verze |
| cs:sw:01-mervis:automatic-restart-of-1-wire-hidden [2020/01/20 12:12] – avsetula | cs:sw:01-mervis:automatic-restart-of-1-wire-hidden [2025/11/21 10:48] (aktuální) – přidány odkazy na komunikační atributy ofojt |
|---|
| ====== Automatický restart sběrnice 1-Wire ====== | ====== Automatický restart sběrnice 1-Wire ====== |
| | <WRAP group> |
| | <WRAP half column 81%> |
| Sběrnice 1-Wire je náchylná k EMI, což může vést k "zaseknutí" senzorů a deaktivaci celé komunikace na sběrnici. S našimi PLC můžete vypnout napájení pro celou 1-Wire sběrnici a donutit senzory k resetování. | Sběrnice 1-Wire je náchylná k EMI, což může vést k "zaseknutí" senzorů a deaktivaci celé komunikace na sběrnici. S našimi PLC můžete vypnout napájení pro celou 1-Wire sběrnici a donutit senzory k resetování. |
| | </WRAP> |
| | <WRAP half column 15%> |
| | ;;# |
| | <html><span class="dev-tag dev-patron">Patron</span></html> \\ |
| | <html><span class="dev-tag dev-neuron">Neuron</span></html> \\ |
| | <html><span class="dev-tag dev-axon">Axon</span></html> |
| | ;;# |
| | </WRAP> |
| | </WRAP> |
| |
| <WRAP center round info 60%> | <WRAP group center round box 95%> |
| V Mervis se vlastnost ovládající napájení zdroje pro 1-Wire bus nazvaná **OW_off_1**. Nastavením hodnoty na ''TRUE'' bude sběrnice odpojena od napájení a nastavením zpět na ''FALSE'' bude napájení znovu obnoveno. | {{ :files:img_warning-line_b.png?nolink |}} |
| | <WRAP half column 13%> |
| | {{ :en:hw:08_safety-instructions_pseudo-ISO-7010-info.png?nolink |(!)}} |
| | </WRAP> |
| | <WRAP half column 83%> |
| | **Poznámka:** \\ |
| | V Mervis se vlastnost ovládající napájení zdroje pro 1-Wire bus nazívá **OW_off_1**. Nastavením hodnoty na ''TRUE'' bude sběrnice odpojena od napájení a nastavením zpět na ''FALSE'' bude napájení znovu obnoveno. |
| | </WRAP> |
| </WRAP> | </WRAP> |
| |
| Můžete resetovat napájení i ručně, ale pomocí atributů **commerror** můžete nechat Mervis, aby to dělal automaticky. Atributy jsou k dispozici na konkrétním zařízení nebo na celém kanálu a ukazují, kdy Mervis nedokázal přečíst datové body pro dané zařízení či celý kanál. | Můžete resetovat napájení i ručně, ale pomocí [[.:comm-attributes-hidden|komunikačního atributu]] **commerror** můžete nechat Mervis, aby to dělal automaticky. [[.:comm-attributes-hidden|Komunikační atributy]] jsou k dispozici na konkrétním zařízení nebo na celém kanálu a ukazují, kdy Mervis nedokázal přečíst datové body pro dané zařízení či celý kanál. |
| | |
| We will start the project in the **Full mode**, attaching to the controller, creating a FBD program and setting a task executing this program. Next we create ModbusTCP channel for the IOs of the PLC and 1-Wire channel for the 1-Wire bus. Then deploy the solution and detect the 1-Wire sensors. Your workspace should look like this: | |
| |
| Zahájíme projekt v **Plném módu**, připojíme se ke kontroléru, vytvoříme program FBD a nastavíme úlohu provádějící tento program. Dále vytvoříme 1-Wire kanál pro 1-Wire sběrnici. **Nahrajte sestavu** a detekujte senzory 1-Wire. Váš pracovní prostor by měl vypadat následovně: | Zahájíme projekt v **Plném módu**, připojíme se ke kontroléru, vytvoříme program FBD a nastavíme úlohu provádějící tento program. Dále vytvoříme 1-Wire kanál pro 1-Wire sběrnici. **Nahrajte sestavu** a detekujte senzory 1-Wire. Váš pracovní prostor by měl vypadat následovně: |
| {{ :en:sw:01-mervis:automatic-restart-of-the-1-wire-01-workspace.png?direct |}} | {{ :en:sw:01-mervis:automatic-restart-of-the-1-wire-01-workspace.png?direct |}} |
| |
| As you can see, we have one 1-Wire thermometer, which we renamed to "office". Now double click on the **1-Wire** channel in the **Left panel**. You will be presented by all the available datapoints: | Jak můžete vidět, máme jeden 1-Wire teploměr a ten jsme přejmenovali na "Kancelar". Nyní dvakrát klikněte na kanál **1-Wire** na **levém panelu**. Zobrazí se vám všechny dostupné datové body: |
| | |
| Jak můžete vidět, máme jeden 1-Wire teploměr a ten jsme přejmenovali na "Kancelar". Nyní dvakrát klikněte na kanál **1-Wire** na levém panelu. Zobrazí se vám všechny dostupné datové body: | |
| |
| {{ :en:sw:01-mervis:automatic-restart-of-the-1-wire-02-attributes.png?direct |}} | {{ :en:sw:01-mervis:automatic-restart-of-the-1-wire-02-attributes.png?direct |}} |
| Nejdůležitější je atribut **commerror**, který označuje, zda došlo k chybě komunikace s některými připojenými senzory. Typ atributu je bool a pokud je hodnota ''TRUE'', znamená to, že došlo k chybě komunikace a jakmile chyba zmizí, je hodnota ''FALSE''. Jak vidíte, atribut se stejným názvem je také v sekci **Kancelar**. Tento atribut označuje chybu komunikace pouze pro senzor zvaný **Kancelar**. | Nejdůležitější je atribut **commerror**, který označuje, zda došlo k chybě komunikace s některými připojenými senzory. Typ atributu je bool a pokud je hodnota ''TRUE'', znamená to, že došlo k chybě komunikace a jakmile chyba zmizí, je hodnota ''FALSE''. Jak vidíte, atribut se stejným názvem je také v sekci **Kancelar**. Tento atribut označuje chybu komunikace pouze pro senzor zvaný **Kancelar**. |
| |
| Program sestavy pro automatický restart kontroluje hodnotu **commerror** a když je ''TRUE'', musíme krátce nastavit **OW_off_1** na hodnotu ''TRUE'' a poté ji nastavit zpět na ''FALSE''. Ještě llepším řešením je, že když **commerror** zůstane v ''TRUE'', zkoušíme periodicky resetovat sběrnici. Pro tuto funkci můžeme použít blok **Pulse Generator (BD2)**: | Program sestavy pro automatický restart kontroluje hodnotu **commerror** a když je ''TRUE'', musíme krátce nastavit **OW_off_1** na hodnotu ''TRUE'' a poté ji nastavit zpět na ''FALSE''. Ještě lepším řešením je, že když **commerror** zůstane v ''TRUE'', zkoušíme periodicky resetovat sběrnici. Pro tuto funkci můžeme použít blok **Pulse Generator (BD2)**: |
| |
| {{ :en:sw:01-mervis:automatic-restart-of-the-1-wire-03-pulse-generator.png?direct |}} | {{ :en:sw:01-mervis:automatic-restart-of-the-1-wire-03-pulse-generator.png?direct |}} |
| {{ :en:sw:01-mervis:automatic-restart-of-the-1-wire-04-complete-project.png?direct |}} | {{ :en:sw:01-mervis:automatic-restart-of-the-1-wire-04-complete-project.png?direct |}} |
| |
| Potřebujeme pouze změnit délku impulsu a pauzu mezi impulzy na rozumné hodnoty, např: Ttrue = 1s a Tfalse = 4s. **Nahrajte sestavu** a klikněte na **Start ladění**. Poté můžete odpojit snímač 1-Wire a uvidíte, že naměřené hodnoty jsou červené, atribut **commerror** je ''TRUE'' a **Pulse Generator** odesílá resetovací impulzy pro napájení sběrnice 1-Wire: | Potřebujeme pouze změnit délku impulsu a pauzu mezi impulzy na rozumné hodnoty, např: Ttrue = 1 s a Tfalse = 4 s. **Nahrajte sestavu** a klikněte na **Start ladění**. Poté můžete odpojit snímač 1-Wire a uvidíte, že naměřené hodnoty jsou červené, atribut **commerror** je ''TRUE'' a **Pulse Generator** odesílá resetovací impulzy pro napájení sběrnice 1-Wire: |
| |
| {{ :en:sw:01-mervis:automatic-restart-of-the-1-wire-05-debugging.png?direct |}} | {{ :en:sw:01-mervis:automatic-restart-of-the-1-wire-05-debugging.png?direct |}} |