Nettigo tinyBrd - integracja z Arduino IDE

Szczegółowo opisaliśmy instalację Nettigo tinyBrd Core, zapewniającą integrację z Arduino IDE. Zainstaluj najnowszą wersję zgodnie ze wskazówkami w artykule o instalacji tinyBrd

Bezprzewodowy czujnik temperatury

tinyBrd posiada złącze przeznaczone do podłączenia modemu nrf24l01+. Dzięki temu dosłownie w kilka minut możesz zbudować sieć kilku sensorów nadających bezprzewodowo do centralnego modułu. W trakcie nadawania moduł konsumuje ok 18 mA a w uśpieniu tylko 9-10 µA ! Mowa o całkowitym poborze prądu przez tinyBrd, moduł nrf24l01+ i czujnik temperatury DS18B20.
Bez problemu taki układ będzie działał przez kilka tygodni na bateriach AA.

Do uruchomienia czujnika DS18B20 na tinyBrd potrzebujesz bibliotek:

Biblioteki do obsługi NRF czy przejścia w tryb niskiego poboru mocy są już częścią Nettigo tinyBrd Core i nie musisz ich instalować.

Ściągnij i zapisz pliki .zip. Dodaj biblioteki do Arduino IDE, kolejno wskazując pliki zip. Użyj do tego celu menu Sketch/Include Library/Add .ZIP Library.

Jeżeli już miałeś zainstalowane biblioteki o takiej nazwie (np. DS18B20), to może będziesz musiał usunąć wcześniejsze wersje.

Teraz potrzebujesz programu, przygotowany przez nas szkic ściągnij i rozpakuj w katalogu ze swoimi szkicami.

Potrzebujesz, oprócz tinyBrd również czujnik DS18B20 oraz rezystor 4.7 kΩ.

Potrzebne elementy do zbudowania czujnika

tinyBrd zawiera niewielkie prototypowe pole lutownicze (4x5 otworów). Patrząc na płytkę jak na zdjęciu wyżej, do wszystkich otworów po lewej doprowadzone jest napięcie zasilania, a do tych po prawej masa. Dalej w artykule znajdziesz szczegółowy opis wyprowadzeń tinyBrd.

Skorzystamy teraz z tych pól, ale jeżeli możesz dla testów wlutować w złącze tinyBrd goldpiny i podłączyć go do płytki stykowej.

Włożony rezystor i czujnik w pole prototypowe

Wkładamy DS18B20, tak by go zasilić (zwróć uwagę na kształt obudowy DS18B20, wsadzenie go na odwrót może skutkować jego uszkodzeniem). Środkową nóżkę czujnika przekładamy przez otwór razem z nóżką od rezystora. Tę nóżkę wyginamy pod spodem płytki i wyprowadzamy w wyjściu D0 tinyBrd. Drugi nóżkę rezystora wkładamy do otworu z zasilaniem.

Lutujemy układ, obcinamy wystające nóżki i podłączamy programator do tinyBrd. Czerwony skraj taśmy od programatora powinien być od strony układu scalonego. Obecnie na płytce symbol gwiazdki wskazuje, z której strony powinien być oznaczony skraj taśmy.

Uruchamiamy Arduino IDE, otwieramy szkic tinyBrdExamples/tinyBrdTemp i wgrywamy go na tinyBrd.

Gdy chcesz uruchomić więcej modułów w jednej sieci, pamiętaj, aby poprawić data.id tak, by każdy moduł miał ten parametr unikalny. Dzięki temu odbiornik będzie wiedział, który moduł wysłał dane.

Podłącz zasilanie i gotowe.

tinyBrd był naszym wewnętrznym projektem w Nettigo, który okazał się tak użyteczny, że go udostępniliśmy publicznie. Wczesne wersje wprowadzona do sprzedaży były pozbawiona opisu na płytce, skorzystaj z poniższego rysunku by wiedzieć jak podłączyć zasilanie. Od 27.07.2015 w sprzedaży są wersje z poprawnym silkscreenem

Szczegółowy opis wyprowadzeń tinyBrd

Co dalej?

Koniecznie przeczytaj artykuł o szczegółach oprogramowania działającego na tinyBrd by przekonać się jak łatwo modyfikować kod działajacy na nim.

Odbieranie danych na Raspberry

Artykuł o testowaniu połączenia między RPi a tinyBrd - zobacz jak sprawdzić jakość połączenia (i zainstalować bibliotekę pyNRF do obsługi NRF na Raspberry).

Gdy wystąpi błąd avrdude: error: programm enable: target doesn't answer. 1

Jeżeli natkniesz się na taki błąd podczas wgrywania szkicu, jeżeli dobrze podłączyłeś złącze programatora przyczyną może być prędkość programowania. W USBasp wystarczy ustawić zworkę SlowSCK by obniżyć prędkość programowania. Wydłuża to czas potrzebny na wgranie szkicu, ale działa niezawodnie.

Zworka z przewodu F-F podłączona na czas programowania tinyBrd