Close

dehtak

Vytvořené odpovědi

Aktuálně je na stránce zobrazeno 30 příspěvků - 1,501. až 1,530. (celkem z 2,768)
  • Autor
    Příspěvky
  • odpověď na: Rada pro začátečníka -stmívač a žaluzie #8706
    petan
    Účastník

    Na otevření/zavření ti stačí jenom jedna proměnná. Bool může nabývat dvou hodnot true = otevřeno a false = zavřeno. Když budeš mít pro otevřeno a zavřeno dvě proměnné, tak si v tom uděláš akorát guláš. Nehledě na to, že existuje možnost mít obě aktivní. Co by pak platilo? Otevřeno, nebo zavřeno?

    
    bool otevreno = false; //pokud je true, je otevřeno; pokud je false, je zavřeno
    

    V podmínce „else“ už neřeš intenzitu osvatělení pomocí IF. Když se neprovede první IF (když je dost světla), tak se provedou příkazy za ELSE. Už to namusíš komplikovat další podmínou.

    Koukni se na můj starší příspěvek. Tam je v podstatě celej program, kromě setupu a deklarací proměnných. Příkazy pro otevření a zavření žaluzií si doplníš s tvýho příspěvku (DigitalWrite atd). Deklaraci před a v vouid setup(); doplň taky od sebe + tu deklaraci proměnné bool… Případně dopřejmenuj nějaký proměnný (já mám int ldr_value označenou jako intenzita).

    PS.: Nemělo by být ldr = A0?
    PPS.: Já jsem taky začátečník. Jedinej program, kterej jsem zatím naprogramoval je v tomto sodobaru
    PPPS.: Doporučuji zkouknout tu knížku, co tu furt vyskakuje. Je tam spousta základů
    PPPPS.: Docela mě překvapuje, jak je to tu mrtvý. Doteď jsem si myslel, že si s Arduinem hrajou uplně všichni kromě mě 🙂
    PPPPPS.: Přešel bych na PHPbb fórum (nebo jak se jmenuje). Tohle je celkem nepřehledný a pomalýýýýýýýýýýý 😛

    odpověď na: Ovládání klimatizace #8705
    Zbyšek Voda
    Účastník

    Dobrý den, určitě by to nějak šlo.
    Třeba tady http://www.instructables.com/id/Air-Conditioning-web-controlled-by-Arduino/?ALLSTEPS o tom píšou.

    odpověď na: Rada pro začátečníka -stmívač a žaluzie #8704
    Ladis_Kv
    Účastník

    Tak jsem to dal dohromady,ale ještě nevím jak deklarovat „otevreno“ a „zavreno“ -třetí a čtvrtý řádek.
    Aby potom fungovalo true a false.
    Poradiš mi?Děkuji

    int ldr = 0;
    int ldr_value = 0;
    //int otevreno = ???
    //int zavreno = ??
    void setup()
    {
    pinMode(8,OUTPUT);
    pinMode(9,OUTPUT);
    //pinMode(A0,INPUT);
    Serial.begin(9600); //spuštění serioveho rozhrani
    }
    void loop()
    {
    ldr_value = analogRead(ldr); //čte hodnoty čídla
    Serial.println(ldr_value);
    if(ldr_value > 500){ //první podmínka (stmívání)
    //if(otevri){
    zavri();
    // }
    }
    else{
    if(ldr_value < 500){ //druhá podmínka (rozednění)
    otevri();
    }
    }
    }

    void zavri(){
    digitalWrite(8,HIGH); // pro dc motor
    digitalWrite(9,LOW);
    delay(3000);
    zavreno = false;
    vypni();
    }
    void otevri(){
    digitalWrite(8,LOW); // pro dc motor
    digitalWrite(9,HIGH);
    delay(1000);
    otevreno = true;
    vypni();
    }
    void vypni(){
    digitalWrite(8,LOW); // pro dc motor
    digitalWrite(9,LOW);
    delay(1000);
    }

    odpověď na: Rada pro začátečníka -stmívač a žaluzie #8701
    Ladis_Kv
    Účastník

    Petane mohl by jsi mi prosím tě s tím programem pomoct(napsat ho).Sám to zřejmě nezvládnu.Nějak v tom lítám a nedokážu udělat
    cyklus aby při „tmě“ se udělal 1 příkaz pro povel „zavři“ a potom se zase mohl udělat až po cyklu otevři.
    Nakonec tam nebude intenzita,ale logická 1(zavřeno),nebo logická 0(otevřeno).
    Pro tebe to bude maličkost a já se tím naučím víc…
    Nebo pokud budeš ochotný tak mi to pošli na e-mail. ladkva@gmail.com
    Díky
    L.

    odpověď na: Rada pro začátečníka -stmívač a žaluzie #8699
    petan
    Účastník

    Připoj k motoru ještě enkodér např. jako tento: https://goo.gl/xbrZ63 a počítej impulsy. Pak s tím můžeš dělat víc věcí – zatáhnout/roztáhnout, zavřít/otevřít. Dalo by se detekovat třeba zaseknutí žaluzií apod…

    odpověď na: Rada pro začátečníka -stmívač a žaluzie #8691
    Ladis_Kv
    Účastník

    jo to je dost místa,ale zrovna ho zabírá motor s převodovkou a chtěl bych jít k tomu jen s dvěma dráty.
    motor bych tam chtěl tento https://goo.gl/AG8l9X

    odpověď na: Rada pro začátečníka -stmívač a žaluzie #8690
    posjirka
    Účastník

    pokud tam máš 25x25x70mm tak to je místa víc než dost:
    http://www.ges.cz/cz/tcst1103-GES05100332.html
    http://www.ges.cz/cz/tcst2103-GES05100333.html
    http://www.ges.cz/cz/cny70-GES05100334.html
    stačí si vybrat který ti bude vyhovovat a samozřejmě je ještě více typů.
    Dal bych to na PCB, který by ti umožnil jak lepší přidělaní, tak i připojení kabelu ….

    odpověď na: Rada pro začátečníka -stmívač a žaluzie #8684
    Ladis_Kv
    Účastník

    Jo tak nad tím jsem uvažoval taky.Bylo by to super (optické snímače jsou i levné) a také přesné hlídání krajních poloh.Jenže jak jsem psal dříve,tak to chci dát dovnitř žaluzie (kde jsou převody a roluje se tam ten pásek)
    A tam je prostor cca 25x25x70mm. Takže mi tam tam optický člen nevejde.
    Vlastně potřebuji jen aby příkaz IF udělal jen jednou a pokud se neudělá druhá podmínka tak aby se už nedělal ten první příkaz.Vypadá to jednoduše,ale…..
    Viz výše mi poradil Petan.Trochu nad tím musím popřemýšlet a něco vytvořit.
    Jsem opravdu začátečník,tak mi to do té hlavy moc nejde…
    Ale díky za rady.

    odpověď na: Rada pro začátečníka -stmívač a žaluzie #8673
    Vojtěch Vosáhlo
    Účastník

    Já bych použil nějaké optické hradlo a takové to kolečko kde se střídá černá a průhledná. Vzor se dá sehnat na internetu a na laserovce vytisknout na průhlednou fólii. Hradlo můžete koupit a nebo i s kolečkem vytáhnout ze staré tiskárny. Asi by to mohlo fungovat dobře, nemusíte natahovat kablíky pro koncáky a můžete použít nějaký obyčejný motor. Pak se to dá ovládat prakticky jak servo.
    Držim palce

    odpověď na: Code::block #8669
    DavidTor
    Účastník

    AVR studio jsem zkoušel, bohužel mi přišlo moc těžkopádné. Je postavené na VS.
    IDE arduino je nepoužitelné pro velké projekty. Aspoň pro mě. Mám kód který má už cca 11000 řádků. Neumím si představit jak bych to v něm dělal. Využívám také debuger který je součástí Visual Micro.

    odpověď na: Code::block #8668
    posjirka
    Účastník

    a co klasické AVR studio ?
    Já teda používám Arduino IDE a jsem spokojený. Zatím jsem neměl důvod hledat něco jiného. Pro vyšší programovací jazky používám Visual Studio nebo Sharp Develop (VB.net nebo C#) ale v Arduino jsem pokojený s klasikou.

    odpověď na: Rada pro začátečníka -stmívač a žaluzie #8667
    Ladis_Kv
    Účastník

    jo servo by bylo lepší, ale nenašel jsem které by mělo průměr 25mm a dostatečný výkon aby to s tím otočilo.
    Zatím jsem takový nenašel.Jen motor DC s převodovkou.
    Ten motor by měl být schovaný v žaluzii.
    No zkusím se s tím nějak poprat.
    Díky

    odpověď na: Rada pro začátečníka -stmívač a žaluzie #8666
    petan
    Účastník

    Čemu nerozumíš? Zkus si projít kód řádek po řádku. Schválně jsem ho rozdělil na jednotlivý funkce, aby si mohl každou pochopit zvlášť. Navíc rozdělení na jednotlivý funkce (procedury) usnadňuje úpravy v programu.

    Nebo zkus servo. To se umí jednoduchým příkazem otočit o 180°. Ráno nastavíš, aby se servo otočilo např. na 0° a večer na 180°. Servo má v sobě elektroniku, která si sama měří úhel, takže opravdu jenom pošleš hodnotu a o nic jinýho se nestaráš.

    Pro servo by to mohlo vypadat takhle:

    #include <Servo.h> 
    
    Servo servopohon; //instance objektu (to neřeš)
    
    void setup() 
    { 
      servopohon.attach(8); //servo připojeno na pinu 8
    } 
    
    void loop() {
    //opakuj stále dokola
    
    intenzita = analogRead(A0); //načti intenzitu osvětlení
    
    if (intenzita > 500){
    //pokud je tma
    servopohon.write(0); // nastavit úhel na 0
    }
    
    else{
    //pokud není tma
    servopohon.write(180); // nastavit úhel na 180
    }
    
    } 
    odpověď na: Rada pro začátečníka -stmívač a žaluzie #8665
    Ladis_Kv
    Účastník

    No trochu v tom bádám…a nevím..
    asi to nebude fungovat,nebo tomu nějak nerozumím.
    Budu mít na dvou digi výstupech zapojen budič pro morky.A tam se bude otáčet napětí.
    Nemám koncáky a nic jiného.Chci to zkusit časově.Pokud to půjde.A chci jen zavřít a otevřít žaluzie -ne vytahovat je nahoru a dolu.
    Prvně jsem tam chtěl dát krokový motor,ale nenašel jsem vhodný typ(jak výkonem,tak velikosti).
    Máte někdo jiné nápady,které by mi pomohly?Děkuji
    Budu rád za jakoukoli radu k danému problému.

    odpověď na: Rada pro začátečníka -stmívač a žaluzie #8664
    Ladis_Kv
    Účastník

    Díky moc,
    je vidět že to dost umíte.
    Já to promyslím vše,dopíšu jak má být a vyzkouším.
    Pak se ozvu a napíšu jak to dopadlo.
    p.s. jsem trochu pomalejší… 😀
    ještě jednou díky
    L.

    odpověď na: Rada pro začátečníka -stmívač a žaluzie #8661
    petan
    Účastník
    
    void loop(){
    
    if (intenzita > 500){
    //pokud je tma
    if(otevreno){
    //pokud je tma (z předchozí podmínky) a žaluzky jsou otevřeny
    zavri();
    }
    }
    
    else{
    //pokud není tma
    if (!otevreno){
    //pokud není tma (z předchozí podmínky else) a žaluzie jsou zavřeny
    otevri();
    }
    }
    
    }
    
    void zavri(){
    //zde napsat příkazy k zavření žaluzií (zapnutí výstupů apod)
    delay(5000);
    otevreno = false;
    vypni();
    }
    
    void otevri(){
    //zde napsat příkazy k otevření žaluzií (zapnutí výstupů apod)
    delay(5000);
    otevreno = true;
    vypni();
    }
    
    void vypni(){
    //příkazy k vypnutí pohonu žaluzií
    }

    Asi takhle bych to viděl… Psal jsem to „poslepu“, ale mělo by to fungovat. Možná budou šatně velikosti písmen.

    odpověď na: Rada pro začátečníka -stmívač a žaluzie #8660
    Ladis_Kv
    Účastník

    Na pinech 8 a 9 bude dc motorek,přes budič L298N.
    A ten analog je A0.
    Když se setmí tak hodnota zůstane (nad 500) ,takže potřebuji aby to jednou seplo na určitou dobu a pak se vlastně čeká až na ráno kdy se hodnota změní pod 500.

    odpověď na: Rada pro začátečníka -stmívač a žaluzie #8656
    Zbyšek Voda
    Účastník

    Co je připojeno na pinech 8 a 9?

    Zkusím vás nasměrovat 🙂 Přidejte si ještě jednu proměnnou, ve které budete uchovávat, jestli je žaluzie zatažená, nebo roztažená.

    Potom budete zkoumat:
    -je hodnota nad určitou hodnotu a je roztaženo? -> zatáhni
    -je hodnota pod určitou hodnotu a je zataženo? -> roztáhni

    Také nesmíte zapomenout nastavit aktuální hodnotu proměnné po zatažení či roztažení.

    PS. Asi v kódu myslíte analogový pin A0, ne jenom 0 🙂

    odpověď na: Lawn Mower #8652
    posjirka
    Účastník

    ovládání j epomocí smyčky v zemi, kam se pouští cca 34kHz. sekačka má 2 snímací cívky, které vyhodnocují zda nejsou na kraji a pokud ano tak otočísekačku.
    co se týká desky tak tam první, která je i popsaná obsahuje v podstatě jen solární nabiječku a 2 filtry pro detekci té zemní smyčky.
    Bohužel tam není popsána ta druhá deska, která ovládá motory.
    Je to vcelku slušně navržené a i když mi některé hodnoty nevycházejí musím uznat, že je to slušná práce od původního tvůrce.
    Co mi nevychází je , že baterie má kapacitu 2,1Ah, odběr je cca 2A, panel dobijí v optimálním případě cca 0,6A a má posekat zahradu 500m2 za 3 hodiny.
    Když bude baterie plně nabitá, tak vydrží max 1 hod, při průběžném dobijení je to cca 1,5A a to bude totálně vyždímaná a bude se snižovat životnost baterie.
    Ten nabijecí ostrov … nevím. Musel bys rozšířit i vybavení nebo program o návrat na původní pozici, kde skončil. jinak hrozí, že budeš sekat neustále tu samou část.
    Fotovoltaický panel a průběžné dobijení mi přijde jako velmi dobré řešení.
    Moc by se mi něco takového líbilo jen toho času se nedostává … počkám si na nový domeček a volný čas 🙂

    odpověď na: Code::block #8637
    DavidTor
    Účastník

    Bohužel jsem zjistil, že při kompilaci kódu který měl cca 160kB,to Code:Block nějak nezvládal. Musel jsem hledat náhradu. Přešel jsem na Visual Studio s doplňkem Visual Micro. To co píšeš by měl umět.

    odpověď na: Lawn Mower #8625
    Vojtěch Vosáhlo
    Účastník

    Z mojeho pohledu tomu ten panel spíš přidává na ceně než cokoliv jiného 😉 myslím že když se to slušně navrhne tak by to na jedno nabití mohlo střední zahradu posekat a pak si to pro šťávu kdyžtak zajede jak říkáte. Můžu se zeptat jak budete sekačce vytyčovat ůzemí na kterém jezdit?
    Držím palce ať uspějete.
    Vojta

    odpověď na: Code::block #8624
    p.maly
    Účastník

    Já právě hledám nějaký šikovný simulátor. Vyzkoušel jsem Virtonics, velice jednoduché a intuitivní, na první pohled je jasné co s tím. Bohužel ale, plné bugů. Code:Blocks mám nainstalováno, ale netuším co s tím. Chci jen nahrát jednoduchý kód pro Nano, spustit jej, a pak vidět „obrázek“ modulu, kde budu vidět úrovně výstupních pinů, a moci měnit hodnoty na vstupních pinech. Nic víc. Je někde pro Code:Block nějaký how-to-begin návod, nejlépe ve stylu kuchařky (step by step)?
    Díky, Petr

    odpověď na: Lawn Mower #8622
    kamaov
    Účastník

    Děkuji za info, myslel jsem si to.
    Lepší by bylo, vytvořit fotovolt ostrov a sekačka ať zajíždí pro šťávu.
    Uvidím a díky za názor!

    odpověď na: Automatický sodobar – hotovo #8621
    posjirka
    Účastník

    díky za doplnění …

    odpověď na: Automatický sodobar – hotovo #8604
    petan
    Účastník

    Jumperem se na desce spouští diagnostika (odesílá se stav zařízení na sérivou linku) – propojením dvou prostředních se na pin A2 přivede log. 1. jinak tam pull-down rezistor udržuje log. 0. Ostatní jumpery jsou nezapojeny.

    LED je dodělávána dodatečně. Je připojena na pin č. 11. Tlačítko má v sobě LED a předřadný odpor na 12 V. Já to živím 5V přímo z Arduina. Svit je dostatečný a odměr minimální.

    Schémata aktualizuji a až plně odladím program, tak na stránku asi umístím i ten. Zatím mě tedy nenapadá co na něm odlaďovat. Funguje, takže to asi jenom trochu „učešu“ 🙂

    Šasi to už má. Na videu je vidět, že je to zabudováno do plechové krabice – nějaký starý rozvaděč. Půjde to jako celek zabudovat do linky, takže pro běžného smrtelníka by měla být viditelná pouze výčepní konzolka.

    odpověď na: Automatický sodobar – hotovo #8596
    Zbyšek Voda
    Účastník

    Dobrý den, je to krásná práce 🙂
    Je super, když je projekt i vizuálně zajímavý a to se povedlo! 🙂
    Plánujete i nějakou šasi?

    odpověď na: Automatický sodobar – hotovo #8595
    posjirka
    Účastník

    zajímavý projekt. Jen mě zajímají 2 věci, které jsem nenašel v popisu:
    1, Na desce vpravo dole jsou napájeny pin, ale nenašel jsem nikde jejich zapojení, je to pro výběr nějákých přednast. režimů?
    2, kde je výstup na tu LED diodu u ovl. panelů? Je to pralalelně ke spínači?

    Jinak klobouk dolu ….

    odpověď na: Lawn Mower #8590
    Vojtěch Vosáhlo
    Účastník

    Dobrý den,
    ta deska je asi pouze jejich výrobek takže bych předpokládal že se dá koupit pouze u nich…
    Kdyby jste nechtěl kupovat přímo jejich shield, dalo by se využít pár modulů k arduinu a cena by byla nejspíše mnohem nižší. Nebo si to postavit sám. O lepším návodu bohužel nevím ale i s tímhle si můžete vyhrát.
    Držím palce

    odpověď na: Komunikace s více jednotkami #8586
    Luke_CZ
    Účastník

    To, co popisuješ, lze vyřešit:
    a, rychlejším komunikačním protokolem např. SPI namísto I2C
    b, optimalizací programu
    c, rychlejším HW
    Problém může být i zápisem na SD, Arduino v tomhle není žádný Ferrari.

    Na okraj, co potřebuješ tak často sledovat, respektive logovat?

    odpověď na: Komunikace na 433Mhz #8579
    bot
    Účastník

    Děkuji za Vaše rady.

    Pomocí těchto návodů jsem to již předtím zprovoznil.

    Teď bych si chtěl napsat něco svého jednoduchého, jelikož to poté chci přepsat do Cečka pro attiny13a. Potřebuji spínat vysílačem 3 nezávislé relé(každé bude mít svůj přijímač). Tedy dle sepnutého tlačítka se odešle patřičný paket, který dešifruje jeden zvolený přijímač (jedno relé). Vesměs jsem našel i hotové řešení a odzkoušené na attiny13a, ale mě zcela nefunguje korektně (vysílač musím držet v prstech ve správné poloze, až poté začne vysílat)

    Co jsem tak zkoušel, tak je problém s funkcí delay(). Po odstranění, se již arduino „nezasekne“, ale i tak se chová divně. Nehledě na to, že by měla fungovat bez problému pokud se nepoužije přímo v ISR.
    Zkoušel jsem vypnout i přerušení poté co přijme správný packet(„10011100“) a opět ho poté zapnout. To bohužel také nezabralo. Zdá se mi, že je problém s časovači, nejspíše někde přetečou, a proto se arduino chová divně(náhodně), ale vůbec se v tom nevyznám a nevím, kde může být chyba.
    Vysílač je dle mě správný, oba signály (z vysílače i přijímače) sleduji na osciloskopu – paket se vždy odešle a přijme správně, ale problém je se zpracováním(u přijímače).

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