A Hobbielektronika csoport. bemutatója



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

Ismerkedés az MSP430 mikrovezérlőkkel

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

MSP430 programozás Energia környezetben

Bevezetés a mikrovezérlők programozásába: Programciklusok szervezése, analóg I/O

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

MSP430 programozás Energia környezetben. Az I/O portok kezelése

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

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

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: LCD kijelzők

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

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

Bevezetés az elektronikába

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

Bevezetés az elektronikába

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

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

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

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

Az MSP430 mikrovezérlők digitális I/O programozása

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

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

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

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.

loop() Referencia:

3. Hőmérők elkészítése

Nagy Gergely április 4.

ARM mikrovezérlők programozása

Bevezetés a mikrovezérlők programozásába: I/O portok kezelése, számrendszerek, bitműveletek

Laboratóriumi műszerek megvalósítása ARM alapú mikrovezérlővel és Linux-szal

SYS700-A Digitális szabályozó és vezérlõ modul DDC rendszerelemek, DIALOG-III család. Terméktámogatás:

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

SYS700-PLM Power Line Monitor modul DDC rendszerelemek, DIALOG-III család

Az MSP430 energiatakarékos használata

Bevezetés az elektronikába

Labor gyakorlat Mikrovezérlők

Újdonságok az Arduino szabadszoftveres platform körül. Noll János FSF.hu Alapítvány

3. A DIGILENT BASYS 2 FEJLESZTŐLAP LEÍRÁSA

Labor gyakorlat Mikrovezérlők

Készítette: Ruzsinszki Gábor webmaster442

Új kompakt X20 vezérlő integrált I/O pontokkal

AVR-Duino Eth Shield / AVR-Duino EthMAX Shield

Bevezetés az elektronikába

Leírás. Készítette: EMKE Kft február 11.

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

PIC16F877 KÍSÉRLETI PANEL

Bevezetés a mikrovezérlők programozásába: Digitális szenzorok

Programozás és Digitális technika I. Pógár István eng.unideb.hu/pogari

ems2.cp04d [18010] Keriterv Mérnök Kft Programozható Automatikai állomás 14 multifunkcionális bemenet, 6 relé kimenet, 4 analóg kimenet DIGICONTROL

Ú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.

Norway Grants. Az akkumulátor mikromenedzsment szabályozás - BMMR - fejlesztés technológiai és műszaki újdonságai. Kakuk Zoltán, Vision 95 Kft.

Autóipari beágyazott rendszerek CAN hardver

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

SYS700-DIDO Digitális szabadon programozható szabályozó (Digitális be- és kimenettel) Szabályozók és vezérlõk

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

Labor 2 Mikrovezérlők

Roger UT-2. Kommunikációs interfész V3.0

DMG termékcsalád. Digitális multiméterek és hálózati analizátorok háttérvilágítással rendelkező grafikus LCD kijelzővel

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

UH-zongora - zenélés mikrokontrollerrel

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

Egy PIC-BASIC program fordítása, betöltése

Eduino mérőpanel. Alapötlet:

Programozott soros szinkron adatátvitel

Ethernet - soros vonali eszköz illesztő felhasználói leírás, és használati útmutató

ARM Cortex magú mikrovezérlők

Mérő- és vezérlőberendezés megvalósítása ARM alapú mikrovezérlővel és Linux-szal

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

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

M2037IAQ-CO - Adatlap

USB adatgyűjtő eszközök és programozásuk Mérő- és adatgyűjtő rendszerek

Yottacontrol I/O modulok beállítási segédlet

Kaméleon K860. IAS Automatika Kft

Rubin SMART COUNTER. Műszaki adatlap 1.1. Státusz: Jóváhagyva Készítette: Forrai Attila Jóváhagyta: Parádi Csaba. Rubin Informatikai Zrt.

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

Bevezetés az elektronikába

T2-CNCUSB vezérlő család hardver segédlet

MICROCHIP PIC DEMO PANEL

Labor gyakorlat Mikrovezérlők

KINCO árlista. Viszonteladói árlista. K2 PLC család K5 PLC család MT,GL univerzális kijelzők CV frekvenciaváltók PS tápegységek

Megszólal a Kütyü. Arduino bevezető hangszóró vezérlése 1 / 5 oldal

Fizikai mérések Arduino-val

Kommunikáció az EuroProt-IED multifunkcionális készülékekkel

Jelfeldolgozás a közlekedésben

KINCO PLC és HMI árlista

StP Műszaki Fejlesztő, Gyártó és Kereskedelmi Kft.

ALPHA és ALPHA XL műszaki leírás

Ismerkedjünk tovább a számítógéppel. Alaplap és a processzeor

TRIMx-EP DIGITÁLIS SZINKRON KAPCSOLÁS TRANSZFORMÁTOROK. Alkalmazási terület

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

KINCO PLC és HMI, frekvenciaváltó árlista

Programozási segédlet DS89C450 Fejlesztőpanelhez

Arduino, programozás, elektronika egy út az ismeretek integrált felhasználásához

SB-Controls Kft Sóskút, Ipari Park 3508/64 Hrsz. T.: F.: E-Line CPU PCD1.

Bevezetés a mikrovezérlők programozásába: Kommunikáció

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.

Átírás:

A Hobbielektronika csoport bemutatója 2013. május 20. Debreceni Megtestesülés Plébánia 1

Ha a fényemittáló diódán (LED) nyitóirányú áram folyik, a dióda fényt bocsájt ki. Az MSP430 Launchpad kártya mikrovezérlője a megírt program szerint tevékenykedik, egy táblázatban tárolt bitminták szerint kapcsolgatja ki és be a LED-eket. A bitminták között szünetet tartunk (késleltetés). Knight Rider villogó (C nyelvű program) Fejlesztői környezet: IAR Embedded Workbench #include "io430.h" #include "intrinsics.h" const char a[]={0x01,0x03,0x07,0x0e,0x1c,0x38,0x70,0xe0,0xc0,0x80; char i; void main(void) { WDTCTL = WDTPW + WDTHOLD; //Letiltjuk a watchdog időzítőt P1DIR = 0xFF; //P1 minden bitje legyen digitális kimenet P1OUT = 0xFF; //kezdőállapot beállítása while(1) { for(i=0; i<10; i++) { P1OUT = ~a[i]; //bitminta kirakása a P1 portra delay_cycles(100000); //Várakozás kb. 50 ms ideig i=10; while(i) { //a ciklus addig fut, amíg i!=0 teljesül i--; //ciklusváltozó léptetése P1OUT = ~a[i]; //bitminta kirakása a P1 portra delay_cycles(100000); //Várakozás kb. 50 ms ideig 2

Speciális fényeffektus és Knight Rider villogó kombinálása (C nyelvű program) #include "io430.h" #include "intrinsics.h" const char a[]={0x01,0x03,0x07,0x0e,0x1c,0x38,0x70,0xe0,0xc0,0x80; void knight_rider(int n) { int i,j; P1OUT = 0xFF; //kezdőállapot beállítása for(j=0; j<n; j++) { for(i=0; i<10; i++) { P1OUT = ~a[i]; //bitminta kirakása a P1 portra delay_cycles(100000); //Várakozás kb. 50 ms ideig i=10; while(i) { //a ciklus addig fut, amíg i!=0 teljesül i--; //ciklusváltozó léptetése P1OUT = ~a[i]; //bitminta kirakása a P1 portra delay_cycles(100000); //Várakozás kb. 50 ms ideig void startup_sequence(void) { unsigned char flag=4,up=1,counter = 0; unsigned char LED_Array[] = {0x81,0x42,0x24,0x18 ; while (counter <12) { counter++; P1OUT = 0xFF; //kezdőállapot if(up) { while(flag) { P1OUT = ~LED_Array[flag-1]; delay_cycles(31000); flag--; up=0; else { while(flag<4) { P1OUT = ~LED_Array[flag]; delay_cycles(31000); flag++; up = 1; P1OUT = 0xFF; //kilépés, LED-ek törlése void main(void) { WDTCTL = WDTPW + WDTHOLD; //Letiltjuk a watchdog időzítőt P1DIR = 0xFF; //P1 minden bitje legyen digitális kimenet P1OUT = 0xFF; //kezdőállapot beállítása while(1) { startup_sequence(); knight_rider(10); delay_cycles(400000); 3

Feszültségmérő LCD kijelzéssel Az Energia IDE beépített könyvtárai segítségével egyszerűen kezelhetjük a perifériákat. Az analogread(a4); függvényhívással megmérjük az A4 bemenetre kapcsolt feszültséget (0 3.5 V közötti feszültséget kapcsolhatunk rá). Az eredményt voltokra számítjuk át, majd kijelezzük egy 16x2 karakteres LCD modul segítségével. Az LCD kijelzőt a LiquidCrystal programkönyvtár segítségével kezeljük. A LiquidCrystal objektumosztály a Print osztály leszármazottja, így az LCD-re történő kiíratásra a print metódust használhatjuk. A program bemutatásához egy, a tápfeszültség és a föld közé kötött potmétert használunk, s az A4 bemenetre a potméter csúszkáját kötjük. A program listája: #include <LiquidCrystal.h> //Becsatoljuk a programkönyvtárat int i, k; //Inicializáljuk a programkönyvtárat az alábbi lábkiosztással LiquidCrystal lcd(p2_0, P2_1, P2_2, P2_3, P2_4, P2_5); void setup() { lcd.begin(16, 2); lcd.print("analog Voltmeter"); pinmode(p1_2,output); digitalwrite(p1_2,low); pinmode(p1_3,output); digitalwrite(p1_3,high); //Beállítjuk a sorok és oszlopok számát) //Kiírunk egy szöveget az első sorba //GND //VCC void loop() { int sensorvalue = analogread(a4); //Mérés az A4 bemeneten // Átszámítjuk a 0-1023 közötti voltra (0-3.5V): float voltage = sensorvalue * (3.5 / 1023.0); lcd.setcursor(0, 1); //Kurzor a második sor elejére lcd.print(voltage,3); //Kiíratjuk az eredményt lcd.print(" V"); delay(2000); 4

Ultrahangos távolságmérés A HC-SR04 modul piezo jeladója az indító impulzus hatására egy 40 khz-es jelcsomagot sugároz ki. A modul digitális kimenő impulzusának szélessége megegyezik a visszaverődött hang terjedési idejével. Főbb paraméterek Tápfeszültség: 4.5 V 5.5 V Mérési tartomány: 2 cm 4 m (gyakorlatban inkább 2 m) Érzékelési szögtartomány: ~ 16 ⁰ Kapcsolási vázlat Program (Energia IDE) Alkalmazási lehetőségek Távolságmérés, folyadékszint ellenőrzés, ütközésgátló, tolató radar 5

RGB LED vezérlése (folyamatos színátmenettel) A Texas Instruments Stellaris Launchpad kártya tartalmaz egy RGB LED-et, amelyet a három színkomponens arányainak megválasztásával tetszés szerinti színre be tudjuk állítani (additív színkeverés). yellow magenta cyan A folyamatos színátmenet biztosításához analóg kimenetekkel kellene vezérelni a LED-eket. Ennek híján a kimenetek gyors fel- és lekapcsolgatásával és a kitöltési tényező változtatásával tudjuk a folyamatosság látszatát.kelteni. Ennek a technikának impulzus-szélesség moduláció (angol nevének rövidítésével: PWM). 6

float RGB1[3], RGB2[3], INC[3], float SUM; int red, green, blue; void setup() { //--- Kiindulási színek generálása, véletlenszerűen randomseed(analogread(0)); for (int x=0; x<3; x++) { RGB1[x] = random(256); RGB2[x] = random(256); void loop() { //--- Az 1. színből a 2. színbe történő átmenet lépéseinek meghatározása for (int x=0; x<3; x++) { INC[x] = (RGB1[x] - RGB2[x]) / 256; for (int s=0; s<256; s++) { red = int(rgb1[0]); green = int(rgb1[1]); blue = int(rgb1[2]); //--- A közelítő szín kijelzése analogwrite (RED_LED, red); analogwrite (GREEN_LED, green); analogwrite (BLUE_LED, blue); delay(20); for (int x=0; x<3; x++) { RGB1[x] -= INC[x]; //Közelítünk a másik színhez do { //--- Új színt konstruálunk, véletlen számok generálásával SUM = 0; for (int x=0; x<3; x++) { RGB2[x] = random(956)-700; RGB2[x] = constrain(rgb2[x], 0, 255); SUM += RGB2[x]; while(sum < 300); //Nem engedjük túlságosan elsötétedni 7

Színes 1.8 TFT képernyő vezérlése Eredetileg az Arduino kártyához készült programkönyvtár kis módosítással más kártyához is felhasználható. A graphicstest_highspeed demó a képernyű grafikus képességeiből mutat ízelítőt. A program az Energia fejlesztői környezetben, a Stellaris Launchpad kártyára fordítható le. Az ST7735R vezérlővel ellátott 1.8 méretű kijelző modul fontosabb paraméterei: Felbontás: 128x160 Jelszint: 3.3 vagy 5 V Tápfeszültség: 5 V Illesztőfelület: SPI (szinkron soros) Periféria: SD kártya foglalalat HIVATKOZÁSOK 1.8 LCD kijelző: http://www.ebay.com/sch/?_nkw=1.8%22%20l CD%20Arduino%20SD%20card http://www.adafruit.com/products/358 Stellaris Launchpad kártya: http://processors.wiki.ti.com/index.php/getting _Started_with_the_Stellaris_EK- LM4F120XL_LaunchPad_Workshop Adafruit ST7735 Library: https://github.com/adafruit/adafruit-st7735- Library Energia port of Adafruit_ST7735 Library: http://forum.stellarisiti.com/topic/590-energialibrary-port-of-adafruit-gfx-and-adafruit-st7735/ 8

Hőmérséklet és relatív páratartalom mérése A méréshez az Aosong AM2302/DHT22 szenzort használjuk, melynek digitális kimenőjelét a Gadet Renesas gyártmányú, 32 bites RX63N mikrovezérlővel ellátott Sakura kártya fogadja és továbbítja a számítógépre USB kapcsolaton keresztül. Az adatokat a PC-n futó Processing/Java alkalmazás megjeleníti és kívánságra naplózza. A SAKURA KÁRTYA FŐBB JELLEMZŐI Mikrovezérlő : RX63N(R5F563NBDDFP) Tápfeszültség : 3.3V Órajel frekvencia : 96MHz Digitális ki/bemenet : 55 db Analog bemenetek : 16 db Flash Memória: 1MB RAM : 128KB USB: eszköz vagy hoszt SD/MMC mikro kártyaolvasó Ethernet: 100 mbit (RJ-45) Arduino kompatibilis csatlakozók AZ AM2302 SZENZOR FŐBB JELLEMZŐI Felbontás: hőmérséklet 0.1 ⁰C és rel. páratartalom 0.1 % Kommunikáció: 1-wire, nem szabványos protokol, 4 bájt adat + 1 bájt ellenőrző összeg. Mintavételezési gyakoriság: 2 másodpercenként Tápeszültség: 3,5 5.5 V Áramfelvétel: átlagosan 0.5 ma HIVATKOZÁSOK AM2302 adatlap: www.aosong.com Adafruit DHT sensor library: https://github.com/adafruit/dht-sensor-library Gadget Renesas (Sakura kártya): www.renesas.com/products/promotion/gr/index.jsp Sakura Web Compiler: http://tool-cloud.renesas.com Processing fejlesztői környzet: www.processing.org Temperature/relative humidity logger project: http://embedded-lab.com/blog/?p=5453 9

Az AMICUS egy Ingyenes és korlátozás nélküli BASIC fordító és integrált fejlesztői környezet Microchip PIC18F25K20 és PIC18F25K22 mikrovezérlőkhöz. Az Amicus18 kártya készen is kapható, de az egyszerű kapcsolás házilag is összeállítható. A mikrovezérlőn kívül csak egy USB-UART átalakítóra lesz szükségünk. A PIC18F25K22 mikrovezérlő előnyös tulajdonsága, hogy 3,3 V-os és 5 V-os tápfeszültségen is működőképes (egyszerűbb az illeszkedés a különféle szenzorokhoz). Főbb jellemzők: 8 bites adatút, 16 MIPS sebesség, 32 kb programmemória, RAM 1536 bájt, EEPROM 256 bájt, 3 db 8bites, 4 db 16 bites időzítő/számláló, 5 db Captur/Compare/PWM csatorna. Programbetöltés: DS30 bootloaderrel (nem kell programozó készüléket venni) Mintapélda: egyszerű LED villogtató program ' Flash an LED connected to RB4 Device = 18F25K22 While 1 = 1 ' Create an endless loop High RB4 ' Illuminate the LED connected to bit-0 of PortB DelayMS 250 ' Wait for half a second Low RB4 ' Extinguish the LED connected To bit-0 of PortB DelayMS 250 ' Wait for half a second Wend Mintapélda: Soros kommunikáció a PC-vel (Hello World) ' Transmit text serially (RS232) from the Amicus18 board ' ' View the results on the serial terminal set to 9600 baud 8N1 ' Device = 18F25K22 While 1 = 1 ' Create an endless loop HRSOut "Hello World",13 ' Transmit the text followed by a carriage return DelayMS 1000 ' Wait one second. i.e. 1000 MilliSeconds Wend 10