Archiwa autora: netmaniac

Mały robot sterowany przez Bluetooth – micro:bit w akcji

Od pewnego czasu bardzo mi się podoba Micro:Bit. Od momentu, kiedy mogłem samemu coś na nim zrobić bardzo polubiłem tą platformę. Jeśli nie wiesz zupełnie o co chodzi to może zobacz to krótkie wideo, które nagrałem:

Płytka Micro:Bit oferuje dwa podstawowe sposoby programowania – Python oraz składanie programu w sposób graficzny z dostępnych komponentów (kto widział już Scratcha ten dokładnie wie o co chodzi).

Zajmiemy się dziś tym drugim, bo wydaje się to doskonałym rozwiązaniem, gdy chcesz przedstawić Micro:Bita młodszym użytkownikom. Jednocześnie system ten jest łatwy i zrozumiały jak i dopracowany. Korzystając z przeglądarki składamy elementy blokowe a gdy program jest gotowy, to ściągamy skompilowany plik .hex. Wystarczy teraz podłączyć Micro:Bit do komputera i wgrać plik hex na niego (tak jak się wgrywa pliki na pendrive), to cała filozofia.

Dobra, zrobimy robota, którego można sterować przez Bluetooth. Będzie to wyglądało mniej więcej tak:

 

Dobra, co potrzebujemy? Micro:bit, sterownik silników moto:bit i jakaś platforma robota, tutaj jest to Magician Chassis ale może to być dowolna, dwusilnikowa platforma. Do sterowania potrzebny jest telefon z Bluetooth 4.0 pod kontrolą Androida.

Robocik po zmontowaniu

Gotowy program jest do zobaczenia tutaj: https://makecode.microbit.org/_arAAUz7gMi1b Tam możecie użyć opcji „Download” by ściągnąć plik .hex.

Program dla micro:bit

Jak wygląda program? Ano tak: Czytaj dalej

Wyświetlacze 1.4 i 1.8 cala z Arduino – sterownik ILI9163

Dodaliśmy na Nettigo dwa nowe wyświetlacze LCD. Oparte o kontroler ILI9163C posiadają efektywną rozdzielczość 128×128 (1.44 cala przekątnej) oraz 128×160 (1.8 cala przekątnej). W sieci funkcjonuje biblioteka do nich (dostępna nawet przez menedżer bibliotek w Arduino IDE) jednak nie do końca dla nas jest OK. Wyświetlacze w naszej ofercie mają nieco inne parametry i nie pracował poprawnie z tą biblioteką.

Dlatego na szybko sklonowaliśmy bibliotekę na Githubie i dokonaliśmy minimalnych poprawek by wyświetlacze można obsłużyć.

Podłączenie ich jest bardzo proste, korzystają z SPI.

Połączenie wyświetlacz <-> Arduino

  • SCK – D13 (SCK)
  • SDA – D11 (MOSI)
  • A0 – D9 (można zmienić)
  • RESET – RESET
  • CS – D10 (można zmienić)
  • GND – GND
  • VCC – 5V
  • LED – 3.3V

Zasadniczo wyświetlacz razem działa na logice 3.3V. Moduły mają wbudowane stabilizatory napięcia, więc można zasilić bez problemu 5V. Podświetlenie LED ma wbudowany rezystor i niby działa na 5V bez kłopotów, ale sugeruję jednak używanie 3.3V do zasilania LED. Przy zasilaniu LED 3.3V podświetlenie wyświetlacza 1.44″ bierze około 20 mA. Zmiana napięcia LED na 5V powoduje skok prądu do 55 mA. Jasność świecenia prawie się nie zmienia, co sugeruje że już przy napięciu 3.3V diody podświetlenia pracują w dobrym zakresie charakterystyki. Zwiększenie prądu spowoduje tylko skrócenie czasu życia diod. Dlatego zasilajmy LED 5V.

Co do logiki… Nota katalogowa ILI9163 mówi, że napięcie na pinach SPI w takim konfigu nie powinno przekroczyć 3.6V. Jednak u mnie na biurku testowe egzemplarze działają w porządku. Jednak YMMV :) czyli nie daję żadnej gwarancji a wręcz sugeruję jednak użycie konwertera poziomów logicznych. Tym bardziej, że na PCB nie widać rezystorów które mogłyby działać jako dzielnik napięcia/konwerter.

Czytaj dalej

DAC w Arduino czyli Covox na ratunek

Wiele miejsca w różnych tutorialach poświęca się tematowi konwersji sygnałów analogowych na cyfrowe. Mówiąc inaczej  – o mierzeniu napięcia. Tym razem pomówimy o procesie odwrotnym, czyli zamianie wartości cyfrowej na analogową (napięcie).

Jak mierzeniem napięcia zajmują się przetworniki analogowo-cyfrowe (ADC – Analog Digital Converter), to w drugą stronę taki przetwornik nazywamy cyfrowo-analogowym (DAC – Digital Analog Converter). ADC znajdziesz w każdym praktycznie mikrokontrolerze. DAC już jest czymś rzadszym (ale np Teensy 3.2 ma taki jeden 12-sto bitowy).

Po co może być potrzebny DAC? Najczęściej gdy mowa jest o dźwięku. Jeśli obracamy się w kontekście Arduino, to ma ono przecież funkcje tone()  i można znaleźć wiele przykładów jak zagrać melodyjkę na buzzerze. Tak, tyle że tone generuje sygnał 0/1 z odpowiednią częstotliwością i buzzer  tak pobudzony wydaje dźwięki. Ale jeżeli zapragniemy sygnału o większych subtelnościach niż 0/5V to musimy zapomnieć o tej funkcji z Arduino.

Od razu powiem, że nie próbujemy tutaj stworzyć audiofilskiego urządzenia. Z wielu powodów sygnał będzie daleki od ideału, ale i tak dużo lepiej niż z jednym pinem i tone().

Czytaj dalej

NodeMCU i SDS011 jako badacz jakości powietrza

SDS011 to dobry czujnik pyłów zawieszonych, podaje dane dla PM2.5 i PM10. Ostatnio wśród nas wzrosła świadomość zanieczyszczeń pyłami, więc pojawiło się trochę zapytań jak korzystać z tego czujnika. Większość przykładów jakie można znaleźć jednak wykorzystują Raspberry Pi. Koszt Raspberry to co najmniej drugie tyle co sam sensor, tymczasem w wielu przypadkach zależy nam na pomiarze i przekazaniu danych do chmury. W takim przypadku nie potrzebujemy całego Raspberry, to co ma od zaoferowania nodeMCU w zupełności /wystarczy.

NodeMCU, SDS011 – prosta stacja pomiaru jakości powietrza

Dlatego tym razem pokaże Wam jak zbudować taki sensor w oparciu o te dwa elementy – nodeMCU i SDS011. Planuję w przyszłości projekt poprawić, bo ma teraz kilka wad. Podstawowa kwestia to jest wilgotność – czujnik przy wilgotności ponad 70% przekłamuje wyniki, dlatego by w dokonywać wiarygodnych pomiarów, nasz układ potrzebuje elementu ogrzewającego napływające powietrze. W tej wersji zupełnie to pomijamy, jedyne co potrzebujemy to wiedza jaka jest wilgotność, by móc odrzucić pomiary przy wilgotności przekraczającej 70%. Ale z pominięciem tego wystarczy powiesić na uchylonym oknie by mieć z grubsza świadomość tego co się dzieje…

Czytaj dalej

Poprawianie dobrego, czyli LCD Shield i Nettigo Keypad

Odświeżałem ostatnio bibliotekę do Keypada, tak by pracowała łatwiej z LCD Shieldem lub innymi niestandardowymi klawiaturami opartymi o dzielnik napięcia. O jakie klawiaturki chodzi?

Klawiatura taka, to szereg rezystorów, każdy kolejny zwarty przez przycisk do masy. Jeśli odczytamy napięcie między rezystorem R1 a R2, to będzie się zmieniało w zależności od tego który przycisk jest załączony. Górny rezystor zostaje cały czas włączony, a liczba dolnych się zmienia. W szczególności gdy zewrzemy pierwszy przycisk (PRAWO), to będzie tam napięcie 0 -bo przycisk zewrze wszystkie rezystory R2-R5 do masy. Gdy wciśniemy drugi przycisk napięcie będzie zależne od dzielnika R1/R2, rezystory R3-R5 będą zwarte. Gdy wciśniemy DÓŁ napięcie zależy od wartości R1/(R2+R3), R4 i R5 – zwarte. Co nam z tego?

Czytaj dalej

Wyświetlacz z SSD1306 podłączony do Arduino

Gdy przychodzi do wyboru wyświetlacza dla Arduino opcji jest sporo. Dziś zajmiemy się niewielkim (0.96 cala) wyświetlaczem o rozdzielczości 128×64. Ma on jasny i wyraźny obraz. Ten egzemplarz akurat ma dziwną konfigurację podłączenia, ale o tym zaraz. Najpierw – jest on monochromatyczny ale jednak dwukolorowy :)

Jak to możliwe? Ano pierwsze 16 linii ma piksele żółte, a reszta niebieskie.

To zdjęcie chyba najlepiej oddaje to, o co chodzi z tym żółtym/niebieskim.

Czytaj dalej

RPi: podstawy – sterowanie GPIO i przekaźnikami

Niedawno dostaliśmy pytanie od jednego klienta – jak sterować przekaźnikami z Raspberry Pi. Ponieważ nie było to pierwsze pytanie takiego typu, postanowiłem napisać kilka słów tutaj.

W ofercie Nettigo mamy już kilka różnych modułów przekaźników. Różnią się ilością przekaźników, napięciem zasilającym oraz sposobem sterowania. Niektóre z nich mają (w uproszczeniu – te czerwone) możliwość wyboru, który stan logiczny (niski czy wysoki) będzie oznaczał że przekaźnik jest włączony. Ponieważ każdy przekaźnik ma trzy wyjścia (wspólne, normalnie wyłączone i normalnie włączone) da się dobrać właściwe podłączenie niezależnie od tego jak sterujesz przekaźnikiem. Może mieć to wpływ tylko na wygodę programowania oraz na pobór prądu – wskazane jest by przekaźnik był raczej wyłączony niż włączony. Zużywa wtedy mniej prądu a i cewka się nie grzeje. Warto to mieć na uwadze, bo np moduł 8-mio kanałowy, jeśli włączymy wszystkie 8 przekaźników będzie pobierał ponad 500 mA. To już całkiem sporo.

No dobra, gadamy o jakiś niuansach, ale Ciebie pewnie interesuje jak, cholera włączyć ten przekaźnik z Twojego RPi. Ok, przejdźmy do rzeczy. Zakładam, że masz Raspberry z Raspbianem. Pokaże Ci jak podłączyć do niego moduł przekaźnika i korzystając z Pythona włączyć go i wyłączyć.

Czytaj dalej

LinuxMagazine nr 155

Otrzymaliśmy od wydawcy informację o nowym numerze LinuxMagazine:

Sekcja dotycząca Raspberry Pi w styczniowym wydaniu „Linux Magazine” zawiera artykuły opisujące sterowanie czasowe Raspberry Pi przy użyciu programowalnej wtyczki elektrycznej WiFi oraz test bestsellera w niskiej cenie – Raspberry Pi Zero.

Artykuł wiodący opisuje umieszczanie w zdjęciach informacji dotyczących położenia geograficznego za pomocą pary narzędzi do geotagowania obrazów cyfrowych digiKam i GPS Correlate.

Z wydaniem powiększonym o cztery strony rozpoczyna się też nowy dział LinuxVoice z pytaniami i odpowiedziami, najciekawszymi projektami i grami, samouczkami i felietonem.

Na dołączonym DVD znajduje się Fedora 25.

Wewnątrz wydania również: dodawanie z Gimpem koloru do starych czarno-białych zdjęć, tworzenie aplikacji mobilnych na osiem systemów operacyjnych za pomocą Apache Cordovy, Microsoft PowerShell dla Linuksa – marketingowa zagrywka czy konkurencja dla powłok natywnych?, zabezpieczanie danych w chmurze z prostym i praktycznym Cryptomatorem, GNU social: wolna alternatywa dla Twittera, Termux dla Androida – aplikacja umożliwiająca korzystanie z popularnych narzędzi linuksowych na Androidzie, test LibreOffice’a, Apache OpenOffice’a, SoftMaker Office Professionala i WPS Office’a z formatami nienatywnymi, turbodoładowanie wiersza poleceń przy użyciu Tmuksa: menedżer okien w trybie tekstowym?, nowości pierwszego wydania od lat – Vima 8, usprawnianie wdrażania oprogramowania z Ansible Containerem, polecenie, które rządzi wszystkim: ip, Skype dla Linuksa, NoSQL w pytaniach i odpowiedziach, Greg Kroah-Hartman – człowiek, który stoi za stabilną gałęzią jądra oraz inne tematy:

LinuxMagazine – numer 154

linuxmagazinecover_xxlOd wydawcy LinuxMagazine otrzymaliśmy informację o wydaniu 154-go numery gazety (grudzień 2016). Oto dokładniejszy opis:

Sekcja dotycząca Raspberry Pi w grudniowym wydaniu „Linux Magazine” zawiera artykuły opisujące budowę własnego hotspota 3G na Raspberry Pi, możliwości wykorzystania nowego Arduino/Genuino 101 w praktyce, oraz rozproszoną kompilację oprogramowania dla Raspberry Pi przy użyciu distcc.

Temat wiodący, poświęcony ćwierćwieczu istnienia Linuksa, obejmuje rozmowę z twórcą Linuksa, Linusem Torvaldsem, o przyszłości systemu i życiu pozalinuksowym oraz przegląd naprawdę osobliwych dystrybucji.

Na dołączonym DVD znajduje się openSUSE Leap 42.2 – Linux dla wymagających.

Wewnątrz wydania również: wzbogacanie map OpenStreetMap o dodatkowe informacje z Maperitive’em, zarządzanie pękami kluczy PGP/GnuPG, Chroot: podstawy zarządzania pojemnikami z LXC, testy otwartoźródłowych asystentów cyfrowych Sirius i Lucida oraz darmowych centrów multimedialnych: MythTV, Kodi, Plex, OSMC i DVBLink oraz inne tematy: http://linuxmagazine.pl/index.php/issues/154

Wydanie na allegro (bezpłatna dostawa): http://allegro.pl/show_item.php?item=6628224427

e-wydanie „Linux Magazine” 11/2016 (poprzedni numer) na allegro (bez płyty DVD): http://allegro.pl/show_item.php?item=6621569836

pakiety Linux Magazine na allegro: http://allegro.pl/show_item.php?item=6368163954

Pakiet wydań Raspberry Pi: http://allegro.pl/show_item.php?item=6597038039

megapakiety Linux Magazine na allegro: http://allegro.pl/megapakiet-wydan-linux-magazine-z-dvd-i6404755490.html i http://allegro.pl/megapakiet-e-wydan-linux-magazine-i6403798011.html

LinuxMagazine nr 153

Linux Magazine 153Dotarła do nas informacja od wydawcy o kolejnym, 153 już numerze Linux Magazine:

Cykl artykułów poświęcony Raspberry Pi w listopadowym wydaniu „Linux Magazine” zawiera analizę specyfikacji Raspberry Pi 3 z szybkim, 64-bitowym procesorem i wsparciem dla WiFi i Bluetootha oraz instrukcje uzyskiwania dostępu do usług na Raspberry Pi przez Sieć dzięki Weaved i tworzenia animacji poklatkowej ze Scratchem i kamerką Raspberry Pi.

Temat wiodący obejmuje artykuły na temat Samby, które opisują uruchamianie jej w trybie klastrowym z Cephem oraz nowe funkcje wydania 4 – mające ułatwić podjęcie decyzji, czy warto migrować z klasycznej domeny Samby do Samby 4, czy lepiej czy poczekać. Jest też analiza przyszłości klasycznego NFS-a.

Na dołączonym DVD znajduje się najpopularniejsze Linux na świecie – Ubuntu w najnowszej wersji 16.10.

Wewnątrz wydania również: tworzenie kopii zapasowych danych, obrazów i innych przy użyciu qt4-fsarchivera, budowa własnego robota indeksującego ze Scrapy, LibreOffice Online i ownCloud w Collabora Cloud Suite, sposoby na Linuksa na uwolnionym Chromebooku, łatwe tworzenie atrakcyjnych zdjęć z efektem wychodzenia poza ramkę Out-of-Bounds, szybki test narzędzi Fstools 20160322, Sup 1.1, MuPDF 1.8, Cryptsetup 1.7.1, Netjukebox 6.09.2 i Pass 1.6.5 oraz inne tematy: http://linuxmagazine.pl/index.php/issues/153

Wydanie jest na allegro (bezpłatna dostawa). e-wydanie „Linux Magazine” 10/2016 na allegro (poprzedni numer, bez płyty DVD). Pakiety Linux Magazine na allegro.

NOWOŚĆ
megapakiety Linux Magazine na allegro: http://allegro.pl/megapakiet-wydan-linux-magazine-z-dvd-i6404755490.html i http://allegro.pl/megapakiet-e-wydan-linux-magazine-i6403798011.html