Satura rādītājs:

Skolas zvans tālmācības skolēniem: 6 soļi
Skolas zvans tālmācības skolēniem: 6 soļi

Video: Skolas zvans tālmācības skolēniem: 6 soļi

Video: Skolas zvans tālmācības skolēniem: 6 soļi
Video: NANDO pied. Edavārdi - Fizikas skolotājs (Official video) 2024, Jūlijs
Anonim
Skolas zvans tālmācības studentiem
Skolas zvans tālmācības studentiem

Sakarā ar COVID-19 pandēmiju daudzas bērnu skolas ir devušās uz tālvadību. Šis mājas skolas zvans ir jautrs veids, kā saglabāt grafiku, izmantojot Raspberry Pi un USB skaļruni. Jūs varat to pagatavot kopā ar savu bērnu, un viņi var uzzināt par programmēšanu un var “zvanīt”. Es to uzbūvēju savai meitai, kura mācās 7. klasē (šobrīd, izmantojot attālināto piegādi), un tas darbojas labi, lai mūs laikus.

Piegādes

Šim projektam jums būs nepieciešams:

  • Raspberry Pi dators - tas vislabāk darbojas, ja jums ir WiFi, es izmantoju RPi 3B no Kano komplekta
  • Skaļrunis - es izmantoju USB skaļruni

Kods var viegli darboties jūsu skolēna Linux datorā vai pat mikrokontrollerī, kurā darbojas mikropitons, ja vien mikrokontrolleram ir kāds mehānisms pašreizējā datuma/laika iegūšanai. Var izmantot arī jebkuru pastiprinātu skaļruni vai pat vēsāku releja / analogo zvanu.

1. darbība: iestatiet savu Raspberry Pi

Iestatiet savu Raspberry Pi
Iestatiet savu Raspberry Pi

Raspberry Pi datora iestatīšanai ir liels resursu skaits, tāpēc es atsaucos uz to, ko Google atrod. Svarīgi ir tas, ka jūsu datoram ir veids, kā iegūt pareizo datumu un laiku. Lielākā daļa mūsdienu Raspberry Pi datoru, kuros ir iespējots WiFi, izmanto NTP protokolu, lai iestatītu laiku no interneta, kas ir veids, kā es saņēmu pareizo laiku. Es iestatīju savu RPi kā “bez galvas”, kas nozīmē, ka tam nav tastatūras vai monitora, bet tas ir pieejams ar drošu apvalku (SSH) internetā. Ja jums labi padodas RPi, varat veikt šo iestatīšanu bez tastatūras / video / peles, taču ir vieglāk vienkārši iestatīt pi ar šiem piederumiem.

Ņemiet vērā, ka man nebija jāizmanto grafiskais interfeiss, tāpēc es vienkārši lejupielādēju "Raspberry Pi OS (32 bitu) Lite", kas ir mazāka un ātrāk lejupielādējama un ātrāk sāk darboties.

Konfigurējiet Raspberry Pi tīklu un saskarnes opcijas

$ sudo raspi-config

Konfigurācijā rīkojieties šādi:

  • Mainiet paroli - vispirms dariet to, cerams, pirms došanās tiešsaistē!
  • Sadaļā "Tīkla opcijas"

    • Mainiet saimniekdatora nosaukumu. Es izmantoju saimniekdatora nosaukumu: "skolas zvans".
    • Izveidojiet savienojumu ar bezvadu LAN (ja neesat to izdarījis iestatīšanas laikā)
  • Sadaļā “Saskarnes opcijas” ieslēdziet SSH piekļuvi
  • Vienmēr ir labi palaist opciju "Atjaunināt"

Kad esat to izdarījis un restartējis, jums vajadzētu būt iespējai izveidot savienojumu ar Raspberry Pi no cita datora tajā pašā vietējā tīklā, izmantojot SSH klientu. Izveidojiet savienojumu ar to, izmantojot šādus akreditācijas datus:

saimniekdatora nosaukums: schoolbell.local

lietotājs: pi parole: neatkarīgi no tā

No Linux kastes tas ir tik vienkārši, kā ievadīt šo komandrindu $ uzvednē:

$ ssh [email protected]

… pēc uzvednes ievadiet paroli

Tas jūs pieteiks un jūs varēsit pārbaudīt, vai Raspberry Pi laiks ir pareizs. Komandrindā ierakstiet datuma komandu un pārbaudiet atbildi:

pi@skolas zvans: ~ $ datums

Thu 3 Sep 20:44:34 AKDT 2020

Cerams, ka šis ir pašreizējais laiks. Ja tas nav pareizi, google par NTP iestatīšanu Raspberry Pi.

2. darbība. Iedarbiniet skaņas sistēmu

Iedarbiniet savu skaņas sistēmu
Iedarbiniet savu skaņas sistēmu

Mēs atskaņosim zvanu MP3 failus, tāpēc mums ir jālejupielādē programmatūra, lai atšifrētu šos audio failus. Es saņēmu paketi mpg321, ierakstot šo komandu:

pi@skolas zvans: ~ $ sudo apt-get install mpg321

Izpildiet norādījumus, lai instalētu šo programmatūru.

Es izmantoju veco USB skaļruni, kuram bija dīvains draiveris un kas nebija pilnībā automātiski konfigurēts kā noklusējuma skaņas karte, tāpēc es atklāju, ka varu “uzlauzt” skaļruni darbam, izmantojot tā aparatūras adresi. Pēc skaļruņa pievienošanas es izmantoju komandu “aplay -l”, lai uzskaitītu audio ierīces:

pi@skolas zvans: ~ $ aplay -l

**** ATSKAŅOTO aparatūras ierīču saraksts **** karte 0: austiņas [bcm2835 austiņas], ierīce 0: bcm2835 austiņas [bcm2835 austiņas] Apakšierīces: 0.: apakšierīce #2 Apakšierīce #3: apakšierīce #3 Apakšierīce #4: apakšiekārta #4 Apakšierīce #5: apakšiekārta #5 Apakšierīce #6: apakšierīce #6 Apakšierīce #7: apakšierīce #7 karte 1: CODEC [USB audio CODEC], ierīce 0: USB audio [USB audio] Apakšierīces: Apakšierīce #0: apakšierīce #0

Ierīce, kuru es vēlos, ir zemākā, 1. karte, 0. ierīce.

Es pārbaudīju skaļruni ar "speaker-test", izmantojot ierīci "hw: 1, 0", kas nozīmē aparatūras karti 1, ierīci 0

pi@skolas zvans: ~ $ speaker -test -D hw: 1, 0

Šī programma izslēdz skaļruņu troksni. Izbaudiet troksni un pēc tam ierakstiet control-C, kad esat nokaitināts. Ja jūs nedzirdat troksni, izmēģiniet google.

Tagad jums ir skaņa!

3. darbība: pārbaudiet zvanu skaņu atskaņošanu un/vai radiet jaunas skaņas

Pārbaudiet zvanu skaņu atskaņošanu un/vai radiet jaunas skaņas
Pārbaudiet zvanu skaņu atskaņošanu un/vai radiet jaunas skaņas

Savam zvanam es lejupielādēju "bing-bong" skaņu no "freesound.org". Paldies Benboncan par šīs skaņas pieejamību:

freesound.org/people/Benboncan/sounds/93646/

Jūs varat atskaņot skaņu tieši. Es varētu tieši lejupielādēt šī faila mp3 versiju, ierakstot šo komandu Raspberry Pi datorā (pieņemot, ka tas ir WiFi):

pi@skolas zvans: ~ $ wget

Pēc tam es pārdēvēju šo failu:

pi@skolas zvans: ~ $ mv 93646_634166-hq.mp3 bing-bong-chime-hq.mp3

Pēc tam es pārbaudīju, vai varu zvanīt ar šo komandu (parādot izvadi):

pi@skolas zvans: ~ $ mpg321 -a hw: 1, 0 bing-bong-chime-hq.mp3

Augstas veiktspējas MPEG 1.0/2.0/2.5 audio atskaņotājs 1., 2. un 3. slānim. Versija 0.3.2-1 (2012/03/25). Džo Drū rakstītās un autortiesības, kuras tagad uztur Nanakos Chrysostomos un citi. Izmanto dažādu cilvēku kodu. Lai uzzinātu vairāk, skatiet “README”! Šai PROGRAMMATŪRAI NAV BEZ GARANTIJAS! LIETOJIET UZ SAVU RISKU! Tiek atskaņota MPEG straume no bing-bong-chime-hq.mp3… MPEG 1.0 slānis III, 128 kbit/s, 44100 Hz mono [0:02] Bing-bong-chime-hq.mp3 dekodēšana ir pabeigta.

Apsveicu! Jums ir audio.

Izmantojot klēpjdatora skaņas rediģēšanas kodu "audacity", es jautrības labad sadalīju failu "bing" un "bong". Jūs varat izmantot jebkuru mp3 vai varbūt cita formāta (citus neesmu pārbaudījis) skaņas failus.

4. solis: instalējiet kodu un iestatiet savu grafiku

Instalējiet kodu un iestatiet savu grafiku
Instalējiet kodu un iestatiet savu grafiku

Kods ir python skripts, kas iegūst pašreizējo datumu/laiku, un, ja datums ir darbdiena, nevis brīvdiena, tas pārbauda, vai laiks atbilst zvana laikam, un, ja vajadzētu, tas zvana.

Vispirms jūs saņemsiet to, lai tas darbotos, tad jūs automatizēsit tā darbību katru minūti.

Lejupielādējiet kodu no Github:

gist.github.com/BillSimpson/d7a1a531995c8b63492bb47ef8872618

Man šķiet, ka to ir viegli izdarīt, saglabājot failu vietējā datorā un pēc tam izmantojot drošu kopiju (scp), lai to ievietotu Raspberry pi.

Vietējā datorā nokopējiet kodu no pārlūkprogrammas, pēc tam ielīmējiet teksta failā un saglabājiet to ar faila nosaukumu "schoolbell.py". Pēc tam scp failu:

local-machine: ~ $ scp schoolbell.py [email protected]: ~/

Jums tiks piedāvāts ievadīt lietotāja pi paroli vietnē schoolbell.local - ievadiet paroli, un fails tiks droši nokopēts. Šī komanda jāizpilda tajā pašā direktorijā, kurā tika saglabāts python skripts, un nokopē to pi lietotāja mājas direktorijā. Jūs varat pāriet uz vietni schoolbell.local, un kodam jābūt tur:

local-machine: ~ $ ssh [email protected]

Pēc tam vietnē schoolbell.local uzskaitiet failus (iespējams, redzēsit vairāk failu):

pi@skolas zvans: ~ $ ls

bing-bong-chime-hq.mp3 schoolbell.py

Tagad rediģējiet kodu, lai tas atbilstu jūsu zvanu grafikam, izmantojot redaktoru, piemēram, pico:

pi@skolas zvans: ~ $ pico schoolbell.py

Kodam ir trīs "vārdnīcas", kas nosaka atskaņojamos zvanu toņus, to atskaņošanas laikus un brīvdienas, no kurām jāizvairās, zvani nedēļas nogalēs tiek automātiski izlaisti.

Piemēram, zvanu signālu vārdnīca ir šāda:

zvanu toņi = {

'warn': 'bing-bong-chime-hq.mp3', 'start': 'bing-bong-chime-hq.mp3', 'end': 'bing-bong-chime-hq.mp3'}

Tas nosaka trīs veidu zvanus, brīdinājuma zvanu, klases sākumu un beigas. Tā kā mums ir tikai viens zvana signāls, tie visi norāda uz vienu failu, bet, ja jūs izveidojat dažādus toņus, varat tos mainīt. Jūs pat varat pievienot cita veida zvanu toņus. Spēlēju arī ar runas sintezatoru, lai runātu zvani, bet citi mājā to neuztvēra labvēlīgi.

Zvanu grafika vārdnīca ir līdzīga, taču tagad "atslēga" ir zvana laiks. jums jāizmanto formāts HH: MM ar nullēm un 24 stundu laiku (militārais laiks).

zvanu grafiks = {

'09: 00 ':' sākums ', #' autobusa 'zvans gatavojas '09: 28': 'brīdināt',….. '13: 58 ':' brīdināt ', # par periodu 4 '14: 00 ':' sākums ',' 15: 00 ':' beigas '}

Šīs atslēgas vērtība: vērtību pāris ir zvana signāla veids, kas jāizmanto, un tam jāatbilst vienam no iepriekš definētajiem zvanu toņiem.

Visbeidzot, brīvdienu vārdnīcā ir norādīti svētku datumi. Formāts ir GGGG-mm-dd, ar nullēm priekšā, kā parādīts attēlā.

brīvdienas = {

'2020-09-07', …. '2021-03-11', '2021-03-12' }

Kad esat pabeidzis rediģēšanu, saglabājiet failu, izejot no redaktora, ierakstot ctrl-X, ja izmantojat pico.

Padariet pitona kodu izpildāmu, izmantojot:

pi@skolas zvans: ~ $ chmod a+x schoolbell.py

Tas ļauj visiem lietotājiem izpildīt kodu, "a" visiem, "+" pievienot atļauju un "x" izpildīt.

Tagad pārbaudiet kodu un novērojiet rezultātu. Ņemiet vērā, ka failu var palaist, ierakstot faila nosaukumu, taču jānorāda, ka tas atrodas pašreizējā direktorijā, pirms faila nosaukuma ierakstot "./":

pi@skolas zvans: ~ $./schoolbell.py

Ir skolas diena, pārbaudes laiks 21:35

Kods jums pateiks, vai tā ir skolas diena (piemēram, nav brīvdiena vai nedēļas nogale), un redzēs, vai laiks atbilst zvana laikam. Šajā gadījumā tas nebija zvana laiks, tāpēc tas vienkārši izgāja tīri. Ja tas būtu bijis zvana laiks, tas būtu atskanējis.

Lai pārbaudītu, vai jūsu kods var atskaņot zvanus, izmantojiet atskaņojamā faila komandrindas opciju. Mēs izmantosim mūsu bing-bong failu:

pi@skolasbell: ~/schoolbell $./schoolbell.py bing-bong-chime-hq.mp3

Ir skolas diena, pārbaudes laiks 21:38 Augstas veiktspējas MPEG 1.0/2.0/2.5 audio atskaņotājs 1., 2. un 3. slānim. Versija 0.3.2-1 (2012/03/25). Džo Drū rakstītās un autortiesības, kuras tagad uztur Nanakos Chrysostomos un citi. …. vairāk produkcijas….

Jums vajadzēja dzirdēt zvanu.

Tagad pārbaudiet kodu, kā argumentu izmantojot laiku. Atcerieties ievadīt laiku ar nullēm. Piemēram, lai pārbaudītu savu "skolas autobusa" zvanu pulksten 9:00, es ierakstīju:

pi@skolas zvans: ~ $./schoolbell.py 09:00

Tam vajadzētu izraisīt zvana zvanu! Varat arī pārbaudīt, vai tas neskan zvana laikā.

5. solis: automatizējiet skriešanu ar Crond

Automatizējiet skriešanu ar Crond
Automatizējiet skriešanu ar Crond

Cron 'dēmons' ir plānotājs, kas Linux sistēmā veic atkārtotus uzdevumus. Tas pārbauda, vai datums/laiks atbilst cron tabulas modelim (crontab), un pēc tam palaiž kodu, ja tas tā ir. To var rediģēt, izmantojot komandu "crontab -e":

pi@skolas zvans: ~ $ crontab -e

Tiks atvērts failu redaktors, un šī faila apakšā jūs pievienosit šādu rindu:

* * * * * python3 /home/pi/schoolbell.py

Šī komanda liek cron palaist python3, izpildot jūsu skriptu parastajā mājas direktorijā (/home/pi). Pieci *saka, ka tam vajadzētu darboties katru minūti (pirmo *), katru stundu (nākamo *…), katru mēneša dienu, katru mēnesi un katru nedēļas dienu.

Tagad katru minūti skripts schoolbell.py darbosies. Lielāko daļu minūšu laikā kods darbosies un atklās, ka tam vajadzētu vienkārši iziet bez zvana, bet, ja izrādās, ka zvana laiks, tas atskanēs.

Ņemiet vērā: tā kā cron darbojas tikai katru minūti, jūs nevarētu padarīt zvaniņus sīkākus par minūti. Es domāju, ka teorētiski ir iespējams, ka, ja jūsu sistēma tiks apgrūtināta, cron varētu nedarboties dažas sekundes pēc minūtes beigām, padarot zvanu vēlu. Ja kronis kaut kā neskrietu visu minūti, zvans tiktu palaists garām.

Padoms. Pagarinātām brīvdienām (piemēram, vasarai) šīs rindas pirmajai rakstzīmei varat pievienot atsauci (#), kas to pārvērš par komentāru un tādējādi ignorē tās izpildi. Kad skola atgriežas sesijā, vienkārši noņemiet #, un tā atkal sāks darboties.

6. darbība: pielāgojiet un izbaudiet

Tagad jums vajadzētu būt strādājošai mājas skolas zvanu sistēmai, un jūsu studentam nekad nevajadzētu kavēties stundā.

Jūs varat pielāgot šo projektu, mainot zvanu toņus.

  • Jūs varētu likt tai zvanīt Big Benam, zvanot katru ceturksni stundā un zvanot.
  • Jūs varētu izlasīt sava iecienītākā repera frīstailu.
  • Jūs varētu rakstīt zemapziņas ziņojumus, lai koncentrētos uz studijām.

Esiet drošs šajā COVID laikā.

Attēls
Attēls
Attēls
Attēls

Otrā vieta ģimenes konkursā “Nevaru pieskarties šim”

Ieteicams: