Arduino ovládané z Androida

Michal

Arduino ovládané z Androida
« kdy: 09. 11. 2013, 20:45:59 »
Ahoj všem, mám takovou velkou prosbu a pomoct. Udělal jsem si doma ze stavebnice arduino ovládání komplet světel a zapínaní kotle. Teď se snažím udělat aplikaci do telefonu kde budou tlačítka zap vyp. Arduino je uděláno jako server s IP 192.168.0.20. Takže když třeba zadám do prohlížeče pro rozsvícení obýváků tak vím že musí do prohlížeče zadat  http://192.168.0.20/?b=1 číslo 1 je hodnota ON když bych zadal http://192.168.0.20/?b=2 tak to vypnu 2 je OFF. Samozřejmě že mam udělány tlačítka toto jsem uvedl co musí být zadané za příkaz aby to arduino pojmul. A teď semi jedná o to jak udělat program nebo jak to provést aby to odeslalo tento příkaz na tu IP :( Předem děkuji snad jsem to napsal co nejvíc smyslu plně
« Poslední změna: 11. 11. 2013, 09:58:41 od Petr Krčmář »


Re:Arduino vs android
« Odpověď #1 kdy: 09. 11. 2013, 21:54:52 »
Je nutné mít pro to na Androidu samostatnou aplikaci? Připadalo by mi nejjednodušší na ten web server na Arduinu přidat ještě statickou stránku, kde budou velké obrázkové odkazy "Obývák zapnout", "Obývák vypnout" atd. s příslušnými adresami. Na Androidu pak akorát přidáte na plochu záložku vedoucí na tuhle statickou stránku.

Michal

Re:Arduino vs android
« Odpověď #2 kdy: 09. 11. 2013, 22:44:48 »
Tak teoreticky by to slo tady je problem kdyz ja to mam otevrene na tabletu kterej vysi na zdi a pripojim se treba z mobilu tak se to zacne chovat nestabilne nejak moc to nesnese vic pripojenych veci. tak proto jsem chtel udelt aplikaci a postupne ji dodelavat a rozsirovat jelikoz zas chci aby t onejak vypadalo stranky jsou hole pouze par tlacitek a klasicky html. Tak proto jsem chtěl udělat nejakou peknou aplikaci pro tablet ci mobil ale nevim si absolutne rady jak to udelat ty tlacitka aby odeslali prikaz na to ip :(

Jimm

Re:Arduino vs android
« Odpověď #3 kdy: 09. 11. 2013, 22:55:29 »
A proč by měl být problém na Androidu zavolat POST nebo GET?  Neznám jazyk ve kterém by to nešlo.

J.

WX

Re:Arduino vs android
« Odpověď #4 kdy: 09. 11. 2013, 22:57:57 »
Teď nevím, co očekáváš. Těžko tě tady naučí komplet celý Android. Stáhni si SDK, nějaké IDE a koukni na tutoriály (na webu je jich celkem dost). Samotný HTTP požadavek je celkem jednoduchá věc (tedy ono to celé není nějak extra složité) - viz třeba:

http://androidexample.com/How_To_Make_HTTP_Get_Request_To_Server_-_Android_Example/index.php?view=article_discription&aid=63&aaid=88


Michal

Re:Arduino vs android
« Odpověď #5 kdy: 09. 11. 2013, 23:05:42 »
Nečekám že mne tady bude někdo učit programovat. Co se týče programu tak ho mam udělany ale prostě nevím jak udělat to abych odeslal ten příkaz :( ale zas nechci zdržovat a otravovat. Jen sem se chtel pozeptat.

Re:Arduino vs android
« Odpověď #6 kdy: 10. 11. 2013, 11:57:41 »
Co se týče programu tak ho mam udělany ale prostě nevím jak udělat to abych odeslal ten příkaz :(
Prostě při stisknutí toho tlačítka v samostatném vlákně zavoláte ten HTTP GET požadavek. Android SDK má HTTP klienta už přímo v sobě -- android.net.http.AndroidHttpClient. Ale pořád si myslím, že udělat na tohle i hezkou a uživatelsky přívětivou aplikaci je pořád řádově jednodušší v HTML5 než jako nativní aplikaci.

Pokud se ten server na Arduinu chová špatně při ovládání z více míst, bude se to chovat úplně stejně i když to budete ovládat z nativní Androidí aplikace. Problém není v klientovi, ale v serveru.

Re:Arduino vs android
« Odpověď #7 kdy: 10. 11. 2013, 13:01:58 »
Škoda, že nepíšeš, jak "nestabilně" se to chová. Mohlo by to být tím, že Wiznet umí spravovat jenom 4 TCP spojení. Takže se na to musí myslet, spojení okamžitě zavřít apod.

Taky bych se přimlouval za statickou html stránku. Ta sama o sobě nemá důvod způsobovat jakoukoli nestabilitu. Prostě se stránka stáhne, spojení ukončí a jsem zpátky ve výchozím stavu. Problém by mohl nastat jedině kdyby se snažili tu stránku stáhnout zaráz víc než 4 klienti. Což by se snad u systému tohodle typu nemělo běžně stávat.

Pak by ještě taky byla možnost nepsat pro Android úplně nativní aplikaci, ale použít třeba nějaké HTML udělátko: http://stackoverflow.com/questions/9045355/how-to-create-an-android-app-using-html-5

Squirrel

Re:Arduino vs android
« Odpověď #8 kdy: 10. 11. 2013, 15:33:47 »
pokud chces pro android jednoduchou aplikaci tak doporucuju Kivy Framework (fakt otazka chvilky v tom neco napsat :D )

a jinak... neni mozne u arduino + ethernet pouzivat neco jineho nez HTTP? :-) mne to trosku pripada jako overkill mit na arduino webserver, ale tak O:-)

P.S: osobni nazor!

Michal

Re:Arduino vs android
« Odpověď #9 kdy: 10. 11. 2013, 19:36:23 »
tak teď jsem mimo uplne :-D

hmmm

Re:Arduino vs android
« Odpověď #10 kdy: 10. 11. 2013, 19:43:40 »
Jak pise M. Prymek, pokud ti to tvoje http://192.168.0.20/?b=1 funguje z tabletu, tak v principu neni duvod, proc by to nemelo fungovat z Androidu. Zkus patrat timhle smerem.