- Материјали који се користе
- НЕО6М ГПС модул
- 1,3-инчни И2Ц ОЛЕД екран
- Кружни дијаграм
- Програмирање Ардуина за Ардуино ОЛЕД брзинометар
Брзиномери се користе за мерење брзине путовања возила. Претходно смо користили ИР сензор и Халл сензор за израду аналогног брзиномера, односно дигиталног брзиномера. Данас ћемо користити ГПС за мерење брзине возила у покрету. ГПС брзиномери су прецизнији од стандардних брзиномера, јер могу непрекидно лоцирати возило и могу израчунати брзину. ГПС технологија се широко користи у паметним телефонима и возилима за навигацију и упозорења о саобраћају.
У овом пројекту ћемо изградити Ардуино ГПС брзинометар користећи НЕО6М ГПС модул са ОЛЕД дисплејем.
Материјали који се користе
- Ардуино Нано
- НЕО6М ГПС модул
- 1,3-инчни И2Ц ОЛЕД екран
- Бреадбоард
- Повезивање џампера
НЕО6М ГПС модул
Овде користимо НЕО6М ГПС модул. ГПС модул НЕО-6М је популаран ГПС пријемник са уграђеном керамичком антеном, који пружа снажне могућности сателитског претраживања. Овај пријемник може да препозна локације и прати до 22 сателита и идентификује локације било где у свету. Помоћу уграђеног индикатора сигнала можемо да надгледамо мрежни статус модула. Има резервну батерију података, тако да модул може да сачува податке када се случајно искључи главно напајање.
Срж језгра унутар модула ГПС пријемника је ГПС чип НЕО-6М компаније у-блок. Може да прати до 22 сателита на 50 канала и има изузетно импресиван ниво осетљивости који износи -161 дБм. Овај 50-канални механизам за позиционирање у-блок 6 може се похвалити временом до првог поправљања (ТТФФ) краћим од 1 секунде. Овај модул подржава брзину преноса од 4800-230400 бпс и има подразумевану брзину преноса од 9600.
Карактеристике:
- Радни напон: (2,7-3,6) В једносмерна струја
- Радна струја: 67 мА
- Брзина преноса: 4800-230400 бпс (9600 подразумевано)
- Протокол комуникације: НЕМА
- Интерфејс: УАРТ
- Спољна антена и уграђени ЕЕПРОМ.
Пиноут ГПС модула:
- ВЦЦ: Пин за улазни напон модула
- ГНД: Приземни клин
- РКС, ТКС: УАРТ-ови комуникациони пинови са микроконтролером
Претходно смо повезали ГПС са Ардуином и изградили смо многе пројекте користећи ГПС модуле, укључујући праћење возила.
1,3-инчни И2Ц ОЛЕД екран
Термин ОЛЕД означава се као „ органска диода која емитује светлост“, користи исту технологију која се користи на већини наших телевизора, али има мање пиксела у поређењу са њима. Заиста је забавно имати ове модуле дисплеја који се међусобно повезују са Ардуином, јер ће наши пројекти изгледати супер. Овде смо покрили цео чланак о ОЛЕД екранима и њиховим врстама. Овде користимо монохроматски 4-пински ОЛЕД екран СХ1106 ОЛЕД 1,28 ”. Овај екран може да ради само у режиму И2Ц.
Техничке спецификације:
- ИЦ управљачког програма: СХ1106
- Улазни напон: 3.3В-5В ДЦ
- Резолуција: 128к64
- Интерфејс: И2Ц
- Потрошња струје: 8 мА
- Боја пиксела: плава
- Угао гледања:> 160 степени
Опис пин-а:
ВЦЦ: Улазно напајање 3.3-5В једносмерне струје
ГНД: Референтни пин за уземљење
СЦЛ: пин сата сата на И2Ц интерфејсу
СДА: пин за серијске податке И2Ц интерфејса
Заједница Ардуино нам је већ дала много библиотека које се могу директно користити да би се ово учинило много једноставнијим. Испробао сам неколико библиотека и открио да је библиотека Адафруит_СХ1106.х врло једноставна за употребу и да има прегршт графичких опција, па ћемо је користити и у овом упутству.
ОЛЕД изгледа веома кул и лако се може повезати са другим микроконтролерима ради изградње неких занимљивих пројеката:
- Повезивање ССД1306 ОЛЕД екрана са Распберри Пи
- Повезивање ССД1306 ОЛЕД екрана са Ардуином
- Интернет сат помоћу ЕСП32 и ОЛЕД екрана
- Аутоматски регулатор температуре наизменичне струје који користи Ардуино, ДХТ11 и ИР Бластер
Кружни дијаграм
Дијаграм кола за овај Ардуино ГПС брзинометар који користи ОЛЕД дат је у наставку.
Комплетна поставка ће изгледати доле:
Програмирање Ардуина за Ардуино ОЛЕД брзинометар
Комплетни код пројекта дат је на дну водича. Овде објашњавамо комплетан код ред по ред.
Пре свега, укључите све библиотеке. Овде се библиотека ТиниГПС ++. Х користи за добијање ГПС координата помоћу модула ГПС пријемника, а Адафруит_СХ1106.х се користи за ОЛЕД.
#инцлуде
Затим се дефинише ОЛЕД И2Ц адреса, која може бити ОКС3Ц или ОКС3Д, овде је то ОКС3Ц у мом случају. Такође, мора се дефинисати Ресетовати пин екрана. У мом случају, дефинисано је као -1, јер екран дели Ардуиноов Ресет пин.
#дефине ОЛЕД_АДДРЕСС 0к3Ц #дефине ОЛЕД_РЕСЕТ -1 Адафруит_СХ1106 дисплаи (ОЛЕД_РЕСЕТ);
Даље, објекти за класу ТиниГПСПлус и Софтваресериал су дефинисани како је приказано у наставку. За серијску класу софтвера потребан је Ардуино пин бр. за серијску комуникацију, која је овде дефинисана као 2 и 3.
инт РКС = 2, ТКС = 3; ТиниГПСПлус гпс; СофтвареСериал гпссофт (РКС, ТКС);
Унутар подешавања () , иницијализација се врши за серијску комуникацију и ОЛЕД. Подразумевана брзина преноса података за серијску комуникацију софтвера дефинисана је као 9600. Овде се СХ1106_СВИТЦХЦАПВЦЦ користи за интерно генерисање напона на екрану од 3,3 В, а функција дисплаи.бегин користи се за иницијализацију екрана.
воид сетуп () { Сериал.бегин (9600); гпссофт.бегин (9600); дисплаи.бегин (СХ1106_СВИТЦХЦАПВЦЦ, ОЛЕД_АДДРЕСС); дисплаи.цлеарДисплаи (); }
Унутар док прави круг, серијски подаци примљени су потврђена, ако су примљени валидни ГПС сигнала, а затим дисплаиспеед () је позван да покаже брзину вредност на ОЛЕД.
док је (гпссофт.аваилабле ()> 0) иф (гпс.енцоде (гпссофт.реад ())) дисплаипеед ();
Унутар дисплаиспеед () функцију, подаци о брзини од ГПС модула се проверава помоћу функције гпс.спеед.исВалид () и ако враћа праву вредност, онда се брзина вредност је приказана на ОЛЕД екрану. Овде се величина текста на ОЛЕД-у дефинише помоћу функције дисплаи.сетТектСизе, а позиција курсора одређује се помоћу функције дисплаи.сетЦурсор . Подаци о брзини из ГПС модула се декодирају помоћу функције гпс.спеед.кмпх () и на крају се приказују помоћу дисплаи.дисплаи () .
иф (гпс.спеед.исВалид ()) { дисплаи.сетТектСизе (2); дисплаи.сетЦурсор (40, 40); дисплаи.принт (гпс.спеед.кмпх ()); дисплаи.дисплаи (); }
На крају, отпремите код у Ардуино Уно и ставите систем у возило у покрету, а на ОЛЕД дисплеју ћете видети брзину као што је приказано на доњој слици.
Комплетни код са демо видеом је дат у наставку.