Taula de continguts:

Arduino-Oscil·loscopi: per què funciona: 4 passos
Arduino-Oscil·loscopi: per què funciona: 4 passos

Vídeo: Arduino-Oscil·loscopi: per què funciona: 4 passos

Vídeo: Arduino-Oscil·loscopi: per què funciona: 4 passos
Vídeo: SisEn Pràctiques: Transistor, aplicacions 2024, De novembre
Anonim
Image
Image

Fa uns anys quan començava a treballar en electrònica i estudiava els principis bàsics. Vaig trobar que un abast és l'eina que us ajuda en gairebé tot. Ara que ho vaig entendre, em vaig proposar aprendre els principis bàsics del funcionament d’un àmbit, al cap d’uns mesos, em vaig pensar, bé, un oscil·loscopi es pot implementar en un microcontrolador si em poso en un punt d’aprenentatge de perspectiva. Per què un microcontrolador, perquè tenia totes les coses necessàries per construir-ne un, com un ADC per prendre un senyal (però sense control frontal), tenia ports GPIO que es podrien utilitzar per a molts propòsits, també té una CPU encara que suau! (Pensava en un arduino).

Vaig començar a investigar sobre oscil·loscopis arduino que eren bons i molt bons, però m’hauria agradat un codi més senzill que sigui fàcil de modificar i entendre. Just quan buscava, em vaig trobar amb la base del codi actual als fòrums arduino de 'vaupell'. Vaig començar a modificar-lo i comentar-lo i netejar el material per fer-lo més llegible. El codi original és de Noriaki Mitsunaga.

Per tant, vegem com configurar el maquinari i el programari i com utilitzar-lo.

Encara he de començar a escriure l’explicació del codi a la wiki de GitHub. si us queda temps per fer-hi una ullada.

! - Aquest projecte no detalla com fer un oscil·loscopi, sinó que us mostra com podeu utilitzar un simple micro-controlador per emular el comportament d’un oscil·loscopi del món real per entendre com funciona un oscil·loscopi.

Pas 1: conèixer el vostre maquinari

Conèixer el vostre maquinari
Conèixer el vostre maquinari

L'objectiu d'aquest projecte és proporcionar una idea del funcionament d'un àmbit. Per aquest motiu, vaig escollir la plataforma de maquinari més senzilla i popular arduino. El codi es pot executar en un arduino uno o un arduino mega, on es prefereix aquest darrer perquè té més pins lliures i accessibles quan hi ha instal·lada una pantalla.

Per tant, en aquest projecte faré servir un arduino mega (2560).

El següent component és la pantalla. Aquesta configuració utilitza una pantalla tàctil arduino TFT de 2,5 polzades (l’identificador del controlador és 0x9341). Això proporciona la possibilitat de mostrar diversos canals a la pantalla que es distingeixen entre ells.

Això és tot el que hi ha. Tanmateix!, Aquest abast és molt limitat en les seves capacitats, així que no el porteu cap a la vora. Algunes coses específiques que s’han de preocupar són;

l'arduino ADC no pot suportar molt bé tensions superiors a 5 volts i tampoc pot manejar bé tensions inferiors a 0 volts. Per què, perquè està dissenyat així.

l'adquisició de dades de diversos canals redueix simultàniament la freqüència de mostreig efectiva d'un sol canal perquè les mostres es prenen alternativament dels múltiples canals.

la freqüència de mostreig és molt baixa (per a una adquisició d'un sol canal pot arribar a 10kSps, però amb dos canals cau a 5kSps / canal). Això es pot mitigar establint la freqüència de referència ADC (configurant el prescalar) en un valor inferior. No obstant això, això té els seus propis problemes de mala resolució.

Tampoc oblideu un ordinador per penjar el codi a l’arduino.

Pas 2: Configuració

Configuració
Configuració
Configuració
Configuració

La configuració és molt senzilla;

Connecteu l'escut de la pantalla a l'Arduino Mega de manera que els pins d'alimentació de les dues taules siguin alineats.

connecteu la placa a l'ordinador mitjançant un cable USB.

Obriu l'IDE arduino i afegiu la biblioteca de visualització TFT SPFD5408 (0x9341), si encara no hi és.

Ara pengeu el fitxer de codi de github a Arduino.

GitHub - Arduino-Oscil·loscopi

Aquí el teniu!. Podeu jugar amb el codi configurant els canals 8 (ch0) i 15 (ch1) ON o OFF a la secció de configuració del canal de codi. Podeu canviar la variable de taxa a un valor de la matriu de tarifes per definir el temps / divisió de l'abast. Podeu configurar el tipus d'activador a automàtic o únic a la secció d'activació del codi.

El següent pas mostra un acceleròmetre ADXL335 de 3 eixos alimentat i llegit per l'Arduino-Oscil·loscopi, tal com es veu al primer vídeo.

Pas 3: exemple: ADXL335 Lectura de l’acceleròmetre

Exemple: ADXL335 Lectura de l’acceleròmetre
Exemple: ADXL335 Lectura de l’acceleròmetre
Exemple: ADXL335 Lectura de l’acceleròmetre
Exemple: ADXL335 Lectura de l’acceleròmetre
Exemple: ADXL335 Lectura de l’acceleròmetre
Exemple: ADXL335 Lectura de l’acceleròmetre

Alimenteu el mòdul de l’acceleròmetre des de 5V CC i GND de la placa arduino a l’extrem dret superior i inferior. Ara connecteu el pin x-out del mòdul adxl335 al pin A8 de la placa arduino, tal com es pot veure a les imatges. si l’eix x de l’acceleròmetre s’orienta cap avall, la línia de dades de la pantalla d’objectiu es desplaçarà de zero, ja que el mòdul adxl llegirà l’acceleració a causa de la gravetat. proveu de sacsejar-lo en la direcció x tal com es marca al tauler adxl, els pics apareixeran a la pantalla.

Per obtenir més informació sobre l'abast i el seu funcionament, consulteu el GitHub Wiki

Pas 4: contribuir?

Si voleu contribuir a la documentació del wiki, esteu més que benvinguts. L’oscil·loscopi és un equip fantàstic i crec que és una bona eina STEM !.

Actualment estic treballant en un petit frontal amb un PGA fictici i un control offset i afegiria un control per al temps / div i potser llegint senyals de CA de baixa tensió.

Recomanat: