- Ардуино Нано 33 БЛЕ Сенсе
- Преглед хардвера Ардуино Нано 33 БЛЕ Сенсе
- Побољшања софтвера у смислу Ардуино Нано 33 БЛЕ
- Припрема вашег Ардуино ИДЕ-а за Ардуино Нано 33 БЛЕ сенсе
- Програм за читање података сензора и приказ на серијском монитору
- Ардуино Нано 33 БЛЕ - Отпремање кода
Ардуино је развојна платформа за брзо прототипирање и валидацију идеја. Многи од нас би започели са Ардуино УНО развојним одбором, али данас како напредујемо ка Интернету ствари, Цомпутер Висиону, вештачкој интелигенцији, машинском учењу и другим футуристичким технологијама, скромни Ардуино УНО више није могао да се носи са својих 8 -битни микроконтролер. То је захтевало лансирање нових плоча са моћнијим процесорима који имају уграђене Ви-Фи, Блуетоотх, ГСМ и друге бежичне могућности, попут популарних МКР1000 или МКР ГСМ 1400. У том контексту, Ардуино је недавно лансирао нову верзију свог Наноа под називом Ардуино Нано 33.
Постоје потпуно две врсте плоча Ардуино Нано 33, и то Ардуино Нано 33 ИоТ и Ардуино Нано 33 БЛЕ сенсе. Главна разлика између оба модула је у томе што модул за осећај Ардуино Нано 33 БЛЕ има неке уграђене сензоре (о детаљима ће се касније говорити) док их Ардуино Нано 33 ИоТ нема. У овом чланку ћемо прегледати Ардуино Нано 33 БЛЕ чулну плочу, упознати вас са њеним карактеристикама и функционалностима и на крају написати узорак кода за читање вредности сензора и приказ на серијском монитору. Хајде да се учимо…!
Ардуино Нано 33 БЛЕ Сенсе
Име „Ардуино Нано 33 БЛЕ Сенсе“ је залогај, али само име даје неке важне информације. Зове се „Нано“, јер су димензије, пиноут и фактор облика врло слични класичном Ардуино Нано-у, планирано је да се користи као замена за Ардуино Нано у вашим постојећим пројектима, али квака је у томе што овај нови модул ради на 3.3В док класични Нано ради на 5В. Тако да мислим да је ту место „33“, што указује на то да плоча ради на 3.3В. Тада назив „БЛЕ“ указује да модул подржава Блуетоотх Лов Енерги (БЛЕ5 5.0)а назив „осећај“ указује на то да има уграђене сензоре попут акцелерометра, жироскопа, магнетометра, сензора температуре и влажности, сензора притиска, сензора близине, сензора у боји, сензора покрета, па чак и уграђени микрофон. Касније ћемо ући у детаље БЛЕ-а и других сензора, али за сада је то како Ардуино Нано 33 БЛЕ осећајна плоча изгледа равно као да се не бокса.
Преглед хардвера Ардуино Нано 33 БЛЕ Сенсе
На први поглед на плочи можете пронаћи пуно компонената препуних на врху, од којих су већина сензори о којима сам раније говорио. Али главни мозак је скривен иза металног кућишта на десној страни. Ово кућиште садржи нордијски процесор нРФ52840 који садржи моћни Цортек М4Ф и НИНА Б306 модул за БЛЕ и Блуетоотх 5 комуникацију. Ово омогућава плочи да ради са врло малом снагом и комуницира користећи Блуетоотх 5 што је идеално за мрежне мрежне апликације мале снаге у кућној аутоматизацији и другим повезаним пројектима. Такође пошто нРФ процесор подржава АРМ Мбед ОСтакође пружа нека побољшања софтвера о којима ћемо касније разговарати. Сензори, ЛЕД диоде, тастери и друге важне ствари које бисте требали знати на својој плочи означени су на доњој слици.
Као што можете видети са горње слике, плоча је напајана сензорима који вам могу помоћи у изградњи десне стране кутије, а да чак ни не морате да повежете плочу са било којим спољним сензорима. Плоча је намењена за употребу у носивим уређајима и другим паметним преносним уређајима као што су фитнес траке, надзор глукозе, педометри, паметни сатови, метеоролошка станица, кућна безбедност итд., Где ћете користити већину ових сензора. И као и увек сви ови сензори имају унапред изграђене библиотеке за Ардуино које можете лако користити. На крају овог чланка прочитаћемо вредности свих ових сензора и приказати их на серијском монитору. Детаљи о сензорима на Ардуино Нано 33 БЛЕ чулној плочи, заједно са потребним библиотекама, дати су у табели у наставку
Име сензора |
Параметри |
Везе |
ЛСМ9ДСИ - СТ Микроелектроника |
Акцелерометар, жироскоп, магнетометар |
ЛСМДСИ Датасхеет Ардуино_ЛСМ9ДС1 Библиотека |
ЛПС22ХБ - СТ Микроелектроника |
Притисак |
ЛПС22ХБ Датасхеет Библиотека Ардуино_ЛПС22ХБ |
ХТС221 - СТ микроелектроника |
Температура и влажност |
ЛПС22ХБ Датасхеет Библиотека Ардуино_ХТС221 |
АПДС9960 - Аваго Тецх. |
Близина, светло, боја, геста |
ЛПС22ХБ Датасхеет Библиотека Ардуино_АПДС9960 |
МП34ДТ05 - СТ микроелектроника |
Микрофон |
МП34ДТ05 Датасхеет Уграђена ПДМ библиотека |
Већина ових сензора су из компаније СТ Мицроелецтроницс и подржавају рад мале снаге што га чини идеалним за дизајн на батерије. Мало људи је можда већ упознато са АПДС9960 сензором, јер је већ доступан као модул за спате, а ми смо и раније користили АПДС9960 сензор са Ардуином. За више информација о овим сензорима можете посетити одговарајући лист са подацима, а такође се уверите да сте додали целокупну обезбеђену библиотеку у свој Ардуино ИДЕ да бисте почели да их користите са Ардуино Нано 33 БЛЕ чулном плочом. Да бисте додали библиотеку, можете да користите дату везу да бисте дошли до одговарајуће ГитХуб странице и преузели ЗИП датотеку, а затим користите Скетцх -> Инцлуде Либрари -> Адд.ЗИП Либрари или можете да користите и менаџер библиотека на Ардуино ИДЕ и додајте их библиотеке.
Техничке спецификације Ардуино Нано 33 БЛЕ сенсе одбора:
Покретан нордијским процесором нРФ52840, плоча Ардуино Нано 44 БЛЕ има следеће техничке спецификације
- Радни напон: 3.3В
- Улазни УСБ напон: 5В
- Напон улазног пина: 4.5В до 21В
- Чип: НИНА-Б3 - РФ52840
- Такт: 64МХз
- Фласх: 1 МБ
- СРАМ: 256 КБ
- Бежична повезаност: Блуетоотх 5.0 / БЛЕ
- Интерфејси: УСБ, И2Ц, СПИ, И2С, УАРТ
- Дигитални И / О пинови: 14
- ПВМ пинови: 6 (8-битна резолуција)
- Аналогни пинови: 8 (10-битни или 12-битни подесиви)
Побољшања софтвера у смислу Ардуино Нано 33 БЛЕ
Баш као и све Ардуино плоче, Ардуино Нано 33 БЛЕ осећај може се програмирати са Ардуино ИДЕ. Али, морате да користите управник форума и додате детаље о плочи у свој ИДЕ пре него што почнете. Као што знамо да се нРФ 52840 може програмирати помоћу АРМ Мбед ОС, то значи да наша Ардуино Нано 33 плоча подржава оперативни систем у реалном времену (РТОС). Помоћу Мбед ОС програмирања можемо истовремено покретати више нити у програму за обављање више задатака. Такође, потрошња енергије плоче ће се знатно смањити, сваки пут када позовемо функцију кашњења, плоча ће ући у режим голицања за време кашњења ради уштеде енергије и вратила би се у рад када се кашњење заврши. Извештено је да ће ова операција потрошити 4,5уА мање од уобичајене Ардуино операције одлагања.
То је речено, интеграција Мбед ОС-а са Ардуино ИДЕ-ом је релативно нова и требаће неко време пре него што у потпуности искористимо пуну снагу Мбед ОС-а са Ардуино ИДЕ-ом. Стога ћемо за брзо покретање написати програм за очитавање свих вредности сензора и приказивање на серијским мониторима.
Припрема вашег Ардуино ИДЕ-а за Ардуино Нано 33 БЛЕ сенсе
Покрените свој Ардуино ИДЕ и идите на Тоолс -> Боардс -> Боард Мангер да бисте покренули свој Ардуино Боард манагер. Сада потражите „Мбед ОС“ и инсталирајте пакет. Инсталација треба да прође неко време.
По завршетку инсталације затворите дијалошки оквир и повежите своју Ардуино 33 плочу помоћу микро УСБ кабла са преносним рачунаром. Чим повежете плочу, прозори ће аутоматски почети да инсталирају потребне управљачке програме за плочу. Затим отворите свој Ардуино ИДЕ и одаберите Алати -> Плоча -> Ардуино Нано 33. Затим такође одаберите прави ЦОМ порт тако што ћете означити Алати -> Порт, мој је повезан на порт ЦОМ3, али ваш може варирати. Када је порт изабран, ваш ИДЕ доњи десни угао би требао изгледати овако
Да бисмо брзо проверили да ли све функционише, можемо користити пример програма, покушајмо са оним који је дат у Филе -> Екамплес -> ПДМ -> ПДМСериалПлоттер. Овај програм ће користити уграђени микрофон за преслушавање звука и приказивање на серијском плотеру. Можете да учитате програм и проверите да ли плоча и ИДЕ раде.
Ако наиђете на смешно споро састављање, онда нисте сами, многи људи, укључујући мене, суочавају се са овим проблемом и у време писања овог чланка, изгледа да нема решења. Потребно ми је око 2-3 минута за компајлирање и отпремање једноставних програма, а када сам пробао неке БЛЕ програме или покушао да радим са Мбед ОС, време компајлирања се повећало на више од 10 минута што ме није подстакло да покушам даље. То је због интеграције Мбед ОС-а са Ардуино ИДЕ-ом, надамо се да ће неко из дивне Ардуино заједнице смислити решење за ово.
Програм за читање података сензора и приказ на серијском монитору
Ако не користимо БЛЕ или основне Мбед ОС функционалности плоче, време компајлирања је било разумно. Зато сам написао једноставну скицу како бих прочитао све вредности сензора и приказао их на серијском монитору, као што је приказано испод
Комплетни код који ће учинити исто дат је на дну ове странице, али проверите да ли сте инсталирали све горе поменуте библиотеке. Објашњење кода је следеће.
Покрените програм укључивањем свих потребних датотека заглавља. Овде ћемо користити сва четири сензора, осим микрофона
#инцлуде // Укључи библиотеку за 9-осну ИМУ #инцлуде // Укључи библиотеку за читање Притисак #инцлуде // Укључи библиотеку за читање Температуре и влажности #инцлуде // Укључи библиотеку за препознавање боја, близине и покрета
Унутар функције подешавања иницијализујемо серијски монитор брзином од 9600 бауд да би приказали све вредности сензора, а такође и иницијализовали све потребне библиотеке. Код унутар подешавања је приказан испод
воид сетуп () {Сериал.бегин (9600); // Серијски монитор за приказ свих вредности сензора иф (! ИМУ.бегин ()) // Иницијализација ИМУ сензора {Сериал.принтлн ("Неуспешно покретање ИМУ!"); вхиле (1);} иф (! БАРО.бегин ()) // Иницијализација сензора притиска {Сериал.принтлн ("Иницијализација сензора притиска није успела!"); вхиле (1);} иф (! ХТС.бегин ()) // Иницијализација сензора температуре и влажности {Сериал.принтлн ("Неуспешно покретање сензора температуре и влажности!"); вхиле (1);} иф (! АПДС.бегин ()) // Иницијализуј сензор за боју, близину и покрет {Сериал.принтлн ("Није успело покретање сензора за боју, близину и гесте!"); док (1);}}
Унутар функције петље читамо потребне вредности сензора из библиотеке, а затим их исписујемо на серијски монитор. Синтакса се може упутити из примера програма сваке библиотеке, прочитали смо акцелерометар, жироскоп, магнетометар, вредности сензора притиска, температуре, влажности и близине и приказали их на серијском монитору. Код за мерење вредности акцелерометра приказан је испод, такође, можемо мерити за све сензоре.
// Вредности акцелерометра иф (ИМУ.аццелератионАваилабле ()) {ИМУ.реадАццелератион (аццел_к, аццел_и, аццел_з); Сериал.принт ("Аццелерометер ="); Сериал.принт (аццел_к); Сериал.принт (","); Сериал.принт (аццел_и); Сериал.принт (","); Сериал.принтлн (аццел_з); } кашњење (200);
Ардуино Нано 33 БЛЕ - Отпремање кода
Отпремање кода на Нано 33 је слично свим другим плочама, али имајте на уму да плоча има два ЦОМ порта. Када кликнете на дугме за отпремање, Ардуино ИДЕ компајлира код и затим ресетује плочу аутоматски помоћу софтверске команде, то ће пребацити плочу у режим учитавања и отпремити ваш код. Због тога ћете, након што се отпремање заврши, можда приметити да је Ардуино ИДЕ аутоматски променио ЦОМ порт на други број и можда ћете желети да га вратите пре него што отворите серијски монитор.
Дакле, ово је прилично моје досадашње искуство са плочом Ардуино Нано 33, покушаћу нешто касније да направим са њеним сензорима и БЛЕ карактеристикама. Какво је било ваше искуство са плочом? Шта бисте желели да градим с тим? Оставите одговоре у одељку за коментаре и разговараћемо о томе више.