Mundarija:
2025 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2025-01-13 06:58
Oxirgi marta men ESP32 -dan foydalanib, hozirgi ob -havoni efirga uzatadigan ob -havo eshittirish stantsiyasini yaratdim. Agar sizni qiziqtirsa, oldingi ko'rsatmalarni tekshirishingiz mumkin. Endi men bu shahardagi ob -havoni tekshirish uchun shaharni belgilab, takomillashtirilgan versiyasini tayyorlamoqchiman. U nafaqat bitta shahardagi ob -havoni o'ynaydi, balki mening buyruqlarim bo'yicha boshqa shaharlardagi ob -havoni ham so'raydi va efirga uzatadi.
Ta'minotlar
Uskuna:
- Raspberry Pi 3B+ (SD -karta bilan)
- Ovozli shlyapa
- PIR harakat sensori moduli
- Mikro USB kabeli
- Dupont liniyasi
1 -qadam: Qanday qilish kerak
- Biz bu funktsiyalarni Raspberry Pi bilan amalga oshirishni rejalashtirmoqdamiz. Ammo Raspberry Pi -da ovozni qabul qiladigan mikrofon yo'q va agar karnay ulanmagan bo'lsa, ovoz chiqaradigan qurilma yo'q. Biz Raspberry Pi uchun ikkita mikrofonli kirish va karnay chiqishi bilan kengaytirish kartasini tayyorladik, shunda Raspberry Pi ovozli kiritish funktsiyasini amalga oshirishi va karnayga ulanmasdan ovozni eshitishi mumkin.
- Bizga uchta API kerak, ular nutqdan matnga, ob-havo va matndan nutqqa. Keyin ovozni tinglang.
Nutqdan matnga:
Ob-havo: https://rapidapi.com/community/api/open-weather-map/endpoints matndan nutqqa:Bundan tashqari, biz kimdir yaqinlashganda RasPi ishlay boshlaganini bilish uchun sensorni ulaymiz
2 -qadam: ulanish
Ovozli shlyapa - bu Raspberry Pi kengaytmasi. Raspberry Pi -ni pinlarga muvofiq joylashtiring. Datchiklarni ulash uchun biz bir nechta DuPont simlarini lehimlashimiz kerak. Pim ulanishlari quyidagicha:
Ovozli shlyapa ------ PIR
5V ------ VCC GND ------ GND GPIO27 ------ OUT
3 -qadam: Kengaytirish kartasi drayverini o'rnating
- Kengaytirish taxtasi ko'rilgan mahsulotga mos ravishda yaratilganligi sababli, biz uni ko'rish uchun haydovchidan foydalanishimiz mumkin.
- Drayverni o'rnatish uchun Raspberry Pi terminal oynasida quyidagi buyruqni kiriting:
git klon
cd seeed-voicecard sudo./install.sh sudo reboot
Foydalanish bo'yicha batafsil ko'rsatmalarni ko'rish uchun sahifaga o'tish mumkin (https://www.makerfabs.com/wiki/index.php?title=Voice_Interaction_Hat)
4 -qadam: kod
- Github:
- Kodni olgandan so'ng, asr KPI, weather.py va tts.py -da API KEY -ni o'zingiznikiga almashtirishingiz kerak.
r = request.post ('https://speech.googleapis.com/v1/speech:recognize?key='+api_key, ma'lumotlar = ma'lumotlar, sarlavhalar = sarlavhalar) sarlavhalar = {' x-rapidapi-xost ': "jamoa-ochiq-ob-havo-xaritasi.p.rapidapi.com ", 'x-rapidapi-key':" ******************************* ***** "} r = request.post ('https://texttospeech.googleapis.com/v1/text:synthesize?key='+api_key, ma'lumotlar = ma'lumotlar, sarlavhalar = sarlavhalar)
Ob -havo.py -da joy nomini to'ldiring va u bu manzillar ro'yxatidan tan olinadi. Albatta, agar siz ob -havo API ularni taniy oladigan bo'lsa, siz butun mamlakat bo'ylab va hatto butun dunyodagi shaharlarning nomlarini to'ldirishingiz mumkin
manzil = ['Pekin', 'London']
Agar siz kengaytirish kartasining karnaylarini ishlatmasangiz, lekin o'zingizning dinamiklaringizni ishlatsangiz, quyidagi koddagi "hw: 0, 0" ni test1.py da "hw: 1, 0" bilan almashtirishingiz kerak
os.system ("aplay -Dhw: 1, 0 output1.wav")
Raspi-Voice-Interaction-Hat/ weather_workSpace/ dagi barcha fayllarni Raspberry Pi ishchi katalogiga nusxalash
5 -qadam: Paket qutisini yarating
Chiroyli ko'rinish uchun biz uni karton qutiga joylashtirdik. Karnay va mikrofonni ochish uchun mos ravishda kesib oling va uni bezash uchun qog'oz qutiga bo'yash uchun rangli qalamlardan foydalaning.
6 -qadam: Qanday foydalanish kerak
Raspberry Pi -ni quvvatlantirish uchun USB kabelidan foydalaning, test1.py -ni ishga tushirish uchun Raspberry Pi -ni boshqaring va sensorni ishga tushiring. Ovoz eshittirilgandan so'ng, biz joy haqida gapira boshlaymiz va keyin ob -havo efirga uzatilishini kutamiz. Ob -havo yordamchisi tugadi.