Quadcopter – okablowanie, konfiguracja i test FPV

camera_osdNa wstępnie przepraszam za tak dużą przerwę od ostatniego wpisu, niestety nie mam za dużo wolnego czasu ani żeby dokończyć mojego quada, ani polatać, a co dopiero coś napisać. Tym razem sporo opisu i sporo grafik do przygotowania, więc trochę się to przeciągnęło. No ale jest :) W tej części będzie już działające FPV z OSD, jest schemat i mam nadzieję wszystko od A do Z, także zapraszam :)

Kamera, konfiguracja kamery, regulacja ostrości

camera_connectionMoże zaczniemy od rzeczy przyjemnych i łatwych, od uruchomienia i skonfigurowania kamery. Aby tego dokonać, potrzebny nam będzie ekran na którym wyświetlimy obraz – może być to karta przechwytująca sygnał na USB, może być to nasz ekran FPV, może być to telewizor z wejściem kompozytowym, ja wykorzystałem kartę przechwytującą bo tak łatwiej będzie mi zrobić zrzut ekranu z OSD kamery. Wraz z kamerką dostaliśmy prawdopodobnie dodatkowy kabelek z przyciskami lub joystickiem do wchodzenia w kamerkowe OSD z menu i opcjami – tańsze kamerki mogą nie mieć takiego dodatkowego akcesorium lub w ogóle nie posiadać żadnych dostępnych ustawień. Jedną stroną przewodu wpinamy się w kamerkę, a po drugiej stronie znajdziemy złącze zasilające oraz złącze z wyjściem wideo. W moim przypadku złącze zasilające to zwykłe DC w które wpiąłem taką wtyczką 12V (moja kamera akceptuje takie napięcia), a złącze sygnałowe BNC zastąpiłem zwykłą wtyczką chinch aby ułatwić sobie pracę.

camera_osdTeraz można całość uruchomić i wciśnięciem joysticka lub środkowym przyciskiem wejść w menu OSD kamery. OSD kamery to jej wewnętrzna nakładka na obraz, służy tylko do zmiany jej ustawień, i nie ma nic wspólnego z OSD pokładowym które będziemy za chwilę montowali. OSD to skrót od On Screen Display, czyli wyświetlanie nakładki na istniejącym obrazie. Nie miałem zbyt dużej ilości okazji na testowanie kamery w terenie, więc nie mam jakichś tam swoich ustawień którymi mógbym się podzielić, a przepisywanie ustawień od innych w to miejsce chyba nie ma sensu, tak więc poczęstuje Was linkiem z którego można te ustawienia zaczerpnąć, dobrane specjalnie pod FPV: http://www.rcgroups.com/forums/showthread.php?t=1833790

camera_focusJeszcze jedna rzecz o której warto wspomnieć – nie wszystkie kamery będą miały poprawnie ustawioną ostrość. Nawet jeśli wydaje Ci się że obraz jest ostry a ogniskowa ustawiona na nieskończoność (najostrzejsza część obrazu to ta najbardziej odległa), warto podłączyć kamerę pod jakiś duży wyświetlacz i sprawdzić czy nie da się tego poprawić. Poluzuj pierścień kontrujący (użebrowany element na zdjęciu) a następnie delikatnie pokręć całym obiektywem, ten wykręcając się lub wkręcając będzie zmieniał odległość optyki od matrycy. Przed poruszeniem możesz zaznaczyć sobie położenie pierwotne, pozwoli to powrócić do ustawienia fabrycznego gdyby coś poszło nie tak. Nie wykręcaj optyki do końca bo kurz i inne zanieczyszczenia mogą okazać się trudne do usunięcia. Po ustawieniu właściwej ostrości zabezpiecz optykę pierścieniem kontrującym, ale uważaj aby nie obróciła się ona podczas dokręcania.

Modyfikacja płytki minimOSD

minim_osd_wire_mod_1Jest to krok opcjonalny, jeśli kupiliśmy płytkę z dodatkowymi pinami ADC to nie musimy tego wykonywać, lub jeśli zbędne są nam bajery typu pomiar prądów napięć temperatury czy RSSI przez moduł OSD to można to całkowicie pominąć, ale myślę że warto zrobić tego moda aby mieć więcej przydatnych informacji na OSD. W zależności od softu jaki wpakujemy w procesor, może on wykorzystać pokazane na obrazku wolne piny ADC do wykonania pomiarów napięć.

Są to kolejno:
pin 26 – ADC3 (PORTC3) – pomiar RSSI
pin 25 – ADC2 (PORTC2) – pomiar napięcia systemu FPV
pin 24 – ADC1 (PORTC1) – pomiar prądu z bocznika
pin 23 – ADC0 (PORTC0) – pomiar napięcia głównego
pin 19 – ADC6 – pomiar temperatury (czujnik LM35)

minim_osd_wire_mod_2U siebie przylutowałem cieniutkie posrebrzane przewody w izolacji kynarowej, tanie i bardzo poręczne rozwiązanie do takich drobnych prac, szukać pod hasłem „kynar”. Izolację z drucika zdejmujemy przy pomocy nagrzanego grota. Dolutowanie tych przewodów wymaga nieco precyzji i wprawy, w przeciwnym razie można narobić niezłego bałaganu a nawet uszkodzić moduł OSD. Polecam użyć trochę więcej topnika a przewody tylko pobielić cyną, wystarczy to aby wykonać czyste połączenie do nóg procesora.

minim_osd_wire_mod_3U siebie piny wyprowadziłem w postaci goldpinów które przykleiłem do procesora odrobiną kleju cyjano akrylowego, a całość zalałem klejem dwuskładnikowym (do użycia także żywica, preparat „plastik” do PCB). Piny ADC potrafią mierzyć napięcie w zakresie od 0V do wysokości napięcia odniesienia, czyli w tym przypadku jest to do ustawienia, ale najbardziej przyjaznym napięciem (i najniższym możliwym) jest 1,1V. Nawet jeśli ustawimy je na maksymalne, czyli 5V, to i tak nie będziemy w stanie zmierzyć napięcia głównej baterii, które przecież w zależności od konfiguracji baterii będzie wielokrotnością 3,7V. Tak niskie napięcie odniesienia umożliwi pomiar prądu bez dedykowanego czujnika, a dzielniki rezystorowe dla pomiaru napięć tak czy siak będziemy musieli stosować, po prostu będą to inne wartości rezystorów.

voltage_dividerMoją płytką nie będę wykonywał pomiaru napięć, tym zajmuje się już Flip32 który przesyła te informacje do OSD, OSD zmierzy mi tylko prąd, i do tego nie trzeba żadnych dodatkowych podzespołów. Ale jeśli zajdzie potrzeba zmierzenia napięcia wyższego niż 1,1V (czyli np baterii) trzeba będzie wykonać dzielnik rezystorowy który będzie dzielił napięcie w proporcjach np 1:15, czyli 15V na wejściu zeskaluje do 1V, czyli 1V odczytany przez przetwornik ADC będzie oznaczał tak na prawdę 15V, i będzie to potem na powrót mnożone przez program aby na gotowo wyświetlić już na ekranie. Jest to normalne, w ten sposób mierzy się napięcia analogowe przez niskonapięciowe układy cyfrowe. Obrazek zapożyczony z internetu pokazuje jak wygląda taki dzielnik i jak go podłączyć, w tym przypadku składa się on z rezystorów 22K oraz 1K5, i jest to dzielnik 1:14,66. Można bezpośrednio przylutować go do płytki i mieć gotowy goldpin do pomiaru 12V, lub pozostawić bezpośrednio podłączony goldpin pod ADC i dzielnik dobrać sobie później i dodać go gdzieś na przewodach – jak komu wygodniej.

power_split_minimosdOstatnią rzeczą do zrobienia będzie konfiguracja zasilania płytki OSD, i są dwa warianty do wybrania. Pady widoczne na zdjęciu połączone – wtedy strona cyfrowa i strona wideo są ze sobą bezpośrednio połączone, strona wideo zasilana jest tym samym napięciem 5V co kontroler lotu, może się zdarzyć że zakłócenia przekazywane po zasilaniu będą wpływały negatywnie na obraz wideo. Pady rozłączone – wtedy strona cyfrowa zasilana jest z napięcia 5V kontrolera lotu, a strona wideo zasilana jest z systemu FPV (nadajnik, kamera) napięciem 12V które jest zmniejszane do 5V wbudowaną przetwornicą – wtedy należy pamiętać aby doprowadzić 12V od strony wideo, w przeciwnym wypadku układ nie będzie działał. Wariant ten pomoże wyeliminować zakłócenia z obrazu, ale znane są przypadki uszkodzenia się wbudowanej na płytkę przetwornicy podczas lotu (utrata obrazu). W mojej konfiguracji będę korzystał z wariantu z zasilaniem rozdzielonym, ponieważ moja kamera toleruje napięcie 12V, więc cały system FPV zasilę sobie z takiego napięcia. Po za tym będę chciał mierzyć prąd z bocznika bezpośrednio przez OSD, więc troszkę zakombinowałem z połączeniami, ale mam nadzieję że schemat wszystko wyklaruje.

Zmiana firmware minimOSD na mwOSD

Płytka minimOSD może przyjść z jakimś starym oprogramowaniem i należałoby je uaktualnić lub skorzystać z alternatywnego rozwiązania. Inne kompatybilne to m.in. kvOSD i mwOSD, przy czym kv nie jest już rozwijane, więc osobiście będę się trzymał mw (multiwii). Zmienić wsad można na dwa sposoby – poprzez arduino i złącze UART, lub programatorem AVRISP poprzez złącze ISP. Na sam początek powinniśmy pobrać odpowiednią dla nas paczuszkę plików, np. mwOSD – w środku znajdziemy źródła projektu dla arduino, oraz program-konfigurator służący do skonfigurowania całości, choć sporo opcji będzie można także pozmieniać z poziomu naszej aparatury obserwując menu OSD na ekranie.

Arduino:
arduino_flashing_osd
Zaleta jest taka że płytka ma w tej chwili wgrany bootloader, i dzięki niemu wrzucimy nowy wsad przez UART. Połącz płytkę OSD z płytką arduino w trybie UART lub ze zwykłym konwerterem USB-UART, tak jak robiliśmy to do tej pory (GND i VCC płytek, oraz TX>RX i RX>TX).
1. Otwórz projekt MW_OSD.ino
2. Przejdź do karty Config.h
3. Wybierz kontroler lotu z którym masz zamiar używać OSD (odkomentuj i zakomentuj odpowiednie linie), jest to wskazane ponieważ niektóre funkcje mogą działać niewłaściwie
4. Użyj przycisku Wgraj aby skompilować i umieścić wsad na płytce
5. Gdy kompilacja się zakończy i rozpocznie wgrywanie (diody TX/RX konwertera lub arduino zaczną migać) zresetuj płytkę OSD aby uruchomić bootloader i umożliwić komunikację
6. Pasek stanu informuje o zakończeniu wgrywania wsadu

ISP:
Zwyczajnie wykorzystaj złącze ISP dostępne na płytce OSD, i wgraj wsad w dowolny sposób. Nie musisz nic lutować do płytki, w moim przypadku wystarczyło że włożyłem piny w przelotki złącza i to wystarczyło aby zapewnić kontakt elektryczny na czas programowania. Niestety Arduino tak bardzo nas uszczęśliwia i robi wszystko samodzielnie, że nie udostępnia pliku wynikowego swojej kompilacji. Plik HEX jest jednak dostępny w czeluściach ukrytych folderów tymczasowych, i jest dostępny od zakończenia kompilacji do zakończenia wgrywania. Także kliknij Wgraj, a po wyświetleniu niepowodzenia przejdź do katalogu C:\Users\nazwa-użytkownika\AppData\Local\Temp\buildXXXXXXXXXXXXXXXXXXX.tmp w którym znajdziesz plik wynikowy HEX i będzie możliwe użycie go w dowolnym programatorze ISP. Pamiętaj jednak że wgrywając wsad w ten sposób stracisz bootloader.

Schemat

quad-sch

W ten sposób wygląda połączenie całego systemu w moim przypadku (obraz można powiększyć). Jeśli wszystkie trzy główne podzespoły (t.j. kamera, osd i transmiter) mogą pracować przy napięciach takich jakie mamy w naszej baterii, to nie potrzebujemy żadnych dodatkowych zasilaczy czy przetwornic. W przypadku jeśli jedno z nich (np. kamera) musi być zasilane z 5V, można spróbować podłączyć ją bezpośrednio do BECa 5V czy nawet wpiąć bezpośrednio w piny kontrolera lotu, ale najlepiej nie mieszać głównego zasilania z zasilaniem FPV, a wartość samego napięcia FPV dobrać tak aby wszystkie jego podzespoły mogły przy nim pracować i były zasilane z tej samej gałęzi zasilającej. Wtedy wystarczy zwykła przetwornica step-down ustawiona na odpowiednie napięcie lub od biedy zwykły stabilizator liniowy LM78XX, choć ten się będzie znacznie grzał.

Linie czarne to masy, linie czerwone to napięcia dodatnie, a linie zielone to linie sygnałowe. Zauważ punkt w którym zasilanie zostało rozdzielone na wszystkie podzespoły, podłączenie tego w taki sposób zminimalizuje przekazywanie zakłóceń pomiędzy urządzeniami – jest to połączenie w gwiazdę. Wystrzegaj się połączeń z punktu do punktu (np przewody z baterii do nadajnika wideo a następnie do BECa) ponieważ podzespoły będą sobie wzajemnie brudziły po zasilaniu. Przerywana linia czerwona z ESC do kontrolera lotu to jego zasilanie, wykonaj te połączenie jeśli nie używasz osobnego BECa. Przerywana linia czarna z ESC do kontrolera lotu to masa sygnałowa PWM, możesz połączyć tą masę z każdego ESC lub nie łączyć ani jednej – są różne szkoły, jedne mówią tak a inne inaczej. W przypadku połączenia wszystkich mas może powstać niekorzystna pętla masy, w przypadku nie łączenia mogą powstać problemy z różnicami poziomu masy sygnałowej względem zasilającej – jeśli ESC czasem zachowują się dziwnie to wypróbuj inny sposób połączenia. Złącze goldpin na środku schematu służy u mnie do rozłączania całego systemu FPV wraz z GPS, jeśli nie są one potrzebne (zdejmowalny górny pokład, patrz poprzedni wpis). U siebie połącz to jak tylko chcesz, nie musisz się bawić w takie dodatkowe złącza.

Uwagę przykuwa GPS podłączony pod kanały 3 i 4, na razie go zignoruj i podłącz odbiornik jak dotychczas. Konfiguracja i podłączenie GPS będzie opisane w kolejnej części.

Pomiar prądu przez OSD

Jak widać z masą OSD jest zrobione pewne zamieszanie, jest to na potrzeby umożliwienia odczytywania prądu z bocznika przez OSD. Masa OSD jako jedyna jest brana sprzed bocznika (od strony baterii), a masa całej reszty urządzeń zza bocznika, dzięki temu będzie można zmierzyć pobierany przez te urządzenia prąd. W przypadku bocznika 5mΩ na każdy 1A odłoży się 5mV napięcia, na 10A 50mV, a maksymalny prąd tego modelu czyli 40A to napięcie 200mV – takie napięcie będzie mierzył OSD na pinie przetwornika analogowo-cyfrowego względem swojej masy, czyli tej sprzed bocznika. W zależności od ilości pobieranego prądu zwiększa się też odkładane na boczniku napięcie, tym samym zwiększając potencjał pomiędzy masami OSD – nawet do 200mV. Nie jest to jednak jakiś problem, komunikacja UART z kontrolerem lotu będzie przebiegać jak najbardziej poprawnie, a pływanie zasilania o te 200mV nie przysporzy żadnych problemów. Jest to bardzo prosty sposób pomiaru prądu własnym bocznikiem, bez kupowania gotowego – choć z gotowym nie będzie tyle kombinacji. Jeśli nie potrzebujesz mierzyć prądu, omiń to całe zamieszanie, i podłącz wszystko do jednej wspólnej masy. Masa zasilająca OSD to przewód niebieski, i jest brana od strony baterii. Punkt pomiarowy prądu (ADC1) połączony został przewodem czarnym z masą zza bocznika, dzięki czemu układ będzie mógł zmierzyć odkładające się na nim napięcie. Jeśli nie potrzebujesz pomiaru prądu, zignoruj bocznik i potraktuj go jako punkt rozdzielenia zasilania. Wtedy OSD będzie miało tą samą masę co reszta podzespołów, a ADC1 pozostanie niepodłączony.

Konfiguracja OSD

Aby móc skomunikować płytkę z komputerem, łączymy ją z arduino tak jak poprzednio, lub z dowolnym konwerterem USB-UART – płytkę dla uproszczenia można zasilić właśnie z tego konwertera lub arduino. Jeśli zasilanie strony wideo i strony cyfrowej masz osobno, nie musisz tutaj podawać zasilania 12V dla wideo, nie jest ono potrzebne, zasilamy jedynie stronę cyfrową. Poniższy opis dotyczy wersji mw_osd 1.3. Kliknij na obrazek aby go powiększyć, niestety nie wszedł na szerokość mojej strony.

mw_osd_1.3

1. Uruchamiamy konfigurator, wybieramy port na którym występuje konwerter UART lub arduino i klikamy connect.
2. Opcja Save/Load służy do zachowania lub wczytania wszystkich ustawień OSD z pliku na dysku, warto z niej korzystać przy aktualizacji wsadu, ponieważ ustawienia się usuną.
3. Narzędzia czcionki. Select pozwala wybrać z dysku plik *.mcm z zestawem czcionek. W wersji 1.3 dostępne są dwie, default oraz large. Large to czcionka wytłuszczona, dużo lepiej widoczna na słabej jakości wyświetlaczu i polecam tą właśnie wybrać. Na dole tego wpisu załączam również plik large_pl.mcm, w którym spolszczyłem kierunki kompasu na bardziej przyjazne. Upload wgra wszystkie 255 znaków do układu, trochę ta operacja potrwa.
4. Przycisk Read umożliwia odczyt ustawień z płytki, a Write ich zapis na płytkę. Default przywraca ustawienia domyślne, a Reset resetuje płytkę.

A teraz postaram się opisać kolejno wszystkie opcje z którymi miałem do czynienia w konfiguratorze MWosd. Opis niektórych z nich będzie dodany później, gdy przyjdzie mi z nimi walczyć. Przełączniki działają dziwnie, na szczęście w wersji 1.3 wprowadzono kolory, także w końcu wiadomo że zielony to włączone a czerwony to wyłączony. Ustawianie wartości liczb w okienkach jest bardzo trudne, nie wiem co autorzy mieli na myśli, ale wartości zmieniamy chwytając okienko przy pomocy myszy i przesuwając ją po skosie po ekranie. Ustawienie dokładnej liczby jest czasem bardzo trudne.

Main Voltage
Display Voltage – wyświetlanie napięcia baterii
Use FC Main Voltage – napięcie odczytywane z kontrolera lotu, jeśli wyłączone to z pinu ADC
Voltage Adjust – kalibracja wskazań z ADC do wartości rzeczywistych
Battery Cells – ilość celi baterii
Voltage Alarm – jeśli napięcie na celę spadnie poniżej tego progu to wyświetlane na OSD napięcie zacznie migać

Video Voltage
Display Video Voltage – wyświetlanie napięcia FPV, odczytane z ADC, przydatne jeśli FPV ma osobną baterię
Use FC Video Voltage – jeśli włączone, napięcie będzie pobierane z kontrolera lotu (musi wspierać)
voltage adjust – to samo, kalibracja wskazań

Amperage
Display Amps – wyświetlanie prądu na OSD
Display mAh – wyświetlanie zużytej energii, OSD oblicza to na podstawie prądu i napięcia, dane mogą pochodzić z różnych źródeł (np prąd z OSD a napięcie z FC), i mimo tego działa to dobrze
Use Virtual Sensor – wirtualny pomiar prądu, OSD będzie przewidywał jaki jest pobór prądu na podstawie ustawionego ciągu 1000-2000, ponoć po skalibrowaniu działa to całkiem dobrze
Use FC Amperage – gdy włączone dane o prądzie pobierane z kontrolera lotu, gdy wyłączone z ADC
Amps Adjust – kalibracja wskazań z ADC
Zero Adjust – kalibracja wskazań dla 0A (np gdy występuje błąd pomiarowy i mimo braku poboru prądu wyświetlacz wskazuje niewielki pobór, opcja raczej dla dedykowanego czujnika)
x100 mah alarm – gdy włączone wyświetlanie zużytej energii, licznik będzie migać jeśli przekroczymy ustawiony próg (mnożnik x100)
Amp Alarm – wskazanie prądu miga gdy przekroczymy ustawiony próg

RSSI
Display RSSI – wyświetlanie sygnału rssi
Use FC RSSI – dane o rssi pobierane z kontrolera lotu (jeśli obsługuje)
Use PWM –
RSSI Min – po przekroczeniu progu w dół wskaźnik zacznie migać

Reference Voltage
Enable ADC 5V ref – gdy włączone to napięcie odniesienia dla ADC będzie wynosiło 5V, gdy wyłączone to 1,1V

Call Sign
Diplay CalSign – wyświetlanie nazwy, pole poniżej to nazwa

Other
Metric/Imperial Units – system miar, imperialny (kilometry) lub metryczny (mile)
NTSC/PAL Video Signal – standard w jakim pracuje nasze FPV
Display Throttle Position – wyświetlanie aktualnie nastawionego ciągu
Display Battery Status – prawdopodobnie zmienna ikona baterii symbolizuje jej wykorzystanie, mi nie działa
Reset Stats After Arm – resetuje statystyki lotu po kolejnym uzbrojeniu

Display
Display Flight Mode – wyświetlanie wybranego trybu lotu
FM Sensors – wyświetlnie które dodatkowe czujniki są wykorzystywane (np barometr, magnetometr)
Display Gimbal – położenie gimbala
Display Baro Alt – wyświetlanie wysokości z barometru
Display Timer – wyświetlanie czasu lotu

HUD
Hud Layout – wybór predefiniowanego typu rozmieszczenia danych na ekranie
Hud Layout OSD SW – to samo, ale dla załączonego trybu OSD SW w kontrolerze lotu, można przełącznikiem aparatury przełączać między pełnym OSD a minimalnym, lub po prostu pomiędzy dwoma różnymi typami
Display Horizon Bar – wyświetlanie sztucznego horyzontu
HB Elevation –
Display Side Bars –
SB Scrolling –
SB Direction –

GPS Settings
Display GPS – wyświetlanie danych GPS
GPS Coords – wyświetlanie współrzędnych GPS (jeśli nagrywasz obraz na ziemi, jest to najpewniejszy sposób na znalezienie zgubionego modelu)
GPS Altitude – wysokość wg GPS, jest to wysokość nad poziomem morza a nie nad poziomem gruntu – podczas latania korzystaj z wysokości barometru
Map mode –

Compass
Display Compass – wyświetlanie kompasu, niezbędny gdy stracimy orientację
Display Heading – wyświetlanie stopni względem północy?
Heading 360 –
Display Angle to Home – wyświetlanie stopni względem miejsca startu (miejsce złapania fixa)

Time Settings
Display GPS time – czas GPS
Time Zone offset – strefa czasowa dla powyższego
Time Zone –

Alarms
x100 Distance alarm – alarm gdy przekroczymy odległość poziomą (mnożnik x100, wymaga gps)
x10 Altitude alarm – alarm gdy przekroczymy wysokość (mnożnik x10, działa z barometrem?)
Speed alarm – alarm gdy przekroczymy prędkość (wymaga gps)
Timer alarm – alarm gdy przekroczymy czas lotu

Simulator
Tutaj można zasymulować działanie OSD podstawiając różne dane, tak jak by pochodziły z czujników. Można w ten sposób zobaczyć jak całość będzie docelowo wyglądała na ekranie, oraz przetestować alarmy.

Warto samodzielnie pokombinować z wyświetlaniem różnych danych oraz z ich rozmieszczeniem. Nie warto włączać wszystkiego co działa, bo nakładka zajmie zbyt dużo miejsca na ekranie i w efekcie guzik będziemy widzieli. Warto skorzystać z przełącznika OSD SW i skonfigurować dwa różne ekrany OSD, pełny i minimalny, dzięki czemu na minimalnym będziemy widzieli tylko podstawowe informacje i niezaśmiecony obraz z kamery, a w razie czego będzie można przełączyć na pełny wraz ze sztucznym horyzontem czy współrzędnymi. Pamiętaj aby skalibrować wskazania pomiarów z ADC, potrzebujesz miernika aby to zrobić. Aby skalibrować prąd, miernik wepnij w szereg z baterią, zadaj jakiś ciąg aby wyświetlał on jakąś okrągłą wartość (np 5 lub 10A) i skalibruj wskazania OSD. Prawdopodobnie będziesz musiał założyć śmigła aby uzyskać taki prąd, więc uważaj.

Nadajnik wideo

vid_transmitterSystem wideo dysponuje kilkoma kanałami na których może pracować – tańsze ośmioma, droższe nawet 32. Oczywiście na nadajniku i odbiorniku musi być ustawiony ten sam kanał, a jeszcze lepiej będzie jeśli przeprowadzimy test, na których kanałach zasięg jest największy. Test przeprowadzić najlepiej na ziemi, bo bezpieczniej. Wcale nie trzeba wysyłać kogoś kilometr dalej i wydawać mu poleceń przez komórkę aby zmieniał kanał, wystarczy że z odbiornika całkowicie wykręcisz antenę, a zasięg drastycznie spadnie, umożliwiając przetestowanie kanałów na odległości kilkunastu metrów. Możesz też skorzystać z tłumików sygnału które można nakręcić pomiędzy moduł a antenę, nie dość że przetestujesz zasięg kanałów na docelowych antenach, to z takim tłumikiem możesz potrenować latanie przy zaśnieżonym sygnale wideo – lepiej takie sytuacje przećwiczyć przy nodze, jak 500 metrów od nas. UWAGA – nigdy nie uruchamiaj nadajnika bez nakręconej anteny – spowoduje to jego uszkodzenie!

channelsPrzełączniki kanałów w obydwu modułach pracują w systemie dwójkowym, t.j. binarnym – tak wygląda zmiana kanałów w większości takich modułów. Łatwo byłoby mi z tego miejsca odesłać do wikipedii, ale zamiast prostego wytłumaczenia znalazłem tam tylko masę skomplikowanych wzorów, więc podlinkuję zamiast tego do dużo bardziej przystępnego materiału. System binarny za pomocą czterech przełączników 1/0 potrafi przedstawić liczbę dziesiętną z zakresu 0-15 – lub jeśli chcemy to możemy ją sobie liczyć jako 1-16, obojętnie jak przyporządkujemy sobie kanały, czy będą to od 0-7 czy 1-8, ważne abyśmy się nie pomylili przy ustawianiu. Dla osób mających styczność z programowaniem oczywistym będzie że pierwszy kanał to 0. Jeśli moduł udostępnia 8 kanałów, to najprawdopodobniej aktywne będą tylko trzy pierwsze przełączniki a czwarty będzie nieużywany – a jest tam dla tego że moduły przełączników są produkowane właśnie w zestawach po 4 w jednej obudowie. Może być też tak że kanał „0” nie istnieje, i liczenie odbywa się normalnie od „1”, używając czwartego przełącznika do ustawienia kanału „8” tak jak na ilustracji obok, pochodzącej z nadajnika TS351.

Jakość obrazu, eliminacja zakłóceń

Uruchom cały system wideo oraz odbiornik z ekranem, i sprawdź jak wygląda obraz. Powinien być czysty bez żadnych migających, przesuwających się czy ukośnych linii, bez żadnego falowania jasnością, czy śnieżenia – mogą występować jakieś sporadyczne „mrówki” ale to normalne. Sprawdź czy nakładka OSD jest czytelna na twoim ekranie – wszelkie zakłócenia dostające się do układu będą widoczne na ekranie i będą utrudniać odczyt OSD, szczególnie jeśli monitor posiada niską rozdzielczość, więc na prawdę warto je wyeliminować. Jeśli przy wyłączonych silnikach widzisz zakłócenia, to znaczy że robisz coś nie tak lub któryś z podzespołów jest wadliwy. Spróbuj przetestować kamerę bezpośrednio pod ekranem (bez nadajników), spróbuj ominąć nakładę OSD bo może to ona psuje obraz, a dojdziesz do źródła problemu.

Jeśli obraz masz czysty, załóż śmigła, chwyć model pewnie w rękę, i zwiększaj ciąg aż do maksimum i obserwuj ekran, czy nie pojawiają się zakłócenia z regulatorów ESC. Test ten można wykonać bez założonych śmigieł, ale wtedy pobierana moc i co za tym idzie generowane zakłócenia będą o rząd wielkości niższe. Jeśli zakłócenia pojawiają się, na sam początek sprawdź prowadzenie przewodów sygnałowych wideo z kamery do OSD, a następnie z OSD do nadajnika – pole elektromagnetyczne z przewodów prądowych lubi przenikać do słabego sygnału wideo w ten sposób. Jeśli to jest przyczyną, spróbuj inaczej poprowadzić te przewody, obowiązkowo skręć je razem aby zminimalizować wpływ zakłóceń. Jeśli to nie pomaga, żółty przewód sygnałowy zamień na koncentryczny i połącz jego ekran z masą. Jeśli natomiast zakłócenia przechodzą po zasilaniu, musisz odfiltrować zasilanie FPV od zasilania regulatorów. Zwykła przetwornica zmniejszająca napięcie FPV powinna załatwić sprawę, jeśli nie, to w obwód wepnij jeszcze pasywny filtr LC który wytnie z zasilania większość zakłóceń o wysokich częstotliwościach. Możesz też spróbować przewlec przewód zasilający przez mały koralik ferrytowy (mały = lekki). W ostateczności system FPV można zasilić z osobnego akumulatorka całkowicie oddzielając go od zasilania modelu, a łącząc tylko w punkcie połączenia OSD z kontrolerem lotu przewodami GND TX i RX – lecz takie rozwiązania to już ostateczność i podwyższone ryzyko wypadku – np bateria FPV może skończyć się szybciej niż bateria modelu, choć i tą OSD może osobno monitorować i wyświetlać.

Jeśli posiadasz oscyloskop, warto sprawdzić jak wygląda zasilanie modelu w różnych punktach po zwiększeniu ciągu, będzie wiadomo co generuje największe zakłócenia i jakie to częstotliwości. Może być tak że zakłócenia generuje tylko jeden ESC który ma uszkodzony kondensator na wejściu – wtedy taką usterkę bardzo łatwo jest zawczasu wyeliminować. Całkiem możliwe że ESC będą lub będzie generować zakłócenia tylko przy danym wąskim zakresie ciągu, tak więc należałoby przetestować cały dostępny zakres regulacji ciągu obserwując monitor. Zakłócenia od ESC mogą też pojawić się dopiero przy słabym sygnale wideo, wada taka może wyjść dopiero podczas oblotu. W moim przypadku nie musiałem stosować żadnych dodatkowych filtrów czy koralików, obraz w ogóle nie jest zakłócany przez ESC.

Pomiar opóźnień

fpv_delay_msUdaj się na jakąkolwiek stronę ze stoperem online, taką, żeby pokazywała tysięczne części sekundy i żeby cyfry były duże i czytelne. Ustaw sprzęt tak jak na obrazku, i zrób zdjęcie – a najlepiej kilka, bo jeśli robisz je tak jak ja, ziemniakiem z androidem, to pewnie wyjdzie bardzo nieczytelne. Po środku mam obraz przechwytywany przez kartę wideo na którym widnieje końcówka 862, po lewej mam monitor fpv na którym widnieje końcówka 950, a po prawej okno przeglądarki z czasem 994 który jest najbardziej aktualny. Opóźnienie całego linku wideo to 44ms (około 1/20 sekundy) co jest wynikiem raczej normalnym, poruszając kamerą obraz na monitorze lcd wydaje się być w czasie rzeczywistym, a największa część tego opóźnienia występuje prawdopodobnie w samym ekranie. Opóźnienie obrazu przechwyconego kartą USB i wyświetlonego na ekranie komputera to już 132ms (około 1/7 sekundy) czyli trzy razy więcej – może w liczbach nie koniecznie to widać, ale w rzeczywistości samo przetwarzanie obrazu przez komputer powoduje że obraz porusza się z dosyć sporym opóźnieniem względem kamery, i na prawdę ciężko by się na tym latało. Jeśli teraz dodać do tego obraz z kamery typu Mobius która także wprowadza istotne opóźnienia, lot będzie na prawdę utrudniony i niebezpieczny. A transmisja cyfrowa np przez WiFi obarczona opóźnieniami 500ms, 1s, czy nawet większymi będzie mogła służyć jedynie do podglądu i wykadrowania ujęcia.

Pliki:
POBIERZ – Czcionka MCM dla MW OSD ze spolszczonym kompasem – patrz zdjęcie niżej



spolszczony_kompas

…multicoptery – spis wszystkich tematów

5.00 avg. rating (97% score) - 2 votes

6 komentarzy

  1. Andrzeej gross

    Pozdrawiam serdecznie mam pytanko do modułu minim osd posiadam identyczny ale ma jeszcze jakieś wolne pola z boku prawdopodobnie to gotowe wyjścia bez potrzeby wlutowywaniasię w ten układ ale mnie interesuje ten wolny pad do, mostkowania (pal) kamerke mam 3,3v wiec omijam pozostałe pady zasilanie podzielone. Czytałem i oglądałem ale nikt o tym niewspomina

    • Wybacz że musiałeś tyle czekać, odpisuję jak mam trochę czasu. I weny :)

      Te dodatkowe pola po boku to wejścia ADC, w zależności od płytki mogą być już z gotowymi rezystorami do dzielenia napięcia lub bez.

      Pad PAL nie jest już używany do wyboru pomiędzy PAL/NTSC, tego wyboru dokonuje się w konfiguratorze. Jest to napisane np. tutaj https://code.google.com/p/arducam-osd/wiki/minimosd

  2. Andrzeej gross

    Jedno zdanie i wszystko jasne z angielskim problem podstawowy był kiedyś rosyski ale to było dawno temu dobra robota te artykuły godna pochwały czekamy na pidy siedem heli w tym dwie spaliny jeden samolot jeden samochód jeden quad250 podobny zestaw drugi w budowie ramę sam buduje na wzór dji inspire między 450 a 500 serdecznie pozdrawiam.

  3. Grisza Misza

    Witam,
    mam takie pytanie, jakie masz napięcie na tym UBEC dokładnie 5V.
    Bo chciałem do swojego podłączyć UBEC 5,5V i zastanawiam się czy ma on taką tolerancję napięcia.

  4. Adam Ziętek

    Witam
    Proszę o pomoc, mam problem z obrazem w telefonie, chodzi o zakłócenia (aplikacja easycap viewer), w załączniku przesyłam zdjęcie które przedstawi o co chodzi. Dodam jeszcze ze zastosowałem filtr LC który nie pomógł. Jaka może być przyczyna takiego stanu ?

  5. Witam.
    Mam problem z moim OSD, mianowicie nie wyświetla się kompas.
    Zmieniłem firmware na mwOSD i skonfigurowałem go programem.
    Dodam tylko jeszcze że używam NAZE32 Rev6.

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *

Proszę pozostawić te dwa pola tak jak są: