Obsah:

Arduino-osciloskop: Prečo to funguje: 4 kroky
Arduino-osciloskop: Prečo to funguje: 4 kroky

Video: Arduino-osciloskop: Prečo to funguje: 4 kroky

Video: Arduino-osciloskop: Prečo to funguje: 4 kroky
Video: Использование драйвера шагового двигателя L298N Для управления 4-проводным шаговым двигателем 2024, November
Anonim
Image
Image

Pred niekoľkými rokmi som sa dostal k elektronike a študoval základné princípy. Zistil som, že rozsah je nástroj, ktorý vám pomôže takmer vo všetkom. Teraz, keď som to pochopil, vydal som sa naučiť sa základné princípy fungovania ďalekohľadu, po niekoľkých mesiacoch som si vravel, že osciloskop je implementovateľný na mikroovládači, ak sa uvediem do bodu učenia sa perspektíva. Prečo práve mikrokontrolér, pretože mal všetko potrebné na zostavenie, ako napríklad ADC na zachytávanie signálu (ale bez ovládacieho frontendu), mal porty GPIO, ktoré bolo možné použiť na mnoho účelov, ale aj má CPU, aj keď pokorný! (Myslel som na arduino).

Začal som s výskumom osciloskopov arduino, ktoré boli dobré a veľmi dobré, ale páčil by sa mi jednoduchší kód, ktorý je možné ľahko modifikovať a porozumieť mu. Len čo som hľadal, narazil som na základňu aktuálneho kódu na arduino fórach od 'vaupell'. Začal som ho upravovať a komentovať ho a čistiť veci, aby bol čitateľnejší. Pôvodný kód je od Noriaki Mitsunaga.

Pozrime sa teda, ako nastaviť hardvér a softvér a ako ho používať.

Ešte musím začať písať vysvetlenie kódu na wiki GitHub. ak máte čas, porozhliadnite sa.

! - Tento projekt neuvádza podrobnosti o tom, ako vytvoriť osciloskop, ale skôr vám ukazuje, ako môžete pomocou jednoduchého mikrokontroléra emulovať správanie osciloskopu v reálnom svete, aby ste pochopili, ako osciloskop funguje.

Krok 1: Poznáte svoj hardvér

Poznáte svoj hardvér
Poznáte svoj hardvér

Cieľom tohto projektu je poskytnúť prehľad o fungovaní rozsahu. Z tohto dôvodu som si vybral najjednoduchšiu a najobľúbenejšiu hardvérovú platformu arduino. Kód je spustiteľný na arduino uno alebo arduino mega, kde sa uprednostňuje to druhé, pretože má viac voľných a prístupných pinov, keď je na ňom nainštalovaný displej.

V tomto projekte teda použijem arduino mega (2560).

Ďalším komponentom je displej. Toto nastavenie používa 2,5 -palcový dotykový štít arduino TFT (ID vodiča je 0x9341). To dáva možnosť zobraziť na obrazovke viac kanálov, ktoré sú navzájom odlíšiteľné.

To je všetko, čo k tomu patrí. Tento rozsah je však veľmi obmedzený, preto ho neposúvajte na okraj. Niektoré konkrétne veci, o ktoré by ste sa mali starať, sú;

arduino ADC nedokáže dobre zvládnuť napätie nad 5 voltov a nedokáže dobre zvládnuť ani napätie pod 0 voltov. Prečo, veď je to tak navrhnuté.

získavanie údajov z viacerých kanálov súčasne znižuje efektívnu vzorkovaciu frekvenciu jedného kanála, pretože vzorky sa odoberajú alternatívne z viacerých kanálov.

vzorkovacia frekvencia je veľmi nízka (pri jednokanálovom akvizícii to môže dosiahnuť až 10 kSps, ale pri dvoch kanáloch klesá na 5 kSps/kanál). To je možné zmierniť nastavením referenčnej frekvencie ADC (nastavením predkaláru) na nižšiu hodnotu. To však má svoje vlastné problémy so zlým rozlíšením.

Nezabudnite tiež na počítač, aby ste kód nahrali do arduina.

Krok 2: Nastavenie

Nastaviť
Nastaviť
Nastaviť
Nastaviť

Nastavenie je veľmi jednoduché;

Pripojte štít displeja k Arduino Mega tak, aby sa kolíky napájania na oboch doskách zarovnali.

pripojte dosku k počítaču pomocou kábla USB.

Otvorte arduino IDE a pridajte knižnicu displeja TFT SPFD5408 (0x9341), ak ešte nie je k dispozícii.

Teraz nahrajte súbor kódu z github do Arduina.

GitHub - Arduino -osciloskop

Tu to máte!. Pohrávať sa s kódom môžete tak, že v sekcii nastavenia kódového kanála zapnete alebo vypnete kanály 8 (ch0) a 15 (ch1). Premennú sadzby môžete zmeniť na hodnotu z poľa sadzieb, čím nastavíte čas/rozdelenie rozsahu. V sekcii spúšťača kódu môžete nastaviť typ spúšťača na automatický alebo jednorazový.

Nasledujúci krok ukazuje akcelerometer 3 osi ADXL335, ktorý je napájaný a čítaný Arduino-osciloskopom, ako je vidieť na prvom videu.

Krok 3: Príklad - ADXL335 čítanie akcelerometra

Príklad - ADXL335 čítanie akcelerometra
Príklad - ADXL335 čítanie akcelerometra
Príklad - ADXL335 čítanie akcelerometra
Príklad - ADXL335 čítanie akcelerometra
Príklad - ADXL335 čítanie akcelerometra
Príklad - ADXL335 čítanie akcelerometra

Napájajte modul akcelerometra z 5 V DC a GND dosky arduino úplne vpravo hore a dole. Teraz pripojte x-out pin modulu adxl335 k pinu A8 dosky arduino, ako je vidieť na obrázkoch. ak je os x akcelerometra nasmerovaná nadol, údajový riadok na obrazovke rozsahu bude posunutý od nuly, pretože modul adxl bude čítať zrýchlenie čítania v dôsledku gravitácie. Skúste ním zatriasť v smere x, ako je vyznačené na doske adxl, hroty sa zobrazia na obrazovke.

Ak sa chcete dozvedieť viac o rozsahu a jeho fungovaní, navštívte Wiki GitHub

Krok 4: Prispieť?

Ak by ste chceli prispieť k dokumentácii wiki, ste srdečne vítaní. Osciloskop je fantastické zariadenie a myslím si, že je to dobrý nástroj STEM !.

V súčasnej dobe pracujem na malom prednom konci s atrapou PGA a ofsetovým ovládaním a pridal by som ovládanie času/dielu a možno aj čítanie nízkonapäťových striedavých signálov.

Odporúča: