Světelný had - prosím POMOC

Wiring, C++, C, Java, ...
Pravidla fóra
Toto subfórum slouží k řešení obecných otázek kolem programování (konstrukce, knihovny, alokace paměti, ...)
medvidek180
Příspěvky: 25
Registrován: 18 úno 2018, 19:59

Re: Světelný had - prosím POMOC

Příspěvek od medvidek180 » 26 úno 2018, 13:56

Pomohl by nákres???
Přílohy
reflektory na garáži.jpg

petan
Příspěvky: 358
Registrován: 23 črc 2017, 10:19
Kontaktovat uživatele:

Re: Světelný had - prosím POMOC

Příspěvek od petan » 26 úno 2018, 20:50

No, tak nějak nechápu co přesně chceš... :D
Teď je to rozděleno na dvě zóny. Každá je spínána vlastním PIRkem. Jedna zóna má 5 a druhá 7 reflektorů. Který reflektory si k tomu připojíš je na tobě...

Pokud chceš kombinovat světla z první (7 světel) a druhé (5 světel) skupiny, tak to by bylo na další zamyšlení. Ale určitě ne nemožný.

medvidek180
Příspěvky: 25
Registrován: 18 úno 2018, 19:59

Re: Světelný had - prosím POMOC

Příspěvek od medvidek180 » 26 úno 2018, 21:09

Ne to nepotřebuji. Potřebuji aby první zóna byla těch 5 bílých reflektorů do vjezdu a s druhou jí kombinovat nechci. Ale aby začínala z Arduina na výstupu 2 (nepochopil jsem, proč to nemůže být výstup 1, ale budiž).
Druhá zóna jsou ty tři do dvora a čtyři barevné do vjezdu. To by vylejzalo z Arduina na 7 pinu - 13. ale aby animovaly 3 bílé a do nich svou jinou animací 4 barevné než se vše rozsvítí. Budu na dvoře, tam mě problikaj 3 bílé, ale zároveň s nimi za rohem 4 barevné. Pak se rozsvítí vše a nebo jen ty 3 bílé (to by bylo lepší) protože popojdu do vjezdu a tam se spustí první skupina a kdyby do ní ještě stále svítily ty baravné, tak by ta animace první skupiny moc nevynikla.
Délku toho, jak to dlouho vydrží svítit nastavuji poťákem na čidle, jak dlouho drží sepnuté.

petan
Příspěvky: 358
Registrován: 23 črc 2017, 10:19
Kontaktovat uživatele:

Re: Světelný had - prosím POMOC

Příspěvek od petan » 26 úno 2018, 22:27

medvidek180 píše:
26 úno 2018, 21:09
Potřebuji aby první zóna byla těch 5 bílých reflektorů do vjezdu a s druhou jí kombinovat nechci. Ale aby začínala z Arduina na výstupu 2 (nepochopil jsem, proč to nemůže být výstup 1, ale budiž).

Však jsem psal, že zóny můžeš měnit.
Stačí v tomto kódu předodit A1 a A2. Zeď A1 zapíná těch 7 výstupů. Je to tak, protože jsem to tak naprogramoval. Přehodit by to šlo. A nebo jednoduše přehoď dráty :D

Kód: Vybrat vše

#define IN1 A1	//vstup PIR1
#define IN2 A2	//vstup PIR2
Fyzicky přeházet LEDky na konkrétní výstupy taky lze. Stačí změnit číslo za textem OUTxx.
Teď to je tak, že třeba OUT21 (interně v programu, to neměň) je pro ledku na výstupu 9 (to je fyzicky pin na Arduinu). Ale jaký číslo tam místo té devítky dáš, to je na tobě. A nebo tam přeházej dráty.

Kód: Vybrat vše

//definice I/O
//------------X <- Toto číslo můžeš měnit
#define OUT11 2	//výstup 1 (skupina 1, reflektor 1)
#define OUT12 3	//výstup 2 (skupina 1, reflektor 2)
#define OUT13 4	//výstup 3 (skupina 1, reflektor 3)
#define OUT14 5	//výstup 4 (skupina 1, reflektor 4)
#define OUT15 6	//výstup 5 (skupina 1, reflektor 5)
#define OUT16 7	//výstup 6 (skupina 1, reflektor 6)
#define OUT17 8	//výstup 7 (skupina 1, reflektor 7)

#define OUT21 9	//výstup 1 (skupina 2, reflektor 1)
#define OUT22 10	//výstup 2 (skupina 2, reflektor 2)
#define OUT23 11	//výstup 3 (skupina 2, reflektor 3)
#define OUT24 12	//výstup 4 (skupina 2, reflektor 4)
#define OUT25 13	//výstup 5 (skupina 2, reflektor 5)
Pak máš dvě skupiny. To je jedno, jestli je první s pěti ledkama a druhá se sedmi, nebo opačně. Prostě dvě skupiny s 5 a 7 ledkami. Každé LEDce přidělíš výstup a pak v proměnní animace nastavíš jak to bude blikat (tam se to pak nastavuje pro každou ledku sólo), viz přísměvek s těma jedničkama a nulama od AstroMika.

Nějak to zapoj a uvidíš. Zbytek se dá doladit kódem :D

medvidek180
Příspěvky: 25
Registrován: 18 úno 2018, 19:59

Re: Světelný had - prosím POMOC

Příspěvek od medvidek180 » 27 úno 2018, 00:11

přiznám se, že už se v tom totálně ztrácím. Teď jsem zkusil ten Tvůj kód přepsat hned za začátku, abych prohodil skupiny a výstupy, ale při nahrání do arduina to hlásí chybu na 16OUT. Pozn. spínám to nejen tlačítky, ale tranzistory, jak to bude v reálu. Už jsem do toho nějak moc zabředl a nechápu co s tím. Nerad se vzdávám, že něco nepochopím, ale tohle k tomu spěje. Ty jsi mi to za lomítkama hezky popsal, ale i tak jsem v koncích. už nevím. jestli by se šlo spojit po skype a ptát se, tak bych se možná trochu pohnul dál. Jinak už vážně uvažuju, že to nechám spínat na tvrdo od čidel. M.

medvidek180
Příspěvky: 25
Registrován: 18 úno 2018, 19:59

Re: Světelný had - prosím POMOC

Příspěvek od medvidek180 » 27 úno 2018, 00:38

přesně v tom, co píšeš jsem to zkusil proházet, ale nejde to pak nahrát. Chyba 16Out

petan
Příspěvky: 358
Registrován: 23 črc 2017, 10:19
Kontaktovat uživatele:

Re: Světelný had - prosím POMOC

Příspěvek od petan » 27 úno 2018, 06:52

Tak sem napiš kód, co do toho nahráváš... Co vím, tak "16OUT" tam nikde není. Jenom "OUT16" a to je rozdíl.

medvidek180
Příspěvky: 25
Registrován: 18 úno 2018, 19:59

Re: Světelný had - prosím POMOC

Příspěvek od medvidek180 » 27 úno 2018, 21:06

Jelikož tomu téměř nerozumím (a rád bych rozuměl), tak to musím brát po částech. Pro začátek jsem se pokusil přehodit skupiny a tak, jak to z Arduina vylejzá. Tedy část kódu:
//definice I/O
#define OUT11 2 //výstup 1 (skupina 1, reflektor 1)
#define OUT12 3 //výstup 2 (skupina 1, reflektor 2)
#define OUT13 4 //výstup 3 (skupina 1, reflektor 3)
#define OUT14 5 //výstup 3 (skupina 1, reflektor 4)
#define OUT15 6 //výstup 3 (skupina 1, reflektor 5)
#define OUT16 7 //výstup 3 (skupina 1, reflektor 6)
#define OUT17 8 //výstup 3 (skupina 1, reflektor 7)

#define OUT21 9 //výstup 1 (skupina 2, reflektor 1)
#define OUT22 10 //výstup 2 (skupina 2, reflektor 2)
#define OUT23 11 //výstup 2 (skupina 2, reflektor 3)
#define OUT24 12 //výstup 2 (skupina 2, reflektor 4)
#define OUT25 13 //výstup 2 (skupina 2, reflektor 5)

JSEM NAHRADIL částí kódu:

//definice I/O
#define OUT11 2 //výstup 1 (skupina 1, reflektor 1)
#define OUT12 3 //výstup 2 (skupina 1, reflektor 2)
#define OUT13 4 //výstup 3 (skupina 1, reflektor 3)
#define OUT14 5 //výstup 4 (skupina 1, reflektor 4)
#define OUT15 6 //výstup 5 (skupina 1, reflektor 5)

#define OUT21 7 //výstup 6 (skupina 2, reflektor 6)
#define OUT22 8 //výstup 7 (skupina 2, reflektor 7)
#define OUT23 9 //výstup 8 (skupina 2, reflektor 8)
#define OUT24 10 //výstup 9 (skupina 2, reflektor 9)
#define OUT25 11 //výstup 10 (skupina 2, reflektor 10)
#define OUT26 12 //výstup 11 (skupina 2, reflektor 11)
#define OUT27 13 //výstup 12 (skupina 2, reflektor 12)

No a to nejde nahrát.....hlásí to:
exit status 1
'OUT16' was not declared in this scope

petan
Příspěvky: 358
Registrován: 23 črc 2017, 10:19
Kontaktovat uživatele:

Re: Světelný had - prosím POMOC

Příspěvek od petan » 27 úno 2018, 21:32

No, to je jasný. Protože v programu používám OUT11-17. Ty jsi to nahradil 11-15 (část nevadí, protože 11 až 15 se do 11 až 17 vejde). Ale smazal si 16 a 17, kterou v programu používám. Takže to překladač nemůže najít.
Ale taky používám OUT21-25 a ty si to nahradil OUT21-27. Takže si vytvořil OUT26 a OUT27, který nikde jinde v programu není, takže nemá žádnou funkci.

Tahle definice slouží jenom k tomu, abych nemusel psát třeba digitalWrite(2, HIGH), ale digitalWrite(OUT12, HIGH). Pokud bych to používal na jednom mástě, tak to nic moc neřeší (kromě lepší čitelnosti). Ale pokud bych tuto funkci používal na více místech a chtěl změnit pin, tak to musím všude v programu změnit. Takhle ten pin přepíšu jenom v definici a dál používám OUT12.

---

Nevím, proč furt řešíš, že první skupina je první a druhá druhá... Prostě to ber tak, že první skupina má 7 výstupů (každýmu jednotlivýmu výstupu můžeš přiřadit pin (to jsou ty čísla za tím OUTxx) a druhá skupina má 5 výstupů. Jakým PIRkem zapínáš jakou skupinu je taky úplně jedno. Kdyžtak přehoď dráty, nebo přehoď to A1 a A2, jak jsem psal dřív.

---

Kód níž má stejnou funkci jakou chceš. Jenom jsem přečísloval piny. Neřeším skupinu 1 a skupinu 2.

Kód: Vybrat vše

#define OUT11 7	//výstup 1 (skupina 1, reflektor 1)
#define OUT12 8	//výstup 2 (skupina 1, reflektor 2)
#define OUT13 9	//výstup 3 (skupina 1, reflektor 3)
#define OUT14 10	//výstup 4 (skupina 1, reflektor 4)
#define OUT15 11	//výstup 5 (skupina 1, reflektor 5)
#define OUT16 12	//výstup 6 (skupina 1, reflektor 6)
#define OUT17 13	//výstup 7 (skupina 1, reflektor 7)

#define OUT21 2	//výstup 1 (skupina 2, reflektor 1)
#define OUT22 3	//výstup 2 (skupina 2, reflektor 2)
#define OUT23 4	//výstup 3 (skupina 2, reflektor 3)
#define OUT24 5	//výstup 4 (skupina 2, reflektor 4)
#define OUT25 6	//výstup 5 (skupina 2, reflektor 5)

medvidek180
Příspěvky: 25
Registrován: 18 úno 2018, 19:59

Re: Světelný had - prosím POMOC

Příspěvek od medvidek180 » 27 úno 2018, 22:32

ono je to důležité to mít popořadě, jak to patří. Kdyby to tak nebylo, tak se v tom jednak ztrácet a potom bude taková motanice v drátech, že to sotva zavřu do rozvaděče a za třetí jestli to mám pochopit, tak mi to musí dávat alespoň nějakou logiku pro chápání.
Nebylo by to možné to přepsat tak, že by to vylejzalo jak potřebuju (a už vůbec jsem nepochopil proč jsou výstupy o číslo posunuté), jen s jednou animací, kterou bych tedy nepřepínal otočným přepínačem, ale vždy přišel s noťasem a přehrál program (protože to stejně nefunguje) a to je je vše??

Popř by se různé animace doplnily později, až pochopím tento základ???

Odpovědět

Kdo je online

Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 1 host