Umiejętności
ARM
ARM Cortex-M3
ATMega
Bootloader
Eclipse
Kompatybilność elektromagnetyczna
GSM
IFM
J1939
LTSpice
Microchip PIC
MPLAB
Pspice
RS232
RS485
Programowanie
lutowanie przewlekane
lutowanie SMD
Atmel Studio (AVR Studio)
ATxmega
C (język programowania)
STM32
STM8
RFID
Systemy wbudowane
CAN
Magistrala CAN
Programowanie PLC
assembler PIC
układy analogowe
Oscyloskop
Keil uVision
Układy cyfrowe
LPC
Eagle PCB Design
Mikrokontrolery
ccs Compiler
Multimetr
Języki
angielski
dobry
Doświadczenie zawodowe
Informatyk programista
Pisanie oprogramowania na mikrokontrolery PIC w języku C w środowisku MPLAB z kompilatorem CCS, budowa aplikacji desktopowych w językach C#, C++, projektowanie PCB.
• Napisałem program na mikrokontroler PIC18 do sprawdzania poprawności montażu płyt PCB w zakładzie pracy. Dokonywane były testy prądów i napięć w celu sprawdzenia czy monterzy poprawnie wlutowali rezystory.
• Zaprojektowałem schemat i PCB nowego sterownika do maszyn rolniczych w programie Eagle. Wygenerowałem pliki gerbera, z których wyprodukowano płytkę w firmie zewnętrznej. Następnie napisałem oprogramowanie na procesor dSPIC33EP512GP806. Zawierało ono biblioteki do obsługi interfejsów I2C, SPI, UART, CAN oraz współpracowało z wyświetlaczem LCD DOGM 128x64. Stworzyłem możliwość wyświetlania dowolnych kształtów, gotowych obrazków bitowych, a także czcionek i całych napisów umieszczanych w zewnętrznych pamięciach EEPROM(także czcionka i napisy rosyjskie). Do poruszania się po opcjach skonstruowałem specjalne animowane menu obrotowe. Dodałem również możliwość podmiany oprogramowania poprzez bootloader. Skorzystałem tu ze znalezionego gotowego rozwiązania, które następnie przerobiłem dla potrzeb mojego programu(program na mikrokontroler oraz aplikacja PC). Urządzenie było prezentowane jako nowość firmowa na targach rolniczych w Bednarach 2016.
• Dodałem możliwość ustalania nastaw parametrów dla istniejących sterowników poprzez interfejs RS232. W programie dodana została specjalna ramka pochodząca z komputera PC, który przesyłał określone parametry. Oprogramowanie na PC stworzyłem na platformie .NET Visual Studio 2015 w języku C#
• Stworzyłem program do sterowania pracą maszyny koszącej. Korzystałem tu z akcelerometru, żyroskopu oraz modułu GPS. Akcelerometr dawał informację o poziomie przechylenia maszyny na boki. Żyroskop odczytywał prędkość kątową przy skrętach, GPS prędkość liniową poruszania się, a z tego wyliczany był promień skrętu. Położenie maszyny było mierzone za pomocą wbudowanego przetwornika ADC. Na podstawie przechylenia i promienia skrętu regulowana była praca siłowników kosiarki. Istniała także możliwość ustalania poziomu histerezy.
• Stworzyłem możliwość komunikacji po magistrali CAN z panelami dotykowymi OPUS A6 firmy Wachendorff Elektronik poprzez protokół ISOBUS.
• Stworzyłem stronę internetową firmy w technologii Joomla Gantry 5: www.aretesokolka.pl
• Pozostałe prace: Usprawnianie istniejących programów poprzez refaktoryzację, konfiguracja serwera NAS do przechowywania kopii zapasowych
• Napisałem program na mikrokontroler PIC18 do sprawdzania poprawności montażu płyt PCB w zakładzie pracy. Dokonywane były testy prądów i napięć w celu sprawdzenia czy monterzy poprawnie wlutowali rezystory.
• Zaprojektowałem schemat i PCB nowego sterownika do maszyn rolniczych w programie Eagle. Wygenerowałem pliki gerbera, z których wyprodukowano płytkę w firmie zewnętrznej. Następnie napisałem oprogramowanie na procesor dSPIC33EP512GP806. Zawierało ono biblioteki do obsługi interfejsów I2C, SPI, UART, CAN oraz współpracowało z wyświetlaczem LCD DOGM 128x64. Stworzyłem możliwość wyświetlania dowolnych kształtów, gotowych obrazków bitowych, a także czcionek i całych napisów umieszczanych w zewnętrznych pamięciach EEPROM(także czcionka i napisy rosyjskie). Do poruszania się po opcjach skonstruowałem specjalne animowane menu obrotowe. Dodałem również możliwość podmiany oprogramowania poprzez bootloader. Skorzystałem tu ze znalezionego gotowego rozwiązania, które następnie przerobiłem dla potrzeb mojego programu(program na mikrokontroler oraz aplikacja PC). Urządzenie było prezentowane jako nowość firmowa na targach rolniczych w Bednarach 2016.
• Dodałem możliwość ustalania nastaw parametrów dla istniejących sterowników poprzez interfejs RS232. W programie dodana została specjalna ramka pochodząca z komputera PC, który przesyłał określone parametry. Oprogramowanie na PC stworzyłem na platformie .NET Visual Studio 2015 w języku C#
• Stworzyłem program do sterowania pracą maszyny koszącej. Korzystałem tu z akcelerometru, żyroskopu oraz modułu GPS. Akcelerometr dawał informację o poziomie przechylenia maszyny na boki. Żyroskop odczytywał prędkość kątową przy skrętach, GPS prędkość liniową poruszania się, a z tego wyliczany był promień skrętu. Położenie maszyny było mierzone za pomocą wbudowanego przetwornika ADC. Na podstawie przechylenia i promienia skrętu regulowana była praca siłowników kosiarki. Istniała także możliwość ustalania poziomu histerezy.
• Stworzyłem możliwość komunikacji po magistrali CAN z panelami dotykowymi OPUS A6 firmy Wachendorff Elektronik poprzez protokół ISOBUS.
• Stworzyłem stronę internetową firmy w technologii Joomla Gantry 5: www.aretesokolka.pl
• Pozostałe prace: Usprawnianie istniejących programów poprzez refaktoryzację, konfiguracja serwera NAS do przechowywania kopii zapasowych
Programista C
Praca z regulatorami do kontroli procesu spalania w kotłach i palnikach oraz z ich panelami kontrolnymi. Programy były pisane w języku C na mikrokontrolery LPC w środowisku Keil uVision 4.6 oraz na mikrokontrolery ATXMega w środowisku Atmel Studio 6.
• Dostosowywałem programy modułu oraz panelu mono kolorowego regulatora ecoMAX do komunikacji ze zdalnym urządzeniem pokojowym ecoSTER.
• Dostosowywałem programy obsługi kolorowego panelu dotykowego ecoTOUCH do komunikacji ze zdalnym urządzeniem pokojowym ecoSTER.
• Dodałem możliwość przesyłu obrazu mono kolorowego z urządzenia sterującego pracą kominka ecoKOM, do zdalnego panelu pokojowego w urządzeniu ecoMAX850i.
• Dodałem w programie bootladera dla panelu kolorowego możliwość obsługi nowej pamięci Flash SST26 (SPI).
• Dostosowywałem programy modułu oraz panelu mono kolorowego regulatora ecoMAX do komunikacji ze zdalnym urządzeniem pokojowym ecoSTER.
• Dostosowywałem programy obsługi kolorowego panelu dotykowego ecoTOUCH do komunikacji ze zdalnym urządzeniem pokojowym ecoSTER.
• Dodałem możliwość przesyłu obrazu mono kolorowego z urządzenia sterującego pracą kominka ecoKOM, do zdalnego panelu pokojowego w urządzeniu ecoMAX850i.
• Dodałem w programie bootladera dla panelu kolorowego możliwość obsługi nowej pamięci Flash SST26 (SPI).
Edukacja
Specjalizacje
IT - Rozwój oprogramowania
Programista C++
Zainteresowania
programowanie, elektronika, sport, kulinaria, gry
Inne
W przypadku zainteresowania jestem gotowy do nawiązania współpracy bądź podjęcia pracy zdalnej.
Zajmuję się programowaniem(mikrokontrolery STM32, ATMega, XMega, LPC) oraz projektowaniem elektroniki(schematy,PCB).
W przeszłości wykonywałem dodatkowe prace (min. zadania z elektroniki, projekty wzmacniaczy, programy w C#, korepetycje z programowania, projekty z Technik wielkich częstotliwości / Techniki transmisji sygnałów). Pracowałem również w laboratorium kompatybilności elektromagnetycznej.
Własne prace:
Praca magisterska: Sterowanie wyświetlaczem TFT za pomocą aplikacji na system Android przy pomocy mikrokontrolera STM32 oraz modemu GSM SIM900.
• Zbudowana została makieta, na której znajduje się wyświetlacz TFT, procesor STM32, modem GSM SIM900 oraz układ zasilania. Za pomocą aplikacji napisanej w języku Java na system Android wysyłane mogą być różne komendy w formie SMSów sterujące pracą wyświetlacza. Pliki do wizualizacji w formie .bmp są umieszczone na karcie SD (komunikacja po SPI).
https://www.youtube.com/watch?v=gOQQdGy74eQ
Praca inżynierska: Platforma mobilna przeznaczona do pomiaru natężenia oświetlenia z funkcją zdalnej kontroli.
• Zbudowany został pojazd oraz ręczny kontroler. Obie części sterowane są za pomocą mikrokontrolera ATMega32. Pojazd porusza się poprzez silniki DC oraz serwomechanizm. Wyposażony jest w czujnik natężenia oświetlenia (I2C). Na żądanie ze strony ręcznego kontrolera wysyłany jest pomiar, który jest pokazywany na wyświetlaczu LCD. Komunikacja za pomocą modułów radiowych RFM73 na częstotliwości 2,4GHz.
https://www.youtube.com/watch?v=t1b5q5UvgsY
Projekt dźwiękowego detektora kolorów na mikrokontrolerze ATMega32:
• Do mikrokontrolera ATMega32 podłączony został moduł czujnika koloru TCS3200, który mierzył poziom trzech składowych RGB(pomiar częstotliwości). Na podstawie ich wartości program wybierał spośród 10 możliwości kolor jaki miał być odtworzony dźwiękowo. Zakresy częstotliwości wyznaczone zostały doświadczalnie podczas obserwacji przedmiotów różnego koloru
https://www.youtube.com/watch?v=6Iyt_AbWhgA
Program do usprawniania pracy księgowych dla firmy komercyjnej:
• Aplikacja desktopowa, która automatycznie wyszukuje w dwóch plikach CSV identyczne
rekordy i tworzy tekstowy plik wynikowy. Dzięki temu uniknięto ręcznej pracy co
przyspieszyło czasowo proces księgowania.
Zajmuję się programowaniem(mikrokontrolery STM32, ATMega, XMega, LPC) oraz projektowaniem elektroniki(schematy,PCB).
W przeszłości wykonywałem dodatkowe prace (min. zadania z elektroniki, projekty wzmacniaczy, programy w C#, korepetycje z programowania, projekty z Technik wielkich częstotliwości / Techniki transmisji sygnałów). Pracowałem również w laboratorium kompatybilności elektromagnetycznej.
Własne prace:
Praca magisterska: Sterowanie wyświetlaczem TFT za pomocą aplikacji na system Android przy pomocy mikrokontrolera STM32 oraz modemu GSM SIM900.
• Zbudowana została makieta, na której znajduje się wyświetlacz TFT, procesor STM32, modem GSM SIM900 oraz układ zasilania. Za pomocą aplikacji napisanej w języku Java na system Android wysyłane mogą być różne komendy w formie SMSów sterujące pracą wyświetlacza. Pliki do wizualizacji w formie .bmp są umieszczone na karcie SD (komunikacja po SPI).
https://www.youtube.com/watch?v=gOQQdGy74eQ
Praca inżynierska: Platforma mobilna przeznaczona do pomiaru natężenia oświetlenia z funkcją zdalnej kontroli.
• Zbudowany został pojazd oraz ręczny kontroler. Obie części sterowane są za pomocą mikrokontrolera ATMega32. Pojazd porusza się poprzez silniki DC oraz serwomechanizm. Wyposażony jest w czujnik natężenia oświetlenia (I2C). Na żądanie ze strony ręcznego kontrolera wysyłany jest pomiar, który jest pokazywany na wyświetlaczu LCD. Komunikacja za pomocą modułów radiowych RFM73 na częstotliwości 2,4GHz.
https://www.youtube.com/watch?v=t1b5q5UvgsY
Projekt dźwiękowego detektora kolorów na mikrokontrolerze ATMega32:
• Do mikrokontrolera ATMega32 podłączony został moduł czujnika koloru TCS3200, który mierzył poziom trzech składowych RGB(pomiar częstotliwości). Na podstawie ich wartości program wybierał spośród 10 możliwości kolor jaki miał być odtworzony dźwiękowo. Zakresy częstotliwości wyznaczone zostały doświadczalnie podczas obserwacji przedmiotów różnego koloru
https://www.youtube.com/watch?v=6Iyt_AbWhgA
Program do usprawniania pracy księgowych dla firmy komercyjnej:
• Aplikacja desktopowa, która automatycznie wyszukuje w dwóch plikach CSV identyczne
rekordy i tworzy tekstowy plik wynikowy. Dzięki temu uniknięto ręcznej pracy co
przyspieszyło czasowo proces księgowania.
Grupy
Systemy embedded
Grupa ludzi interesujących się zagadnieniami programowania systemów embedded (także zwanych systemami wbudowanymi).