Sensirion SHT30 wyjątkowy czujnik temperatury i wilgotności

Czujników temperatury i wilgotności na rynku już nawet kilka lat temu było naprawdę sporo. Najpopularniejsze to DHT11 i DHT22, jednak mają kilka wad. Nie najlepsza dokładność, protokół bardzo wrażliwy na zależności czasowe to tylko niektóre. Inni producenci prześcigali się w dokładności czujników, wykorzystywanych interfejsach czy dodatkowych funkcjach.

Jednym z prawdziwych kombajnów do odczytu wartości temperatury i wilgotności jest Sensiron SHT30. Komunikuje się z mikrokontrolerem za pomocą magistrali I2C (czyli odpada problem zależności czasowych z DHT). Posiada dość wysoką dokładność, ma bardzo kompaktowe wymiary. Dodatkową zaltetą jest możliwość zaprogramowania samego czujnika aby na specjalny pin podał sygnał gdy wilgotność lub temperatura osiągnie lub spadnie do określonego poziomu. Dzięki czemu możemy zbudować proste urządzenia na bazie czujnika nie używając nawet mikrokontrolera. 

Jeśli dokładność SHT30 jest za mała, wówczas dostępny jest moduł SHT31, który programuje się dokładnie tak samo jak opisany tutaj SHT30 ale oferuje większą dokładność.

Czytaj dalej

W5500 Ethernet, tutaj rozmiar nie ma znaczenia!

Układy do obsługi sieci firmy Wiznet od kilku lat przodują jeśli chodzi o rozmiar i możliwości,  przewagę tą zauważyło nawet sama firma Arduino, ponieważ układy te są montowane do autoryzowanych Ethernet Shieldów. My dzisiaj zajmiemy się nie Ethernet Shieldem, a modułem Ethernet opartym na układzie Wiznet W5500. Sam moduł jest bardzo mały, niewiele większy niż gniazdo Ethernet, przez co możemy go używać nawet w mniejszych projektach.

Przewaga układów Wiznet nad układami ENC

Moduły na układach Wiznet są nieco droższe od modułów na układach ENC, ale nie jest to wcale bezpodstawne. Układy Wiznet w przeciwieństwie do układów ENC większość protokołów i operacji przetwarzają sprzętowo, dzięki temu operacje obciążają układ modułu, a nie nasz mikrokontroler, pozwala to na szybkie i wygodne operowanie w sieci nawet układom 8-bitowym. Oprócz tego układy Wiznet pozwalają na korzystanie ze swojej pamięci RAM, co jest kolejnym bonusem. Ostatnim, ale równie ważnym argumentem do korzystania z układów Wiznet jest oficjalne wsparcie Arduino, dzięki dużo lepiej opracowanym biblioteką możemy szybciej nauczyć się programowania tego modułu, program również będzie lżejszy.

Czytaj dalej

Wyświetlacze OLED, wysoka jakość łatwe użycie z Arduino

Wyświetlacze OLED już od jakiegoś czas temu przejmują rynek wyświetlaczy używanych w połączeniu z płytką Arduino, ich cena coraz bardziej spada, a w porównaniu do klasycznych już wyświetlaczy alfanumerycznych posiadają wyższą rozdzielczość, mają bardziej kompaktową budowę i już nawet najtańsze modele oferują możliwość wyświetlania grafik. Do poznania tajników tych wyświetlaczy użyjemy modelu o rozdzielczości 128x32px oparty jest on na chipie SSD1306 i z Arduino łączy się za pomocą magistrali i2C.

Czytaj dalej

ENC28J60 NANO SHIELD czyli wygodny sposób na podłączenie Arduino do sieci!

Wraz z biegiem lat płytki Arduino są wykorzystywane do coraz bardziej zaawansowanych projektów i nie dzieje się to za sprawą samych płytek, ale w dużym stopniu dzięki modułom oraz układom kompatybilnych z procesorami 8-bitowymi. Dzisiaj pod lupę weźmiemy shield, czyli nakładkę na płytkę Arduino Nano, shield ten jest wyposażony w układ ENC28J60 który zajmuje się przetwarzaniem danych które mogą trafić do sieci, dobrze wykorzystany stanie się kombajnem sieciowym który do wszystkich użytkowników docelowej sieci może dostarczać dane z czujników lub zbierać i wykonywać polecania userów. 

Podłączenie modułu do płytki i sieci

Podłączenie shielda do Arduino jest niezwykle proste ponieważ musimy nałożyć piny shielda na piny od naszej płytki uruchomieniowej, warto sprawdzić które piny są opisane na shieldzie i Arduino i podłączyć shielda zgodnie z nimi. Na zdjęciu poniżej zaprezentowane jest prawidłowe podłączenie modułu do płytki.

Czytaj dalej

BBC micro:bit i wyświetlacz LED z kilkunastu matryc 8×8 (IwE 2019)

Wśród projektów pokazowych na tegoroczna konferencję Informatyka w Edukacji musiało się znaleźć coś, co z dużej odległości przyciągnie uwagę odwiedzających. Jako, że nasza stacja pogodowa oparta o rozszerzenie SparkFun weather:bit potrzebowała sposobu prezentacji danych meteorologicznych, postanowiliśmy stworzyć coś do będzie widoczne z wielu metrów, a jednocześnie będzie miało praktyczne zastosowanie.

Matryca jest dobrze widoczna nawet w dzień

Rodzaj wybranych matryc, ich ilość i wydajność prądowa BBC micro:bita spowodowały, że projekt musi być zasilany z zewnętrznego zasilacza 5V. Możliwe jest wysterowanie i zasilenie do 4 matryc LED bezpośrednio z BBC micro:bita podpiętego pod USB, ale wyświetlane piksele nie będą tak jasne jak w przypadku dedykowanego zasilania.

Czytaj dalej

Bazyl – czyli jak BBC micro:bit pilnował bazylii (IwE 2019)

W związku ze zbliżającą się konferencją Informatyka w Edukacji 2019, wzorem lat ubiegłych nasz zespół przygotował kilka projektów pokazowych. Ich stopień trudności, czasochłonność i budżet są bardzo zróżnicowane. Wśród nich Bazyl jest jednym z prostszych do wykonania.

Jak prezentuje się Bazyl, każdy widzi.

Założenia są bardzo proste: zadaniem Bazyla jest opieka nad bazylią. Co za tym idzie, musi on od czasu do czasu sprawdzić czy ziemia nie jest sucha. Dobrze by było aby na żądanie wyświetlił wynik pomiaru. Zaś o podlewanie powinien się upomnieć sygnałem dźwiękowym.

Czytaj dalej

ESP8266 pracujący jaki Access Point albo klient WiFi

Pracując ostatnio nad firmware Pogodełka, natknąłem się na pewną nieudokumentowaną cechę SDK dla ESP8266 w zakresie trybów pracy AccessPoint/klient (station). W dużym skrócie, jeśli choć raz skonfigurujesz tryb AccessPoint na ESP8266, to nawet wgrywając nowy program, mogą te ustawienia zostać aktywne.

Objaw jest taki, że Twoje ESP8266 pracuje jako stacja (klient WiFi) a mimo to rozgłasza SSID, do którego się można dopiąć. W dokumentacji do ESP8266WiFi napisane jest, że aby podłączyć się do sieci WiFi należy skorzystać z komendy WiFi.begin(SSID, PASSWORD) wpisując właściwe wartości. Jeśli wcześniej mieliście kod z Access Pointem, to uruchomiając w ten sposób tryb station spowodujecie, że ESP8266 podłączy się do wskazanej sieci, ale jednocześnie uruchomi AccessPointa z danymi jakie miało ustawione wcześniej.

By pozbyć się tej dodatkowej sieci należy wskazać wprost, że chcemy pracować jako stacja. Prawidłowa sekwencja uruchamiania tego trybu to:

WiFi.mode(WIFI_STA);
WiFi.begin("siec_wifi","tajne haslo");

Chcecie sobie przetestować? Proszę skorzystajcie z tego przykładu w tym giscie. Skompilujcie i wgrajcie np w nodeMCU. Ze względu na #define w linii 3 skompilowana zostanie wersja z Access Pointem. Sprawdźcie że pojawia się takie SSID.

Potem usuńcie #define i wprowadźcie swoje hasło i nazwę sieci WiFi w linii 15. Po wgraniu kodu ponownie, podłączcie się do seriala – dostaniecie info o adresie IP, który dostało ESP. Czyli pracuje jako stacja w sieci. Mimo to możecie sprawdzić, że sieć testAP jest aktywna dalej i można się do niej podłączyć.

Dlatego, jeśli uruchamiacie WiFi na ESP, to nie zapomnijcie dodać linii WiFi.mode(WIFI_STA); przed wywołaniem WiFi.begin. Wtedy dodatkowa sieć zniknie.

Raspberry Pi w trybie kiosku

W ostatnim artykule dowiedzieliśmy się w jaki sposób podłączyć tani wyświetlacz do Raspberry Pi. Dziś pokażę Wam, jak skonfigurować malinkę, żeby pracowała w trybie kiosku – bez pulpitu, możliwości zwijania okienek i konfiguracji. Po prostu wyświetlamy jedną aplikację z której użytkownik ma prawo korzystać i koniec :)

Czytaj dalej

Wyświetlacz LCD dla Raspberry Pi niskim kosztem

Cześć, w dzisiejszym artykule chciałbym zaprezentować Wam jak w prosty i bardzo tani sposób podłączyć wyświetlacz LCD do Raspberry Pi (bez użycia złącza HDMI). Wystarczy nam do tego celu interfejs SPI wyprowadzony na pinach każdej malinowej płytki :) Zaczynajmy więc!

Czytaj dalej

Nettigo Air Monitor – zbuduj własny czujnik smogowy! – wersja 0.2.1

Czym jest Nettigo Air Monitor?

To to system monitorowania czystości powietrza zbudowany w oparciu o dokładny czujnik NovaFitness SDS011. Cały projekt ma kompaktowe rozmiary, wychodzące niewiele ponad obrys samego czujnika.

NAM rozwija społecznościową koncepcję zapoczątkowaną przez projekt Luftdaten.info. Dlatego na wzór tego projektu, zmontowana płytka mieści się w dwóch kolankach hydraulicznych 75 mm (DN 75 87°). Sprawa czystości powietrza jest dla nas bardzo ważna i chcielibyśmy zachęcić/zainspirować innych do podjęcia walki o czystsze powietrze. Z tego powodu od samego początku stawiamy na otwartość – cały kod, jak i pliki źródłowe są wypuszczane na otwartych licencjach. Schematy i projekty kolejnych wersji płytek znajdziesz w serwisie easyeda.com/nettigo/Nettigo-Air-Monitor.

Nettigo Air Monitor to o wiele więcej niż tylko czujnik stężenie pyłu. W praktyce, możesz do niego podłączyć masę dodatkowych czujników. Oprócz standardowych złącz dla SDS011 oraz DHT22, płytka PCB ma wyprowadzone dodatkowe złącza I2C oraz złącze GPS. Umożliwia to podłączenie czujników Bosch BMP280BME280, BME680, wyświetlaczy I2C 2×16, 4×20,itp. Złącze GPS przygotowane zostało pod moduł GPS VK2828U7G5LF. Do złącza opisanego jako PTC podłączysz grzałkę poprawiającą wiarygodność odczytów PM10 i PM2.5. Musisz wiedzieć, że laserowe czujniki poziomu pyłu takie jak SDS011 czy PMS5003 przy wilgotności względnej powietrza powyżej 70% zawyżają pomiary. Dzieje się tak dlatego, że w powietrzu jest masa mikroskopijnych kropelek wody. Na tych kropelkach, podobnie jak na mgle światło lasera rozprasza się identycznie jak na pyle. Rozwiązaniem jest podgrzanie powietrza, które ma trafić do sensora. Ta prosta czynność znacząco zmniejsza wilgotność względną i poprawia wiarygodność odczytów.

Zestaw do samodzielnego montażu

Zestaw Nettigo Air Monitor w wersji 0.2.1 dostępny jest w naszym sklepie. Z przyczyn logistycznych nie są to wszystkie elementy, których będziesz potrzebować do budowy czujnika.

Czytaj dalej