Turinys:

Nešiojamas funkcijų generatorius „Arduino“: 7 žingsniai (su paveikslėliais)
Nešiojamas funkcijų generatorius „Arduino“: 7 žingsniai (su paveikslėliais)

Video: Nešiojamas funkcijų generatorius „Arduino“: 7 žingsniai (su paveikslėliais)

Video: Nešiojamas funkcijų generatorius „Arduino“: 7 žingsniai (su paveikslėliais)
Video: Output DC or AC Voltage using MCP4725 DAC with LCD and PWM to Voltage Converter with Arduino 2024, Liepa
Anonim
Image
Image
Nešiojamas funkcijų generatorius „Arduino“
Nešiojamas funkcijų generatorius „Arduino“
Nešiojamas funkcijų generatorius „Arduino“
Nešiojamas funkcijų generatorius „Arduino“

Funkcijų generatorius yra labai naudingas įrankis, ypač kai svarstome galimybę išbandyti savo grandinės reakciją į tam tikrą signalą. Šioje instrukcijoje aprašysiu mažo, lengvai naudojamo, nešiojamo funkcijų generatoriaus kūrimo seką.

Projekto ypatybės:

  • Visiškai skaitmeninis valdymas: nereikia pasyvių analoginių komponentų.
  • Modulinė konstrukcija: kiekvienas poskyris yra iš anksto nustatytas lengvai naudojamas modulis.
  • Išėjimo dažnis: Galimas diapazonas nuo 0Hz iki 10MHz.
  • Paprastas valdymas: vienas sukamasis kodavimo įrenginys su įmontuotu mygtuku.
  • Ličio jonų baterija, skirta nešiojamam naudojimui, su išoriniu įkrovimu.
  • AC ir DC jungtis išėjimo bangos formai.
  • LCD ryškumo valdymas, leidžiantis sumažinti energijos suvartojimą.
  • Akumuliatoriaus įkrovos indikatorius.
  • Skaitmeninės amplitudės valdymas.
  • Galimos trys bangos formos: sinusas, trikampis ir kvadratas.

1 žingsnis: idėja

Idėja
Idėja
Idėja
Idėja
Idėja
Idėja

Yra daug grandinių, kurioms reikalinga tam tikra bandymo įranga, kad būtų gauta informacija apie grandinės reakciją į tam tikrą bangos formą. Šis projektas pagrįstas „Arduino“(šiuo atveju „Arduino Nano“), kurio maitinimo šaltinis yra 3,7 V ličio jonų baterija, todėl prietaisas yra nešiojamas. Yra žinoma, kad „Arduino Nano“plokštei reikalingas 5 V maitinimo šaltinis, todėl elektroninėje konstrukcijoje yra nuolatinės srovės nuolatinės srovės stiprinimo keitiklis, kuris konvertuoja 3,7 V akumuliatoriaus įtampą į 5 V, reikalingą „Arduino“įjungimui. Taigi šį projektą lengva sukurti, jis yra visiškai modulinis, su gana paprasta schema.

Plokštės maitinimas: įrenginys turi vieną mini USB jungtį, kuri gauna 5 V įtampą iš išorinio maitinimo šaltinio, tai gali būti kompiuteris arba išorinis USB įkroviklis. grandinė suprojektuota taip, kad prijungus 5 V nuolatinės srovės šaltinį, ličio jonų akumuliatorius būtų įkraunamas TP4056 įkroviklio moduliu, kuris yra prijungtas prie maitinimo šaltinio grandinės (ši tema bus toliau išplėsta).

AD9833: integruota funkcijų generatoriaus grandinė yra centrinė dizaino dalis, valdoma per SPI sąsają, galinti generuoti kvadrato/sinuso/trikampio bangą su dažnio moduliavimo galimybe. Kadangi AD9833 negali pakeisti išėjimo signalo amplitudės, aš naudoju skaitmeninį 8 bitų potenciometrą kaip įtampos daliklį įrenginio išvesties galiniame taške (bus aprašyta tolesniuose žingsniuose).

Ekranas: yra pagrindinis 16x2 skystųjų kristalų ekranas, kuris tikriausiai yra populiariausias skystųjų kristalų ekranas tarp „Arduino“vartotojų. Siekiant sumažinti energijos suvartojimą, yra galimybė reguliuoti LCD apšvietimą per PWM signalą iš „Arduino“iš anksto nustatyto „analoginio“kaiščio.

Po šio trumpo įvado galime pereiti prie statybos proceso.

2 žingsnis: dalys ir prietaisai

Dalys ir instrumentai
Dalys ir instrumentai

1: Elektroninės dalys:

1.1: Integruoti moduliai:

  • „Arduino Nano“plokštė
  • 1602A - Bendras skystųjų kristalų ekranas
  • CJMCU - AD9833 Funkcijų generatoriaus modulis
  • TP4056 - Ličio jonų akumuliatoriaus įkrovimo modulis
  • DC-DC Step-Up keitiklio modulis: 1.5V-3V į 5V keitiklis

1.2. Integruoti grandynai:

  • SRD = 05VDC - 5V SPDT relė
  • X9C104P - 8 bitų 100KOhm skaitmeninis potenciometras
  • EC11 - rotacinis kodavimo įrenginys su SPST jungikliu
  • 2 x 2N2222A - NPN bendrosios paskirties BJT

1.3: Pasyvios ir neklasifikuojamos dalys:

  • 2 x 0.1uF -keraminiai kondensatoriai
  • 2 x 100uF - elektrolitiniai kondensatoriai
  • 2 x 10uF - elektrolitiniai kondensatoriai
  • 3 x 10KOhm rezistoriai
  • 2 x 1,3KOhm rezistoriai
  • 1 x 1N4007 lygintuvo diodas
  • 1 x SPDT perjungimo jungiklis

1.4: jungtys:

  • 3 x 4 kontaktų JST 2,54 mm žingsnio jungtys
  • 3 x 2 kontaktų JST 2,54 mm žingsnio jungtys
  • 1 x RCA lizdo jungtis

2: mechaninės dalys:

  • 1 x 12,5 cm x 8 cm x 3,2 cm plastikinis gaubtas
  • 6 x KA-2 mm traukimo varžtai
  • 4 x KA-8 mm gręžimo varžtai
  • 1 x kodavimo rankenėlė (dangtelis)
  • 1 x 8 cm x 5 cm prototipo lenta

3. Prietaisai ir programinė įranga:

  • Lituoklis/lygintuvas
  • Elektrinis atsuktuvas
  • Įvairių dydžių šlifavimo failai
  • Aštrus peilis
  • Grąžtai
  • Atsuktuvų antgaliai
  • Karštas klijų pistoletas
  • Mini USB kabelis
  • „Arduino IDE“
  • Apkaba/liniuotė

3 žingsnis: schemų paaiškinimas

Schemos paaiškinimas
Schemos paaiškinimas
Schemos paaiškinimas
Schemos paaiškinimas
Schemos paaiškinimas
Schemos paaiškinimas

Kad būtų lengviau suprasti scheminę schemą, aprašymas yra padalintas į papildomas grandines, o kiekvienas poskyris yra atsakingas už kiekvieną projektinį bloką:

1. „Arduino Nano“grandinė:

„Arduino Nano“modulis veikia kaip „pagrindinis mūsų prietaiso protas“. Jis valdo visus įrenginio periferinius modulius tiek skaitmeniniu, tiek analoginiu režimu. Kadangi šis modulis turi savo mini-USB įvesties jungtį, jis bus naudojamas ir kaip maitinimo šaltinis, ir kaip programavimo sąsajos įvestis. Dėl šios priežasties J1 - mini USB jungtis yra atsieta nuo scheminio „Arduino Nano“(U4) simbolio.

Yra galimybė naudoti specialius analoginius kaiščius (A0.. A5) kaip bendrosios paskirties įvesties ir išvesties jungtį, todėl kai kurie kaiščiai naudojami kaip skaitmeninė išvestis, bendraujanti su LCD ir AC/DC jungtimi, pasirinkta iš įrenginio išvesties. Analoginiai kaiščiai A6 ir A7 yra skirti analoginiai įvesties kaiščiai ir gali būti naudojami tik kaip ADC įėjimai dėl „Arduino Nano“mikrovaldiklio ATMEGA328P TQFP paketo, kaip buvo apibrėžta duomenų lape. Atkreipkite dėmesį, kad akumuliatoriaus įtampos linija VBAT yra prijungta prie analoginio įvesties kaiščio A7, nes norėdami nustatyti žemą ličio jonų akumuliatoriaus būseną, turime gauti jo vertę.

2. Maitinimo šaltinis:

Maitinimo grandinė pagrįsta viso įrenginio maitinimu per 3,7 V ličio jonų bateriją, paverstą 5 V įtampa. SW1 yra SPST perjungimo jungiklis, valdantis maitinimo srautą visoje grandinėje. Kaip matyti iš schemų, kai išorinis maitinimo šaltinis yra prijungtas per „Arduino Nano“modulio mikro-USB jungtį, akumuliatorius kraunamas per TP4056 modulį. Įsitikinkite, kad grandinėje yra kelių reikšmių apėjimo kondensatoriai, nes yra nuolatinės srovės nuolatinės srovės stiprintuvo keitimo triukšmas ant žemės ir visos grandinės 5 V potencialas.

3. AD9833 ir išvestis:

Ši grandinė suteikia tinkamą išėjimo bangos formą, apibrėžtą AD9833 moduliu (U1). Kadangi įrenginyje yra tik vienas maitinimo šaltinis (5 V), prie išėjimo kaskados reikia prijungti jungties pasirinkimo grandinę. C1 kondensatorius yra nuosekliai prijungtas prie amplitudės pasirinkimo pakopos ir gali būti nutildytas per relės induktoriaus srovės srovę, taip išvesties signalas atsekamas tiesiai į išėjimo pakopą. C1 vertė yra 10uF, pakanka, kad net žemų dažnių bangos forma pereitų per kondensatorių, o ne iškraipyta, tik paveikta nuolatinės srovės pašalinimo. Q1 naudojamas kaip paprastas BJT jungiklis, naudojamas valdyti srovę per relės induktorių. Įsitikinkite, kad diodas yra prijungtas atvirkščiai prie relės induktoriaus, kad būtų išvengta įtampos šuolių, galinčių pažeisti prietaiso grandines.

Paskutinis, bet ne mažiau svarbus etapas yra amplitudės pasirinkimas. U6 yra 8 bitų skaitmeninis potenciometras IC, kuris veikia kaip tam tikros išėjimo bangos formos įtampos daliklis. „X9C104P“yra 100KOhm skaitmeninis potenciometras su labai paprastu valytuvų padėties reguliavimu: 3 kontaktų skaitmeniniai įėjimai, skirti reguliuoti didinimo/mažinimo valytuvo padėtį.

4. LCD:

16x2 skystųjų kristalų ekranas yra grafinė sąsaja tarp vartotojo ir įrenginio grandinių. Siekiant sumažinti energijos suvartojimą, LCD foninio apšvietimo katodo kaištis prijungtas prie Q2 BJT, prijungto kaip jungiklis, valdomas PWM signalu, valdomu „Arduino analogWrite“galimybės (bus aprašyta „Arduino“kodo veiksme).

5. Kodavimo priemonė:

Kodavimo grandinė yra valdymo sąsaja, apibrėžianti visą įrenginio veikimą. U9 sudaro kodavimo įrenginys ir SPST jungiklis, todėl prie projekto nereikia pridėti papildomų mygtukų. Kodavimo ir jungiklio kaiščius turėtų ištraukti išoriniai 10KOhm rezistoriai, tačiau juos taip pat galima apibrėžti naudojant kodą. Rekomenduojama lygiagrečiai pridėti 0,1uF kondensatorių prie kodavimo A ir B kaiščių, kad šiose įvesties linijose neatšoktų.

6. JST jungtys:

Visos išorinės prietaiso dalys yra sujungtos per JST jungtis, todėl prietaisą surinkti yra daug patogiau, o papildoma funkcija sumažina klaidų vietą statybos proceso metu. Jungčių susiejimas atliekamas taip:

  • J3, J4: LCD
  • J5: kodavimo įrenginys
  • J6: Baterija
  • J7: SPST perjungimo jungiklis
  • J8: RCA išvesties jungtis

4 žingsnis: litavimas

Litavimas
Litavimas
Litavimas
Litavimas
Litavimas
Litavimas

Dėl šio projekto modulinės konstrukcijos litavimo žingsnis tampa paprastas:

A. Pagrindinės plokštės litavimas:

1. Pirmiausia reikia apkarpyti plokštės prototipą iki norimų gaubto matmenų dydžio.

2. Litavimas „Arduino Nano“modulis ir jo pradinio veikimo bandymas.

3. Litavimo maitinimo grandinė ir visų įtampos verčių tikrinimas atitinka prietaiso reikalavimus.

4. Litavimo modulis AD9833 su visomis periferinėmis grandinėmis.

5. Lituoti visas JST jungtis.

B. Išoriniai komponentai:

1. Lituoti JST kištukinės jungties laidus prie LCD kaiščių TIKRA tvarka, kaip buvo numatyta pagrindinėje plokštėje.

2. Lituokite JST vyriškosios jungties laidus prie kodavimo įrenginio, kaip ir ankstesniame žingsnyje

3. Litavimo perjungimo jungiklis prie JST laidų.

4. Lituoti JST laidus prie akumuliatoriaus (jei to išvis reikia. Kai kurios „eBay“prieinamos ličio jonų baterijos yra iš anksto lituojamos su savo JST jungtimi).

5 žingsnis: gaubtas ir surinkimas

Korpusas ir surinkimas
Korpusas ir surinkimas
Korpusas ir surinkimas
Korpusas ir surinkimas
Korpusas ir surinkimas
Korpusas ir surinkimas
Korpusas ir surinkimas
Korpusas ir surinkimas

Baigę litavimą, galime pereiti prie įrenginio surinkimo sekos:

1. Pagalvokite apie prietaiso išorinių dalių išdėstymą: mano atveju, aš norėjau įdėti koduotuvą žemiau skystųjų kristalų ekrano, kai perjungimo jungiklis ir RCA jungtis yra atskirose korpuso dėžės pusėse.

2. Skystųjų kristalų rėmo paruošimas: nuspręskite, kur įrenginyje bus skystųjų kristalų ekranas, įsitikinkite, kad jis bus padėtas teisinga kryptimi, man taip nutiko kelis kartus, kai baigiau visą pjovimo procesą, LCD buvo apverstas vertikaliai, kalbant apie tai liūdna, nes reikia pertvarkyti LCD rėmelį.

Pasirinkę rėmą, gręžkite kelias skylutes viso rėmo perimetre. Šlifavimo dilde pašalinkite visus nepageidaujamus plastikinius gabalus.

Įdėkite skystųjų kristalų ekraną iš vidaus ir suraskite varžto taškus ant korpuso. Gręžkite skyles atitinkamo skersmens grąžtais. Įdėkite ištrauktus varžtus ir priveržkite veržles vidinėje priekinio skydo pusėje.

3. Kodavimo įrenginys: pakuotėje yra tik viena sukama dalis. Gręžkite plotą pagal kodavimo įrenginio sukamojo priedo skersmenį. Įdėkite jį iš vidaus, pritvirtinkite karštu klijų pistoletu. Uždėkite dangtelį ant sukamojo priedo.

4. Perjungimo jungiklis: nuspręskite perjungimo svirties matmenis, kad jį būtų galima laisvai traukti žemyn arba aukštyn. Jei perjungimo jungiklyje yra varžtų taškų, gręžkite atitinkamas korpuso vietas, kitaip galite jį pritvirtinti karštu klijų pistoletu.

5. RCA išvesties jungtis: gręžkite tinkamo skersmens skylę RCA išvesties jungčiai korpuso šone ir apačioje. Pritvirtinkite jį karšto klijų pistoletu.

6. Pagrindinė plokštė ir baterija: padėkite ličio jonų bateriją ant korpuso apatinės pusės. Bateriją galima pritvirtinti karšto klijų pistoletu. Pagrindinę plokštę reikia išgręžti keturiose vietose po 4 varžtus kiekviename pagrindinės plokštės kampe. Įsitikinkite, kad „Arduino“mini USB įvestis yra kuo arčiau korpuso ribos (turėsime ją naudoti įkrovimo ir programavimo tikslais).

7. „Mini-USB“: nupjaukite norimą „Arduino Nano micro-USB“sritį su šlifavimo failu, taip sukurdami galimybę prijungti išorinį maitinimo šaltinį/kompiuterį prie įrenginio, kai jis yra visiškai surinktas.

8. Galutinis: Prijunkite visas JST jungtis, pritvirtinkite abi gaubto dalis keturiais 8 mm varžtais kiekviename korpuso kampe.

6 žingsnis: „Arduino“kodas

Arduino kodas
Arduino kodas

Pridėtas kodas yra visas įrenginio kodas, reikalingas visiškam įrenginio veikimui. Visas reikalingas paaiškinimas pridedamas prie komentaro skilties kodo viduje.

7 žingsnis: galutinis bandymas

Galutinis bandymas
Galutinis bandymas
Galutinis bandymas
Galutinis bandymas

Mes turime savo prietaisą paruoštą naudoti. mini-USB jungtis veikia ir kaip programuotojo įvestis, ir kaip išorinio įkroviklio įvestis, todėl įrenginį galima užprogramuoti visiškai surinktą.

Tikimės, kad ši pamoka jums bus naudinga, Ačiū, kad skaitote!;)

Rekomenduojamas: