Close

bebeno28

Vytvořené odpovědi

Aktuálně je na stránce zobrazeno 30 příspěvků - 61. až 90. (celkem z 2,767)
  • Autor
    Příspěvky
  • odpověď na: řízení ohřevu bazénu #12022
    posjirka
    Účastník

    add optiboot: to vypadá na chybu programátoru. Předpokládám, že to flashuješ přes nějáký programátor a né přes USB samotného flashovaného arduina. TO by nešlo a musíš použít ISP programátor, nebo druhé arduino v této roli.

    add Watchdog: tady není moc věcí co by nemělo fungovat. Maximálně ten delay na konci o 3s. Když k tomu připočteš čas na načtení teplot z čidel (2×0,75 s) tak seš na 5s a do 8 je ještě daleko,… takže by to neměl být problém. To zatuhnutí ti může udělat i LCD display. nevěřil bych tomu, kdyby nám to na medometu takto nezatuhlo taky. 2 hodiny jsem si hráli s programem, vypnuli, za hodinu zapnuli a přesně jak píšeš. čtvrečky a procesor tuhý. Tak jsem zkoušeli změřit napětí, komunikace s PC nulová, napětí v pořádku 🙂 až jsem se dostal na krystal, tak s broukal na nějákých 5 kHz místo 16MHz, tak jsem jeje vymenili, po hodině zas zátuh, až jsem se nas.. vytáhnul LCd a začla znovu uživovoat. No a byl to LCD. Nevím jak ale n 2 arduinech jeden a na 3 ne. Prstě zátuh. Nikde kapka cinu, žádný zkrat, napěťové úrovně signálu v pohodě a za 2 hod. zátuh. Dali jsem nový LCD a už to šlape.

    ad Webserver: záleží co od něj čekáš. chceš webserver pro vlastní potřebu uvnitř domu, nebo to chceš monitorovat případě ovládat z venku (práce, druhý konec světa, .. 🙂 )
    Pokud jen doma je to v pohodě. Taky jsem tento víkend nad tím ztrávil pár hodin, rozchodil jsem ESP8266 v01. celkem mi pomohlo toto:
    https://www.arduinotech.cz/inpage/jak-na-iot-dil-ii-web-na-javascriptu-s-esp8266/

    pak jsem to zkoušel dát na thingspeak pomocí tohoto návodu:
    http://navody.arduino-shop.cz/navody-k-produktum/esp8266-a-thingspeak.html

    aktivoval jsem 1 kanál, nahrál data, pak jsem to chtěl poupravit a nepájivé pole mi při manipulaci opustil drát GND a po zapojení jsem si odpálil ESP- Tak jsem objednal NODEMCU a uvidíme.

    odpověď na: řízení ohřevu bazénu #12021
    macicek86
    Účastník

    Díky za podporu :).

    Funguje! Od tvého postu jsem program několikrát přepracoval, doplnil cidlo DHT.
    Po prvnim spusteni jsem se setkal s problémem : po zapnutí relé se arduino „kouslo“ zjistil sem že problém byl v napájení jelikož jsem projekt napájel přes usb vstup arduina a po sepnutí relé pravděpodobně nemělo dost proudu pro chod procesoru, tento problém byl vyřešen připojením napájení přímo na pin 5V. i přez to občas arduino vytuhlo a na displeji se zobrazily pouze obdelniky, myslel sem že tento problém vyřeší Watchdog, nicméně se zdá že na mém chinaduinu watchdog nepracuje správně a nedochází k restartu. Bohužel se mi nedaří naflashovat optiboot, vzdy skonci chybou „device signature 0xffffff“ přip. 0x000000 :(. nicmene ted pro zmenu bezi uz dva dny bez problemu.
    Nesehnal jsem na rychlo v našich končinách univerzélní DPS, takže projekt skončil jako „Vrabčí hnízdo“ je to nevzhledné ale funkční.
    Zvažoval sem implementovat jěstě webserver pro přśtup k informacím o teplotách prostřednictvím ESP8226, nicméně se mi zatím nepodařilo nalézt pro mne dostatečné podklady pro tuto aplikaci. mám k dispozici ESP8226 V7, vím že by tento modul zvládl obshluhovat celou aplikaci sám ale tomuto řešní by jsem se rád vyhnul.

    k funkci programu:

    V připadě že je teplota v bazénu (čidlo umístěno ve skimmeru) o něco menší než než teplota na panelu zapne se čerpadlo (kartušová filtrace – zvolena kuli tomu aby se nedostavali nečistoty do panelu) ohřevu.
    Toto čeprpadlo se vypne když teplota na panelu klesne pod určitou uroveň.

    kažďou hodinu vždy v půl se na pět minut rozběhne velka piskova filtrace, je to kuli tomu že kartušovka nesebrala napadane nečistoty z hladiny. čerpadlo ohřevu je blokováno během chodu piskove filtrace.

    piskova filtrace se pote taky spoušti v nastavenou dobu, v připadě použití „=“ bylo však nutné konec cyklu filtrace posunout o jednu hodinu, jinak by běžela o hodinu dele.

    Čerpadla jsou propojena pomocí T-kusů u skimmeru a u zpětné trysky přez zpětné klapky. Zpětné klapky jsou důležité jinak by jedna filtrace vytahovala vodu z druhé. Musel jsem však upravit zpětnou klapku kartušove filtrace ustřiženim kousku pružiny jelikož kartusovka nepremohla panel a ještě zpětnou klapku.
    Když jsem zpětnou klapku od kartušovky vyřadil, po zapnuti velke filtrace se panel skutečně ochlazoval obracene.

    Doufám že povidání dava smysl… :).
    Uvital bych jakoukoliv radu ohledne doplneni web serweru…
    Diky.

    odpověď na: WIFI XBEE WEE #12014
    ZdenekRSA
    Účastník

    Dobry den,
    dekuji za Vasi odpoved. Ja jsem v tomto oboru zacatecnik, ale myslim, ze mi vase odpoved hodne pomohla. Budu si s tim hrat podle vaseho navodu a dam Vam vedet.
    Jeste jednou dekuji.

    odpověď na: WIFI XBEE WEE #12013
    Zbyšek Voda
    Účastník

    Dobrý den,
    nejsem si teď úplně jistý, ale tento modul komunikuje přes sériovou linku, že?

    On je problém v tom, že nahrávání programu do Arduina probíhá také přes sériovou linku a když je na ní připojeno ještě něco dalšího, bývá problém s tím, že připojená věc ruší komunikaci na lince.

    U desky Arduino Mega máte výhodu, že má vícero hardwarových sériových linek (Označené RX0, TX0, RX1, TX1, …). Programování Arduina probíhá přes RX0 a TX0. Probém můžete vyřešit tím, že WiFi Modul připojíte na jinou sériovou linku, než RX0 a TX0. Pak musíte také upravit program, ale to by mělo být jednoduché 🙂

    posjirka
    Účastník

    ještě je možnost použít sw PWM ale myslím, že přepojit 2 piny vs zabrat zbytečně pamět a strojový čas procesoru je jasný vítěz přehodit 2 pin.

    Pro sw řešení můžeš použít knihovnu:
    https://github.com/Palatis/arduino-softpwm

    ta ti umožní udělat pwm signal na libovolném pinu, jen to zabere kus místa ve flash paměti, časovač tuším timer2 a neustálé přerušení hlavní smyčky programu aby se vykonala pwm funkce.

    u HW řešení jen pošleš na pin hodnotu a o ostatní se stará samotný čip a program běží nezávisle …

    posjirka
    Účastník

    princip máš správný, jen máš špatné zapojení.
    Předpokládám, že stejný problém máš i u „pravý motor vpřed“.
    Proč:
    né všechny piny na Arduinu Uno mají možnost PWM regulace. Ty které to umožňují jsou na desce označeny vlnovkou. Jedná se o piny č. 3, 5, 6, 9, 10, 11.
    Některé jiné desky mají PWM i na jiných pinech.
    Řešení:
    přepoj to na správné piny a uprav si program….

    pozn. chválím za popis problému, schéma zaopjení a kod programu. Takto se dá najít problém během chvilky a dá se nad problémem v klidu zamyslet. víc takových popisů a forum se nám zkrátí na polovinu 🙂

    odpověď na: Velikst pole #12000
    pedyngro
    Účastník

    Díky, je to ono, měl jsem tam 21 místo 20.

    odpověď na: Velikst pole #11998
    Zbyšek Voda
    Účastník

    Nemáte jiný rozměr vytvářeného pole, než uvádíte v hranatých závorkách?
    Podobný error hlásí i int x[2][2] = {{1,2},{2,3},{3,4}};

    Když to nepomůže, pošlete kód 🙂

    odpověď na: Stolarina a vas svet #11967
    Do_it
    Účastník

    Tak my ciknete na 734111563 a domluvíme se 🙂

    odpověď na: proměnný název proměnné #11966
    Zbyšek Voda
    Účastník

    Není zač, ať se daří. Jsem rád, že program funguje 🙂

    odpověď na: Bezdrátové čidlo teploty z meteostanice #11965
    posjirka
    Účastník

    tady bych šel cestou předem připravené knihovny. Zkus „Sensortransmiter“.
    Tady je k ní tutorial:
    https://www.root.cz/clanky/arduino-na-433-mhz-komunikuje-s-bazenovym-teplomerem/

    odpověď na: řízení ohřevu bazénu #11964
    posjirka
    Účastník

    a je něco co ti nefunguje?

    Když se dívám na program tak vpadá vcelku schopně. Jednoduchý, přehledný, bez zbytečných kudrlinek.

    Co tam vidím za prostor ke zlepšení:
    – nemáš vyřešeno nastavení RTC. Lze udělat auto nastavení po připojení k PC. Jinak po výměně baterie o ten čas přijdeš, nebo musíš měnit baterii za chodu.

    – 10 bit rozlišení na čidle DS18B20 j nesmysl. Jeho tolerance je 0,5 st.C tudíž nějáké průměrování není nic moc. Já tyhle čidla používám pro celé st.C = nepoužívám float ale int nebo lépe byte pro kladné hodnoty. zbytečně nezabíráš paměť procesoru.

    -pro nastavení zapniA, vypniA, … můžeš do podmínky dát i rovná se:
    if (datumCas.hour() => zapniB && datumCas.hour() =< vypniB) {
    lépe ta využiješ formát času. Teď to nepotřebuješ, ale kdyby si šel až do 23 hod, tak ti nepůjde podmínka vypni, protože další hodina je 00.

    – v popisech nepoužívej diakritiku. Stejně tyto znaky překlopí anglická sada znaků na „?“

    co víc napsat? Mě se tenhle sparťanský přístup líbí a pokud ti vše funguje jak má, nevidím v tom problém. Dobrá práce. Jestli budeš mít dobrou vůli, tak sem prosím dej i schéma případě nějákou fotku ať se ostatní můžou inspirovat …

    odpověď na: proměnný název proměnné #11963
    pedyngro
    Účastník

    Moc díky, konečně to funguje, jak má! Už jsem se sám pokoušel nějakým způsobem předat hodnoty pole přes parametr funkce zobraz, ale nevěděl jsem jak. Asi sebudu muset líp naučit C a nespoléhat na to, že co jde v pythonu, jde všude…

    Ještě jednou moc děkuji za čas, který jste si na mě udělal, místo abyste mě odkázal na učebnici C.

    odpověď na: Stolarina a vas svet #11962
    hoblik
    Účastník

    Diky za odpoved , je mozne abychom si zavolali nebo na skype ?
    Petr

    odpověď na: GARDUINO.CZ = GARDENING + ARDUINO #11961
    Jarda_1
    Účastník

    mám to doplněné ještě zářivkovou trubici pro rostliny „Flora“
    ale dík za radu, příští sezonu přidám

    odpověď na: GARDUINO.CZ = GARDENING + ARDUINO #11960
    Do_it
    Účastník

    Jojo ty jsou dobrý cena ku výkonu ku účinnosti 🙂 přidej na růst cre led modrý bude se více tvořit kořenový bal a protáhne se kiticka více do výšky.

    odpověď na: proměnný název proměnné #11958
    Zbyšek Voda
    Účastník

    Je tam více problémů.

    Jeden problém je v tzv. scope – česky tuším rozsah platnosti proměnných.
    Na začátku si vytvoříte pole diody, které je globální – můžete k němu přistupovat ve všech funkcích. Potom si třeba ve funkci a vytvoříte pole diody, které je pro tuto funkci lokální. A tím zastíníte globální pole diody. Dále dojde k zavolání funkce zobraz(), ale ta nevidí to lokální pole z funkce a, ale globální pole diody definované na začátku.

    Kdyby se nejednalo o pole, stačilo by odebrat klíčové slovo boolean ve funkcích a pak už by se měnila hodnota globální proměnné. U pole to ale tak jednoduché není, protože nejde napsat ve funkci diody[3][3] = {{1,1,1},{1,0,1},{1,1,1}};.

    Napadají mě dvě cesty, jak to řešit.

    První možnost:
    Vytvoříte si několik globálních polí, která budou obsahovat požadované sekvence
    Třeba: boolean v1[3][3] = {{1,1,1},{1,0,1},{1,1,1}};
    a potom v jednotlivých funkcích překopírujete obsah požadovaného pole do pole diody.
    memcpy(diody, v1, 9 * sizeof(boolean));
    O memcopy viz zde: http://www.cplusplus.com/reference/cstring/memcpy/

    Druhá možnost:
    Funkci zobraz() přidáte parametr typu pole, přes který vždy předáte pole do funkce zobraz. To pak můžete nechat kód tak, jak máte (lokální pole v tomto případě nevadí), jen přidáte zavolání funkce s parametrem pole: zobraz(diody).
    Globální pole diody pak můžete zahodit. Tato cesta je asi schůdnější

    odpověď na: Stolarina a vas svet #11957
    Do_it
    Účastník

    Musí být baterie nabíjena přez USB? Nebo bylo lepší trochu vic rozvést jak si to představujete

    odpověď na: GARDUINO.CZ = GARDENING + ARDUINO #11953
    Jarda_1
    Účastník

    používám LED – 10W
    http://www.ebay.com/itm/100W-50W-30W-20W-10W-3W-380NM-840NM-Full-Spectrum-High-Power-LED-Chip-Grow-Light-/321831784996?var=510765932395
    foto z ledna

    odpověď na: GARDUINO.CZ = GARDENING + ARDUINO #11952
    Do_it
    Účastník

    Nebo jelikož čidlo na měření půdy je nic moc tak dát čidlo na detekci deště čidlo na sluníčko a udělat k tomu graf na zalévání
    Co používáš za led?

    odpověď na: Nejdou mi nainstalovat ovladače Arduino UNO #11951
    santa999
    Účastník

    Asi je to něco nového koukám. Nicméně jsem to dnes zkoušel na XP a tam to jede v pohodě takže pro mě je to na 50% vyřešené 😀

    odpověď na: proměnný název proměnné #11947
    pedyngro
    Účastník

    Pokusil jsem se ten soubor nahrát tlačítkem „procházet…“, ale nezobrazilo se to tu, takže jsem to vložil do odpovědi ctrl+c ctrl+v… Jinak moc díky za pomoc!

    [code]
    byte led1 = 8; //nastavení pinů pro jednotlivé diody
    byte led2 = 10;
    byte led3 = 12;

    boolean diody[3][3] = {{},{},{}};

    int znak = 20; //doba svícení
    int mezeraZnak = 10; //mezera mezi dvěma bliknutími v jednom písmenu
    int mezeraPismeno = 30; //mezera mezi písmeny

    char napis[] = „calex“;
    int delkaNapisu = sizeof(napis)/sizeof(napis[0]);

    void a(){
    boolean diody[3][3] = {{1,1,1},{1,0,1},{1,1,1}};
    zobraz();
    }

    void c(){
    boolean diody[3][3] = {{1,1,1},{1,0,0},{1,1,1}};
    zobraz();
    }

    void e(){
    boolean diody[3][3] = {{1,1,1},{1,1,0},{1,1,1}};
    zobraz();
    }

    void l(){
    boolean diody[3][3] = {{1,0,0},{1,0,0},{1,1,1}};
    zobraz();
    }

    void o(){
    boolean diody[3][3] = {{1,1,1},{1,0,1},{1,1,1}};
    zobraz();
    }

    void x(){
    boolean diody[3][3] = {{1,0,1},{0,1,0},{1,0,1}};
    zobraz();
    }

    void zobraz(){
    for (byte i = 0; i < 3; i++){ //postupně projíždí sloupce
    for (byte j = 0; j < 3; j++){ //projíždí hodnoty řádku v každém sloupci
    if (diody[i][j] == 1){ //pokud je hodnota 1, rozsvítí příslušnou diodu
    if (j == 0){
    digitalWrite(led1,HIGH);
    }
    if (j == 1){
    digitalWrite(led2,HIGH);
    }
    if (j == 2){
    digitalWrite(led3,HIGH);
    }
    }
    }
    delay(znak); //nechá chvíli rozsvíceno
    digitalWrite(led1,LOW); //všechno zhasne
    digitalWrite(led2,LOW);
    digitalWrite(led3,LOW);
    delay(mezeraZnak); //nechá zhasnuto
    }
    delay(mezeraPismeno); //nechá zhasnuto – mezera mezi písmeny
    }

    void setup() {
    Serial.begin(9600);
    pinMode(led1,OUTPUT);
    pinMode(led2,OUTPUT);
    pinMode(led3,OUTPUT);
    }

    void loop() {
    for (int i = 0; i < delkaNapisu; i++){ //projíždí po jednom pole „nápis“
    if(napis[i] == ‚a‘){ //pokud je aktuální hodnota v poli „a“, pustí funkci „a“
    a();
    }
    if(napis[i] == ‚c‘){
    c();
    }
    if(napis[i] == ‚e‘){
    e();
    }
    if(napis[i] == ‚l‘){
    l();
    }
    if(napis[i] == ‚o‘){
    x();
    }
    if(napis[i] == ‚x‘){
    x();
    }
    }
    }
    [/code]

    odpověď na: proměnný název proměnné #11946
    Zbyšek Voda
    Účastník

    Pošlete celý kód, takhle se nikam neposuneme.

    odpověď na: proměnný název proměnné #11945
    pedyngro
    Účastník

    Pole mám definované na začátku programu (mimo setup a loop), zjistil jsem, že při printování z funkce „zobraz“ jsou tam hodnoty, které jsou zadané na začátku při vytvoření pole, ty další změny už to nebere v potaz…

    odpověď na: proměnný název proměnné #11944
    Vojtěch Vosáhlo
    Účastník

    Pole musíte mít nadefinované mimo smyčku, třeba na začátku programu. Takhle s ním může pracovat jen smyčka ve které bylo pole „stvořené“.

    odpověď na: proměnný název proměnné #11943
    pedyngro
    Účastník

    Díky, mělo by to fungovat, ale když nastavím např. ve funkci „a“ hodnoty pole „diody“, někde se to cestou ztratí:

    void a(){
    boolean diody[3][3] = {{1,1,1},{1,0,1},{1,1,1}};
    Serial.println(diody[0][0]);
    zobraz();

    void zobraz(){
    Serial.println(diody[0][0]);
    for (byte i = 0; i < 3; i++){
    atd…

    Když to nechám vyprintovat z té funkce, kde hodnoty nastavuji, je všechno v pořádku, ale v další funkci, která s hodnotami dále pracuje, už je všechno „0“.

    Nevíte, čím by to mohlo být?

    odpověď na: casomira a zpracovani vysledku #11942
    martinius96
    Účastník

    Zdravím, programoval som Arduino UNO s Ethernet shieldom, i keď pri počasí. Údaje som nahrával online na web do databázy, následne bolo možné údaje zobrazovať, pracovať s nimi. Vedel by som vám teda pomôcť so zaznamenaním, uložením a vyobrazením na webe. K dispozícii vám však môžem byť až o 3 týždne. Ak by vás to zaujalo, môžeme sa dohodnúť. Kontaktný e-mail: martinius96@gmail.com

    odpověď na: Home automation #11941
    martinius96
    Účastník

    Zdravím vás, robil som čosi podobné, a vedel by som vám pomôcť, zaznamenával som štandardné hodnoty, ktoré som nameral a uploadoval to na internet cez Arduino s Ethernet Shieldom v pravideľných intervaloch, na stránke sa údaje aj štatisticky vyhodnocovali a stránka obsahuje aj prognózu počasia. Momentálne je stránka neaktívna, ale je tu: arduino.php5.sk

    odpověď na: proměnný název proměnné #11940
    Zbyšek Voda
    Účastník

    Dobrý den, v C název proměnné nezměníte.
    Můžete ale udělat dvojrozměrné pole.

    Místo

    boolean dio1[] = {1,1,1};
    boolean dio2[] = {1,0,1};
    boolean dio3[] = {1,1,1};

    zapište

    boolean dio[3][3] = {{1,1,1}, {1,0,1}, {1,1,1}}

    a potom už můžete indexovat tak, jak jste to zamýšlel:
    třeba: dio[j][i]

    odpověď na: GARDUINO.CZ = GARDENING + ARDUINO #11939
    Jarda_1
    Účastník

    growduino.cz – dobrý, ani ceny nejsou přemrštěné.
    Asi jak to máš, ty to je nejjednodužší, ale chilli papričkám vadí přilití což se se může stát pokud bude chladno a zataženo, můj cíl je dávkovat vodu na základě vlhkosti půdy. Ledky také využívám než dám sazeničky ven.

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