Aby się robiło jeszcze ciekawiej w palecie IMU na forum równolegle z Wiktorem powstała klasyczna wersja IMU oparta na tych samych założeniach. Czyli STM32F103 + czulnik LSM330 + MS5611. Wszystko podpięte na SPI aby przyspieszyć odczyty itp. Jako soft bazowo posłużył port afroflight32, jednak autor dongs (aka. timecop) stara się portować to na wprost i czasami niektóre rzeczy opóźnienia które miały jakiś sens na Atmedze na Cortexie już nie mają. Na ta chwilę wszystko działa, doszło jeszcze "trzymanie mordki" z Aeroquada, czyli bez kompasu możemy go obrócić o 90 stopni a on sobie wróci do pozycji bazowej.
Dodatkowo przerobione zostało IMU ale tylko kosmetycznie, aby charakterystyka latania się nie zmieniła - wymuszone odczyt czujników na 800Hz i pętla główna na sztywno 400Hz. Jak by nie dodawać opóźnień to pętla z trzema czujnikami chodzi chodzi z prędkością około 1500Hz (a to są 2 odczyty gyro i 2 odczyty ACC + baro) co pozwala myśleć że trochę zapasu zostało ;)
Osoby zainteresowane płytką zapraszam na PW.
Firmware iNav 1.7.1.4 - Płytka KFC32/KFC32FTB/KFC32Mini/KFC32FR/KFC32F3
Firmware iNav 1.7.1 - Płytka KFC32/KFC32FTB/KFC32Mini/KFC32FR/KFC32F3
Firmware iNav 1.6.1 - Płytka KFC32/KFC32FTB/KFC32Mini/KFC32FR
Firmware iNav 1.6.0 - Płytka KFC32/KFC32FTB/KFC32Mini/KFC32FR
Firmware iNav 1.4.0 - Płytka KFC32/KFC32FTB/KFC32Mini/KFC32FR
Wiki cały czas uzupełniane
*** FAQ ***
Firmware v72 - Płytka KFC32/KFC32FTB/KFC32Mini
--starsze wersje --
Firmware v71 - Płytka KFC32/KFC32FTB/KFC32Mini
Firmware v69 - Płytka KFC32/KFC32FTB/KFC32Mini
Firmware v68 - Płytka KFC32/KFC32FTB/KFC32Mini
Firmware v67 - Płytka KFC32/KFC32FTB/KFC32Mini
Firmware v66 - Płytka KFC32/KFC32FTB/KFC32Mini
Firmware v65 - Płytka KFC32/KFC32FTB/KFC32Mini
Firmware v64 - Płytka KFC32/KFC32FTB/KFC32Mini
Firmware v63 - Płytka KFC32/KFC32FTB/KFC32Mini
---> wszystkie starsze wersje <---
Nowy dedykowany konfigurator KFC32-tool v0.13c (Windows) - kompatybilny z v67 i wyższe
Nowy dedykowany konfigurator KFC32-tool v0.13c (Linux) - kompatybilny z v67 i wyższe
Nowy dedykowany konfigurator KFC32-tool v0.13c (dla iOS) - kompatybilny z v67 i wyższe
--starsze wersje --
Nowy dedykowany konfigurator KFC32-tool v0.12b - kompatybilny z v65 i wyższe
Nowy dedykowany konfigurator KFC32-tool v0.11a - kompatybilny z v64 i wyższe
Nowy dedykowany konfigurator KFC32-tool v0.10c - kompatybilny z v62 i wyższe
KFC32-tool v0.9d - kompatybilny z v60,v61
Starsza wersja KFC32-tool v0.8 - kompatybilny z v58,v59
Konfigurator WinGUI 2.2 (nie wymaga javy) - dla wersji >= 49
Konfigurator MWC 2.1 - dla wersji < 49
Aplikacja do aktualizacji firmware
Sterowniki USB dla płytki v2
TODO:
- odometer
- procentowy wskaźnik gazu (też przypominam, bo było)
- w logach umieścić końcową statystykę w jednym małym pliku? Tak jak jest wyświetlana na koniec lotu.
- kierunek lotu NSWE w OSD
v72
- dodano inicjalizację OSD w przypadku resetu kostki podczas pracy IMU - czyli nawet jak zniknie to się natychmiast pojawi
v71
- dodano zmienną serial_pc4gps - wartość 1 pozwala na połączenie GPS do portu PC i jeżeli nie przyjdzie przez 10s ramka z GUI to zainicjuje sobie na tym porcie GPS
- dodano zmienną tpa_breakpoint - jest to punkt od którego PID powinno tłumić zgodnie z parametrem throttle PID att. Dobrze jest ustawić w okolicy zawisu naszgo kopterka
- dodano zmienna pid_at_min_throttle - 0 - stare zachowanie czyli nie stabilizuj jeżeli jest gaz na minimum tylko kręć śmigłami na wolnych obrotach, 1 - stabilizuje nawet jak gaz jest na minimum. Od teraz ustawienie 1 jest domyślne jak w cleanflight, o ile oczywiscie resetujemy konfigurację.
- opóźniono inicjalizację OSD z uwagi na wrażliwość wahania napięcia na starcie systemu
- usunięto błąd związany z head lock związany z GPS
- usunięto naliczanie I na rozbrojonym silniku - czyli po ludzku usunięto efekt niecentrowania się serw w trybie ACRO podczas testów w domku.
- dodano lepsze filtrowanie parametru D dla stabilizacji - koncepcja Borisa B. z Cleanflight implementacja własna
![;-)](./images/smilies/icon_wink.gif)
- poprawiono generowanie PWM dla serw trikoptera.
v70
- kompensacja wysokości (ap_elevatorcomp) dodawana już po ograniczeniu limitów zdefiniowanych jako ap_max_pitch - w skrzydełkach kompensacja lotkami była i tak ograniczona max katem i model podczas ósemek PH za bardzo obniżał lot.
- większy zakres dla PID od alt hold dla samootów
- poprawiono ustawianie szybkości serwa oraz wartości początkowej dla tricoptera
- dodano obsługę nowej kości pamięci SPI flash (Winbond)
v69
- poprawiono błąd w menu OSD powodujący zanikanie menu w niektórych ekranach
- poprawka machania ogonem w trybie lock dla samolotów
- większe filtrowanie ext_aux_channels
v68 - wymagana aktualizacja czcionek OSD - zakładka OSD aktualizuj czcionki
- dodano zmienna startup_delay_ms - czas zwłoki inicjowania IMU w ms - max 10000 czyli 10s.
- nowe ikonka przed znaczkiem wysokości jeżeli mamy załączony alt hold, oraz ikonka prędkości dla auto throttle
- poprawka pokazywania w GUI trybu LOCK dla skrzydlatych
- poprawiłem domyślne ustawienie osd_pitch_gain na 100
- dodano do menu OSD konfigurację PID dla Speed i navR w samolotach
- poprawiłem w menu OSD regulację kata navi dla samolotów
- usunąłem oddawanie steru wysokości podczas krążenia nad pozycja home bez silnika w trybie failsafe
- poprawiono wyliczanie odległości od bazy w trybie LOCK
v67
- poprawiono współpracę (zapis ustawień) z nowym GUI v0.13b
v66
- większy zakres działania serwa kierunku podczas nawigacji w samolotach
- nowa metoda kalibrowania trybu Level bardzo przydatna dla samolotów ale i użyteczna dla kopterów. Opisy odpowiednio tutaj dla skrzydełek oraz dla kopterów
- usunięto ficzer INFLIGHT_ACC_CALIBRATION, na rzecz nowej metody trymowania ACC
- dodano ficzer NO_PWM_WITHOUT_BATT - wyłączenie inicjowania kanałów wyjściowych PWM jeżeli napięcie wejściowe < 6V - umożliwia to nam konfigurację modelu z podpiętymi serwami gdyż serwa nie powinny pracować jeżeli nie mają PWM wejściowego
- dodano zmienną osd_pitch_gain - wzmocnienie wskazywania osi pitch horyzontu - zależnie od kamerki czasami lekkie pochylenie powoduje zbyt mocne wychylenie horyzontu
- poprawiono kalibrację regulatorów oraz kilka zależności związanych z opcja ONESHOT
- możliwość skonfigurowania wejścia PPM jako wejścia ADC dla rurki Pitota... reszta wkrótce
![;-)](./images/smilies/icon_wink.gif)
- GUI - poprawiono opis serwa ogonowego dla trikoptera - jest to pierwsze serwo a nie jak widniało czwarte w konfiguracji.
- GUI - dodano okienko konfiguracji mapowania kanałów
v65
- dodano obsługę OneShot - zaznaczamy opcję OneShot oraz zmieniamy motor_pwm_min = 125 oraz motor_pwm_max=250
- poprawiono zapis logów dla silników w samolocie
- poprawiono nawigację samolotową - czyli wracanie bez "wężyka"
- dodano ekran debug navi dla samolotu dla lepszej analizy i konfiguracji parametrów lotu
- nowa implementacja kontrolera navi - pełne PID obsługiwane polami NavR, kontroli szybkości PI pozycja Speed namiast PosR, oraz pełne PID dla alt hold opis w wiki
- z uwagi na powyższe maksymalne kąty nawigacji i konta wznoszenia/opadania w trybie alt hold przeniesiono do zmiennych ap_max_pitch, ap_max_roll
- dodano zmienna ap_min_auto_thr która razem z ap_max_auto_thr ogranicza nam działanie kontrolera szybkości w trybie automatycznego gazu
- poprawione filtrowanie ext_aux_channels i brak stanów przejściowych
- usunięto problem przestrzeliwaniem wysokości powrotu dla samolotów
- alt hold niezależy od trybu RTH zatem jeżeli chcemy aby utrzymywał wysokośc w trybach RTH/PH zaznaczamy sobie opcję alt hold niezaleznie
- poprawiono zapis rodzaju odbiornika RC - problem z zapisem eLeReSa
W przypadku samolotu polecam przeczytać jeszcze raz ten opis parametrów
KFC32-tool:
- nawigacja po OSD za pomocą klawiatury
- dodano opcje wartości domyślnych
- przeniesiono funkcje kasowanie ustawień OSD i wgrywanie czcionek do MAX na zakładkę OSD
- pobrane logi z trasy GPS są kolorowane w google EARTH i podawane sa czasy przełączenia funkcji itp.
- poprawiono zapis rodzaju odbiornika RC
- możliwość włączenia OSD nawet w przypadku braku fizycznie chip'a OSD - przydatene gdy nie mamy zasilonej kanapki i chcemy sobie skonfigurować układ ekranów lub jak chemy pobawić się OSD przed zakupem.
- dla skrzydlatych na zakładce PID PosR zastąpiono Speed
v64
- poprawiona stabilność lotu - poprawia stabilność lotu przy silnym wietrze, oraz szybkiego pomykania w ACRO, nie trzeba już tak kontrować drągami
- dodano opcję przemapowania RSSI na kanale ADC od czujnika prądu. Przydatnę dla osób które mają wbudowanego eleresa a chcą mieć pomiar RSSI dla odbiornika zew. (remap_rssi_adc = 1)
- zwiększono zakres konfiguracji niektórych parametrów w OSD
- poprawka pokazywania odległlości i wartości prądu w statystykach OSD
- poprawka pokazywania długości przebytej trasy
- blokada zazbrajania silników dla skrzydlatych jeżeli załączony jest ACC... po zazbrojeniu można załączyć sobie ACC.
- wysyłanie wartości prądu w telemetrii eleresa
- poprawka pokazywania prądu w GUI (proszę uaktualnić GUI do v0.11)
- dodano możliwość sterowania OSD z GUI
- dodatkowy ekran OSD do debugowania PID dla GYRO - w konfiguracji dajemy debug_osd=1 i potem przełącznikiem możemy przełączać ekrany zwykły oraz debugowania. Można opcję OSD debug aktywować w polu w Menu OSD.
v63
- poprawiono failsafe dla kopterów - zalecana wymiana softu gdyż procedura failsafe zawiera błąd i model za szybko ląduje
- przepisany driver do kompasu - proszę wykonać kalibrację kompasu ponownie oraz jeszcze raz przeczytać wiki dotyczące ustawień kompasu proszę od tej wersji nie używać obracanie kompasu magDecilation - ustawić go mechanicznie poprawnie
- poprawiono wartość heading w OSD aby pokazywała w zakresie 0-360"
- poprawiono wycie buzera w trybie samolotowym
- poprawiono naliczanie parametru i dla trybu FAST_LEVEL - efektem była cofka po puszczeniu drąga, teraz po puszczeniu dryfuje dalej
- domyślne wymuszenie wartości 1Hz w logach dla większości parametrów
- wywalenie machania lotkami w samolocie gdy zlapał fixa - od tego jest leda, telemetria, eleresa i OSD więc nie ma co męczyć serw
- poprawka wyliczania przebytej trasy
- przesyłanie podglądu OSD do GUI
v62
- poprawiono failsafe dla odbiorników PWM/PPM wyzwalane poziomem poniżej failsafe_detect_treshold
- zablokowano wejcie do konsoli jeżeli jest aktywna komunikacja MSP, po rozłączeniu 5s MSP działa już wejście do konsoli
- poprawiono rozbrajanie drążkami w samolotach (gaz min + home dist < 15m + 15s)
- poprawiono utrzymywanie wysokości dla skrzydlatych
- dodano tryb poszukiwania modelu opis
- dodano wysyłanie prądu do GUI
- poprawiono ściąganie logów - używać najnowszej wersji GUI
- dodano w OSD nowe elementy: vario numeryczne, heading z kompasu, oraz w podsumowaniu przebytą trasę
- po wgraniu proszę zaktualizować czcionki OSD poprzez KFC32-tool aby wszystkie znaki wyglądały poprawnie
v61
- poprawiono wyświetlanie trybów lotu
- poprawki związane z failsafe dla eleresa oraz RSSI
- dodano nowe filtrowanie czujników - aby aktywować dajemy w konfiguracji gyro_tab_len=3
v60 - nie używać, użyć v61 lub v59
- hazardowe wycie buzera po restarcie/włączeniu płytki usunięte
- poprawiony zapis do SPI flash logów
- kalibracja kompasu przez 60s oraz pikanie buzerem podobnie jak w MK z tym że zakończenie sygnalizowane jest kilkoma piknięciami
- dodano możliwość konfiguracji IO1 jako wymuszone pstryczkiem - nie reagujące na VBAT. W tym celu w zmiennych ustawiamy io1_type = 3.
- poprawka dla OSD dotycząca przesuniętych napisów
- nowa funkcja pidatora za pomoc pól debug w eldisp lub track my RC do regulacji PID w polu bez BT - opis będzie w wiki.
- gyro_mmtab_len można ustawić aż do 20 - zalecane raczej do samolotów jeżeli chcemy zmniejszyć czułość gyro to zwiększamy filtrowanie, w kopterach raczej nie przekraczac 10.
- liczenie RSSI jeżeli mamy wyłączone VBAT
- [SKRZYDEŁKA] poprawka uwzględniająca kompas podczas nawigacji samolotowej
- [SKRZYDEŁKA] zmienna "failsafe_max_rth_time" uwzględniana także w samolotach - proszę ustawić odpowiednią wartość!!!
- [SKRZYDEŁKA] dodano tryb head lock dla samolotów, czyli po załączeniu stara się pilnować wybranego kursu
- [SKRZYDEŁKA] możliwość rozbrojenia silników drążkami jeżeli model ma GPS i znajduje się przez 15s w odległości < 15m od home i gaz jest na min.
- [SKRZYDEŁKA] błąd machnięcia ogonkiem po załączeniu stabilizacji w samolotach
GUI:
- poprawiono odczyt logów
- w pliku KML wysokość jest relatywna względem startu
- poprawka informacji NO MAG na wskaźnikach kierunku
v59
- poprawiono gubienie ramek GPS - dość krytyczna poprawka gdyż podczas failsafe może zacząć nam lądować lub stracić komunikację na chwilkę z GPS
- w pliku msg.csv zapis informacji o błędnych ramkach GPS.
v58
- poprawiono logi GPS - ignorowanie błędnych ramek przez co nie ma szpilek na ścieżce...
- w GUI jeżeli nie wpisze ktoś nazwy to aplikacja sama nada nazwę MODEL_NO1
- domyślna prędkość UART w GUI to 115200 - o ile wcześniej ktoś nie miał zainstalowanego
*** Lista wszystkich zmian ***
Ale podsumowując co mamy:
Wersja pełna/duża:
- 8 wejść RC lub PPMsum
- 8 wyjść PWM
- 2x serwo ( dla Ticoptera serwo od ogona jest na kanale 5 od PWM wiec tri + gimbal też przejdzie)
- trzy ledki na płytce i 2 wyjścia sterowane z IMU 12V
- złącze i2c/RS/SPI
- buzer, pomiar baterii standard.
- otwory montażowe 44.5 x 44.5
- Baro MS5611 na pokładzie
- kompas na moduliku jako opcja
- Obsługa wyświetlacza OLED i2c
KFC32-Tool:
![Obrazek](https://lh6.googleusercontent.com/-ueLSf0Olf8M/UnTuwj8mSfI/AAAAAAAADjo/hS0iHZHcZqA/w816-h638-no/kfc32-gui1.png)
![Obrazek](https://lh4.googleusercontent.com/-Gs42YWXQTq4/Ut2LgWc-RfI/AAAAAAAAFYI/u2jzLwr06Po/w1020-h735-no/tabSensors.png)
![Obrazek](https://lh5.googleusercontent.com/-qtcWslQhnMs/UnTuuVm-qxI/AAAAAAAADjY/SuEvU9VWsBo/w816-h638-no/kfc32-gui3.png)
![Obrazek](https://lh5.googleusercontent.com/-NbgGm2qfQxo/UnTuuZTKiDI/AAAAAAAADjc/Q8croLw0pbs/w816-h638-no/kfc32-gui4.png)
![Obrazek](https://lh6.googleusercontent.com/-HMRFdttwZOg/Ut2LgpbtktI/AAAAAAAAFYM/uonbDrKeK1A/w1020-h735-no/tabGPS.png)
No i filmiki z lotów:
[/b]