Začátečník arduino - pomoct s tlačítky - bazén (přesunuto)

Raspberry, Arduino, Mini-PC a další

Moderátor: Moderátoři

Zpráva
Autor
Uživatelský avatar
Rellik
Příspěvky: 610
Registrován: 17 úno 2017, 01:00
Bydliště: Staré Město (UH)

#31 Příspěvek od Rellik »

Tak jsem si po obědě seskládal pokusnou destičku dle plánku číslo 1. Dal jsem na ni piny, které přímo zasunu to arduina, takže odpadá "drátkování". Jediné jiné co tam mám je hodnota odporů. Nenašel jsem (nechtělo se mi hledat) ty 100Ω, tak jsem dal 220Ω... Muselo by se to spočítat přesněji, ale na to testování to teď myslím stačí... :)
Přílohy
IMG_20171210_132803.jpg
(115.65 KiB) Staženo 104 x
deska.jpg
(195.68 KiB) Staženo 91 x

Uživatelský avatar
fero_b
Příspěvky: 582
Registrován: 17 kvě 2004, 02:00
Bydliště: Kosice

#32 Příspěvek od fero_b »

@Atlan: ano, aj mnohe cinske napr. Usb moduly maju n-tlacidiel, rozdiel je velkost odporu na ktorom sa snima ubytok. Aj som to chcel napisat, ale naco to pre 4 tlacidla zbytocne komplikovat

Uživatelský avatar
Rellik
Příspěvky: 610
Registrován: 17 úno 2017, 01:00
Bydliště: Staré Město (UH)

#33 Příspěvek od Rellik »

Tak jsem trochu zapřemýšlel a celý program předělal následujícím způsobem:
4 tlačítka:
1/ zapne první diodu
2/ vypne (vše) a zapne druhou
3/ vypne (vše) a zapne třetí
4/ vypne všechny...

Kód: Vybrat vše

int ledPin[] = {A0,A1,A2};
int button[] = {10,11,12,13};
 
void setup() 
{
  for(int i = 0; i <= 2; i++){
      pinMode(ledPin[i], OUTPUT);
    }
  for(int i = 0; i <=3; i++){
      pinMode(button[i], INPUT_PULLUP);
    }
}
 
void loop() 
{
  if (digitalRead(button[0]) == LOW)
  {
    off();
    digitalWrite(ledPin[0], HIGH);
  }
  
  if (digitalRead(button[1]) == LOW)
  {
    off();
    digitalWrite(ledPin[1], HIGH);
  }
  
  if (digitalRead(button[2]) == LOW)
  {
    off();
    digitalWrite(ledPin[2], HIGH);
  }
  
  if (digitalRead(button[3]) == LOW)
  {
   off();
  }
  
}

void off(){
  for(int i = 0; i <= 2; i++){
      digitalWrite(ledPin[i], LOW);
    }
}
To je v podstatě to co bych chtěl. Pokud bude některá z diod aktivována vypne běh hlavního programu (viz minulé příspěvky) a zapne patřičné relé...
Pokud to pak ukončím tím posledním tlačítkem, tak hlavní program bude pokračovat. No vlastně bude asi potřeba ještě jedno tlačítko, které vypne úplně všechno, dokud se něco z toho neaktivuje (nebo ze opět nezapne)...

Uživatelský avatar
lesana87
Příspěvky: 3296
Registrován: 20 zář 2014, 02:00

#34 Příspěvek od lesana87 »

Aha, tak na tohle je to Adruíno. :oops:
A k čemu že tam slouží ty přesně spočítané 100Ω odpory?

Uživatelský avatar
fero_b
Příspěvky: 582
Registrován: 17 kvě 2004, 02:00
Bydliště: Kosice

#35 Příspěvek od fero_b »

@lesana: si nevedela ze 90% arduin sluzi na blikanie LED diodou? :) je to taka nahrada 555ky :P

Uživatelský avatar
Rellik
Příspěvky: 610
Registrován: 17 úno 2017, 01:00
Bydliště: Staré Město (UH)

#36 Příspěvek od Rellik »

Tak jsem ze zvědavosti zkusil opět změřit ty zákmity tlačítka. Myslím že z fotek je jasné co je bez mé úpravy (jen tlačítko) a co jsem dnes vytvořil... Celkem rozdíl ne? :)
Přílohy
IMG_20171210_182025.jpg
(154.82 KiB) Staženo 100 x
IMG_20171210_181455.jpg
(163.39 KiB) Staženo 86 x

Uživatelský avatar
lesana87
Příspěvky: 3296
Registrován: 20 zář 2014, 02:00

#37 Příspěvek od lesana87 »

S použitím osciloskopu máš také, koukám, problémy. Vypni si to AC.
Ptala jsem se na funkci toho přesně spočítanýho odporu ne na ten kondenzátor.
Mimochodem, když tím piditlačítkem budeš neustále zkratovávat ten nabitý kondenzátor, budou se ty zákmity neustále zhoršovat až ty tlačítka jednou přestanou spínat úplně.

Uživatelský avatar
Atlan
Příspěvky: 4499
Registrován: 10 kvě 2004, 02:00
Bydliště: Košice

#38 Příspěvek od Atlan »

Tak ze z +5v pripoj odpor 10k na tlacitko a to ptipoj k gnd, z stredu spojenia odporu a tlacitka ved vodic k uP. K tlacitku pripoj paralelne kondik 100n (mozno by vyhovwl mensi ked ze sa tu niekto boji o kontakty)

Uživatelský avatar
fero_b
Příspěvky: 582
Registrován: 17 kvě 2004, 02:00
Bydliště: Kosice

#39 Příspěvek od fero_b »

Ziadne kondiky (ani smitove hradla) nepouzivam, a nemam pocit, ze by tlacidla reagovali blbo a generovali nejake dvojite reakcie...

Uživatelský avatar
Rellik
Příspěvky: 610
Registrován: 17 úno 2017, 01:00
Bydliště: Staré Město (UH)

#40 Příspěvek od Rellik »

No co se týká osciloskopu, tak ano nemám s ním moc zkušeností. Navíc jsem to měřil po oslavě narozenin, tak mi to moc nemyslelo. Jinak se asi vyprdnu na nějaký RC "odrušovač". Tlačítka budou používána max 3-5x ročně, takže i to případné "opalování" kontaktů při zkratování 100n kondenzátoru mi nepřijde jako závada...
Co se týká současného použití arduina, tak ano, je to zatím "blikání" diodami. S "céčkem" jsem se setkal jen na vysoké a to jen tak okrajově na https://edukomplex.cz/ jakožto obor výpočetní technika. A to jsem dělal ve 32 jako nástavbu mého vzdělání (automechanik) což už je taky nějaký ten rok za mnou... Nemám problém s PHP (HTML) což jsem na první pohled myslel, že to nebude tak složité, ale je to víceméně úplně něco jiného. Takže komentáře, že mám s něčím problém prosím nepište, neřeší to aktuální diskuzi...

Co se týká diskuze, tak hlavní problém mám aktuálně ten, že nemám modul RTC a jedno teplotní čidlo, takže další programování nemá smysl. Proto jsem chtěl co nejlíp vyřešit ty tlačítka, které mi už v podstatě dělají to co by měly... Další operace budu řešit po tom RTC modulu a LCD displeji...
Jinak dnes jsem v práci přemýšlel o zapojení toho arduina UNA, že se nedá nijak "napevno" s ničím spojit, tak jsem si koupil arduino NANO, což můžu připájet na "uni" desku, ke které připájím zbylé komponenty..

Tady bych položil otázku, zda program, který pracuje na arduino UNO bude stejně pracovat i na na tom NANO. Což je možná "blbá otázka", ale raději se zeptám... :)
Přílohy
IMG_20171211_185515.jpg
(176.96 KiB) Staženo 97 x

Uživatelský avatar
FHonza
Příspěvky: 1443
Registrován: 20 lis 2012, 01:00
Bydliště: Praha

#41 Příspěvek od FHonza »

Bude. Jenom je potřeba dát bacha na pinout, Nano má trochu jinak "rozházené" piny.

Uživatelský avatar
Atlan
Příspěvky: 4499
Registrován: 10 kvě 2004, 02:00
Bydliště: Košice

#42 Příspěvek od Atlan »

Pre nano existuje doska s svorkovnicami.

Uživatelský avatar
Rellik
Příspěvky: 610
Registrován: 17 úno 2017, 01:00
Bydliště: Staré Město (UH)

#43 Příspěvek od Rellik »

Díky za odpovědi.
O té desce vím. Právě přemýšlím jestli ji objednat nebo to dát napevno...
Jinak dnes mi konečně přišel ten RTC modul a LCD display, tak jsem to dal trochu opět dál dohromady... Ještě čekám na ty teplotní čidla, pak už to bude víceméně všechno co mě brzdí... Spínací relé jsou to poslední co tam půjde, ale ty k naprogramování nepotřebuju... :)
Jinak zatím to mám tak:
https://photos.app.goo.gl/aOadGun4VX6YhTlr2 (zatím se video zpracovává) Pozděj by to mělo jít pustit...

Uživatelský avatar
Rellik
Příspěvky: 610
Registrován: 17 úno 2017, 01:00
Bydliště: Staré Město (UH)

#44 Příspěvek od Rellik »

Mám opět začátečnický dotaz. Pokud nastavím nějaké časování pomocí milis(), tak po cca 50 dnech se milis vynuluje a počítá znovu. Půjde to nějak poznat v programu, který z tohoto "strojového" počítání využívá každých cca 5 minut jen pár milisekund (sekundu)?
Nebo dá se tady to časování nějak jednoduše vytvořit za pomocí RTC modulu DS3231?
Díky za případné odpovědi... :)

Uživatelský avatar
Rellik
Příspěvky: 610
Registrován: 17 úno 2017, 01:00
Bydliště: Staré Město (UH)

#45 Příspěvek od Rellik »

Zdravím vespolek. Před pár dny jsem řešil nějaké věci ohledně tlačítek v sekci "Programování"... Teď už mám víceméně projekt, co jsem zamýšlel, hotový.
Může mi to prosím někdo znalejší projít a poradil co udělat jinak (líp). Opět upozorňuju, že je to moje naprosto první seznámení s tímto zařízením, tak pokud je ten kód šílenost, ok, učím se... Smile

kód je k nahlédnutí tady:
https://create.arduino.cc/editor/Rellik ... 02/preview

Díky za případné rady...

Odpovědět

Zpět na „Miniaturní počítače (Arduino, Raspberry a další)“