Kiekvienas inžinierius, kuris tam tikru momentu mėgsta užsiimti elektronika, norėtų turėti savo laboratoriją. Daugialypis matuoklis, spaustuko matuoklis, osciloskopas, LCR matuoklis, funkcijų generatorius, dvigubo režimo maitinimo šaltinis ir automatinis transformatorius yra minimalūs įrengimai tinkamam laboratorijos nustatymui. Nors visa tai galima nusipirkti, mes taip pat lengvai galime sukurti keletą savarankiškai, pavyzdžiui, funkcijų generatorių ir dvigubo režimo maitinimo šaltinį.
Šiame straipsnyje mes sužinosime, kaip greitai ir lengvai galime sukurti savo funkcijų generatorių naudodami „Arduino“. Šis funkcijos generatorius, dar žinomas kaip bangos formos generatorius, gali sukelti kvadratinę bangą (5V / 0V), kurios dažnis svyruoja nuo 1Hz iki 2MHz, bangos dažnį galima valdyti rankenėle, o darbo ciklą sunku užkoduoti iki 50%, tačiau tai lengva pakeisti programoje taip pat. Be to, generatorius taip pat gali gaminti nuo bangos su dažnio valdymu. Atkreipkite dėmesį, kad šis generatorius nėra pramoninio lygio ir negali būti naudojamas rimtiems bandymams. Tačiau išskyrus tai, kad tai bus naudinga visiems pomėgių projektams ir nereikia laukti kelių savaičių, kol atvyks siunta. Be to, kas yra smagiau nei naudoti įrenginį, kurį sukūrėme patys.
Reikalingos medžiagos
- „Arduino Nano“
- 16 * 2 raidinis skaitmeninis LCD ekranas
- Rotacinis koduotojas
- Rezistorius (5.6K, 10K)
- Kondensatorius (0.1uF)
- Puiki lenta, Bergstik
- Litavimo rinkinys
Grandinės schema
Visa „ Arduino“ funkcijų generatoriaus schema parodyta žemiau. Kaip matote, mes turime „Arduino Nano“, kuris veikia kaip mūsų projekto smegenys, ir 16x2 skystųjų kristalų ekraną, rodantį šiuo metu generuojamo dažnio vertę. Taip pat turime sukamąjį kodavimo įrenginį, kuris padės nustatyti dažnį.
Visą sąranką maitina paties „Arduino“ USB prievadas. Anksčiau naudotos jungtys pasirodė esančios ne dėl tam tikrų priežasčių, kurias aptarsime vėliau šiame straipsnyje. Taigi aš turėjau šiek tiek sutrikdyti laidus, keisdamas kaiščių tvarką. Bet kokiu atveju neturėsite jokių tokių problemų, nes visa tai sutvarkyta, tiesiog atidžiai sekite grandinę, kad žinotumėte, kuris kaištis yra prie ko prijungtas. Taip pat galite kreiptis į toliau pateiktą lentelę, kad patikrintumėte savo ryšius.
Arduino kaištis | Prisijungęs prie |
D14 | Prijungtas prie LCD LCD |
D15 | Prijungtas prie LCD ekrano |
D4 | Prijungtas prie LCD D4 |
D3 | Prijungtas prie LCD D5 |
D6 | Prijungtas prie LCD D6 |
D7 | Prijungtas prie LCD D7 |
D10 | Prijunkite prie 2 sukamojo kodavimo įrenginio |
D11 | Prijunkite prie Rotary Encoder 3 |
D12 | Prijunkite prie 4 sukamojo kodavimo įrenginio |
D9 | Išvestis kvadratinė banga |
D2 | Prisijunkite prie „Arduino“ D9 |
D5 | Tada SPWM išvestys konvertuojamos į sinusines |
Grandinė yra gana paprasta; mes gaminti stačiakampės bangos ant smeigtuko D9 kuris gali būti naudojamas kaip tokios, šio kvadratinį banga dažnis yra kontroliuojama sukamuoju kodavimo. Tada, norėdami gauti sinusinę bangą, mes gaminame SPWM signalą ant kaiščio D5, kurio dažnis turi būti susietas su PWM dažniu, todėl mes pateikiame šį PWM signalą, kad D2 kaištis veiktų kaip pertraukimas, ir tada naudokite ISR, kad valdytumėte dažnio dažnį. nuo bangos.
Galite sukurti grandinę ant duonos lentos arba netgi gauti už ją PCB. Bet aš nusprendžiau jį sulituoti ant „Perf“ lentos, kad darbas būtų atliktas greitai ir būtų patikimas ilgalaikiam naudojimui. Mano lenta atrodo taip, kai visi ryšiai bus baigti.
Jei norite žinoti