Kontroler bez CPU jest możliwy, jeżeli zadanie zostanie zredukowane do tego, co daje się wyrazić napięciem, częstotliwością, znakiem różnicy i kilkoma stanami pamięci. Najbardziej realistycznym nośnikiem nie jest quadrocopter, lecz stateczny aerodynamicznie stałopłat z klasycznymi serwami. Elektronika analogowa tłumi prędkość przechyłu i pochylenia, powoli koryguje położenie, a osobny sekwencer sprawdza, czy ostatnia zmiana kierunku zwiększyła wybrany sygnał środowiskowy. Trzeci, niezależny tor porównuje temperaturę, ciśnienie i wilgotność z nastawionymi progami i generuje pojedynczy impuls migawki.

NE555 nie pełni w tej architekturze roli „procesora”. Wytwarza zegar, ramkę sygnału serwa, impulsy próbkujące i czas migawki. Obliczenia wykonują wzmacniacze operacyjne, komparatory, filtry RC, przełączniki analogowe oraz przerzutniki. Oznacza to zarazem, że każdy znak, zakres i warunek trzeba zbudować jawnie w sprzęcie. Nie istnieje firmware, który po montażu naprawi pomylone osie albo nieprzemyślaną logikę.

Co dokładnie ma robić demonstrator#

Projekt referencyjny zakłada lekki, spokojny stałopłat z lotkami, sterem wysokości i opcjonalnym sterem kierunku. Napęd utrzymuje stały, wcześniej ustawiony poziom ciągu albo pozostaje pod bezpośrednim sterowaniem odbiornika RC. Analogowy układ wykonuje cztery funkcje:

  1. tłumi szybkie obroty wokół osi roll i pitch na podstawie dwóch analogowych żyroskopów;
  2. z małym wzmocnieniem dąży do lotu poziomego na podstawie akcelerometru;
  3. dodaje niewielki, ograniczony bias do steru kierunku lub lotek, aby sprawdzać, czy manewr zwiększa zdefiniowany sygnał SCORE;
  4. robi jedno zdjęcie, gdy wybrane warunki środowiskowe są spełnione przez określony czas.
                   szybki tor 5–20 Hz
ADXRS646 roll ──> regulator rate ─┐
ADXL335 X ──────> wolne poziom. ──┼─> sumator ─> limiter ─> impuls serwa lotek
                                  │
                    bias misji ───┘

ADXRS646 pitch ─> regulator rate ─┐
ADXL335 Y ──────> wolne poziom. ──┼─> sumator ─> limiter ─> impuls serwa wysokości
                   wysokość ──────┘

temperatura ─┐
wilgotność ──┼─> normalizacja ─> SCORE ─> próbka A/B ─> wybór lewo/prawo
światło ─────┘

temperatura ─> próg T ─────┐
ciśnienie ───> próg h ─────┼─> AND + czas potwierdzenia ─> latch ─> 555 ─> migawka
wilgotność ──> próg RH ────┘

Tor misji nie zastępuje stabilizacji. TMP235 reagujący na temperaturę powietrza czy HS1101LF reagujący na wilgotność jest o rzędy wielkości wolniejszy od dynamiki płatowca. Podłączenie takiego sensora bezpośrednio do serwa tworzyłoby układ, który wykrywa zmianę dopiero po wykonaniu znacznej części manewru. Sygnał środowiskowy może przesuwać wartość zadaną stabilnego układu, ale nie może być jego jedynym sprzężeniem zwrotnym.

Dlaczego stałopłat, a nie quadrocopter#

Stateczny stałopłat ma pasywną dynamikę, która daje elektronice czas. Po krótkim zakłóceniu właściwie wyważony model zwykle nie odwraca się natychmiast; statecznik, wznios skrzydeł i położenie środka ciężkości wytwarzają momenty przywracające. Kontroler może więc pełnić rolę tłumika i powolnego korektora.

Quadrocopter jest statycznie niestateczny w orientacji. Cztery kanały ciągu wymagają szybkiego miksera, spójnych wyjść, niezawodnego stanu uzbrojenia i odpowiedzi na utratę sensora. Analogowy regulator wieloosiowy jest możliwy historycznie i laboratoryjnie, ale błąd jednego napięcia może natychmiast dać różne polecenia czterem ESC. Brak rejestracji stanu dodatkowo utrudnia strojenie. Dlatego opisany układ należy najpierw uruchamiać jako elektroniczne laboratorium i stanowisko serw, później jako szybowiec na uwięzi lub model bez napędu, a dopiero na końcu jako nieuzbrojony stałopłat z możliwością przejęcia przez pilota.

Więcej o samej dynamice zawierają artykuły Jak działa fixed-wing, Stateczność i sterowność UAV oraz Masa i środek ciężkości.

NE555, TLC555 i podział funkcji#

Klasyczny NE555 zawiera dwa komparatory o progach około 1/3 VCC i 2/3 VCC, przerzutnik, tranzystor rozładowujący oraz stopień wyjściowy. W trybie monostabilnym czas impulsu wynosi w typowej konfiguracji:

t ≈ 1,1 · R · C

W trybie astabilnym:

tHIGH ≈ 0,693 · (RA + RB) · C
tLOW  ≈ 0,693 · RB · C
f     ≈ 1,44 / ((RA + 2RB) · C)

Napięcie na wejściu CONT zmienia progi wewnętrznych komparatorów, dlatego można nim modulować szerokość impulsu. Dokumentacja TI wymienia wprost generatory PWM i modulatory położenia impulsu wśród zastosowań układu.[1]

Do latającej wersji lepszy jest TLC555I. Jest zgodny funkcjonalnie i pinowo z NE555, pracuje od niższego napięcia, ma wyjście CMOS i typowy prąd zasilania liczony w setkach mikroamperów. TI podkreśla również mniejsze impulsy prądu przy przełączaniu.[2] Bipolarny NE555 może chwilowo zakłócać wspólną szynę z czujnikiem, zwłaszcza na płytce stykowej z długimi przewodami. Wersję purystyczną można zbudować na NE555, ale wymaga ona co najmniej 100 nF bezpośrednio między VCC i GND każdego timera, dodatkowych 4,7–22 µF na grupę układów oraz oddzielenia zasilania sensorów rezystorem/ferrytem i lokalnym LDO.

Funkcja Zalecany element Liczba Dlaczego
ramka serw 50 Hz TLC555I 1 jeden wspólny zegar zmniejsza rozjazd kanałów
szerokość impulsu lotek TLC555I 1 wejście CONT przyjmuje analogowe polecenie
szerokość impulsu wysokości TLC555I 1 niezależny limiter i reset
opcjonalny ster kierunku TLC555I 1 kanał wolnego biasu misji
zegar sekwencera gradientu TLC555I 1 okres od kilku do kilkudziesięciu sekund
impuls migawki TLC555I 1 monostabilne 100–300 ms
wilgotność HS1101LF TLC555I 1 sensor jest kondensatorem oscylatora

TLC556 może zastąpić dwie obudowy 555, ale należy nadal odsprzęgać zasilanie i sprawdzić przesłuch między kanałami. Osobne układy są wygodniejsze na pierwszym prototypie, ponieważ każdy blok można odłączać i obserwować niezależnie.

Proponowana lista układów#

Poniższy BOM nie obejmuje ramy, napędu, odbiornika RC i mechaniki aparatu. Jest listą elektroniki dla wersji dwukanałowej z wolnym sterem kierunku.

Oznaczenie Model Rola Uwagi projektowe
U1–U7 TLC555IP albo TLC555ID timery i modulatory NE555P można użyć laboratoryjnie przy 5 V
U8, U9 ADXRS646 żyroskop roll i pitch po jednej osi na układ; wymaga szyny 6 V
U10 ADXL335BCPZ analogowy akcelerometr XYZ zasilanie 3,0 V, kondensator pasma na każdej osi
U11 MPX4115A/AP wysokość barometryczna analogowe ciśnienie bezwzględne, 5,1 V nominalnie
U12 TMP235A2DBZR temperatura lokalna VOUT = 0,5 V + 10 mV/°C · T
U13 HS1101LF wilgotność względna element pojemnościowy, nie gotowy moduł napięciowy
U14–U17 TLV9004ID bufory, różnice, sumatory i filtry RRIO, 1,8–5,5 V, cztery wzmacniacze w obudowie
U18, U19 TLV1704IPW progi, okna i decyzja gradientu wejścia rail-to-rail, otwarty kolektor
U20 REF3325 odniesienie VREF = 2,5 V nie zasila serw ani timerów
U21 CD4017BE sekwencer dziesięciu faz wyjścia one-hot Q0…Q9
U22, U23 CD4013BE kierunek poszukiwania i latch zdjęcia asynchroniczny reset wymagany przy starcie
U24 CD4081BE bramki AND łączenie warunków i impulsów fazowych
U25 CD74HC123E stały impuls próbkowania/F–V dwa monostabilne w jednej obudowie
U26–U29 TMUX1101DBV sample-and-hold i wybór biasu znacznie mniejszy upływ niż CD4066B
U30 TPS3839K50 lub właściwy wariant progowy reset przy złym zasilaniu wariant progu dobiera się do nadzorowanej szyny
U31 TPS7A2030 3,0 V dla ADXL335 niskie szumy i wysokie PSRR
U32 TPS63070 6,0 V dla ADXRS646 projekt layoutu dokładnie według datasheetu
U33 TLP222A lub aktualny PhotoMOS 1-Form-A izolowana migawka TLP222A ma ogłoszone EOL; do nowej serii dobrać następcę

TLV9004 ma wejście i wyjście rail-to-rail, pracuje od 1,8 do 5,5 V, a jego pasmo 1 MHz jest wystarczające dla regulatora modelu o paśmie rzędu pojedynczych–kilkunastu herców.[8] LM324 może zastąpić część wolnych stopni, ale jego wejście i wyjście nie obejmują obu szyn, ma większy błąd przy małym zasilaniu i wymaga przeliczenia wszystkich zakresów. Podobnie LM393B jest użyteczny, lecz zakres common-mode kończy się poniżej dodatniej szyny; TLV1704 upraszcza porównywanie sygnałów bliskich 5 V.[9]

Szyny zasilania i jedna masa sygnałowa#

Projekt ma trzy napięcia robocze:

akumulator 2S/3S
   ├── BEC 5,0 V / kilka A ──> serwa
   ├── filtr + 5,0 V analog ─> TLC555, TLV9004, logika, MPX4115A
   ├── TPS7A20-3.0 ──────────> ADXL335
   └── TPS63070 6,0 V ───────> dwa ADXRS646

REF3325 z 5 V ───────────────> VREF 2,500 V dla progów i sumatorów

Serwa nie mogą czerpać impulsowego prądu przez tę samą wąską ścieżkę, która jest punktem odniesienia komparatorów. Masa powinna być ciągłą płaszczyzną, ale prąd serw wraca osobnym szerokim odgałęzieniem do punktu wejścia BEC. Nie należy „rozciąć masy analogowej” i prowadzić sygnałów nad szczeliną. Chodzi o kontrolę tras prądu, a nie o utworzenie dwóch przypadkowo połączonych wysp.

Na każdym układzie znajduje się 100 nF; przy ADXRS646 stosuje się komplet kondensatorów pompy ładunku i filtrów dokładnie z datasheetu.[3] Na wejściu każdej gałęzi analogowej warto dodać 10 Ω + 10 µF + 100 nF, ale spadek na rezystorze trzeba policzyć dla maksymalnego prądu. MPX4115A dokumentuje lokalne 1,0 µF i 10 nF przy zasilaniu/wyjściu.[5]

REF3325 daje precyzyjne 2,5 V, lecz jego maksymalny prąd wyjściowy jest mały. Należy go odsprzęgnąć zgodnie z datasheetem i zbuforować jednym kanałem TLV9004. Z bufora powstaje wspólna sieć VREF_BUF dla potencjometrów, sumatorów i wirtualnego zera. Obciążenie bezpośrednio zmieniające napięcie referencji jednocześnie przesunęłoby progi temperatury, wilgotności, sterów i migawki.[10]

Przetwornica 6 V dla ADXRS646 musi znajdować się z dala od wejść RATEOUT i kondensatorów sample-and-hold. TPS63070 przyjmuje szeroki zakres napięcia wejściowego, ale jest przetwornicą impulsową; jej węzeł przełączający, induktor i gorąca pętla wymagają zwartego layoutu.[18] Jeżeli platforma używa stabilnego 3S, prostszy może być osobny buck 6 V zamiast buck-boost. Nie wolno zasilać ADXRS646 z nominalnego „6 V BEC”, który podczas ruchu serw wychodzi poza zakres 5,75–6,25 V wymagany przez sensor.[3]

Szybki pomiar obrotu: dwa ADXRS646#

ADXRS646 jest jednoosiowym analogowym żyroskopem prędkości kątowej. Jeden układ montuje się osią czułą równolegle do osi roll, drugi do pitch. Producent podaje nominalny punkt zerowy 3,0 V przy VRATIO = 6 V, czułość typową 9 mV/(°/s), zakres co najmniej ±250°/s i regulowane pasmo przez kondensator COUT współpracujący z wewnętrznym rezystorem 180 kΩ.[3]

fOUT = 1 / (2π · 180 kΩ · COUT)

Dla około 20 Hz wychodzi COUT ≈ 44 nF; wartość 47 nF jest dobrym początkiem. Dla 10 Hz potrzeba około 88 nF, czyli standardowo 82–100 nF. Nie należy od razu wybierać pasma setek herców: konstrukcja nie wykorzysta go, natomiast regulator zobaczy drgania napędu i szum.

Ponieważ RATEOUT i jego punkt zerowy są ratiometryczne względem VRATIO, wygodne jest ustawienie VRATIO = 5,0 V, przy pozostawieniu AVCC i VDD = 6,0 V. Wtedy nominalne zero przesuwa się w pobliże 2,5 V, a czułość skaluje się proporcjonalnie do około 7,5 mV/(°/s). To należy potwierdzić pomiarem konkretnego egzemplarza; datasheet wymaga, aby VRATIO nie przewyższało AVCC.[3]

Każdy tor żyroskopu ma:

  1. bufor RATEOUT o bardzo małym obciążeniu;
  2. potencjometr wieloobrotowy 20 kΩ tworzący GYRO_ZERO wokół VREF_BUF;
  3. wzmacniacz różnicowy V_RATE_ERR = G · (GYRO_ZERO − RATEOUT);
  4. ograniczenie amplitudy przed sumatorem serwa.

Przy Rf = 100 kΩ i Rin = 110 kΩ wzmocnienie wynosi około 0,91. Obrót 60°/s daje przy czułości 7,5 mV/(°/s) zmianę 450 mV, a regulator wnosi około 410 mV korekty. To jest wartość startowa do stanowiska, nie gotowa nastawa lotna. Znak sprawdza się ręcznie: obrót prawego skrzydła w dół musi wywołać polecenie lotki podnoszącej prawe skrzydło. Jeżeli znak jest odwrotny, zamienia się wejścia stopnia różnicowego; nie „naprawia” tego mechanicznym odwróceniem tylko jednego serwa bez ponownej analizy całej osi.

ADXRS646 ma wejścia self-test. W laboratorium można krótkim sygnałem sprawdzić, czy RATEOUT zmienia się w oczekiwaną stronę. Self-test nie powinien być wykonywany podczas normalnego sterowania, ponieważ celowo symuluje obrót i regulator poruszy sterem.

Wolne poziomowanie: ADXL335#

ADXL335 daje trzy analogowe wyjścia, nominalnie około 1,5 V przy 0 g i z czułością około 300 mV/g przy zasilaniu 3 V.[4] Nie jest cyfrowym IMU i nie podaje kąta. W locie mierzy sumę grawitacji, przyspieszeń manewru, drgań i przyspieszenia dośrodkowego. Dlatego może tworzyć jedynie bardzo wolną składową „powrotu do poziomu”.

Na każdym wyjściu należy zamontować kondensator pasma. ADI podaje:

f-3dB = 1 / (2π · 32 kΩ · C)

C = 0,47 µF daje około 10 Hz, 4,7 µF około 1 Hz, a 10 µF około 0,5 Hz.[4] Dla poziomowania stałopłata sensowny start to foliowe lub dobre ceramiczne 2,2–4,7 µF, po sprawdzeniu mikrofonowania i tolerancji. Żyroskop obsługuje szybką dynamikę; akcelerometr ma korygować długoterminowe odchylenie, nie walczyć z każdym podmuchem.

Tor poziomowania jest drugim wejściem sumatora:

V_LEVEL = KLEVEL · (ACC_ZERO − AXIS_OUT)

Przy przechyleniu 10° składowa grawitacji wynosi około sin(10°) = 0,174 g, czyli zmiana wyjścia około 52 mV. Wzmocnienie 1–2 daje korektę 50–100 mV, wyraźnie mniejszą od szybkiego toru rate. Rezystory Rf = 100 kΩ, Rin = 100 kΩ są zachowawczym początkiem. Zbyt duże KLEVEL powoduje pompowanie wysokości i reakcję na zakręt skoordynowany tak, jakby był błędem przechyłu.

Punkt ACC_ZERO ustawia się przy wypoziomowanym płatowcu, po rozgrzaniu elektroniki. Nie zakłada się dokładnie 1,500 V, ponieważ datasheet dopuszcza rozrzut biasu. Potencjometr służy do kalibracji egzemplarza, a nie do maskowania niewłaściwego montażu sensora.

Sumator analogowy zamiast cyfrowego PID#

Dla każdej osi potrzebny jest sumator przesunięty względem VREF_BUF:

U = VREF
    + Krate  · (RATE_ZERO − RATEOUT)
    + Klevel · (ACC_ZERO  − ACCOUT)
    + Kmission · (MISSION_BIAS − VREF)
    + Kpilot · (RC_CMD − RC_CENTER)

Najprościej zbudować osobno różnice względem punktów zerowych, a potem wprowadzić je rezystorami do odwracającego sumatora TLV9004. Nota TI AN-20 opisuje wzmacniacz różnicowy, sumujący, integrator, praktyczny różniczkujący i filtry wraz z ich ograniczeniami.[19]

Pełny analogowy PID nie jest tu najlepszym pierwszym wyborem:

  • człon P na prędkości kątowej daje bezpośrednie tłumienie;
  • wolny sygnał akcelerometru pełni rolę przywracającą położenie;
  • czysty integrator nasyci się podczas długiego skrętu, postoju na ziemi albo oparcia steru o ogranicznik;
  • idealny różniczkujący wzmacnia szum; TI wprost ostrzega przed wzrostem wzmocnienia z częstotliwością i zaleca ograniczony „praktyczny różniczkujący”.[19]

Jeżeli po testach potrzebna jest całka, stosuje się „leaky integrator”: kondensator 1 µF równolegle z rezystorem 1 MΩ w sprzężeniu i rezystor wejściowy 220 kΩ. Stała upływu rzędu sekundy zapobiega nieograniczonemu zapamiętywaniu błędu. Dodatkowy TMUX1101 zwiera kondensator, gdy układ jest rozbrojony lub sensor nieważny.

Ogranicznik polecenia#

Wyjście sumatora nie może dowolnie przesuwać szerokości impulsu serwa. Dwa komparatory TLV1704 tworzą okno U_MINU_MAX; poza nim przełączniki analogowe wybierają stałe napięcie graniczne. Prostszą wersją jest para diod Schottky do dwóch buforowanych referencji, ale spadek diody zależy od prądu i temperatury.

W wersji z komparatorami:

U < UMIN  -> wybierz UMIN
UMIN≤U≤UMAX -> wybierz U
U > UMAX  -> wybierz UMAX

Progi zaczynają się od zakresu odpowiadającego mniej więcej 1,2–1,8 ms, a dopiero po sprawdzeniu mechanicznych wychyleń rozszerza się je do dopuszczalnego zakresu. Limiter jest również miejscem wprowadzenia przejęcia RC: pozycja przełącznika MANUAL odłącza sumator i kieruje polecenie pilota do generatora serwa.

Generowanie sygnału dla klasycznego serwa#

Klasyczne serwo oczekuje cyklicznego impulsu, zwykle w pobliżu 1–2 ms, powtarzanego około 50 Hz. Dokładny zakres i dopuszczalną częstotliwość należy sprawdzić dla konkretnego serwa; napięcie zasilania i prąd zablokowanego mechanizmu są osobnymi parametrami.[24]

Wspólna ramka 50 Hz#

Jeden TLC555 pracuje astabilnie:

VCC = 5,0 V
RA  = 27 kΩ
RB  = 130 kΩ
C   = 100 nF

T ≈ 0,693 · (27 kΩ + 2·130 kΩ) · 100 nF ≈ 19,9 ms

Zbocze ramki przechodzi przez układ różniczkujący 1 nF + 10 kΩ, diodę ograniczającą i bramkę Schmitta, aby powstał czysty, krótki impuls aktywny w stanie niskim dla wejścia TRIG wszystkich monostabilnych timerów kanałowych. Nie należy wyzwalać ich długim poziomem z astabilnego 555, ponieważ wejście pozostające poniżej progu może zaburzać zakończenie cyklu.

Szerokość sterowana wejściem CONT#

Każdy kanał serwa jest TLC555 w trybie monostabilnym z R = 30,1 kΩ, C = 47 nF. Przy zmienionym napięciu control przybliżony czas ładowania kondensatora do VCONT wynosi:

t = −R·C · ln(1 − VCONT/VCC)

Dla R·C ≈ 1,415 ms i VCC = 5 V:

VCONT szerokość obliczona
2,53 V około 1,00 ms
3,26 V około 1,50 ms
3,78 V około 2,00 ms

To są wartości nominalne. Tolerancja C, opóźnienia progów i dryft wymagają kalibracji oscyloskopem. VCONT dostaje 10 nF do masy tylko wtedy, gdy nie ogranicza pasma polecenia; przy sterze wystarczy pasmo kilkunastu herców. Wyjście 555 łączy się z przewodem sygnałowym serwa przez 220 Ω; 10 kΩ do masy utrzymuje niski stan przy odłączonym sterowniku.

Wejścia RESET wszystkich generatorów kanałowych są połączone z linią OUTPUT_ENABLE. TPS3839 utrzymuje ją nieaktywną podczas narastania zasilania, a przełącznik fizyczny i sygnał awarii mogą wymusić reset. Po zaniku zasilania analogowego serwa nie mogą dostać przypadkowego długiego impulsu.

Barometr analogowy MPX4115A#

MPX4115A mierzy ciśnienie bezwzględne 15–115 kPa i daje wysoki poziom analogowy. NXP podaje nominalną zależność:[5]

VOUT = VS · (0,009 · P[kPa] − 0,095)

Przy VS = 5,1 V i P = 101,325 kPa otrzymujemy około 4,17 V. Czułość wynosi około 45,9 mV/kPa. W pobliżu poziomu morza gradient hydrostatyczny to około 12 Pa/m, zatem zmiana wyjścia jest rzędu 0,55 mV/m. Sto metrów różnicy wysokości daje tylko około 55 mV — wartość łatwo porównywalną z błędami montażu, zasilania i dynamicznego ciśnienia.

Sensor ma deklarowany maksymalny błąd ciśnienia rzędu ±1,5 kPa w podstawowym zakresie temperatury, więc nie jest precyzyjnym wysokościomierzem bez kalibracji.[5] W projekcie analogowym służy do szerokiego progu lub utrzymywania pasa wysokości, nie do fotografii na dokładnie 123 m AGL.

Port powinien widzieć ciśnienie statyczne. Umieszczenie go w strudze śmigła albo skierowanie otworu do przodu dodaje ciśnienie dynamiczne zależne od prędkości. Krótki przewód do komory statycznej, osłona przed światłem i odpływ kondensatu są ważniejsze niż dodatkowe cyfry na potencjometrze.

Próg wysokości#

Wzrost wysokości oznacza spadek V_PRESS. Warunek „powyżej wysokości” jest więc logicznie prawdziwy, gdy:

V_PRESS < V_ALT_THRESHOLD

TLV1704 pracuje jako komparator odwracający, z V_PRESS na wejściu ujemnym lub dodatnim zależnie od oczekiwanej polaryzacji wyjścia. Wyjście open-collector wymaga rezystora 10 kΩ do 5 V. Do wejścia dodaje się filtr 100 kΩ + 10 µF o stałej około sekundy i histerezę. Bez niej turbulencja w pobliżu progu wywoła wiele przejść.

Najpraktyczniej ustawić próg na ziemi z pomocą woltomierza i znanego ciśnienia. Dla względnej zmiany można zastosować wieloobrotowy potencjometr 20 kΩ między dwiema buforowanymi referencjami obejmującymi spodziewane V_PRESS, zamiast potencjometru 0–5 V o zbyt małej użytecznej części obrotu. Przykładowo zakres 3,7–4,3 V tworzą dwa dzielniki i wtórniki, a potencjometr wybiera wartość pomiędzy nimi.

Temperatura: TMP235#

TMP235 ma dodatnią, liniową charakterystykę:

VOUT = 0,500 V + 0,010 V/°C · T

20°C daje około 0,700 V, 30°C około 0,800 V, a 50°C około 1,000 V. Układ pobiera typowo tylko kilka mikroamperów i pracuje z zasilaniem 2,3–5,5 V.[6]

Sensor mierzy temperaturę własnej obudowy. Na płytce obok regulatora, przetwornicy i nasłonecznionej czarnej osłony nie reprezentuje temperatury powietrza. Należy umieścić go na małej, jasnej płytce poza ciepłą komorą, osłoniętej od bezpośredniego słońca i deszczu, ale wentylowanej. Nie może znajdować się w ciepłym wylocie BEC ani bezpośrednio w strudze silnika.

Tor progu T ≥ TSET jest prosty: TMP235 trafia przez 10 kΩ i 1 µF na wejście komparatora, drugie wejście dostaje regulowane 0,6–1,1 V. Dla zakresu 10–60°C odpowiada to całemu użytecznemu zakresowi. Potencjometr 10 kΩ wieloobrotowy pomiędzy 0,6 V i 1,1 V pozwala precyzyjnie nastawić temperaturę; punkty krańcowe tworzą dzielniki z REF3325 i bufory.

Jeżeli potrzebna jest korekcja wilgotności lub barometru temperaturą, osobny wzmacniacz może przesunąć ich progi proporcjonalnie do V_TEMP. Nie należy jednak dopisywać tej funkcji przed zebraniem pomiarów w komorze środowiskowej — znak i wielkość korekcji muszą pochodzić z charakterystyki konkretnego sensora.

Wilgotność: HS1101LF i timer 555#

HS1101LF nie daje napięcia. Jest pojemnościowym elementem, którego typowa pojemność wynosi około 180 pF przy 55% RH, a średnia czułość w środkowym zakresie około 0,31 pF/% RH. Dokumentacja podaje nieliniową krzywą i pokazuje bezpośrednio układ oscylatora 555, w którym sensor jest kondensatorem czasowym.[7]

Wariant producenta używa rezystorów w przybliżeniu 499 kΩ i 49,9 kΩ; dokładne oznaczenia oraz połączenie należy przenieść z aktualnego rysunku aplikacyjnego konkretnej rewizji datasheetu. Pojemność rośnie z wilgotnością, więc częstotliwość astabilnego 555 maleje:

RH rośnie -> CHS rośnie -> okres rośnie -> częstotliwość maleje

Nie wolno mierzyć HS1101LF napięciem stałym ani obciążać agresywnym przebiegiem. Producent charakteryzuje element przy sygnale AC i określonej częstotliwości. Obudowa sensora ma również wskazane połączenie ekranu/masy; długi nieekranowany przewód doda pojemność porównywalną ze zmianą wywołaną wieloma procentami RH.

Zamiana częstotliwości na napięcie bez MCU#

Wyjście oscylatora wilgotności wyzwala jeden kanał CD74HC123. Monostabilny wytwarza impuls o stałej szerokości:

tW ≈ 0,45 · RX · CX    przy 5 V

TI podaje tę zależność oraz minimalny typowy RX = 5 kΩ.[11] Dla RX = 22 kΩ, CX = 4,7 nF impuls ma około 46,5 µs. Gdy impulsy się nie nakładają, filtr dolnoprzepustowy uśrednia ich wypełnienie:

V_HUM ≈ VCC · fHUM · tW

Jeżeli częstotliwość wynosi 7 kHz, otrzymujemy około 1,63 V. Wzrost wilgotności obniża częstotliwość i V_HUM. Filtr 10 kΩ + 10 µF daje stałą 0,1 s; dla rzeczywistego sensora można użyć 100 kΩ + 10 µF, bo jego odpowiedź i tak jest wielosekundowa. Bufor TLV9004 izoluje filtr od komparatora i sumatora SCORE.

Alternatywą jest gotowy analogowy transducer HM1520LF oparty na rodzinie HS1101, jeżeli jego zakres i dostępność odpowiadają projektowi. Historyczny Honeywell HIH-5030 dawał napięcie analogowe bez oscylatora, ale jest oznaczany przez dystrybutorów jako wycofany; nie warto projektować nowej płytki wokół niepewnej dostawy.

Wilgotność względna silnie zależy od temperatury. Wlot sensora ogrzany elektroniką pokaże niższe RH mimo tej samej ilości pary wodnej. Dwa sensory przeznaczone do porównania lewo/prawo muszą mieć jednakowe osłony, przepływ i temperaturę. W przeciwnym razie układ „podąża” za różnicą ogrzewania, nie za polem wilgotności.

Jak zdefiniować sygnał, za którym dron podąża#

Pojedynczy pomiar temperatury albo wilgotności nie zawiera kierunku. Informacja T = 28°C nie mówi, czy cieplej jest z lewej, z prawej, przed czy za samolotem. Kierunek można odzyskać na dwa sposoby.

Para przestrzenna#

Dwa jednakowe sensory są rozdzielone mechanicznie i porównywane:

E_DIR = S_LEFT − S_RIGHT

To działa najlepiej dla światła, promieniowania albo źródła, które daje wyraźny gradient na rozstawie czujników. Dwie fotodiody BPW34 z przegrodą optyczną i dwoma identycznymi wzmacniaczami transimpedancyjnymi mogą dać praktyczny sygnał kierunku. Dla temperatury powietrza i RH różnica na rozstawie kilkudziesięciu centymetrów bywa mniejsza niż mismatch sensorów i zakłócenie przepływem.

Porównanie w czasie#

Pojedynczy sensor może ocenić, czy ostatni kontrolowany manewr poprawił wynik. Jest to sprzętowa odmiana poszukiwania ekstremum:

  1. zapamiętaj S_OLD;
  2. zastosuj mały bias steru w aktualnym kierunku;
  3. poczekaj na odpowiedź płatowca i sensora;
  4. zapamiętaj S_NEW;
  5. jeżeli S_NEW > S_OLD + deadband, zachowaj kierunek;
  6. jeżeli wynik się pogorszył, odwróć kierunek biasu.

Układ nie zna pozycji ani mapy. Może wejść w lokalne maksimum, krążyć przy płaskim gradiencie albo zostać oszukany przez zmianę w czasie. Z tego powodu bias musi być mały i ograniczony, a pilot musi mieć możliwość natychmiastowego przejęcia.

Normalizacja i ważona funkcja SCORE#

Sygnały mają różne polaryzacje:

  • TMP235: cieplej oznacza wyższe napięcie;
  • MPX4115A: wyżej oznacza niższe napięcie;
  • HS1101LF po opisanym F–V: wilgotniej oznacza niższe napięcie;
  • fotodioda: polaryzacja zależy od konfiguracji wzmacniacza.

Każdy tor najpierw przekształca się do wspólnej konwencji „więcej jest lepiej” i zakresu około 1–4 V. Następnie sumator tworzy:

SCORE = VREF
      + wT  · (VTEMP − VT0)
      + wH  · (VH0 − VHUM)
      + wL  · (VLIGHT − VL0)
      + wA  · (VALT − VA0)

Wagi realizują rezystory wejściowe. Przy wspólnym Rf = 100 kΩ wejście 100 kΩ ma wagę 1, 200 kΩ wagę 0,5, a 50 kΩ wagę 2. Każda gałąź powinna mieć stały rezystor szeregowy ograniczający maksymalne wzmocnienie i potencjometr wieloobrotowy do strojenia. Wyłączenie sensora nie może zostawiać wejścia w powietrzu; przełącznik wybiera wtedy jego punkt neutralny.

Wysokość lepiej prowadzić osobną pętlą okienkową niż maksymalizować bez końca. Jeśli dodatnia waga wysokości pozostanie w SCORE, „lepszy wynik” będzie oznaczał ciągłe wznoszenie aż do ograniczenia mechanicznego lub energetycznego. Rozsądna funkcja misji maksymalizuje temperaturę/wilgotność/światło, ale ciśnienie wykorzystuje do utrzymania dozwolonego pasa wysokości.

Sprzętowy sekwencer poszukiwania gradientu#

TLC555 wytwarza wolny zegar. Dla RA = 330 kΩ, RB = 2,7 MΩ, C = 1 µF okres wynosi około 4 s. Kondensator elektrolityczny może mieć duży upływ i tolerancję; do powtarzalnego sekwencera lepszy jest kondensator foliowy albo większe rezystory z TLC555 CMOS. Dokładna sekunda nie jest ważna, ważne jest rozdzielenie faz.

CD4017B przesuwa stan aktywny kolejno przez Q0…Q9 przy każdym dodatnim zboczu zegara.[12] Przykładowa sekwencja:

Faza Czynność
Q0 skopiuj bieżący SCORE do HOLD_OLD
Q1–Q2 utrzymuj aktualny bias i czekaj na manewr
Q3–Q5 dalsze oczekiwanie na wolny sensor
Q6 skopiuj SCORE do HOLD_NEW
Q7 uaktywnij porównanie NEW − OLD
Q8 jeśli wynik gorszy, przełącz przerzutnik kierunku
Q9 zaktualizuj OLD, po czym licznik wraca do Q0

Przy zegarze 4 s pełna ocena trwa 40 s. Dla TMP235 może to wystarczyć, dla osłoniętego sensora wilgotności należy dobrać czas na podstawie odpowiedzi zmierzonej w rzeczywistym przepływie. Skrócenie cyklu do 5 s tylko dlatego, że układ na stole szybciej miga, powoduje sterowanie odpowiedzią filtra, a nie środowiskiem.

Pamięć sample-and-hold#

Każda próbka ma przełącznik TMUX1101, kondensator 1 µF foliowy i wtórnik TLV9004:

SCORE ── TMUX1101 ──┬──> TLV9004 buffer ──> HOLD_OLD
                    |
                   1 µF
                    |
                   GND

Drugi identyczny blok tworzy HOLD_NEW. TMUX1101 ma bardzo mały upływ i niewielki ładunek wstrzykiwany, dzięki czemu jest znacznie lepszy do tej roli niż stary CD4066B.[15] 100 Ω między przełącznikiem a kondensatorem ogranicza impuls ładowania. Po otwarciu przełącznika prąd biasu bufora i upływ kondensatora nadal powodują dryft, dlatego czas przechowywania należy zmierzyć.

Impulsy Q0 i Q6 mogą być zbyt długie — trwają cały okres zegara. CD74HC123 formuje z ich zboczy impulsy próbkujące 10–50 ms. Dla RX = 100 kΩ, CX = 1 nF zależność 0,45 RC daje około 45 µs, a dla CX = 100 nF około 4,5 ms; rzeczywisty czas sprawdza się z tabelami datasheetu.[11]

Decyzja i pamięć kierunku#

Wzmacniacz różnicowy oblicza:

DELTA = HOLD_NEW − HOLD_OLD

Komparator TLV1704 z histerezą uznaje poprawę dopiero po przekroczeniu +DEADBAND. Przykładowy deadband 20 mV musi być większy od łącznego szumu, wstrzyknięcia ładunku i dryftu obu pamięci. Zbyt mały próg losowo przełącza kierunek; zbyt duży ignoruje realny gradient.

Wyjście WORSE jest bramkowane sygnałem Q8 przez CD4081. Powstałe zbocze zegarowe przełącza CD4013 skonfigurowany jako toggle (D = /Q). Q wybiera przez dwa przełączniki analogowe VREF + ΔV albo VREF − ΔV. Początkowo ΔV powinno odpowiadać zaledwie kilku procentom zakresu steru. CD4013 posiada asynchroniczny reset, więc po włączeniu zasilania kierunek jest zawsze znany.[13][14]

Utrzymywanie pasa wysokości#

Zamiast maksymalizować wysokość stosuje się detektor okienkowy z dwoma progami ciśnienia:

V_PRESS > V_LOW_ALT  -> jesteś za nisko  -> mały bias nose-up
V_PRESS < V_HIGH_ALT -> jesteś za wysoko -> mały bias nose-down
pomiędzy progami     -> bias wysokości = 0

Nazwy napięć bywają mylące, bo większa wysokość oznacza mniejsze napięcie. Progi warto na schemacie nazywać fizycznie PRESSURE_AT_FLOOR i PRESSURE_AT_CEILING, a nie HIGH/LOW bez kontekstu.

Dwa komparatory TLV1704, bramki i trzy przełączniki analogowe wybierają VREF + ΔELEV, VREF albo VREF − ΔELEV. Każdy komparator ma własną histerezę, a cały tor filtr rzędu kilku sekund. Bias jest dodawany przed limiterem regulatora pitch, więc szybki żyroskop nadal może go skontrować podczas podmuchu.

Matryca progów wyzwalająca migawkę#

Wyzwalanie zdjęcia powinno być niezależne od algorytmu podążania za gradientem. Każdy warunek daje czysty sygnał logiczny:

TEMP_OK     = VTEMP  > VT_SET
HUM_OK      = VHUM   < VH_SET       (dla opisanej polaryzacji F–V)
ALT_OK      = VPRESS < VP_SET
RATE_OK     = |VGYRO_ROLL−ZERO| < okno  AND  |VGYRO_PITCH−ZERO| < okno
ARMED       = przełącznik fizyczny
NOT_TAKEN   = /PHOTO_TAKEN

Końcowy warunek:

PHOTO_REQUEST = TEMP_OK · HUM_OK · ALT_OK · RATE_OK · ARMED · NOT_TAKEN

CD4081 zawiera cztery dwuwejściowe bramki AND; większą liczbę warunków łączy się kaskadowo.[14] Jeżeli warunek ma być opcjonalny, przełącznik wybiera jego wynik albo stałą logiczną 1. Nie wolno pozostawiać wejścia CMOS niepodłączonego.

Histereza i czas potwierdzenia#

Każdy wolny próg ma histerezę. TI pokazuje przykładowy komparator, w którym dodatnie sprzężenie zwrotne tworzy osobny próg włączenia i wyłączenia; wartości rezystorów zależą od napięcia odniesienia, poziomów wyjściowych oraz wymaganej szerokości okna.[20] Dla wyjścia open-collector rezystor podciągający musi być uwzględniony w obliczeniach.

Po złączeniu warunków sygnał przechodzi przez filtr potwierdzający, np. 1 MΩ + 10 µF, a dopiero kolejny komparator uznaje go za ważny. Lepszy, przewidywalny wariant używa 555: PHOTO_REQUEST uruchamia monostabilny „qualification timer”, którego wyjście staje się aktywne dopiero, jeśli żądanie nie zniknie przez 2–5 s. Zwykły RC nie odróżnia krótkich przerw od ciągłego spełnienia warunku tak precyzyjnie.

PHOTO_TAKEN jest zatrzaskiem CD4013. Zbocze poprawnego żądania ustawia Q, a Q blokuje następne zdjęcia. Reset następuje tylko fizycznym przyciskiem po wylądowaniu albo przejściem przełącznika ARM przez pozycję RESET. Dzięki temu oscylacja temperatury wokół progu nie tworzy serii ekspozycji.

Impuls i elektryczny interfejs migawki#

Osobny TLC555 generuje impuls:

R = 180 kΩ
C = 1 µF
t ≈ 1,1 · 180 kΩ · 1 µF ≈ 198 ms

Tolerancja kondensatora nie jest krytyczna; aparat interpretuje to jak naciśnięcie przycisku. Wejście RESET timera jest utrzymywane nisko, dopóki ARMED i POWER_GOOD nie są prawdziwe.

Najbezpieczniejszy interfejs do aparatu z gniazdem remote jest bezpotencjałowy. Wyjście 555 steruje LED fotoprzekaźnika przez rezystor. Dla 5 V, spadku LED około 1,2 V i prądu 5 mA:

RLED ≈ (5 V − 1,2 V) / 5 mA ≈ 760 Ω

Standardowa wartość 750 Ω jest punktem startowym, ale trzeba ją sprawdzić względem wymaganego prądu konkretnego PhotoMOS. TLP222A ma wyjście MOSFET 1-Form-A, maksymalny próg prądu LED 3 mA, rezystancję włączenia do 2 Ω i izolację galwaniczną; Toshiba ogłosiła jednak koniec życia tego modelu, więc do produkcji trzeba wybrać aktualny odpowiednik o małym prądzie LED i wyjściu normalnie otwartym.[21]

Styki PhotoMOS łączy się równolegle do fizycznego przycisku migawki lub między linię SHUTTER i COMMON złącza remote. Jeżeli aparat ma osobną linię FOCUS, drugi fotoprzekaźnik może zamknąć ją 200–500 ms wcześniej, a sekwencer CD74HC123 wytwarza dwa przesunięte impulsy. Pinoutu nie wolno zgadywać na podstawie kształtu wtyczki; ustala się go w instrukcji aparatu i omomierzem na oryginalnym pilocie odłączonym od aparatu.

Telefon i zasada selfie sticka#

Przewodowy selfie stick zwykle zwiera przez określoną rezystancję tor mikrofonowy zestawu słuchawkowego, co telefon interpretuje jako przycisk. Najmniej ryzykowna metoda nie próbuje odtwarzać uniwersalnej rezystancji: kupiony, działający z danym telefonem przycisk rozbiera się, a PhotoMOS łączy równolegle do jego styków. Wtedy adapter zachowuje fabryczną sieć rezystorów, standard CTIA/OMTP i kompatybilność konkretnego modelu.

Wariant bezprzewodowy wymaga już cyfrowego modułu BLE HID. Oficjalny przykład ST dla STM32WB realizuje pilot selfie jako urządzenie HID wysyłające klawisz głośności, a Android udostępnia m.in. zdarzenie KEYCODE_CAMERA.[22][23] Taki moduł może otrzymać z kontrolera tylko pojedynczy sygnał GPIO. Sam analogowy autopilot pozostaje bez CPU, ale adapter aparatu zawiera gotowy, osobny układ cyfrowy.

Punkty nastawcze i panel serwisowy#

Potencjometry bez skali są trudne do odtworzenia. Na płytce warto wyprowadzić punkty testowe:

Punkt Znaczenie Oczekiwany zakres
TP1 5V_ANALOG 4,95–5,05 V według projektu
TP2 VREF_BUF około 2,500 V
TP3/TP4 zera gyro roll/pitch około 2,5 V przy VRATIO 5 V
TP5/TP6 błędy rate około VREF w spoczynku
TP7/TP8 ADXL X/Y około 1,5 V w odpowiedniej orientacji
TP9 MPX4115A zwykle około 3,8–4,3 V przy ziemi
TP10 TMP235 około 0,7–0,9 V w typowym otoczeniu
TP11 oscylator HS1101LF przebieg kilku kHz
TP12 V_HUM po F–V skalibrowane około 1–3 V
TP13 SCORE ograniczone do bezpiecznego zakresu
TP14/TP15 HOLD_OLD/NEW różnica oceniana w mV
TP16 MISSION_BIAS VREF ± niewielki krok
TP17–TP19 polecenia serw napięcie control 555
TP20 PHOTO_REQUEST logika 0/5 V
TP21 SHUTTER_PULSE około 200 ms

Potencjometry dzielą się na trzy klasy i powinny mieć różne kolory lub mechaniczne zabezpieczenia:

  • ZERO: kalibracja sensora, normalnie plombowana;
  • GAIN: strojenie regulatora, zmieniane tylko na stanowisku;
  • SET: progi misji, dostępne przed lotem.

Regulacja progu nie może mechanicznie poruszać zerem żyroskopu. Wibracja suwaka potencjometru w torze rate jest realnym uszkodzeniem, dlatego zera i gain po strojeniu lepiej realizować rezystorami stałymi albo trimmerami wieloobrotowymi dobrej jakości.

Zachowanie przy awarii#

Układ bez oprogramowania nadal potrzebuje zdefiniowanych stanów awaryjnych.

Awaria Wymagana reakcja sprzętowa
5 V poza zakresem RESET wszystkich timerów wyjściowych, migawka otwarta
brak 6 V gyro komparator POWER_GYRO_OK blokuje tryb AUTO
RATEOUT przy szynie okno sensor-valid blokuje AUTO
rozłączony potencjometr rezystory stałe wymuszają stan neutralny, nie wejście floating
brak impulsów ramki serwo przestaje dostawać polecenia; pilot przejmuje przez bypass
zawieszony sekwencer bias misji ograniczony, stabilizacja nadal działa
kondensacja na HS1101LF HUM_OK nie może samodzielnie wyzwolić zdjęcia
reset podczas zdjęcia PHOTO relay domyślnie otwarty

TPS3839 może utrzymywać reset przez około 200 ms po powrocie prawidłowego zasilania, zależnie od wariantu.[16] Należy dobrać próg do konkretnej szyny; nazwa rodziny nie gwarantuje progu 5 V. Osobny detektor 6 V dla żyroskopów może korzystać z TLV1704 i REF3325.

Przejęcie manualne powinno być elektrycznym bypass-em, nie tylko bramką w torze analogowym. Przekaźnik lub odpowiednio dobrany multiplekser wybiera sygnał odbiornika RC albo analogowego generatora. Po zaniku zasilania cewki preferowany stan ma prowadzić do sterowania ręcznego. Zachowanie konkretnego serwa po utracie impulsów należy sprawdzić — różne modele zatrzymują pozycję, wiotczeją albo realizują własny failsafe.

Rozmieszczenie sensorów#

Żyroskopy i ADXL335 montuje się blisko środka ciężkości na sztywnej części płatowca. Miękka gąbka może odizolować część wysokich drgań, ale tworzy własny rezonans i opóźnienie. Oś sensora, znak RATEOUT i orientację złącza opisuje się na PCB oraz kadłubie.

MPX4115A znajduje się w komorze osłoniętej od naporu. TMP235 i HS1101LF muszą mierzyć środowisko, więc trafiają do wentylowanej białej osłony poza ciepłem elektroniki. Ich przewody nie biegną równolegle do przewodów silnika ani serw. Oscylator HS1101LF powinien być fizycznie przy sensorze; przesyła się gotową częstotliwość logiczną, a nie pojemność przez długi kabel.

Dwa sensory kierunkowe dostają symetryczne osłony. Sam fakt zamontowania jednego na lewym, drugiego na prawym skrzydle nie gwarantuje poprawnego gradientu: jedno skrzydło może być bardziej nasłonecznione podczas zakrętu, a lokalne ciśnienie i przepływ zależą od kąta natarcia.

Procedura uruchomienia#

1. Same zasilania#

Nie wkłada się wszystkich układów naraz. Najpierw sztuczne obciążenia zastępują sensory i timery. Mierzy się 5,0 V, 3,0 V, 6,0 V oraz VREF podczas ruchu dwóch serw obciążonych ręcznie. Oscyloskop musi pokazać tętnienia, zapady i zachowanie przy podłączeniu akumulatora.

2. Generator serwa bez regulatora#

Wejście CONT otrzymuje napięcie z zasilacza laboratoryjnego ograniczone do 2,5–3,8 V. Analizator mierzy okres ramki i szerokość impulsu. Następnie podłącza się jedno serwo bez cięgna, sprawdza pozycję neutralną i oba limity. Dopiero później dochodzi mechanika.

3. Żyroskop na stole obrotowym#

RATEOUT obserwuje się przy spoczynku, ręcznym obrocie w obie strony i self-test. Ustala się zero po rozgrzaniu. Regulator najpierw steruje wskaźnikiem lub zapasowym serwem bez powierzchni aerodynamicznej. Znak musi być potwierdzony dla całego łańcucha sensor–sumator–555–serwo–cięgno.

4. Akcelerometr#

Płytkę obraca się o znane kąty. Sprawdza się napięcia w położeniu +1 g, 0 g i −1 g, czas odpowiedzi filtra oraz self-test. Po dołączeniu toru level jego gain pozostaje kilkukrotnie mniejszy niż toru rate.

5. Sztuczne sygnały środowiskowe#

TMP235 można zastąpić potencjometrem dającym 0,5–1,2 V; MPX4115A regulowanym źródłem 3,5–4,5 V; wilgotność generatorem częstotliwości. Każdy próg testuje się powolnym przejściem w obie strony, notując próg załączenia, wyłączenia i czas potwierdzenia.

6. Sekwencer gradientu#

Zamiast lotu generator funkcyjny podaje SCORE jako wolną rampę. Gdy SCORE rośnie, kierunek ma pozostać. Po odwróceniu rampy przerzutnik ma zmienić bias dokładnie w fazie Q8. Oscyloskop czterokanałowy obserwuje SCORE, HOLD_OLD, HOLD_NEW i MISSION_BIAS.

7. Migawka#

Najpierw LED z rezystorem zastępuje aparat. Test obejmuje spełnienie warunków w różnej kolejności, krótkie zakłócenia, reset zasilania i wielokrotne przejście przez próg. Później omomierz sprawdza stronę wyjściową PhotoMOS, a dopiero potem podłącza się aparat.

8. Nośnik bez napędu#

Pierwsze próby aerodynamiczne wykonuje się jako szybowiec lub model na uwięzi, z biasem misji ustawionym na zero. Po potwierdzeniu stabilizacji dopiero zwiększa się bias o małe kroki. Każdy lot zmienia jeden parametr, nie pięć potencjometrów naraz.

Co mierzyć, skoro nie ma blackboxa#

Brak MCU nie powinien oznaczać braku danych. Na czas strojenia można użyć zewnętrznego rejestratora wielokanałowego albo oscyloskopu pokładowego. Rejestrator nie uczestniczy w sterowaniu, więc analogowy kontroler pozostaje funkcjonalnie niezależny.

Minimalne kanały:

  • RATEOUT roll i pitch;
  • ACC X/Y;
  • polecenie CONT serwa roll i pitch;
  • szerokość impulsów serw;
  • SCORE, HOLD_OLD i HOLD_NEW;
  • numer fazy CD4017 zakodowany przynajmniej dwoma liniami albo osobne impulsy Q0/Q6/Q8;
  • PHOTO_REQUEST i SHUTTER_PULSE;
  • 5 V, 6 V i VREF.

Bez takiego zapisu nie da się odróżnić złego gain od zapadu zasilania, opóźnienia sensora od upływu kondensatora ani prawdziwego gradientu od asymetrii osłony.

Ograniczenia fizyczne podążania za temperaturą i wilgotnością#

Temperatura i wilgotność w atmosferze nie tworzą zwykle gładkiego, nieruchomego „wzgórza”. Pole jest adwektowane przez wiatr, mieszane przez turbulencję i zakłócane przez sam płatowiec. Sensor ma bezwładność, a statek w czasie jednej stałej czasowej przemieszcza się o wiele metrów. Algorytm porównujący próbkę po 40 s może w rzeczywistości porównywać dwie różne masy powietrza.

W praktyce najlepsze zastosowania takiego demonstratora to:

  • podążanie za silnym gradientem światła lub promieniowania z przegrodą kierunkową;
  • laboratoryjny tunel z kontrolowanym gradientem temperatury;
  • powolny aerostat lub pojazd naziemny, gdzie czas sensora jest mniej dotkliwy;
  • utrzymywanie szerokiego pasa wysokości i wykonanie zdjęcia po spełnieniu warunków;
  • demonstracja analogowego extremum seeking, a nie precyzyjna nawigacja terenowa.

Jeżeli zadanie wymaga pozycji geograficznej, powrotu, geofencingu, rozpoznania przeszkód albo wiarygodnego lotu poza bezpośrednim nadzorem, układ bez CPU nie jest właściwą architekturą. Wtedy opisane analogowe sensory mogą pozostać niezależnym torem progowym, ale nawigację powinien wykonywać współczesny autopilot.

Wariant minimalny i wariant pełny#

Minimalny demonstrator#

Najmniejsza wersja, która nadal pokazuje ideę, zawiera:

  • jeden kanał ADXRS646 stabilizujący roll;
  • ADXL335 zapewniający wolne poziomowanie;
  • dwa TLC555: ramka i szerokość impulsu jednego serwa;
  • TMP235 i TLV1702 jako próg temperatury;
  • TLC555 jako impuls migawki;
  • PhotoMOS równolegle do przycisku aparatu;
  • ręczne sterowanie pitch i napędem.

Ta wersja nie szuka gradientu. Utrzymuje jedną oś i robi zdjęcie po przekroczeniu temperatury. Jest właściwym pierwszym projektem.

Pełny demonstrator gradientowy#

Pełna wersja dodaje:

  • drugi ADXRS646 dla pitch;
  • trzy kanały serw;
  • barometr MPX4115A i okno wysokości;
  • HS1101LF z oscylatorem i F–V;
  • ważony SCORE;
  • CD4017, dwie pamięci sample-and-hold i CD4013 kierunku;
  • matrycę warunków z potwierdzeniem czasowym;
  • ręczny bypass oraz zewnętrzny logger.

Różnica między nimi nie polega wyłącznie na liczbie układów. Pełna wersja wymaga kwalifikacji czasów sensorów, upływu pamięci analogowej, znaków wszystkich pętli i interakcji biasu misji ze stabilizacją.

Lista kontroli przed próbą w locie#

  • [ ] Każdy timer ma lokalne 100 nF, a sensory osobne filtrowanie zasilania.
  • [ ] 5 V, 6 V, 3 V i VREF pozostają w granicach przy zablokowanym serwie.
  • [ ] TPS3839/reset utrzymuje wszystkie wyjścia nieaktywne podczas startu i zaniku zasilania.
  • [ ] Znaki roll i pitch sprawdzono przez ręczny ruch całego płatowca.
  • [ ] Limiter elektryczny i ograniczniki mechaniczne nie pozwalają przeciążyć serwa.
  • [ ] Tor level ma mniejsze pasmo i gain niż tor rate.
  • [ ] MPX4115A nie jest wystawiony na napór ani strugę śmigła.
  • [ ] TMP235 i HS1101LF są poza ciepłem elektroniki i mają jednakowe osłony.
  • [ ] HOLD_OLD/HOLD_NEW utrzymują napięcie dłużej niż pełny cykl sekwencera.
  • [ ] Deadband jest większy od zmierzonego szumu i dryftu pamięci.
  • [ ] Bias misji po pojedynczej awarii nie przekracza małego, bezpiecznego wychylenia.
  • [ ] Każdy próg ma zmierzoną histerezę i czas potwierdzenia.
  • [ ] PHOTO_TAKEN blokuje drugie zdjęcie do fizycznego resetu.
  • [ ] PhotoMOS jest normalnie otwarty bez zasilania.
  • [ ] Przejęcie RC działa bez zasilania części automatycznej.
  • [ ] Pierwszy test odbywa się bez napędu lub na kontrolowanym stanowisku.

Wnioski konstrukcyjne#

NE555 może być częścią kontrolera lotu, ale nie zastępuje całej elektroniki obliczeniowej. Realny układ składa się z kilkudziesięciu jawnych funkcji: dwóch szybkich torów rate, wolnego poziomowania, sumatorów, limiterów, generatorów serw, kondycjonowania trzech klas sensorów środowiskowych, pamięci analogowej, sekwencera, logiki progowej i izolowanego interfejsu aparatu.

Najbardziej wartościowa cecha takiego projektu jest edukacyjna: na przewodzie można zmierzyć każdą zmienną. RATE_ERR, SCORE, HOLD_OLD, DIRECTION, TEMP_OK i SHUTTER_PULSE są fizycznymi napięciami albo stanami logicznymi. Ceną jest duża liczba elementów, dryft, brak elastycznej diagnostyki oraz konieczność bardzo ostrożnego strojenia. Właśnie dlatego poprawny projekt zaczyna się od statecznego stałopłata, małego biasu, niezależnego sterowania ręcznego i migawki jako jedynego automatycznego payloadu.

Przypisy

  1. Texas Instruments: NA555, NE555, SA555, SE555 Precision Timers [datasheet producenta; tryby astabilny, monostabilny, PWM i wejście control voltage]
  2. Texas Instruments: TLC555 CMOS Timer [datasheet producenta; zgodny pinowo timer CMOS o małym poborze prądu]
  3. Analog Devices: ADXRS646 High Stability Analog-Output Rate Gyroscope [datasheet producenta; analogowy jednoosiowy żyroskop prędkości kątowej]
  4. Analog Devices: ADXL335 Three-Axis Analog-Output Accelerometer [datasheet producenta; analogowy akcelerometr ±3 g]
  5. NXP/Freescale: MPX4115 Altimeter/Barometer Pressure Sensor [datasheet producenta; analogowy czujnik ciśnienia bezwzględnego 15–115 kPa]
  6. Texas Instruments: TMP235/TMP236 Analog Temperature Sensors [datasheet producenta; liniowy analogowy czujnik temperatury]
  7. TE Connectivity: HS1101LF Capacitive Relative Humidity Sensor [dokumentacja producenta; pojemnościowy element wilgotności współpracujący z oscylatorem 555]
  8. Texas Instruments: TLV900x RRIO Operational Amplifiers [datasheet producenta; wzmacniacze operacyjne rail-to-rail do toru analogowego 5 V]
  9. Texas Instruments: TLV170x Rail-to-Rail Comparators [datasheet producenta; komparatory do progów i detektorów okienkowych]
  10. Texas Instruments: REF33xx Low-Power Precision Voltage References [datasheet producenta; precyzyjne odniesienie napięciowe 2,5 V]
  11. Texas Instruments: CD74HC123 Dual Retriggerable Monostable Multivibrator [datasheet producenta; formowanie impulsów i konwersja częstotliwość–napięcie]
  12. Texas Instruments: CD4017B Decade Counter With Ten Decoded Outputs [datasheet producenta; sprzętowy sekwencer faz eksperymentu gradientowego]
  13. Texas Instruments: CD4013B Dual D-Type Flip-Flop [datasheet producenta; pamięć kierunku i zatrzask pojedynczego zdjęcia]
  14. Texas Instruments: CD4081B Quad 2-Input AND Gate [datasheet producenta; sprzętowa matryca warunków]
  15. Texas Instruments: TMUX110x Low-Leakage Precision Analog Switches [datasheet producenta; przełącznik sample-and-hold o małym prądzie upływu]
  16. Texas Instruments: TPS383x Supply Voltage Monitor [datasheet producenta; nadzorca zasilania i opóźnione zwolnienie resetu]
  17. Texas Instruments: TPS7A20 Ultra-Low-Noise LDO [datasheet producenta; niskoszumowe zasilanie sensorów analogowych]
  18. Texas Instruments: TPS63070 Buck-Boost Converter [datasheet producenta; przetwornica buck-boost dla szyny 6 V]
  19. Texas Instruments AN-20: An Applications Guide for Op Amps [nota aplikacyjna; wzmacniacz różnicowy, sumator, integrator, różniczkowanie i filtry]
  20. Texas Instruments: Comparator With Hysteresis Reference Design [projekt referencyjny; obliczanie progów i histerezy komparatora]
  21. Toshiba: TLP222A PhotoMOS Relay [datasheet producenta; izolowane zwieranie wejścia zdalnej migawki]
  22. STMicroelectronics: STM32WB BLE HID Selfie [oficjalny przykład BLE HID używający klawisza głośności do wyzwalania zdjęcia]
  23. Android Developers: KeyEvent API reference [oficjalna dokumentacja zdarzeń przycisków, w tym KEYCODE_CAMERA]
  24. Pololu: Electrical characteristics of servos and servo control interface [artykuł techniczny producenta]