Како користити Распберри Пи за праћење температура помоћу Сенсе ХАТ-а

Постоји неколико начина на које можете пратити температуру околине користећи Распберри Пи рачунар са једном плочицом, можда као део подешавања метеоролошке станице. Иако бисте могли да користите екстерни сензор повезан на ГПИО пинове Распберри Пи-а, овде ћемо објаснити како да надгледате температуру помоћу Распберри Пи-а опремљеног Сенсе ХАТ-ом.

Шта је Сенсе ХАТ?

Кредит за слику: Распберри Пи

Званична Распберри Пи ХАТ (Хардвер Аттацхед он Топ) додатна плоча коју је дизајнирала и произвела компанија Распберри Пи, Сенсе ХАТ је првобитно креиран да га користе астронаути на Међународној свемирској станици. Од 2015. два Распберри Пи рачунара опремљена Сенсе ХАТ-ом коришћена су у научним експериментима које су осмислили школарци који су ушли у текућу Астро Пи изазов Ове две јединице су од тада замењене надограђеним верзијама заснованим на Распберри Пи 4 и опремљеним висококвалитетном камером.

Кредит за слику: Распберри Пи

Иако јој недостаје специјално сребрно кућиште дизајнирано за употребу у свемиру, стандардна Сенсе ХАТ плоча има потпуно исту функционалност. Компатибилан са било којим Распберри Пи моделом са 40-пинским ГПИО заглављем, поседује низ уграђених сензора који му омогућавају да надгледа околно окружење и такође детектује сопствену оријентацију и кретање. Поред тога, има 8×8 РГБ ЛЕД матрицу за приказ текста, података и слика. Ту је и мини петосмерни џојстик.

Комплетан низ сензорних функција Сенсе ХАТ је следећи:

  • Влажност: СТМицро ХТС221 сензор са опсегом релативне влажности од 0 до 100%, плус сензором температуре од 32°Ф до 149°Ф (0°Ц до 65°Ц ± 2°Ц).
  • Барометријски притисак: СТМицро ЛПС25ХБ сензор са опсегом од 260 до 1260 хПа, плус сензор температуре од 59°Ф до 104°Ф (15°Ц до 40°Ц ±0,5°Ц).
  • Температура: Може се очитати са сензора влажности или притиска, или мерити узимањем просека оба очитавања.
  • Жироскоп: СТМицро ЛСМ9ДС1 ИМУ може да мери ротацију Сенсе ХАТ-а у односу на површину Земље (и колико брзо се ротира).
  • Акцелерометар: Још једна функција ИМУ-а, ово може мерити силу убрзања у више праваца.
  • Магнетометар: Осјећањем магнетног поља Земље, ИМУ може одредити смјер магнетног сјевера и тако дати очитавање компаса.
  Питхон фласк објашњен за 5 минута или мање

Сада када сте схватили шта овај вишенаменски Распберри Пи ХАТ може да уради, време је да почнете са пројектом.

Корак 1: Монтирајте Сенсе ХАТ

Да бисте повезали Сенсе ХАТ, прво се уверите да је ваш Распберри Пи искључен и искључен из напајања. Затим пажљиво гурните Сенсе ХАТ (са приложеним црним продужним заглављем) на Распберри Пи 40-пински ГПИО хеадер тако да Сенсе ХАТ плоча буде постављена преко Распберри Пи плоче. Уверите се да су све игле правилно постављене и да су оба реда повезана. Такође можете да користите држаче са шрафовима да бисте га осигурали.

Можете користити било који стандардни Распберри Пи модел који има 40-пински ГПИО хеадер. Међутим, једно од кључних ограничења Распберри Пи 400 је то што се његово ГПИО заглавље налази на задњој страни интегрисане тастатуре. То значи да ће Сенсе ХАТ бити окренут уназад, тако да ћете можда желети да користите ГПИО продужни кабл да га повежете.

Корак 2: Подесите Распберри Пи

Као и код сваког другог пројекта, требало би да прикључите УСБ тастатуру и миш, а затим да повежете свој Распберри Пи са монитором или ТВ-ом. Такође би требало да имате уметнуту мицроСД картицу са стандардним Распберри Пи ОС-ом – ако то већ нисте урадили, погледајте како да инсталирате оперативни систем на Распберри Пи. Тада сте спремни да укључите напајање.

Алтернативно, можете да користите свој Распберри Пи са Сенсе ХАТ у режиму без главе, без прикљученог монитора и да се повежете на Распберри Пи даљински користећи ССХ са другог рачунара или уређаја. Ако то урадите, нећете моћи да користите Тхонни Питхон ИДЕ, буи и даље може да уређује програме помоћу уређивача нано текста и покреће их из командне линије.

  Како инсталирати Свеет ГТК тему

Сенсе ХАТ фирмвер би требало да буде инсталиран подразумевано. Да бисте још једном проверили, отворите прозор терминала и унесите:

 sudo apt install sense-hat

Затим, ако је пакет управо инсталиран, поново покрените Распберри Пи:

 sudo reboot

Корак 3: Започните програмирање у Питхон-у

Док можете да користите Распберри Пи Сенсе ХАТ са програмским језиком заснованим на блоковима Сцратцх, ми ћемо користити Питхон за читање и приказ његових очитавања сензора.

Тхонни ИДЕ (интегрисано развојно окружење) је добар начин за Питхон програмирање на Распберри Пи-у, јер има много функционалности укључујући корисне функције за отклањање грешака. У графичком корисничком интерфејсу Распберри Пи ОС-а идите на Мени (икона малине у горњем левом углу) > Програмирање > Тхонни ИДЕ да бисте га покренули.

Корак 4: Очитајте температуру

У главном прозору Тхонни ИДЕ-а унесите следеће редове кода:

 
from sense_hat import SenseHat

sense = SenseHat()
sense.clear()

temp = sense.get_temperature()
print(temp)

Први ред увози класу СенсеХат из Питхон библиотеке сенсе_хат (која је унапред инсталирана у Распберри Пи ОС). Ово се затим додељује променљивој чула. Трећи ред брише ЛЕД матрицу Сенсе ХАТ-а.

Затим узимамо очитавање температуре и штампамо га у Схелл област Тхонни ИДЕ. Ово је у степенима Целзијуса, тако да бисте могли прво да га конвертујете у Фаренхајт:

 temp = (sense.get_temperature() * 1.8 + 32) 

Очитавање сензора температуре имаће неколико цифара после децималне запете. Дакле, користићемо функцију роунд да је заокружимо на једно децимално место:

 temp = round(temp, 1) 

Функција сенсе.гет_температуре() чита сензор температуре уграђен у сензор влажности. Алтернативно, можете узети очитавање температуре са сензора притиска помоћу сенсе.гет_температуре_фром_прессуре() или чак узети оба очитања и израчунати средњи просек (сабирањем и дељењем са два).

  Како знати да ли ваш иПхоне има вирус

Корак 5: Прикажите температуру на Сенсе ХАТ-у

Штампање једног очитавања температуре на Питхон Схелл-у је мало досадно, па уместо тога хајде да редовно читамо ново очитавање и приказујемо га на РГБ ЛЕД матрици Сенсе ХАТ-а. Да бисмо приказали текстуалну поруку која се помера, користимо функцију схов_мессаге. Такође ћемо користити неко време: Труе лооп да бисмо наставили са новим очитавањем сваких 10 секунди—за шта користимо функцију спавања из временске библиотеке.

Ево комплетног програма:

 from sense_hat import SenseHat
from time import sleep

sense = SenseHat()
sense.clear()

while True:
 temp = (sense.get_temperature() * 1.8 + 32)
 temp = round(temp, 1)
 message = "Temp: " + str(temp)
 sense.show_message(message)
 sleep (10)

Покрените овај код и видећете да се свако ново очитавање температуре помера по ЛЕД матрици. Покушајте да дуните на Сенсе ХАТ да видите да ли се температура мења.

На очитавања температуре може утицати топлота која се преноси са Распберри Пи ЦПУ-а одмах испод, тако да ће можда бити потребно подешавање да би се добила тачнија цифра. Друго решење је да користите заглавље за слагање да бисте подигли Сенсе ХАТ више изнад Распберри Пи.

Користите Распберри Пи за праћење температуре

Иако бисте уместо тога могли да користите самостални температурни сензор за овај пројекат, Сенсе ХАТ олакшава праћење температуре помоћу вашег Распберри Пи. Такође можете да га користите да узмете мноштво других очитавања сензора, као што су барометарски притисак и релативна влажност, и да их прикажете на својој ЛЕД матрици.