Robotyka, Embedded, C
Minął już całkiem spory kawał czasu od kiedy zrezygnowałem z robienia doktoratu równolegle z pracą na etacie. Postanowiłem w końcu zebrać swoje przemyślenia na ten temat. Być może pomogą podjąć decyzję komuś, kto zastanawia się nad takim wyzwaniem, albo już jest w jego trakcie. Rozpoczęcie studiów Na doktorat zapisałem się latem 2014 roku na kierunek […]
W zeszłym tygodniu cały świat mówił o Elonie Musku i o SpaceX, a wszystko za sprawą startu rakiety Falcon Heavy, który odbył się 6 lutego 2018. Największe wrażenie na wszystkich wywarło synchroniczne lądowanie dwóch bocznych rakiet. Przy okazji – wiecie, że SpaceX wcale nie wykonało takiego lądowania jako pierwsze? New Shepard firmy Blue Origin należącej […]
W zeszłym tygodniu cały świat mówił o Elonie Musku i o SpaceX, a wszystko za sprawą startu rakiety Falcon Heavy, który odbył się 6 lutego 2018. Największe wrażenie na wszystkich wywarło synchroniczne lądowanie dwóch bocznych rakiet. Przy okazji – wiecie, że SpaceX wcale nie wykonało takiego lądowania jako pierwsze? New Shepard firmy Blue Origin należącej […]
Podczas próby zamontowania wszystkich czujników ścian okazało się, że aktualny projekt płytki nie przewidywał miejsca na uchwyty z drukarki 3D. Potrzebuję więc zmian w projekcie PCB i nowej wersji płytki. Decyzję ułatwił fakt, że wylała mi się woda na biurko i oczywiście zalała robota. Po osuszeniu nie chciał działać, ale poleżał jeszcze przez noc i […]
Podczas próby zamontowania wszystkich czujników ścian okazało się, że aktualny projekt płytki nie przewidywał miejsca na uchwyty z drukarki 3D. Potrzebuję więc zmian w projekcie PCB i nowej wersji płytki. Decyzję ułatwił fakt, że wylała mi się woda na biurko i oczywiście zalała robota. Po osuszeniu nie chciał działać, ale poleżał jeszcze przez noc i […]
Czujnik ściany, którego zamontowanie i uruchomienie opisywałem poprzednio, daje pomiary w woltach wyrażonych w jednostkach ADC (zakres 0-4095 odpowiada 0 – 3.3 V). Taka wartość nie jest szczególnie przydatna, dopiero po konwersji na odległość w milimetrach może być wykorzystana do nawigacji w labiryncie. Prawie jak laborka Zadanie to przypomina trochę popularne na studiach laborki. Należy […]
Czujnik ściany, którego zamontowanie i uruchomienie opisywałem poprzednio, daje pomiary w woltach wyrażonych w jednostkach ADC (zakres 0-4095 odpowiada 0 – 3.3 V). Taka wartość nie jest szczególnie przydatna, dopiero po konwersji na odległość w milimetrach może być wykorzystana do nawigacji w labiryncie. Prawie jak laborka Zadanie to przypomina trochę popularne na studiach laborki. Należy […]
Do tej pory zepsute lipole zdarzały mi się co kilka miesięcy. Zawsze scenariusz był taki sam. Co jakiś czas sprawdzałem miernikiem napięcie na baterii i wszystko było w porządku. Nagle robot przestaje działać. Nie wiem co jest powodem i próbuję zdebugować, ale nic się nie udaje. Dopiero po jakimś czasie sprawdzam napięcie na baterii i […]
Do tej pory zepsute lipole zdarzały mi się co kilka miesięcy. Zawsze scenariusz był taki sam. Co jakiś czas sprawdzałem miernikiem napięcie na baterii i wszystko było w porządku. Nagle robot przestaje działać. Nie wiem co jest powodem i próbuję zdebugować, ale nic się nie udaje. Dopiero po jakimś czasie sprawdzam napięcie na baterii i […]
Po dłuższej przerwie wracam do prac nad micromousem. Została mi do zrobienia jeszcze ostatnia część sprzętowa – czujniki ścian. Roboty jest dosyć sporo, więc nie udało mi się wszystkiego machnąć za jednym podejściem. Przy okazji jak zwykle wynikły nieprzewidziane problemy. Wybór elementów Wybierając fotoelement i emiter podczerwieni najważniejszym parametrem jest długość fali. Chodzi o to, […]
Po dłuższej przerwie wracam do prac nad micromousem. Została mi do zrobienia jeszcze ostatnia część sprzętowa – czujniki ścian. Roboty jest dosyć sporo, więc nie udało mi się wszystkiego machnąć za jednym podejściem. Przy okazji jak zwykle wynikły nieprzewidziane problemy. Wybór elementów Wybierając fotoelement i emiter podczerwieni najważniejszym parametrem jest długość fali. Chodzi o to, […]
W poprzednim artykule omówiłem działanie watchdoga i zastosowanie w prostych aplikacjach zawierających całą obsługę w pętli głównej. Dzisiaj zajmiemy się częściej spotykanym, ale i trudniejszym, problemem – implementacją watchdoga w aplikacjach wielowątkowych. Problem wielowątkowości Większość programów pisanych na mikrokontrolery realizuje więcej niż jedno zadanie. Architekturę takiego systemu można oprzeć na przerwaniach, albo wykorzystać RTOSa. W […]
W poprzednim artykule omówiłem działanie watchdoga i zastosowanie w prostych aplikacjach zawierających całą obsługę w pętli głównej. Dzisiaj zajmiemy się częściej spotykanym, ale i trudniejszym, problemem – implementacją watchdoga w aplikacjach wielowątkowych. Problem wielowątkowości Większość programów pisanych na mikrokontrolery realizuje więcej niż jedno zadanie. Architekturę takiego systemu można oprzeć na przerwaniach, albo wykorzystać RTOSa. W […]
Każdy, kto miał do czynienia z elektroniką wie, że jeśli urządzenie przestało działać, należy je zresetować. W niektórych systemach robienie tego ręcznie nie jest możliwe. Przyczyną może być trudny, czy wręcz niemożliwy, dostęp dla operatora np. w przypadku sondy kosmicznej. Są też przypadki, gdy czas potrzebny na zauważenie usterki i ręczny reset jest zbyt długi […]
Każdy, kto miał do czynienia z elektroniką wie, że jeśli urządzenie przestało działać, należy je zresetować. W niektórych systemach robienie tego ręcznie nie jest możliwe. Przyczyną może być trudny, czy wręcz niemożliwy, dostęp dla operatora np. w przypadku sondy kosmicznej. Są też przypadki, gdy czas potrzebny na zauważenie usterki i ręczny reset jest zbyt długi […]
Robotyka, Embedded, C
Programowaniem zajmuję się zawodowo od 2012 roku. Moją specjalnością są systemy embedded, pracowałem już nad systemami safety critical, inteligentymi budynkami, czy Internet of Things. Jestem również wielkim fanem robotyki i w wolnym czasie robię własnego robota micromouse.