Mundarija:
- Ta'minotlar
- 1 -qadam: Uskuna
- 2 -qadam: ma'lumotlar bazasi
- 3-qadam: orqa qism
- 4 -qadam: veb -sayt
- 5-qadam: oldingi qism
- 6 -qadam: ish
Video: Aqlli signal: 6 qadam
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:25
Maktabdan menga loyiha tuzish topshirig'i berildi. Men aqlli signalni tanladim, chunki men doim signal bilan uxlayman va maktabni sog'inaman. Siz signalni faqat yorug'lik, tovush va harakat mavjud bo'lganda o'ldirishingiz mumkin, shuning uchun siz uyquga qaytolmaysiz yoki ko'zingizni ochmasdan kechiktira olmaysiz. Shuningdek, siz uyqu rejimini ko'rishingiz, budilnik o'rnatishingiz va yangi signallarni qo'yishingiz mumkin bo'lgan veb -sayt mavjud.
Ta'minotlar
Loyihani yaratish uchun ba'zi materiallar kerak bo'ladi. ro'yxatini quyida topishingiz mumkin. siz hammasini hisob varag'ida, shu jumladan narxda ham topishingiz mumkin.
- Malinali pi 3
- T-poshnali kesish taxtasi
- PIR sensori
- Yorug'lik sensori
- Ovozni aniqlash sensori
- Buzzer
- LCD displey
- Tugma
1 -qadam: Uskuna
Hamma narsani qurishni boshlashdan oldin, men fritzing bo'yicha 2 ta sxemani (1 ta elektr va 1 ta non taxtasida) tuzdim va unda nuqson yo'qligiga ishonch hosil qildim. Hammasi yaxshi ekaniga amin bo'lganimdan so'ng, men loyihani boshladim. Birinchidan, men signal va tugma bilan boshladim, chunki bu eng oson komponentlar edi. Shundan so'ng men displeyimni malina pi ga uladim. Oxirida men sensorlarimni uladim. yorug'lik sensori va harakat sensori oson, chunki sizga boshqa hech narsa kerak emas, lekin PIR sensori qo'shimcha narsaga muhtoj. PIR qisqa tutashuv qilmasligini ta'minlash uchun siz kuchlanish ko'prigidan foydalanishingiz kerak. Bu shuni anglatadiki, hamma narsa yaxshi ketayotganiga ishonch hosil qilish uchun siz qo'shimcha 1k va 2k ohmli rezistorlardan foydalanishingiz kerak. Pimlarning aniq ishlatilishi va hamma narsani pi -ga qanday ulashni sxemalarda topishingiz mumkin.
2 -qadam: ma'lumotlar bazasi
Ma'lumotni saqlash uchun menga ma'lumotlar bazasi kerak edi.
Mening ma'lumotlar bazam 6 ta jadvaldan iborat.
- Sensor
- Tarix_sensorlari
- Shaxs
- Signal_ odami
- Uyqu_ otasi
- Signal
ma'lumotlar bazasida 2 qism mavjud. Sensorlar uchun 1, odam va uning barcha statistikasi uchun 1.
Sensor jadvalida identifikator va ism mavjud. Bu jadval ID, qiymat, Sensor_id va ismga ega bo'lgan History_sensors -ga ulangan. sensor_id qaysi sensor qiymatga ega ekanligini bilish uchun kerak va sana qachon o'lchaganini bilish kerak.
Jadvaldagi shaxs ID, ism va parolni o'z ichiga oladi. Kirish uchun parol va ism kerak, shuning uchun hech kim sizga signal berolmaydi. Bu jadval sleep_pattern va Alarm_person jadvaliga ulangan. "Sleep_patern" jadvalida identifikator, "Soat_sleep", "Date", "Person_id", "Bedtime" va "Wake_up_time" mavjud. Bu erda sizning uyqu otangiz haqida grafik yaratish uchun ma'lumotlar saqlanadi.
Alarm_person jadvali Person_id, Alarm_id va vaqtni o'z ichiga oladi. Bu jadval kerak, chunki har xil odamlar bir vaqtning o'zida signalni ishlatishi mumkin va 1 kishi bir nechta signaldan foydalanishi mumkin. Oxirgi jadval - signalli stol. Bu identifikator va tavsifni o'z ichiga oladi.
3-qadam: orqa qism
Oxirida men turli xil funktsiyalarni yozishim kerak edi.
- stol sensorlarini so'rang
- history_sensors jadvalini so'rang
- uyqu rejimini so'rang
- yangi signal qo'ying
- stol signalini so'rang
- foydalanuvchini ro'yxatdan o'tkazish
- Kirish
- sensorlarning qiymatlarini history_sensors jadvaliga qo'ying
Men pycharmdan foydalandim va kodni pythonda yozdim.
barcha funktsiyalar uchun @app.route va keyin manzilni ishlataman. har safar boshqa manzilni ishlatishingiz kerak, chunki aks holda u ishlamaydi. Shundan so'ng men if funktsiyasini usuli sifatida yozaman, agar bu to'g'ri bo'lsa, u kodni bajaradi. if qiymatida ma'lumotlarni olish yoki ma'lumotlarni qo'yish uchun try catch va sql bayonoti mavjud.
Sensorli funktsiyalar uchun bu boshqacha. Bu erda men @app.route -dan foydalanmadim, faqat sensor uchun funktsiyani qildim. bu erda siz pinlaringizni e'lon qilasiz va qayta qo'ng'iroq qilish funktsiyasini bajarasiz. Shunday qilib, sensor har safar biror narsani aniqlasa, vazifa bajariladi. Qayta qo'ng'iroq qilish funktsiyasida men sensordan biror narsa aniqlanganda ishlaydigan if dan foydalanardim. If -da, ma'lumotlar jadvalga sql ifodasi bilan kiritiladi. U erda uxlash ham bor, chunki aks holda jadvalga faqat 1 ta aniqlash uchun juda ko'p qiymat qo'yiladi.
Github -da siz loyihaning to'liq kodini topishingiz mumkin.
4 -qadam: veb -sayt
Mening veb -saytim uchun men html va css bilan ishladim, veb -saytimda 11 html sahifasi bor.
Sahifalar juda ko'p, chunki hamma narsa veb -sayt orqali ishlaydi. siz signal o'rnatishingiz, signal qo'shishingiz va o'chirishingiz mumkin. Sozlamalar sahifasida siz parol va elektron pochtangizni o'zgartirishingiz mumkin. Sizning uyqu rejimingiz uchun sahifangiz bor. Siz uxlagan va uyg'ongan paytingizni ham qo'shishingiz mumkin. Ijobiy tomoni shundaki, har bir sahifa bir xil ko'rinishga ega va asosan bir xil narsalardan foydalanadi, shuning uchun CSS har bir sahifada bir xil bo'ladi.
5-qadam: oldingi qism
Old qismi javascriptda yozilgan.
6 -qadam: ish
Mening ishim uchun men yog'ochdan foydalanishni tanladim. Kesish unchalik qiyin emas, chiroyli ko'rinadi. Mening sumkam 26 sm, 14 sm va balandligi 7, 5 sm. Bu juda katta, chunki hamma narsaga mos bo'lishi kerak. Men sensorlar, tugma va lcd uchun teshiklar qildim, shunda vaqt ko'rinadi va sensorlar harakatni yoki yorug'likni aniqlay oladi. Buning uchun men lazer kesgichdan foydalandim. Ishning ichida mening non taxtam va malina pi bor.
Tavsiya:
SONOFF aqlli kalitlari yordamida aqlli rolikli pardalarni qanday yasash mumkin ?: 14 qadam
SONOFF aqlli kalitlari yordamida aqlli rolikli pardalarni qanday yasash mumkin?: SONOFF aqlli kalitlarida interlok rejimidan foydalaning, oddiy rolikli pardalarni aqlli ko'rinishga aylantirish uchun ko'pchiligingiz rozi bo'lasizmi, siz ertalab rolikli pardalarni tortib olasiz. va kechqurun uni pastga tushirmoqchimisiz? Qanday bo'lmasin, men
Uskuna va dasturiy ta'minot Hack aqlli qurilmalar, Tuya va Broadlink LED lampochkasi, Sonoff, BSD33 aqlli vilkasi: 7 qadam
Uskuna va dasturiy ta'minot Hack Smart Devices, Tuya va Broadlink LED lampochkasi, Sonoff, BSD33 Smart Plug: Bu ko'rsatmada men bir nechta aqlli qurilmalarni o'z dasturiy ta'minotim bilan qanday o'chirganimni ko'rsataman, shuning uchun ularni Openhab sozlamalari orqali MQTT orqali boshqarishim mumkin. Men ularni buzganimda yangi qurilmalar. Albatta, maxsus dasturiy ta'minotni o'chirishning boshqa usullari mavjud
Aqlli budilnik: Raspberry Pi -dan tayyorlangan aqlli budilnik: 10 qadam (rasmlar bilan)
Aqlli budilnik: Raspberry Pi bilan yasalgan aqlli budilnik: Siz hech qachon aqlli soatni xohlaganmisiz? Agar shunday bo'lsa, bu siz uchun yechim! Men Smart Budilnikni yaratdim, bu soat, siz budilnik vaqtini veb -saytga ko'ra o'zgartirishingiz mumkin. Signal o'chganda, ovoz eshitiladi va ikkita chiroq yonadi
Aqlli uyingizni aqlli ravishda himoya qiling: 14 qadam
Aqlli uyingizni aqlli ravishda himoya qiling: Men xavfsiz va xavfsiz tanlov uchun kurashaman. Agar sizga mening ko'rsatmalarni yoqtirsangiz, iltimos, ovoz bering! Men sizga o'z uyingizni va uning atrofini qanday qilib oson va arzon narxda himoya qilishni ko'rsataman. Siz o'z segmentlaringizni o'z ichiga olasiz: 1. Y ni sozlang
Uy avtomatizatsiyasi: harorat signal chegarasidan yuqori bo'lganida signal va signalni LCD displeyda ko'rsatish: 5 qadam
Uy avtomatizatsiyasi: harorat chegaradan yuqori bo'lganda signalni va displeyni LCD displeyda ko'rsatish: Bu blogda uy avtomatlashtirish tizimini qanday qilish kerakligi ko'rsatiladi, u harorat dasturlashtirilgan chegara qiymatidan oshganda signal berishni boshlaydi. U LCD displeyda xonaning hozirgi haroratini ko'rsatishni davom ettiradi