Filtr Alfa – Beta od teorii do praktyki – #2

Filtr Alfa – Beta od teorii do praktyki – #2

W poprzednim artykule przedstawiłem teorię dotyczącą filtrów alfa-beta. Wykonałem również symulacje w Matlabie demonstrujące wpływ nastaw na zachowanie filtru. Teraz przyszła pora na implementację filtru na mikrokontrolerze.

W projekcie wykorzystałem płytkę STM32F4 Discovery i moduł MiniIMU v2 od Pololu.

Czytaj całość…

Przewodnik instalacji Linuxa na platformie embedded

Przewodnik instalacji Linuxa na platformie embedded

W pierwszej części artykułu opisałem możliwość użycia taniego netbooka w roli sterownika robota. Zgodnie z zapowiedzią w kolejnym wpisie przedstawiam instrukcję instalacji Linuxa na wybranej wcześniejszej platformie.

Do dalszej pracy niezbędne są: bootloader, jądro linuxa, system plików oraz kompilator (toolchain).

Czytaj całość…

RFM12B – #3 – zaawansowana komunikacja

RFM12B – #3 – zaawansowana komunikacja

W ostatniej części naszego kursu, transmisji bezprzewodowej na RFM12B, zajmiemy się obsługą nadawania oraz odbierania w tle.

Na koniec wreszcie uruchomimy komunikację w obu kierunkach.

Czytaj całość…

RFM12B – #2 – Koniec ciszy w eterze

RFM12B – #2 – Koniec ciszy w eterze

Poprzednio zakończyliśmy na podłączeniu modułu RFM12B do procesora i sprawdzeniu komunikacji po magistrali SPI.

Teraz już czas najwyższy na przesłanie informacji pomiędzy dwoma modułami. Zatem do dzieła!

Czytaj całość…

Filtr Alfa – Beta od teorii do praktyki – #1

Filtr Alfa – Beta od teorii do praktyki – #1

Zadaniem czujników jest dostarczanie informacji o położeniu robota oraz innych obiektów.

Dane te są przekazywane do algorytmów sterowania. Sygnały z czujników obarczone są błędem. Aby uzyskać dokładniejsze informacje na temat stanu obiektu należy dokonać jego estymacji na podstawie danych pomiarowych.

Czytaj całość…

RFM12B – #1 – Czyli wstęp do komunikacji radiowej

RFM12B – #1 – Czyli wstęp do komunikacji radiowej

Niejednokrotnie w robotyce pojawia się potrzeba komunikacji z urządzeniem. W przeróżnych celach – począwszy od wydawania poleceń (np. szukaj piłeczki, przynieś), poprzez monitorowanie pracy a na kalibracji czujników skończywszy.

Powodów jest bardzo wiele, tak samo jak i dróg, którymi możemy tę komunikację prowadzić.

Czytaj całość…

Systemy kontroli wersji – Mercurial

Systemy kontroli wersji – Mercurial

Pracowałeś nad większym projektem i bałeś się przystępować do większych zmian w kodzie?

Zaśmiecałeś dysk folderami typu projekt1, projekt2. Wykomentowywałeś duże bloki kodu, żeby dało się je szybko przywrócić jeśli coś przestanie działać? Czas na wprowadzenie systemu kontroli wersji Mercurial!

Czytaj całość…

Jak unikać pułapek języka C?

Jak unikać pułapek języka C?

Dobry programista powinien wiedzieć jakie aspekty języka są niebezpieczne i umiejętnie sobie z nimi radzić.

W artykule przybliżę kilka niebezpiecznych sytuacji. Niektóre będą oczywiste, albo wręcz śmieszne, inne mogą dotyczyć aspektów z których wiele osób nie zdaje sobie spawy.

Czytaj całość…

Sekrety profesjonalnego programowania

Sekrety profesjonalnego programowania

Niniejszy artykuł różni się od większości materiałów dotyczących programowania z którymi mogliście mieć styczność.

Nie wyniesiecie z niego żadnej wiedzy dotyczącej konkretnego procesora czy modułu. Co więcej, kodu będzie tutaj bardzo mało, omówione zostaną tylko techniki jego tworzenia.

Czytaj całość…

Czytaj losowy artykuł