Mundarija:

EasyTalk: oson muloqot va yoningizda taqvim: 6 qadam
EasyTalk: oson muloqot va yoningizda taqvim: 6 qadam

Video: EasyTalk: oson muloqot va yoningizda taqvim: 6 qadam

Video: EasyTalk: oson muloqot va yoningizda taqvim: 6 qadam
Video: Happiness Is Easy (1997 Remaster) 2024, Noyabr
Anonim
EasyTalk: Oson muloqot va yoningizda taqvim
EasyTalk: Oson muloqot va yoningizda taqvim
EasyTalk: Oson muloqot va yoningizda taqvim
EasyTalk: Oson muloqot va yoningizda taqvim

Mening ismim Kobe Marchal, men Belgiyaning Xovest shahrida o'qiyman va men multimediya va aloqa texnologiyasi (MCT) talabasiman. Birinchi kursning oxirgi topshirig'i uchun men IoT-qurilmasini yasashim kerak edi.

Uyda bizda muammo bor, ukam doimo o'ynaydi va onam pastdan nimanidir aytishi kerak bo'lganda, u baqirishi kerak, chunki u quloqchin taqib, hech narsani eshitmaydi. Men u uchun bu muammoni hal qilmoqchi edim, shuning uchun siz veb -saytdan xabar yuborishingiz mumkin bo'lgan qurilma qurdim. Shuningdek, u o'zingizning voqealaringizni saqlashingiz yoki tashqi taqvimni URL orqali import qilishingiz mumkin bo'lgan taqvim sifatida ishlatiladi. Bu qurilma, shuningdek, harorat va havo sifatining qiymatlarini saqlaydi, shuning uchun siz o'ynayotganingizda yoki ishlayotganingizda uning qanchalik sog'lom ekanligini ko'rishingiz mumkin, chunki siz tez -tez sezmaysiz.

Bu qurilma EasyTalk deb ataladi va bu muammoni hal qiladi. Bu OLED ekranidan foydalanadigan kichik qurilma, shuning uchun siz voqealarni, vaqtni, haroratni va havo sifatini hozir ko'rishingiz mumkin. Xabar yuborilganda, u sizni ogohlantirish ovozi bilan ko'radi va ekranda "ha" yoki "yo'q" deb javob berishingiz mumkin bo'lgan xabarni ko'rsatadi.

Agar siz bu narsani qurmoqchi bo'lsangiz yoki uning qanday yasalganini ko'rishni istasangiz, o'qishni qat'iy tavsiya qilaman. Agar siz men haqimda ko'proq bilmoqchi bo'lsangiz, portfelimga kirishingiz mumkin.

1 -qadam: materiallar

Materiallar
Materiallar
Materiallar
Materiallar
Materiallar
Materiallar

Birinchi qadam - bu loyihada foydalanish uchun barcha materiallarni yig'ish. Men siz bilan halol bo'laman. Bu arzon qurilma emas, umumiy narxi - 271 evro. Quyida ularning ro'yxati va tushuntirish uchun ba'zi fotosuratlar keltirilgan.

  • Raspberry Pi 4 Model B - 4 Gb
  • Pibow Coupé 4 - Ninja
  • 12 x Premium Jumperwires op tasmasi - 40 dona - M/M - 20 sm
  • 6 x Premium Jumperwires op tasmasi - 40 dona - M/F - 20 sm
  • 2 x 36 pinli yig'ish sarlavhasi
  • 40-pinli erkak quti sarlavhasi
  • 40 pinli GPIO kabelining regenboogi
  • Monoxrom 2,42 dyuymli 128x64 OLED grafik displeyli modullar to'plami
  • Kleine Metalen spikeri Draadjes bilan uchrashdi - 8 ohm 0,5 Vt
  • Adafruit Mono 2,5W D toifali audio uzatgich
  • 3,5 mm Aux Jack kabeli
  • 7 mm ipli lahzali bosish tugmasi
  • Mening to‘plamlarim
  • PIR Bewegingssensor
  • DS18B20 raqamli harorat sensori
  • Grove - Sensor v1.3
  • Grove - I2C ADC
  • Raspberry Pi 4 USB-C Voeding
  • Flexibel mini-statifi
  • 470 Ohm qarshilik
  • 4, 7K Ohm qarshilik
  • Issiqlikka chidamli quvurlar
  • 6 x vintlardek M2 x 6 mm
  • 6 x vintlardek M2 x 8 mm
  • 3 x Vintlardek M2 x 16 mm
  • Alyuminiy 3 mm

Men, shuningdek, barcha materiallar uchun qancha pul to'laganimni va ularni qayerdan olganimni ko'rishingiz uchun, men materiallar varaqasini tuzdim.

2 -qadam: Raspberry Pi

Ushbu loyiha uchun biz Raspberry Pi -dan foydalanamiz, chunki uni sozlash juda oson va uni ko'p narsalarda ishlatish mumkin. Bu biz qilmoqchi bo'lgan narsalar uchun juda mos keladi.

Raspberry Pi Desktop OS -ni yuklab oling va uni Raspberry Pi -ga o'rnating. Siz raspi-configda SPI, I2C va One Wire-ni yoqishingiz kerak. Men tezroq yuklash uchun yuklash parametrlarida ba'zi narsalarni o'chirib qo'yishni taklif qilaman. Bundan tashqari, men bu ishni bajarish uchun pip bilan o'rnatishingiz kerak bo'lgan ba'zi kutubxonalardan foydalanaman.

pip3 o'rnatish:

  • adafruit-circuitpython-ssd1305
  • ics
  • Shisha
  • Flask-Cors
  • Shisha-JWT-kengaytirilgan
  • mysql-ulagichi-python

Veb -saytni o'rnatish uchun sizga apache2 kerak, bu erda biz apt -dan foydalanamiz:

sudo apt install apache2 -y

Siz simsiz ulanishni sozlashingiz kerak, chunki u holda Raspberry Pi -da UTP kabelini ololmaysiz.

Ma'lumotlar bazasiga kirish uchun siz MariaDB -ni ham o'rnatishingiz kerak bo'ladi.

3 -qadam: simlarni ulash

Ulanish
Ulanish
Ulanish
Ulanish

Keyingi qadam, hamma narsani bir -biriga ulash va barcha komponentlarning ishlashini tekshirish. Men plastinkani olib tashlash va simni kamroq qilish uchun tenglikni yaratdim, shunda qurilma kichikroq bo'lishi mumkin. Bu kerak, chunki u sizning monitoringiz yonida turadi va ko'p joyni egallay olmaydi, shuning uchun sizni ishingizdan chalg'itmaydi.

4 -qadam: ma'lumotlar bazasi

Ma'lumotlar bazasi
Ma'lumotlar bazasi

Ushbu qurilma MySQL -ning barcha ma'lumotlarini saqlash va uni veb -saytda va qurilmaning o'zida ko'rsatish uchun normallashtirilgan ma'lumotlar bazasidan foydalanadi. Men uni MySQL Workbench -da yaratdim.

Ma'lumotlar bazasida 5 ta jadval mavjud.

Activiteiten jadvali (= tadbirlar, hodisalar) taqvimdagi barcha voqealarni saqlash uchun ishlatiladi. Bu boshqa taqvimdan import qilingan barcha voqealarni o'z ichiga oladi.

Table Apparaten (= qurilmalar) - bu Historiek (= tarix) jadvalida ishlatiladigan har xil turdagi qurilmalarni saqlash uchun ishlatiladi. Loyihada ikkita sensor ishlatiladi: harorat sensori va havo sifati sensori, lekin menda uchinchi "qurilma" bor, bu veb -saytdan qurilmaga yuborilgan xabarlarni saqlash uchun.

Gebruikers jadvali (= foydalanuvchilar) foydalanuvchilarni saqlaydi. Ular o'z parollari bilan tizimga kirishi va qurilmaga yuborilganda xabar ko'rsatiladigan taxallusni ko'rsatishi mumkin.

Sensor qiymatlari va qurilmaga yuboriladigan xabarlarni saqlash uchun Historiek jadvali (= tarix) ishlatiladi.

Va nihoyat, jadval havolalari (= URL manzillari) barcha tashqi kalendar URL manzillarini saqlaydi.

5 -qadam: kod

Kod
Kod
Kod
Kod
Kod
Kod

Men yangi foydalanuvchi yaratishni tavsiya qilaman, chunki bu eng yaxshi amaliyot, lekin bu shart emas, siz standart pi foydalanuvchisidan ham foydalanishingiz mumkin.

Frontend kodi apache2 dan standart html papkasiga joylashtirilgan. Siz bu papkani/var/www/html da topishingiz mumkin.

Orqa fon uchun siz uy papkasida papkani yaratishingiz va u erda barcha kodni qo'yishingiz kerak.

Biz ushbu koddagi ba'zi qiymatlarni o'zgartirishimiz kerak. Avval app.py -ga o'ting. 23 -qatorda bitta simli harorat sensori nomini belgilang. Bu, ehtimol siz uchun boshqacha bo'ladi. To'g'ri nomni topish uchun terminalni oching va kiriting:

ls/sys/bus/w1/qurilmalari

va bir nechta turli raqamlardan tashkil topgan satrni qidiring va 23 -qatordagi qatorni almashtiring.

Biz o'zgartirishimiz kerak bo'lgan boshqa narsa config.py faylida, ma'lumotlar bazasi parolini o'zgartiring.

Agar siz yuklashda ishlashini xohlasangiz, EasyTalk.service faylini ham o'zgartirishingiz kerak bo'ladi. Faqat WorkingDirectory va User -ni o'zgartiring. Ushbu faylni quyidagi buyruq bilan nusxalashingiz kerak:

sudo cp EasyTalk.service/etc/systemd/system/EasyTalk.service

Keyin ishga tushiring:

sudo systemctl EasyTalk.service -ni ishga tushiring

Va keyin uni ishga tushiring, shunda u yuklashdan boshlanadi

sudo systemctl EasyTalk.service -ni yoqadi

6 -qadam: ish

Koson
Koson
Koson
Koson
Koson
Koson
Koson
Koson

Men sumkani iloji boricha kichikroq qilib 3D chop etishga qaror qildim. Bosma 3 qismdan iborat: qutining o'zi, qopqog'i va karnay ushlagichi, chunki unda boltlarni burab qo'yadigan teshiklari yo'q.

Hamma narsani birlashtirish uchun sizga qalin harflar kerak bo'ladi.

  • 6 x vintlardek M2 x 6 mm
  • 6 x vintlardek M2 x 8 mm
  • 3 x vintlardek M2 x 16 mm

Men halol bo'lsam ham. Bu narsani qurish uchun menga 4-5 soat kerak bo'ldi. Bu juda kichkina bo'lgani uchun, hamma narsa mos keladi va ba'zida jasoratni burish qiyin, lekin agar ehtiyotkorlik bilan qilsangiz, u ishlaydi.

Men shuningdek, taxtani almashtirish uchun tenglikni yaratdim, avval siz sarlavhalarni va 5 rezistorni (4 x 470 Ohm, 1 x 4,7K Ohm) lehimlashingiz kerak.

Agar sizda tenglikni bo'lsa, men PCBga ulanishi kerak bo'lgan hamma narsaga kabellarni lehimlashdan boshlashni maslahat beraman.

Bu bajarilgach, siz OLED -displeyni vint bilan burab, unga tenglikni ulashingiz kerak bo'ladi. Displeyda PCB mavjud. Buning uchun siz 6 mm vintlarni ishlatasiz.

Keyin siz havo sifati sensorini kerakli joyga burab qo'yasiz, lekin bu biroz murakkab, chunki ADC unga ulanadi. Ikkala komponent bir -biriga tegmasligi uchun buni to'g'ri bajarish uchun siz ko'rishingiz kerak bo'lgan 3 x 5 mm alyuminiy quvurli 16 mm vintlarni ishlatasiz. Men buni ikkita vint bilan qildim, chunki men uchinchisiga erisha olmadim. Siz 4 ta simni PCBga kerak bo'lgan joyga ulaysiz.

Keyin siz ovoz kuchaytirgichni PCB -ga ulaysiz va karnayni 3D bosilgan ushlagich bilan joyiga qo'yasiz.

Ushbu qadamlardan so'ng, eng qiyin qismlar tugadi va siz hamma narsani PCBga ulashingiz va uni burab qo'yishingiz mumkin. E'tibor bering, siz ko'rgan fotosuratlarda men boshqa harorat sensori ishlataman, oxirgi mahsulot uchun men harorat sensori uzun simi bilan ishlatardim, chunki u qutining ichidan issiqlikni o'lchagan edi.

Bularning hammasi joyida bo'lganda, siz Raspberry Pi -ni burab qo'yishingiz kerak. Men buning uchun korpusni ishlataman, chunki u ishlab chiqaradigan issiqlikka ishonmayman, bu quti himoya uchun mavjud, shuning uchun 3D bosma erimaydi. O'rnatishdan oldin, siz elektr kabeli va yordamchi kabelni ulashingiz kerak (siz bitta simni ochishingiz va lehimlashingiz kerak, so'ngra Raspberry Pi -dan PCB -ga ulashingiz kerak), chunki keyin unga etib bo'lmaydi.

Keyin GPIO sarlavha kabelini PCB -dan Raspberry Pi -ga ulang va qopqog'ini yopishdan oldin hamma narsa ishlayotganini tekshiring.

Pastki qismida siz tripodni ulashingiz mumkin bo'lgan teshik bor, lekin bu ixtiyoriy.

Bo'ldi shu! Umid qilamanki, sizga ushbu maqolani o'qish yoqdi! -Kobe

Tavsiya: