jemiki8453
Vytvořené odpovědi
-
AutorPříspěvky
-
Vojtěch Vosáhlo
ÚčastníkUdělejte si 2 proměnné – tlacitko a tlacitkoOld
A do smyčky pro lcd to pusťte pouze pokud se liší. Tzn.if(tlacitko != tlacitkoOld){ //něco se ukáže na lcd tlacitkoOld = tlacitko; }
Do tlacitko zapisujete jaké tlačítko bylo stisknuto a tlacitkoOld by mělo stačit inicializovat jako nulu, samozřejmě podle toho jak získáváte názvy tlačítek, takocý typ proměnné to bude. Taky kdyby jste měl na ovladači tlačítko 0 tak se musí tlacitkoOld nastavit na -1. Hodně štěstí
developer
ÚčastníkDobrý den, měl bych zájem, napište mi na arduinodeveloper@seznam.cz děkuji.
Pulec
ÚčastníkTak nakonec jsem ještě odebral funkci digitalWrite(prehravaciPin, HIGH);
to má za následek že se zvuk přehraje jen jednou z každého čidla 1-10 když zapůsobí.Což se mi hodí protože pak by to hrálo po každém projetí a to by u modelové železnice nebylo žádoucí.Teď to funguje famózně.Dám příklad jede vlak ::::::::::::::::::první čidlo::::::::::pozor u druhé koleje opakuji pozor u druhé koleje::::::::::::::::::::::::::::(vlak přijede do stanice a najede na druhé čidlo)Na druhou kolej přijel osobní vlak z Vizovic opakuji na druhou kolej přijel osobní vlak z Vizovic.Dále samozřejmě muže minout pastvu s ovcemi nebo těžbu v lese motorová pila.Intenzita zvuku se dá ošetřit už samotnou úpravou mp3.Tímto moc moc děkuji
Miroslava
ÚčastníkAhoj,
momentálne aj ja pracujem s týmto WIfi shiedlom – samé problémy – ale ako to myslíš že do jeho administrácie sa nevieš dostať – ako je na videu?.. lebo mne stačilo pripojiť wifi shield do Arduino MEGA, a hned my naslo wifi DoItWifiCongig…. a ked som sa na nu pripojila tak som zadala do prehliadača 192.168.4.1 – dostala som sa presne tak ako na videu 🙂 Ak sa ti ani ta wifi nezobrazila tak podla mna bude problém s napájaním – možno by si mal priviesť ešte nejaký zdroj ako len cez USB.
Pulec
ÚčastníkPodle mne není problém když to budeš mít za elektroměrem.To jest na vedení k domovnímu rozvaděči (dělám na čezu).Chceš měřit jen jednu fázy?Asi se do toho pustím také chci měřit respektive vidět kolik mi bere klima když topím.
Vojtěch Vosáhlo
ÚčastníkDo setupu přidáte znovu toto: `pinMode(d1, INPUT);
pinMode(prehravaciPin2, OUTPUT);
digitalWrite(prehravaciPin2, HIGH);attachInterrupt(1, detekce2, FALLING);
`
místo těch názvů si buď dosaďte piny a interrupty nebo si vytvořte proměnné jako je to v původním kódu.
Pak jen vytvoříte funkci detekce2 (kopii detekce) a pozměníte piny které se nastavují.
Snad pomůžu…
Pulec
ÚčastníkJeště vás chci poprosit přidat do kódu druhé čidlo které bude přehrávat další pin mp3 modulu,mě se to nedaří.
Vojtěch Vosáhlo
ÚčastníkJasně, asi by se to dalo udělat nejlépe přes odebrání a zase přidání přerušení. `void detekce(){
digitalWrite(prehravaciPin, LOW);
delay(100);
digitalWrite(prehravaciPin, HIGH);
detachInterrupt(0); // odebereme preruseni aby se nam nevyvolalo pokud by se něco hýblo pred senzorem
delay(60000); //pauza na x vterin, cas po ktery je senzor vyrazen
attachInterrupt(0, detekce, FALLING); // opet preruseni zprovoznime}`
Kdyby bylo potřeba arduino používat i v době vyřazení, daly by se počítat cykly procesoru ale to je další téma…
Pulec
ÚčastníkTak jsem na to kapnul delay až za moc moc děkuji jste borec
Pulec
ÚčastníkŘeknu to takto potřebuji aby se po spuštění přehrávání senzor vyřadil třeba na 1 minutu.
Vojtěch Vosáhlo
ÚčastníkPauza by se přidávala před nastavováním pinu na low
Tzn: `void detekce(){
delay(XY); // sem můžete přidat čas mezi 1 na ir a přehráváním
digitalWrite(prehravaciPin, LOW);
delay(100); //čas na který je pin spuštěný, zde přidáváte
digitalWrite(prehravaciPin, HIGH);
}`
Chcete tedy něco jako po přehrání musí být pauza 30s a pak až se může zapnout znova? Kapku mi to nedochází 😀Pulec
ÚčastníkAno teď mi to šlape na D0. Kam přidat čas aby po zapnutí přehrávaní drželo v zap?Tak jak to je teď je to každé mávnutí hned přehrává.Potřebuji alespoň 30 vteřin po začátku přehrávání aby držrlo jako když je překážka.Děkuji za pomoc
Vojtěch Vosáhlo
ÚčastníkVy jste tedy zkoušel jak A0 tak D0. D0 by se měl dát nastavovat poťákem, tím nastavíte hranici kdy je 1 a kdy 0 zatímco A0 se bude měnit dynamicky podle vzdálenosti.
Mimochodem do attachInterrupt má jít b0 a né jen 0 jak je nahoře v kódu ale to jste zjistil pokud to funguje.Možná musí být větší časová prodleva mezi 1 a 0 na pinu přehrávače a taky by se nejspíš hodilo ještě trošku času po nastavení pinu na 1.
Hodně tipů ale kdo ví…Pulec
ÚčastníkTeď mi to opět funguje ale jen na A0 pinu čidla.Jak je to možné?
Pulec
ÚčastníkTak jsem vše pospojoval a šlo to asi 15x ale jen na A0 pinu senzoru teď mi to nejde vůbec.Pouze při odpojení a připojení na A0 nebo D0 senzoru se prehravá zvuk.Nevíte kde je chyba(mimo mě tedy).
posjirka
Účastník.. to byla spíš taková řečnická otázka … pro josef4 .. nezkoušel jsi jiný SW, Třeba Polargraf .
https://github.com/euphy
Ten by měl jít pod Mac jít taky spustit. Snažím se najít problém. Pokud ti ale Arduino IDE jde tak jak píše Vojtěch bude to chybka v SW. Ještě mě napadá taková divná varianta, nabootovat PC na jiném OS (nějáký linux live) a zkusit to.Vojtěch Vosáhlo
ÚčastníkTo fakt nevím ale CH340 není v originálních arduinech pokud vím. To by teda vysvětlovalo jak to pozná (nejspíš). Jako se v arduino IDE u COM portu ukáže třeba Arduino UNO když máte originál ale když kopii tak je tam pouze název portu. Alespoň mě to takhle funguje. Na druhou stranu Makelangelo je open source ne? Kdyby někdo uměl s javou asi by nemuselo být tak komplikované ten block odstranit.
posjirka
Účastníka může mi někdo vysvětlit, jaký je rozdíl mezi originálem a kopii ?
Když použiju stejný převodník a FW tak nemůže poznat rozdíl…josef4
ÚčastníkAha děkuji! Ono pod Win 7 to funguje i s klonem, ale je možné, že u MAC to nepůjde. Tak mi nic jiného nezbude než koupit originál.
Vojtěch Vosáhlo
ÚčastníkPodle pár článků má Makelangelo ochranu proti klonům. Tzn neukáže vám arduino pokud není originální takže originál by to měla si vyřešit…
josef4
ÚčastníkDíky za tip, snažil jsem se bohužel s MAC také nemám moc zkušeností. Studoval jsem internet už pár dní a bez výsledků, spousta příkazů do terminálu napsaných a jediné co funguje je Arduino IDE. Myslíš, že originální Arduino UNO by fungovalo?
ArduXPP
ÚčastníkNení lepší použít toto ,
Tenhle typ je otevírací.
johnyhol
ÚčastníkDisplej jsem objednal podle doporučení (vzal jsem rovnou celej schield s tlačítky-možná se budou ještě hodit pro nastavování funkcí/časů) a trochu jsem přemejšlel o tom zobrazování a viděl bych to asi tak jako na obrázku. Na prvním řádku vždy aktuální proces, za ním čas a na druhým doplňkový informace. Bylo by to tak možný?
Attachments:
lumaq
ÚčastníkTak vyřešeno. Píši odpověď pro ty, kteří by se třeba potýkali se stejným problémem. Kdesi v nastavení routeru byl omezen počet současně připojených klientů. Stačilo zvýšit hodnotu a šlo to.
Vojtěch Vosáhlo
ÚčastníkAhoj
Kdybych nenašel vůbec nic na internetu o podobném problému, zkusil bych takovou divno věc. Stáhnul bych nějakej program pro emulaci COM portů a zkusil bych vytvořit virtuální COM port který by přeposílal data na port kde je arduino. Třeba by Makelangelo tenhle port vidělo. Ale to je jen tip, s macem jsem nikdy nedělal a nevím co by se mohlo pokazit…migo
ÚčastníkAhoj, ak sa mozem spytat, podarilo sa projekt uspesne dokoncit? Mas aj nejake postrehy z grafov priebehu horenia, resp. nejake zavery ohladom regulacie horenia? Mam nainstalovany termoclanok priamo v spalovacej komore KV a meram nim teplotu horenia a chcel by som skusit regulovat privod vzduchu a optimalizovat/zautomatizovat priebeh horenia.
Dakujem za info,
Milan
posjirka
ÚčastníkJASNĚ V POHO … 🙂
johnyhol
ÚčastníkAha, tak proto to vypsalo všechno možný a já z toho byl hotovej. Něco podobnýho se mi stalo, když jsem se po půl roce vrátil k mýmu (našemu) projektu regulace kotle a najednou mně to házelo jednu chybovou hlášku za druhou. Asi po dvou dnech trápení jsem odinstaloval a znova nainstaloval Arduino IDE a pak už to jelo. Myslím že to bylo nakopnutý výroční aktualizací Windows.
Displej rozmyslím a ozvu se. Zatím díky a promiň že potřebuju všechno vysvětlit, když mně něco nejde tak musím zjistit kde jsem udělal chybu.
posjirka
ÚčastníkOn kompilator obcas vypíše chybové hlášení, které není uplně přesně to co očekáváš. Prostš se dostane do slepé uličky a neví proč, tak zapíše poslední známé místo a chybu. Ve VBA je to ještě veselejší. Každá verze MS ACCESS má vlastní syntaxi a ty pak přemýšlíš, proč ti letitý kod najednounejde použít v této aplikaci … no to už je mimo téma.
LCD je super. Doporučuju 2 řády 16 znaků, protože je dostupný a realitvně levný.
Stačí si třeba v excelu udělat tabulku 2×16 a zkusti si vypsat jednotlivé možnosti a funkce. Resp. vymezit si prostor pro zobrazení a optimalizovat zprávy.
třeba místo „rozpenutí termostatu“ nechat na LCD zobrazit 1 nebo 0 pro jednotlivé funkce.
příklad
0123456789012345
0 DOHORENI 1 0 1 1
1 KVITANCE PORUCHYPrvních 8 znaků v prvním (0) řádku zálohovat pro aktuální proces.
Další 8 (2×4) nechat pro zobrazení stavu 4 hodnot (termostat kotle, prostorový, plamen, …)
Poslední řádek nechat na zprávy.Je to příklad nikoliv kuchařka. Promysli si co bys tam chtěl zobrazit a kouknem na to.
johnyhol
ÚčastníkPrávě že to fungovalo, jenom jsem promazal části kódu kde byl prostorový termostat a na závorky jsem nesahal. Proto se divím, hlavně proč mi to hlásilo chybu ve „void setup -> vypniVse ();“, když ta závorka navíc byla ve void loop. Chtěl bych to pochopit, abych se toho do budoucna vyvaroval.
Ještě jeden dotaz. Přemýšlím o tom displeji jak jsi mi dřív radil a zajímalo by mě, jestli by se na něm dalo zobrazit to co mám teď přes seriovou komunikaci (jaká běží aktuální část programu, časy atd.), abych měl přehled co zrovna Arduino dělá.
Díky
-
AutorPříspěvky