Pracuję nad podobnym projektem, który wykorzystuje Internet do komunikacji z urządzeniem zewnętrznym (mobilnym). Czytam dane z czujników i przesyłam je przez sieć za pomocą gniazd sieciowych. Korzystam z Arduino Yun do tego projektu i Spacebrew (do komunikacji z gniazdami internetowymi). To bardzo interesujące podejście, ale w niektórych przypadkach stanowi wyzwanie. Prawdopodobnie napotkasz problem asynchroniczny / synchroniczny, co w moim przypadku doprowadziło mnie do uruchomienia niektórych skryptów Pythona na Yun'a wywołanych z kodu przetwarzania. Obecnie korzystam z serwera Spacebrew na mojej sieci VPN, więc mogę podłączyć swój Yun pozostawiony w domu i używać mojego iPhone'a zewsząd, aby uzyskać odczyt.
Warto również wspomnieć, że Yun ma fabrycznie zainstalowaną bibliotekę Temboo, która jest doskonałym punktem wyjścia do komunikacji internetowej. Konfiguracja jest naprawdę łatwa i szybka. Znajdziesz również oficjalną dokumentację bardzo przydatną i łatwą do zrozumienia. To naprawdę świetny punkt wyjścia do eksperymentowania z aplikacjami internetowymi zintegrowanymi z Arduino Yun.
Spacebrew
http://docs.spacebrew.cc/
Spacebrew to otwarty, dynamicznie zmieniany programowy zestaw narzędzi do choreografii interaktywnych przestrzeni. Lub innymi słowy, prosty sposób łączenia ze sobą interaktywnych rzeczy. Każdy element podłączony do systemu może subskrybować i publikować kanały danych.
http://github.com/Spacebrew/pySpacebrew
To repozytorium zawiera bibliotekę Spacebrew dla Pythona wraz z dokumentacją i przykładowymi aplikacjami.
http://github.com/julioterra/yunSpacebrew
Biblioteka Spacebrew Yun zawiera dwa główne komponenty - zestaw skryptów pythonowych uruchamianych na linino oraz bibliotekę działającą na chipie atmel. Znajdziesz tam informacje, jak zainstalować oba te komponenty, aby można było połączyć się ze Spacebrew ze szkicu Arduino.
Temboo
Yun ma również wbudowaną bibliotekę Temboo, jest to świetny sposób na rozpoczęcie eksperymentów, gdy udowodnisz koncepcję, możesz zacząć zawężać swoje środowisko i odchodzić, jeśli nie chcesz używać oprogramowania innych firm.
http://www.temboo.com/arduino
Biblioteka Temboo ułatwia łączenie się z ponad 100 zasobami i usługami internetowymi dzięki Processing. Obecnie można znaleźć biblioteki dla Androida, Arduino, iOS, Java, Node.js, PHP, Processing, Python, REST API, Ruby, Twyla
Node.js
Możesz także uruchomić node.js na samym Yun, oto dobry artykuł i niektóre pakiety gotowe do zainstalowania:
Co to jest biblioteka Bridge dla Arduino Yun?
Pytałeś także o bibliotekę Bridge. Jak wiesz, Yun ma dwa procesory na pokładzie, jeden uruchamia kod przetwarzania, drugi ma Linuksa (Linino). Bridge w zasadzie upraszcza komunikację między nimi, aby mogli ze sobą „rozmawiać”, więcej informacji tutaj:
http://arduino.cc/en/Reference/YunBridgeLibrary
(Na podstawie dokumentacji arduino.cc :)
Arduino Yún ma dwa procesory na pokładzie. Jednym z nich jest ATmega32U4 jak na Arduino Leonardo. Drugi to Atheros 9331, na którym działa Linux i bezprzewodowy stos OpenWRT, który umożliwia płytce połączenie z siecią WiFi i Ethernet. Możliwe jest wywoływanie programów lub niestandardowych skryptów w systemie Linux za pośrednictwem Arduino, aby łączyć się z różnymi usługami internetowymi.
Biblioteka Bridge upraszcza komunikację między ATmega32U4 i AR9331. Dziedziczy po Streamie, a wiele metod powinno być znanych z Serial i innych pochodnych Stream.
Komendy mostkowe z 32U4 są interpretowane przez Python na AR9331. Jego rolą jest uruchamianie programów po stronie GNU / Linux na prośbę Arduino, zapewnienie wspólnej przestrzeni do udostępniania danych, takich jak odczyty czujników między Arduino i Internetem, oraz odbieranie poleceń z Internetu i przekazywanie ich bezpośrednio do Arduino.
Bridge umożliwia komunikację w obu kierunkach, działając jako interfejs do wiersza poleceń Linino.
Gdzie zacząć?
Chciałbym zacząć od Temboo, gdybym był tobą, to świetna krzywa uczenia się i dość prosty krok na początek. Dowiesz się również i zrozumiesz, jak działa tablica i jak komunikować się ze „światem zewnętrznym”. Po uzyskaniu potwierdzenia koncepcji zacznij eksperymentować z różnymi bibliotekami i ulepsz swoje podejście. Być może później Spacebrew będzie bardziej przydatny, a nawet odkryjesz różne rozwiązania.