Robotyka, Embedded, C
Już ponad tydzień minął od Programistoku (28-29.09.2018) było to dla mnie przełomowe wydarzenie, dlatego wymaga odpowiedniej relacji ? Wiele się nasłuchałem o fantastycznej atmosferze tego wydarzenia i chciałem koniecznie pojechać. Rzuciłem się od razu na głęboką wodę i zgłosiłem się na prelegenta. Jak się okazało, była to świetna decyzja. Before Moja przygoda z tegorocznym Programistokiem […]
Już 25 września występuję na 4Developers Gdańsk z prezentacją “Kiedy od softu zależy ludzkie życie – o systemach safety-critcal”. Z tej okazji mam dla Was zniżkę 15% na bilet. Wystarczy podczas rejestracji użyć kodu: amozenadmorze? Na 4Developers Gdańsk będziemy mieli do wyboru cztery ścieżki tematyczne: .NET, C++ (na której wystąpię), Java i Soft skills. Jest […]
Dzisiaj opowieść o kolejnym znanym bugu, który miał ogromne konsekwencje. Podobnie jak w przypadku Therac-25, analiza katastrofy rakiety Ariane 5 przyczyniła się do poprawy procesów wytwarzania systemów safety-critical. Jak wyglądał pierwszy lot Ariane 5? We wtorek 4 czerwca 1996 roku odbył się dziewiczy lot Ariane 5 – nowej rakiety Europejskiej Agencji Kosmicznej, która była rozwijana […]
W dzisiejszym wpisie omawiam najbardziej znany przypadek błędu systemu safety-critical z branży medycznej prowadzący do ciężkich obrażeń i śmierci pacjentów. Został on wnikliwie przeanalizowany teraz służy jako case study w różnego rodzaju materiałach o systemach safety. Co to Therac-25 i jaki był z nim problem? Therac-25 to urządzenie do radioterapii stosowane w latach 80-tych w […]
W tym artykule odpowiemy sobie na pytanie jakie rodzaje testów powinniśmy wykonywać i w jakich proporcjach. Pomoże nam w tym piramida testów, czyli prosta graficzna reprezentacja ilości testów, kosztu ich utrzymania i szybkości wykonywania. Opiszemy również podstawowe cechy testów każdego poziomu i ich ograniczenia. Wbrew pozorom nie jest to tylko wiedza dla testerów, ale również […]
W ostatnim czasie blog przechodzi zmiany. Duża część z nich nie rzuca się w oczy. Między innymi poprawiłem bezpieczeństwo, przyspieszyłem wczytywanie strony, zainstalowałem nowe pluginy, zacząłem ułatwiać dostęp do najważniejszych wpisów, a nawet zwiększyłem aktywność na fejsie. We wpisie pada trochę nazw pluginów do WordPressa, więc jeżeli też prowadzisz własnego bloga, mogą Ci się również […]
Ostatnio na portalu embedded.com zaczęła pojawiać się seria artykułów omawiających 10 najczęstszych problemów w projektach embedded napisana przez Jacka Gannsle. Pierwszym omówionym zagadnieniem były złudne oszczędności (link tutaj). Czytając artykuł zgadzałem się praktycznie z każdym słowem, bo sam obserwuję to samo praktycznie od początku kariery zawodowej. Z resztą nie jest to coś specyficznego tylko dla […]
Ostatnio na portalu embedded.com zaczęła pojawiać się seria artykułów omawiających 10 najczęstszych problemów w projektach embedded napisana przez Jacka Gannsle. Pierwszym omówionym zagadnieniem były złudne oszczędności (link tutaj). Czytając artykuł zgadzałem się praktycznie z każdym słowem, bo sam obserwuję to samo praktycznie od początku kariery zawodowej. Z resztą nie jest to coś specyficznego tylko dla […]
Ostatnio straciłem pół dnia poprawiając wiele pozornie nie powiązanych ze sobą błędy w unit testach. Dokonana przeze mnie zmianie polegała w uproszczeniu na zmianie w kilku miejscach typu zmiennej z uint16_t na int32_t. Jak nietrudno się domyślić, przyczyna wszystkich błędów była wspólna i wiązała się z konwersją signed/unsigned. Linijka, która powodowała błąd wyglądała mniej więcej […]
Ostatnio straciłem pół dnia poprawiając wiele pozornie nie powiązanych ze sobą błędy w unit testach. Dokonana przeze mnie zmianie polegała w uproszczeniu na zmianie w kilku miejscach typu zmiennej z uint16_t na int32_t. Jak nietrudno się domyślić, przyczyna wszystkich błędów była wspólna i wiązała się z konwersją signed/unsigned. Linijka, która powodowała błąd wyglądała mniej więcej […]
Ostatnio przez długi czas na blogu panowała cisza spowodowana oczywiście wakacjami. Jednak powoli już wracam do codziennej rzeczywistości, a więc także i do regularnego zamieszczania nowych wpisów. Na początek jeszcze będzie trochę ogórkowo, ponieważ dzisiaj mam zamiar opisać ostatnie tygodnie i plany na najbliższe miesiące. Będzie więc o Woodstocku, o grze IT Startup i o […]
Ostatnio przez długi czas na blogu panowała cisza spowodowana oczywiście wakacjami. Jednak powoli już wracam do codziennej rzeczywistości, a więc także i do regularnego zamieszczania nowych wpisów. Na początek jeszcze będzie trochę ogórkowo, ponieważ dzisiaj mam zamiar opisać ostatnie tygodnie i plany na najbliższe miesiące. Będzie więc o Woodstocku, o grze IT Startup i o […]
Pokazany w poprzednim wpisie filmik obrazował jak wyrobiły się otwory w mocowaniu silnika z drukarki 3D. W sumie można się było tego spodziewać, w końcu te tworzywa nie są super wytrzymałe, a ja używam je już od roku. W końcu postanowiłem je poprawić dodając na górze nakrętki na śruby. Powinienem to zrobić od razu po […]
Pokazany w poprzednim wpisie filmik obrazował jak wyrobiły się otwory w mocowaniu silnika z drukarki 3D. W sumie można się było tego spodziewać, w końcu te tworzywa nie są super wytrzymałe, a ja używam je już od roku. W końcu postanowiłem je poprawić dodając na górze nakrętki na śruby. Powinienem to zrobić od razu po […]
Wprowadziłem zmiany opisane w poprzednim wpisie i wyniki są wręcz niewiarygodne. Testy pokrywają się z obliczeniami teoretycznymi i symulacją! Działanie nowego regulatora ruchu obrotowego możecie obejrzeć na filmiku: Program testowy po naciśnięciu przycisku przez 2 sekundy podaje wartość zadaną 360 stopni na sekundę, czyli spodziewamy się dwóch obrotów. W rzeczywistości jest trochę mniej, bo robot […]
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.