Orodha ya maudhui:

Mita ya VU ya Analog ya Bluetooth: Hatua 6
Mita ya VU ya Analog ya Bluetooth: Hatua 6

Video: Mita ya VU ya Analog ya Bluetooth: Hatua 6

Video: Mita ya VU ya Analog ya Bluetooth: Hatua 6
Video: СИРЕНОГОЛОВЫЙ В РЕАЛЬНОЙ ЖИЗНИ! СБИЛИ НА МАШИНЕ СИРЕНОГОЛОВОГО! Siren Head in real life 2024, Novemba
Anonim
Mita ya VU Analog ya Bluetooth
Mita ya VU Analog ya Bluetooth

Huu ulikuwa mradi wangu kwa moja ya darasa langu la chuo kikuu liitwalo SMP. Kama tulivyotumia bodi ya maendeleo ya STM32F103RB, niliweka mradi wangu kwenye hii, kuanzia mita rahisi ya VU. Kisha nikaongeza huduma zingine kama msaada wa Bluetooth kutangaza maadili kutoka kwa ADC hadi programu ya Android kuunda chati rahisi ya dB.

Hatua ya 1: Vipengele vilivyotumika

  • Bodi ya maendeleo ya STM32F103RB
  • Moduli ya Bluetooth ya HC-05 zs040
  • Jopo la mita ya Analog VU (kiungo)
  • Kipaza sauti ya elektroni
  • LM324N quad op-amp
  • 2 TIP120 transistors
  • 3 1N4148 diode
  • Capacitors anuwai na vipinga

Ingawa unaweza kuendesha mzunguko huu kutoka kwa reli ya 5V ya bodi, nilitumia pia usambazaji wa umeme wa 5V wa nje.

Hatua ya 2: Mfuasi wa Bahasha

Mfuasi wa Bahasha
Mfuasi wa Bahasha
Mfuasi wa Bahasha
Mfuasi wa Bahasha

Sehemu kuu ya muundo huu ni mfuatiliaji wa bahasha ambaye huchukua ishara kutoka kwa kipaza sauti ya elektroniki na hutoa voltage sawia na ukubwa wa ishara ya kipaza sauti.

Ishara mbichi kutoka kwa kipaza sauti hupitishwa kwanza kupitia kipaza sauti na faida ya 150.

Ishara hiyo hupitishwa kupitia kwa wafuasi halisi wa bahasha ambayo inapaswa kutoa tu sehemu nzuri za ishara.

Sehemu ya mwisho inachukua voltage ya kukabiliana ya 1.65V kutoka kwa pato la mfuatiliaji wa bahasha ili kutoa ishara ya 0 V bila sauti, 1.65 V kwa sauti ya kati na 3.3 V kwa sauti kubwa ambayo inapaswa kuambatana na iliyojengwa katika ADC ya bodi.

Mfuasi huyu wa bahasha anatekelezwa kutoka kwa jibu hili kubwa la StackExchange.

Hatua ya 3: PWM kwa Mita ya Analog

Ili kupata sindano ya kupima, nimeweka muda wa TIM4 wa bodi ya microcontroller na mzunguko wa karibu 500 Hz.

Kwa kujaribu mfululizo mizunguko ya ushuru nimekaa na maadili kadhaa ambayo yalikuwa ya kutosha kupata sindano kutoka 0 hadi 100.

Nitaelezea kwa undani mchakato wa kuonyesha thamani halisi katika hatua inayofuata kwa kutumia hesabu kadhaa.

Hatua ya 4: Ulinganishaji wa Maikrofoni

Ulinganishaji wa kipaza sauti
Ulinganishaji wa kipaza sauti
Ulinganishaji wa kipaza sauti
Ulinganishaji wa kipaza sauti

Baada ya mfuasi wa bahasha kumaliza, kisha niliandika nambari rahisi ya kutumia ADC na nikathibitisha kuwa thamani ya kusoma inabadilika ipasavyo kwa sauti kubwa ndani ya chumba.

Ili "kutafsiri" thamani hii katika usomaji halisi wa dB, nimetumia jenereta ya sauti mkondoni na masafa ya 550 Hz na Android yangu kutoa usomaji wa kumbukumbu.

Nimepanga maadili hayo na nimetumia Zana ya Curve Fit ya MatLAB kupata kazi ambayo inachora usomaji wa ADC kwa viwango halisi vya viwango vya dB (au angalau karibu na usomaji wa simu yangu).

Tunaweza kuona kwamba hii inafuata kiwango cha logarithmic ya kipaza sauti.

Pia nilifanya jambo lile lile kuchora nafasi ya sindano kwa maadili ya PWM. Nilikusanya maadili hayo kwa kuongeza thamani ya PWM kwa 10 mfululizo hadi hitaji likienda kusoma kwa kiwango chake.

Kuchanganya kazi hizo 2 nilipata njia rahisi ya kuonyesha usomaji kutoka kwa ADC hadi thamani halisi kwenye kiashiria cha kupima.

Hatua ya 5: Programu ya Android

Programu hutumia maktaba hii nzuri kuwasiliana kupitia serial ya Bluetooth ili kubadilishana maelezo ya baiti.

Tahadhari kuu ya mfumo huu ni kwamba urefu wa neno uliotumwa juu ya Bluetooth ni bits 8 na thamani ya ADC inawakilishwa kama bits 12. Ili kushinda suala hili, niligawanya thamani moja ya ADC kuwa nambari 2 tofauti za 6 (MSB na LSB) na bits 2 zilizobaki zilizotumiwa kutambua aina ya ujumbe (MSB, LSB, CHK).

Kwa hivyo, kwa dhamana moja ya ADC ambayo tunataka kutangaza, tunagawanya thamani halisi katika ujumbe 2. Ili kuangalia uaminifu wa jumbe hizo, nilituma jumbe ya tatu na XOR ya ujumbe 2 wa kwanza.

Baada ya uadilifu wa thamani kukaguliwa, tunaweza kutumia kazi sawa kupata kiwango cha dB na kuipanga kwenye chati yetu ya moja kwa moja.

Hatua ya 6: Muhtasari

Wakati mimi sehemu ndogo ya mtawala wa mradi huu inafanya kazi vizuri kuonyesha sauti ndani ya chumba, nilikutana na shida wakati wa kutuma data juu ya Bluetooth kwa sababu ya upotezaji wa pakiti.

Nambari ya chanzo ya mradi huu inaweza kupatikana hapa:

  • Programu rafiki ya Android - repo
  • Nambari ya kudhibiti mdhibiti mdogo - repo

Jisikie huru kuchangia ikiwa utaona hii ni muhimu kwa njia yoyote.

Ilipendekeza: