Mundarija:

EqualAir: Havoning ifloslanish sensori yordamida ishga solinadigan NeoPixel displeyi: 7 qadam (rasmlar bilan)
EqualAir: Havoning ifloslanish sensori yordamida ishga solinadigan NeoPixel displeyi: 7 qadam (rasmlar bilan)

Video: EqualAir: Havoning ifloslanish sensori yordamida ishga solinadigan NeoPixel displeyi: 7 qadam (rasmlar bilan)

Video: EqualAir: Havoning ifloslanish sensori yordamida ishga solinadigan NeoPixel displeyi: 7 qadam (rasmlar bilan)
Video: У меня взбесились датчики контроля загрязнения воздуха углекислым газом... 2024, Noyabr
Anonim
Image
Image

Loyihaning maqsadi-havoning ifloslanishi belgilangan chegaradan yuqori bo'lganida, grafikani ko'rsatadigan kiyiladigan futbolka yasash. Grafika klassik "g'isht to'sarlari" o'yinidan ilhomlangan, chunki mashina o'pkaning bo'laklarini "urib" tushiradigan egzozni (to'plar kabi) to'kib yuboradigan eshkakka o'xshaydi. Havoning ifloslanishi ostonadan yuqori bo'lsa (masalan, mashinalar bilan yurganingizda), aks holda zararsiz oq futbolkalar displeyda o'ynay boshlaydi. Ushbu loyiha Iordaniya, Meri, Nik va Odessa tomonidan "San'at va ilm -fan" darsi uchun qurilgan.

1 -qadam: Materiallaringizni to'plang

Ko'rsatish:

  • 6 * Adafruit NeoPixel Raqamli RGBW LED tasmasi - Oq PCB 144 LED/m
  • 1 * Arduino Mega (Adafruit veb -saytiga ko'ra, NeoPixel -ning bir nechta chiziqlaridan foydalanish Arduino Mega -ni talab qiladi)
  • 1 * 9 voltli batareya
  • 1 * noutbuk uchun zaryadlovchi

Sensor:

1 * Adafruit MiCS5524 sensori (bu biz ishlatgan havo ifloslanish sensori edi, chunki u arzon. Kamchiligi shundaki, u bir nechta gazlarni sezadi va ular orasidan farq qilmaydi)

Boshqa:

2 * oq futbolka (biz juda katta futbolkalarni sotib olishni taklif qilamiz, chunki 1) asbob-uskunalar uchun joy bo'lishi kerak va 2) cho'ntak tikish uchun ozgina ortiqcha matoni kesib olishingiz kerak bo'ladi. uskunani yashirish)

Asboblar:

  • Jumperlar
  • Protoboard
  • Kondensator
  • Qarshilik
  • Tel kesuvchi
  • Lehimlash mashinasi
  • Tikuv materiallari va/yoki mato yopishtiruvchi

2 -qadam: NeoPixel panjarasini yig'ish

Sensorni qo'shish
Sensorni qo'shish

NeoPixel panjarasini yig'ish uchun kerakli NeoPixel chiziqlar kerakli panjara o'lchamlariga qarab kesilishi va qayta lehimlanishi kerak. Ushbu dizayn uchun biz 47x16 o'lchamli NeoPixels panjarasini qurardik:

  1. 1 metrli (144 NeoPixel) chiziqlarni 47 NeoPixel bosqichida kesib oling, ehtiyot bo'ling, ba'zi xonalarni chiziqlar chetiga lehimlashga ruxsat bering (NeoPixel tagida ko'rinadigan kichik metall uchlari bor). Payvand chokining butun qismi ochiq bo'lishi uchun kesilganligiga ishonch hosil qiling (chunki ular boshlanishi juda kichik). Chiziqlar uzunligi (144/3 = 48) o'rniga 47 piksel bo'lishining sababi shundaki, siz Neopixel bir -biriga juda yaqin bo'lgani uchun ularni kesishdan kamida bittasini yo'qotasiz.
  2. Ehtiyotkorlik bilan ustunlarni bir -birining yoniga qo'ying (ixtiyoriy ravishda ularni ushlab turish uchun elektr tasmasini ishlating) va o'lchamlari kerakli darajada bo'lishini tekshiring (47x16). Ustunlarni S shaklida joylashtiring.
  3. NeoPixellarda kuchlanish, kirish va topraklama o'tkazgichlari bor, ular keyingi chiziqdagi hamkasblariga ulanishi kerak. Ko'p simli simdan foydalanib, ustunlar uchlarini S-shaklida ulang, to'g'ri simlarni ulashda ehtiyot bo'ling.
  4. Qo'rg'oshinlarni panjara oxirida qoldiring (2 uchi bo'lishi kerak - siz boshlagan joy va S -naqshini tugatgan joy) va ixtiyoriy ravishda sim kengaytmalarini qo'shing. Siz ixtiyoriy ravishda uchlarini tasma bilan yopishingiz yoki boshqa yo'l bilan mahkamlashingiz mumkin. Bundan tashqari, ulanishlarni mahkamlash uchun ularni issiq elim bilan yopishtiring.
  5. Orqa qismiga yana bir necha qatlamli elektr lenta yoki boshqa yopishtiruvchi qo'shib, yangi yig'ilgan panjara ishonchli ekanligiga ishonch hosil qiling.

Endi siz sinovdan o'tkazadigan ishlaydigan tarmoqqa ega bo'lishingiz kerak. NeoPixel Matrix kutubxonasi ostida, siz kutilganidek ishlayotganini ko'rish uchun matrixtest namuna kodidan foydalanishingiz mumkin. Agar shunday bo'lsa, u yuqoridagi rasmga o'xshab ketishi kerak (oldingi Arduino Uno -ni e'tiborsiz qoldiring, bu boshqa narsani sinab ko'rish uchun qilingan).

3 -qadam: Sensorni qo'shish

Loyihaning asosiy jihati - sensori, Adafruit MiCS5524, u havodagi turli gazlarni aniqlay oladi va analogli kirish orqali ularning intensivligini bildiradi.

  1. Birinchidan, sensorga uchta kuchlanish - kirish, chiqish va erga - to'g'ri ulanganligiga ishonch hosil qiling (ixtiyoriy ravishda bu uchun mos rangli simdan foydalaning).
  2. Arduino kartasidagi 5V kuchlanishli kuchlanishni ulang va erni taxtadagi erga ulang.
  3. Keyin, chiqishni Arduino kartasidagi A0 (yoki siz tanlagan analog pin) ga ulang. Sensorni Arduino -ga ulash uchun bu kifoya.
  4. Ixtiyoriy ravishda, ketma -ket monitordan o'qish sensori tomonidan hisobot berilayotganligini tekshirish uchun foydalaning (ko'rsatkichlar bir raqam atrofida bo'lishi kerak va sensori uglerod oksidi yoki boshqa bug'lar manbai yoniga qo'yilganda o'zgarishi kerak).

Internetda, xususan, atrof -muhit o'zgarishiga sezgir bo'lishi uchun bu sensorni kalibrlash bo'yicha ko'rsatmalar mavjud. Sensorni bir necha soatga qoldirib, u joylashgan xonaning "odatiy" o'qish diapazoni nima ekanligini aniqladik. Keyin displeyning "tetiklanishini" tekshirish uchun spirtli ichimlikka namlangan paxta to'pidan foydalandik. Datchik o'qilishi grafikning bitta tsiklini boshlash uchun belgilangan chegaradan oshib ketadi.

4 -qadam: Kodni tuzatish

Image
Image

Kod biriktirilgan. E'tibor bering, yuqori qismida ko'plab sarlavhalar mavjud. Arduino IDE -da kerakli sarlavhalarni yuklab olish uchun eskizni bosing, kutubxonani qo'shing va kutubxonalarni boshqaring. Faylni yuklashdan oldin siz quyidagi kutubxonalarni yuklab olishingiz kerak bo'ladi:

  • Adafruit NeoPixel
  • Adafruit NeoMatrix
  • Adafruit GFX kutubxonasi

Ushbu kutubxonalarni yuklab olganingizdan so'ng, Arduino IDE -da, misollar ostida, siz sinov paytida o'zgartirish uchun o'zgartirilishi mumkin bo'lgan misol kodini topasiz. Masalan, strandtest va matrixtest NeoPixel tarmog'ini sinab ko'rish uchun juda foydali bo'lgan. Shuningdek, havoning ifloslanish sensori uchun namunaviy testlarni topish oson.

Faylni yuklash va ishchi panjarani ko'rishdan oldin, o'zgartirish mumkin bo'lgan ba'zi kod satrlari:

#PIN kodni belgilang 6

#SENSOR_PIN A0 ni aniqlang

6 -pinni NeoPixel panjarasi Arduino -ga biriktirilgan pin raqamiga o'tkazish kerak.

AO pimi sensori Arduino -ga ulangan pin raqamiga o'tkazilishi kerak

#STOP 300 ni aniqlang

#ta'rif NUM_BALLS 8

Adafruit_NeoMatrix matritsasi = Adafruit_NeoMatrix (GRID_COLS, GRID_ROWS, PIN, NEO_MATRIX_TOP + NEO_MATRIX_LEFT + NEO_MATRIX_COLUMNS + NEO_MATRIX_ZOQZB + NEO_MATRIX_OZIGZB)

300 raqami displeyning bitta tsikli deb hisoblash uchun o'pkaning qancha piksellari degradatsiyasini aniqlaydi. Raqamni ko'paytirish tsiklni uzaytiradi (masalan, o'pkaning ko'p qismi degradatsiyaga uchraydi) va aksincha.

8 raqami mashinadan chiqadigan "to'p" (egzoz) sonini belgilaydi

Endi, agar siz tarmoqni aniq qurish bo'yicha ko'rsatmalarga amal qilgan bo'lsangiz, NeoMatrix konfiguratsiyasi ishlashi kerak. Shuni ta'kidlash joizki, bu sozlamaning aytishicha, 0, 0 koordinatasi yuqori chap burchakda, biz chiziqlar ustunlarini bog'laganmiz va chiziqlar S-formatda bog'langan. Shunday qilib, agar sizning panjara aks ettirilgan yoki 90 daraja o'chirilganidan tashqari mukammal ko'rinadigan bo'lsa, ehtimol siz tarmoqni boshqacha o'rnatgansiz va bu erda kodni o'zgartirishingiz kerak. Ushbu qadamning oxirida siz videoga o'xshash narsaga ega bo'lishingiz kerak, biz spirtli ichimlikka namlangan paxta po'stlog'i bilan futbolkani ishga tushiramiz, grafik bitta pastadir o'ynaydi va pastadir bo'lmaguncha uni qayta ishga tushirish mumkin emas. to'liq

5-qadam: futbolkani birlashtirish

Vajjaj! Endi sizda displey, sensor va kod ishlaydi, hamma narsani yig'ish vaqti keldi. Oxir -oqibat, bizda barcha ko'ylaklar ichki ko'ylakka, so'ngra tashqi ko'ylak hamma narsani yashiradi. Futbolkalar juda katta edi, shuning uchun biz pastki qismini kesib tashladik. Bu bizga uskunani yashirish uchun cho'ntak tikish uchun kerak bo'lgan matoni berdi.

Ichki ko'ylak:

  1. Avval uni NeoPixel panjarasining orqa qismiga elektr tasmasini joylashtirishdan boshlang (agar siz tarmoqni bir bo'lakda olib yura olsangiz yaxshi ekanligingizni bilib olasiz).
  2. NeoPixel panjarasini matoni ichki futbolkaga yopishtiring. Tarmoqning markazlashtirilganligiga va o'pka aslida qaerda ekanligiga ishonch hosil qiling.
  3. Yelimni kerak bo'lganda quriting, elim ko'ylakning orqa tomoniga tushmasligiga ishonch hosil qiling va ko'ylakni yopib yopishtiring. Tarmoq yoqilgandan so'ng, Arduino, batareya va boshqalarni qanchalik uzoqda joylashtirish mumkinligini ko'ring. Biz uchun, biz elektron qismlarimiz ko'ylakning orqa tomonida bo'lishi uchun o'tish simlarini lehimlagan edik.
  4. Elektron komponentlar uchun kichik cho'ntak qilish uchun mato tasmasini tikib qo'ying. Ishonchliroq bo'lishi uchun siz ba'zi qismlarni cho'ntagingizga (masalan, Arduino) tikishingiz mumkin.
  5. Sensor chiqib ketishi uchun, biz uchun bu ko'ylakning orqa qismidagi yoqaning markazida joylashgan kichik teshikni kesib oling.

Tashqi ko'ylak: Tashqi ko'ylakning sababi shundaki, u tashqi ko'ylak bilan yaxshi ko'rinadi. Tashqi ko'ylak elektronikani yashiradi va NeoPixellardan yorug'likni tarqatadi.

  1. Tashqi ko'ylakni ehtiyotkorlik bilan ichki ko'ylak ustiga qo'ying
  2. Matoni yopishtiring yoki tashqi ko'ylakka ichki ko'ylakni tikib qo'ying, shunda panjara yoqilganda o'rgatiladi (rasmda qora chiziqlar matoning yopishtiruvchi joyi)

6 -qadam: Muammolarni bartaraf etish

Tabriklaymiz! Endi sizda havo ifloslanish darajasiga qarab yonadigan kiyiladigan futbolka bor. Agar yo'q bo'lsa, demak, siz qiyinchilikka duch keldingiz (biz ko'pchilikni urdik), shuning uchun ba'zi muammolarni bartaraf etish bo'yicha takliflar:

  • NeoPixel chiziqlaridagi lehim yostiqchalari juda kichik, shuning uchun tarmoqqa ulanishni xavfsiz qilish qiyin. Biz qo'rg'oshin lehimidan, ko'p tarmoqli elektr simidan va ulanishlarni issiq yopishtirib ishlatdik.
  • NeoPixel tasma bo'ylab bir -biriga juda yaqin joylashishi natijasida biz ipni kesganimizda kamida 1 pikselni yo'qotib qo'ydik. Qaychi ishlatish pichoqni ishlatishdan ko'ra yaxshiroq edi, faqat plastik qatronni tozalang va kesib oling.
  • Agar NeoPixel displeyi g'alati rangni ko'rsatayotgan bo'lsa (masalan, qizil rangdan oqarib ketishi, oqning o'rniga qizil rangning har qanday soyasi), buning sababi, tarmoq etarli quvvatga ega emas. Kodni yuklash uchun biz hamma narsani uzib qo'ydik, kodni yukladik, keyin kompyuterni uzdik, batareyani Arduino -ga uladik va nihoyat noutbuk adapterini tarmoqqa uladik.
  • Agar NeoPixel displeyi tasodifiy intervallarda mutlaqo tasodifiy ranglarni ko'rsatayotgan bo'lsa, asoslar keng tarqalganligiga ishonch hosil qiling.
  • Matoga yopishtiruvchi vositani ishlatganda, u juda ko'p ishlatilmasligiga ishonch hosil qiling. Biz ikkita mato bo'lagi orasiga yog'och taxta qo'ydik, aks holda ular tegishi mumkin edi.

Umid qilamizki, sizga bu ko'rsatma yoqdi! Keyingi qadam - tarmoqni ko'chma batareyaga ulash va uni ko'chalarda aylantirish, bu erda avtomobillar va boshqa ifloslantiruvchi moddalarning havo ifloslanishi displeyni ishga tushiradi.

Tavsiya: