Mundarija:
- Ta'minotlar
- 1 -qadam: Raspberry Pi -ni o'rnating
- 2 -qadam: Ovoz tizimini ishga tushiring
- 3 -qadam: Qo'ng'iroq tovushlarini ijro etishni sinab ko'ring va/yoki yangi tovushlarni chiqaring
- 4 -qadam: Kodni o'rnating va jadvalingizni o'rnating
- 5 -qadam: Yugurishni Crond bilan avtomatlashtirish
- 6 -qadam: Moslashtiring va zavqlaning
Video: Masofadagi talabalar uchun maktab qo'ng'irog'i: 6 qadam
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:23
COVID-19 pandemiyasi tufayli ko'plab bolalar maktablari masofadan etkazib berishga o'tdilar. Bu uy maktab qo'ng'irog'i - bu Raspberry Pi va USB karnaydan foydalanadigan jadvalda qolishning qiziqarli usuli. Siz buni bolangiz bilan qilishingiz mumkin, ular dasturlash haqida bilib olishadi va "qo'ng'iroqni" chalishadi. Men buni 7 -sinfda o'qiyotgan qizim uchun qurganman (hozirda masofadan etkazib berish orqali) va bizni o'z vaqtida ushlab turish yaxshi ishlamoqda.
Ta'minotlar
Ushbu loyiha uchun sizga kerak bo'ladi:
- Raspberry Pi kompyuteri - Agar sizda Wi -Fi bo'lsa, u eng yaxshi ishlaydi, men Kano to'plamidan RPi 3B ishlatardim.
- Karnay - Men USB karnaydan foydalanardim
Kod sizning talabangizning Linux kompyuterida yoki hatto mikropritonda ishlaydigan mikrokontrollerda osonlikcha ishlashi mumkin, agar mikrokontrollerda joriy sana/vaqtni olish mexanizmi bo'lsa. Bundan tashqari, har qanday kuchaytirgich yoki hatto sovutgichli o'rni / analog qo'ng'irog'i ishlatilishi mumkin.
1 -qadam: Raspberry Pi -ni o'rnating
Raspberry Pi kompyuterini sozlash uchun juda ko'p manbalar mavjud, shuning uchun men sizni Google topadigan kompyuterga havola qilaman. Eng muhimi, sizning kompyuteringizda to'g'ri sana va vaqtni olish usuli. Ko'pchilik zamonaviy Wi-Fi-ni qo'llab-quvvatlaydigan Raspberry Pi kompyuterlari Internetdan vaqtni belgilash uchun NTP protokolidan foydalanadilar, bu men uchun to'g'ri vaqt. Men RPi -ni "boshsiz" qilib o'rnatdim, ya'ni klaviatura yoki monitor yo'q, lekin Internet orqali himoyalangan qobiq (SSH) orqali kirish mumkin. Agar siz RPi -ni yaxshi bilsangiz, bu sozlamani klaviatura / video / sichqonchasiz bajarishingiz mumkin, lekin pi -ni o'sha aksessuarlar yordamida sozlash osonroq.
E'tibor bering, menga grafik interfeysdan foydalanishning hojati yo'q edi, shuning uchun men "Raspberry Pi OS (32-bit) Lite" ni yukladim, u kichikroq va tezroq yuklanadi va tezroq yuklanadi.
Raspberry Pi tarmog'ini va interfeys parametrlarini sozlang
$ sudo raspi-config
Konfiguratsiyada quyidagilarni bajaring:
- Parolni o'zgartiring - avval buni, umid qilamanki, Internetga kirishdan oldin!
- "Tarmoq parametrlari" bo'limida
- Xost nomini o'zgartiring. Men mezbon nomidan foydalanardim: "maktab qo'ng'irog'i".
- Simsiz tarmoqqa ulaning (agar siz buni sozlashda qilmagan bo'lsangiz)
- "Interfacing Options" ostida SSH -ga kirishni yoqing
- "Yangilash" variantini ishga tushirish har doim yaxshi
Buni qilganingizdan va qayta ishga tushirgandan so'ng, siz SSH mijozi yordamida o'sha mahalliy tarmoqdagi boshqa kompyuterdan Raspberry Pi -ga ulanishingiz kerak. Unga quyidagi ma'lumotlardan foydalanib ulaning:
Xost nomi: schoolbell.local
foydalanuvchi: pi parol: juda ko'p ma'lumotlar
Linux qutisidan, bu buyruq satrini $ buyrug'iga kiritish kabi oddiy:
$ ssh [email protected]
… darhol parolni kiriting
Bu sizga tizimga kiradi va siz Raspberry Pi -da vaqt to'g'ri ekanligini tekshirishingiz mumkin. Buyruq satriga sana buyrug'ini kiriting va javobni tekshiring:
pi@maktab qo'ng'irog'i: ~ $ sana
3 -sentabr, 20:44:34, AKDT 2020 yil
Umid qilamanki, bu hozirgi vaqt. Agar bu noto'g'ri bo'lsa, Google Raspberry Pi -da NTP -ni o'rnatish haqida.
2 -qadam: Ovoz tizimini ishga tushiring
Biz qo'ng'iroqlar uchun MP3 fayllarini o'ynaymiz, shuning uchun biz ushbu audio fayllarni dekodlash uchun dasturlarni yuklab olishimiz kerak. Men ushbu buyruqni yozib mpg321 paketini oldim:
pi@schoolbell: ~ $ sudo apt-get install mpg321
Ushbu dasturiy ta'minotni o'rnatish uchun ko'rsatmalarga amal qiling.
Men g'alati haydovchiga ega bo'lgan va standart ovoz kartasi sifatida to'liq avtomatik konfiguratsiya qilinmagan eski USB karnaydan foydalanardim, shuning uchun men uning apparat manzilidan foydalanib, dinamikni "sindirish" mumkinligini topdim. Karnayni ulaganimdan so'ng, audio qurilmalarni ro'yxatga olish uchun "aplay -l" buyrug'idan foydalandim:
pi@maktab qo'ng'irog'i: ~ $ aplay -l
**** PLAYBACK uskuna qurilmalari ro'yxati **** karta 0: minigarnituralar [bcm2835 minigarnituralar], qurilma 0: bcm2835 minigarnituralar [bcm2835 minigarnituralar] pastki qurilmalar: pastki qurilma #0: pastki qurilma #0 pastki qurilma #1: pastki qurilma #1 pastki qurilma #2: subdevice #2 Subdevice #3: Subdevice #3 Subdevice #4: subdevice #4 Subdevice #5: Subdevice #5 Subdevice #6: Subdevice #6 Subdevice #7: Subdevice #7 Card 1: CODEC [USB Audio CODEC], qurilma 0: USB Audio [USB Audio] Subdevices: Subdevice #0: subdevice #0
Men xohlagan qurilma pastroq, 1 -karta, 0 -qurilma.
Men karnayni "dinamik-test" bilan "hw: 1, 0" qurilmasi yordamida sinab ko'rdim, ya'ni apparat kartasi 1, qurilma 0.
pi@maktab qo'ng'irog'i: ~ $ karnay -test -D hw: 1, 0
Bu dastur karnaylardan shovqin chiqaradi. Shovqin-surondan rohatlaning va asabiylashganda control-C yozing. Agar siz hech qanday shovqin eshitmasangiz, google -dan foydalaning.
Endi sizda ovoz bor!
3 -qadam: Qo'ng'iroq tovushlarini ijro etishni sinab ko'ring va/yoki yangi tovushlarni chiqaring
Qo'ng'iroq uchun men "freesound.org" saytidan "bing-bong" ovozini yukladim. Bu ovozni taqdim etgani uchun Benboncanga rahmat:
freesound.org/people/Benboncan/sounds/93646/
Ovozni to'g'ridan -to'g'ri ijro etishingiz mumkin. Men Raspberry Pi kompyuteriga ushbu buyruqni yozib, ushbu faylning mp3 versiyasini to'g'ridan -to'g'ri yuklab olishim mumkin edi (agar u WiFi -da bo'lsa):
pi@maktab qo'ng'irog'i: ~ $ wget
Keyin men ushbu fayl nomini o'zgartirdim:
pi@maktab qo'ng'irog'i: ~ $ mv 93646_634166-hq.mp3 bing-bong-chime-hq.mp3
Keyin men ushbu buyruq bilan qo'ng'iroq qilishim mumkinligini sinab ko'rdim (chiqish ko'rsatiladi):
pi@maktab qo'ng'irog'i: ~ $ mpg321 -a-chw: 1, 0 bing-bong-chime-hq.mp3
Yuqori ishlash MPEG 1.0/2.0/2.5 1, 2 va 3-qatlamli audio pleer. 0.3.2-1 versiyasi (2012/03/25). Jo Dryu tomonidan yozilgan va mualliflik huquqlari, hozirda Nanakos Xrizostomos va boshqalar tomonidan saqlanadi. Har xil odamlarning kodlaridan foydalanadi. Qo'shimcha ma'lumot uchun "README" ga qarang! Bu dasturiy ta'minot mutlaqo kafolatsiz keladi! O'Z XATARINGIZDAN FOYDALANING! MPEG oqimi bing-bong-chime-hq.mp3 dan ijro etilmoqda… MPEG 1.0 qatlami III, 128 kbit/s, 44100 Hz mono [0:02] Bing-bong-chime-hq.mp3 kodini dekodlash tugallandi.
Tabriklaymiz! Sizda audio bor.
Noutbukimdagi "jasorat" ovozli tahrirlash kodidan foydalanib, men ko'proq o'yin-kulgi uchun faylni "bing" va "bong" ga ajratdim. Siz har qanday mp3 yoki boshqa formatni ishlatishingiz mumkin (men boshqalarni sinab ko'rmaganman) ovozli fayllar.
4 -qadam: Kodni o'rnating va jadvalingizni o'rnating
Kod - bu python skriptidir, u joriy sana/vaqtni oladi va agar sana dam olish kuni emas, balki ish kuni bo'lsa, u qo'ng'iroq vaqtiga to'g'ri keladimi yoki yo'qligini tekshiradi.
Avval siz uni ishga tushirasiz, keyin uni har daqiqada ishga tushirishni avtomatlashtirasiz.
Github -dan kodni yuklab oling:
gist.github.com/BillSimpson/d7a1a531995c8b63492bb47ef8872618
Men buni faylni mahalliy kompyuterda saqlash va Raspberry pi -ga joylashtirish uchun xavfsiz nusxa ko'chirish (scp) yordamida oson bajaraman.
Mahalliy kompyuteringizda brauzerdan kodni nusxa oling, so'ngra matnli faylga joylashtiring va "schoolbell.py" fayl nomi bilan saqlang. Keyin faylni skp qiling:
mahalliy mashina: ~ $ scp schoolbell.py [email protected]: ~/
Sizdan schoolbell.local saytida pi foydalanuvchi parolini kiritish talab qilinadi - parolni kiriting va fayl xavfsiz tarzda nusxalanadi. Bu buyruq python skript saqlangan katalogda bajarilishi va uni pi foydalanuvchining uy katalogiga nusxalashi kerak. Siz sb ni schoolbell.local -ga yuborishingiz mumkin va kod u erda bo'lishi kerak:
mahalliy-mashina: ~ $ ssh [email protected]
Keyin schoolbell.local -da fayllarni ro'yxatga oling (ko'proq fayllarni ko'rishingiz mumkin):
pi@maktab qo'ng'irog'i: ~ $ ls
bing-bong-chime-hq.mp3 schoolbell.py
Endi kodni tahrir qiling, shunda piko kabi tahrirlovchidan foydalanib qo'ng'iroq jadvaliga ega bo'lasiz:
pi@maktab qo'ng'irog'i: ~ $ pico schoolbell.py
Kodda uchta "lug'at" bor, ular qo'ng'iroq ohanglarini, ularni ijro etish vaqtlarini va ta'tildan saqlanishini belgilaydi, dam olish kunlari qo'ng'iroqlar avtomatik ravishda o'tkazib yuboriladi.
Masalan, qo'ng'iroq ohanglari lug'ati:
qo'ng'iroq tovushlari = {
'ogohlantirish': 'bing-bong-chime-hq.mp3', 'start': 'bing-bong-chime-hq.mp3', 'oxiri': 'bing-bong-chime-hq.mp3'}
Bu uchta turdagi qo'ng'iroqlarni, ogohlantirish qo'ng'irog'ini, darsning boshlanishi va tugashini belgilaydi. Chunki bizda faqat bitta qo'ng'iroq tovushi bor, ularning hammasi bitta faylga ishora qiladi, lekin agar siz turli xil ohanglar qilsangiz, ularni o'zgartirishingiz mumkin. Siz hatto boshqa turdagi qo'ng'iroq ohanglarini qo'shishingiz mumkin. Men ham qo'ng'iroqlarni gapirish uchun nutq sintezatoridan foydalanib o'ynadim, lekin uydagilar buni yaxshi ko'rishmadi.
Qo'ng'iroqlar jadvali shunga o'xshash, ammo "kalit" endi qo'ng'iroq qilish vaqti. siz HH: MM formatini etakchi nol va 24 soatlik vaqt bilan (harbiy vaqt) ishlatishingiz kerak.
qo'ng'iroq jadvali = {
'09: 00 ':' boshlash ', #' avtobus 'qo'ng'irog'i tayyorlanmoqda '09: 28': 'ogohlantirish',….. '13: 58 ':' ogohlantirish ', # 4 '14: 00 davriga ':' boshlanish ', '15: 00': 'oxiri'}
Bu kalitdagi qiymat: qiymat juftligi - bu qo'ng'iroq ohangining turi va yuqorida ko'rsatilgan qo'ng'iroq ohanglaridan biriga mos kelishi kerak.
Nihoyat, bayramlar lug'atida dam olish sanalari ko'rsatilgan. Format YYYY-mm-gg, ko'rsatilgandek nol bosh.
bayram = {
'2020-09-07', …. '2021-03-11', '2021-03-12' }
Tahrirlashni tugatgandan so'ng, agar siz piko ishlatayotgan bo'lsangiz, ctrl-X yozib, tahrirlovchidan chiqib, faylni saqlang.
Python kodini bajariladigan qilib qo'ying:
pi@maktab qo'ng'irog'i: ~ $ chmod a+x schoolbell.py
Bu barcha foydalanuvchilarga kodni bajarishga imkon beradi, hamma uchun "a", ruxsat berish uchun "+" va bajarish uchun "x".
Endi kodni ishga tushiring va chiqishni kuzating. E'tibor bering, siz fayl nomini yozib faylni ishga tushirishingiz mumkin, lekin fayl nomidan oldin "./" yozib, u joriy katalogda ekanligini ko'rsatishingiz kerak:
pi@maktab qo'ng'irog'i: ~ $./schoolbell.py
Bu maktab kuni, tekshirish vaqti 21:35
Kod sizga maktab kuni yoki yo'qligini aytadi (masalan, bayram yoki dam olish kuni emas) va vaqt qo'ng'iroq vaqtiga to'g'ri keladimi -yo'qligini ko'rsatadi. Bu holatda, qo'ng'iroq vaqti emas edi, shuning uchun u toza bo'lib chiqdi. Agar qo'ng'iroq vaqti kelganida, u jiringlagan bo'lardi.
Sizning kodingiz qo'ng'iroqlarni o'ynashi mumkinligini tekshirish uchun, faylning buyruq qatori variantidan foydalaning. Biz bing-bong faylimizdan foydalanamiz:
pi@maktab qo'ng'irog'i: ~/maktab qo'ng'irog'i $./schoolbell.py bing-bong-chime-hq.mp3
Bu maktab kuni, tekshirish vaqti 21:38 1, 2 va 3-qatlamlar uchun MPEG 1.0/2.0/2.5 yuqori ijrochi audio pleer. 0.3.2-1 versiyasi (2012/03/25). Jo Dryu tomonidan yozilgan va mualliflik huquqlari, hozirda Nanakos Xrizostomos va boshqalar tomonidan saqlanadi. …. ko'proq chiqish ….
Siz qo'ng'iroqni eshitishingiz kerak edi.
Endi argument sifatida vaqtdan foydalanib kodni sinab ko'ring. Vaqtni etakchi nol bilan kiritishni unutmang. Masalan, ertalab soat 9 da "maktab avtobusi" qo'ng'irog'ini sinab ko'rish uchun men yozaman:
pi@maktab qo'ng'irog'i: ~ $./schoolbell.py 09:00
Bu sizning qo'ng'irog'ingizning jiringlashiga olib kelishi kerak! Bundan tashqari, qo'ng'iroq bo'lmagan vaqtda jiringlamasligini tekshirishingiz mumkin.
5 -qadam: Yugurishni Crond bilan avtomatlashtirish
Cron "daemon" - bu Linux tizimida takrorlanadigan vazifalarni bajaradigan rejalashtiruvchi. Sana/vaqt cron jadvalidagi (crontab) naqshga mos keladimi -yo'qligini tekshiradi va agar shunday bo'lsa, kodni ishga tushiradi. Siz uni "crontab -e" buyrug'i yordamida o'zgartirishingiz mumkin:
pi@maktab qo'ng'irog'i: ~ $ crontab -e
Bu fayl muharririni ochadi va faylning pastki qismiga quyidagi qatorni qo'shasiz:
* * * * * python3 /home/pi/schoolbell.py
Bu buyruq cron -ni oddiy uy katalogida (/home/pi) skriptni bajaradigan python3 -ni ishga tushirishni aytadi. Besh kishining aytishicha, bu har daqiqada (birinchi *), har soatda (keyingi *…), oyning har kuni, har oy va haftaning har kuni bo'lishi kerak.
Endi, har daqiqada schoolbell.py skript ishlaydi. Ko'p soniya davomida kod ishlaydi va u jim bo'lmasdan o'chishi kerakligini aniqlaydi, lekin agar qo'ng'iroq vaqtiga to'g'ri kelsa, u jiringlaydi.
E'tibor bering, cron har daqiqada ishlaydi, siz qo'ng'iroqlarni daqiqadan ko'ra aniqroq qila olmaysiz. Nazariy jihatdan, agar sizning tizimingiz tiqilib qolsa, cron daqiqaning yuqori qismidan keyin bir necha soniya davomida ishlamasligi mumkin, bu qo'ng'iroqni kechiktiradi. Agar biron -bir tarzda cron to'liq daqiqa davomida ishlamasa, qo'ng'iroq o'tkazib yuboriladi.
Maslahat: Uzaytirilgan ta'tillar uchun (masalan, yoz), siz ushbu satrning birinchi belgisiga xeshteg (#) qo'shishingiz mumkin, bu uni sharhga aylantiradi va shu bilan uning bajarilishini e'tiborsiz qoldiradi. Maktab mashg'ulotlarga qaytganda, # raqamini olib tashlang va u yana ishlay boshlaydi.
6 -qadam: Moslashtiring va zavqlaning
Endi sizda maktabda ishlaydigan qo'ng'iroq tizimi bo'lishi kerak va sizning talabangiz darsga hech qachon kech qolmasligi kerak.
Siz qo'ng'iroq ohanglarini o'zgartirish orqali ushbu loyihani sozlashingiz mumkin.
- Siz Big Ben-ga qo'ng'iroq qilishingiz mumkin, chorak soatlik qo'ng'iroqlar va soatlarning jiringlashi.
- Siz o'zingiz yoqtirgan rapperning erkin uslubidan namuna olishingiz mumkin.
- Siz diqqatni o'rganishga yo'naltirish uchun subliminal xabarlar yuborishingiz mumkin.
COVID -ning ushbu davrida xavfsiz bo'ling.
"Bunga tegib bo'lmaydi" oilaviy tanlovida ikkinchi o'rinni egalladi
Tavsiya:
Uzoq masofadagi eng yaxshi do'stlar uchun DIY chiroqlari: 4 qadam (rasmlar bilan)
DIY uzoq masofali eng yaxshi do'st chiroqlari: Men "Eng yaxshi do'st" deb nomlanuvchi uzoq masofali sinxron chiroqlarni yasadim. lampalar. Bu shuni anglatadiki, ular boshqa chiroqning hozirgi rangiga mos keladi. Shunday qilib, agar siz bitta chiroqni yashil rangga o'zgartirmoqchi bo'lsangiz, ko'p o'tmay boshqa chiroq yonadi
Video eshik qo'ng'irog'ini raqamli qo'shiq qo'ng'irog'iga moslashtirish: 5 qadam
Video eshik qo'ng'irog'ini raqamli qo'shiq qo'ng'irog'iga moslashtirish: Qisqasi, Best Buy menga Simplisafe eshik qo'ng'irog'ini qo'shiq ohangli eshik jiringlagichi bilan o'rnatolmasligimni aytdi. Yuzlab xabarlarni o'qib, buni amalga oshirish mumkin emasligini aytdi. Simplisafe buni amalga oshirish mumkin emasligini aytdi, lekin baribir to'plamni etkazib berdi. Ulagichlar to'plami bar uchun mo'ljallangan
IFTTT yordamida simli eshik qo'ng'irog'ini aqlli eshik qo'ng'irog'iga aylantiring: 8 qadam
IFTTT yordamida simli eshik qo'ng'irog'ini aqlli eshik qo'ng'irog'iga aylantiring: WiFi eshik qo'ng'irog'i sizning mavjud simli eshik qo'ng'irog'ingizni aqlli eshik qo'ng'irog'iga aylantiradi. https://www.fireflyelectronix.com/product/wifidoor
Uy yordamchisi yordamida simli eshik qo'ng'irog'ini aqlli eshik qo'ng'irog'iga aylantiring: 6 qadam
Uy yordamchisi yordamida simli eshik qo'ng'irog'ini aqlli eshik qo'ng'irog'iga aylantiring: mavjud simli eshik qo'ng'irog'ini aqlli eshik qo'ng'irog'iga aylantiring. Kimdir sizning qo'ng'irog'ingizga qo'ng'iroq qilganda, fotosurat yoki video ogohlantirishni olish uchun telefoningizga yoki oldingi old kamerangiz bilan bog'laning
Bir nechta kompyuterlar bilan ishlash (talabalar uchun): 6 qadam
Bir nechta kompyuter bilan ishlash (talabalar uchun): Bir nechta kompyuterlar bilan ishlash juda qiyin bo'lishi mumkin. Siz qaysi kompyuterda qanday fayllar borligini bilmayapsiz, bir xil faylning bir nechta versiyasi bilan muammolarga duch kelishingiz mumkin, natijada siz fayllaringizni birdaniga yo'qotib qo'yishingiz yoki hech bo'lmaganda