Mündəricat:

Tweeting Hava İstasyonu: 8 addım (şəkillərlə)
Tweeting Hava İstasyonu: 8 addım (şəkillərlə)

Video: Tweeting Hava İstasyonu: 8 addım (şəkillərlə)

Video: Tweeting Hava İstasyonu: 8 addım (şəkillərlə)
Video: Моя работа наблюдать за лесом и здесь происходит что-то странное 2024, Iyul
Anonim
Tweeting Hava İstasyonu
Tweeting Hava İstasyonu

Heç şəhərinizin Mövcud Hava Şərtlərini, Karbon Ayaq İzini, Səs -küy və Çirklənmə səviyyələrini izləmək istəmisinizmi? İqlim Dəyişikliyi Səlibçisi olmaq və ya öz Tweeting Hava İstasyonunuzu qurmaq və yerli hava şəraitinizi dünya ilə bölüşmək istəyirsiniz?

Tweeting Hava IoT Station aka TWIST - bir DIY, Açıq Mənbə Ətraf Mühit Monitorinqi və Meteoroloji Məlumat Alma Platforması ilə tanış olun. TWIST -in məqsədi, fərdlərin və icmaların ətraflarında əslində baş verənlər haqqında məlumat toplaya bilməsi və bu məlumatları Twitter kimi sosial mediada paylaşmasıdır.

  • TWIST, Əşyaların İnterneti (IoT) ilə işləyən bir platformadır.
  • TWIST -in beyni Intel Edison lövhəsidir.
  • TWIST müxtəlif sensorlar ilə uyğun gəlir.
  • Bütün kodlar, dizayn sənədləri (sxemlər və PCB düzeni) Açıq Mənbədir. Bu o deməkdir ki, hər kəs fərqli sensorlar üçün kod və sxemləri paylaşaraq TWIST platformasına töhfə verə bilər.

TWIST üç texnoloji təbəqədən ibarətdir:

Birinci qat, 'Sensor Board' olaraq bilinən bütün hava və ətraf mühit sensorlarını ehtiva edən bir hardware lövhəsidir. Adından da göründüyü kimi, tərkibini, temperaturunu, rütubətini, yağışını ölçən sensorlar daşıyır. Seysmoloji aktivlik, UV indeksi, barometrik təzyiq, yüksəklik, lüks (parlaqlıq), səs səviyyələri, küləyin sürəti və istiqaməti və s. Kimi əlavə sensorlar da əlavə edilə bilər. Qurulduqdan sonra Sensor Board, sensorlar tərəfindən ölçülən məlumatları ikinci təbəqəyə ötürə bilir. İkinci qat, Sensor Board -dan məlumat alan, onu emal edən və sonrakı təbəqəyə göndərən Intel Edison Board -dur. Üçüncü qat, Edison lövhənizdəki simsiz modulu istifadə edərək Wi-Fi üzərindən İnternetə bağlayır və Tweet-in Mövcud Hava və Ətraf Mühit şərtləri.

Cihazın enerjisi günəş paneli və ya AC adapteri ilə təmin edilə bilər.

Versiya idarə olunan depolar

TWIST-in hər üç texnoloji təbəqəsi Açıq Mənbədir və buna görə kod, PCB inkişafı, mexaniki dizayn və s. Üçün istifadə etdiyimiz bütün fayllar Github depomuzda asanlıqla mövcuddur.

Müsabiqə yazıları

Intel IoT Invitational

Mənə Intel Edison lövhəsi ilə təmin etdiyi üçün Intel+Instructables şirkətinə təşəkkür edirəm. Edison lövhəsindən istifadə edərək IoT ilə əlaqəli daha çox təlimat hazırlamağı planlaşdırıram.

#otweatherstn

TWIST edirsinizsə, #iotweatherstn istifadə edərək hava haqqında tvit yazmağı unutmayın. #iotweatherstn, bütün IoT ilə işləyən Tweeting Hava İstasyonları tərəfindən istifadə olunan bir hashtag ola bilər.

Addım 1: hissələr və materiallar

Parçalar və materiallar
Parçalar və materiallar
Parçalar və materiallar
Parçalar və materiallar
Parçalar və materiallar
Parçalar və materiallar

QuantityPartDetails 1

Intel Edison

Arduino Breakout Board ilə

1

MQ2 yanan qaz sensoru

1

YL-83

Yağış sensoru

1

SL-HS-220

Temperatur və Nəmlik Sensoru

1

Rezistor

32K

4.7K

3 metal dayaq 1 düym

1

Rezistor

32K

4.7K

2

Taxta vərəq A4 ölçüsü

Daha sonra ölçüdə kəsilə bilər

3

Metal duruşu

1 düym

Addım 2: Elektrik Dizaynı

Güc

Bütün sistem 5V 1A enerji təchizatı ilə təchiz edilmişdir. Sensorlar (Temperatur, Rütubət, Yağış, Qaz) təxminən 200 mA, Edison təxminən 500 mA çəkir, Lazım olan ümumi cərəyan 1 amperdən az olduğu üçün 1 amper təchizatı yaxşı işləməlidir. Edison Board -un rəqəmsal pin 13 -də quraşdırılmış yaşıl LED güc vəziyyətini göstərmək üçün istifadə olunur.

Intel Edison, TWIST üçün şousu idarə edir. Edison, sensorlardan rəqəmsal və analoq siqnalları oxumağı asanlaşdıran bir Arduino qırılma lövhəsinə quraşdırılmışdır. Edison 5V rayına mikro USB kabel vasitəsilə qoşulur. Edison, əlavə bir qurğuya ehtiyac olmadan Twitter-ə qoşulmağa imkan verən daxili Wi-Fi radiosuna malikdir.

Real vaxt saatı (RTC)

Twitter tərəfindən hər bir tweet üçün avtomatik olaraq həyata keçirilən zaman damgası, Tweetdən bəri ümumi günlərin sayı ilə məhdudlaşan bir qətnaməyə malik olduğundan, Saat və Dəqiqədə tarix və saatı dəqiq bir şəkildə möhürləmək üçün real vaxt saatı istifadə olunur. İkinci format. TWIST platformasında istifadə edilən real vaxt saatı DS-1307 RTC moduludur.

Bu sistemin ən əsas quruluşu Edison -a qoşulan dörd sensora (Temperatur, Rütubət, Yağış, Qaz) malikdir. Səs -küy, Külək və s. Kimi əlavə sensorlar əlavə edilə bilər. Hər bir sensor birbaşa 5V dəmir yolu ilə təchiz olunmuşdur və siqnal pimi müvafiq olaraq A0 -dan A2 -ə qədər analog pinlərə və Edison qırılma lövhəsindəki rəqəmsal pin 2 -ə bağlıdır. Sensorların hər birinin hər bir lövhəyə quraşdırılmış bir həssaslıq tənzimləmə potansiyometri var; MQ-2, yanacaq qaz sensoru (mayeləşdirilmiş neft qazı, propan, hidrogen və metan), milyon hissədə qazların konsentrasiyasına mütənasib bir analog gərginlik verir. SL-HS-220, istilik dəyərini verən bir termistora malikdir. Termistorun çıxışı xətti olmadığından, müvafiq temperatur cədvəli sensor anbarında verilir. Termistor, dövrə diaqramında göstərildiyi kimi Edison lövhəsinə qoşulduqda bir gərginlik bölücü dövrə tələb edir. SL-HS-220, nəmliyi ölçən və sabit bir rütubət dəyərinə uyğun bir analoq gərginlik verən bir daxili higrometre də malikdir. Nəmlik-gərginlik cədvəli də sensorlar anbarında verilir. SL-HS-220-nin ümumi əvəzedicisi DHT11 sensorudur. Yağış sensoru/su sensoru, həssaslığı istifadəçi tərəfindən tənzimlənə bilən müəyyən miqdarda yağış üçün rəqəmsal çıxış vermək üçün tənzimlənmiş bir potansiometrə malikdir.

Hava İstasyonu.fzz

Addım 3: Mexanik Dizayn

TWIST -in gövdəsi iki boşqab taxta təbəqədən hazırlanmışdır. 1/4 "kontrplak istifadə etməyimə baxmayaraq, dizayn hər hansı bir təbəqə materialından yığıla bilər, çünki aralıq (1" alüminium dayaqları ilə saxlanılır) yeganə kritik elementdir. Yükləmək üçün vektor fayllarını əlavə etdim.

Lazer kəsmə

İki lövhəni lazerlə kəsmək istəyənlərin hamısı üçün lazer kəsmə fayllarını aşağıda yüklədim. Dizaynında əlavə hava keyfiyyəti sensoru da var. Buna görə seçiminizə görə ya MQ2 sensor modulundan, ya da hava keyfiyyəti sensoru modulundan istifadə edə bilərsiniz.

Addım 4: Çərçivə Montajı: Üz və Baza

Üz lövhəsi

Sensorlar uyğun çuxurlara və kəsiklərə uyğundur və vintlər və ya yapışqan istifadə edərək düzəldilə bilər.

Əsas plitə

Edison lövhəsinin çəkişmələri əsas lövhəyə yapışdırılır. Yağış sensoru ilə əlaqəli analoqdan rəqəmsal çeviriciyə (ADC) də əsas lövhəyə vidalana bilər.

Günəş girişi üçün səs siqnalları və ya gərginlik tənzimləyicisi dövrəsi kimi əlavə komponentlər də alt plitə üzərinə vidalana bilər.

Tabel və Faceplate hər ikisi də 1 standoffs ilə ayrılır.

Addım 5: Elektronika və Sensor Montajı

Güc

Sistemin gücü, birbaşa Edisonun Barrel bağlayıcısına qoşulan standart barel yuvasına malik bir divar adapteri tərəfindən təmin edilir. Sistem həmçinin Edison lövhəsindəki USB portu vasitəsilə də işləyə bilər. Lövhəni xarici bir Günəş panelindən də gücləndirə bilərsiniz.

Sensorlar

Sensorlar kişi başlıqları olan kəsmə lövhələrinə bərkidilir və buna görə də kişidən dişi tullanan tellər vasitəsilə birbaşa Edisona qoşula bilərlər.

Addım 6: Twitter Konfiqurasiyası

Tweet sıralamasında, Edison lövhənizlə Tweet etməyiniz lazım olan Twitter tokenini əldə edən NeoCat tərəfindən hazırlanmış üçüncü tərəf tətbiqindən istifadə edirik. Tokenlər də Twitter -in Yaradıcılar veb səhifəsindən əldə edilə bilər.

Başlamaq üçün, NeoCat'ın veb saytına daxil olun, twitter kitabxanasını və twitter mö'cüzənizi əldə etmək üçün onun təlimatını izləyin. NeoCat saytlarında qeyd edildiyi kimi, xidmətdən sui -istifadə etməyin. Tweetlərinizi seyrək saxlayın. Hər 6 saniyədə bir tweet yazan bir şeyə ehtiyacınız varsa, öz serverinizi və twitter tətbiqinizi qurmalısınız və buna görə də yazdığım kod NeoCat serverinin yüklənməməsini təmin edir (TWIST hər 6 saatda bir tweet atır).

Kitabxana, bu NeoCat veb saytını OAuth məhsulları üçün bir proxy server olaraq istifadə edir. Tweetiniz bu NeoCat veb saytına texniki xidmət zamanı tətbiq olunmaya bilər. Twitter eyni məzmunlu təkrarlanan tvitləri rədd edir (səhv 403 qaytarır).

Twitter Tokeni

Arduino Tweet Kitabxanası

Addım 7: Proqram təminatı və Konfiqurasiya

Kodlamağa başlamazdan əvvəl Intel Edsion üçün Intelin quraşdırma təlimatına əməl edin.

Proqram, Edison üzərində çalışan bir Arduino eskizidir. Aşağıdakı əsas kod bloklarının hər birini izah etdim.

Kod, problemlərin həllində kömək edən bəzi əvvəlcədən təyin edilmiş sabitləri, pin bəyannamələrini və bir neçə seriyalı çap bəyanatını ehtiva edir.

Tweet Gecikməsi

Twitter eyni məzmunlu və hər biri arasında qısa müddət ərzində yazılan tvitləri sildiyindən hər bir tvit arasında standart 3 saat (10800000 milli saniyə) gecikmə təyin edilmişdir.

tweetMessage ();

gecikmə (10800000);

Yayım növü

Sensorlardan aldığımız oxunuşların çoxu 'int' və ya 'float' məlumat tipindədir. Ancaq bu dəyərləri tweet etdiyimiz üçün onları 'String' məlumat tipinə çevirməliyik. Bunun üçün xüsusi Type-tökmə texnikasından istifadə edirik.

char *dtostrf (ikiqat dəyər, işarələnmiş sim genişliyi, imzasız char prec, char *güney) {

char fmt [100]; sprintf (fmt, "%%% d.%df", en, prec); sprintf (cənub, fmt, val); cənuba qayıt; }

Twitter Tokeni

Twitter simvolu NeoCat veb saytında yaradılmışdır və buradakı nişan boşluğuna yapışdırılmalıdır.

boş tweetMessage () {

Twitter twitter ("TWITTER BURADA ENTER");

Sensor Dəyərlərinin Tweetlənməsi

Sensor dəyərini tweet etmək üçün əvvəlcə Sensor tipini daxil edirik; Məsələn: "Rütubət". Bunun ardınca bir yazı bəyannaməsi və yazma üçün lazım olan bir kod xətti gəlir. Sonra ölçü vahidi üçün bir ifadə əlavə edirik; Məsələn: "%RH". Bənzər bir şəkildə digər sensorların dəyərlərini əlavə etməyə davam edə bilərik.

rütubət (); nəmli üzmək;

// Twitter mesajı String stringMsg = "Rütubət:"; char tmp [10]; dtostrf (nəmli, 1, 2, tmp); stringMsg += tmp; stringMsg += "%RH";

Hava Stansiyasının Məkanı və Etiketlənməsi

Sonra yeri (Şəhər, Yerləşmə və s.) Və #iotweatherstn kimi digər etiketləri etiketləyirik.

stringMsg += "#Mumbay #Bandra #iotweatherstn";

Real vaxt saatı (RTC)

Daha əvvəl izah edildiyi kimi, TWIST də Real Time Clock Data Tweet bilər. Aşağıda RTC kodunun 'gün' parametr blokuna bir nümunə verilmişdir. Real vaxt saatı xüsusiyyəti TWIST platformasında isteğe bağlıdır, çünki modul ayrıca gəlir. Beləliklə, TWIST anbarında Real Time Clock şöbəsinin kodu və sxemləri üçün yaradılmış ayrı bir şöbə var.

TwistDateTime (); DateTime indi = rtc.now (); int twistday, twistmonth, twistyear, twisthour, twistmin, twistsec; String stringMsg = ""; char ds1307day [10]; dtostrf (twistday, 1, 0ds1307gün); stringMsg += ds1307gün; stringMsg += "/";

140 simvol limiti

Bu kod bloku, simli dizini tweet etməyə hazır olan 140 simvolu əhatə edir.

char msg [140];

stringMsg.toCharArray (msg, 140);

Mesaj və Bağlantı Problemlərinin Giderme

Bu kod bloku istifadəçinin mesajı və tvit statusunu yoxlamasına kömək etmək üçün Serial Monitorda bir neçə sətir mətn yazdırır.

// Tweet o sorağı!

if (twitter.post (msg)) {int status = twitter.wait (); əgər (status == 200) {Serial.println ("OK."); Serial.println ("Mesaj Tweetləndi"); } başqa {// Bağlantı Testi Serial.print ("uğursuz oldu: kod"); Serial.println ("Mesaj Tweetlənməyib"); Serial.println (status); }} başqa {Serial.println ("əlaqə uğursuz oldu."); Serial.println ("Mesaj Tweetlənməyib"); }

Bütün digər kod blokları sadəcə olaraq sensorlardan analoq və ya rəqəmsal oxunuşu istifadə edilə bilən məlumatlara çevirir.

Kod buradan və ya əsas depodan yüklənə bilər:

Hava İstasyonu.ino

Addım 8: Sensor Deposuna töhfə verin

TWIST -də yeni bir xüsusiyyət üçün əla bir fikri olan bir proqramçı, mühəndis və ya dizaynersinizmi? Bəlkə bir səhv düzəltmək üçün yaxşı bir fikriniz var? Github -dan kodlarımızı, sxemlərimizi və CAD sənədlərimizi götürməkdən çəkinməyin.

TWIST GitHub

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

Intel® IoT Invitational -da İkinci Mükafat

Tövsiyə: