Úloha 4 Ovládání motoru pomocí detekce zvuku a ultrazvuku Projekt CZ.1.07/1.1.16/ Bc. Jaroslav Zika 2014
Sestavit zařízení, které při vzniku zvuku s vyšší intenzitou a detekci pohybu otočí motor o 90 stupňů a pak zase zpět Zadání úlohy Úlohu lze použít např. jako bezkontaktní ovládání garážových vrat Projekt CZ.1.07/1.1.16/ Bc. Jaroslav Zika 2014
Postup - Navrhnout algoritmus pro uvedenou úlohu - Sestavit zařízení z komponent podle zadání (mikropočítač NXT, zvukový senzor) - V PC vytvořit program pro mikropočítač NXT - Otestovat systém, zapsat hodnoty do tabulky - Provést změny nastavení – konfigurace Projekt CZ.1.07/1.1.16/ Bc. Jaroslav Zika 2014
Použité díly Vstupní zařízení: Zvukový senzor Ultrazvukový senzor Výstupní zařízení Interaktivní motor
Projekt CZ.1.07/1.1.16/ Bc. Jaroslav Zika 2014 Algoritmus Start Zvukový senzor Vyhodnocení úrovně signálu Otočení motoru Otočení motoru Čekání 2 sekundy Čekání na Pohyb Vyhodnocení pohybu Ne Ano Ne Ano
Projekt CZ.1.07/1.1.16/ Bc. Jaroslav Zika 2014 Postup realizace Připojíme zvukový senzor k mikropočítači na port 1 Připojíme ultrazvukový senzor k mikropočítači na port 2
Projekt CZ.1.07/1.1.16/ Bc. Jaroslav Zika 2014 Postup realizace - program Připojíme senzor a motor k mikropočítači Spustíme vývojové prostředí LEGO MINDSTORMS Education NXT Programming V záložce File vybereme možnost New a vytvoříme nový projekt
Projekt CZ.1.07/1.1.16/ Bc. Jaroslav Zika 2014 Postup realizace - program V pravé části programu se nachází nástrojová lišta s programovými komponenty Nástrojová lišta obsahuje tři záložky, zvolíme prostřední – Kompletní zobrazení
Projekt CZ.1.07/1.1.16/ Bc. Jaroslav Zika 2014 Seznámení s prvkem - smyčka Smyčka je část kódu, který se opakuje, pokud je splněna podmínka Smyčka se nachází v záložce Flow pod tlačítkem s názvem Loop Flow Loop
Projekt CZ.1.07/1.1.16/ Bc. Jaroslav Zika 2014 Klikneme-li levým tlačítkem myši na programovatelný prvek, vyvoláme nabídku vlastností Control – Nastaví podmínku, kdy se má smyčka opakovat Forever – Běží do nekonečna Sensor – Běží pokud je na určitém sensoru daná hodnota Time – Běží po určitý čas Count – Běží po určitý počet opakování Logic – Běží pokud má proměnná danou hodnotu Seznámení s prvkem - smyčka
Projekt CZ.1.07/1.1.16/ Bc. Jaroslav Zika 2014 Postup realizace - program Pro čtení dat ze senzoru opakovaně použijeme smyčku Z panelu nástrojů vložíme komponent Smyčka do vlákna programu Flow Loop
Projekt CZ.1.07/1.1.16/ Bc. Jaroslav Zika 2014 Seznámení s prvkem – senzor zvuku SensorSound sensor Senzorový prvek umožnuje číst data ze sensoru Zvukový sensor se nachází v záložce Sensor pod tlačítkem s názvem Sound sensor
Seznámení s prvkem - zvuk Projekt CZ.1.07/1.1.16/ Bc. Jaroslav Zika 2014 Klikneme-li levým tlačítkem myši na programovatelný prvek, vyvoláme nabídku vlastností Port: vybrání, ke kterému vstupnímu portu je senzor připojen. Compare: slouží k nastavení úrovně zvuku pro porovnávání s hodnotou snímanou senzorem. Stejnou funkci má i volba znamének větší a menší.
Seznámení s prvkem - switch Projekt CZ.1.07/1.1.16/ Bc. Jaroslav Zika 2014 Pomocí prvku Switch můžeme větvit program (vytvářet podmínky) Prvek Switch se nachází v záložce Flow pod tlačítkem s názvem Switch Horní část prvku je aktivována pokud je podmínka splněna Dolní číst prvku je aktivována pokud podmínka splněna není
Seznámení s prvkem - switch Projekt CZ.1.07/1.1.16/ Bc. Jaroslav Zika 2014 Control - V této oblasti lze určit zda se bude rozhodování switch řídit hodnotami které předem zadáte nebo výstupem ze senzoru Senzor – Zde lze nastavit z jakého senzoru bude brát switch data pro rozhodování
Projekt CZ.1.07/1.1.16/ Bc. Jaroslav Zika 2014 Postup realizace – program Do vytvořené smyčky vložíme prvek switch Prvek switch nastavíme aby se rozhodoval podle dat ze zvukového senzoru
Nastavíme prvek switch Control: Sensor Sensor: Ultrasonic Sensor Display: Flat view – ano Show: Centimeters Prvek Switch s ultrazvukovým senzorem vložíme do horní větve Switch se zvukovým senzorem Postup realizace - Program Projekt CZ.1.07/1.1.16/ Bc. Jaroslav Zika 2014
Seznámení s prvkem – motor Projekt CZ.1.07/1.1.16/ Bc. Jaroslav Zika 2014 Motor je pohyblivé zařízení které vytváří otáčivý pohyb Tento prvek se nachází v záložce Action pod tlačítkem s názvem Motor Action Motor
Klikneme levým tlačítkem myši na programovatelný prvek a vyvoláme nabídku vlastností Direction – Slouží k nastavení směru otáčení Power – Nastavuje sílu motoru Duration – Zde se nastavuje o kolik stupňů nebo jak dlouho se má motor otáčet Seznámení s prvkem - motor Projekt CZ.1.07/1.1.16/ Bc. Jaroslav Zika 2014
Seznámení s prvkem - wait Projekt CZ.1.07/1.1.16/ Bc. Jaroslav Zika 2014 Chceme-li počkat určitou dobu, nebo počkat na data ze senzoru, použijeme prvek Wait Tento prvek se nachází v záložce Flow pod tlačítkem s názvem Wait
Seznámení s prvkem – wait Projekt CZ.1.07/1.1.16/ Bc. Jaroslav Zika 2014 Klikneme levým tlačítkem myši na programovatelný prvek a vyvoláme nabídku vlastností Control – Nastaví druh čekání (čas nebo senzor) Until – Nastaví, jak dlouho má prvek čekat (ve vteřinách)
Projekt CZ.1.07/1.1.16/ Bc. Jaroslav Zika 2014 Postup realizace - program Do prvku switch s ultrazvukovým senzorem vložíme do horní větve (podmínka je splněna) Motor, který se otočí o 90 stupňů. Za Motor vložíme prvek Wait nastavený na 2 sekundy Za prvek Wait vložíme další prvek Wait nastavený na ultrazvukový (pohybový) senzor Nakonec vložíme motor, který se otočí o 90 stupňů opačným směrem
Projekt CZ.1.07/1.1.16/ Bc. Jaroslav Zika 2014 Postup realizace - program Program nahrajeme do mikrokontroleru a spustíme ho. Při hluku a pohybu se spustí motor Při dalším pohybu se spustí motor opačným směrem
Projekt CZ.1.07/1.1.16/ Bc. Jaroslav Zika 2014 Výstup programu Provedeme měření událostí ve svém okolí (Projíždějící auta, hlasitá televize, práce v dílně) Výsledky zapíšeme do tabulky
Děkuji za pozornost Po provedení úlohy ukliďte pracoviště a zkontrolujte, zda máte všechny zapůjčené součástky. Projekt CZ.1.07/1.1.16/ Bc. Jaroslav Zika 2014
Použité zdroje a literatura Ostatní zdroje jsou autora Projekt CZ.1.07/1.1.16/ Bc. Jaroslav Zika 2014