Vegyes témakörök. 5. Gagyiszkóp házilag hangfrekvenciás jelek vizsgálata. Hobbielektronika csoport 2018/2019. Debreceni Megtestesülés Plébánia

Hasonló dokumentumok
Bevezetés a mikrovezérlők programozásába: LCD kijelzők

MSP430 programozás Energia környezetben. LED kijelzok második rész

MSP430 programozás Energia környezetben. Nokia 5110 grafikus kijelzo vezérlése

MSP430 programozás Energia környezetben. Analóg jelek mérése

Bevezetés az elektronikába

Villamos jelek mintavételezése, feldolgozása. LabVIEW előadás

MSP430 programozás Energia környezetben. Kitekintés, további lehetőségek

Bevezetés a mikrovezérlők programozásába: Fényérzékelés, fénymérés

Vegyes témakörök. A KAT120B kijelző vezérlése Arduinoval

Mérési útmutató. A/D konverteres mérés. // Első lépésként tanulmányozzuk a digitális jelfeldolgozás előnyeit és határait.

Bevezetés az elektronikába

MSP430 programozás Energia környezetben. LED kijelzok második rész

MSP430 programozás Energia környezetben. Szervó motorok vezérlése

MSP430 programozás Energia környezetben. LED mátrix vezérlése MAX7219 IC-vel

Villamos jelek mintavételezése, feldolgozása. LabVIEW 7.1

MSP430 programozás Energia környezetben. Alfanumerikus LCD kijelzok

Arduino bevezető Szenzorhálózatok és alkalmazásaik

MSP430 programozás Energia környezetben. Hétszegmenses LED kijelzok

LCD kijelzős digitális tároló szkóp FFT üzemmóddal

RUBICON Serial IO kártya

Programozási segédlet DS89C450 Fejlesztőpanelhez

ÖNÁLLÓ LABOR Mérésadatgyűjtő rendszer tervezése és implementációja

The modular mitmót system. 433, 868MHz-es ISM sávú rádiós kártya

* Egyes méréstartományon belül, a megengedett maximális érték túllépését a műszer a 3 legkisebb helyi értékű számjegy eltűnésével jelzi a kijelzőn.

loop() Referencia:

T Bird 2. AVR fejlesztőpanel. Használati utasítás. Gyártja: BioDigit Kft. Forgalmazza: HEStore.hu webáruház. BioDigit Kft, Minden jog fenntartva

2. Elméleti összefoglaló

Mintavételes szabályozás mikrovezérlő segítségével

Labor gyakorlat Mikrovezérlők

Vegyes témakörök. 1. Soros vezérlésű LCD számkijelző. Hobbielektronika csoport 2018/2019. Debreceni Megtestesülés Plébánia

Tartalom. Port átalakítók, AD/DA átalakítók. Port átalakítók, AD/DA átalakítók H.1. Port átalakítók, AD/DA átalakítók Áttekintés H.

Bevezetés az elektronikába

EB134 Komplex digitális áramkörök vizsgálata

Bevezetés az elektronikába

Bevezetés a mikrovezérlők programozásába: Az Arduino, mint logikai analizátor

Elektronikus műszerek Analóg oszcilloszkóp működés

Elektronika 2. TFBE1302

Tarján Péter Nyíregyházi Egyetem. Szenzorok és ötletek Arduinós mérésekhez

Whead 3.0. Szélsebesség és széliránymérő illesztő távadó. Előzetes

Digitális tárolós oszcilloszkópok

Ismerkedés az MSP430 mikrovezérlőkkel

I. C8051Fxxx mikrovezérlők hardverfelépítése, működése. II. C8051Fxxx mikrovezérlők programozása. III. Digitális perifériák

07. mérés Erősítő kapcsolások vizsgálata.

LPT illesztőkártya. Beüzemelési útmutató

Hobbi Elektronika. 1. Témakörök, célkitűzés, hozzávalók

The modular mitmót system. 433, 868MHz-es ISM sávú rádiós kártya

Labor gyakorlat Mikrovezérlők

Balatonőszöd, június 13.

LOGSYS LOGSYS SZTEREÓ CODEC MODUL FELHASZNÁLÓI ÚTMUTATÓ szeptember 16. Verzió

Labor gyakorlat Mikrovezérlők

LOGSYS LOGSYS SPARTAN-3E FPGA KÁRTYA FELHASZNÁLÓI ÚTMUTATÓ szeptember 19. Verzió

Készítette: Ruzsinszki Gábor webmaster442

Silabs STK3700, Simplicity Studio laborgyakorlat

Bevezetés a mikrovezérlők programozásába: WS2812 RGB LED-ek vezérlése

Bevezetés a mikrovezérlők programozásába: MAX6958: Hétszegmenses LED kijelző vezérlő

Bevezetés a mikrovezérlők programozásába: DC motorok vezérlése

Elektronika 2. TFBE5302

Műveleti erősítők. Előzetes kérdések: Milyen tápfeszültség szükséges a műveleti erősítő működtetéséhez?

Nyomtatóport szintillesztő 3V3

Mechatronika és mikroszámítógépek. 2016/2017 I. félév. Analóg-digitális átalakítás ADC, DAC

Jelfeldolgozás a közlekedésben. 2017/2018 II. félév. Analóg-digitális átalakítás ADC, DAC

MSP430 programozás Energia környezetben. Digitális szenzorok

Autóipari beágyazott rendszerek CAN hardver

ARM Cortex magú mikrovezérlők

7. Az analóg oszcilloszkópok általános jellemzői

Vegyes témakörök. 11. Robotvezérlés WiFi kapcsolaton keresztül 2. rész. Hobbielektronika csoport 2018/2019. Debreceni Megtestesülés Plébánia

Analóg-digitális átalakítás. Rencz Márta/ Ress S. Elektronikus Eszközök Tanszék

AVR-Duino Eth Shield / AVR-Duino EthMAX Shield

MSP430 programozás Energia környezetben. Az első lépések

Tranzisztoros erősítő vizsgálata. Előzetes kérdések: Mire szolgál a bázisosztó az erősítőkapcsolásban? Mire szolgál az emitter ellenállás?

MSP430 programozás Energia környezetben

OP-300 MŰSZAKI ADATOK

The modular mitmót system. DPY kijelző kártya C API

2.3. Soros adatkommunikációs rendszerek CAN (Harmadik rész alapfogalmak II.)

Hobbi Elektronika. Bevezetés az elektronikába: Műveleti erősítők - 2. rész

Bevezetés a mikrovezérlők programozásába: Ismerkedés az Arduino fejlesztői környezettel

Hobbi Elektronika. A digitális elektronika alapjai: Sorrendi logikai áramkörök 3. rész

Újrakonfigurálható eszközök

Multi-20 modul. Felhasználói dokumentáció 1.1. Készítette: Parrag László. Jóváhagyta: Rubin Informatikai Zrt.

Megjegyzés: A leírás abszolút kezdők számára készült elnézést azoktól, akik ezen a szinten már túlvannak!

Mintavételezés tanulmányozása. AD - konverzió. Soros kommunikáció

HSS60 ( ) típusú léptetőmotor meghajtó

A tervfeladat sorszáma: 1 A tervfeladat címe: ALU egység 8 regiszterrel és 8 utasítással

2. MÉRÉS. Poto Board 4. mérőkártya. (Rádiós és optikai jelátvitel vizsgálata)

Bevezető a mikrokontrollerek, az IoT és

1. Témakörök, célkitűzés, hozzávalók. Hobbielektronika csoport 2015/2016

Hobbi Elektronika. A digitális elektronika alapjai: Sorrendi logikai áramkörök 4. rész

6 az 1-ben digitális multiméter AX-190A. Használati útmutató

Irányítástechnika Elıadás. A logikai hálózatok építıelemei

T Bird 2. AVR fejlesztőpanel. Használati utasítás. Gyártja: BioDigit Kft. Forgalmazza: HEStore.hu webáruház. BioDigit Kft, Minden jog fenntartva

Szimmetrikus bemenetű erősítők működésének tanulmányozása, áramköri paramétereinek vizsgálata.

Jeltárolás. Monitorozás

DIALOG II PLM-B-000-LCD Hálózati paraméter felügyeleti modul Speciális készülékek

Hobbi Elektronika. A digitális elektronika alapjai: Sorrendi logikai áramkörök 2. rész

2. gyakorlat Mintavételezés, kvantálás

A KALIBRÁLÓ LABORATÓRIUM LEGJOBB MÉRÉSI KÉPESSÉGE

AT-H201 kézi szkópméter / kézi oszcilloszkóp egyszerűsített kézikönyv

Átírás:

Vegyes témakörök 5. Gagyiszkóp házilag hangfrekvenciás jelek vizsgálata 1

Analóg és digitális oszcilloszkópok Analóg oszcilloszkóp: a katódsugárcső vízszintes eltérítését egy ramp generátor a függőleges eltérítést pedig a felerősítet (vagy leosztott bemenő jel végzi Két- vagy többsugaras oszcilloszkópnál két vagy több bemenőjelet vizsgálhatunk Analóg eszközöknél a tárolás (a jel rögzítéset nehezen oldható meg Digitális oszcilloszkóp: a működés elve digitális: a bejövő jelet mintavételezzük, digitalizáljuk (ADCt, majd az adatokat kijelzőn (LCD, TFTt megjelenítjük A tárolás egyszerűen megoldható 2

A mintavételezés buktatói A mintavételezési frekvencia helytelen megválasztása torzítja a bejövő jel alakját. Szélsőséges esetben olyan jelalakot látunk, ami nem is szerepel az eredeti bejövő jelben (aliasingt Nyquist [ejtsd: Nükviszt] kritérium: a mintavételezési frekvencia a jel frekvenciájának legalább a kétszerese legyen 3

A mintavételezés buktatói Zajjal terhelt jel esetén a mintavételezési frekvenciát a zaj frekvenciájához célszerű igazítani (különösen, ha a zaj kiátlagolása a célunkt 4

Mintavételezés NodeMCU kártyával ESP8266 CPU 80 / 160 MHz 4 MB fash 3,3 V jelszint és tápfeszültség MicroPythonban a GPIO számozásokat kell használni! WiFi 2.4 GHz 1 analog input 13 digital I/O ebből az UART Rx és Tx foglalt 5

NodeMCU ADC bemenet Specifkáció szerint 0 1 V bemenőjel fogadására képes, amit 10 bites felbontással mér (0-1023t Max. 10 V A NodeMCU már tartalmaz egy feszültségosztót, ami a bemenő feszültséget leosztja, így a méréshatárt 3,3 V-ra terjeszti ki 680 k Max. 3,3 V Megfelelő értékű soros ellenállás segítségével a méréshatárt kiterjeszthetjük ESP 8266 Például 680 kω sorbakötésével a méréshatárt 10 V-ra emelhetjük (a felbontás egyidejű csökkenése áránt 6 Max. 1 V

adc_meas.py Az alábbi micropython program 200 mintavételezést végez el, majd az eredményt kétoszlopos formában kiírja A 200 mérés alat eltelt időt egyenletes intervallumokra osztjuk, s a mérés kezdete óta eltelt idő lesz az első oszlopban, ms egységben A második oszlopban a V-ban mért feszültséget írjuk ki import machine, time adc = machine.adc(0) Tapasztalat: 200 mintavételezés ideje kb. 60 ms (0,3 ms/mintavétel) from array import array aa = array('i',range(200)) a = time.ticks_ms() for i in range(200): aa[i] = adc.read() b = time.ticks_ms() c = time.ticks_diff(b,a)/200 for i in (range(200)): print("%0.2f %0.2f" % (i*c,aa[i]*10/1024)) 7

Astabil multivibrátor jelének vizsgálata Az alábbi ábrán a 2018. október 18-i előadásban bemutatot hangfrekvenciás astabil multivibrátor jelalakja látható. A 200 adatpont mérése kb. 60 ms, it az adatsor kb. 1/3-a látható. 8

NodeMCU kártya kijelzővel Egyszerű és olcsó megoldás az SSD1306 OLED kijelző (I2Ct Az SSD1306 osztály a micropython FrameBufer osztály örököse Lusta kivitelben csak mellédugjuk a NodeMCU kártyának (GND GND, VCC 3,3V, SCL GPIO2, SDA GPIO0t oled_lazy.py from machine import Pin,I2C import ssd1306 i2c = I2C(scl=Pin(2,sda=Pin(0),freq=100000) oled = ssd1306.ssd1306_i2c(128,64,i2c) oled.text('hello',0,0) oled.text('micropython',0,10) oled.line(0,20,127,20,1) oled.line(0,20,0,63,1) oled.line(0,63,127,63,1) oled.line(127,20,127,63,1) oled.line(0,63,127,20,1) oled.line(0,20,127,63,1) oled.show() 9

Gagyiszkóp NodeMCU kártyával A mintavételezés a korábban mutatot módon, kb. 3,3 khz-en történik. Egy adatsor (128 mintat után a képernyőre skálázzuk és megjelenítjük az adatsort A transzformáció elhagyása miat a kép fejjel lefelé jelenik meg! import time, machine, ssd1306 from array import array adc = machine.adc(0) i2c = machine.i2c(scl=machine.pin(2), sda=machine.pin(0), freq=100000) oled = ssd1306.ssd1306_i2c(128,64,i2c) aa = array('i',range(128)) for i in range(128): aa[i] = adc.read() x0 =0; y0 = 0 oled.fill(0) for i in (range(64)): x=i*2; y=aa[i]//16 #Nagyítás!!! oled.line(x0,y0,x,y,1) x0=x; y0=y oled.show() 10 0V 8,5 V

Gagyiszkóp NodeMCU kártyával Az ábrán a 2018. október 18-i előadásban bemutatot tranzisztoros hangfrekvenciás astabil multivibrátor jelalakjának vizsgálata látható Az idő tengelyen 64*0,3 = 19,2 ms-ra közel 6 periódus esik, így a frekvencia kb. 312 Hz 11

Van másik! - Gagyiszkóp Arduinoval Oszcilloszkóp Arduinoval és Nokia5110 LCD-vel A projekt a SimulIDE egyik Arduino mintapéldája (oscope8544t Oszcillátor 12

Nokia 5110 kijelző vezérlése Kiegészítő könyvtárak: Adafruit_GFX és Adafruit_PCD8544 #include <Adafruit_GFX.h> Nem teljes program, csak #include <Adafruit_PCD8544.h> programvázlat! #include <SPI.h> #define DISPLAY_WIDTH 84 (CLK, CIN, DC, CE, RST) #define DISPLAY_HEIGHT 48 Adafruit_PCD8544 display = Adafruit_PCD8544(7, 6, 5, 4, 3); void setup(void) { display.begin(); display.setcontrast(60); // Ehelyett más érték kellhet! display.cleardisplay(); } void loop() { display.cleardisplay(); display.drawline( 0, 24, 83, 24, BLACK); // 0 line Lasty = data[0]; for(i = 1; i <= DISPLAY_WIDTH; i++) { display.drawline(i-1, lasty, í, data[i], BLACK); lasty = data[i]; } Most ne firtassuk, hogy kerül az adat a data[] tömbbe! display.display(); } 13

NOKIA 5110 LCD bekötése A Nokia 5110 kijelző általában 3,3 V-os tápfeszültséget igényel és az adatbemeneteket is célszerű védeni. Némely esetben azonban az 5 V-ot is jól bírja A lábak kiosztása: GND GND GND BL (LED katódt 3,3V VCC D7 CLK (SPI órajelt D6 DIN (SPI adatt D5 DC (data/commandt D4 CE (Chip enablet D3 RST (display resett Némelyik panelnél BL-re a LED hátérvilágítás anódja van kivezetve (VCC-re kell kötnit 14

oscope8544.ino részlet: ADC kezelés ADC órajel F_CPU/16 legyen! (Alapértelmezeten 128t void setup(void) { sbi(adcsra,adps2) ; //FASTADC: előosztó legyen 16 cbi(adcsra,adps1) ; cbi(adcsra,adps0) ; } void loop() { delayvariable = analogread(a1)*2+1; while( analogread(channelai) > 512 ); // Felfutóélre várunk while( analogread(channelai) < 512 ); unsigned long readtime=micros(),readtime2=0, tottime=0; bool positive = true; int numcycles = 0; for(xcounter = 0; xcounter <= DISPLAY_WIDTH; xcounter++){ yposition = analogread(a0); if(!positive && (yposition > 512)) { // Felfutóél észlelése numcycles++; readtime2 = micros(); } positive = yposition > 512; readings[xcounter] = yposition>>5; // 0-32 Itt kerül az adat eltárolásra delaymicroseconds(delayvariable); } // Potméterrel változtatható // késleltetés 1 2047 μs 15

oscope8544: futási eredmény A képen egy astabil multivibrátor jelét vizsgáljuk, F = 318 Hz, tottime = 12 ms, 21 fps, 7083 mintavétel/s (141 μs/mintat 16

További lehetőség: Serial Oscilloscope A Serial Oscilloscope egy Windows alkalmazás, amely soros porton fogadja az adatokat (több csatorna esetén vesszővel elválasztva, sorokra tagolvat és megjeleníti azokat Egy primitív Arduino tesztprogram: scope_test.ino byte val1 = 0; byte val2 = 0; void setup() { Serial.begin(115200); } void loop() { Serial.print(val1); Serial.write(","); Serial.println(val2); val1++; val2+=val1; delay(2); } 17

Van még! - Oscilloscope Arduino-Processing Egy impozáns projekt az Ocilloscope Arduino-Processing, amely 4 csatornás oszcilloszkópot valósít meg. Sajnos, lassú! 18