- Súčasti sú povinné
- Schéma zapojenia
- Komunikácia Bluetooth pomocou príkazového okna MATLAB
- Komunikácia Bluetooth pomocou MATLAB GUI
Bluetooth je najjednoduchší a najpopulárnejší protokol pre bezdrôtovú komunikáciu na krátke vzdialenosti vo vstavaných systémoch. Bluetooth sa nepoužíva iba na prenos údajov z jedného zariadenia do druhého, ale slúži aj na bezdrôtové ovládanie zariadení. Takmer každý elektronický gadget má v súčasnosti podporu Bluetooth, takže je rozumné zvoliť vo svojej vstavanej aplikácii možnosť ovládania Bluetooth.
Tu v tomto výučbe sa naučíme, ako používať Bluetooth v MATLABe na bezdrôtovú komunikáciu. Použijeme zabudované Bluetooth počítača s MATLAB na jednej strane a HC-05 s Arduino na druhej strane. Existujú dva spôsoby, ako nastaviť komunikáciu medzi MATLABom a Arduinom cez Bluetooth, jeden používa príkazové okno a druhý používa MATLAB GUI. Arduino kód pre obidve metódy zostane rovnaký. Ak ste v MATLABe nováčikom, odporúča sa začať s jednoduchým programom blikania LED pomocou MATLABu a osvojiť si základnú terminológiu používanú v MATLABe. Môžete ďalej preskúmať ďalšie projekty MATLAB:
- Sériová komunikácia medzi MATLAB a Arduino
- Ovládanie jednosmerného motora pomocou MATLAB a Arduino
- Ovládanie krokového motora pomocou MATLAB a Arduino
- Začíname so spracovaním obrazu pomocou MATLABu
Súčasti sú povinné
- Notebook nainštalovaný v systéme MATLAB (preferencia: R2016a alebo vyššia verzia)
- Arduino UNO
- Modul Bluetooth (HC-05)
- LED (ľubovoľná farba)
- Rezistor (330 ohmov)
- Prepojovacie drôty
Ak sa chcete dozvedieť viac informácií o HC-05 a jeho prepojení s rozhraním Arduino, pozrite si nasledujúce články.
- Bluetooth riadený servomotor pomocou Arduina
- Hlasom ovládané LED pomocou Arduina a Bluetooth
- Ovládanie pomocou mobilného telefónu pomocou Arduina a Bluetooth
Schéma zapojenia
Schémy Bluetooth komunikácie medzi MATLABom a Arduinom sú uvedené nižšie:
Komunikácia Bluetooth pomocou príkazového okna MATLAB
Toto je jednoduchá metóda nastavenia komunikácie Bluetooth medzi Arduino a MATLAB. Tu sa MATLAB využíva technológiu Bluetooth notebooku pripojiť HC-05 spojený s Arduino. Najprv musíme kódovať Arduino, aby čítalo sériové prichádzajúce dáta prichádzajúce z MATLABu (pomocou Bluetooth notebooku).
Potom môžu byť tieto dáta prenášané Bluetooth z MATLAB-u použité na riadenie všetkého, čo je pripojené k Arduinu. Tu sme pripojili k Arduinu LED, ktorú je možné ovládať z LAPTOP pomocou MATLABu.
Najskôr nahrajte daný Arduino kód do Arduino UNO a potom začnite kódovať v príkazovom okne MATLABu.
#include
Potom skopírujte a vložte nižšie uvedený kód MATLAB do príkazového okna pre Bluetooth komunikáciu medzi MATLAB a Arduino.
instrhwinfo ('Bluetooth', 'HC-05'); bt = Bluetooth ('HC-05', 1); fopen (bt);
V nasledujúcom kóde sa príkaz fprintf (bt, „0“) používa na vypnutie LED zaslaním „0“ do Arduina. Teraz, ak chcete zapnúť LED diódu, jednoducho pošlite '1' namiesto '0' pomocou nižšie uvedeného príkazu.
fprintf (bt, '1');
Ak chcete skontrolovať informácie o dostupnom hardvéri, použite príkaz nižšie
instrhwinfo ('typ', 'Názov zariadenia');
Na otvorenie portu bluetooth sa používa nasledujúci príkaz
fopen (bt);
Skontrolujte video nižšie, aby ste pochopili celý proces odosielania údajov z MATLABu do Arduina pomocou Bluetooth.
Komunikácia Bluetooth pomocou MATLAB GUI
Na demonštráciu Bluetooth komunikácie pomocou MATLAB GUI vytvoríme v MATLABe tri grafické tlačidlá na zapnutie, vypnutie a blikanie LED pripojenej k Arduinu. Dáta budú odosielané cez Bluetooth z MATLABu do HC-05 po kliknutí na tieto grafické tlačidlá. Arduino obsahuje kód na príjem údajov prenášaných Bluetooth z MATLABu do HC-05 a riadenie LED podľa prijatých údajov. Arduino kód zostane rovnaký ako predchádzajúci, rozdiel je iba v tom, že predtým sme prostredníctvom príkazového okna programu MATLAB odosielali údaje „1“ a „0“ a teraz sa rovnaké údaje odošlú po kliknutí na tri grafické tlačidlá.
Ak chcete spustiť grafické používateľské rozhranie, zadajte do príkazového okna nasledujúci príkaz
sprievodca
Otvorí sa vyskakovacie okno a potom vyberte nové prázdne grafické používateľské rozhranie, ako je to znázornené na obrázku nižšie,
Teraz zvoľte tri tlačidlá na zapnutie, vypnutie a blikanie LED, ako je to zobrazené nižšie,
Ak chcete zmeniť veľkosť alebo zmeniť tvar tlačidiel, stačí na ne kliknúť a budete môcť ťahať za rohy tlačidla. Dvojitým kliknutím na tlačidlo môžete zmeniť farbu, reťazec a značku konkrétneho tlačidla. Upravili sme tri tlačidlá, ako je znázornené na nasledujúcom obrázku.
Tlačidlá môžete prispôsobiť podľa vlastného výberu. Keď to teraz uložíte, vygeneruje sa kód v okne editora MATLABu. Upravte tento kód podľa úlohy, ktorú má vaše Arduino vykonať pri prijímaní údajov Bluetooth pomocou grafického používateľského rozhrania MATLAB. Takže nižšie sme upravili kód MATLABu. Viac informácií o príkazovom okne, okne editora atď. Sa dozviete v príručke Začíname s programom MATLAB.
Kompletný kód MATLAB na ovládanie LED z MATLABu cez Bluetooth je uvedený na konci tohto projektu. Ďalej sem zahrnieme súbor GUI (.fig) a súbor kódu (.m) na stiahnutie, pomocou ktorého si môžete prispôsobiť tlačidlá podľa svojich požiadaviek. Ďalej uvádzame niekoľko vylepšení, ktoré sme vykonali pre ovládanie LED spojenej s Arduino.
Skopírujte a vložte nasledujúci kód do riadku č. 74 na nastavenie alebo pripojenie MATLABu k Bluetooth notebooku.
zmazať všetko; globálny bt; instrhwinfo ('Bluetooth', 'HC-05'); bt = Bluetooth ('HC-05', 1); fopen (bt);
kde sa fopen (bt) používa na otvorenie portu Bluetooth na prenos dát.
Teraz, keď sa posuniete nadol, uvidíte, že v grafickom používateľskom rozhraní sú vytvorené tri funkcie pre tri tlačidlá. Teraz napíš kód do funkcií podľa úlohy, ktorú chceš vykonať po kliknutí.
Vo funkcii tlačidla LED ON zapnite LED skopírovaním a vložením nižšie uvedeného kódu tesne pred koncom funkcie. V nasledujúcom kóde sa fprintf (bt, '1') používa na odoslanie '1' z MATLABu do HC-05 pomocou Bluetooth notebooku. Arduino dostanú tieto údaje, 1 'až HC-05 a žiara LED tým, že jeho 11 th pin HIGH.
globálny bt; fprintf (bt, '1');
Vo funkcii tlačidla LED VYPNUTÉ skopírujte a vložte nasledujúci kód tesne pred koncom funkcie, aby sa LED VYPNUTÝ. V nasledujúcom kóde sa fprintf (bt, „0“) používa na odosielanie „0“ z MATLABu do HC-05 pomocou Bluetooth notebooku. Arduino dostane '0' až HC-05 a vypnúť LED tým, že jeho 11 th pin LOW.
globálny bt; fprintf (bt, '0');
Vo funkcii tlačidla BLINK blikajte LED pomocou nižšie uvedeného kódu. Na 10-krát bliknutie LED sa používa slučka for .
globálny bt; pre i = 1:10 fprintf (bt, '1'); pauza (0,5); fprintf (bt, '0'); pauza (0,5); koniec
Po dokončení programovania grafického používateľského rozhrania MATLAB a nastavení hardvéru podľa schémy zapojenia stačí kliknúť na tlačidlo spustenia a spustiť upravený kód v súbore.m.
MATLABu môže trvať niekoľko sekúnd, kým odpovie, neklikajte na žiadne tlačidlo grafického používateľského rozhrania, kým MATLAB nezobrazí údaj BUSY, ktorý vidíte v ľavom dolnom rohu obrazovky, ako je to znázornené nižšie,
Keď je všetko pripravené, kliknite na LED-ZAPNUTÉ, LED VYPNUTÉ a tlačidlo BLINK pre zapnutie, vypnutie a blikanie LED. Všetky súbory s kódmi pre tento projekt si môžete stiahnuť odtiaľto alebo môžete použiť kód uvedený nižšie.
Skontrolujte video nižšie, aby ste pochopili celý proces odosielania údajov z MATLABU do Arduina cez Bluetooth pomocou MATLAB GUI.