Satura rādītājs:
- 1. darbība. Kā iestatīt vidi?
- 2. solis: Kāpēc pieaug pieprasījums pēc Arduino?
- 3. solis: sāksim !!!!
- 4. darbība. Nepieciešamās sastāvdaļas
- 5. darbība. Kā tas faktiski darbojas?
- 6. darbība: komponentu savienošana
- 7. darbība: koda nodrošināšana Arduino padomei
- 8. solis: programma/skice
- 9. darbība: kā ir ar rakstītajiem kodiem?
- 10. solis: cilpas funkcija
- 11. darbība. Kā importēt BitVoicer servera risinājuma objektus?
- 12. solis. Secinājums
Video: Runas atpazīšanas ierīce: 12 soļi
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:57
Sveiki visiem………
Šī ir mana otrā pamācība, ko es ievietoju
Tāpēc laipni gaidīti visi …
Šajā pamācībā es jums iemācīšu, kā izveidot balss atpazīšanas ierīci, izmantojot arduino dēli.
Tāpēc es domāju, ka jums jau ir pieredze ar arduino dēļiem. Ja nē, šeit tā nav liela problēma. Bet es iesaku jums pierast, jo ir ļoti interesanti ar to spēlēties un izveidot foršus projektus no jūsu radošuma un zināšanām par to.
Tātad cilvēkiem, kuriem nav iepriekšējas pieredzes arduino lietošanā:
Arduino ir atvērtā koda datoru aparatūra, ko ražo uzņēmums, kuram ir liela dizaineru un ražotāju kopiena. To var uzskatīt par mazu datoru, ko var izmantot citu elektronisko shēmu kontrolei
Arduino ir ieprogrammēts vidē, kuru viņi paši ir izstrādājuši un kuru var viegli lejupielādēt no viņu vietnes
1. darbība. Kā iestatīt vidi?
Vienkārši meklējiet google "lejupielādēt arduino"
Noklikšķiniet uz "Arduino - programmatūra"
Jūs varēsit redzēt "Lejupielādēt Arduino IDE"
Izvēlieties atkarībā no operētājsistēmas
Lejupielādējiet un instalējiet to
Tātad jūs esat veiksmīgi instalējis programmatūru un varat uzrakstīt savu kodu arduino, un ar kabeļa palīdzību jūs varat savienot arduino plāksni ar datoru un ievietot kodu.
2. solis: Kāpēc pieaug pieprasījums pēc Arduino?
Lēti
Arduino plates ir lētas salīdzinājumā ar citām mikrokontrolleru platformām. Tas maksās tikai aptuveni 50 USD.
Vairāku platformu
Arduino programmatūra darbojas operētājsistēmās Windows, Macintosh OS un Linux. Ja mēs domājam par citām mikrokontrolleru sistēmām, tas darbosies tikai sistēmā Windows vai, citiem vārdiem sakot, tikai Windows.
Atvērta pirmkoda un paplašināma programmatūra
Programmatūra ir atvērtā koda, tāpēc cilvēki sāka par to padziļināti pētīt un iekļaut citu programmēšanas valodu bibliotēkas (kas ietver funkciju kopumu).
Vienkārša un ērta programmēšanas vide
Cilvēkiem, tostarp iesācējiem, ir viegli izmantot Arduino IDE (programmatūru, par kuru mēs jau esam apsprieduši…), jo lielu resursu daudzumu nodrošina pats Arduino, kas ir pieejams internetā bez maksas. Tāpēc nekautrējieties uzzināt vairāk par to.
Atvērta pirmkoda un paplašināma aparatūra
Arduino dēļu plāni tiek publicēti saskaņā ar Creative Commons licenci, tāpēc cilvēki, kuriem ir pieredze shēmu projektēšanā, var izveidot savu moduļa versiju, viņiem ir arī tiesības paplašināt tehnoloģiju un uzlabot, pievienojot tai funkcijas.
3. solis: sāksim !!!!
Tāpēc es jau teicu, ka šis projekts galvenokārt ir vērsts uz balss atpazīšanu, izmantojot Arduino, un ļauj tam veikt dažus uzdevumus.
Skaidrāk runājot ……
Tas uztver lietotāja sniegtos skaņas signālus, kurus var noteikt, mirgojot gaismas diodei pēc tam, kad tas tiek pārveidots par sintezētu runu.
4. darbība. Nepieciešamās sastāvdaļas
Šim projektam nepieciešamās galvenās sastāvdaļas ir:
Arduino termiņš x 1
Spark Fun Electret mikrofona sadalījums x 1
Spark Fun Mono audio pastiprinātāja pārtraukums x 1
Skaļrunis: 0,25 W, 8 omi x 1
Maizes dēlis x 1
5 mm LED: sarkans x 3
Rezistors 330 omi x 3
Jumper vadi x 1
Lodāmurs x 1
BitVoicer serveris
Tas ir runas atpazīšanas un sintēzes serveris runas automatizācijai.
5. darbība. Kā tas faktiski darbojas?
1. Tiek noskaidroti audio viļņi, tad tie uztver šos viļņus, un tos pastiprina Sparkfun Electret Breakout dēlis.
2. Pastiprinātais signāls, kas iegūts no iepriekšminētā procesa, tiks digitalizēts un buferizēts/saglabāts Arduino kartē, izmantojot tajā esošo analogo ciparu pārveidotāju (ADC).
3. Audio paraugi tiks piegādāti BitVoicer serverim, izmantojot esošo Arduino seriālo portu.
4. BitVoicer Server apstrādās audio straumi un pēc tam atpazīs tajā ietverto runu.
5. Atzītā runa tiks kartēta ar komandām, kas jau iepriekš ir definētas, pēc tam tā tiks nosūtīta atpakaļ uz Arduino. Ja viena no komandām sastāv no runas sintezēšanas, BitVoicer Server sagatavos audio straumi un nosūtīs to Arduino.
6. Arduino identificēs sniegtās komandas un veiks noteiktu atbilstošu darbību. Ja tiek saņemta audio straume, tā tiks ierindota BVS skaļruņu klasē un atskaņota, izmantojot DUE DAC un DMA.
7. SparkFun mono audio pastiprinātājs pastiprinās DAC signālu, lai tas varētu vadīt 8 omu skaļruni un to varētu dzirdēt.
6. darbība: komponentu savienošana
Pirmais solis ir savienot dažādus komponentus maizes dēļā un arī ar arino plāksni, kā parādīts attēlā
Atcerieties, ka šeit izmantotā arduino plāksne ir DUE, ir dažādi citi modeļi, kurus ir ražojis Arduino, un katrs darbojas dažādos sprieguma līmeņos
Lielākā daļa Arduino dēļu darbojas pie 5 V sprieguma, bet DUE darbojas ar 3,3 V
DUE jau izmanto 3,3 V analogo atsauci, tāpēc jums nav nepieciešams džemperis AREF tapai
Atvainojiet, es aizmirsu pateikt, ka AREF tapa ir “ANALOG REFERENCE PIN”, kas atrodas arduino panelī, kā parādīts nākamajā attēlā (tas ir arduino UNO, bet līdzīgā vietā līdzīgā vietā DUE gadījumā)
AREF tapa uz DUE ir savienota ar mikrokontrolleri, izmantojot pretestības tiltu
Lai izmantotu AREF tapu, rezistoram R1 jābūt atlocītam no PCB [iespiedshēmas plates]
7. darbība: koda nodrošināšana Arduino padomei
Tāpēc mums ir jāaugšupielādē kods Arduino panelī, lai tas varētu darboties atkarībā no kodā sniegtajiem norādījumiem.
To ir ļoti viegli izdarīt. Es detalizēti paskaidrošu katru no tiem, par to, ko viņi dara un kā viņi strādā.
Kā instalēt bibliotēku?
Tāpēc pirms tam mums jāzina, kā instalēt BitVoicer Server bibliotēkas Arduino IDE,.that arduino programmatūrā.
Tāpēc atveriet Arduino IDE
Augšējā panelī noklikšķiniet uz "Skice"
Pēc tam noklikšķiniet uz "Iekļaut bibliotēku"
Pēc tam noklikšķiniet uz "Pārvaldīt bibliotēku"
Pēc tam tiks atvērts bibliotēkas pārvaldnieks, un mēs redzēsim to bibliotēku sarakstu, kuras ir gatavas instalēšanai, vai tās, kuras jau ir instalētas
Atrodiet instalējamo bibliotēku un pēc tam atlasiet versijas numuru
Šeit mēs instalējam BitVoicer Server bibliotēkas, kas ir nepieciešamas šim projektam
Kā importēt.zip bibliotēku?
Bibliotēkas var izplatīt arī kā ZIP failu vai mapi
Mapes nosaukums ir bibliotēkas nosaukums
Mapes iekšpusē būs.cpp fails,.h fails un bieži vien atslēgvārdu.txt fails, piemēru mape un citi bibliotēkai vajadzīgie faili
No Arduino IDE versijas 1.0.5 jūs varat tajā instalēt trešo pušu bibliotēkas
Neizpakojiet lejupielādēto bibliotēku, atstājiet to tādu, kāda tā ir
Lai to izdarītu, dodieties uz skici> Iekļaut bibliotēku> Pievienot.zip bibliotēku
Atlasiet.zip faila atrašanās vietu un atveriet to.
Atgriezieties izvēlnē Skice> Importēt bibliotēku.
Ja tā ir pareizi importēta, navigācijas laikā šī bibliotēka ir redzama nolaižamās izvēlnes apakšā.
8. solis: programma/skice
Šī ir programma, kas jāaugšupielādē Arduino.
To var izdarīt, vienkārši pievienojot Arduino dēli datoram un augšupielādējot to panelī.
9. darbība: kā ir ar rakstītajiem kodiem?
Tagad apskatīsim, ko katra no kodā ierakstītajām funkcijām patiesībā veic ………..
Bibliotēkas atsauces un mainīgā deklarācija
Pirms runāt par to, mums ir jāzina un jāsaprot dažas pamata terminoloģijas. Tie ietver:
-
BVSP
Tā ir bibliotēka, kas sniedz mums gandrīz visus resursus, kas nepieciešami informācijas apmaiņai ar BitVoicer serveri
Pastāv protokols, kas pazīstams kā BitVoicer servera protokols, kas tiek ieviests, izmantojot BVSP klasi. Tas ir nepieciešams, lai mijiedarbotos ar serveri
-
BVSMic
Tā ir bibliotēka, kas ievieš visas lietas, kas nepieciešamas audio ierakstīšanai, izmantojot Arduino analogo-ciparu pārveidotāju (ADC)
Šis audio tiek saglabāts klases iekšējā buferī, un tos var izgūt un pēc tam nosūtīt uz runas atpazīšanas dzinējiem, kas ir pieejami BitVoicer serverī
-
BVSSkaļrunis
Tā ir bibliotēka, kurā ir visi nepieciešamie resursi, kas nepieciešami, lai reproducētu no BitVoicer servera izsūtītās audio straumes
Lai to izdarītu, Arduino plāksnei jābūt iebūvētam digitālā-analogā pārveidotājam (DAC)
Arduino DUE ir vienīgā Arduino plate, kurai ir integrēts DAC
BVSP, BVSMic, BVSSpeaker un DAC bibliotēkas, atsauce uz tām ir uzrakstīta pirmajās četrās rindās, kas veido programmas skatīšanos
Instalējot BitVoicer Server, jūs varat atrast BitSophia, kas nodrošina visas šīs četras bibliotēkas
Kad lietotājs pievieno atsauci BVSSpeaker bibliotēkai, tiks automātiski izsaukta iepriekš minētā DAC bibliotēka
BVSP klase tiek izmantota, lai sazinātos ar BitVoicer Server
BVSMic klase tiek izmantota audio ierakstīšanai un saglabāšanai
BVSSpeaker klase tiek izmantota audio reproducēšanai, izmantojot Arduino DUE DAC
2. iestatīšanas funkcija
Iestatīšanas funkcija tiek izmantota, lai veiktu noteiktas darbības, piemēram:
Lai iestatītu tapas režīmus un to sākotnējos stāvokļus
Lai inicializētu seriālo komunikāciju
Lai inicializētu BVSP klasi
Lai inicializētu BVSMic klasi
Lai inicializētu BVSSpeaker klasi
Tas arī nosaka “notikumu apstrādātājus” (funkciju norādes) kadramReceived, modeChanged un streamReceived BVSP klases notikumiem
10. solis: cilpas funkcija
Tā veic piecas galvenās operācijas:
1. keepAlive () funkcija
Šī funkcija ir pieprasīt serverim informāciju par statusu.
2. saņemšanas () funkcija
Šī funkcija ir pārbaudīt, vai serveris ir izsūtījis datus vai nē. Ja serveris nosūtīja datus, tas tos apstrādās.
3. isSREAvailable (), startRecording (), stopRecording () un sendStream () funkcijas
Šīs funkcijas tiek izmantotas, lai kontrolētu dažādus audio ierakstīšanas iestatījumus, un pēc tam, kad tas būs sasniedzis audio, tas nosūtīs šo audio uz BitVoicer serveri.
4. play () funkcija
Šī funkcija tiek izmantota, lai atskaņotu audio, kas ierindots BVSSpeaker klasē.
5. playNextLEDNote ()
Šo funkciju izmanto, lai kontrolētu LED mirgošanu.
6. BVSP_frameReceived funkcija
Šī funkcija tiek izsaukta katru reizi, kad saņemšanas () funkcija sāk noteikt, ka ir saņemts viens pilnīgs kadrs. Šeit mēs izpildām komandas, kas iegūtas no BitVoicer Server. Komandas, kas kontrolē gaismas diožu mirgošanu, ir 2 baiti. Šajā pirmajā baitā norādiet tapu, bet otro baitu - tapas vērtību. Šeit mēs izmantojam funkciju analogWrite (), lai iestatītu atbilstošo tapu vērtību. Tajā laikā mums arī jāpārbauda, vai ir saņemta baitu tipa playLEDNotes komanda. Ja tas ir saņemts, es iestatīju playLEDNotes uz true, un tas uzraudzīs un atzīmēs pašreizējo laiku. Šo laiku izmantos funkcija playNextLEDNote, lai sinhronizētu gaismas diodes ar dziesmu.
7. BVSP_modeChanged funkcija
Šī funkcija tiek izsaukta katru reizi, kad saņemšanas () funkcija identificē režīma izmaiņas izejošā virzienā (Server Arduino). BitVoicer serveris var nosūtīt ierāmētus datus vai audio uz Arduino. Pirms saziņa pāriet no viena režīma uz citu, BitVoicer Server nosūta signālu. BVSP klase identificē šo signālu un paaugstina vai atzīmē notikumu modeChanged. Funkcijā BVSP_modeChanged, ja lietotājs konstatē, ka komunikācija notiek no straumes režīma uz ierāmētu režīmu, viņš/viņa zinās, ka audio ir beidzies, lai lietotājs varētu pateikt BVSSpeaker klasei pārtraukt audio atskaņošanu.
8. BVSP_streamReceived funkcija
Šī funkcija tiek izsaukta katru reizi, kad saņemšanas () funkcija nosaka, ka ir saņemti audio paraugi. Tas vienkārši izgūst audio un ierindo tos BVSSpeaker klasē, lai atskaņošanas () funkcija varētu tos reproducēt.
9. playNextLEDNote funkcija
Šī funkcija darbojas tikai tad, ja funkcija BVSP_frameReceived identificē komandu playLEDNotes. Tas kontrolē un sinhronizē gaismas diodes ar skaņu, kas nosūtīta no BitVoicer servera. Lai sinhronizētu gaismas diodes ar audio un zinātu pareizo laiku, var izmantot bezmaksas programmatūru Sonic Visualizer. Tas ļauj mums skatīties audio viļņus, lai persona varētu noteikt, kad tika nospiesta klavieru taustiņš.
11. darbība. Kā importēt BitVoicer servera risinājuma objektus?
Tagad mēs esam iestatījuši paaugstināto BitVoicer serveri darbam ar Arduino.
BitVoicer serverim ir četri galvenie risinājuma objekti: atrašanās vietas, ierīces, binārie dati un balss shēmas.
Apskatīsim tos sīkāk:
Atrašanās vietas
Tas attēlo fizisko atrašanās vietu, kurā ierīce tiek instalēta.
Mēs varam izveidot atrašanās vietu ar nosaukumu Mājas.
Ierīces
Tie tiek uzskatīti par BitVoicer Server klientiem.
Tāpat kā atrašanās vietas izveide, mēs varam izveidot jauktu ierīci, ērtības labad nosauksim to kā ArduinoDUE.
Dažreiz var notikt bufera pārpilde, tāpēc, lai to novērstu, man bija jāierobežo datu pārraides ātrums sakaru iestatījumos līdz 8000 paraugiem sekundē.
BinaryData ir komandas veids, ko BitVoicer Server var nosūtīt uz klientu ierīcēm. Tie faktiski ir baitu masīvi, kurus varat saistīt ar komandām.
Kad BitVoicer Server atpazīst runu, kas saistīta ar šo komandu, tā nosūta baitu masīvu mērķa ierīcei.
Tāpēc šī iemesla dēļ katrai pin vērtībai esmu izveidojis vienu BinaryData objektu un nosaucis tos par ArduinoDUEGreenLedOn, ArduinoDUEGreenLedOff un tā tālāk.
Tāpēc man bija jāizveido 18 BinaryData objekti, tāpēc es iesaku jums lejupielādēt un importēt objektus no faila VoiceSchema.sof, kas ir sniegts zemāk.
Tātad, kas ir balss shēma?
Balss shēmas ir visas lietas. to galvenā loma ir noteikt, kā teikumi jāatpazīst un kādas komandas jāizpilda.
Katram teikumam varat definēt tik daudz komandu, cik nepieciešams, un to izpildes secību.
Varat arī definēt aizkavēšanos starp katru sniegto komandu.
BitVoicer Server atbalsta tikai 8 bitu mono PCM audio (8000 paraugi sekundē), tāpēc būs jāpārveido audio fails šajā formātā, šodien ir tik daudz tiešsaistes reklāmguvumu nodevu, un es iesaku https://audio.online -convert.com/convert-to-wav.
Jūs varat importēt (risinājuma objektu importēšana) visus risinājuma objektus, kurus izmantoju šajā projektā, no tālāk norādītajiem failiem.
Vienā no tām ir DUE ierīce, bet otrā - balss shēma un tās komandas.
12. solis. Secinājums
Lūdzu !!!
Jūs esat izveidojis lielisku projektu un varat ar to sarunāties
Tāpēc sāc runāt ……………………
Jūs varat mirgot gaismas diodes un vienlaikus teikt, ka dzied dziesmu, ja tas ir nepieciešams, tās kods jau ir sniegts
Tātad esmu pabeidzis savu otro pamācību !!!!!!!!
Jā ……
Domāju, ka visi to saprata …
Ja kādam ir kādi jautājumi, lūdzu, jautājiet man
Nākamreiz es nākšu klajā ar lielisku pamācību …
Čau…
Uz drīzu redzēšanos……………
Ieteicams:
ASS ierīce (antisociāla sociālā ierīce): 7 soļi
ASS ierīce (antisociāla sociāla ierīce): sakiet, ka esat tāds cilvēks, kuram patīk atrasties cilvēku tuvumā, bet nepatīk, ka viņi nāk pārāk tuvu. Jūs arī esat cilvēku baudītājs un jums ir grūti pateikt cilvēkiem nē. Tātad jūs nezināt, kā viņiem pateikt atkāpties. Nu, ievadiet - ASS ierīce! Y
Rokas kustību atpazīšanas ierīce: 5 soļi
Rokas kustību atpazīšanas ierīce: pārskats Šajā projektā mēs izgatavosim cimdu, kas atpazīs dažas pamata rokas kustības, izmantojot MicroBit un dažus sensorus. Mēs izmantosim Bluetooth iespējas MicroBit kopā ar Android lietotni un tīmekļa serveri, lai apmācītu
Runas atpazīšana, izmantojot Google runas API un Python: 4 soļi
Runas atpazīšana, izmantojot Google runas API un Python: Runas atpazīšana Runas atpazīšana ir daļa no dabiskās valodas apstrādes, kas ir mākslīgā intelekta apakšlauks. Vienkārši sakot, runas atpazīšana ir datora programmatūras spēja noteikt vārdus un frāzes runātajā valodā
Ciparu atpazīšanas ierīce ar Python: 3 soļi
Ciparu atpazīšanas ierīce ar Python: viena no populārākajām aktuālajām tēmām ir “Computer Vision”, kas ir saistīta ar programmatūras atjaunināšanu un atjaunošanu. Es iedomājams iedomāties que esta habilidad es muy útil para una computadora y permite expandir
Daudzvalodu atpazīšanas ierīce ar AIY: 4 soļi
Daudzvalodu atpazīšanas ierīce ar AIY: kosmosa stacijās. Tur ir daudz astronautu. N ~ astronauti nāk no daudzām planētām (valstīm). tāpēc tam vajadzētu strādāt daudzās valodās