Мазмұны:

Твитинг метеостанциясы: 8 қадам (суреттермен)
Твитинг метеостанциясы: 8 қадам (суреттермен)

Бейне: Твитинг метеостанциясы: 8 қадам (суреттермен)

Бейне: Твитинг метеостанциясы: 8 қадам (суреттермен)
Бейне: Пешком вокруг Байкала за 97 дней. Медведи и дикая природа 2024, Шілде
Anonim
Твитинг метеостанциясы
Твитинг метеостанциясы

Сіз өз қалаңыздың қазіргі ауа райы жағдайын, көміртегі ізін, шу мен ластану деңгейін бақылағыңыз келді ме? Сіз климаттық өзгерістерге қарсы крест жорығы болғыңыз келе ме, әлде өзіңіздің твит метеорологиялық станцияңызды құрғыңыз келе ме және жергілікті ауа райы жағдайын әлеммен бөліскіңіз келе ме?

Tweeting Weather IoT Station aka TWIST - DIY, ашық бастапқы экологиялық мониторинг және метеорологиялық деректерді жинау платформасымен танысыңыз. TWIST -тің мақсаты - жеке адамдар мен қауымдастықтар өз ортасында болып жатқан оқиғалар туралы мәліметтерді жинап, бұл деректерді Twitter сияқты әлеуметтік желілерде бөлісе алады.

  • TWIST - бұл заттар Интернеті (IoT) платформасы.
  • TWIST миы - бұл Intel Edison тақтасы.
  • TWIST әр түрлі сенсорлармен үйлесімді.
  • Барлық кодтар, дизайнерлік файлдар (схемалар мен ПХД орналасуы) ашық көзі болып табылады. Бұл кез келген адам әр түрлі сенсорлардың кодтары мен схемаларын бөлісу арқылы TWIST платформасына үлес қоса алады дегенді білдіреді.

TWIST үш технологиялық қабаттан тұрады:

Бірінші қабат - бұл «Сенсорлық тақта» деп аталатын барлық ауа райы мен қоршаған орта сенсорлары бар аппараттық тақта. Атауынан көрініп тұрғандай, оның құрамына ауа температурасын, ылғалдылықты, жаңбырды өлшейтін датчиктер кіреді. Қосымша сенсорлық белсенділік, ультракүлгін индексі, барометрлік қысым, биіктік, люкс (жарықтылық), дыбыс деңгейі, желдің жылдамдығы мен бағыты және т. Орнатылғаннан кейін сенсорлық тақта сенсорлармен өлшенген деректерді екінші қабатқа жібере алады. Екінші деңгей - Intel Edison тақтасы, ол сенсорлық тақтадан мәліметтерді қабылдайды, оны өңдейді және келесі деңгейге жібереді. Үшінші қабат-Эдисон тақтасындағы сымсыз модульді қолдана отырып, Wi-Fi арқылы Интернетке Эдисон тақтасын қосады және ағымдағы ауа райы мен экологиялық жағдайды твитке қосады.

Құрылғының қуаты күн батареясымен немесе айнымалы ток адаптерімен қамтамасыз етілуі мүмкін.

Нұсқамен басқарылатын репозиторийлер

TWIST-тің барлық үш технологиялық қабаты ашық көзі болып табылады, сондықтан біз код, ПХД әзірлеу, механикалық дизайн және т.б. үшін пайдаланатын барлық файлдар біздің Github репозиторийінде оңай қол жетімді.

Байқау жазбалары

Intel IoT Invitational

Intel+Instructables компаниясына Intel Edison тақтасын ұсынғаны үшін алғыс айтқым келеді. Мен Эдисон тақтасын қолдана отырып, IoT -пен байланысты көптеген нұсқаулықтар жасауды жоспарлап отырмын.

#iotweatherstn

Егер сіз TWIST жасасаңыз, #iotweatherstn көмегімен ауа райы туралы жазуды ұмытпаңыз. #iotweatherstn - бұл IoT қолдайтын барлық твитингтік ауа райы станциялары қолданатын хэштег болуы мүмкін.

1 -қадам: Бөлшектер мен материалдар

Бөлшектер мен материалдар
Бөлшектер мен материалдар
Бөлшектер мен материалдар
Бөлшектер мен материалдар
Бөлшектер мен материалдар
Бөлшектер мен материалдар

QuantityPartDetails 1

Intel Эдисон

Arduino Breakout тақтасымен

1

MQ2 жанғыш газ датчигі

1

YL-83

Жаңбыр сенсоры

1

SL-HS-220

Температура мен ылғалдылық сенсоры

1

Резистор

32K

4,7 мың

3 дюймдік металл дюймі

1

Резистор

32K

4,7 мың

2

А4 парағының өлшемі

Кейінірек мөлшерін кесуге болады

3

Металл тоқтауы

1 дюйм

2 -қадам: Электрлік дизайн

Қуат

Бүкіл жүйе 5В 1А қуат көзінен қуат алады. Датчиктер (температура, ылғалдылық, жаңбыр, газ) шамамен 200 мА, Эдисон шамамен 500 мА құрайды, қажет жалпы ток 1 амперден аз болғандықтан, 1 амперлік қуат көзі жақсы жұмыс істеуі керек. Эдисон тақтасының 13 цифрлық түйреуішіндегі кіріктірілген жасыл жарық диоды қуат күйін көрсету үшін қолданылады.

Intel Edison TWIST үшін шоуды жүргізеді. Эдисон Arduino тақтасына орнатылған, бұл датчиктерден сандық және аналогтық сигналдарды оқуды жеңілдетеді. Эдисон 5В рельске микро USB кабелі арқылы қосылған. Эдисонда кіріктірілген Wi-Fi радиосы бар, ол Twitter-ге қосымша жабдықты қажет етпестен қосылуға мүмкіндік береді.

Нақты уақыт сағаты (RTC)

Twitter әр твитке автоматты түрде уақытты таңбалауды рұқсат ететіндіктен, твит жарияланған уақыттан бергі жалпы күндер санымен шектелген, нақты уақыт сағаты күн мен уақытты дәл белгілеу үшін қолданылады. Екінші формат. TWIST платформасында қолданылатын нақты уақыт-бұл DS-1307 RTC модулі.

Бұл жүйенің ең негізгі қондырғысында Эдисонға қосылатын төрт сенсор (температура, ылғалдылық, жаңбыр, газ) бар. Қосымша датчиктерді шу, жел және т.б. қосуға болады. Әрбір сенсор 5В рельсінен тікелей қоректенеді және сигналдық түйреуіші сәйкесінше А0 -дан А2 -ге дейінгі аналогты түйреуіштерге және Эдисонның үзіліс тақтасындағы 2 сандық түйреуге қосылады. Датчиктердің әрқайсысында әр сенсорлық тақтаға сезімталдықты реттеу потенциометрі орнатылған; MQ-2-газдың миллионға шаққандағы концентрациясына пропорционалды аналогты кернеуді шығаратын жанғыш газ сенсоры (сұйытылған мұнай газы, пропан, сутегі және метан). SL-HS-220 температуралық мәнді беретін термисторға ие. Термистордың шығысы сызықты емес болғандықтан, сәйкес температуралық кесте сенсор репозиторийінде берілген. Термистор Эдисон тақтасына қосылған кезде, схемада көрсетілгендей, кернеуді бөлу схемасын қажет етеді. SL-HS-220-де ылғалдылықты өлшейтін және ылғалдылықтың тұрақты мәніне сәйкес келетін аналогты кернеуді шығаратын кіріктірілген гигрометр бар. Ылғалдылық-кернеу кестесі датчиктер қоймасында да берілген. SL-HS-220 жалпы алмастырғыш DHT11 сенсоры болып табылады. Жаңбыр сенсорында/су сенсорында потенциометр бар, ол жаңбырдың белгілі бір мөлшеріне цифрлық шығуды береді, оны пайдаланушы сезімталдығын реттей алады.

Ауа райы станциясы.fzz

3 -қадам: Механикалық дизайн

TWIST корпусы ағаштан жасалған екі табақтан жасалған. Мен 1/4 дюймдік фанераны қолданғаныммен, конструкцияны кез келген парақ материалынан жинауға болады, өйткені аралық (алюминийдің 1 дюймдік ұстағыштары) жалғыз маңызды элемент болып табылады. Мен жоғарыда жүктеу үшін векторлық файлдарды тіркедім.

Лазерлік кесу

Екі пластинаны лазермен кескісі келетіндердің барлығына мен төменде жүктеу үшін лазерлік кескіш файлдарды тіркедім. Сондай -ақ, оның дизайнында ауа сапасының қосымша сенсоры бар. Осылайша сіз MQ2 сенсорлық модулін немесе ауа сапасының сенсор модулін таңдауыңызға қарай пайдалана аласыз.

4 -қадам: жақтауды жинау: бет пен негіз

Бет тақтасы

Датчиктер олардың сәйкес келетін тесіктері мен тесіктеріне сәйкес келеді және оларды бұрандалар немесе желім көмегімен бекітуге болады.

Негізгі тақта

Эдисон тақтасының тұрақсыздығы негізгі тақтаға бекітілген. Жаңбыр датчигіне қосылған аналогты-цифрлық түрлендіргішті (ADC) де тақтайшаға бекітуге болады.

Негізгі тақтаға дыбыстық сигналдар немесе кернеу реттегішінің тізбегі сияқты қосымша компоненттерді бекітуге болады.

Негізгі тақта мен бет тақтасы екеуі де 1 дюймдік айырмашылықпен бөлінген.

5 -қадам: электроника мен сенсорды жинау

Қуат

Жүйенің қуаты Эдисонның баррель қосқышына тікелей қосылған стандартты баррель ұясы бар қабырға адаптерімен қамтамасыз етілген. Жүйені Эдисон тақтасындағы USB порты арқылы да қуаттандыруға болады. Сондай -ақ, тақтаны сыртқы күн панелінен қуаттандыруға болады.

Сенсорлар

Датчиктер ерлердің үстіңгі тақталары бар ажырату тақталарына бекітілген, сондықтан оларды Эдисонға ерлер мен әйелдердің қосқыш сымдары арқылы тікелей қосуға болады.

6 -қадам: Twitter конфигурациясы

Tweet-ке кіру үшін біз NeoCat әзірлеген үшінші тарап қосымшасын қолданамыз, ол сізге Twitter белгісін алады, онда сізге Эдисон тақтасы арқылы твиттер жазу қажет. Токендерді Twitter әзірлеушілерінің веб -сайтынан да алуға болады.

Сонымен, жұмысты бастау үшін NeoCat веб -сайтына кіріңіз, twitter кітапханасы мен твиттер белгісін алу үшін оның нұсқаулығын орындаңыз. NeoCat өз сайтында айтқандай, қызметке қиянат жасамаңыз. Твиттеріңізді сирек сақтаңыз. Егер сізге әр 6 секунд сайын твиттер жазатын нәрсе қажет болса, сіз өзіңіздің жеке серверіңіз бен твиттер қосымшаңызды орнатуыңыз керек, сондықтан мен жазған код NeoCat серверінің шамадан тыс жүктелмеуін қамтамасыз етеді (TWIST әр 6 сағат сайын жазылады).

Кітапхана осы NeoCat веб -сайтын OAuth материалдарының прокси -сервері ретінде пайдаланады. Сіздің твит осы NeoCat веб -сайтына қызмет көрсету кезінде қолданылмауы мүмкін. Twitter мазмұны бірдей қайталанатын твиттерді қабылдамайтын сияқты (403 қатені қайтарады).

Twitter белгісі

Arduino Tweet кітапханасы

7 -қадам: Бағдарламалық қамтамасыз ету және конфигурация

Кодтауды бастамас бұрын Intel Edsion үшін Intel орнату нұсқаулығын орындаңыз.

Бағдарлама - Эдисонда жүретін Arduino эскизі. Мен төменде кодтың негізгі блоктарының әрқайсысын түсіндірдім.

Кодқа ақауларды жоюға көмектесетін алдын ала анықталған тұрақтылар, түйреуіш декларациялары және бірнеше сериялық басып шығару мәлімдемелері кіреді.

Твит кідірісі

Twitter мазмұны бірдей және олардың әрқайсысы қысқа мерзімде жазылатын твиттерді сүзетіндіктен, әр твит арасында стандартты 3 сағат (10800000 милл. Секунд) кідіріс орнатылды.

tweetMessage ();

кешіктіру (10800000);

Трансляция түрі

Сенсорлардан алатын көптеген оқулар 'int' немесе 'float' деректер түрінде болады. Бірақ біз бұл мәндерді твиттерде жазатындықтан, оларды 'String' деректер түріне түрлендіру қажет. Ол үшін біз арнайы типті құю техникасын қолданамыз.

char *dtostrf (қос вал, таңбаның ені, белгісіз char prec, char *Sout) {

char fmt [100]; sprintf (fmt, «%%% d.%df», ені, алдын ала); sprintf (оңтүстік, фмт, вал); оңтүстікке қайту; }

Twitter белгісі

Твиттер белгісі NeoCat веб -сайтында жасалған және осы жердегі таңбалауыш кеңістігіне қойылуы керек.

жарамсыз tweetMessage () {

Twitter twitter («TWITTER TOKEN TO ENTER»);

Сенсор мәндерінің твиттері

Сенсордың мәнін твитке жіберу үшін алдымен сенсор түрін қосамыз; Мысалы: «Ылғалдылық». Осыдан кейін таңбалар декларациясы және типтеу үшін қажет код жолы. Содан кейін біз өлшем бірлігіне мәлімдеме қосамыз; Мысалы: «%RH». Біз басқа датчиктердің мәндерін осылай қосуды жалғастыра аламыз.

ылғалдылық (); ылғалды жүзу;

// Twitter хабарламасы String stringMsg = «Ылғалдылық:»; char tmp [10]; dtostrf (ылғалды, 1, 2, tmp); stringMsg += tmp; stringMsg += «%RH»;

Метеостанцияның орналасуы және белгіленуі

Содан кейін біз орналасқан жерді (Қала, Жергілікті жер және т.б.) және #iotweatherstn сияқты басқа тегтерді белгілейміз.

stringMsg += « #Мумбай #Бандра #iotweatherstn»;

Нақты уақыт сағаты (RTC)

Бұрын түсіндірілгендей, TWIST сонымен қатар нақты уақыт туралы деректерді твит ете алады. Төменде RTC кодының «күндік» параметрлік блогының мысалы келтірілген. Real Time Clock функциясы TWIST платформасында міндетті емес, себебі модуль бөлек келеді. TWIST репозиторийінде Real Time Clock тармағының коды мен схемасына арналған бөлек бөлімше бар.

TwistDateTime (); DateTime now = rtc.now (); int twistday, twistmonth, twistyear, twisthour, twistmin, twistsec; String stringMsg = «»; char ds1307day [10]; dtostrf (демалыс, 1, 0ds1307күн); stringMsg += ds1307күн; stringMsg += «/»;

140 таңбалар шегі

Бұл код блогы жол жиымын твитке дайын 140 таңбалы массивке жабады.

char msg [140];

stringMsg.toCharArray (хабар, 140);

Хабар және қосылым ақаулықтарын жою

Бұл код блогы пайдаланушыға хабарламаны және твит күйін тексеруге көмектесу үшін сериялық мониторда бірнеше жолды басып шығарады.

// Бұл сорғышты жаз!

if (twitter.post (msg)) {int status = twitter.wait (); if (status == 200) {Serial.println («Жарайды.»); Serial.println («Хабар твиттерде»); } else {// Connection Test Serial.print («сәтсіз: код»); Serial.println («Хабар твит емес»); Serial.println (күй); }} else {Serial.println («байланыс үзілді.»); Serial.println («Хабар твит емес»); }

Қалған барлық код блоктары сенсорлардан аналогты немесе цифрлық оқуды қолдануға болатын деректерге түрлендіреді.

Кодты осы жерден немесе негізгі репозиторийден жүктеуге болады:

Ауа райы станциясы.ino

8 -қадам: сенсорлық репозиторийге үлес қосу

Сіз TWIST -те жаңа функция туралы керемет идеясы бар бағдарламашы, инженер немесе дизайнерсіз бе? Мүмкін сізде қатені түзету туралы жақсы идея бар шығар? Біздің кодты, схемаларды және CAD файлдарын Github -тан алыңыз және онымен жұмыс жасаңыз.

TWIST GitHub

Intel® IoT Invitational
Intel® IoT Invitational
Intel® IoT Invitational
Intel® IoT Invitational

Intel® IoT Invitational екінші сыйлығы

Ұсынылған: