Salutări pentru dvs., dragi prieteni. În cele din urmă am ajuns să scriu o lecție despre lucrul cu modulul de voce. Văd că ți-a plăcut controlul vocal auto-făcut și mulți au început deja să se întrebe când va fi lecția practică cu privire la lucrul cu modulul de control vocal.
Despre avantajele acestui modul de recunoaștere:
- Modulul este autonom și poate funcționa fără un controler de control extern, ceea ce este foarte important pentru amatori care nu sunt familiarizați cu programarea.
- Împreună cu alte modele, acest modul este avantajos pentru funcționalitatea, prețul și simplitatea relativă în control și conectare.
- Are o capacitate mare de recunoaștere.
Să începem cu toate aceleași cunoștințe teoretice, pentru a înțelege cum funcționează acest minunat gând al ingineriei. Mai întâi trebuie să cunoașteți câteva caracteristici ale acestui modul de recunoaștere vocală:
Consumul curent: nu mai mult de 40 mA, curentul nu este critic, așa că țineți minte. Tensiunea de alimentare este de 5V, vom alimenta portul USB al computerului în timpul programării și apoi veți decide ce să alimentați atunci când lucrați. Acuratețea recunoașterii comenzii vocale este de 99% în condiții ideale. Modulul de recunoaștere a vocii V3.1 este capabil să rețină 80 de comenzi vocale! Asta, în opinia mea, este suficient pentru orice scop. Dar din nou, aceasta este "DAR". Dar modulul pe unitate de timp poate recunoaște numai șapte dintre comenzi și care comenzi pot fi alese de dvs.
Asta înseamnă că puteți scrie toate cele 80 de comenzi în baza de date, dar pentru recunoașterea doar șapte, orice șapte din cele optzeci. Este ca și cum ați avea un computer: pe hard disk se pot scrie 80 de comenzi și în memoria RAM se pot utiliza doar 7 comenzi. Dacă vi se pare greu de înțeles acum, atunci, în practică, cred că veți deveni clar despre ceea ce se întâmplă. Lungimea comenzii vocale este 1,5 secunde (1500 ms) valoare maximă. Placa modulului poate fi controlată prin interfața UART, dar informațiile pot fi eliminate atât de la UART, cât și de la porturile GPIO aflate pe placă. Cu strictețe, ce vom face: vom scoate semnalul de la priza de la port.
Să trecem la partea practică.
Ce trebuie să lucrăm?
- Modulul de recunoaștere a vocii V3 (V3.1) Versiunea nu este atât de importantă - principiul muncii este același pentru toți. Modulul vine cu un microfon.
- Manualul modulului, adică data este cusută.
- Convertor la interfețe USB-UART.
Asta e tot. După cum spunea Gagarin - "Să mergem".
Descărcați manualul și terminalul. Instalăm terminalul. Conectăm modulul la convertorul de interfață.
Fiți foarte atenți la conectare. Nu vă fie teamă, dacă confundați TXD și RXD, nu se va întâmpla nimic groaznic. Dar dacă greșești plus sursa de alimentare cu o sârmă comună - va fi un dezastru! Așa cum mi sa întâmplat - modulul și portul de computer au ars imediat! Fiți foarte atent și nu repetați greșelile mele. Nu vă grăbiți, nu vă grăbiți, verificați circuitul de mai multe ori înainte de ao porni și apoi conectați-l la USB.
Odată conectat la portul USB, sistemul va începe să caute drivere pentru convertor, în 90% din cazuri, sistemul găsește conducătorul auto în sine și se instalează, dar în cazul în care din anumite motive nu se întâmplă, atunci trebuie să Boden găsit de către conducătorul auto în rețea și instalați-l. Pentru a face acest lucru, scrieți în caseta de căutare "Descărcarea driverului CP2102" sau tipul de modul, opțiunile comune, driverele sunt complete.
Apoi, după instalarea cu succes a echipamentului, mergeți la managerul de dispozitiv și examinați porturile. Suntem interesați de numărul atribuit al convertorului nostru. Când am aflat numărul portului, pornim terminalul. Accesați setările și setați valorile pe care le am în imagine.
Se scrie comanda în fereastra terminalului - "AA 02 00 0A" (din fișa tehnică | AA | 02 | 00 | 0A |). În toate echipele, literele mari și literele latine sunt utilizate întotdeauna.
Câmpul de expediere trebuie urmat de un răspuns, cum ar fi: "AA 08 00 STA BR IOM IOPW AL GRP 0A" (sau din fișa tehnică | Dacă a venit răspunsul, totul este bine, podeaua este terminată. Dacă nu, jucăm cu setările pentru setările ratei baudului din terminal, este posibil ca modulul să fie reglat la o viteză diferită.
Nu mă voi concentra asupra răspunsului modulului respectiv, depinde de dvs. să vă uitați la instrucțiunile. O comandă este o solicitare pentru setări.
Acum trebuie să conectați sarcina la modul. În rolul încărcăturii, voi folosi LED-urile cu rezistențe. Ei bine, în viitor, în timpul funcționării aceste LED-uri vor fi înlocuite de un releu de control al sarcinii cu tranzistori, cred că acest lucru este de înțeles.
Voi explica comanda "AA 02 00 0A" - este un pachet format din 4 octeți, octeții sunt caractere din două cifre în sistem hexazecimal - AA, 02,00,0A. În toate comenzile, pachetul va începe cu un octet AA și se va încheia cu un octet de 0A (Zero și A) - aceasta este o condiție prealabilă. Răspunsurile modulului vor începe și se vor încheia și cu aceste simboluri.
"AA 02 00 0A" - al doilea octet al acestei comenzi indică numărul de octeți între octeții de început și sfârșit, mai mici decât AA și 0A. Și tot ceea ce considerăm între ei și scriem în cel de-al doilea octet. După cum vedem în acest exemplu, între AA și 0A există două octeți - 02 00. în consecință - 02, adică numărul se consideră singur. Un alt exemplu, "AA 03 20 01 0A", care este, între AA și 0A există trei octeți - "03 20 01", prin urmare, al doilea byte - 03. Cred că veți înțelege.
Comanda "12" - setarea porturilor modulului.
Pe placa modulului sunt porturile din care vom lua semnalul, înainte de a face acest lucru, trebuie să configurați aceste porturi. Puteți configura porturile prin comandă
"AA 03 12 01 0A" - al treilea octet este comanda și a patra valoare a comenzii. Cel de-al patrulea octet poate lua următoarele valori și poate seta următoarele opțiuni: dacă "00" este modul puls, adică, dacă comanda vocală este recunoscută, un impuls scurt este trimis la portul dorit. Dacă "01" este modul de inversiune, adică dacă comanda vocală este recunoscută, portul se va schimba la cel opus dacă ar fi 0 - va deveni 1 și invers. Dacă "02" este modul în care portul trece la zero. Dacă "03" este modul în care portul trece la unitate.
Comanda "20" este configurația porturilor modulului.
"AA 03 20 01 0A" - al treilea octet este numărul comenzii pe care o vom înregistra. Un exemplu de înregistrare a două comenzi 1 și 2: "AA 04 20 01 02 0A". Un exemplu de înregistrare a două comenzi 1, 2, 3: "AA 05 20 01 02 03 0A".
Comanda "30" - încărcarea înregistrării în "recunoașterea" modulului.
"AA 03 30 01 0A" - comanda de încărcare a treia byte în memoria recunoașterii de scriere 01. Dacă doriți să scrieți două comenzi - "AA 04 30 01 02 0A". dacă doriți să înregistrați toate cele șapte comenzi - "AA 09 30 01 02 03 04 05 06 07 0A".
Comanda "15" - comenzi vocale automate în recunoașterea la pornire - funcționare autonomă fără un controler extern.
«AA 03 15 07 01 02 03 0A» - al treilea octet al echipei, a patra marca de ordine octet, care este un fel de identitate, și este egal cu 01 pentru a descărca o echipă, 03 - pentru a prelua cele două echipe, 07 - pentru a descărca cele trei echipe, și așa mai departe, căutați în tabelul cu date tehnice. Ei bine, apoi du-te numărul de comenzi care trebuie să fie descărcate.
Asta-i tot: verificați conexiunea cu modulul, configurați porturile, comenzile înregistrate, comenzile vocale configurate de pornire.
Link-uri pentru achiziționare: