Mundarija:
- Ta'minotlar
- 1 -qadam: Thingspeak kanalini yaratish
- 2 -qadam: IFTTT ilovasidan foydalanish
- 3 -qadam: Nihoyat kodni ishga tushirish
Video: Raspberry Pi yordamida Google yordamchisiga asoslangan LEDni boshqarish: 3 qadam
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:23
Hey!
Ushbu loyihada biz Google yordamchisiga asoslangan LEDni Raspberry Pi 4 yordamida HTTP yordamida Pythonda boshqaramiz. Siz LEDni lampochka bilan almashtirishingiz mumkin (aniqrog'i, sizga o'rni moduli kerak bo'ladi) yoki boshqa har qanday maishiy texnika, bu loyihani uyni avtomatlashtirish maqsadida yanada amalga oshirish uchun.
Ta'minotlar
Ushbu loyiha uchun sizga kerak bo'ladi:
1. Raspberry Pi
2. LED
3. Jumper simlari-2 (erkakdan ayolgacha)
4. Non paneli
5. IFTTT dasturi (https://play.google.com/store/apps/details?id=com.ifttt.ifttt&hl=en_IN)
6. Thingspeak hisob qaydnomasi (https://thingspeak.com/)
Ba'zi old shartlar:
1. Tarmoq asoslari-HTTP
2. Python veb -ma'lumotlarga kirish uchun
1 -qadam: Thingspeak kanalini yaratish
Agar siz Thingspeak -da yangi bo'lsangiz va uni hech qachon ishlatmagan bo'lsangiz, quyidagi amallarni bajaring.
Https://thingspeak.com/ saytiga o'ting
Thingspeak -dan foydalanishni boshlashdan oldin siz ro'yxatdan o'tishingiz kerak bo'ladi
Ro'yxatdan o'tgandan so'ng, "Kanallar" bo'limiga o'ting
"Kanallar" bo'limida "Yangi kanal" -ni tanlang (ma'lumot uchun rasmga qarang).
Yangi kanalda siz turli xil ma'lumot qutilarini ko'rasiz. Siz faqat Ismlar maydonini to'ldirishingiz kerak. Siz xohlagan kanalingizga nom berishingiz mumkin. Men o'z rasmimni biriktirdim, u erda o'z kanalimni Raspberry Pi 4 deb nomladim. Qolgan qutilarni xuddi shunday qoldiring.
Tabriklaymiz! Siz IoT loyihangiz uchun kanalni muvaffaqiyatli yaratdingiz. (Raspberry Pi 4 nomli kanalim muvaffaqiyatli yaratilganini ko'rishingiz mumkin)
2 -qadam: IFTTT ilovasidan foydalanish
Google Assistant yordamida Thingspeak kanalida ma'lumotlarni joylashtirish uchun GET so'rovini ishga tushirish uchun biz ushbu ilovadan foydalanishimiz kerak. Bu ilovani Google Assistant va Thingspeak kanalingiz orasidagi interfeys deb tasavvur qiling.
Keyinchalik, biz IFTTT ilovasida GET so'rovlarini yaratamiz.
IFTTT dasturini https://play.google.com/store/apps/details?id=com… saytidan yuklab oling.
Hisob qaydnomangizni yarating
O'z qo'lingiz bilan applet yasashga o'ting
Agar bu variantni bosing
Google Assistant sifatida ishga tushirish xizmatini tanlang
Unda Oddiy iborani ayt -ni tanlang
Ushbu parametr ostida ba'zi ma'lumotlar qutilari paydo bo'ladi. Buning uchun rasmlarga qarang va shunga mos ravishda tafsilotlarni to'ldiring! (buning uchun ikkita rasm bor: 1. LEDni yoqish uchun 2. LEDni o'chirish uchun)
Google Assistant -ning "Agar bu bo'lsa" qismini yakunladik. Endi biz Webhooks ni tanlaymiz.
Buning ostida Veb -so'rovni tanlang
Qatorlarga to'ldirilishi kerak bo'lgan ma'lumot uchun rasmga qarang. Bu manzilga murojaat qiling https://api.thingspeak.com/update?api_key=INSERT YOUR API API KEY & field1 = 1
Yuqoridagi URLda men yozgan API kalitini yozish haqida aytib o'tganimni sezasiz. Bu Thingspeak -da siz yaratgan kanalning identifikatori bo'lgan API kaliti (rasmga qarang). API yozish kaliti sizning kanalingizga ma'lum ma'lumotlarni yozishga yordam beradi va shunga o'xshash API -ni o'qish sizga kanaldan ma'lumotlarni olishga yordam beradi.
Write API kalitidan tashqari, qolgan ma'lumotlar ham xuddi shunday qoladi.
Bu erda siz Google Assistentingizga "LEDni yoqing" deganingizda Thingspeak kanalingizga "1" raqamini yuboradigan tetik yaratgansiz.
Endi, xuddi shu tarzda, LEDni o'chirish uchun IFTTT ilovasida yangi Applet yaratishingiz kerak. Agar siz bu haqda chalkash bo'lsangiz, rasmlarni biriktirdim. Aks holda, LEDni o'chirish tartibi, ba'zi kichik o'zgarishlardan tashqari, yuqorida qilganingiz bilan bir xil bo'ladi.
3 -qadam: Nihoyat kodni ishga tushirish
Men Python kodining asosiy maqsadini tushuntiraman. Thingspeak kanalidan Google Assistentga aytganlaringiz asosida "1" yoki "0" bo'lishi kerak bo'lgan ma'lumotlarni olishimiz kerak. Biz bunga asoslanib LEDni yoqishimiz yoki o'chirishimiz kerak. Agar Thingspeak kanaliga yuklangan qiymat "1" bo'lsa, biz LEDni yoqamiz, agar "0" bo'lsa, uni o'chirib qo'yamiz.
Kodda sizga ikkita narsa kerak bo'ladi: 1. Sizning API o'qish kalitingiz 2. Sizning kanal identifikatoringiz (rasmlarga qarang)
Bu erda kod (HTTP va Pythonning old shartlarini bilsangiz):
urllib import qilish
import so'rovlari
json import qilish
import vaqti
RPi. GPIO -ni GPIO sifatida import qilish
GPIO.setmode (GPIO. BOARD)
GPIO. sozlash (7, GPIO. OUT)
harakat qilib ko'ring:
vaqt (1):
URL = 'https://api.thingspeak.com/channels/KANALNING ID/maydonlari/1.json? INSER? Api_key =' KEY = 'O'QISH API KEYTINI KIRING'
HEADER = '& natijalar = 2'
NEW_URL = URL+KEY+HEADER
#chop etish (NEW_URL)
get_data = request.get (NEW_URL).json ()
#chop etish (get_data)
feild_1 = get_data ['tasmalar']
#print ("Maydon:", feild_1)
t =
x uchun feild_1:
t.qo'llash (x ['maydon1'])
chop etish (t [1])
agar int (t [1]) == 1:
GPIO. chiqish (7, 1)
elif int (t [1]) == 0:
GPIO. chiqish (7, 0)
KeyboardInterruptdan tashqari:
GPIO.cleanup ()
Tavsiya:
Televizorni masofadan boshqarish pulti yordamida LEDni boshqaringmi? -- Arduino IR qo'llanmasi: 5 qadam (rasmlar bilan)
Televizorni masofadan boshqarish pulti yordamida LEDni boshqaringmi? || Arduino IR qo'llanmasi: Ushbu loyihada men sizga televizorning orqasidagi LEDlarni boshqarish uchun masofadan boshqarish pultidagi tugmachalarni qanday o'zgartirganimni ko'rsataman. Bundan tashqari, siz ushbu texnikadan foydalanib, har xil narsalarni kodni tahrirlash orqali boshqarishingiz mumkin. Men nazariya haqida bir oz gaplashaman
Potentsiometr va OLED displey yordamida miltillovchi LEDni boshqarish: 6 qadam
LEDning miltillashini potentsiometr va OLED displey yordamida boshqarish: Ushbu qo'llanmada biz LEDning miltillashini potentsiometr bilan boshqarishni va OLED displeyda puls chastotasi qiymatini ko'rsatishni o'rganamiz
Potansiometr yordamida LEDni boshqarish: 6 qadam
Potensialiometr yordamida Controllig LED: Ilgari, biz yangi dasturiy ta'minotni bilish ma'rifatli bo'lishi mumkin bo'lgan ma'lumotlarni boshqaruv paneliga yuborish uchun Serial Monitor -dan foydalanganmiz. Bu darsda, LEDning yorqinligini potentsiometr yordamida qanday o'zgartirish va potentsiomete ma'lumotlarini olishni ko'rib chiqamiz
Atollic TrueStudio-LEDni STM32L100 yordamida 4 tugmachasini bosib LEDni yoqing: 4 qadam
STM32L100 yordamida tugmachani bosib LEDni Atollic TrueStudio-ni yoqing: STM32-ning ushbu qo'llanmasida men sizga STM32L100-ning GPIO pinini qanday o'qish kerakligi haqida aytib beraman, shuning uchun men bortda Led porlashni o'rnataman. bosish tugmachasini bosish
Yorqinlikni boshqarish PWM asosidagi LEDni boshqarish tugmachalari, Raspberry Pi va skretch yordamida: 8 qadam (rasmlar bilan)
Yorqinlikni boshqarish PWM asosidagi LEDni boshqarish tugmachalari, Raspberry Pi va Scratch yordamida: Men PWMning o'quvchilarimga qanday ishlashini tushuntirishga harakat qilardim, shuning uchun men o'z oldimga ikkita tugma yordamida LEDning yorqinligini boshqarishga harakat qildim. - bitta tugmachaning yorqinligini oshiradi, ikkinchisi esa uni o'chiradi. Dastur uchun