Osciloskop (za Arduno Uno)

nedjelja, 06.10.2024.

Opis uređaja

1. TEHNIČKE KARAKTERISTIKE
Ovaj osciloskop ima samo jedno područje mjerenja (-2,5V do 2,5V).
Okidanje (Triggger level i trigger slope) je fiksirano na 0V, uzlazno.
Preporučljive frekvencije koje se mogu mjeriti su 20Hz do cca. 5KHz.
Broj semplinga po periodi je 122-126 (ili manje za frekvencije veće od cca. 4.5KHz).
Ulazni otpor je 500 ohma.
Pored ekrana RB-TFT1.8-T može se koristiti i Serial monitor.
Ako Arduino Uno napajamo pomoću računala, treba dodatni oprez ako mjerimo neki izvor koji električki ne pliva u odnosu na računalo.
Napajanje može biti izvor od 5V; postoji i mogućnost napajanja preko USB priključka na raćunalo, ali onda se uglavnom moraju mjeriti naponi koji električki plivaju u odnosu na računalo.

---------------------------------------------------

2. EKRAN (osnovni parametri ekrana)
RB-TFT1,8-T
visina ekrana 1.8" (4,57 cm)
rezolucija 128(125) x 160 Pixel
napon naoajanja 3.3 V
napon logike 3.3 V
sučelje SPI
kompatibilnost Raspberry Pi, micro:bit, Arduino (3.3 V logic)
signalne veze sa mikokontrolerom su ostvarene preko djelila 1K-2,2K

---------------------------------------------------

3.OPIS HARDVERA

3.1. Ulaz
Ako između +5V i GND mikrokontrolera stavimo naponsko djelilo 1K+1K(za veći ulazni otpor može i 100K+100K), onda možemo postojećim potencijalima dati ove vrijednosti: -2,5V(inače je GND) ; 0V (usred djelila) i 2,5V(inače je 5V)

3.2. ADC
ADC je dio mikrokontrolera koji može pretvoriti ulazni napon(napon na A0) u broj. U ovom softveru se koristi samo jedan Byte za mjerenje tako da dobivamo brojeve 0-255 (za napone od 0-5V), ali zbog ulaznog naponskog djelila takve rezultate ćemo tumačiti kao brojeve od -128 do 127 (naponi od -2,5V do 2,5V)

3.3. Kondenzator na Uref
Kondenzator od 100nF služi za stabiliziranje napona kada ADC mjeri.

3.4. RB-TFT1,8-T
Ovaj ekran ima SPI sučelje za 3,3V ; ali zbog toga što nema povratnih informacija iz ekrana prema mikrokontroleru možemo jednostavno ostvariti komunikaciju tako da na sve kanale komunikacije stavimo naponsko djelilo 1K-2K2 , pa će onda svaki napon 5V iz mikrokontrolera prema ekranu biti smanjen na cca. 3,3V(!)

3.5. Osciloskop/Frekventni analizator
Na pinu 3 možemo pomoću sklopke mijenjati nočin rada, uređaj može biti osciloskop, ali i frekventni analizator.

3.6. Hold
Na ulazu 2 moženo zaustaviti promjenu slika i podataka.

3.7. Testiranje
3.7.1. Uređaj za testiranje (izveden pomoću LM324)
LM324 ima 4 operaciona pojačala, ali za ovaj uređaj koristimo samo 3; na izlazima se (respektivno prema shemi) pojavljuju izmjenični naponi pravokutnog, trokutastog i sinusnog oblika koji titraju oko napona 0V.
Potenciometar od 100K služi za mijenjanje frekvencije od cca. 60Hz do cca. 5KHz;
3.7.2. Testiranje pomoću neko digitalnog izlaza
Ako za neki digitalni izlaz damo PWM (kvazianalogni napon) izlaz, onda imamo na raspolaganju pravokutni napon frekvecije cca.500Hz, možemo ga upotrebiti za testiranje
3.7.3. Testiranje pomoću "žice u zraku"
Ako ulazni vodič jednim krajem ne spojimo nigdje (drugi kraj je utaknut u pin A0), onda postoji velika vjerojatnost da ćemo mjeriti napon frekvencije 50Hz.

---------------------------------------------------

4. OPIS SOFTVERA

4.1. Instalacija
Datoteke *.ino i *.S treba smjestiti u istoimenu mapu (npr. u mapu "instrument" treba smjetiti datoteku "instrument.ino" i datoteku "instrument.S")

4.2. Korištenje
Nakon pokretanja datoteke *.ino u Arduino okruženju treba "poslati" sadržaj u mikrokontroler (koji je spojen sa pripadajućim hardverom), pa zatim koristiti mikrokontroler kao instrument.

4.3. Detaljniji opis softvera
4.3.1. *.ino datoteka
Program se uglavnom sastoji od poziva datoteke *.S (za ostvarivanje seije uzoraka) i ovih funkcija:
void statistika()
void ispis_graf()
void ispis_test(int x, int y,int text_size,int broj,int d_int,int n_uzoraka
,long int kraj_serije_semplinga, long int pocetak_serije_semplinga,float d_float)
void ispis_uzoraka_serial(int redni_broj_pocetnog_uzorka)
void crtaj_i_pisi_frekventnu()
float polar_apsol(float x, float y)
float polar_kut(float x, float y, float pi)
void hold()
float crtam_amplitudno_frekvencijsku_na_serial()
void crtam_vremensku_na_serial()
Smisao svake funkcije je relativno jasan iz njezinog naziva.
4.3.2. *.S datoteka
Funkcije koje se koriste su najčešće:
init_ADC: - za početak rada sa ADC0
init_and_read_ADC1: - za mjerenje offseta kod napajanja operacionog pojačala LM324
rread0_ADC: - za mjerenje serije uzoraka sa višom frekvencijom
rread_ADC: - za mjerenje serije uzoraka sa nižom frekvencijom
read1_ADC: - za jedno mjerenje
u_memoriju: - za smještanje podataka u polje p
cekaj: - za čekanje programa do slijedećeg uzorka
Koriste se registri R16, R18, R20, R22, R24 za ulaz podataka
U programu se koriste registri R16 do R31

---------------------------------------------------

06.10.2024. u 23:22 • 0 KomentaraPrint#

<< Arhiva >>

Creative Commons License
Ovaj blog je ustupljen pod Creative Commons licencom Imenovanje-Dijeli pod istim uvjetima.




Dnevnik.hr
Gol.hr
Zadovoljna.hr
Novaplus.hr
NovaTV.hr
DomaTV.hr
Mojamini.tv

Opis bloga

Veliki je broj onih koji su upoznali i imaju Arduino Uno, ali rijetko tko od njih je uspio provesti analogna mjerenja tolikom brzinom koliko to dozvoljava mikrokontroler (klasično jedno analogno mjerenje u Arduino Uno traje cca. 100 mikrosekundi, a u ovom programu traje cca. 1 mikrosekundu).

Ovaj projekt ima i još neke posebnosti:
- provode se se 8-bitna mjerenja napona na pinu A0 (sa rezultatime 0-255, a ne 10-bitna sa rezultatima 0-1023),;
- pomoću naponskog djelila uobičajen raspon rada Arduina Uno (od 0 do 5V) "premješten" je, za potrebe mjerenja ulaznog izmjeničnog napona, na -2,5V do 2,5V;
- osciloskopski rad ne iziskuje nikakva podešavanja, program sam prepoznaje trajanje periode mjerenog signala i sukladno tome na ekranu iscrta cca 124 uzoraka iz periode i precizne podatke o parametrima mjerenog signala (maksimalna vrijednost, srednja vrijednost, frekvencija ....)
- pomoću DFT je iz uzoraka jedne periode moguće napraviti frekventnu analizu mjerenog signala ,tako da postoji sklopka pomoću koje se na ekranu umjesto vremenskog prikaza jedne periode može vidjeti frekventna analiza mjerenog signala
- ....

Osnovna URL adresa:

https://blog.dnevnik.hr/osciloskop



Najbitnije objave su:
- Sheme (3.10.2024.)
- Opis uređaja (6.10.2024.)
- *.ino datoteka (6.10.2024.)
- *.S datoteka (6.10.2024.)


URL adrese iz kojih sam dobio ideju za ovaj projekt:

Video 1

Video 2

Video 3

Video 4



Napomena: Prokazivanje fazno-frekventne karakteristike u frekventoj analizi je neprimjereno, ali nisam imao vremena to popraviti, trko hoće može samo malo izmijeniti funkciju .crtaj_i_pisi_frekventnu u *.ino datoteci.

Linkovi


Loading