Kontrolowanie arduino z iPhone (wifi)

Masz problem z Arduino? Tutaj możesz szukać pomocy.
ODPOWIEDZ
tomkowz
Młodszy majsterkowicz
Posty: 4
Rejestracja: 16 sty 2014, 23:10

Kontrolowanie arduino z iPhone (wifi)

Post autor: tomkowz » 19 sty 2014, 00:54

Hej,

Od niedawna bawię się Arduino Uno, chciałbym w przeciągu następnych dwóch tygodniu dokupić akcesoria, które pomogą mi sterować arduino (wysyłać jakiekolwiek sygnały) z poziomu iPhone'a. Z tego co znalazłem w internecie mozna zakupić shield, do którego można później podłączyć Xbee wifi. Czy ktoś z was bawił się czymś takim? Kompletnie nie wiem jak ugryźć to zagadnienie. Czy to Xbee wifi działa na zasadzie routera, do którego mogę się podłączyć iPhonem? Jak arduino miałby radzić sobie z odczytywaniem takich sygnałów przesyłanych przez wifi? Widziałem na Youtube filmy, w których ludzie sterują np. czołgiem za pomocą iPhone'a, ale kompletnie nie wiem jak jest to rozwiązane.

Proszę o pomoc.

Co miesiąc do wygrania nagrody o wartości ponad 1600 zł!


Awatar użytkownika
Maxik
Starszy majsterkowicz
Posty: 405
Rejestracja: 6 lip 2012, 18:27
Lokalizacja: Gdańsk
Kontakt:

Re: Kontrolowanie arduino z iPhone (wifi)

Post autor: Maxik » 19 sty 2014, 01:25

Jeśli Arduino ma być "stacjonarne" to tańszym rozwiązaniem będzie zakup Ethernet Shielda. Wystarczy wtedy, że telefon i Arduino będą w tej samej sieci lokalnej. Interfejs można oprzeć o stronę internetową, to prostsze niż pisanie dedykowanej aplikacji.
tomkowz
Młodszy majsterkowicz
Posty: 4
Rejestracja: 16 sty 2014, 23:10

Re: Kontrolowanie arduino z iPhone (wifi)

Post autor: tomkowz » 19 sty 2014, 07:59

Aplikacja na iOS nie jest problemem, pracuję na codzień jako iOS Software Engineer i sam chciałbym takową aplikację napisać.

Wiem, że na pewno potrzebuję te części, żeby móc po stronie Arduino udostępnić komunikację bezprzewodową:

- Arduino XBee Shield
- Moduł XBee 802.15.4 (nie wiem czy powinienem mieć series 1 czy series 2)

Pytanie jest takie czy muszę kupować jakieś inne części i robić jakies "haki", żeby podłączyć coś do iPhone czy wystarczy, że Arduino będzie miał te dwie rzeczy na sobie i będzie udostępniał mi wifi swoje i będę mógł się do niego podłączyć przez iPhone, jak właściwie to XBee działa? Nie mogę nigdzie znaleźć nic konkretnego.

Pytanie również co jest używane (protokół, cokolwiek) żeby telefon wiedział, że wysyła sygnał do arduino (po adresie IP?) oraz jak takie komendy mają być wysyłane.

Ostatecznie chciałbym, żeby to wylądowało kiedyś kiedyś w quadrokopterze, którego chciałbym zbudować.
tomkowz
Młodszy majsterkowicz
Posty: 4
Rejestracja: 16 sty 2014, 23:10

Re: Kontrolowanie arduino z iPhone (wifi)

Post autor: tomkowz » 19 sty 2014, 10:55

Hej,

Poszperałem trochę i znalazłem fajny tutorial:

Jeszcze nie moge wrzucac linkow wiec wrzucam je tak:

mohammadissa(kropka)com/2013/04/18/android-ios-wifi-controlled-arduino/

Z tego co wyczytałem to Wifly Shield moze byc access pointem, do ktorego moge sie podlaczyc z iPhone i wysylac sygnaly.

sparkfun(kropka)com/products/9954

Czy ktos mial z tym stycznosc i moze cos wiecej powiedziec? Cena troche spora, ale wyglada na to ze to bylby jedyny modul potrzebny do stworzenia polaczenia.
skl
Majsterkowicz
Posty: 60
Rejestracja: 3 gru 2013, 17:37

Re: Kontrolowanie arduino z iPhone (wifi)

Post autor: skl » 19 sty 2014, 13:25

tomkowz pisze:Pytanie również co jest używane (protokół, cokolwiek) żeby telefon wiedział, że wysyła sygnał do arduino (po adresie IP?) oraz jak takie komendy mają być wysyłane.
Po prostu uzyskujesz połączenie protokołem TCP/IP. Arduino z ethernet shieldem może działać jako serwer, a więc odbierać wiadomości i przyjmować połączenia. Sam musisz stworzyć schemat komunikacji. Ja bym to zrobił tak:
iOS -> uC wysyła pakiet z kodem operacji, przykładowa zawartość: "1"
uC -> iOS wysyła potwierdzenie odebrania rozkazu operacji (status), np. "0" lub jakiś kod błędu np. "-1"
uC wykonuje żądaną operację, np. zapala diodę, załącza silnik czy cokolwiek
uC -> iOS wysyła potwierdzenie wykonania operacji, czyli np kod statusu "0"

Wprawdzie wymaga to zdefiniowania kodów operacji i kodów statusów (no i oczywiście odpowiednie reagowanie na nie), ale jest najprostsze, wymaga wysyłania tylko powiedzmy 1 bajta między urządzeniami, co w pewnym stopniu może się przekładać na szybkość działania operacji.

Ogólnie jeżeli jesteś twórcą oprogramowania to pewne rzeczy sam ogarniesz. Podłączając oba urządzenia do sieci zestawiasz normalne połączenie klient-serwer i tak się komunikujesz wysyłając dane i interpretując je.
tomkowz
Młodszy majsterkowicz
Posty: 4
Rejestracja: 16 sty 2014, 23:10

Re: Kontrolowanie arduino z iPhone (wifi)

Post autor: tomkowz » 19 sty 2014, 19:51

Dzięki za odpowiedź odnośnie komunikacji ios i arduino, jednakże czy mógłby się wypowiedzieć ktoś odnośnie tego co byłoby potrzebne do komunikowania się po wifi? I czy ten WiFly będzie okej czy będzie tu trzeba coś kombinować?
ODPOWIEDZ

Strony partnerskie: