Novi projekti
Arduino-Processing daljinski za komp
Tagged: arduino processing daljinski
- This topic has 24 replies, 4 voices, and was last updated 9 years, 4 months ago by
Goran Mahovlić.
-
AuthorPosts
-
25. August 2013. at 11:33 #2071
Goran Mahovlić
KeymasterKako iskoristiti stari daljinski…
25. August 2013. at 11:43 #2072Danijel
ParticipantEvo da malo podobnije objasnim našu ideju. Znači ideja je da s nekim daljinskim možemo upravljati računalom, točnije nekim multimedijskim programom. Arduino bi pročitao kod i zatim ga slao u processing gdje bi se taj kod obradio i odradio neku funkciju – play, stop, vol+, vol- …
I da, još bi napravili podršku za nekoliko programa recimo vlc, bsplayer i winamp.
Svi savjeti i komentari su dobrodošli :)25. August 2013. at 11:47 #2073Goran Mahovlić
KeymasterSuper si se toga sjetio jer se jako puno toga može naknadno dodati na tu kombinaciju.
Evo ovako sam ja mislio da pokušamo.
Arduino dio radiš ti.
Morao bi imati recimo neki gumb za inicijalizaciju. Ako je taj gumb pritisnut neko vrijeme tipa 5 sec ili ako je pritisnut kada se arduino pali arduino ulazi u learn mode.
Na serijskom portu ispisuje Molim pritisnite tipku 1
2
3
play
stop…
Štoli već
to sve spremiš u eeprom
nakon što završi konfiguracija kada se na daljinskom stisne tipka 1 2 3 odabire se sa kojim programom želiš upravljati. Možda neka kombinacija recimo 1 pa iza njega 5 znači pokreni program 1 ili 2 pa 5 pokreni program 5
,a onda svaka sljedeća naredba ide 1 pa recimo play 1 stop ili tako nešto.
Slati ćeš vjerojatno ovako
Serial.print(“a15b”);
Tako da ja znam da je a uvijek početak poruke a slovo b kraj poruke.
ovo između je ono što moram napraviti.
znači ovdje moram pokrenuti program 1…
uglavnom kako god da šalješ ovo a…b je obavezno, mogu biti i druga slova ali moram znati početak i kraj. Neznam da li nam ovdje treba dvosmjerna komunikacija, ja mogu tebi vratiti isto serijskom vezom neki podatak recimo 1 ako je poruka uspjela ili 0 ako nije, pa ti možeš ovisno o uspjšenosti upaliti ledice crvenu ili zelenu?
To neznam koliko je tebi problem odraditi?25. August 2013. at 12:07 #2075Goran Mahovlić
KeymasterDa prije nego počneš išta raditi, moraš mi definirati sve poruke koje ćem mi slati…
Možemo se dogovoriti da i inicijalizacija ide preko processinga. Tipa to kada ulazi u inicijalizaciju ti meni pošalješ
Serial.print(“a0b”);
i onda ja tebi šaljem
Serial.print(“c1d”);
Napišem u processingu pritisnite tipku 1
a ti čekaš da se stisne tipka.
Kad se stisne ti meni vratiš
Serial.print(“1”);
kao uspješno pa ja onda tražim da mi daš gumb 2
ili tamo nešto…
Ali samo se moramo dogovoriti koliko to komplicirano možeš napraviti?
I definirati malo te poruke da možemo raditi paralelno.26. August 2013. at 07:15 #2091Goran Mahovlić
KeymasterProučavao sam malo i processing nema u sebi već neki library da bi emulirao tipkovnicu, pa sam našao
http://docs.oracle.com/javase/1.4.2/docs/api/java/awt/Robot.html
Pošto je to u Javi, vrlo vjerojatno bi se dalo ugraditi u processing, ali onda ću imati još jedan problem. U iz processinga mogu pokrenuti bilo koji program, ali onda više ne znam ništa o njemu, mislim da bi sa JAVOM mogao pokrenuti program ali bi znao da je pokrenut ili ga pronaći nekako pod aktivnima, da bi se mogao fokusirati na njega i mogao njemu slati kombinacije tipaka. Sa Javom nekada zna biti problema sa ovim serijskim portom :) to, ali bio sam jednom uspio sa librarijem od processinga podesiti da ti serijski rade normalno.3. mogućnost je C#, u njemu mogu sigurno kontrolirati aplikacije, serijski port radi ko zmaj, a sad idem provjeriti i za tu emulaciju tipkovnice, ali mislim da je to isto bez problema izvedivo. Možda bi onda mogao napraviti tu aplikaciju da radi kao servis u pozadini windowsa. Možda bi je mogao pisati u MONO developu pa napraviti verziju za win i lin…
27. August 2013. at 11:30 #2100Goran Mahovlić
Keymaster27. August 2013. at 11:48 #2101Goran Mahovlić
KeymasterEvo samo malo sam prepravio za tetsiranje, ako pokrenemo, fokusiramo se na notepad i stisnemo na tipkovnici 0 python to izmjeni u TAB i ostalo dolje navedeno
treba odraditi serial, pokretanje programa, fokusiranje na program i to je to.# To be added:
# SerialRead
# Check if program is active, if not run program.
# setFocus on program so we can send keyboard shortcuts to focused program
#
import pyHook
import pythoncom
import win32com.client
shell = win32com.client.Dispatch(“WScript.Shell”)
hm = pyHook.HookManager()
def OnKeyboardEvent(event):
if event.KeyID == 48:
#If 0 on keyboard is pressed (this will be changed to Serial Read)
#emulate TAB pressing
shell.SendKeys(“{TAB}”)
if event.KeyID == 49:
#If 1 on keyboard is pressed (this will be changed to Serial Read)
#emulate ENTER pressing
shell.SendKeys(“~”)
if event.KeyID == 50:
#If 2 on keyboard is pressed (this will be changed to Serial Read)
#emulate ALT+TAB pressing
shell.SendKeys(“%{TAB}”)
# return True to pass the event to other handlers
return True
hm.KeyDown = OnKeyboardEvent
hm.HookKeyboard()
pythoncom.PumpMessages()27. August 2013. at 12:34 #210229. August 2013. at 18:56 #2105Danijel
Participantovaj swapy je zgodna stvar, nisam znao da već ima nešto takvo.
e sad… pošto zadnjih dana arduino koristim za nešto slično ovom :
i slučajno mi je voda pošpricala arduino i onda se samo ugasio… već sam naručio novi tako da u slijedećih 10-ak dana budem nešto isprogramirao ovo za daljinski. već imam na papiru dosta toga31. August 2013. at 15:24 #2106Ivica Zdelarec
KeymasterHehe, ta voda uvijek nađe naćin da dođe do ključnih komponenti.
Možeš nam reć malo detaljnije o tom projektu? Goran i ja smo planirali napravit web telemetriju za akvaponske sustave, i za to smo mislili arduino ethernet shied koristit.
Ako si u Zagrebu, mogu ti ja posuditi Uno dok tvoj ne dođe. Moji tak ionako ne viđaju puno uporabe u zadnje vrijeme.
31. August 2013. at 20:16 #2107Danijel
Participanteh sad ste otkrili i dio moje ideje.
ugl prije koji mjesec sam sjedio u dvorištu i gledao vrt i došlo mi je na pamet kak da to automatiziram, odnosno da napravim idealne uvjete za biljku tako da napravim maksimalan rast i proizvodnju. tako sam počeo pisati neki program opće ne svjestan toga što mi sve treba. prva ideja je bila riješiti se lopova i automatizirati zalijevanje, al onda mi je pala na pamet i zima. što po zimi kad je vani temperatura ispod nule? e onda sam došao na ideju za grijanje. na kraju došao sam do toga da bi trebao napraviti mali staklenik, od drva pošto nemam stakla (drvenik :D ) i u njemu posaditi razno povrće koje bi trebalo prezimiti. u njemu bi bio senzor za temperaturu zraka, senzor vlažnosti zemlje, senzor razine svjetlosti, PIR senzor za krađu i vjerojatno neka IP kamera i neki ventilatori za regulaciju protoka zraka. da bi sve to bilo ljepše mislio isto ko i vi napraviti neko malo zgodno web sučelje koje bi prikazivalo razinu svih tih senzora i da se po potrebi može recimo zaliti biljka. u slučaju uključenja pir senzora slala bi se poruka na mobitel. koristio bi one UV cijevi jer sam vidio da u onim rasadnicima ili kaj je već to da ih tamo koriste. sve u svemu od bilo gdje imao bi pristup preko smartphonea malom vrtu. glavni problem su mi novci, sad počinje faks tako da sam vrlo ograničen. da skratim, do sad sam došao do toga da tu nekakvu biljku ili cvijet, ne znam ni ja kaj je to zalijevam po postotku vlažnosti zemlje, i navečer se pali rasvjeta (mala halogena lampa) nije puno, al je i za to trebalo dosta vremena kolko god to čudno zvučalo. napredak na biljci je vidljiv, u kojih 4-5 dana listovi su se proširili i digli su se u zrak tako da ipak ima neke koristi od toga :)
@Ivica: hvala, ali svejedno ne treba. paketi mi stižu dosta brzo ovih dana tako da mislim da bude drugi tjedan već tu31. August 2013. at 20:48 #2108Goran Mahovlić
Keymasterja sam imao ideju sa ovim mjeriti ph i vlagu zemlje i napraviti za mikro staklenik tipa jedne biljke doma, kak ti imaš sada vjerojatno.
a za grijanje sam mislio
temperaturni senzor ništa ne košta to ima u svakom napajanju i u puno elektronike pa nije problem
pumpicu sam imal od nekog patuljka doma kaj pumpa vodu to je bilo 20 kuna
Možda neki solarni punjač isto za par kuna kupiti, onaj sa ledicom nekom.
Ne znam kak bi se to ponašalo to sve sa UV ledcama, imam 20 komada smd, pa za micro setupi onda sam to sve rastavio i prešao na drugi projekt :)
Ak ti fali kaj napiši možda imamo, barem od ovih senzora.
Recimo ja samo isprogramiram sa cijelim arduinom i isprobam a onda napravim samo pločicu di je čip i oscilator i to trpam u setup da ne spalim sve…31. August 2013. at 20:55 #2109Goran Mahovlić
KeymasterA kaj se tiče ovog mrežnog što god, treba naći najjeftiniji router iz njuškala u koji ide open WRT, i onda nema jeftinijeg wireless ethernet shielda od toga, pa mi je sada to prioritet, kad se vratim sa mora, a do mora moram složiti neki brod da imam kaj raditi dok se cura kupa…
31. August 2013. at 23:00 #2110Danijel
Participantda to sam i ja razmišljao ovo o bežićnoj komunikaciji mikrokontrolera općenito. ti njihovi bežićni tipa x-bee su preskupi. trebam prodati lijevi bubreg da si nabavim svu opremu za komunikaciju između par mikrokontrolera. i onda ispada da nekakav mali repeater je najjeftiniji, još bolje ak ima open WRT. ethernet shield je kojih 70 kn i router je oko 100 kn sve skupa recimo da ispada kojih 200 kn po jednom mjestu, a mogućnosti su puno veće neko s onim iks-bijem
1. September 2013. at 03:22 #2111Goran Mahovlić
KeymasterMa ne treba ethernet :)
Ovako sam ja zamislio, možeš router spojiti na arduino preko USB-a koliko sam vidio, ali to treba vidjeti da li se da iskompajlirati za te rutere kaj ima po njuškalu. Ako ne tako većina routera ima serijski interface za konzolu, može se spojiti arduino na tu konzolu i preko toga je on već na mreži.Treba samo smisliti kako da između sebe arduinači komuniciraju… -
AuthorPosts
- You must be logged in to reply to this topic.