Elektroda.pl
Elektroda.pl
X

Search our partners

Find the latest content on electronic components. Datasheets.com
Elektroda.pl
OxomiOxomi
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

Arduino UNO + domoticz - Połączenie arduino z domoticz poprzez brame mysensors

27 Oct 2016 21:11 10125 6
  • Level 11  
    Potrzebuję pomocy bo mnie zaraz coś strzeli...
    Otóż zacząłem zabawę z arduino. Na początek nic wielkiego - sygnalizacja świetlna (3 diody, trochę kodu). Działa. Nawet fajnie. Dobre na rozgrzewkę i poznanie IDE. Następnie DS 18b20 - wow, mam 27 stopni C! Potem wyświetlacz 4-ro cyfrowy tm1637 i wyświetlanie na nim temperatury. Szukając opisu do w.w wyświetlacza trafiłem na wątki o uruchomieniu ekranu z telefonów nokii 3310 bądź 3510i (fck yeah! mam taki). Polutowałem, podłączyłem i...działa. Dumny siebie wziąłem się za coś cięższego: moduł WiFi ESP8266 (ESP-07). Wieczór zabawy i działa. Komendy AT chodzą jak głupie. Wpinam się do WiFi, stawiam stronę Hello World i bajka.
    Więc pomyślałem, że można zacząć zrobić pierwszy krok w kierunku tego co skłoniło mnie do zabawy z arduino, a mianowicie potocznie nazywany 'inteligenty dom' (wcześniej w innym wątku pytałem was o porady dot. rozwiązania ID). I przyznam się wam. że utknąłem tuż na starcie...
    Otórz postawiłem na fedorze (na niej też działam z arduino, na razie bez zastrzeżeń) domoticz w najnowszej wersji - działa. Wstępna konfiguracja itp. Myślałem, że dalej będzie już lekko. Ale nie było...
    Poczytałem o możliwości podpięcia gołego arduino do domoticza i wszędzie pada fraza mySensors. Poczytałem o tworzeniu bramy (nadajnik/odbiornik NRF radiowo) ale że też można po USB. Ucieszyło mnie to, gdyż i tak planuję wszędzie kłaść przewody UTP (może w przyszłości pod rozwiązania Deimic'a) więc po co się pchać w pełno urządzeń radiowych jak można korzystać z przewodów.
    Zacząłem więc stawiać mysensor gateway...i klops. Kilka poradników - nawet z ich strony: https://www.mysensors.org/build/temp - i nic. Ciągle domoticz wywala z dziwnym błędem:
    Code:
    Error: Serial Port closed!... Error: End of file
    
    terminate called after throwing an instance of 'boost::exception_detail::clone_impl<boost::exception_detail::error_info_injector<boost::thread_resource_error> >'
      what():  boost thread: trying joining itself: Resource deadlock avoided
    Aborted (zrzut pamięci)


    Jak już powgrywałem odpowiednie biblioteki (sic! kilkanaście bibliotek tej samej nazwy a każda inna!) to kompilator IDE stroi w miejscu...
    Wspomniany kod to:
    Code: c
    Log in, to see the code


    Może ktoś z was też tak zaczynał i może nakierować? Nie chcę gotowca - niczego to mnie nie nauczy. Potrzebuję tylko ustanowić stabilne połączenie z domoticzem i podesłać mu wynik z jednego czujnika (może to być stała, ustawiona z palca zmienna)...

    Dla przypomnienia: Mam arduino. Docelowo ma ono obsługiwać część zadań 'inteligentnego domu' (czujniki temperatury i wilgotności pomieszczeń, stacja pogodowa, oświetlenie zewnętrzne, może rolety, ogrzewanie - w miarę rozwoju systemu). Z racji, iż wszędzie będą przewody UTP to chciałbym to robić na tych przewodach (zasilanie + DATA) toteż nie idę w komunikację bezprzewodową.
    Potrzebuję sparować arduino z domoticzem (po kablu usb) tak, by można było dodawać czujniki podpięte pod arduino.
    To tyle. Z góry dziękuję za jakiekolwiek wskazówki.
    PS. Jak zły dział to proszę o przeniesienie.
    Do you have a problem with Arduino? Ask question. Visit our forum Arduino.
  • OxomiOxomi
  • Level 21  
    Podłączając arduino do komputera kablem USB powodujesz, że host rozpoznaje zabudowy na płytce arduino mostek USB-Serial. W systemie tworzony jest nowy port szeregowy i całą zabawa z Atmegą odbywa się właśnie tędy. Komunikat który przesłałeś wskazuje na problemy z otwarciem portu szeregowego. Masz zainstalowane sterowniki do mostka na płytce arduino?
  • OxomiOxomi
  • Level 34  
    Wyglada na brak inicjalizacji portu szeregowego na fedorze na którym pracuje arduino, w konfiguracji domoticz nie wybrałeś prawidłowego portu lub jest problem z jego inicjlizacją.

    Pozdr
  • Level 11  
    OK, problem z otwarciem - to też zdążyłem zauważyć. Tylko wychodzi na to, że to domoticz ma problem, bo jak podpiąłem ESP8266 pod arduino i wgrałem sketch do otwarcia portu na komendy AT to z poziomu terminala (minicom, cu) port otwiera się bez problemu (komendy AT wykonują się prawidłowo)...
  • Level 11  
    W domoticzu wygląda że wszystko jest ok - zarówno port (pokazuje tylko aktywne) jak i prędkość transmisji (ustawione w trakcie wgrywania sketcha).
    Spróbuję jeszcze zrobić zalecenie zgodnie z poradnikiem https://www.arduino.cc/en/Guide/Linux Choć faktycznie, z początku miałem problemy z grywaniem i właśnie po dodaniu siebie do grupy chyba dialout problem ustał. Obstawiam jeszcze na problem z uprawnieniami - spróbuję uruchomić wszystko z poziomu root'a.
    Jak dalej będzie problem postawię domoticza na windowsie, zainstaluję ide i zobaczę pod windą.

    Edit:
    Dodam, iż postawiłem na szybko domoticza na win 8.1 i działa. Niestety, nie chcę mieć win 8 więc postawiłem na win 7 i...ten to w ogóle ma problemy ze sterownikiem. Jest klops. Następnym krokiem będzie postawienie ubuntu i tam zobaczymy jak się sterownik zachowuje.
  • Level 11  
    Dobra, temat zamykam.
    Rozwiązanie mySensors jest skierowane tylko do komunikacji radiowej, tzn serwer domoticz z podpiętym arduino jako brama oraz sensory (każdy ze swoim arduino) komunikujący się przez transmisję radiową. Nie da się zrobić, by arduino, które jednocześnie jest bramą działał jako sensor - chore.
    Nie pozostaje nic innego jak podpiąć pod arduino czujniki i tworzyć własny system.
    Chyba, że jest jakaś alternatywa do mysensor to czekam na sugestie na PW.