Close

finke_tomas

Vytvořené odpovědi

Aktuálně je na stránce zobrazeno 30 příspěvků - 781. až 810. (celkem z 2,768)
  • Autor
    Příspěvky
  • odpověď na: ovladani klapky privodu vzduchu #10360
    Aleš
    Účastník

    Myslím, že by to mělo fungovat. Tady je to za nějakých 125Kč, tak to kupte. To zase není tolik peněz. http://www.ebay.com/itm/172379919799

    odpověď na: Krokový motor #10359
    romansis
    Účastník

    Párové značky opraveny. SUPER, změna rychlosti funguje, ale projeví se až po projetí cyklu tam a zpět. Já bych potřeboval aby reakce na tlačítko byla okamžitá. Zatím díky moc.

    odpověď na: Hodinový displej TM1637 #10358
    Oldast
    Účastník

    Displej začal fungovat,ale zobrazil číslo 255 a při minusových teplotách odečítal 255-teplotu čídla(-1=254).Tak jsem se podíval do příručky a změnil byte na int a už to jede tak jak má.Díky za vysvětlení a jdu pokračovat!

    odpověď na: Krokový motor #10357
    posjirka
    Účastník

    to bohužel není muj boj. Tuto část jsem převzal z tveho kodu.
    NAUČTE SE POUŽÍVAT PÁROVÉ ZNAČKY „CODE“

    odpověď na: Krokový motor #10356
    romansis
    Účastník

    zdravím, když nechám zkontrolovat tento kód tak sketch hlásí chybu.
    for(int i=0;i<(uhel*64/45);i++){

    odpověď na: Řízení kotle s akumulací #10355
    sutneosv
    Účastník

    Dobrý den, omlouvám se, ale mám asi podobný problém s řízení kotle na tuhá paliva. Toto forum jsem našel náhodou, jak jste dopadl? povedlo se vám nějaké řízení dát zprovoznit?
    Mám kotel Viessmann Vitoligno 100 (asi 7 roklů) odešlo řízení a obchodní zastoupení v Praze kde jsem poptával opraVU MLČÍ A MLČÍ, ZATÍM ŘÍDÍM KOTEL MANUELNĚ (TERMOSTAT NA ČERPADLO, REGULÁTOR OTÁČEK NA VENTILÁTOR) Ten regulátor Euroster 11 W jsem našel taky, mě by stačil ale podle popisu řídí dmychadlo, já mám odtahový ventilátor. Tak nevím, šlo by to „překopat“
    děkuji za odpověď
    Sutner

    odpověď na: Čtení hesla z #10353
    Zbyšek Voda
    Účastník

    Není zač, mějte se 🙂

    odpověď na: Připojení displeje 1602 s převodníkem I2C #10352
    Jerry
    Účastník

    Ondro díky moc. Knihovnu jsem ani měnit nemusel jen jsem přepsal řádek
    return 0; na 1 a displej funguje. Moje více něž týdenní trápení skončilo. Nevím jestli je to chyba i ostatních knihoven (ale asi ano protože jsem jich postahoval fůru), ale důležitý je, že se to vyřešilo a snad to pomůže i dalším se stejným problémem. Ještě jednou díky 🙂

    odpověď na: Čtení hesla z #10351
    rades
    Účastník

    Děkuji moc, jsem Vám zavázán. Opravdu tak pohotové lidi aby pohledal.

    odpověď na: Krokový motor #10350
    posjirka
    Účastník

    prosím používejte párové značky CODE, jinak je kod špatně formátovaný a zároveń není použitelný.
    zkus tento upravený kod:

    // Krokový motor a driver
    
    #define tlacitko 2 // cislo pinu s talcitkem
    #define rychlost1 1 // prvni -standratni rychlost
    #define rychlost2 2 // rychlost pri stisku tlacitka
    
    // čísla pinů pro digitální výstupy
    const int in1 = 8;
    const int in2 = 9;
    const int in3 = 10;
    const int in4 = 11;
    
    // proměnná pro nastavení rychlosti,
    // se zvětšujícím se číslem se rychlost zmenšuje
    int rychlost =1;
    //
    int uhel = 90;
    
    void setup() {
      // inicializace digitálních výstupů
      pinMode(in1, OUTPUT);
      pinMode(in2, OUTPUT);
      pinMode(in3, OUTPUT);
      pinMode(in4, OUTPUT);
      pinMode(tlacitko, INPUT);
    }
    
    void loop() {
      if(digitalRead(tlacitko) == 0){ // kdyz je stisknuto tlacitko
        rychlost = rychlost2; // sniz rychlost  
      } else { // jinak
        rychlost = rychlost1; // pouzij normalni rychlost  
      }
      // plná rotace o 360 stupňů = 512 volání
      // funkce rotacePoSmeru() či rotaceProtiSmeru()
      for(int i=0;i<(uhel*64/45);i++){
        rotacePoSmeru();
      }
      // pauza po dobu 1 vteřiny
      delay(1000);
      
      for(int i=0;i<(uhel*64/45);i++){
        rotaceProtiSmeru();
      }
      // pauza po dobu 1 vteřiny
      delay(1000);
    }
    // zde následují funkce pro volání jednotlivých
    // kroků pro otočení po či proti směru hodinových
    // ručiček
    void rotacePoSmeru() {
      krok1();
      krok2();
      krok3();
      krok4();
      krok5();
      krok6();
      krok7();
      krok8();
    }
    void rotaceProtiSmeru() {
      krok8();
      krok7();
      krok6();
      krok5();
      krok4();
      krok3();
      krok2();
      krok1();
    }
    // každý krok obsahuje výrobcem dané pořadí
    // pro správné spínání motoru a následnou
    // pauzu, kterou určujeme rychlost otáčení
    void krok1(){
      digitalWrite(in1, HIGH);
      digitalWrite(in2, LOW);
      digitalWrite(in3, LOW);
      digitalWrite(in4, LOW);
      delay(rychlost);
    }
    void krok2(){
      digitalWrite(in1, HIGH);
      digitalWrite(in2, HIGH);
      digitalWrite(in3, LOW);
      digitalWrite(in4, LOW);
      delay(rychlost);
    }
    void krok3(){
      digitalWrite(in1, LOW);
      digitalWrite(in2, HIGH);
      digitalWrite(in3, LOW);
      digitalWrite(in4, LOW);
      delay(rychlost);
    }
    void krok4(){
      digitalWrite(in1, LOW);
      digitalWrite(in2, HIGH);
      digitalWrite(in3, HIGH);
      digitalWrite(in4, LOW);
      delay(rychlost);
    }
    void krok5(){
      digitalWrite(in1, LOW);
      digitalWrite(in2, LOW);
      digitalWrite(in3, HIGH);
      digitalWrite(in4, LOW);
      delay(rychlost);
    }
    void krok6(){
      digitalWrite(in1, LOW);
      digitalWrite(in2, LOW);
      digitalWrite(in3, HIGH);
      digitalWrite(in4, HIGH);
      delay(rychlost);
    }
    void krok7(){
      digitalWrite(in1, LOW);
      digitalWrite(in2, LOW);
      digitalWrite(in3, LOW);
      digitalWrite(in4, HIGH);
      delay(rychlost);
    }
    void krok8(){
      digitalWrite(in1, HIGH);
      digitalWrite(in2, LOW);
      digitalWrite(in3, LOW);
      digitalWrite(in4, HIGH);
      delay(rychlost);
    }
    odpověď na: Hodinový displej TM1637 #10349
    posjirka
    Účastník

    to je vcelku jasné. bavíme se o proměnné typu byte která nabývá hodnot 0-255.
    Když dělíš -5 st. c tak ti vyjde 255-5 = 250 což je v hex. kodovani rovno „FA“.
    zkus toto:

    #include <OneWire.h>
    #include <DallasTemperature.h>
    #include <Arduino.h>
    #include <TM1637Display.h>
    
    #define CLK 2
    #define DIO 3
    TM1637Display displej(CLK,DIO);
    
    const int pinCidlaDS = 4; // nastavení čísla vstupního pinu
    OneWire oneWireDS(pinCidlaDS);
    DallasTemperature senzoryDS(&oneWireDS);
    byte teplota=0;
    int rele=8;
    
    void setup() {
      pinMode(rele,OUTPUT);
      Serial.begin(9600);
      senzoryDS.begin();
      displej.setBrightness(8);//jas displeje 8-15
    }
    void loop() {
      senzoryDS.requestTemperatures();
      teplota=senzoryDS.getTempCByIndex(0);
      Serial.print("Teplota cidla DS18B20: ");
      Serial.print(senzoryDS.getTempCByIndex(0));
      Serial.println(" stupnu Celsia");
      // pauza pro přehlednější výpis
      delay(1000);
      if(teplota>25){
        digitalWrite(rele,LOW);//sepne rele
      } else {
        digitalWrite(rele,HIGH);//rozepne rele
      }
      uint8_t vypis[] = { 0, 0, 0, 0 };//nastavení displeje na zobrazení teploty
      if(teplota<1){
        vypis[0]=(SEG_G);
      }
      teplota = abs(teplota); // prepocet na absolutni hodnotu 
      vypis[1]=displej.encodeDigit((teplota/10)/10);//teplota stovky
      vypis[2]=displej.encodeDigit((teplota/10)%10);//teplota desítky
      vypis[3]=displej.encodeDigit((teplota%10)%10);//teplota jednotky
      displej.setSegments(vypis);
    }

    jinak pro vkladani kodu používej párové značky CODE. Je to to tlačítko v horni části odpovědi s nápisem CODE. jinak se ti špatně vloží text a není pak čitelný

    odpověď na: Připojení displeje 1602 s převodníkem I2C #10348
    Jerry
    Účastník

    Díky jak bude čas zkusím

    odpověď na: Čtení hesla z #10347
    Zbyšek Voda
    Účastník

    Dobrý den, můžete si udělat třeba nějaké počitadlo.

    Kód by pak mohl vypadat například takto (předpokládám, že chcete získat 5 znaků).

    int poc = 0;
    String zadano;
    char znak;
    char menu;
    
    void setup() {
      Serial.begin(9600);
    }
    
    void loop() {
      while (Serial.available()) {
        znak = Serial.read();
    
        if (znak < 32 || znak > 126) continue; //přeskočí znaky mimo rozumný rozsah (konec řádku...)
    
        zadano.concat(znak);
        poc++;
        Serial.println(zadano);
      }
    
      if (poc >= 5) {
        if (zadano == "HELP")
          menu = 'H';
        else
          menu = '0';
    
        switch (menu) {
          case 'H':
            Serial.println(" //================================================\\");
            Serial.println(" ||================================================||");
            Serial.println(" ||Vypis prikazu ||");
            Serial.println(" ||================================================||");
            Serial.println(" ||COSI popis instrukce jshfjashfjsah ||");
            Serial.println(" ||================================================||");
            Serial.println(" \\================================================//");
          default: delay(5);
        }
    
        poc = 0;
        zadano = "";
      }
    }
    odpověď na: Čtení hesla z #10344
    rades
    Účastník

    void setup() {
    Serial.begin(9600);

    }

    void loop() {
    String zadano;
    char znak;
    char menu;

    while(Serial.available()) {
    znak = Serial.read();
    zadano.concat(znak);
    }

    if (zadano != „“) {
    Serial.println(zadano);
    }
    if (zadano == „HELP“)
    menu = ‚H‘;
    else
    menu = ‚0‘;
    switch (menu)
    {
    case ‚H‘: Serial.println(“ //================================================\\“);
    Serial.println(“ ||================================================||“);
    Serial.println(“ ||Vypis prikazu ||“);
    Serial.println(“ ||================================================||“);
    Serial.println(“ ||COSI popis instrukce jshfjashfjsah ||“);
    Serial.println(“ ||================================================||“);
    Serial.println(“ \\================================================//“);
    default: delay(5);
    }

    }
    `

    odpověď na: Čtení hesla z #10343
    rades
    Účastník

    Tak jsem to nakonec vyřešil takto, ale stále uvažuji, jak vyřešit to, aby program čekal na zadání dalšího znaku..

    odpověď na: Připojení displeje 1602 s převodníkem I2C #10340
    Chucky77
    Účastník

    Ten program co máš v prvním příspěvku funguje dobře. Není asi důvod zkoušet něco jiného.
    Mám IDe 1.6.12 a knihovny přikládám. Zkus vymazat všechny co k liquid I2c máš a zkusit to znovu.
    Obvykle jsou v C:\Users\ doplnit \Documents\Arduino\libraries

    V knihovně
    LiquidCrystal_I2C.cpp
    je změna z 0 na 1 v této části kódu

    #define printIIC(args) Wire.write(args)
    inline size_t LiquidCrystal_I2C::write(uint8_t value) {
    send(value, Rs);
    return 1;

    Tak hodně zdaru.
    Ondřej

    odpověď na: Krokový motor #10339
    romansis
    Účastník

    Tady je ten kód.

    // Krokový motor a driver

    // čísla pinů pro digitální výstupy
    const int in1 = 8;
    const int in2 = 9;
    const int in3 = 10;
    const int in4 = 11;

    // proměnná pro nastavení rychlosti,
    // se zvětšujícím se číslem se rychlost zmenšuje
    int rychlost =1;
    //
    int uhel = 90;

    void setup() {
    // inicializace digitálních výstupů
    pinMode(in1, OUTPUT);
    pinMode(in2, OUTPUT);
    pinMode(in3, OUTPUT);
    pinMode(in4, OUTPUT);
    }

    void loop() {
    // plná rotace o 360 stupňů = 512 volání
    // funkce rotacePoSmeru() či rotaceProtiSmeru()
    for(int i=0;i<(uhel*64/45);i++){
    rotacePoSmeru();
    }
    // pauza po dobu 1 vteřiny
    delay(1000);

    for(int i=0;i<(uhel*64/45);i++){
    rotaceProtiSmeru();
    }
    // pauza po dobu 1 vteřiny
    delay(1000);
    }
    // zde následují funkce pro volání jednotlivých
    // kroků pro otočení po či proti směru hodinových
    // ručiček
    void rotacePoSmeru() {
    krok1();
    krok2();
    krok3();
    krok4();
    krok5();
    krok6();
    krok7();
    krok8();
    }
    void rotaceProtiSmeru() {
    krok8();
    krok7();
    krok6();
    krok5();
    krok4();
    krok3();
    krok2();
    krok1();
    }
    // každý krok obsahuje výrobcem dané pořadí
    // pro správné spínání motoru a následnou
    // pauzu, kterou určujeme rychlost otáčení
    void krok1(){
    digitalWrite(in1, HIGH);
    digitalWrite(in2, LOW);
    digitalWrite(in3, LOW);
    digitalWrite(in4, LOW);
    delay(rychlost);
    }
    void krok2(){
    digitalWrite(in1, HIGH);
    digitalWrite(in2, HIGH);
    digitalWrite(in3, LOW);
    digitalWrite(in4, LOW);
    delay(rychlost);
    }
    void krok3(){
    digitalWrite(in1, LOW);
    digitalWrite(in2, HIGH);
    digitalWrite(in3, LOW);
    digitalWrite(in4, LOW);
    delay(rychlost);
    }
    void krok4(){
    digitalWrite(in1, LOW);
    digitalWrite(in2, HIGH);
    digitalWrite(in3, HIGH);
    digitalWrite(in4, LOW);
    delay(rychlost);
    }
    void krok5(){
    digitalWrite(in1, LOW);
    digitalWrite(in2, LOW);
    digitalWrite(in3, HIGH);
    digitalWrite(in4, LOW);
    delay(rychlost);
    }
    void krok6(){
    digitalWrite(in1, LOW);
    digitalWrite(in2, LOW);
    digitalWrite(in3, HIGH);
    digitalWrite(in4, HIGH);
    delay(rychlost);
    }
    void krok7(){
    digitalWrite(in1, LOW);
    digitalWrite(in2, LOW);
    digitalWrite(in3, LOW);
    digitalWrite(in4, HIGH);
    delay(rychlost);
    }
    void krok8(){
    digitalWrite(in1, HIGH);
    digitalWrite(in2, LOW);
    digitalWrite(in3, LOW);
    digitalWrite(in4, HIGH);
    delay(rychlost);
    }

    odpověď na: Připojení displeje 1602 s převodníkem I2C #10336
    Jerry
    Účastník

    Zapojení jsem zkusil i přehodit ale to nereaguje vůbec

    odpověď na: Hodinový displej TM1637 #10335
    Oldast
    Účastník

    Zdravím a děkuji za vysvětlení,po klesnutí teploty pod 0st.mi zobrazí mínus,ale na displeji jsou nuly nebo F,C a nevím proč mi nezobrazuje teplotu(čísla),když čidlo ds18xxx by mělo ukazovat až -55st.Na serivém portu ukazuje i mínusové teploty a rele spíná tak jak má ale na displeji nic.nevím kde dělám chybu?

    odpověď na: Připojení displeje 1602 s převodníkem I2C #10334
    posjirka
    Účastník

    predpokladam ze mas spravne propoje mezi arduinem a prevodnikem.

    odpověď na: Připojení displeje 1602 s převodníkem I2C #10333
    posjirka
    Účastník

    a co zkusit nechat zapnout a vynout podsviceni lcd? to taky jede na prevodnik a pokud ani to nepojede je spatne knihovna nebo prevodnik. udelej proste jednoduchy blik program. kdyby toto fungovalo tak nektere lcd jsou citlive kdyz nemaji volne piny uzemnene. je otazkou jak je to reseno na prevodniku….

    odpověď na: Hodinový displej TM1637 #10332
    posjirka
    Účastník

    protoze display ukazuje pouze cisla jako jednotky tudiz neumi zobrazit desetina mista. dokonce ani nema jak protoze destinna tecka tam tusim neni pouze dvojtecka. je tu varianta zobrazit 10 nasobek teploty a tim bude videt i jedno des. misto. zobrazovat ale des. mista u cidla s presnost 1 st.c je holy nesmysl ktery delaji i zkusenejsi programstori (bez urazky). minus tam tusim jde zobrazit jako znak. ja to resil tak ze zprava mam „C“ pa jednotky desitkya posledni stovky nebo minus. stejne cidla ds18xxx umi min -55st.

    odpověď na: Krokový motor #10331
    posjirka
    Účastník

    bez kodu ti asi nikdo neporadi. predpokladam ze tam mas nejakou promennou ktera urcuje delku mezery mezi kroky. co tak podminka jestli je stsknute tlacitko tak nasv promennou na x jinak nastav na y?

    Chucky77
    Účastník

    Tak s tím jsem se taky přál. Teď už mě to jede. A mám i dva stejný převodníky na jednom UNU. Jen u jednoho jsem změnil adresu. Večer když tak mohu postnout knihovny i program.
    Knihovny originální jsou v program files, uživatelské pak v dokumentech.
    Ondřej

    Odesláno z mého Lenovo P70-A pomocí Tapatalk

    Vojtěch Vosáhlo
    Účastník

    No něco je určitě špatně ale proč hned kupovat nový displej? Zkuste odpájet i2c převodník a řídit displej přes piny na něm. Alespoň zjistíte kde je chyba.

    odpověď na: Připojení displeje 1602 s převodníkem I2C #10326
    Jerry
    Účastník

    A proč po zapnutí svítí jen první řádek ? To tak má být nebo už tady je něco špatně ?
    No nic koupím jiný a uvidím tohle není normální. Díky

    odpověď na: Čtení hesla z #10325
    Zbyšek Voda
    Účastník

    Pošlete kód 🙂

    odpověď na: Připojení displeje 1602 s převodníkem I2C #10324
    Jerry
    Účastník

    já už ani nevím pořádně co tam mám za knihovnu a kde je pořádně vymazat už jsem jich nahrál asi 11 a mám v tom neskutečnej guláš

    odpověď na: Připojení displeje 1602 s převodníkem I2C #10323
    Jerry
    Účastník

    Chyba při kompilaci deky

    odpověď na: Připojení displeje 1602 s převodníkem I2C #10322
    Kysa
    Účastník

    O IDE nejde. skuste toto

    #include <Wire.h>
    #include <LiquidCrystal_I2C.h>

    //nastavíme adresu a typ displeje
    LiquidCrystal_I2C lcd(0x3F,16,2); // nastavení adresy (0x3F) je důležité!!!

    void setup()
    {
    lcd.init(); // initializace lcd

    // Vypíšeme nějaké texty na jednotlivé řádky, adresace je od 0, ne od 1.
    lcd.backlight();
    lcd.setCursor ( 0, 0 );
    lcd.print(„Test“);
    lcd.setCursor ( 0, 1 );
    lcd.print(„LCD“);
    }

    void loop()
    {
    }

Aktuálně je na stránce zobrazeno 30 příspěvků - 781. až 810. (celkem z 2,768)