- Потребни материјали
- Увод у ДС18Б20 температурни сензор
- Предуслови
- Кружни дијаграм
- Инсталирање Адафруит ЛЦД библиотеке на Распберри П
- Омогућавање једножичног интерфејса у Пи
- Излаз / рад
Распберри Пи је познат по својој рачунској снази и широкој примени на пољу ИоТ, аутоматизације куће итд. Међутим, да би било који електронски систем могао да ступи у интеракцију са стварним светом и добије информације о њему, систем мора да користи сензоре. Много је врста сензора који се користе за овај поступак, а потребан сензор се бира на основу параметра који се мери и његове примене. У овом упутству научимо да повезујемо температурни сензор ДС18Б20 са Распберри Пи.
ДС18Б20 се широко користи сензор температуре, углавном на местима где су оштре радних окружења које су укључене као хемијске индустрије, мина биљака итд Овај чланак ће рећи о сензора и како оутстандс други сензор температуре и коначно интерфејс је са Распберри Пи и видели температуру вредност на ЛЦД екрану од 16к2.
Потребни материјали
- ДС18Б20 Температурни сензор
- Распберри Пи
- ЛЦД екран од 16 * 2
- 10к трим пот
- 10к Повуците отпорник
- Бреадбоард
- Повезивање жица
Увод у ДС18Б20 температурни сензор
ДС18Б20 је три терминална температурна сензора доступна у пакету ТО-92 (транзисторски тип). Веома је једноставан за употребу и захтева само једну спољну компоненту да би почео да ради. Такође му је потребан само један ГПИО пин са МЦУ / МПУ да би комуницирао са њим. Типични температурни сензор ДС18Б20 са називом пина приказан је испод.
Овај сензор је такође доступан као водоотпорна верзија у којој је сензор прекривен цилиндричном металном цевчицом. У овом упутству ћемо користити уобичајени сензор типа транзистора који је приказан горе. ДС18Б20 је 1-жица програмирати температурни сензор што значи да захтева само пин података за слање информације на микроконтролера или микропроцесора одбора као што је Распберри Пи. Сваки сензор има јединствену 64-битну адресу, тако да је такође могуће имати више сензора повезаних на исти МЦУ / МПУ, јер се сваком сензору може појединачно обраћати на истој магистрали података. Спецификације сензора су приказане испод.
- Радни напон: 3-5В
- Опсег мерења: -55 ° Ц до + 125 ° Ц
- Тачност: ± 0,5 ° Ц
- Резолуција: 9-битна до 12-битна
Сад кад знамо довољно о сензору, хајде да га повежемо са Распберри Пи.
Предуслови
Претпоставља се да је ваш Распберри Пи већ спојен са оперативним системом и да је у могућности да се повеже на Интернет. Ако није, следите Водич за почетак рада са Распберри Пи пре него што наставите. Овде користимо Расбиан Јессие инсталирану Распберри Пи 3.
Такође се претпоставља да свом пиу имате приступ било кроз прозоре терминала или путем друге апликације путем које можете писати и извршавати програме питхон и користити прозор терминала.
Кружни дијаграм
Као што смо раније рекли у овом упутству , повезаћемо сензор ДС18Б20 са Пи и приказати вредност температуре на ЛЦД екрану од 16 * 2. Дакле, сензор и ЛЦД би требало да буду повезани са Распберри Пи како је приказано испод.
Пратите шему кола и у складу с тим успоставите везу. И ЛЦД и ДС18Б20 сензор раде уз помоћ + 5В које пружа 5В пин на Распберри пи. ЖК је направљен за рад у 4-битном моду са Распберри Пи, у ГПИО игле 18,23,24 и 25 се користи за линију података и гпио игле 7 и 8 се користи за контролу линије. Потенциометар се користи за контролу нивоа контраста ЛЦД. Линија за пренос података ДС18Б20 повезана је са ГПИО пином 4. Такође имајте на уму да се мора користити 10К отпорник који повлачи податке тако високо као што је приказано на дијаграму кола.
Можете пратити горњу шему кола и успоставити везе или користити табелу пинова да бисте наставили са ГПИО бројевима пинова.
Саставио сам круг на плочи уз помоћ једноструких жица и мушких и женских жица да бих успоставио везе. Као што видите, сензору је потребна само једна жица за међусобно повезивање, што заузима мање простора и иглица. Мој хардвер изгледа овако доле када се успоставе све везе. Сада је време да укључите пи и започнете програмирање.
Инсталирање Адафруит ЛЦД библиотеке на Распберри П
Вредност температуре ће се приказати на ЛЦД дисплеју 16 * 2. Адафруит нам пружа библиотеку за лако руковање овим ЛЦД-ом у 4-битном режиму, па га допустимо да га додамо у нашу Распберри Пи тако што ћемо отворити прозор терминала Пи и следити кораке у наставку.
Корак 1: Инсталирајте гит на Распберри Пи користећи линију испод. Гит вам омогућава да клонирате све пројектне датотеке на Гитхуб-у и користите их на вашем Распберри пи. Наша библиотека је на Гитхуб-у, тако да морамо инсталирати гит да бисмо је преузели у пи.
апт-гет инсталл гит
Корак 2: Следећи ред води до ГитХуб странице на којој је библиотека само извршава ред за клонирање пројектне датотеке у почетном директоријуму Пи
гит клон гит: //гитхуб.цом/адафруит/Адафруит_Питхон_ЦхарЛЦД
Корак 3: Помоћу наредбе у наставку промените линију директоријума да бисте ушли у пројектну датотеку коју смо управо преузели. Командна линија је дата у наставку
цд Адафруит_Питхон_ЦхарЛЦД
Корак 4: Унутар директоријума налази се датотека под називом сетуп.пи , морамо је инсталирати и инсталирати библиотеку. Користите следећи код за инсталирање библиотеке
судо питхон сетуп.пи инсталација
То је то што је библиотека требала бити успешно инсталирана. Сада слично, наставимо са инсталирањем ДХТ библиотеке која је такође из Адафруит-а.
Омогућавање једножичног интерфејса у Пи
Будући да сензор ДС18Б20 комуницира помоћу једножичне методе, морамо омогућити једножичну комуникацију на Пи пратећи кораке у наставку.
Корак 1: - Отворите командну линију и користите наредбу испод да бисте отворили датотеку за конфигурацију
судо нано /боот/цонфиг.ткт
Корак 2: - Унутар датотеке конфигурације додајте ред „ дтоверлаи = в1-гпио “ (заокружен доњом сликом) и сачувајте датотеку као што је приказано испод
Корак 3: - Притисните Цтрл + Кс да бисте изашли из датотеке и сачували је притиском на „И“, а затим тастер Ентер. На крају поново покрените Пи помоћу команде
судо ребоот
Корак 4: - Када се поново покрене, поново отворите терминал и унесите следеће команде.
судо модпробе в1– гпио судо модпробе в1 -тхерм. цд / сис / бус / в1 / девицес лс
Прозори терминала ће приказати нешто слично
Корак 5: - На крају корака 4 када унесете лс , ваш пи ће приказати јединствени број који ће се разликовати за сваког корисника, на основу сензора, али ће увек почињати са 28-. У мом случају је број 28-03172337цафф .
Корак 6: - Сада можемо да проверимо да ли сензор ради уношењем следећих команди
цд 28-КСКСКСКСКСКСКСКСКСКСКСКС. Пронађи ('т =') # пронађи "т =" у реду ако су обрезани_подаци! = -1: темп_стринг = линес #трим тхе стриг онли то тхе темоературе валуе темп_ц = флоат (темп_стринг) / 1000.0 # поделите вредност 1000 да бисте добили стварну вредност поврата темп_ц #вратите вредност за штампање на ЛЦД-у
Променљиве линије се користе за читање линија унутар датотеке. Затим се ови редови упоређују и тражи се слово „т =“, а вредност након тог слова чува се у променљивој темп_стринг . На крају да добијемо вредност температуре користимо променљиву темп_ц у којој вредност низа делимо са 1000. На крају вратимо променљиву темп_ц као резултат функције.
Унутар бесконачне вхиле петље, морамо само да позовемо горе дефинисану функцију да бисмо добили вредност температуре и приказали је на ЛЦД екрану. Такође бришемо ЛЦД заслон сваке 1 секунде како би се приказала ажурирана вредност.
вхиле 1: # Инфините Лооп лцд.цлеар () # Очистите ЛЦД екран лцд .мессаге ('Темп =%.1ф Ц'% гет_темп ()) # Прикажите вредност температурног времена.спавање (1) # Сачекајте 1 секунду затим ажурирајте вредности
Излаз / рад
Као и увек, комплетни питхон код је дат на крају странице, користите га и компајлирајте га на Распберри Пи. Успоставите везу као што је приказано на схеми кола и прије извршавања програма провјерите јесте ли слиједили горње кораке за инсталирање датотека заглавља ЛЦД-а и омогућили једножичну комуникацију на пи. Када је то готово, само покрените програм, ако све ради како се очекивало, требали бисте бити у стању да приметите уводни текст. Ако не подесите потенциометар контраста док не видите нешто. Коначни резултат ће изгледати отприлике овако у наставку.
Надам се да сте разумели пројекат и да нисте имали проблема са његовом изградњом. Ако другачије наведете свој проблем у одељку за коментаре или користите форум за више техничке помоћи. Ово је само пројекат повезивања, али када се то заврши, можете размишљати унапред радећи на метеоролошкој станици Распберри Пи, обавештењу о температури е-поште и још много тога.
Комплетан рад пројекта такође је приказан на видео снимку испод где можете видети вредност температуре која се ажурира у реалном времену.