boolean motoros_szelep_vegallas_el = true; boolean serial_adatok_kikuldese = true; // ************ Hőmérséklet érzékelők Dallasos!!!!

Méret: px
Mutatás kezdődik a ... oldaltól:

Download "boolean motoros_szelep_vegallas_el = true; boolean serial_adatok_kikuldese = true; // ************ Hőmérséklet érzékelők Dallasos!!!!"

Átírás

1 #include <Arduino.h> #include <OneWire.h> #include <DallasTemperature.h> #include <Wire.h> #include <LCD.h> #include <LiquidCrystal_I2C.h> #include <Bounce2.h> boolean motoros_szelep_vegallas_el = true; boolean serial_adatok_kikuldese = true; // ************ Hőmérséklet érzékelők Dallasos!!!! ************ #define ONE_WIRE_BUS 3 #define NumberOfDevices 9 // Dallasos hőmérők adatportja // Hőmérők száma //Relék beállításai #define RELAY_ON 0 #define RELAY_OFF 1 #define Relay_1 4 // kazán szivattyú relay no 4 IN4 Arduino Digital I/O pin numbers #define Relay_2 5 // radiátor szivattyú relay no 3 IN3 #define Relay_3 7 // szelep nyit relay no 2 IN2 #define Relay_4 6 // szelep zár relay no 1 IN1 // ************ Gombok ************ #define BUTTON_PIN_1 9 #define BUTTON_PIN_2 10 // Array holding all Device Address arrays. OneWire onewire(one_wire_bus); OneWire devices DallasTemperature sensors(&onewire); // Setup a onewire instance to communicate with any // Pass our onewire reference to Dallas Temperature. // Device Addresses are 8-element byte arrays. byte alladdress [NumberOfDevices][9] = { { 0x28, 0x28, 0xDE, 0x5B, 0x06, 0x00, 0x00, 0x68, { 0x28, 0x98, 0x33, 0x5D, 0x06, 0x00, 0x00, 0x50, { 0x28, 0x67, 0xDF, 0x5C, 0x06, 0x00, 0x00, 0x72, { 0x28, 0xF8, 0x49, 0x5D, 0x06, 0x00, 0x00, 0x43, { 0x28, 0x49, 0x25, 0x5D, 0x06, 0x00, 0x00, 0x43, { 0x28, 0x99, 0x22, 0x5C, 0x06, 0x00, 0x00, 0x59, { 0x28, 0x3E, 0x2C, 0x5C, 0x06, 0x00, 0x00, 0x22, { 0x28, 0xF0, 0x08, 0x5C, 0x06, 0x00, 0x00, 0x49, { 0x28, 0x16, 0x0C, 0x5D, 0x06, 0x00, 0x00, 0x42 //, // { 0x28, 0x2C, 0x11, 0x5D, 0x06, 0x00, 0x00, 0xF0 // tartalék 10. elem ; byte DS18B20resolution [NumberOfDevices] = { 11, 10, 10, 10, 10, 10, 10, 10, 10 ; //felbontás // ************ LCD I2c alapadatok ************ // #define I2C_ADDR 0x27 // <<----- Add your address here. Find it from I2C Scanner #define BACKLIGHT_PIN 3 #define En_pin 2 #define Rw_pin 1 #define Rs_pin 0 #define D4_pin 4 #define D5_pin 5 #define D6_pin 6 #define D7_pin 7

2 LiquidCrystal_I2C lcd(i2c_addr,en_pin,rw_pin,rs_pin,d4_pin,d5_pin,d6_pin,d7_pin); // initialize the library with the numbers of the interface pins // LiquidCrystal lcd(12, 11, 5, 4, 3, 2); sok pines lcd // LCD háttérvilágítás - ha kell!!!! //int backlight = 13; // pin 13 will control the backlight // ************ Gombok ************ Bounce debouncer1 = Bounce(); Bounce debouncer2 = Bounce(); /* // próba beálítások #define kazan_melegedes 3 // kazán melegszik - ég a tűz (a kazán kilépő és visszatérő közti különbség) #define kazan_melegedes_hiszterezis 1 #define kazan_meleg #define kazan_meleg_hiszterezis 1 #define kazan_forro #define kazan_forro_hiszterezis 1 22 // kazán elérte a fűtőhőfokot (kb ESBE védőszelep) 28 // kazán túlhevülés #define futoviz_elmeleti_min 15 // fűtővíz elméleti minimum (ha ennél alacsonyabb, akkor nem kell fűteni) #define futoviz_elmeleti_min_hiszterezis 1 #define futoviz_valos_kazan semmit (feltéve ha a puffer is hideg)) #define futoviz_valos_kazan_hiszterezis 1 22 // kazán hőmérséklet (ha hideg a kazán, akkor nem kell indítani #define futoviz_valos_puff -77 // Puffer hőmérséklet (ha hideg a puffer, akkor nem kell indítani semmit (feltéve ha a kazán is hideg)) (-127*2+23)/3 #define futoviz_valos_puff_hiszterezis 1 // próba beálítás vége */ // Éles beállítás #define kazan_melegedes 5 // kazán melegszik - ég a tűz (a kazán kilépő és visszatérő közti különbség) #define kazan_melegedes_hiszterezis 2 #define kazan_meleg 45 // kazán elérte a fűtőhőfokot (kb ESBE védőszelep) #define kazan_meleg_hiszterezis 3 #define kazan_forro 92 // kazán túlhevülés #define kazan_forro_hiszterezis 3 #define futoviz_elmeleti_min 30 // fűtővíz elméleti minimum (ha ennél alacsonyabb, akkor nem kell fűteni) #define futoviz_elmeleti_min_hiszterezis 2 #define futoviz_valos_kazan 46 // kazán hőmérséklet (ha hideg a kazán, akkor nem kell indítani semmit (feltéve ha a puffer is hideg)) #define futoviz_valos_kazan_hiszterezis 3 #define futoviz_valos_puff 30 // Puffer hőmérséklet (ha hideg a puffer, akkor nem indítani semmit (feltéve ha a kazán is hideg)) #define futoviz_valos_puff_hiszterezis 2 // Éles beállítás vége

3 #define szelep_beavatkozas_min 1000 // szelep beavatkozás #define szelep_beavatkozas_max 3000 #define szelep_varakozas_min 6000 #define szelep_varakozas_max #define homerseklet_elteres_max 10 // hőmérséklet eltérés (a min és a max közt arányos változik az útidő és a várakozási idő) #define homerseklet_elteres_min 2.5 // ez alatt nincs beavatkozás #define szelep_utido // szelep útideje ms-ban (120sec az ESBE ARA 661). Ha ezt meghaladja (120sec + bizt), akkor nem kell mozognia a szelepnek #define szelep_utido_d_biztonsag // biztonsági idő - ennyi túlmozgás után lesz végállásban a szelep a program szerint #define szelep_utido_d_bizt_elso 0 // az induláskori túllendülés biztonsági szorzója - valószínűleg nem kell, mivel a szelep egy közbülső állása a biztonság javára téved #define hiba_hideg_tagtartaly_hom #define hiba_futes_elmaradas_hom #define hiba_futes_magas_hom 2 // +2 C alatt már hidegnek számít, fagyveszélyes -5 // -5 C eltérés esetén hibás a hőmérséklet - alulfűtés +5 // 5 C eltérés esetén hibás a hőmérséklet - túlfűtés float meredekseg_szelep_mozgas_ido ; float meredekseg_szelep_varakozasi_ido ; boolean szivattyu_kazan_do = false; // szivattyú jel kazánköri boolean szivattyu_radiator_do = false; // szivattyú jel radiátorköri boolean motoros_szelep_zarasban = false; boolean motoros_szelep_nyitasban = false; boolean kazan_tulhevules_flag = false; // segédváltozó túlhevülés hiszteréziséhez boolean kazan_melegedes_flag = false; // segédváltozó kazánmelegedés hiszteréziséhez (visszatérő kisebb mint az előremenő) boolean kazan_meleg_flag = false; // segédváltozó kazánmeleg hiszteréziséhez (előremenő > (40~50C) ) boolean futeni_kell_flag = false; // segédváltozó elmeleti radiátor hőmérséklethez (kell-e fűteni, vagy sem) boolean van_melegviz_flag = false; // segédváltozó fűtővíz hőmérséklethez (van-, vagy nincs melegvíz a rendszerben unsigned int szamitott_szelep_mozgas_ido = 0; // szelep mozgásidő ms-ban (1000ms=1sec) unsigned int szamitott_szelep_varakozas_ido = 0; // szelep várakozasidő ms-ban (1000ms=1sec) byte szamitott_szelep_irany = 0; // 0 - nincs mozgas, 1 - nyit, 2 - zár long szamitott_szelep_mozgas_ido_ossz = 0; // összesített szelep mozgásidő ms-ban (1000ms=1sec) - negatív is lehet boolean szamitott_szelep_allas_elkezdodott = false ; boolean szelep_a_vegallasban = false ; float szamitott_szelep_allas = 999; // becsült szelepállás %-ban - csak akkor nullázódik, ha eléri a max szelep utidő + bizt értéket - a kezdeti állapot csak egy jelzőszám - tehát 999% = nincs adat byte szamitott_szelep_irany_utolso = 0; // utolsó szelepmozgás iránya 0 - nincs mozgas, 1 - nyit, 2 - zár byte loop_position = 0; // 0 - kezdet, 1 - szelepmozgás, 2 - várakozás unsigned long last_action_time; unsigned long next_action_time; //boolean gomb_lenyomva_volt = true; // kezdeti LCD világosítás boolean lcd_vilagit = false; unsigned long elsotetedesi_ido = 0; #define vilagitasi_ido // lcd világítási idő egy gomb megnyomása után ms-ban String homerseklet_szenzorok_beolvasasa_sikeres = " " ; int loop_print_position = 0; // hőmérsékletek és flagek kiírása az LCD kijelzőre

4 segédszám boolean button_pressed = true ; // hogy ne változzon gyorsan a kijelző, egy gomb nyomvatartás figyelés van beépítve. Induláskor mintha lenne egy gombnyomás float homerseklet [11] ; // hőmérsékletek értékei (0-10-ig terjed a skála) float gorbe_szamitas_s = 1.5 ; float gorbe_szamitas_dy = 0 ; int analogin_probauzem_map [2][5] = { { -20, 15, 15, 15, 15, { 30, 105, 105, 105, 105 ; int analogin_gorbe_alapadatok [3][2] = { // S = 0,2-3 ; dy = -10 -> +10 ; AI 4 és AI5 // 1. görbe meredekség // 2. eltolás (10-zel el van osztva a számítás előtt, ezért itt 10-zel kell szorozni - az int miatt) { 2, -100, { 30, 100, { 3, 2 // analog pin bemenet!!! ; #define analog_mintavetel 10 //Hányszor olvassa be az analog ponen az értékeket. Analog in oversample char buffer[16]; // make sure this is large enough for the largest string it must hold - LCD kijelző max 16 karakter //Az LCD kijelzőn lévő adatok 1. sorát (megnevezés) progmem-ként használom, mert különben efogy a memória. 180 szabad byte alatt bizonytalan a program működése #define count_homeronev 11 prog_char homeronev_str_0[] PROGMEM = "t elmeleti"; // "homeronev_str 0" etc are homeronev_strs to store - change to suit. prog_char homeronev_str_1[] PROGMEM = "t kulso"; prog_char homeronev_str_2[] PROGMEM = "t kazan elore"; prog_char homeronev_str_3[] PROGMEM = "t rad elore"; prog_char homeronev_str_4[] PROGMEM = "t kazan vissza"; prog_char homeronev_str_5[] PROGMEM = "t puffer teteje"; prog_char homeronev_str_6[] PROGMEM = "t puffer kozepe"; prog_char homeronev_str_7[] PROGMEM = "t puffer alja"; prog_char homeronev_str_8[] PROGMEM = "t rad vissza"; prog_char homeronev_str_9[] PROGMEM = "t tagulasi"; prog_char homeronev_str_10[] PROGMEM = "t puffer atlag"; #define count_flags 10 prog_char flags_str_0[] PROGMEM = "Kazan sziv megy?"; // "flags_str 0" etc are flags_strs to store - change to suit. prog_char flags_str_1[] PROGMEM = "Rad. sziv megy?"; prog_char flags_str_2[] PROGMEM = "Mot szelep nyit?"; prog_char flags_str_3[] PROGMEM = "Mot szelep zar?"; prog_char flags_str_4[] PROGMEM = "Kazan tulhevul?"; prog_char flags_str_5[] PROGMEM = "Kazan melegszik?"; prog_char flags_str_6[] PROGMEM = "Kazan meleg?"; prog_char flags_str_7[] PROGMEM = "Futes igeny van?"; prog_char flags_str_8[] PROGMEM = "Melegviz van?"; prog_char flags_str_9[] PROGMEM = "Szelep vegallas?"; #define count_hibanev 4 prog_char hibanev_str_0[] PROGMEM = "Fagyveszely"; // "hibanev_str 0" etc are hibanev_strs to store - change to suit. prog_char hibanev_str_1[] PROGMEM = "Kazan forras"; prog_char hibanev_str_2[] PROGMEM = "Elmaradas"; prog_char hibanev_str_3[] PROGMEM = "Tulfutes";

5 #define count_maradek_kiiras 11 prog_char maradekadat_str_0[] PROGMEM = "Gorbe meredekseg"; // "maradekadat_str 0" etc are maradekadat_strs to store - change to suit. prog_char maradekadat_str_1[] PROGMEM = "Gorbe eltolas"; prog_char maradekadat_str_2[] PROGMEM = "Homers szenzorok"; prog_char maradekadat_str_3[] PROGMEM = "Szelepirany"; prog_char maradekadat_str_4[] PROGMEM = "Szelep mozgasido"; prog_char maradekadat_str_5[] PROGMEM = "Szelep allasido"; prog_char maradekadat_str_6[] PROGMEM = "Szelepallas"; prog_char maradekadat_str_7[] PROGMEM = "Szelep mozg ido"; prog_char maradekadat_str_8[] PROGMEM = "Ido"; prog_char maradekadat_str_9[] PROGMEM = "Kov.beavatk."; prog_char maradekadat_str_10[] PROGMEM = "Szabad memoria"; PROGMEM const char *hibanev_string_table[] = { hibanev_str_0, hibanev_str_1, hibanev_str_2, hibanev_str_3 ; PROGMEM const char *homeronev_string_table[] = { homeronev_str_0, homeronev_str_1, homeronev_str_2, homeronev_str_3, homeronev_str_4, homeronev_str_5, homeronev_str_6, homeronev_str_7, homeronev_str_8, homeronev_str_9, homeronev_str_10 ; PROGMEM const char *flags_string_table[] = { flags_str_0, flags_str_1, flags_str_2, flags_str_3, flags_str_4, flags_str_5, flags_str_6, flags_str_7, flags_str_8, flags_str_9 ; PROGMEM const char *maradekadat_string_table[] = { maradekadat_str_0, maradekadat_str_1, maradekadat_str_2, maradekadat_str_3, maradekadat_str_4, maradekadat_str_5, maradekadat_str_6, maradekadat_str_7, maradekadat_str_8,

6 maradekadat_str_9, maradekadat_str_10 ; boolean aktualis_hiba [count_hibanev] = { false, false, false, false ; void lcd_aktualis_adat_inc() { loop_print_position += 1; if (loop_print_position >= count_homeronev + count_hibanev + count_flags + count_maradek_kiiras) { loop_print_position = 0; void lcd_aktualis_adat_dec() { loop_print_position -= 1; if (loop_print_position == -1) { loop_print_position = count_homeronev + count_hibanev + count_flags + count_maradek_kiiras - 1; void print_adatok () { if (serial_adatok_kikuldese) { serial_prints(); // ez csak tesztelési célra kell - a program elején van definiálva, hogy kell-e a serial_adatok_kikuldese lcd.clear(); lcd.setcursor(0,0); // ez valószínű nem kell a clear() után lcd.print (LCD_get_string_1(loop_print_position)); lcd.setcursor(0,1); lcd.print (LCD_get_string_2(loop_print_position)); // centigrade jele + C kiírása a hőmérsékletekhez!!! -> C if (loop_print_position < count_homeronev) { lcd.write(223); // - jele - WRITE!!! és nem print lcd.print ("C"); void LCD_kivilagit () { elsotetedesi_ido = millis() + vilagitasi_ido; // következő elsötétedés időpontja - Ha pont az 50.nap-on történik a millis() túlcsordulási idejében, akkor azonnal elfog elsötétedni a képernyő lcd.setbacklight(high); lcd_vilagit = true; void LCD_elsotetul () { lcd.setbacklight(low); lcd_vilagit = false; void setup() { lcd.begin(16, 2); // ez a sokpines és az I2C-s lcd-nél is ugyanaz!!! lcd.setbacklightpin(backlight_pin,positive); // háttérvilágítás inicializálása LCD_kivilagit(); Serial.begin(115200);

7 // Setup the button with an internal pull-up : pinmode(button_pin_1,input_pullup); pinmode(button_pin_2,input_pullup); // After setting up the button, setup the Bounce instance : debouncer1.attach(button_pin_1); debouncer2.attach(button_pin_2); debouncer1.interval(100); // interval in ms debouncer2.interval(100); // interval in ms // meredkség számítása szelep mozgásidőhöz és várakozási időhöz - az egyszerűség kedvéért // mozgásidő emelkedő, várakozási idő csökkenő (negatív) meredekseg_szelep_mozgas_ido = (szelep_beavatkozas_max - szelep_beavatkozas_min) / (homerseklet_elteres_max - homerseklet_elteres_min) ; meredekseg_szelep_varakozasi_ido = (szelep_varakozas_max - szelep_varakozas_min) / (homerseklet_elteres_max - homerseklet_elteres_min) ; gorbe_potmeterek_beolvasasa; sensors.begin(); /* totaldevices = discoveronewiredevices(); // get addresses of our one wire devices into alladdress array for (byte i=0; i < totaldevices; i++) sensors.setresolution(alladdress[i], 10); */ for (byte i=0; i < NumberOfDevices; i++) sensors.setresolution(alladdress[i], DS18B20resolution[i]); // and set the a to d conversion resolution of each. // To avoid unwanted startings of pumps or valve // Usually (and this practical) 4 relays board is ACTIVE LOW // ( Initialize Pins so relays are inactive at reset)---- digitalwrite(relay_1, RELAY_OFF); digitalwrite(relay_2, RELAY_OFF); digitalwrite(relay_3, RELAY_OFF); digitalwrite(relay_4, RELAY_OFF); //delay(4000); //Check that all relays are inactive at Reset //---( THEN set pins as outputs )---- pinmode(relay_1, OUTPUT); pinmode(relay_2, OUTPUT); pinmode(relay_3, OUTPUT); pinmode(relay_4, OUTPUT); // delay(4000); //Check that all relays are inactive at Reset /* Dallasos hőmérők DS18B20 címeinek kiírása */ //Jó más OneWire alkatrészekhez is /* byte discoveronewiredevices() { byte j=0; // search for one wire devices and // copy to device address arrays. while ((j < NumberOfDevices) && (onewire.search(alladdress[j]))) { j++; for (byte i=0; i < j; i++) { Serial.print("Device "); Serial.print(i); Serial.print(": "); printaddress(alladdress[i]); // print address from each device address arry.

8 Serial.print("\r\n"); return j ; // return total number of devices found. */ /* void printaddress(deviceaddress addr) { byte i; for ( i=0; i < 8; i++) { // prefix the printout with 0x Serial.print("0x"); if (addr[i] < 16) { Serial.print('0'); // add a leading '0' if required. Serial.print(addr[i], HEX); // print the actual value in HEX if (i < 7) { Serial.print(", "); Serial.print("\r\n"); */ // Ez nem kell!!! void printtemperature(deviceaddress addr) { float tempc = sensors.gettempc(addr); // read the device at addr. if (tempc == ) { Serial.print("Error getting temperature"); Serial.print(printFloat(tempC, 1)); // and print its value. Serial.print(" C ("); /* Serial.print(DallasTemperature::toFahrenheit(tempC)); Serial.print(" F)"); */ void homerseklet_beolvasas () { sensors.requesttemperatures(); // Initiate temperature request to all devices homerseklet_szenzorok_beolvasasa_sikeres =""; for (byte i=0; i < NumberOfDevices; i++) { homerseklet [i+1] = sensors.gettempc(alladdress[i]);// A 0. az elméleti radiátor előremenő!!! if (homerseklet [i+1] > -125 ) { // Ha az érték -127, akkor nem sikerült lekérdezni a hőmérsékletet! homerseklet_szenzorok_beolvasasa_sikeres += "+"; homerseklet_szenzorok_beolvasasa_sikeres += "-"; void gorbe_potmeterek_beolvasasa () { for (byte i=0; i < 2; i++) { float sum_analogin = 0; float analogin; for (byte j=0; j < analog_mintavetel ; j++) { analogin = analogread(analogin_gorbe_alapadatok[2][i]); sum_analogin += (float)analogin; analogin = sum_analogin / (float)analog_mintavetel ; // +0.5 nem kell, mert nagyon kicsit befolyásol if (i==0) {

9 gorbe_szamitas_s = map ((int)analogin, 0, 1023, analogin_gorbe_alapadatok[0][i], analogin_gorbe_alapadatok[1][i]); gorbe_szamitas_s = gorbe_szamitas_s / 10; if (i==1) { gorbe_szamitas_dy = map ((int)analogin, 0, 1023, analogin_gorbe_alapadatok[0][i], analogin_gorbe_alapadatok[1][i]); gorbe_szamitas_dy = gorbe_szamitas_dy / 10; /* Serial.print(i); Serial.print(' - '); Serial.println(sum_analogin); */ void homerseklet_beolvasas_probauzem () { // CSAK TESZTELÉSI CÉLLAL - 5 DB POTMETER HŐMÉRŐK HELYETTESÍTÉSÉHEZ // read the input on analog pins: for (byte i=0; i <= 4; i++) { int analogin = analogread(i); homerseklet [i+1] = map (analogin, 0, 1023, analogin_probauzem_map[0][i] * 10, analogin_probauzem_map[1][i] * 10); homerseklet [i+1] = homerseklet [i+1] / 10; homerseklet[6] = 50; homerseklet[7] = 50; homerseklet[8] = 33; homerseklet[9] = 5; homerseklet_szenzorok_beolvasasa_sikeres =""; for (byte i=0; i < NumberOfDevices; i++) { if (homerseklet [i+1] > -125 ) { // Ha az érték -127, akkor nem sikerült lekérdezni a hőmérsékletet! homerseklet_szenzorok_beolvasasa_sikeres += "+"; homerseklet_szenzorok_beolvasasa_sikeres += "-"; // A 0. az elméleti radiátor előremenő!!! // Serial.println(sensorValue); //delay(1); // delay in between reads for stability String LCD_get_string_1 (int print_pos) { String kijelzo; if (print_pos < count_homeronev) { strcpy_p(buffer, (char*)pgm_read_word(&(homeronev_string_table[print_pos]))); kijelzo = buffer; if ( (print_pos >= count_homeronev) && (print_pos < (count_homeronev + count_flags))) { strcpy_p(buffer, (char*)pgm_read_word(&(flags_string_table[print_pos - count_homeronev ]))); kijelzo = buffer; // kijelzo = flags[print_pos - count_homeronev]; if ( print_pos >= (count_homeronev + count_flags) && print_pos < (count_homeronev +

10 count_flags + count_hibanev)) { strcpy_p(buffer, (char*)pgm_read_word(&(hibanev_string_table[print_pos - count_homeronev - count_flags ]))); kijelzo = buffer; // kijelzo = aktualis_hiba_megnevezese[print_pos - count_homeronev - count_flags]; if ( print_pos >= (count_homeronev + count_flags + count_hibanev) && print_pos < (count_homeronev + count_flags + count_hibanev + count_maradek_kiiras)) { strcpy_p(buffer, (char*)pgm_read_word(&(maradekadat_string_table[print_pos - count_homeronev - count_flags - count_hibanev]))); kijelzo = buffer; // kijelzo = maradek_adat_megnevezese[print_pos - count_homeronev - count_flags -count_hibanev]; return kijelzo; String igen_nem (boolean boo) { if (boo) { return "igen"; else { return "nem"; String LCD_get_string_2 (int print_pos) { String kijelzo; char grade_sign = 223; // jele ASCII-ben if (print_pos < count_homeronev) { kijelzo = printfloat(homerseklet[print_pos], 1); // e tizedesjegy pontosságú mindegyik if ( print_pos >= count_homeronev && print_pos < (count_homeronev + count_flags)) { switch (print_pos - count_homeronev) { case 0: kijelzo = igen_nem (szivattyu_kazan_do); case 1: kijelzo = igen_nem (szivattyu_radiator_do); case 2: kijelzo = igen_nem (motoros_szelep_nyitasban); case 3: kijelzo = igen_nem (motoros_szelep_zarasban); case 4: kijelzo = igen_nem (kazan_tulhevules_flag); case 5: kijelzo = igen_nem (kazan_melegedes_flag); case 6: kijelzo = igen_nem (kazan_meleg_flag);

11 case 7: kijelzo = igen_nem (futeni_kell_flag); case 8: kijelzo = igen_nem (van_melegviz_flag); case 9: kijelzo = igen_nem (szelep_a_vegallasban); default: // if nothing else matches, do the default // default is optional kijelzo = "???"; ; if ( print_pos >= (count_homeronev + count_flags) && print_pos < (count_homeronev + count_flags + count_hibanev)) { // kijelzo = aktualis_hiba_megnevezese[print_pos - count_homeronev - count_flags]; if (aktualis_hiba[print_pos - count_homeronev - count_flags]) { kijelzo = "fenn all"; kijelzo = "nem all fenn"; if ( print_pos >= (count_homeronev + count_flags + count_hibanev) && print_pos < (count_homeronev + count_flags + count_hibanev + count_maradek_kiiras)) { // kijelzo = maradek_adat_megnevezese[print_pos - count_homeronev - count_flags]-count_hibanev]; switch (print_pos - count_homeronev-count_flags - count_hibanev) { case 0: kijelzo = printfloat(gorbe_szamitas_s,1); case 1: kijelzo = printfloat(gorbe_szamitas_dy,1); case 2: kijelzo = homerseklet_szenzorok_beolvasasa_sikeres; case 3: if (szamitott_szelep_irany == 0) { kijelzo = "Nincs"; else if (szamitott_szelep_irany == 1) { kijelzo = "NYIT"; kijelzo = "ZAR"; case 4: kijelzo = printfloat((float)szamitott_szelep_mozgas_ido / 1000,1) + " sec"; case 5: kijelzo = printfloat((float)szamitott_szelep_varakozas_ido / 1000,1) + " sec"; case 6:

12 kijelzo = printfloat(szamitott_szelep_allas,0) + " %"; case 7: kijelzo = printfloat((float)szamitott_szelep_mozgas_ido_ossz / 1000,1) + " sec"; case 8: kijelzo = printfloat((float) millis() / 1000, 1) + " sec" ; case 9: kijelzo = printfloat((float) next_action_time / 1000, 1) + " sec" ; case 10: kijelzo = String(freeRam()) + " byte"; default: kijelzo = "???"; return kijelzo; void homerseklet_szamitasok() { //t5 * 40% + t6 * 35% + t7 * 25% = puffer hőmérséklete (arányok a puffer hőmérők eloszlása alapján) // Bernáth Róbert által megadott képlet diagramból //t0 = 0.74 * pow(s * (20-t1) * 5.26, 0.77 ) + 20 // elméleti hőmérséklet kiszámítása if (homerseklet[1] < 20) { // külső hőmérséklettel kapcsolatos! homerseklet[0] = 0.74 * pow( gorbe_szamitas_s * (20-homerseklet[1]) * 5.26, 0.77 ) gorbe_szamitas_dy ; // fűtési görbe számítása radiátoros fűtéshez homerseklet[0] = 20 + gorbe_szamitas_dy ; // belső hőmérséklettel kapcsolatos! // puffer átlaghőmérséklet homerseklet[10] = homerseklet[5] * homerseklet[6] * homerseklet[7] * 0.25; // puffer közepes hőmérséklet számítása void loop() { switch (loop_position) { case 0: // hőmérsékletek beolvasása, számítások elvégzése, szivattyúk, szelepek beállítása homerseklet_beolvasas (); // DS18B20 hőmérők //homerseklet_beolvasas_probauzem();// próbaüzem 5db analóg potmeter hőmérő helyett homerseklet_szamitasok(); szivattyu_logika(); // először van a szivattyú logika, utána a szelepmozgás, mert ha nem megy a radiátoros szivattyú, akkor a motoros szelepnek sem kell működnie szelep_mozgas_szamitasa(); hibajegyzek_feltoltese (); set_relays(); //relé kimenetek beállítása

13 loop_position = 1; next_action_time = millis() + szamitott_szelep_mozgas_ido; if (next_action_time < szamitott_szelep_mozgas_ido ) { // ha túlcsordul az idő számláló, akkor hagyjon ki egy "ütemet" ~50 naponként fordul elő + az induláskor!!! delay(szamitott_szelep_mozgas_ido + szamitott_szelep_varakozas_ido); if (lcd_vilagit) { gorbe_potmeterek_beolvasasa(); // kiíráskor mutassa meg a potméterek értékét // mindig egy kicsit más az ellenállás értéke a potméternek, ezért csak akkor kerül beolvasásra, ha az LCD világít print_adatok(); /* if ( millis() > szamitott_szelep_mozgas_ido) { // ez a feltétel az induláskor kell. Enélkül a szelep ki-be kapcsolgatna, ameddig el nem telik a szamitott_szelep_mozgas_ido -nyi idő loop_position = 1; last_action_time = millis(); next_action_time = millis() + szamitott_szelep_mozgas_ido; serial_prints(); */ case 1: // szelep beavatkozási idő vége, szelepek leállítása if (millis() > next_action_time) { motoros_szelep_nyitasban = false; motoros_szelep_zarasban = false; loop_position = 2; next_action_time = millis() + szamitott_szelep_varakozas_ido; set_relays(); //relé kimenetek beállítása print_adatok(); ; case 2: // várakozás vége, mehet a ciklus elejére if (millis() > next_action_time) { loop_position = 0; //last_action_time = millis(); ; default: // ez üres, ide sohasem juthat el a pogram ; // if nothing else matches, do the default // default is optional //// Gombnyomások figyelése // Get the updated value : debouncer2.update(); int value2 = debouncer2.read(); debouncer1.update(); int value1 = debouncer1.read();

14 if ( (value1 == LOW value2 == LOW)) { // valamelyik gomb megnyomása if (!button_pressed) { // ha még nem volt nyomva gomb, akkor értékek állítása, kiírása if (lcd_vilagit) { if ( value1 == LOW ) { lcd_aktualis_adat_inc(); if ( value2 == LOW ) { lcd_aktualis_adat_dec(); print_adatok(); button_pressed = true; LCD_kivilagit(); // nincs gomb megnyomva button_pressed = false; if (lcd_vilagit && (millis() > elsotetedesi_ido)) { LCD_elsotetul(); // delay (5); //???????????????????? Ez kell??????????????????? void hibajegyzek_feltoltese () { if ( homerseklet[9] < hiba_hideg_tagtartaly_hom ) { aktualis_hiba[0] = true; aktualis_hiba[0] = false; if ( homerseklet[2] > kazan_forro ) { aktualis_hiba[1] = true; aktualis_hiba[1] = false; if ( homerseklet[3] - homerseklet [0] < hiba_futes_elmaradas_hom ) { aktualis_hiba[2] = true; aktualis_hiba[2] = false; if ( homerseklet[3] - homerseklet [0] > hiba_futes_magas_hom ) { aktualis_hiba[3] = true; aktualis_hiba[3] = false;

15 void serial_prints() { for (byte i=0; i < count_homeronev + count_hibanev + count_flags + count_maradek_kiiras; i++) { //loop_print_position = i; Serial.print(i); Serial.print("- "); Serial.print(LCD_get_string_1(i)); Serial.print(": "); Serial.print(LCD_get_string_2(i)); Serial.print("\n\r"); void set_relays() { // example digitalwrite(relay_1, RELAY_ON);// set the Relay ON /* boolean szivattyu_kazan_do = false; // szivattyú jel kazánköri boolean szivattyu_radiator_do = false; // szivattyú jel radiátorköri boolean motoros_szelep_zarasban = false; boolean motoros_szelep_nyitasban */ if (szivattyu_kazan_do) { digitalwrite(relay_1, RELAY_ON); digitalwrite(relay_1, RELAY_OFF); if (szivattyu_radiator_do) { digitalwrite(relay_2, RELAY_ON); digitalwrite(relay_2, RELAY_OFF); if (motoros_szelep_nyitasban) { digitalwrite(relay_4, RELAY_OFF); digitalwrite(relay_3, RELAY_ON); digitalwrite(relay_3, RELAY_OFF); if (motoros_szelep_zarasban) { digitalwrite(relay_3, RELAY_OFF); digitalwrite(relay_4, RELAY_ON); digitalwrite(relay_4, RELAY_OFF); void szivattyu_logika() { // kazán szivattyú vezérlés if (kazan_tulhevules_flag) { // kazán forró, túlhevült

16 //- Ha t2 < (93C) ÉS (TÚLHEVÜLÉS FLAG magas) akkor TÚLHEVÜLÉS FLAG alacsony //Kazánköri szivattyú biztonsági indításának megszüntetése, ha a kazán hűl if (homerseklet [2] < kazan_forro ) { kazan_tulhevules_flag = false; else { //- Ha t2 > (95C) akkor 1-es szivattyú induljon + TÚLHEVÜLÉS FLAG magas //Kazánköri szivattyú biztonsági indítása, ha a kazán túlhevült. if (homerseklet [2] > (kazan_forro + kazan_forro_hiszterezis)) { kazan_tulhevules_flag = true; // túlhevülés else vége if (kazan_melegedes_flag) { // kazán melegszik, ég benne tűz //- Ha t2 < (t4 + 3C) akkor 1-es szivattyú álljon le //Kazánköri szivattyú leállítása, ha a kazán már kialudt, és esetleg a puffer alján keresztül áramlik a víz a kazán irányába if (homerseklet [2] < (homerseklet [4] + kazan_melegedes - kazan_melegedes_hiszterezis )) { kazan_melegedes_flag = false; else { //- Ha t2 > (t4 + 5C) akkor 1-es szivattyú induljon //Kazánköri szivattyú indítása, ha a kazán melegszik (van hőtermelés) if (homerseklet [2] > (homerseklet [4] + kazan_melegedes )) { kazan_melegedes_flag = true; // melegedés else vége if (kazan_meleg_flag) { // kazán meleg // - Ha t2 < 48C, akkor álljon le az 1-es szivattyú //Kazánköri szivattyú leállítása, ha hideg a víz a kazánban if (homerseklet [2] < (kazan_meleg)) { kazan_meleg_flag = false; //- Ha t2 > 50C, akkor induljon az 1-es szivattyú //Kazánköri szivattyú indítása, ha meleg a víz a kazánban if (homerseklet [2] > (kazan_meleg + kazan_meleg_hiszterezis)) { kazan_meleg_flag = true; // kazán meleg else vége if (kazan_tulhevules_flag) { szivattyu_kazan_do = true; // ha kazán túlhevült, akkor induljon a szivattyú goto kazan_szivattyu_logika_vege; else if (!kazan_melegedes_flag) { szivattyu_kazan_do = false; // ha kazán nem melegszik, csak esetleg meleg, akkor álljon le goto kazan_szivattyu_logika_vege; else if (kazan_meleg_flag) { szivattyu_kazan_do = true;

17 szivattyu_kazan_do = false; kazan_szivattyu_logika_vege: // radiátoros szivattyú vezérlés if (van_melegviz_flag) { // - Ha (t5 ÉS!!! t2 ) < 32C vagy 50 C, akkor 2-es szivattyú álljon le // Ha nincs a rendszerben melegvíz (pufferben, ÉS a kazánban), akkor álljon le a radiátoros szivattyú if ((homerseklet [5] < (futoviz_valos_puff)) && (homerseklet [2] < (futoviz_valos_kazan ))) { van_melegviz_flag = false; // - Ha (t5 VAGY!!! t2 ) > 34C vagy 53C, akkor 2-es szivattyú induljon // Ha van a rendszerben melegvíz (pufferben, VAGY a kazánban), akkor induljon a radiátoros szivattyú if ((homerseklet [5] > (futoviz_valos_puff + futoviz_valos_puff_hiszterezis)) (homerseklet [2] > (futoviz_valos_kazan + futoviz_valos_puff_hiszterezis))) { van_melegviz_flag = true; if (futeni_kell_flag) { // - Ha t0 < 32C, akkor álljon le a 2-es szivattyú // Ha kinn melegszik, akkor álljon le a radiátoros szivattyú if (homerseklet [0] < (futoviz_elmeleti_min)) { futeni_kell_flag = false; //- Ha t0 > 34C, akkor induljon a 2-es szivattyú //Ha kinn hideg van, akkor induljon a radiátoros szivattyú if (homerseklet [0] > (futoviz_elmeleti_min + futoviz_elmeleti_min_hiszterezis)) { futeni_kell_flag = true; // fűteni kell else vége if (!van_melegviz_flag) { szivattyu_radiator_do = false; // ha nincs melegvíz a rendszerben, akkor álljon le goto radiator_szivattyu_logika_vege; else if (futeni_kell_flag) { // ha futeni kell(az elméleti radiátor előremenő hőmérséklet magas), akkor induljon a szivattyú szivattyu_radiator_do = true; szivattyu_radiator_do = false; radiator_szivattyu_logika_vege: szivattyu_radiator_do = szivattyu_radiator_do; // ez kell különben hibát ír ki az ARDUINO fordító!!! // a GOTO-hoz tartozó címke után szükséges még egy utasítás - bug lehet a Compilerben 1.0.6!!!!

18 void szelep_mozgas_szamitasa() { // homerseklet [0] - elméleti előremenő hőmérséklet // homerseklet [3] - radiátor előremenő hőmérséklet float temp_diff; // szelepirány számítása temp_diff = homerseklet [0] - homerseklet [3]; //pozitív, ha elmaradás van if (temp_diff > 0) { // pozitív szamitott_szelep_irany = 1; //nyit motoros_szelep_nyitasban = true; motoros_szelep_zarasban = false; szamitott_szelep_irany = 2; //zár motoros_szelep_nyitasban = false; motoros_szelep_zarasban = true; // mozgásidő számítása temp_diff = abs(temp_diff); // már nem kell a mozgás iránya if ((temp_diff < homerseklet_elteres_min) (!szivattyu_radiator_do )) { // eltérésen belül van VAGY nem megy a radiátoros szivattyú, akkor nincs szelepmozgás //szamitott_szelep_mozgas_ido = szelep_beavatkozas_min; // ennek nincs értelme itt, mert nem mozdul a szelep szamitott_szelep_varakozas_ido = szelep_varakozas_max; szamitott_szelep_irany = 0; motoros_szelep_nyitasban = false; motoros_szelep_zarasban = false; else if (temp_diff > homerseklet_elteres_max ) { // eltérés a maximumon felül - szelep zár maximum időben, minimum várakozási idővel szamitott_szelep_mozgas_ido = szelep_beavatkozas_max; szamitott_szelep_varakozas_ido = szelep_varakozas_min; // szelepirány korábban meghatározva temp_diff = temp_diff- homerseklet_elteres_min; // itt már csak a minimum eltérés feletti idővel számolunk szamitott_szelep_mozgas_ido = szelep_beavatkozas_min + temp_diff * meredekseg_szelep_mozgas_ido; szamitott_szelep_varakozas_ido = szelep_varakozas_max - temp_diff * meredekseg_szelep_varakozasi_ido ; // szelepállás becslése //ha túllépi a biztonsági értéket, akkor végállásban már, és % érték számítása elkezdődhet int temp_indulasi_biztonsagi_tullendules = szelep_utido_d_bizt_elso ; // az első túllendülésnél egy biztonsági szorzó is bekerül if (szamitott_szelep_allas_elkezdodott) { temp_indulasi_biztonsagi_tullendules = 0; if (szamitott_szelep_mozgas_ido_ossz > (1+temp_indulasi_biztonsagi_tullendules) * szelep_utido + szelep_utido_d_biztonsag) { szelep_a_vegallasban = true;

19 szamitott_szelep_allas_elkezdodott = true; if (szamitott_szelep_mozgas_ido_ossz < (-1) * (1 + temp_indulasi_biztonsagi_tullendules) * szelep_utido - szelep_utido_d_biztonsag) { szelep_a_vegallasban = true; szamitott_szelep_allas_elkezdodott = true; // Ha megfordul a mozgás iránya, akkor kilép a végállásból if ((szamitott_szelep_irany_utolso > 0 && szamitott_szelep_irany > 0) && (szamitott_szelep_irany_utolso!= szamitott_szelep_irany)) { // ha van mozgásirány de nem egyezik if (szelep_a_vegallasban) { //szamitott_szelep_mozgas_ido_ossz = 0; szelep_a_vegallasban = false; if (szamitott_szelep_irany == 1 ) { szamitott_szelep_mozgas_ido_ossz = 0; else if (szamitott_szelep_irany == 2) { szamitott_szelep_mozgas_ido_ossz = szelep_utido; // Ha mozgásidő negatív (el van zárva a szelep), akkor nullázva a szelepállás if (szamitott_szelep_irany == 1 && szamitott_szelep_mozgas_ido_ossz <0 ){ szamitott_szelep_mozgas_ido_ossz = 0; // Ha mozgásidő nagyobb mint az útidő (nyitva van zárva a szelep), akkor a szelepállás 100 %-on, azaz az útidőn if (szamitott_szelep_irany == 2 && szamitott_szelep_mozgas_ido_ossz > szelep_utido ){ szamitott_szelep_mozgas_ido_ossz = szelep_utido; // Mozgási idő összegzése. Nyit +, Zár -!! if ((szamitott_szelep_irany_utolso == szamitott_szelep_irany) && (!szelep_a_vegallasban) && (szamitott_szelep_irany >0)) { if (szamitott_szelep_irany == 1) { szamitott_szelep_mozgas_ido_ossz += szamitott_szelep_mozgas_ido; szamitott_szelep_mozgas_ido_ossz -= szamitott_szelep_mozgas_ido; if (szamitott_szelep_allas_elkezdodott) { // ha túl van az első túllendülésen, akkor tud számolni szelepállást, és korrigálja a %-os értéket if (szamitott_szelep_mozgas_ido_ossz >= szelep_utido) { // ha az útidőn kívül van, akkor végállás szamitott_szelep_allas = 100.0; else if (szamitott_szelep_mozgas_ido_ossz < 0) { // ha az útidőn kívül van, akkor végállás szamitott_szelep_allas = 0.0;

20 szamitott_szelep_allas = (float)szamitott_szelep_mozgas_ido_ossz / (float)szelep_utido * (float)100; if (szamitott_szelep_irany >0) { szamitott_szelep_irany_utolso = szamitott_szelep_irany; // Szelep "végállás" kapcsoló - ha túl sokszor mozgott egy irányba a szelep, akkor letilt if (motoros_szelep_vegallas_el && szelep_a_vegallasban) { szamitott_szelep_varakozas_ido = szelep_varakozas_max; szamitott_szelep_irany = 0; motoros_szelep_nyitasban = false; motoros_szelep_zarasban = false; // printfloat prints out the float 'value' rounded to 'places' places after the decimal point String printfloat(float value, int places) { // this is used to cast digits int digit; float tens = 0.1; int tenscount = 0; int i; float tempfloat = value; String numberasstring=""; // make sure we round properly. this could use pow from <math.h>, but doesn't seem worth the import // if this rounding step isn't here, the value prints as // calculate rounding term d: 0.5/pow(10,places) float d = 0.5; if (value < 0) d *= -1.0; // divide by ten for each decimal place for (i = 0; i < places; i++) d/= 10.0; // this small addition, combined with truncation will round our values properly tempfloat += d; // first get value tens to be the large power of ten less than value // tenscount isn't necessary but it would be useful if you wanted to know after this how many chars the number will take if (value < 0) tempfloat *= -1.0; while ((tens * 10.0) <= tempfloat) { tens *= 10.0; tenscount += 1; // write out the negative if needed if (value < 0) // Serial.print('-'); numberasstring +="-"; if (tenscount == 0)

21 //Serial.print(0, DEC); numberasstring += "0"; for (i=0; i< tenscount; i++) { digit = (int) (tempfloat/tens); //Serial.print(digit, DEC); numberasstring += digit; tempfloat = tempfloat - ((float)digit * tens); tens /= 10.0; // if no places after decimal, stop now and return if (places <= 0) return numberasstring;; // otherwise, write the point and continue on //Serial.print('.'); numberasstring += "."; // now write out each decimal place by shifting digits one by one into the ones place and writing the truncated value for (i = 0; i < places; i++) { tempfloat *= 10.0; digit = (int) tempfloat; //Serial.print(digit,DEC); numberasstring += digit; // once written, subtract off that digit tempfloat = tempfloat - (float) digit; return numberasstring; int freeram () { extern int heap_start, * brkval; int v; return (int) &v - ( brkval == 0? (int) & heap_start : (int) brkval);

Léptetőmotorok. Előnyök: Hátrányok:

Léptetőmotorok. Előnyök: Hátrányok: Léptetőmotorok A léptetőmotorok lényeges tulajdonsága, hogy egy körülforduláshoz hány lépés szükséges. Ezt megadhatják fokban, ekkor az egy lépésre eső szögelfordulást adják meg. Illetve megadhatják az

Részletesebben

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

MSP430 programozás Energia környezetben. Nokia 5110 grafikus kijelzo vezérlése MSP430 programozás Energia környezetben Nokia 5110 grafikus kijelzo vezérlése 1 Nokia 5110 kijelző Grafikus (képpontonként vezérelhető) LCD Felbontás: 84 x 48 pont (PCD8544 kontroller) Vezérlés: SPI felület

Részletesebben

Információs Technológia

Információs Technológia Információs Technológia A C programozási nyelv (Típusok és operátorok) Fodor Attila Pannon Egyetem Műszaki Informatika Kar Villamosmérnöki és Információs Rendszerek Tanszék foa@almos.vein.hu 2010 szeptember

Részletesebben

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

MSP430 programozás Energia környezetben. Alfanumerikus LCD kijelzok MSP430 programozás Energia környezetben Alfanumerikus LCD kijelzok 1 LCD = Liquid Crystal Display (folyadékkristály kijelző) Folyadékkristály: olyan (szerves ) anyag, mely sűrű folyadéknak tekinthető,

Részletesebben

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

MSP430 programozás Energia környezetben. LED kijelzok második rész MSP430 programozás Energia környezetben LED kijelzok második rész 1 Lab13 SPI_595_7seg Egyszerű mintaprogram kétszámjegyű hétszegmenses LED kijelzővel, 74HC595 shift regiszterrel, SPI programkönyvtár használattal

Részletesebben

Széchenyi István Egyetem www.sze.hu/~herno

Széchenyi István Egyetem www.sze.hu/~herno Oldal: 1/6 A feladat során megismerkedünk a C# és a LabVIEW összekapcsolásának egy lehetőségével, pontosabban nagyon egyszerű C#- ban írt kódból fordítunk DLL-t, amit meghívunk LabVIEW-ból. Az eljárás

Részletesebben

C# gyorstalpaló. Készítette: Major Péter

C# gyorstalpaló. Készítette: Major Péter C# gyorstalpaló Készítette: Major Péter Adattípusok Logikai változó Egész szám (*: előjel nélküli) Lebegőponto s szám Típus Típusnév másképpen (egyenértékű) Helyigény (bit) Példa bool Boolean 8 (!) true,

Részletesebben

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: WS2812 RGB LED-ek vezérlése Bevezetés a mikrovezérlők programozásába: WS2812 RGB LED-ek vezérlése 1 Megjegyzések: Lab 2 projektek Neopixel_simple egy WS2812 LED beállítása előre egy megadott színre. Neopixel_random véletlen színát

Részletesebben

117. AA Megoldó Alfréd AA 117.

117. AA Megoldó Alfréd AA 117. Programozás alapjai 2. (inf.) pót-pótzárthelyi 2011.05.26. gyak. hiányzás: kzhpont: MEG123 IB.028/117. NZH:0 PZH:n Minden beadandó megoldását a feladatlapra, a feladat után írja! A megoldások során feltételezheti,

Részletesebben

C# nyelv alapjai. Krizsán Zoltán 1. Objektumorientált programozás C# alapokon tananyag. Általános Informatikai Tanszék Miskolci Egyetem

C# nyelv alapjai. Krizsán Zoltán 1. Objektumorientált programozás C# alapokon tananyag. Általános Informatikai Tanszék Miskolci Egyetem C# nyelv alapjai Krizsán Zoltán 1 Általános Informatikai Tanszék Miskolci Egyetem Objektumorientált programozás C# alapokon tananyag Tartalom Bevezetés Lokális változó Utasítások Szójáték Why do all real

Részletesebben

KN-CP50. MANUAL (p. 2) Digital compass. ANLEITUNG (s. 4) Digitaler Kompass. GEBRUIKSAANWIJZING (p. 10) Digitaal kompas

KN-CP50. MANUAL (p. 2) Digital compass. ANLEITUNG (s. 4) Digitaler Kompass. GEBRUIKSAANWIJZING (p. 10) Digitaal kompas KN-CP50 MANUAL (p. ) Digital compass ANLEITUNG (s. 4) Digitaler Kompass MODE D EMPLOI (p. 7) Boussole numérique GEBRUIKSAANWIJZING (p. 0) Digitaal kompas MANUALE (p. ) Bussola digitale MANUAL DE USO (p.

Részletesebben

Create & validate a signature

Create & validate a signature IOTA TUTORIAL 7 Create & validate a signature v.0.0 KNBJDBIRYCUGVWMSKPVA9KOOGKKIRCBYHLMUTLGGAV9LIIPZSBGIENVBQ9NBQWXOXQSJRIRBHYJ9LCTJLISGGBRFRTTWD ABBYUVKPYFDJWTFLICYQQWQVDPCAKNVMSQERSYDPSSXPCZLVKWYKYZMREAEYZOSPWEJLHHFPYGSNSUYRZXANDNQTTLLZA

Részletesebben

INFORMATIKAI ALAPISMERETEK

INFORMATIKAI ALAPISMERETEK Informatikai alapismeretek középszint 1021 ÉRETTSÉGI VIZSGA 2011. május 13. INFORMATIKAI ALAPISMERETEK KÖZÉPSZINTŰ ÍRÁSBELI ÉRETTSÉGI VIZSGA JAVÍTÁSI-ÉRTÉKELÉSI ÚTMUTATÓ NEMZETI ERŐFORRÁS MINISZTÉRIUM

Részletesebben

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

Bevezetés a mikrovezérlők programozásába: Fényérzékelés, fénymérés Bevezetés a mikrovezérlők programozásába: Fényérzékelés, fénymérés 1 Lab 19 projektek LDR_test.ino tesztprogram a fényérzékeny ellenálláshoz (LDR) TLS2561_and_LDR.ino LDR kalibrálása TLS2561 fénymérővel

Részletesebben

Mapping Sequencing Reads to a Reference Genome

Mapping Sequencing Reads to a Reference Genome Mapping Sequencing Reads to a Reference Genome High Throughput Sequencing RN Example applications: Sequencing a genome (DN) Sequencing a transcriptome and gene expression studies (RN) ChIP (chromatin immunoprecipitation)

Részletesebben

PromoCoder_7031/Lx3 rendszer használati utsítás v1.1

PromoCoder_7031/Lx3 rendszer használati utsítás v1.1 PromoCoder_7031/Lx3 rendszer használati utsítás v1.1 A rendszer leírása a Promociós kódolás MI 7031 lézernyomtatókkal szerelt csomagológépekre című dokumentumban került részletes ismertetésre. Ebben lett

Részletesebben

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

MSP430 programozás Energia környezetben. LED kijelzok második rész MSP430 programozás Energia környezetben LED kijelzok második rész 1 Lab13 SPI_595_7seg Egyszerű mintaprogram kétszámjegyű hétszegmenses LED kijelzővel, 74HC595 shift regiszterrel, SPI programkönyvtár használattal

Részletesebben

16F628A megszakítás kezelése

16F628A megszakítás kezelése 16F628A megszakítás kezelése A 'megszakítás' azt jelenti, hogy a program normális, szekvenciális futása valamilyen külső hatás miatt átmenetileg felfüggesztődik, és a vezérlést egy külön rutin, a megszakításkezelő

Részletesebben

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

MSP430 programozás Energia környezetben. Hétszegmenses LED kijelzok MSP430 programozás Energia környezetben Hétszegmenses LED kijelzok 1 A hétszegmenses kijelző A hétszegmenses kijelzők 7 db LED-et vagy LED csoportot tartalmaznak, olyan elrendezésben, hogy a 0 9 arab számjegyeket

Részletesebben

INFORMATIKAI ALAPISMERETEK

INFORMATIKAI ALAPISMERETEK Informatikai alapismeretek emelt szint 1021 ÉRETTSÉGI VIZSGA 2011. május 13. INFORMATIKAI ALAPISMERETEK EMELT SZINTŰ ÍRÁSBELI ÉRETTSÉGI VIZSGA JAVÍTÁSI-ÉRTÉKELÉSI ÚTMUTATÓ NEMZETI ERŐFORRÁS MINISZTÉRIUM

Részletesebben

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

Mintavételes szabályozás mikrovezérlő segítségével Automatizálási Tanszék Mintavételes szabályozás mikrovezérlő segítségével Budai Tamás budai.tamas@sze.hu http://maxwell.sze.hu/~budait Tartalom Mikrovezérlőkről röviden Programozási alapismeretek ismétlés

Részletesebben

3. Gyakorlat Ismerkedés a Java nyelvvel

3. Gyakorlat Ismerkedés a Java nyelvvel 3. Gyakorlat Ismerkedés a Java nyelvvel Parancssori argumentumok Minden Java programnak adhatunk indításkor paraméterek, ezeket a program egy tömbben tárolja. public static void main( String[] args ) Az

Részletesebben

Programozási alapismeretek :: beadandó feladat. Felhasználói dokumentáció. Molnár Tamás MOTIABT.ELTE motiabt@inf.elte.

Programozási alapismeretek :: beadandó feladat. Felhasználói dokumentáció. Molnár Tamás MOTIABT.ELTE motiabt@inf.elte. Programozási alapismeretek :: beadandó feladat Készítő adatai Név: Molnár Tamás EHA: MOTIABT.ELTE E-mail cím: motiabt@inf.elte.hu Gyakorlatvezető: Horváth László Feladat sorszáma: 23. Felhasználói dokumentáció

Részletesebben

SQL/PSM kurzorok rész

SQL/PSM kurzorok rész SQL/PSM kurzorok --- 2.rész Tankönyv: Ullman-Widom: Adatbázisrendszerek Alapvetés Második, átdolgozott kiadás, Panem, 2009 9.3. Az SQL és a befogadó nyelv közötti felület (sormutatók) 9.4. SQL/PSM Sémában

Részletesebben

Using the CW-Net in a user defined IP network

Using the CW-Net in a user defined IP network Using the CW-Net in a user defined IP network Data transmission and device control through IP platform CW-Net Basically, CableWorld's CW-Net operates in the 10.123.13.xxx IP address range. User Defined

Részletesebben

(NGB_TA024_1) MÉRÉSI JEGYZŐKÖNYV

(NGB_TA024_1) MÉRÉSI JEGYZŐKÖNYV Kommunikációs rendszerek programozása (NGB_TA024_1) MÉRÉSI JEGYZŐKÖNYV (5. mérés) SIP telefonközpont készítése Trixbox-szal 1 Mérés helye: Széchenyi István Egyetem, L-1/7 laboratórium, 9026 Győr, Egyetem

Részletesebben

Bevezetés a Modbus kommunikációba

Bevezetés a Modbus kommunikációba Bevezetés a Modbus kommunikációba Mobus szervezet Teljesen ingyenes, nyílt-forrású rendszer nem licenc köteles http://www.modbus.org Modbus eszköz kereső motor http://www.modbus.org/devices.php - soros

Részletesebben

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.

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. Mérési útmutató A/D konverteres mérés 1. Az A/D átalakítók főbb típusai és rövid leírásuk // Első lépésként tanulmányozzuk a digitális jelfeldolgozás előnyeit és határait. Csoportosítás polaritás szempontjából:

Részletesebben

Bevezetés a C++ programozásba

Bevezetés a C++ programozásba Bevezetés a C++ programozásba A program fogalma: A program nem más, mint számítógép által végrehajtható utasítások sorozata. A számítógépes programokat különféle programnyelveken írhatjuk. Ilyen nyelvek

Részletesebben

C# osztályok. Krizsán Zoltán

C# osztályok. Krizsán Zoltán C# osztályok Krizsán Zoltán Fogalma Önálló hatáskőrrel rendelkező, absztrakt adattípus, amely több, különböző elemet tartalmazhat. Minden esetben a heap-en jön létre! A programozó hozza létre, de a GC

Részletesebben

HAMBURG Használati útmutató Vezérlőmodul UKSM 24VDC Cikkszám: 260.033

HAMBURG Használati útmutató Vezérlőmodul UKSM 24VDC Cikkszám: 260.033 HABURG Használati útmutató Vezérlőmodul UKS 24VDC Cikkszám: 260.033 Brandschutz-Technik und Rauchabzug GmbH Schnackenburgallee 41d D-22525 Hamburg Germany +49 40 89 71 20-0 Fax: +49 40 89 71 20-20 Internet:

Részletesebben

Programozás alapjai C nyelv 5. gyakorlat. Írjunk ki fordítva! Írjunk ki fordítva! (3)

Programozás alapjai C nyelv 5. gyakorlat. Írjunk ki fordítva! Írjunk ki fordítva! (3) Programozás alapjai C nyelv 5. gyakorlat Szeberényi Imre BME IIT Programozás alapjai I. (C nyelv, gyakorlat) BME-IIT Sz.I. 2005.10.17. -1- Tömbök Azonos típusú adatok tárolására. Index

Részletesebben

Bevezetés a C programozási nyelvbe. Az Általános Informatikai Tanszék C nyelvi kódolási szabványa

Bevezetés a C programozási nyelvbe. Az Általános Informatikai Tanszék C nyelvi kódolási szabványa Miskolci Egyetem Általános Informatikai Tanszék Bevezetés a C programozási nyelvbe Az Általános Informatikai Tanszék C nyelvi kódolási szabványa Oktatási segédletek a levelező műszaki informatikus hallgatók

Részletesebben

Basic Arrays. Contents. Chris Wild & Steven Zeil. May 28, Description 3

Basic Arrays. Contents. Chris Wild & Steven Zeil. May 28, Description 3 Chris Wild & Steven Zeil May 28, 2013 Contents 1 Description 3 1 2 Example 4 3 Tips 6 4 String Literals 7 4.1 Description...................................... 7 4.2 Example........................................

Részletesebben

Programozás 3. Dr. Iványi Péter

Programozás 3. Dr. Iványi Péter Programozás 3. Dr. Iványi Péter 1 Egy operandus művelet operandus operandus művelet Operátorok Két operandus operandus1 művelet operandus2 2 Aritmetikai műveletek + : összeadás -: kivonás * : szorzás /

Részletesebben

Programozás BMEKOKAA146. Dr. Bécsi Tamás 1. Előadás

Programozás BMEKOKAA146. Dr. Bécsi Tamás 1. Előadás Programozás BMEKOKAA146 Dr. Bécsi Tamás 1. Előadás Bemutatkozás Előadó: Dr. Bécsi Tamás St.106, (1)463-1044, becsi.tamas@mail.bme.hu Közlekedés-, és Járműirányítási Tanszék www.kjit.bme.hu Programozás

Részletesebben

MAKING MODERN LIVING POSSIBLE. Danfoss Heating Solutions

MAKING MODERN LIVING POSSIBLE. Danfoss Heating Solutions MAKING MODERN LIVING POSSIBLE Danfoss Danfoss Link Link HC Hidronikus HC Hydronic szabályozó Controller Szerelési Installation útmutató Guide Danfoss Heating Solutions Szerelési útmutató Tartalomjegyzék

Részletesebben

SZERVER OLDALI JAVASCRIPT. 3. hét Javascript nyelvi elemek

SZERVER OLDALI JAVASCRIPT. 3. hét Javascript nyelvi elemek SZERVER OLDALI JAVASCRIPT 3. hét Javascript nyelvi elemek NYELVI ALAPOK: Ez sajnos igen száraz anyag, Viszont a megértékhez és a nyelv elsajátításához kell. Próbáljuk meg random gifekkel feldobni. MIRŐL

Részletesebben

STL. Algoritmus. Iterátor. Tároló. Elsődleges komponensek: Tárolók Algoritmusok Bejárók

STL. Algoritmus. Iterátor. Tároló. Elsődleges komponensek: Tárolók Algoritmusok Bejárók STL Elsődleges komponensek: Tárolók Algoritmusok Bejárók Másodlagos komponensek: Függvény objektumok Adapterek Allokátorok (helyfoglalók) Tulajdonságok Tárolók: Vektor (vector) Lista (list) Halmaz (set)

Részletesebben

MSP430 programozás Energia környezetben

MSP430 programozás Energia környezetben MSP430 programozás Energia környezetben lámpákról Mostan színes tintákról álmodom 1 Az RGB LED bemutatása Az RGB LED három, különböző színű LED egy közös tokban. A három szín a három alapszín, amelyből

Részletesebben

Objektumorientált programozás C# nyelven III.

Objektumorientált programozás C# nyelven III. Objektumorientált programozás C# nyelven III. Kivételkezelés Tulajdonságok Feladatok Készítette: Miklós Árpád Dr. Kotsis Domokos Hallgatói tájékoztató A jelen bemutatóban található adatok, tudnivalók és

Részletesebben

Angol Középfokú Nyelvvizsgázók Bibliája: Nyelvtani összefoglalás, 30 kidolgozott szóbeli tétel, esszé és minta levelek + rendhagyó igék jelentéssel

Angol Középfokú Nyelvvizsgázók Bibliája: Nyelvtani összefoglalás, 30 kidolgozott szóbeli tétel, esszé és minta levelek + rendhagyó igék jelentéssel Angol Középfokú Nyelvvizsgázók Bibliája: Nyelvtani összefoglalás, 30 kidolgozott szóbeli tétel, esszé és minta levelek + rendhagyó igék jelentéssel Timea Farkas Click here if your download doesn"t start

Részletesebben

Programozás C nyelven (3. ELŐADÁS) Sapientia EMTE

Programozás C nyelven (3. ELŐADÁS) Sapientia EMTE Programozás C nyelven (3. ELŐADÁS) Sapientia EMTE 2015-16 Classic Empire - A turn Based Wargame Classic Empire is a real time, multiplayer, Internet-based game, featuring military, diplomatic, and economic

Részletesebben

Bevezetés Kiíratás Beolvasás Formázás Fájlkezelés Gyakorló feladatok C++ I/O. Bevezetés. Izsó Tamás február 20. Izsó Tamás C++ I/O / 1

Bevezetés Kiíratás Beolvasás Formázás Fájlkezelés Gyakorló feladatok C++ I/O. Bevezetés. Izsó Tamás február 20. Izsó Tamás C++ I/O / 1 C++ I/O Bevezetés Izsó Tamás 2014. február 20. Izsó Tamás C++ I/O / 1 Section 1 Bevezetés Izsó Tamás C++ I/O / 2 Irodalom Izsó Tamás C++ I/O / 3 Paraméter illesztés függvénynév túlterhelés esetén 1 Pontos

Részletesebben

Számítástechnika I. BMEKOKAA152 BMEKOKAA119 Infokommunikáció I. BMEKOKAA606. Dr. Bécsi Tamás

Számítástechnika I. BMEKOKAA152 BMEKOKAA119 Infokommunikáció I. BMEKOKAA606. Dr. Bécsi Tamás Számítástechnika I. BMEKOKAA152 BMEKOKAA119 Infokommunikáció I. BMEKOKAA606 Dr. Bécsi Tamás Bemutatkozás Előadó: Dr. Bécsi Tamás St.106, (1)463-1044, becsi.tamas@mail.bme.hu Közlekedés-, és Járműirányítási

Részletesebben

USER MANUAL Guest user

USER MANUAL Guest user USER MANUAL Guest user 1 Welcome in Kutatótér (Researchroom) Top menu 1. Click on it and the left side menu will pop up 2. With the slider you can make left side menu visible 3. Font side: enlarging font

Részletesebben

Informatika terméktervezőknek

Informatika terméktervezőknek Informatika terméktervezőknek C# alapok Névterület (namespace) using Osztály (class) és Obejtumok Metódus (function, procedure, method) main() static void string[] arg Szintaxis // /* */ \n \t Névadások

Részletesebben

Intézményi IKI Gazdasági Nyelvi Vizsga

Intézményi IKI Gazdasági Nyelvi Vizsga Intézményi IKI Gazdasági Nyelvi Vizsga Név:... Születési hely:... Születési dátum (év/hó/nap):... Nyelv: Angol Fok: Alapfok 1. Feladat: Olvasáskészséget mérő feladat 20 pont Olvassa el a szöveget és válaszoljon

Részletesebben

TestLine - Angol teszt Minta feladatsor

TestLine - Angol teszt Minta feladatsor Minta felaatsor venég Téma: Általános szintfelmérő Aláírás:... Dátum: 2016.05.29 08:18:49 Kérések száma: 25 kérés Kitöltési iő: 1:17:27 Nehézség: Összetett Pont egység: +6-2 Értékelés: Alaértelmezett értékelés

Részletesebben

Proxer 7 Manager szoftver felhasználói leírás

Proxer 7 Manager szoftver felhasználói leírás Proxer 7 Manager szoftver felhasználói leírás A program az induláskor elkezdi keresni az eszközöket. Ha van olyan eszköz, amely virtuális billentyűzetként van beállítva, akkor azokat is kijelzi. Azokkal

Részletesebben

Computer Architecture

Computer Architecture Computer Architecture Locality-aware programming 2016. április 27. Budapest Gábor Horváth associate professor BUTE Department of Telecommunications ghorvath@hit.bme.hu Számítógép Architektúrák Horváth

Részletesebben

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

Bevezetés a mikrovezérlők programozásába: Léptetőmotorok vezérlése Bevezetés a mikrovezérlők programozásába: Léptetőmotorok vezérlése 1 Mi a léptetőmotor? Felhasznált forrás: learn.adafruit.com/all-about-stepper-motors/what-is-a-stepper-motor A léptetőmotorok olyan egyenáramú

Részletesebben

MDS30-50D Víz víz hőszivattyú

MDS30-50D Víz víz hőszivattyú MDS30-50D Víz víz hőszivattyú Használati útmutató A beépítés előtt olvassa el ezt az útmutatót Figyelem! A hőszivattyúk üzembe helyezését bízza szakemberre, mivel a szakszerűtlen üzembe helyezésből fakadó

Részletesebben

Szakmai továbbképzési nap akadémiai oktatóknak. 2012. december 14. HISZK, Hódmezővásárhely / Webex

Szakmai továbbképzési nap akadémiai oktatóknak. 2012. december 14. HISZK, Hódmezővásárhely / Webex Szakmai továbbképzési nap akadémiai oktatóknak 2012. december 14. HISZK, Hódmezővásárhely / Webex 14.00-15.00 15.00-15.30 15.30-15.40 Mai program 1. Amit feltétlenül ismernünk kell: az irányítótábla közelebbről.

Részletesebben

Országzászlók (2015. május 27., Sz14)

Országzászlók (2015. május 27., Sz14) Országzászlók (2015. május 27., Sz14) Írjon programot, amely a standard bemenetről állományvégjelig soronként egy-egy ország zászlójára vonatkozó adatokat olvas be! Az egyes zászlóknál azt tartjuk nyilván,

Részletesebben

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

Tarján Péter Nyíregyházi Egyetem. Szenzorok és ötletek Arduinós mérésekhez Tarján Péter Nyíregyházi Egyetem Szenzorok és ötletek Arduinós mérésekhez BH1750 megvilágítás Spektrális érzékenysége az emberi szemhez hasonló Közvetlenül luxban adja vissza a megvilágítás értékét Lineáris

Részletesebben

Mechatronika és mikroszámítógépek 2017/2018 I. félév. Bevezetés a C nyelvbe

Mechatronika és mikroszámítógépek 2017/2018 I. félév. Bevezetés a C nyelvbe Mechatronika és mikroszámítógépek 2017/2018 I. félév Bevezetés a C nyelvbe A C programozási nyelv A C egy általános célú programozási nyelv, melyet Dennis Ritchie fejlesztett ki Ken Thompson segítségével

Részletesebben

Sintony SAK 41. Kezelési utasíitás 8AA10865 - D0-20/10/99 - UK -

Sintony SAK 41. Kezelési utasíitás 8AA10865 - D0-20/10/99 - UK - Sintony SAK 41 Kezelési utasíitás 8AA10865- D0-20/10/99 - UK - 1 Mûszaki kifejezések Riasztás Kikapcsolt Hiba : Valamely érzékelõ jelzése (aktív állapota), amely valamilyen jelzést vált ki (hangjelzés,

Részletesebben

Tudományos Ismeretterjesztő Társulat

Tudományos Ismeretterjesztő Társulat Sample letter number 5. International Culture Festival PO Box 34467 Harrogate HG 45 67F Sonnenbergstraße 11a CH-6005 Luzern Re: Festival May 19, 2009 Dear Ms Atkinson, We are two students from Switzerland

Részletesebben

HM 80 UNIVERZÁLIS KEVERŐSZELEP VEZÉRLŐ ÁLTALÁNOS MŰSZAKI ADATOK TULAJDONSÁGOK TERMÉK LEÍRÁS ELEKTROMOS. RF kommunikáció

HM 80 UNIVERZÁLIS KEVERŐSZELEP VEZÉRLŐ ÁLTALÁNOS MŰSZAKI ADATOK TULAJDONSÁGOK TERMÉK LEÍRÁS ELEKTROMOS. RF kommunikáció H 80 UNIVERZÁLIS KEVERŐSZELEP VEZÉRLŐ ÁLTALÁNOS TERÉK LEÍRÁS A vezeték nélküli Univerzális keverőszelep szabályzó fűtési/hűtési zónaszabályzáshoz alkalmazható. A a helyiség hőmérséklet és helyiség alapjel

Részletesebben

Bevezetés az elektronikába

Bevezetés az elektronikába Bevezetés az elektronikába 15. Arduino programozás Hétszegmenses kijelzők 2. rész 1 Betűvadászat A 7 db szegmens mindegyike lehet ki- vagy bekapcsolt állapotban. A lehetséges állapotok száma: 27 = 128

Részletesebben

Teszt topológia E1/1 E1/0 SW1 E1/0 E1/0 SW3 SW2. Kuris Ferenc - [HUN] Cisco Blog -

Teszt topológia E1/1 E1/0 SW1 E1/0 E1/0 SW3 SW2. Kuris Ferenc - [HUN] Cisco Blog - VTP Teszt topológia E1/1 E1/0 SW1 E1/0 E1/0 SW2 SW3 2 Alap konfiguráció SW1-2-3 conf t interface e1/0 switchport trunk encapsulation dot1q switchport mode trunk vtp domain CCIE vtp mode transparent vtp

Részletesebben

Bevezetés a mikrovezérlők programozásába: A PM6025 (7 és 16 szegmenses) LCD kijelző vezérlése

Bevezetés a mikrovezérlők programozásába: A PM6025 (7 és 16 szegmenses) LCD kijelző vezérlése Bevezetés a mikrovezérlők programozásába: A PM6025 (7 és 16 szegmenses) LCD kijelző vezérlése 1 Lab 21 projektek MiniPirate.ino Arduino Mini Pirate, interaktív vizsgálóprogram, amelyet itt az I2C busz

Részletesebben

Stack Vezérlés szerkezet Adat 2.

Stack Vezérlés szerkezet Adat 2. Stack Vezérlés szerkezet Adat 2. Kód visszafejtés. Izsó Tamás 2013. november 14. Izsó Tamás Stack Vezérlés szerkezet Adat 2./ 1 Változó típusú paraméterekátadása 1. #include < s t d i o. h> int64 myfunc

Részletesebben

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

Arduino bevezető Szenzorhálózatok és alkalmazásaik Arduino bevezető Szenzorhálózatok és alkalmazásaik VITMMA09 Okos város MSc mellékspecializáció Mi az Arduino? Nyílt hardver és szoftver platform 8 bites Atmel mikrokontroller köré építve Ökoszisztéma:

Részletesebben

Internet technológiák

Internet technológiák Szabadkai Műszaki Szakfőiskola Internet technológiák dr Zlatko Čović chole@vts.su.ac.rs 1 Függvények A függvény egy zárt, önálló kódrészlet, amelyet a PHP programból meghívhatunk és a meghívás után a függvény

Részletesebben

SW-4836 ASI Changeover Controller

SW-4836 ASI Changeover Controller SW-4836 ASI Changeover Controller Beállító- és ellenőrző szoftver a CW-4836 ASI Changeover Duo, CW-4837 ASI Changeover Quad, CW-4838 ASI Changeover and Timer Duo CW-4838 ASI Changeover and Timer Quad automatikus

Részletesebben

Megoldott feladatok. Informatika

Megoldott feladatok. Informatika Megoldott feladatok Informatika I.81. Egy autóbuszjegyen az n*n-es négyzethálóban összesen k lyukasztás lehet. Ha a buszjegyet fordítva helyezzük a lyukasztóba, akkor a jegy tükörképét kapjuk. (Csak egyféleképpen

Részletesebben

Műszerkönyv. Elektronikus számolómérleg. CS Típus

Műszerkönyv. Elektronikus számolómérleg. CS Típus Prominens Kft. Műszerkönyv Elektronikus számolómérleg CS Típus Dátum: 29. május Kód: MŰH DocNr.: CS / 29 / 1. változat Érvényesítve:... Dátum: 29.5.28... MŰH Doc.Nr.: CS / 29 / 1. változat 2 Tartalomjegyzék

Részletesebben

Smalltalk 2. Készítette: Szabó Éva

Smalltalk 2. Készítette: Szabó Éva Smalltalk 2. Készítette: Szabó Éva Blokkok Paraméter nélküli blokk [műveletek] [ x := 5. 'Hello' print. 2+3] Kiértékelés: [művelet] value az értéke az utolsó művelet értéke lesz, de mindet kiírja. x :=

Részletesebben

Csatlakozás a BME eduroam hálózatához Setting up the BUTE eduroam network

Csatlakozás a BME eduroam hálózatához Setting up the BUTE eduroam network Csatlakozás a BME eduroam hálózatához Setting up the BUTE eduroam network Table of Contents Windows 7... 2 Windows 8... 6 Windows Phone... 11 Android... 12 iphone... 14 Linux (Debian)... 20 Sebők Márton

Részletesebben

ENROLLMENT FORM / BEIRATKOZÁSI ADATLAP

ENROLLMENT FORM / BEIRATKOZÁSI ADATLAP ENROLLMENT FORM / BEIRATKOZÁSI ADATLAP CHILD S DATA / GYERMEK ADATAI PLEASE FILL IN THIS INFORMATION WITH DATA BASED ON OFFICIAL DOCUMENTS / KÉRJÜK, TÖLTSE KI A HIVATALOS DOKUMENTUMOKBAN SZEREPLŐ ADATOK

Részletesebben

Tulajdonságalapú tesztelés

Tulajdonságalapú tesztelés Tulajdonságalapú tesztelés QuickCheck A QuickCheck Haskell programok automatikus, tulajdonságalapú tesztelésére használható. Programspecifikáció: program által teljesítendő tulajdonságok Nagy számú, a

Részletesebben

fátyolka tojásgy jtœ lap [CHRegg] összeszereléséhez

fátyolka tojásgy jtœ lap [CHRegg] összeszereléséhez Útmutató fátyolka tojásgy jtœ lap [CHRegg] összeszereléséhez (Assembling instructions to [CHRegg] lacewing egg concentrator) Tartozékok: 1 = csalétket tartalmazó alufólia tasak 2 = tojásgy jtœ lap tépœzár

Részletesebben

C++ programozási nyelv Struktúrák a C++ nyelvben Gyakorlat

C++ programozási nyelv Struktúrák a C++ nyelvben Gyakorlat C++ programozási nyelv Struktúrák a C++ nyelvben Gyakorlat Nyugat-Magyarországi Egyetem Faipari Mérnöki Kar Informatikai Intézet Soós Sándor 2004. szeptember A C++ programozási nyelv Soós Sándor 1/12 Input-output

Részletesebben

abkezel.java import java.awt.*; import java.awt.event.*; import javax.swing.*; import java.sql.*; public class abkezel extends JFrame {

abkezel.java import java.awt.*; import java.awt.event.*; import javax.swing.*; import java.sql.*; public class abkezel extends JFrame { Adatkezelés JDBC-vel 1 abkezel.java import java.awt.*; import java.awt.event.*; import javax.swing.*; import java.sql.*; public class abkezel extends JFrame { private JTabbedPane jtp; private JPanel dp,

Részletesebben

Feladat: Hogyan tudunk létrehozni egy olyan vector nevű tömb típust, amely egy háromdimenziós térbeli vektort reprezentál?

Feladat: Hogyan tudunk létrehozni egy olyan vector nevű tömb típust, amely egy háromdimenziós térbeli vektort reprezentál? Típus definiálás Ennek általános alakja: typedef típus név Feladat: Hogyan tudunk létrehozni egy olyan vector nevű tömb típust, amely egy háromdimenziós térbeli vektort reprezentál? typedef double vector[3];

Részletesebben

Adatbázis-kezelés ODBC driverrel

Adatbázis-kezelés ODBC driverrel ADATBÁZIS-KEZELÉS ODBC DRIVERREL... 1 ODBC: OPEN DATABASE CONNECTIVITY (NYÍLT ADATBÁZIS KAPCSOLÁS)... 1 AZ ODBC FELÉPÍTÉSE... 2 ADATBÁZIS REGISZTRÁCIÓ... 2 PROJEKT LÉTREHOZÁSA... 3 A GENERÁLT PROJEKT FELÉPÍTÉSE...

Részletesebben

C# feladatok gyűjteménye

C# feladatok gyűjteménye C# feladatok gyűjteménye Készítette: Fehérvári Károly I6YF6E Informatika tanár ma levelező tagozat 1) Feladat: ALAPMŰVELETEK Készítsünk programot, amely bekér két egész számot. Majd kiszámolja a két szám

Részletesebben

Tavaszi Sporttábor / Spring Sports Camp. 2016. május 27 29. (péntek vasárnap) 27 29 May 2016 (Friday Sunday)

Tavaszi Sporttábor / Spring Sports Camp. 2016. május 27 29. (péntek vasárnap) 27 29 May 2016 (Friday Sunday) Tavaszi Sporttábor / Spring Sports Camp 2016. május 27 29. (péntek vasárnap) 27 29 May 2016 (Friday Sunday) SZÁLLÁS / ACCOMODDATION on a Hotel Gellért*** szálloda 2 ágyas szobáiban, vagy 2x2 ágyas hostel

Részletesebben

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

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

Részletesebben

Adattípusok. Max. 2GByte

Adattípusok. Max. 2GByte Adattípusok Típus Méret Megjegyzés Konstans BIT 1 bit TRUE/FALSE SMALLINT 2 byte -123 INTEGER 4 byte -123 COUNTER 4 byte Automatikus 123 REAL 4 byte -12.34E-2 FLOAT 8 byte -12.34E-2 CURRENCY / MONEY 8

Részletesebben

Adattípusok. Max. 2GByte

Adattípusok. Max. 2GByte Adattípusok Típus Méret Megjegyzés Konstans BIT 1 bit TRUE/FALSE TINIINT 1 byte 12 SMALLINT 2 byte -123 INTEGER 4 byte -123 COUNTER 4 byte Automatikus 123 REAL 4 byte -12.34E-2 FLOAT 8 byte -12.34E-2 CURRENCY

Részletesebben

First experiences with Gd fuel assemblies in. Tamás Parkó, Botond Beliczai AER Symposium 2009.09.21 25.

First experiences with Gd fuel assemblies in. Tamás Parkó, Botond Beliczai AER Symposium 2009.09.21 25. First experiences with Gd fuel assemblies in the Paks NPP Tams Parkó, Botond Beliczai AER Symposium 2009.09.21 25. Introduction From 2006 we increased the heat power of our units by 8% For reaching this

Részletesebben

Kiegészítés az üzemeltetési utasításhoz

Kiegészítés az üzemeltetési utasításhoz Hajtástechnika \ Hajtásautomatizálás \ Rendszerintegráció \ Szolgáltatások Kiegészítés az üzemeltetési utasításhoz MOVITRAC LTX Szervomodul a MOVITRAC LTP-B készülékhez Kiadás: 2012. 05. 19458177 / HU

Részletesebben

ANGOL NYELV KÖZÉPSZINT SZÓBELI VIZSGA I. VIZSGÁZTATÓI PÉLDÁNY

ANGOL NYELV KÖZÉPSZINT SZÓBELI VIZSGA I. VIZSGÁZTATÓI PÉLDÁNY ANGOL NYELV KÖZÉPSZINT SZÓBELI VIZSGA I. VIZSGÁZTATÓI PÉLDÁNY A feladatsor három részből áll 1. A vizsgáztató társalgást kezdeményez a vizsgázóval. 2. A vizsgázó egy szituációs feladatban vesz részt a

Részletesebben

ANGOL NYELV KÖZÉPSZINT SZÓBELI VIZSGA I. VIZSGÁZTATÓI PÉLDÁNY

ANGOL NYELV KÖZÉPSZINT SZÓBELI VIZSGA I. VIZSGÁZTATÓI PÉLDÁNY ANGOL NYELV KÖZÉPSZINT SZÓBELI VIZSGA I. VIZSGÁZTATÓI PÉLDÁNY A feladatsor három részbol áll 1. A vizsgáztató társalgást kezdeményez a vizsgázóval. 2. A vizsgázó egy szituációs feladatban vesz részt a

Részletesebben

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: MAX6958: Hétszegmenses LED kijelző vezérlő Bevezetés a mikrovezérlők programozásába: MAX6958: Hétszegmenses LED kijelző vezérlő 1 Lab 20 projektek MiniPirate.ino Arduino Mini Pirate interaktív vizsgálóprogram, amelyet most az I2C busz kézivezérlésére

Részletesebben

Ültetési és öntözési javaslatok. Planting and watering instructions

Ültetési és öntözési javaslatok. Planting and watering instructions Ültetési és öntözési javaslatok Planting and watering instructions 1 Önöntöző-rendszer Sub-irrigation 2 Kedves növénykedvelő A LECHUZA önöntöző rendszerrel növényeink természetüknél fogva gyönyörű virágokat

Részletesebben

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

MSP430 programozás Energia környezetben. Az I/O portok kezelése MSP430 programozás Energia környezetben Az I/O portok kezelése 1 Egyszerű I/O vezérlés Digitális I/O pinmode(pin, mode) kivezetés üzemmódjának beállítása digitalwrite(pin, state) - kimenetvezérlés digitalread(pin)

Részletesebben

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

MSP430 programozás Energia környezetben. LED mátrix vezérlése MAX7219 IC-vel MSP430 programozás Energia környezetben LED mátrix vezérlése MAX7219 IC-vel 1 LED 8x8 mátrix 3 mm-es piros LED-ek 8x8 mátrixba szervezve 1088AS vagy M1388AR típusnál a sorkiválasztó vonal a közös katód

Részletesebben

Mielıtt használná termékünket 702008035. Az eltérı környezeti körülmény elektromos áramütést, tüzet, hibás mőködést vagy. okozhat.

Mielıtt használná termékünket 702008035. Az eltérı környezeti körülmény elektromos áramütést, tüzet, hibás mőködést vagy. okozhat. . Adatlap G rogrammable ogic Controller GOFA-GM Sorozat GM-DR20/0/0/0A Mielıtt használná termékünket 02000 Olvassa el ezt az adatlapot figyelmesen különösen ügyelve a kezelésre, beépítésre, beszerelésre

Részletesebben

THS710A, THS720A, THS730A & THS720P TekScope Reference

THS710A, THS720A, THS730A & THS720P TekScope Reference THS710A, THS720A, THS730A & THS720P TekScope Reference 070-9741-01 Getting Started 1 Connect probes or leads. 2 Choose SCOPE 3 or METER mode. Press AUTORANGE. Copyright Tektronix, Inc. Printed in U.S.A.

Részletesebben

STAGNOLI PROFESSIONAL VEZÉRLÉS

STAGNOLI PROFESSIONAL VEZÉRLÉS STAGNOLI PROFESSIONAL VEZÉRLÉS A VEZÉRLŐEGYSÉG TETEJE Akkumulátor töltő kapcsolat kivezetés. 24 V motor kivezetés. Kiegészítő külső áramforrás kimenet. Villogó kimenet (15 W max., 12 V AC) ; a villogást

Részletesebben

JEROMOS A BARATOM PDF

JEROMOS A BARATOM PDF JEROMOS A BARATOM PDF ==> Download: JEROMOS A BARATOM PDF JEROMOS A BARATOM PDF - Are you searching for Jeromos A Baratom Books? Now, you will be happy that at this time Jeromos A Baratom PDF is available

Részletesebben

Share wave 4: 50+ in Europe - Coverscreenwizard version 4.8.6

Share wave 4: 50+ in Europe - Coverscreenwizard version 4.8.6 Share wave 4: 50+ in Europe - Coverscreenwizard version 4.8.6 IF SKIP_INTROLap = 0 IntroLap A FedolapVarázsló segít végigmenni azokon a lépéseken, melyek segítségével frissítheted az egy adott háztartásról

Részletesebben

Hogyan használja az OROS online pótalkatrész jegyzéket?

Hogyan használja az OROS online pótalkatrész jegyzéket? Hogyan használja az OROS online pótalkatrész jegyzéket? Program indítása/program starts up Válassza ki a weblap nyelvét/choose the language of the webpage Látogasson el az oros.hu weboldalra, majd klikkeljen

Részletesebben

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

3. Hőmérők elkészítése 3. Hőmérők elkészítése A jelenlegi hőmérőink pt100-as ellenállás hőmérők. Ezeknek az ellenállását szükséges digitális jellé alakítani, és egy 7-szegmenses kijelzővel egy tized pontossággal kijelezni, valamint

Részletesebben

Bevezetés az elektronikába

Bevezetés az elektronikába Bevezetés az elektronikába 13. Arduino programozás analóg I/O Hobbielektronika csoport 2018/2019 1 Debreceni Megtestesülés Plébánia PWM: impulzus-szélesség moduláció PWM = pulse width modulation (impulzus-szélesség

Részletesebben

T Á J É K O Z T A T Ó. A 1108INT számú nyomtatvány a http://www.nav.gov.hu webcímen a Letöltések Nyomtatványkitöltő programok fülön érhető el.

T Á J É K O Z T A T Ó. A 1108INT számú nyomtatvány a http://www.nav.gov.hu webcímen a Letöltések Nyomtatványkitöltő programok fülön érhető el. T Á J É K O Z T A T Ó A 1108INT számú nyomtatvány a http://www.nav.gov.hu webcímen a Letöltések Nyomtatványkitöltő programok fülön érhető el. A Nyomtatványkitöltő programok fület választva a megjelenő

Részletesebben