- Nepieciešamās sastāvdaļas
- Ķēdes shēma
- Bluetooth komunikācija, izmantojot MATLAB komandu logu
- Bluetooth komunikācija, izmantojot MATLAB GUI
Bluetooth ir vienkāršākais un populārākais protokols maza darbības attāluma bezvadu sakariem iegultās sistēmās. Bluetooth tiek izmantots ne tikai datu pārsūtīšanai no vienas ierīces uz otru, bet arī, lai ierīces vadītu bezvadu režīmā. Gandrīz katram elektroniskajam sīkrīkam mūsdienās ir Bluetooth atbalsts, tāpēc ir gudra izvēle, ja iegultajā lietojumprogrammā ir Bluetooth vadības opcija.
Šajā apmācībā mēs uzzināsim, kā izmantot Bluetooth MATLAB, lai sazinātos bezvadu režīmā. Mēs izmantosim datora iebūvēto Bluetooth ar MATLAB vienā pusē un HC-05 ar Arduino otrā pusē. Ir divi veidi, kā iestatīt saziņu starp MATLAB un Arduino, izmantojot Bluetooth. Viens izmanto komandu logu, bet otrs MATLAB GUI. Arduino kods abām metodēm paliks nemainīgs. Ja esat jauns MATLAB lietotājs, ieteicams sākt ar vienkāršu LED mirgošanas programmu ar MATLAB un apgūt MATLAB lietoto pamatterminoloģiju. Jūs varat turpināt izpētīt citus MATLAB projektus:
- Sērijas komunikācija starp MATLAB un Arduino
- Līdzstrāvas motora vadība, izmantojot MATLAB un Arduino
- Stepper motora vadība, izmantojot MATLAB un Arduino
- Darba sākšana ar attēlu apstrādi, izmantojot MATLAB
Nepieciešamās sastāvdaļas
- MATLAB instalēts klēpjdators (priekšroka: R2016a vai jaunākas versijas)
- Arduino UNO
- Bluetooth modulis (HC-05)
- LED (jebkura krāsa)
- Rezistors (330 omi)
- Džemperu vadi
Lai uzzinātu vairāk par HC-05 un tā saskarni ar Arduino, skatiet šādus rakstus.
- Ar Bluetooth vadāms servomotors, izmantojot Arduino
- Balss kontrolētas gaismas diodes, izmantojot Arduino un Bluetooth
- Mobilais tālrunis kontrolē maiņstrāvu, izmantojot Arduino un Bluetooth
Ķēdes shēma
Zemāk ir dota Bluetooth sakaru shēma starp MATLAB un Arduino :
Bluetooth komunikācija, izmantojot MATLAB komandu logu
Šī ir vienkārša metode, kā iestatīt Bluetooth komunikāciju starp Arduino un MATLAB. Šeit MATLAB izmanto klēpjdatora bluetooth, lai savienotu HC-05, kas savienots ar Arduino. Vispirms mums ir jākodē Arduino kods, lai nolasītu sērijveida ienākošos datus, kas nāk no MATLAB (izmantojot klēpjdatora Bluetooth).
Tad šos Bluetooth pārraidītos datus no MATLAB var izmantot, lai kontrolētu jebko, kas savienots ar Arduino. Šeit mēs esam pievienojuši LED ar Arduino, kuru var vadīt no LAPTOP, izmantojot MATLAB.
Vispirms augšupielādējiet norādīto Arduino kodu Arduino UNO un pēc tam sāciet kodēšanu MATLAB komandu logā.
# iekļaut
Pēc tam nokopējiet un ielīmējiet zemāk redzamo MATLAB kodu komandu logā Bluetooth saziņai starp MATLAB un Arduino.
instrhwinfo (“Bluetooth”, “HC-05”); bt = Bluetooth (“HC-05”, 1); fopēns (bt);
Zemāk esošajā kodā komandu fprintf (bt, '0') izmanto, lai izslēgtu LED, nosūtot '0' uz Arduino. Tagad, ja vēlaties ieslēgt LED, vienkārši nosūtiet “1”, nevis “0”, izmantojot zemāk esošo komandu.
fprintf (bt, '1');
Lai pārbaudītu informāciju par pieejamo aparatūru, izmantojiet komandu zemāk
instrhwinfo (“tips”, “Ierīces nosaukums”);
Lai atvērtu Bluetooth portu, zemāk tiek izmantota komanda
fopēns (bt);
Pārbaudiet zemāk esošo videoklipu, lai izprastu visu datu sūtīšanas procesu no MATLAB uz Arduino, izmantojot Bluetooth.
Bluetooth komunikācija, izmantojot MATLAB GUI
Lai demonstrētu Bluetooth komunikāciju, izmantojot MATLAB GUI, mēs MATLAB izveidosim trīs grafiskās pogas, lai ieslēgtu, izslēgtu un mirgot Arduino pievienoto LED. Noklikšķinot uz šīm grafiskajām pogām, dati no MATLAB uz Bluetooth tiks nosūtīti uz HC-05. Arduino satur kodu, lai saņemtu Bluetooth pārraidītos datus no MATLAB uz HC-05 un vadītu LED atbilstoši saņemtajiem datiem. Arduino kods paliks tāds pats kā iepriekšējais, atšķirība ir tikai tā, ka iepriekš mēs sūtījām datus “1” un “0” caur MATLAB komandu logu, un tagad tie paši dati tiks nosūtīti, noklikšķinot uz trim grafiskām pogām.
Lai palaistu GUI, komandu logā ierakstiet zemāk esošo komandu
vadīt
Tiks atvērts uznirstošais logs, pēc tam atlasiet jaunu tukšu GUI, kā parādīts zemāk esošajā attēlā,
Tagad izvēlieties trīs spiedpogas, lai ieslēgtu, izslēgtu un mirgot LED, kā parādīts zemāk,
Lai mainītu spiedpogu izmēru vai mainītu to formu, vienkārši noklikšķiniet uz tā, un jūs varēsiet vilkt pogas stūrus. Veicot dubultklikšķi uz spiedpogas, jūs varat mainīt konkrētās pogas krāsu, virkni un tagu. Mēs esam pielāgojuši trīs spiedpogas, kā parādīts zemāk esošajā attēlā.
Pogas varat pielāgot pēc savas izvēles. Tagad, kad to saglabājat, MATLAB redaktora logā tiks ģenerēts kods. Rediģējiet šo kodu atbilstoši uzdevumam, kuru vēlaties veikt savam Arduino, saņemot Bluetooth datus, izmantojot MATLAB GUI. Tātad zemāk mēs esam rediģējuši MATLAB kodu. Jūs varat uzzināt vairāk par komandu logu, redaktora logu utt. Darba sākšana ar MATLAB apmācību.
Pilnīgs MATLAB kods LED vadībai no MATLAB, izmantojot Bluetooth, ir norādīts šī projekta beigās. Šeit mēs lejupielādēšanai iekļaujam arī GUI failu (.fig) un koda failu (.m), izmantojot kuru jūs varat pielāgot pogas atbilstoši savām prasībām. Zemāk ir daži uzlabojumi, kurus mēs izdarījām, lai kontrolētu LED, kas savienots ar Arduino.
Nokopējiet un ielīmējiet zemāk esošo kodu rindā Nr. 74, lai iestatītu vai savienotu MATLAB ar klēpjdatora Bluetooth.
nodzēst visu; globālā bt; instrhwinfo (“Bluetooth”, “HC-05”); bt = Bluetooth (“HC-05”, 1); fopēns (bt);
kur, fopen (bt) izmanto, lai atvērtu Bluetooth portu datu pārsūtīšanai.
Tagad, ritinot uz leju, redzēsiet, ka GUI trīs spiedpogām ir izveidotas trīs funkcijas. Tagad ierakstiet kodu funkcijās atbilstoši uzdevumam, kuru vēlaties veikt ar klikšķi.
Ar LED ON pogu funkcijai, nokopējiet un ielīmējiet tālāk kodu tieši pirms beigām funkciju, lai ieslēgtu LED. Zem koda fprintf (bt, '1') tiek izmantots, lai nosūtītu '1' no MATLAB uz HC-05, izmantojot klēpjdatora Bluetooth. Arduino saņems šo informāciju "1" līdz HC-05 un mirdzumu LED, padarot savu 11 th pin augsts.
globālā bt; fprintf (bt, '1');
Ar LED off pogu funkcijai, nokopējiet un ielīmējiet tālāk kodu tieši pirms beigām funkciju, lai izslēgtu LED. Zem koda fprintf (bt, “0”) tiek izmantots, lai nosūtītu “0” no MATLAB uz HC-05, izmantojot klēpjdatora Bluetooth. Arduino saņems "0" līdz HC-05 un izslēdziet LED, padarot savu 11 th pin zems.
globālā bt; fprintf (bt, '0');
Pēc Blink Pogas funkcija, izmantojiet zemāk kodu mirgot LED. A for loop tiek izmantots, lai mirgot LED 10 reizes.
globālā bt; par i = 1:10 fprintf (bt, '1'); pauze (0,5); fprintf (bt, '0'); pauze (0,5); beigas
Pēc MATLAB GUI kodēšanas pabeigšanas un aparatūras iestatīšanas atbilstoši ķēdes shēmai vienkārši noklikšķiniet uz palaist pogas, lai palaistu rediģēto kodu.m failā.
MATLAB var paiet dažas sekundes, lai atbildētu, neklikšķiniet uz nevienas GUI pogas, kamēr MATLAB neparādās indikācija BUSY, kuru varat redzēt ekrāna kreisajā apakšējā stūrī, kā parādīts zemāk,
Kad viss ir gatavs, noklikšķiniet uz pogas LED-ON, LED OFF un BLINK, lai attiecīgi ieslēgtu, izslēgtu un mirgot. Visus šī projekta koda failus var lejupielādēt šeit vai arī jūs varat izmantot zemāk norādīto kodu.
Pārbaudiet zemāk esošo videoklipu, lai saprastu visu datu sūtīšanas procesu no MATLAB uz Arduino, izmantojot Bluetooth, izmantojot MATLAB GUI.