JardaL
Vytvořené odpovědi
-
AutorPříspěvky
-
hogen
ÚčastníkUplně z toho nejsem chytrej hlavně bod 3.
Můj požadavek je ,aby po stisknutí některého tlačítka času např 5,10,nebo15sec seplo výstup na zadaný čas a pří opětovném sepnutí nějakého tlačítka to nereagovalo,nebo v lepším případě ukončilo odpočítávání a vypnulo výstup(rozepne relé).
Ještě kdyby to umnělo po skončení odpočtu zvukový signál ,tak by to bylu super,ale to již není podstatné.Díky za tvůj čas. Hogposjirka
Účastník1. máš tam chybu, že jsou všechny podmínky vnořené do sebe a vlastně se na ně nikdy nedostane. Musíš si navyknout, že se páry složených závorek dávají do stejné úrovně aby si získla přehled co je co
když uděláš např.:loop(){ {{ } }
tak nezjistíš, které z nich tvoří pár. udělej to takto:
loop(){ { { } }
a hned vidíš, co je s čím.
2. používej tady párvoou značku CODE pro vkládání kodu, jinak se ti rozhodí jak stylizace, tak je tu problém s některými znaky (přepisují se ne jiné a pak je kod nečitelný).
3. neměl jsi v kodu vyhodnocení tohot času, jen podmínky
4. nesprávně jsem si přečetl tvůj požadavek. Takto to nepůjde. musíš si říct co to má dělat ve chvíli když je navolen nějáký čas, evětlo svítí a ty zmáčkenš předvolbu jiného času. Má přestat, prodloužit čas o převolbu, nebo nereagovat?
Je to důležite k rozhodnutí stavby programu ..hogen
ÚčastníkTak jsem to zkoušel,ale moc jsem to nepochopil.Můžeš prosím na to mrknout,jestli to má alespoň trochu hlavu a patu,nebo je tu úplnej nesmysl.Díky
// zpozdeni tlacitka
// v1
// by JP 2016
// program po stisku tlačítka rozsvítí LED diodu a nechá jí 5s rozsvícenou, pak ji zhasne a opět čeká na stisk tlačítkaconst int LED = 13; // led dioda
const int TLACITKO = 10; // tlacitko proti zemi
const int TLACITKO1 = 11; // tlacitko proti zemi
const int TLACITKO2 = 12; // tlacitko proti zemiboolean CEKAM = false; // kdyz je true tak ceka na zhasnuti.
unsigned long OLDTIME = 0; // strojní čas posledního stitku tlačítka
unsigned long ZPOZDENI = 5000; // čas zpoždění zahsnutí LED diody v ms.
unsigned long MYTIME = 0; // aktuální čas -zpožděníunsigned long OLDTIME1= 0; // strojní čas posledního stitku tlačítka
unsigned long ZPOZDENI1 = 10000; // čas zpoždění zahsnutí LED diody v ms.
unsigned long MYTIME1 = 0; // aktuální čas -zpožděníunsigned long OLDTIME2= 0; // strojní čas posledního stitku tlačítka
unsigned long ZPOZDENI2 = 15000; // čas zpoždění zahsnutí LED diody v ms.
unsigned long MYTIME2 = 0; // aktuální čas -zpoždění
void setup()
{
pinMode(LED, OUTPUT); // nastaveni jako vystup
pinMode(TLACITKO, INPUT_PULLUP); // nastaveni jako vystup
OLDTIME = millis();// zapamatuj si aktuální strojní čas
pinMode(TLACITKO1, INPUT_PULLUP); // nastaveni jako vystup
OLDTIME1 = millis();// zapamatuj si aktuální strojní čas
pinMode(TLACITKO2, INPUT_PULLUP); // nastaveni jako vystup
OLDTIME2 = millis();// zapamatuj si aktuální strojní čas
}void loop()
{
digitalWrite(LED, CEKAM); // zapis stav na LED
if (digitalRead(TLACITKO) == 0) { // při stisku tlačitka
if (CEKAM == false) { // a zhasnuté LED diodě
CEKAM = true; // změn stav
OLDTIME = millis(); // zapamatuj aktuální strojový časif (digitalRead(TLACITKO1) == 0) { // při stisku tlačitka
if (CEKAM == false) { // a zhasnuté LED diodě
CEKAM = true; // změn stav
OLDTIME = millis(); // zapamatuj aktuální strojový časif (digitalRead(TLACITKO2) == 0) { // při stisku tlačitka
if (CEKAM == false) { // a zhasnuté LED diodě
CEKAM = true; // změn stav
OLDTIME = millis(); // zapamatuj aktuální strojový čas
}
}
}}}}}Zbyšek Voda
ÚčastníkDobrý den, Honzo,
problémů může být více, musíte poskytnout víc informací.
– jaké webové IDE používáte?
– jakou desku máte (nejlépe s odkazem, odkud jste ji koupil)
– hlásí editor při nahrávání nějakou chybu?posjirka
Účastníknení to tak složité. Nadefinuješ si 3 sady proměnných:
OLD_TIMEx
CEKAMx
MYTIMEx
kde „x“ je číslo sady.
Pak rozkopíruješ a poupraviš celý obsah ve smyčce LOOP()
to je vše …
Případně to vyřešíš pomocí funkcí
Jestlit o nedáš, nezoufej a dej tomu čas, nikdo neví všechno hned.
Chce to čas s zkušenosti. Já se taky pořád učím a zřejmě tomu nebude konec 🙂posjirka
Účastníkkdyž myslíš … já schema nemám …
mystriks
Účastníkto neni vubec off topic potrebuju schema abych vedel jestli by to slo napojit na arduino a ovladat tim ten vetrak.
hogen
ÚčastníkNo já jsem nic nenapsal,jen jsem se pokoušel upravit ten program z tvého příspěvku ze dne 22.2.2016 (20:53),ale bez úspěchu.Asi je to prozatím pro mně nadlidský úkol.Hog.
posjirka
Účastníkto mystriks: to je trochu off topic ….
posjirka
Účastníkhod sem ten program co jsi napsal a mrkenem na to …
mystriks
Účastníkpotřeboval bych najít schéma tohoto: http://www.mbterm-krby.cz/cz/automatika-a-regulace/ventilacni-jednotky/994-regulator-otacek-ventilatoru-rt-10-tatarek.html
nikde ho nemůžu najíthogen
ÚčastníkDobrý den,jsem začátečník v programování Arduina a mám problém.
Váše časové spínání pinu se mi moc zamlouvá ,ale potřeboval bych aby to spínalo tří nastavené časy v programu.Tudíž třemi tlačítky ovládat jeden výstup.Zkoušel jsem modifikovat Váš program,ale bez úspěchu.Myslíte,če by jste mne moh nějak poradit.Děkuji za jakou koliv odpověď.
Hog.darira
ÚčastníkJak píše ArduXPP, knihovny jsou v zipu. U novějších IDE vždy něco blblo, Time.h je lehce upravená kvůli překladu. Než s někým pořád řešit kde je problém, hodil jsem to tam komplet. Ceny, stačí kouknout na net (buď v CZ a zaplatíš ranec nebo ebay/Ali). Snad jen tišťáky – cca 280,-Kč hlavní deska, 216,-Kč deska pro LED. Cena je orientační, nechal jsem si je vyrobit v Pardubicich – PCB 1,5mm, 70um + stříbro + lak + vrtání. Určitě to někdo zvládne levněji. Jsem línej leptat doma. Mám teď ESP (NodeMCU) pro web přístup, ale nemůžu se k tomu nějak časově dostat. Zakládal jsem novou nádrž a dodělávám ještě osvětlení a kryt. Tak třeba časem sem dám něco dalšího. Ještě potřebuji okótovat rámeček pro LCD a dát do výroby na frézku.
SirTonic
ÚčastníkTaky by nebylo na skodu sepsat kusovnik s orientacnimi cenami
S cim mohu pomoci?ArduXPP
ÚčastníkKdyž použijete arduino ide které je součástí, tak tam ty knihovny jsou.
SirTonic
ÚčastníkBylo by moudre sepsat, kde a jak stahnout knihovny
* Adafruit_PWMServoDriver.h
* TimeAlarms.h
* Time.h
* DS1307RTC.h
* UTouch.h
* SdFat.h
* UTFT.h
nebo sou knihovny dodavany s URL ke stazeni?SirTonic
ÚčastníkMam veliky zajem,
jen tak dal, jen dotaz na novych verzi IDE to nefunguje?ArduXPP
ÚčastníkTo samé dělá i u ATMega328P-PU za použití usbasp v2. V avrdude ale USBasp v2 funguje na 100%.
posjirka
Účastníkviděl bych to na reinstal Arduina IDE případně použití jiné knihovny pro ATTINY
ArduXPP
ÚčastníkJe to v textu napsané attiny85 – https://www.gme.cz/attiny85-20pu-dip8-atmel .
Arduino IDE mi ukazuje při používání usbasp tohle.
java.lang.NullPointerException
at cc.arduino.packages.uploaders.SerialUploader.burnBootloader(SerialUploader.java:314)
at processing.app.Editor.lambda$handleBurnBootloader$42(Editor.java:2754)
at java.lang.Thread.run(Thread.java:745)Vše mám nastavené, takže jsem musel použít avrdude, tam problém není. Samotný Arduino ide vygeneruje při kontrole dva HEX soubory, jeden bez názvu bootloader , a jeden s názvem bootloader.
Blink.ino.hex
Blink.ino.with_bootloader.hexposjirka
Účastníkasi bych spíš volil třeba BUZ11:
https://www.gme.cz/unipolarni-tranzistor-buz11-to220To schéma je navržené pro unipolární tranzistory (FET) a proto nemá ani omezovací odpory mezi arduinem a bází (GATE). I když bych tam radši dal třeba 220R až 10k.
Mělo by to jít s celým rozsahem. Doporučuji zlatý střed 1K0-odomsk
ÚčastníkDiky za odpoved. Daly by se pouzit tyto tranzistory?
https://www.gme.cz/darlingtonuv-tranzistor-tip120-to220
nebo
https://www.gme.cz/unipolarni-tranzistor-irlz34n-to220abV planu je napajet max 3 metry led pasku
posjirka
Účastníknerozumím otázce. Co programuješ za procesor ?
posjirka
ÚčastníkDUE je na 3,3V UNO na 5V. Tady bych hledal chybu. Jinak ten display nemůže blikat. Z ARduina si bere jen data co má zobrazit a pak už jede autonomně. Sám si přepína segmenty, reguluje svítivost atd.
Leda že bys mu nesutálě měnil hodnoty (myslím tím víc než 5x/s). Pak by mohl zablbnout, ale spíš to vidím na to napájecí napětí.posjirka
ÚčastníkNa odpaleni arduina super. .. Musíš ten pásek spínat přes tranzistory. Takhle to vážně odpálíš při větším počtu LED….
tady máš inspiraci:
https://cdn-learn.adafruit.com/assets/assets/000/002/692/medium800/led_strips_ledstripfet.gif?1448059609LeosP
ÚčastníkDekuju moc. Je to tak – uz to chodi na Arduino UNO krasne.
Mam s tim divny problem na Arduino Due. Tam display divne poblikava. Pritom jsem se domnival, ze DUE je rychlejsi – vykonnejsi. Prijeno to bylo na piny 49 a 50, coz si myslim jsou universalni I/O porty. Kdyby vas napadlo, kde je/delam chybu, budu rad, protoze bych rad pouzil system ARMOSY-2 postaveny na DUE.
Dekuji L.posjirka
Účastníka zkoušel jsi strýčka googla?
posjirka
Účastníka jak jsi to vyřešil? možná by tvé řešení pomohlo dalším začátečníkům …
Ander
ÚčastníkĎakujem za vaše reakcie a rady, problem som už medzičasom vyriešil ďakujem .
Luke_CZ
ÚčastníkA, TM1640 není i2C, ačkoliv k obsluze potřebuje pouze dva vodiče
B, pro každý module je nutná tedy vlastní instance asi takto:
TM1640 module1(6, 7);
TM1640 module2(8, 9);
atd..
Samozřejmě to zabere více pinů, ale funguje to, já to řešil úspěšně pro TM1637.L.
-
AutorPříspěvky