Programowanie dronów

W ramach podcastu “Porozmawiajmy o IT” miałem okazję porozmawiać z Michałem Kierul o programowaniu dronów.

Posłuchaj naszej rozmowy w wersji audio 🎧 👇

Cześć! Mój dzisiejszy gość to absolwent wydziału telekomunikacji na Uniwersytecie Technologiczno-Przyrodniczym w Bydgoszczy. Od 2003 roku tworzy spółkę SoftBlue, gdzie zdobyte doświadczenie biznesowe łączy z pasją do informatyki i teleinformatyki. Od 2012 roku, po przekształceniu SoftBlue w spółkę akcyjną, pełni funkcję prezesa zarządu i koordynuje projekty z dziedziny IT i ICT. Moim i Waszym gościem jest dzisiaj Michał Kierul.

Cześć Michał! Bardzo mi miło gościć Cię w podcaście.

Cześć! Bardzo mi miło. Dziękuję za możliwość uczestniczenia w tym podcaście. Z miłą chęcią podzielę się moim doświadczeniem i moją pasją.

To ja Ci bardzo dziękuje za to, że znalazłeś czas. Zawsze pytam moich gości na początku o to, czy słuchają podcastów, a jeśli tak, to proszę ich o jakieś rekomendacje. Czy Ty słuchasz podcastów?

Jestem wielkim fanem TED-a, ted.com. To jest coś, co można powiedzieć towarzyszy mi prawie codziennie. Słucham różnego rodzaju podcastów, czy wywiadów na temat technologii, konferencji technologicznych, konferencji naukowych, wszelkiego rodzaju nowinek, tego, co się obecnie dzieje. Interesuję się tym całym zawirowaniem wokół dzisiejszego świata. Wszelkiego rodzaju nagrania, podcasty, wywiady, czy różne nowoczesne formy nie są mi obce na pewno.

Świetnie. No tak, TED, czy TEDx są jak najbardziej warte polecenia. Dobrze. Jako SoftBlue S.A. już realizujecie wiele różnorodnych projektów softwarowych, ale też powiedzmy z takiego ogólnie rozumianego IT szeroko dość. Mnie natomiast najbardziej zainteresowały Wasze projekty takie badawczo-rozwojowe właśnie związane z dronami. To jest temat naszej dzisiejszej rozmowy, czyli programowanie dronów. Zastanawiam się, skąd pojawiło się zainteresowanie taką tematyką?

Generalnie naszym core businessem jest działalność informatyczna. Informatyka, teleinformatyka i systemy informatyczne i to jest nasz chleb powszedni. Core business i coś, co wspomaga naszą firmę, dzięki czemu się rozwijamy. Oprócz tego, że realizujemy projekty informatyczne, to również mamy jakąś pasję. Tą pasją w pewnym momencie okazała się działalność badawczo-rozwojowa. Dlatego to, co tworzyliśmy, to opracowaliśmy na to patenty, staraliśmy się to komercjalizować, żeby to nie kończyło się tak, jak czasami w nauce, patent odłożony do szuflady. Stąd stwierdziliśmy, że staniemy się również Centrum Badawczo-rozwojowym.

Otrzymaliśmy status Centrum Badawczo-Rozwojowego nadane przez Ministerstwo, wtedy jeszcze chyba Rozwoju, jeśli dobrze pamiętam. To było w 2016 roku. Od tego czasu zaczęły się nasze przygody z działalnością innowacyjną. Jeszcze wiele lat temu, w 2012 roku, moja małżonka, która studiowała za granicą, zauważyła potencjał działalności innowacyjnych, działalności badawczo-rozwojowej. Też była, można powiedzieć, takim kimś, kto zachęcił nas do otwarcia się na nowe rzeczy. Dlatego jesteśmy obecnie Centrum Badawczo-Rozwojowym.

Szukaliśmy w pewnym momencie swojego miejsca, w czym najbardziej się skupić. Drony i to wszystko, co wokół dronów się dzieje, zauważyliśmy, że już wtedy był i będzie spory potencjał, postanowiliśmy się skupić na jakiejś części branży związanej z dronami. Kiedyś 80–100 lat temu rynek lotniczy był bardzo wąskim rynkiem, tak stwierdziliśmy, że nie warto się szeroko zajmować dronami, ale warto się zająć kilkoma elementami związanymi z dronami.

Dlatego zaczęliśmy zachęcać m.in. Wojskowe Zakłady Lotnicze nr 2., do tego, żeby wspólnie zająć się jakimś przedsięwzięciem, powiązanym właśnie z dronami. Tak powstał właśnie w 2017 roku projekt Innolot. To pierwszy taki projekt badawczo-rozwojowy, gdzie, jeśli mi się zdaje, jest niewielu w Polsce, który to grant badawczo-rozwojowy, gdzie jednostka publiczna z jednostką prywatną, razem próbują rozwiązać jakiś problem badawczy, jakąś innowację. Tak właśnie od 2017 roku, razem z Wojskowymi Zakładami Lotniczymi nr 2 przystąpiliśmy do programu projektu Innolot. Uzyskaliśmy wsparcie, aprobatę do tego typu inwestycji. Otrzymaliśmy grant i od tego czasu realizujemy grant.

My skupiliśmy się na awionice, na samych dronach skupił się WZL2. My na całej elektronice, czymś, co jest powiązane, czymś, co może być podłączane do drona. Tak naszą pasją i to jeszcze jest kolejny element, który spowodował, że bardziej skanalizowaliśmy nasze myślenie, to było środowisko. Jesteśmy pasjonatami wszystkiego, co jest eko, co jest związane z ekologią. Patrzymy na nasze środowisko jako na naszą wspólnotę, coś, o co musimy dbać. Zastanawialiśmy się, jak drony mogą współgrać, mogą pomóc po prostu rozwiązać pewne istniejące problemy.

Dlatego w pewnym momencie, dosłownie jadąc przez jakąś dzielnice, nie pamiętam jakiego miasta, zauważyliśmy problem smogu. To już było chyba 2015 albo 2016 roku, byliśmy pierwszymi, którzy podeszli do problemu pomiaru smogu za pomocą drona. Mówiąc bardzo ogólnie, to, że dzisiaj zajmujemy się, interesujemy się jakby tematyka dronowa, tematyka badania powietrza, to jest wynik kilku czynników. Związanych z pasją do innowacji i z zaangażowaniem się w ochronie środowiska i też, rozumieniem technologii. To są trzy czynniki, które spowodowały, że jesteśmy tutaj, gdzie jesteśmy.

Rozumiem, bardzo ciekawa historia. Jako efekt tej pasji, szukania innowacji, zainteresowania dronami, jako efekt można teraz podziwiać Wasz sztandarowy projekt, jakim jest AirDron, czyli to, o czym powiedziałeś, system do monitoringu antysmogowego.

Powiedz, proszę, jak on działa i jak wyglądały prace nad stworzeniem tego projektu.

Prace, pierwsze podejścia do projektu AirDron były już w 2016 roku. Odbywały się, wtedy to była, Sfera Marzeń. Zastanawialiśmy się, w którym kierunku pójść z tym projektem i czy w ogóle wtedy jest możliwe zbudowanie takiego rozwiązania, takiego algorytmu, którego to algorytm byłby w stanie rozpoznawać, czy ktoś pali śmieciami, czy istnieją jakieś konkretne substancje, które wydobywają się w takiej, a nie określonej ilości z paleniska przydomowego. W momencie, kiedy używamy jakiejś niedozwolonych substancji, typu plastik, PET, gumy, drewno lakierowane i tak dalej.

Zanim cokolwiek przystąpiliśmy, chcąc tutaj poważnie podjeść do tego projektu, nie tyle stworzyć własne rozwiązanie, jednak stwierdziliśmy, że budowa własnego rozwiązania, to jest coś, na czym powinniśmy się mocno skupić, to musieliśmy się przygotować technologicznie. Technologicznie, to znaczy, że przeprowadzaliśmy szereg badań z różnymi instytutami na temat tego, co wydobywa się podczas spalania, jakie substancje, w jakich ilościach. Porównywaliśmy wartości w specjalnych warunkach laboratoryjnych.

Dzisiaj te warunki mamy w firmie, to jest niesamowite. Wtedy szukaliśmy dosłownie na świecie instytutu, który przeprowadzi symulowany proces spalenia substancji w odpowiedniej ilości, żeby zbudować odpowiedni algorytm. Dzisiaj jesteśmy na takim etapie, że posiadamy taką infrastrukturę w laboratorium w firmie. Wtedy tak nie było. Wtedy poprzez różnego rodzaju współpracę naukową z różnymi instytutami w Polsce i na świecie dokonaliśmy obliczeń, które wskazywały, że jesteśmy w stanie obliczyć, wskazać z wysokim prawdopodobieństwem miejsca, gdzie spala się, mówiąc ogólnie i wprost, śmieci. To był jakby początek tego wszystkiego.

Nasz system obecnie to kilkadziesiąt czujników rozpoznających różnego rodzaju substancje, które wydobywają się w określonych sytuacjach z komina domu, kamienicy, fabryki. Jesteśmy w stanie na podstawie ulatniających się gazów, na podstawie autorskiego algorytmu, rozpoznać określone substancje i z bardzo wysokim prawdopodobieństwem wskazać na przykład Straży Miejskiej, że w tym miejscu istnieje wysokie prawdopodobieństwo, że ktoś działa w taki, a nie inny sposób, że spala śmieci na przykład.

Chciałbym jeszcze ważną rzecz powiedzieć. Czasami osobom niezwiązanym z technologią, warto to podkreślić, bo proces przygotowania takiego urządzenia, może dla osoby stojącej z boku wydawać się, że to jest kilka miesięcy, pół roku, może do roku. Ale żeby coś stworzyć własnego, żeby to stworzyć profesjonalnie, to oprócz tego, że się przygotuje biznesplan i przeanalizuje się rynek i tendencję, to trzeba przygotować dokumentację, szereg analiz, trzeba, zanim przystąpi się do produkcji, to trzeba zaprojektować prototyp kilkanaście, kilkadziesiąt, kilkaset razy go poprawiać, sprawdzać i tak dalej. Ten proces był procesem naprawdę wieloletnim.

Warto podkreślić, często pojawiają się pytania, jak długo taki projekt się przygotowuje, kiedy firma będzie gotowa komercyjnie taki produkt przedstawić, tutaj to chciałem podkreślić zawsze i przekazać taką informację osobom niezwiązanym z technologią, że proces przygotowania takiego urządzenia, to często jest to wiele lat. Od analizy biznesowej, biznesplanu, poprzez jakieś podejście wpierw projektowe, poprzez dalej prototyp, poprzez dziesiątki, albo setki razy aktualizacje popraw systemu, update różnego rodzaju, każda wersja systemu jest coraz lepsza, coraz lżejsza.

Myśl tego, że cały czas musimy udoskonalać nasz sprzęt. To trwało naprawdę wiele lat i w 2019 roku puściliśmy jedyne w Polsce, takie polskie w pełni, rozwiązanie, które to rozwiązanie jest wybudowane na podstawie jakby naszej myśli technologicznej, polskiej myśli technologicznej, w kraju stworzonej w pełni. Nie jest żadnym azjatyckim rozwiązaniem kupionym i zapakowanym w plastikowej obudowie, tylko jest tutaj w Bydgoszczy wyprodukowane.

Wypuściliśmy to w 2019 na rynek i od tego czasu można powiedzieć, że jesteśmy liderem sprzedaży tego typu systemu w Polsce, bo wiele miast większych, mniejszych, gmin, Straży Miejskich, bardzo wielu pilotów prywatnych, którzy latają na rzecz różnych jednostek samorządu terytorialnego, od nas kupuje ten system, i badają zanieczyszczenia powietrza. Generalnie to poszło bardzo do przodu, ale to było poprzedzone szeregiem ciężkich prac zespołu badawczo-rozwojowego.

Domyślam się. Tym bardziej cieszę się, że się udało to z sukcesem dopiąć do końca. Bardzo chwalebne zastosowanie dronów, ale osobiście, gdy myślę o dronach, to przychodzą mi na myśl albo takie popularne zabawki, które w przysłowiowym supermarkecie możemy sobie kupić do zabawy, albo z drugiej strony zgoła odmienne skojarzenie z maszynami bojowymi.

Jedno i drugie skojarzenie wiąże się z hardwarem, w sensie, gdy myślę o dronach, przychodzi mi na myśl latające urządzenie, hardware można powiedzieć. Jednak dobrze wiemy, że tylko na hardwarze tylko sprawa się zatrzymuje, bo trzeba w jakiś sposób tchnąć duszę w ten hardware, zasilić powiedzmy oprogramowaniem, żeby cokolwiek dało się zrealizować sensownego z wykorzystaniem dronów. Czy drony również działają w oparciu o jakiś system operacyjny, który nimi steruje?

Nie będę wchodził mocno technologicznie, ale to trzeba oddzielić dwie części. Część dotyczącą awioniki, tego, że system lata, sterowanie tą awioniką, sterowanie całością systemu. Nie ma gotowych rozwiązań, są to języki niskopoziomowe. Skupiamy się na tej części, która jest jakby podłączona do drona i to często jest osobna część, osobny system. Jest to problem związany z łącznością, który jest, są poważnym aspektem.

Generalnie im bardziej autorski system, tym bardziej on jest bezpiecznie podatny na ataki. To są generalnie języki niskopoziomowe. Nie ma konkretnych platform i skupiamy się, jak pracujemy szczególnie na aspektach, związanych z łącznością, z problemem ewentualnie aplikacji zewnętrznej, które kontrolują, wizualizują zdarzenia związane z dronem. Wtedy to mogą być języki wyższego poziomu. Nie ma konkretnych platform, a można stosować różne rozwiązania.

Rozumiem. Powiedziałeś o komunikacji, telekomunikacji i jakiejś formie przesyłania informacji ogólnie pomiędzy dronem a innym urządzeniem. Zastanawiam się, czy jest jeszcze coś w ogólnie rozumianym zakresie dronów, jakieś funkcje, możliwości, które możemy programować? Czy jest to może na tyle zaszyte na twardo, że nie ma możliwości programowo zmieniać zbyt wiele?

Teraz na przykład jesteśmy na końcówce de facto, w ramach tego projektu Innolot, którego realizowaliśmy. Realizujemy tak zwaną platformę wodną, to znaczy skupiamy się na zestawie, na czujniku systemie, który to system po wylądowaniu drona na wodzie, zanurzy system w wodzie i powie, że według tam określonej sekwencji, pobierze wodę do całego systemu, żeby ją zbadać. Jedyne problemy badawcze, jakie mamy, to takie, że trzeba zaprogramować to, żeby system wpierw pobrał tę wodę za pomocą specjalnej ssawki. Pobrał do specjalnej butelki. Dron tę butelkę oczywiście musi wpierw przepłukać, przepłukać całą instalację, żeby badanie dotyczyło całego środowiska, żeby butelka była również z tego środowiska. Przepłucze instalację, wypuści tę wodę i pobierze tę wodę ponownie.

Stosujemy do tego własne rozwiązania. Ten system wzbogaciliśmy w tryb badawczy online. Możemy online zbadać podstawowe elementy za pomocą podstawowych sensorów zanieczyszczenie wody i mieć podstawowy wynik online, na bieżąco. Przesyłany łącznością, wyświetlany na przykład na tablecie, na laptopie, czy na przykład, tak jak u nas mamy, w ramach tego projektu, na takiej specjalistycznej stacji sterującej. Mogę przesłać zdjęcie, jak ktoś będzie zainteresowany, ale chyba będzie na naszej nowej stronie. Możemy to wyświetlać w kilku miejscach.

Teraz to, co badamy online, to jest ograniczony zakres, ale następnie to, co będzie badane nie online, to woda, która może być po pobraniu dostarczona na przykład na brzeg i tam do specjalnej lodówki tą wodę się wkłada i bierzesz ją do chromatografu, do laboratorium się bada szczegółowe wyniki. Tych aspektów programowania informatycznego tej serwo mechaniki, pobierania programowania tego typu, to jest problemów sporo. Potrzebujemy od programistów niskopoziomowych poprzez konstruktorów, mechaników, elektroników, tam pracuje 19 osób na przykład przy takim projekcie, a urządzenie wydaje się małe, w tym 6 programistów i pracuje nad tym kilka lat, żeby to zrobić porządnie. Tak to wygląda.

Właśnie, zahaczyłeś o ciekawą sprawę zaawansowania technologicznego dronów, bo na rynku można spotkać naprawdę modele bardzo proste, albo dość zaawansowane, co też ma swoje odzwierciedlenie w cenie. Zastanawiam się, czy każdy producent dronów ma, jakieś swoje oprogramowanie, SDK, jakieś mechanizmy interakcji z dronem, czy też istnieją na rynku pewne standardy, podejścia, które są współdzielone i powiedzmy, różni producenci stosują się do podobnych wytycznych. Jak to wygląda mniej więcej?

Podzieliłbym to na kilka części. Na obszary militarne, gdzie jest ten obszar militarny, tak jak wspominałeś, jest potężny rynek dronów militarnych, gdzie obszar związany z łącznością, awioniką, czy z innymi rzeczami jest obszarem, musi być obszarem innowacyjnym, nietypowym, żeby był bezpiecznym obszarem dla całego systemu. Dlatego się tworzy własne rozwiązania. W naszym projekcie tam, gdzie je robimy w celach cywilnych, to korzystamy z elementów gotowych, ale WZL2 produkuje na rozwiązania w celach niekoniecznie cywilnych, może korzystać z własnych, musi budować własne rozwiązania, które będą bezpiecznymi rozwiązaniami.

Można to podzielić na różne, że można korzystać z istniejących rozwiązań, jeśli ma się ambicję i możliwości, to można budować własne rozwiązania. Na pewno trzeba podkreślić, że te rozwiązania gotowe, takie, które są wielokrotnie azjatyckie, czy chińskie rozwiązania, które są rozwiązaniami masowymi, sprawdzonymi poprzez ilość sprzedanych sztuk, są rozwiązaniami bezpiecznymi. Ta awionika jest ok. Można powiedzieć dwutorowo, można korzystać z istniejących rozwiązań, można budować własne, zależy od zasobów.

Tak, domyślam się. Czy to działa bardziej tak, że chcemy stworzyć jakiś program, który ma działać później na drona, to bardziej skupiamy się na jakimś konkretnym modelu, może rodzinie modeli, czy też możemy się pokusić o rozwiązania, które będą w miarę uniwersalne?

Podszedłbym do tego w zależności od sytuacji, do czego chcemy dane rozwiązanie mieć. Jeżeli mamy określony profil naszego celu i wiemy, co chcemy z tym dronem, czy chcemy go na terenach wietrznych, czy chcemy go na terenach blisko wody. My w ogóle mamy to Centrum Badawczo — Rozwojowe i to centrum skupia się na konstrukcji materiałów używanych również do dronów, czy do obudowy związanej z urządzeniami służącymi dronom. To jest to bardzo ciekawa tematyka.

Tutaj każda sytuacja wymaga różnego podejścia. Możemy się skupić na czymś, co na rynku istnieje, jest podobne, sprawdzone i sprawdzono aspekty fizyko mechaniczne tego urządzenie, ten kierunek jest właściwy. Albo budować jakieś własne rozwiązania. Najlepiej wzorować się na czymś, nie mówię kopiować, tylko wzorować się na czymś, gdzie aspekty fizyczne zostały już obliczone, sprawdzone i wykorzystuje się jakąś istniejąca konstrukcję. Możemy również często kupować konstrukcje własne i te konstrukcje stwierdzić, że część systemu będzie składała się z konstrukcji dostępnych istniejących konstrukcji systemu, a część systemu zbudujemy sami, ponieważ chcemy modyfikować istniejące rozwiązania, pójść w tym kierunku. Dwojako więc można, wielorzędowo.

Możliwości jest zatem wiele. Powiedziałeś, że w projektach, które wy tworzycie, czy współtworzycie, zazwyczaj jest tak, że uczestniczy kilku, być może kilkunastu programistów, którzy przez najczęściej dłuższy czas są zaangażowani w taki projekt, tworzą właśnie rozwiązania softwarowe. Powiedziałeś też, że używa się często języków niskiego poziomu do tworzenia takich rozwiązań. Chciałbym Cię zapytać głębiej w tym temacie, jakich języków programowanych, jakich technologii, czego można użyć od strony programistycznej, żeby stworzyć jakiś swój software, który ma działać na dronach?

Powiem z naszej strony, z czego my korzystamy. Akurat przed chwilą byłem w laboratorium i to, gdzie podłączamy się do urządzeń, analiza danych, badamy dane urządzenie, to widziałem, że korzysta się z języka C Sharp. Elementy, gdzie jest wyświetlany nasz system, wyświetla mapę zanieczyszczeń środowiska w danym terenie i pokazuje określone piny terenu, czy czerwone punkty, gdzie mamy jakieś potencjalne zanieczyszczenia środowiska, mapa, analiza, system online wskazujący na tablecie wyniki. Na przykład jest środowisko dot netowe, wpisane, więc to zależy od danego zespołu, danej sytuacji.

👉 Czytaj dalej na: https://porozmawiajmyoit.pl/poit-092-programowanie-dronow/

kkempin’s dev blog

Dev and life blog.

Medium is an open platform where 170 million readers come to find insightful and dynamic thinking. Here, expert and undiscovered voices alike dive into the heart of any topic and bring new ideas to the surface. Learn more

Follow the writers, publications, and topics that matter to you, and you’ll see them on your homepage and in your inbox. Explore

If you have a story to tell, knowledge to share, or a perspective to offer — welcome home. It’s easy and free to post your thinking on any topic. Write on Medium

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store