AllSkyRadar - odwrócony flightradar

Coś dla Spotterów ze skanerkiem oraz radarem SBS.
Awatar użytkownika
vader
Administrator
Posty: 2864
Rejestracja: 13 stycznia 2008, 11:33
Obserwuję: niebo :)
Lokalizacja: Wieliczka
Kontakt:

Powtarzam się, ale świetna sprawa. Nadal mam w planach pobawić się czymś podobnym u siebie i mam nadziej, że w tym roku się uda :) Czekam na aktualizację tematu.

Co do samych filmów, można śmiało obniżyć alt., bo zrobiło się za dużo wolnej przestrzeni :)
N 10" 'Simon II' + SCT 5", EOS 70D, 12x50, 8.5x32, 2x53
Uniden UBC125XLT, PlanePlotter: mo i vo
Obrazek
Awatar użytkownika
spinka
Posty: 494
Rejestracja: 30 maja 2017, 13:07
Lokalizacja: Wrocław

vader pisze: 28 stycznia 2020, 09:13Co do samych filmów, można śmiało obniżyć alt., bo zrobiło się za dużo wolnej przestrzeni :)
Przy zachowaniu proporcji to wygląda płasko, prawie jak 2d. Chyba że w drugą stronę wywalić przestrzeń na modelu ponad FL400, ale to startujące/lądujące prawie pionowo idą. Na jakąś skalę logarytmiczną za głupi jestem. :-P


Rok temu @bartusek rzucił pytanie czy by się nie dało ads-b w stellarium wyświetlać jakoś. Nie bardzo wiedziałem jak się za to zabrać, no ale da się, live:

Będę eksplorował. :mrgreen:

Trails-y i odległość:
Awatar użytkownika
spinka
Posty: 494
Rejestracja: 30 maja 2017, 13:07
Lokalizacja: Wrocław

Trochę upgrejdów zrobiłem a jednocześnie uprościłem system.

W tej chwili dwie kamery i odbiornik są podpięte do jednej rPi4.
Na rPi4 też, w locie, odbywa się też wstępna obróbka zdjęć (nakładanie informacji na zdjęcia),
kompresja do h264/mp4, rPi4 służy też jako serwer www z podglądem nieba.

Zdjęcia w pełnej rozdzielczości przesyłam na dysk sieciowy,
ale tam już nic automatycznie "w locie" się z nimi nie dzieje.
Na dysk sieciowy trafiają też co kilka godzin gotowe mp4 z rPi4.

Kamera "horyzontalna" to raspberry cam v2 z niestandardowym obiektywem, spięta taśmą do rPi4.
Tu nastąpił największy postęp, bo wcześniej cierpiałem z powodu bardzo długiego rozruchu
po zmianie czasu naświetlania, co skutecznie niszczyło timelapsy.
Zrezygnowałem z aplikacji raspistill i obsługuję tę kamerę pythonem przez mocno zmodyfikowaną bibliotekę picamera. Udało się zrobić tak, że nie ma żadnych opóźnień, wreszcie.
System obracania tą kamerą jest ręczny, ale prosty, skuteczny, 360° i semi-zdalny. ;)

Kamera AllSky to ZWO na usb (do rPi można bezpośrednio podpiąć tylko jedną kamerę na taśmie)
z obiektywem 1.55mm. Chciałem też mieć dostęp do czasów naświetlania >10s.
Obsługa tej kamery przez pythona bibliotekami zwo-skycam i zwoasi.
Nakładanie danych się niewiele zmieniło (matlplotlib), tyle że odbywa się w locie przed zapisaniem zdjęcia.

Odbiornik to zwykły niebieski dongle usb (z minimalnym ekranowaniem) z ręcznie wyrzeźbioną anteną.
Zasięg 100-200km, co mi w zupełności wystarcza do rnavspottingu.
dump1090-fa feeduje fr24 i flightaware, od fr24 dostaje tylko konto premium, ale fa zwraca pozycje mlat.
Strumienie z dump1090 i mlat z fa łączę w VRS (też na rPi4). Taki merged feed mam na podglądzie www oraz co najważniejsze trafia do skryptu flight-warning, który przelicza to na pozycje alt/az.
Flight-warning dodatkowo ostrzega o możliwości tranzytów przez Księżyc/Słońce.
Output trafia do konsoli jako tabelka oraz do skryptu który obrabia zdjęcia z kamery Allsky i dodaje nakładkę z pozycjami.

Zasilanie 12V -> Przetwornica 5V/3A -> rPi4.
Kamery i rPi4 dzieli ok 2m (podobno rPi nie obsługuje kamer na taśmie >15cm :mrgreen: ).
Transmisja danych idzie po wifi 5GHz, ale można podpiąć LAN.

Jeszcze pewnie coś pozmieniam, ale jest nieźle, stabilnie.
Przed upałami na pewno dodam izolację termiczną z folii NRC gdzie tylko się da.

Podgląd www:
Terminal ze skryptami, m.in. flight-warning:
Przetwornica, rPi4 z radiatorem i dongle w obudowie (przewód usb od dongla jest jaki jest, poprawię :-P ):
Antena 1090Mhz wzorowana na PCB, "ścieżki" wycięte z samoprzylepnej folii miedzianej, ~13cm:
Kamery i antena w obudowach:
Miejskie zaświetlenie przy 60s naświetlania: :mrgreen:
Awatar użytkownika
grztus
Posty: 1263
Rejestracja: 05 lutego 2007, 17:57
Lokalizacja: Radom/Warszawa
Kontakt:

Kawał świetnej roboty odwalasz. Ja powolutku się przymierzam do rpi4 i instalacji Twojego skryptu, do ostrzegania o tranzytach. Na razie bez kamer.
Grzegorz Tuszyński
www.grztus.pl
Awatar użytkownika
vader
Administrator
Posty: 2864
Rejestracja: 13 stycznia 2008, 11:33
Obserwuję: niebo :)
Lokalizacja: Wieliczka
Kontakt:

Jak ci się chce spinka, to wrzuć kod po modyfokachac z instrukcją na github. Chętnie rzucę okiem.
N 10" 'Simon II' + SCT 5", EOS 70D, 12x50, 8.5x32, 2x53
Uniden UBC125XLT, PlanePlotter: mo i vo
Obrazek
Awatar użytkownika
spinka
Posty: 494
Rejestracja: 30 maja 2017, 13:07
Lokalizacja: Wrocław

Wrzucę, jak tylko powyrzucam bluzgi z komentarzy i nazwy zmiennych typu niepamietamcotorobilo2 ;)
Edit:
Tak na szybko tutaj skrypt flight_warning z opisem , a poniżej plotter/generator podglądu:

https://github.com/spink-al/flight-warn ... tput/dummy
Oba pliki iss.tle i _ASR_DUMMY2.py wrzucić do np. katalogu /home/pi/dummy/

Polecenie:

Kod: Zaznacz cały

python3 _ASR_DUMMY2.py
Skrypt operuje na danych generowanych przez flight_warning_MLAT.py i zapisywanych do /tmp/out.txt (zmienić z /dev/null !)
U mnie na rPi4 działa tylko na pytonie3, chyba przez matplotlib.
Trochę ma zależności: python-PIL, matplotlib, numpy, python-ephem.

Wygenerowy jpg jest nadpisywany pod taką ścieżką /tmp/last_dummy.jpg
Ja mam do takiego pliku link symboliczny /var/www/html/podlinkowany.jpg
lighttpd to łyka, apache pewnie by się zburzył, do tego np. taki /var/www/html/index.html

Kod: Zaznacz cały

<html>
    <head>
        <meta http-equiv="refresh" content="5" >
	<meta http-equiv="Expires" content="0" />
	<meta http-equiv="Cache-Control" content="no-store, no-cache, must-revalidate" />
	<meta http-equiv="Cache-Control" content="post-check=0, pre-check=0" />
	<meta http-equiv="Pragma" content="no-cache" />
    </head>

    <body bgcolor="#000000">
	<img src="podlinkowany.jpg" style="border:0; position: absolute; top:0px; left:0px; overflow:hidden; width:1000px; height:1000px;z-index:1;"/>
    </body>
</html>
I dostęp przez www na ip rPi powinien wyświetlić coś takiego:
To nie są duże pliki, ale i tak zalecam dodanie linijki do /etc/fstab

Kod: Zaznacz cały

tmpfs /tmp  tmpfs defaults,noatime 0 0
żeby to się zapisywało wszystko na ramdysku, a nie na karcie sd.

Do pobierania tle można użyć:

Kod: Zaznacz cały

wget -qr https://www.celestrak.com/NORAD/elements/stations.txt -O /tmp/stations.txt
grep "ISS (ZARYA)" /tmp/stations.txt -A 2 > /home/pi/dummy/iss.tle
No to zarzuciłem linuxowymi rebusami, ale może ktoś coś z tego poskłada.
Życzę powodzenia! :-P
Ostatnio zmieniony 26 lutego 2020, 23:11 przez spinka, łącznie zmieniany 1 raz.
Awatar użytkownika
spinka
Posty: 494
Rejestracja: 30 maja 2017, 13:07
Lokalizacja: Wrocław

AllSkyRadar, na razie połowa, tylko obsługa kamery raspberry bez nakładki z matplotlib,
tak mniej więcej jak to mam teraz u siebie.
Później dorzucę część od kamery asi z nakładką matplotlib.

W kilku miejscach mogą być na sztywno ścieżki wpisane, więc założenie jest takie żeby katalog AllSkyRadar znalazł się w folderze /home/pi/

Całość uruchamiam skryptem
bash ./start_tmux.sh

Odpala się taki układ:
0 - /home/pi/AllSkyRadar/copy_loop_wsc.sh
1 - /home/pi/AllSkyRadar/rPiCamera.sh
2 - /home/pi/AllSkyRadar/vrs.sh
3 - pusty terminal
4 - /home/pi/AllSkyRadar/flight_warning.sh
5 - htop
Obrazek

copy_loop_wsc.sh
W pliku ASR_Conf.py jest część konfiguracji, skrypty kopiują dane scp-em na storage ip i ścieżka:

Kod: Zaznacz cały

STORAGE_IP="192.168.3.112"
STORAGE_FLDR="/home/pi/work/arch/AS/_ASI"
Jeśli ktoś zechce to uruchomić u siebie, to musi to przerobić na własne potrzeby, zamiast scp można podmontować windowsowy zasób SMB i kopiować w ten sposób. Ja nie używam mountów, bo robi się kaszana jeśli padnie połączenie sieciowe, próbowałem rsync, ale scp jakoś tak najlepiej działa.


rPiCamera.sh
Tworzy się ścieżka /tmp/AllSkyRadar/ gdzie lądują tymczasowo .jpg i kilka plików conf z wartościami ekspozycji, iso, wb, etc, żebym mógł bez restartowania kamery zmieniać te wartości z zewnątrz, są jakoś opisane w rPiCamera.py.

PiCamera.sh uruchamia też rPiCamera.py i pilnuje żeby uruchomić ponownie jeśli zajdzie potrzeba.


vrs.sh
Uruchamia Virtual Server Radar bez gui.


flight_warning.sh
Tu urruchamia mały łańcuch skryptów (run_screen.sh > .flight_warning > flight_warning.sh > flight_warning_MLAT.py), które wewnątrz tmuxa odpalają screen a w nim flight_warning, wygodne gdy chce sobie podejrzeć samą tabelkę na telefonie bez ładowania tmuxa. Ten screen może działać niezależnie od tmuxa, a któryś ze skryptów po drodze sprawdza czy jest uruchomiony, itp. Tylko nie przełącza jeszcze źródla na dump1090 gdy VRS nie działa.

WWW:
W podkatalogu www zestaw html-i, które używam, allsky i widesky są samoodświeżające, vrs nie musi, te 3 są jako iframe-y połączone w index.html, więc odświeża się tylko to co musi. Trzeba zmienić adresy ip w tych htmlach i powinny się znaleźć w /var/www/html/
misc/symlink_www.sh polecenie żeby zrobić symlink, do aktualnego jpg, w /var/www/html/

Ręcznie uruchamiane:
start_wsc_mp4_fg.sh odpala w terminalu skrypt który kompresuje jpg do h264
start_wsc_mp4_bg.sh odpala w tle skrypt który kompresuje jpg do h264
restart_wsc_mp4.sh wyłącza skrypt który kompresuje jpg do h264, niezależnie czy był w fg czy bg i uruchamia ponownie w bg (w tle).
stop_wsc_mp4.sh wyłącza skrypt który kompresuje jpg do h264, niezależnie czy był w fg czy bg.
Przy nie uruchomionej kompresji folder /tmp/AllSkyRadar/WSC.tmp może zacząć puchnąć, bo nic go nie opróżnia.

restart_wsc_cam.sh ręczny restart rPiCamera.py
stop_wsc_cam.sh ręczne zatrzymanie rPiCamera.py oraz rPiCamera.sh (!)
start_wsc_cam.sh ręczne uruchomienie rPiCamera.sh
reread_wsc_cam.sh ręczne wymuszenie zaczytania wartości ekspozycji, soft restart.
Przy ręcznym restarcie będzie delay, przy reread/soft restarcie nie ma żadnych opóźnień.

reset_vrs_receiver_range.sh
Robi kopię receiver range i usuwa aktualny, trzeba wcześniej wyłączyć VRS (klawiszem Q w okienku konsoli gdzie jest otwarty, a potem skrypcie uruchomić ponownie)

To chyba wszystko co tam jest na razie.

W rPiCamera.py koło linii 349:

Kod: Zaznacz cały

        q0Ax = 0 ; q0Ay = 0
        im = image[q0Ax:q0Ax+1746, q0Ay:q0Ay+3104]
Przycinam obraz z 3104x2308 do 3104x1746 do 16:9. Zmiana tutaj wnosi konieczność dalszych zmian m.in. draw* od linii 370-382
oraz w 388 gdzie jest resize dla h264.
Skrypt mierzy światło sam bez korzystania z automatyki kamery, zmieniam tylko zakresy min/max zależnie od pory dnia.

Potem dorzucę na githuba schedule.sh, który się o północy z crona uruchamia, ale muszę to przetestować, bo zmodyfikowałem sunwait żeby nie wait tylko zwracał godziny wschodów/zachodów etc., a muszę źródła znaleźć w archeo.

Kod: Zaznacz cały

# Zakresy min/max dla naświetlenia:
echo 'echo "5" > /tmp/AllSkyRadar/tmpconf3A' | at $(date --date="+`/usr/local/bin/sunwait -v naut up` min" +%H:%M)
echo 'echo "70" > /tmp/AllSkyRadar/tmpconf2A' | at $(date --date="+`/usr/local/bin/sunwait -v naut up` min" +%H:%M)

echo 'echo "90" > /tmp/AllSkyRadar/tmpconf3A' | at $(date --date="+`/usr/local/bin/sunwait -v sun up +20` min" +%H:%M)
echo 'echo "130" > /tmp/AllSkyRadar/tmpconf2A' | at $(date --date="+`/usr/local/bin/sunwait -v sun up +20` min" +%H:%M)

echo 'echo "75" > /tmp/AllSkyRadar/tmpconf3A' | at $(date --date="+`/usr/local/bin/sunwait -v sun down -20` min" +%H:%M)
echo 'echo "105" > /tmp/AllSkyRadar/tmpconf2A' | at $(date --date="+`/usr/local/bin/sunwait -v sun down -20` min" +%H:%M)

echo 'echo "65" > /tmp/AllSkyRadar/tmpconf3A' | at $(date --date="+`/usr/local/bin/sunwait -v civ down` min" +%H:%M)
echo 'echo "180" > /tmp/AllSkyRadar/tmpconf2A' | at $(date --date="+`/usr/local/bin/sunwait -v civ down` min" +%H:%M)

echo 'echo "85" > /tmp/AllSkyRadar/tmpconf3A' | at $(date --date="+`/usr/local/bin/sunwait -v naut down -20` min" +%H:%M)
echo 'echo "125" > /tmp/AllSkyRadar/tmpconf2A' | at $(date --date="+`/usr/local/bin/sunwait -v naut down -20` min" +%H:%M)

# Zmiana WB dzień/noc i BW/Kolor dla noc/dzień
echo 'echo "1" > /tmp/AllSkyRadar/tmpconfA2' | at $(date --date="+`/usr/local/bin/sunwait -v naut up` min" +%H:%M)
echo 'echo "0" > /tmp/AllSkyRadar/tmpconfA3' | at $(date --date="+`/usr/local/bin/sunwait -v naut up` min" +%H:%M)
echo 'echo "1" > /tmp/AllSkyRadar/tmpconf9' | at $(date --date="+`/usr/local/bin/sunwait -v naut up +1` min" +%H:%M)

echo 'echo "0" > /tmp/AllSkyRadar/tmpconfA2' | at $(date --date="+`/usr/local/bin/sunwait -v naut down +10` min" +%H:%M)
echo 'echo "1" > /tmp/AllSkyRadar/tmpconfA3' | at $(date --date="+`/usr/local/bin/sunwait -v naut down +10` min" +%H:%M)
echo 'echo "1" > /tmp/AllSkyRadar/tmpconf9' | at $(date --date="+`/usr/local/bin/sunwait -v naut down +11` min" +%H:%M)

# restart kompresji h264 (i przesłanie mp4 na storage)
echo 'touch /tmp/AllSkyRadar/WSC.tmp/restart' | at $(date --date="+`/usr/local/bin/sunwait -v naut up` min" +%H:%M)
echo 'touch /tmp/AllSkyRadar/WSC.tmp/restart'| at $(date --date="+`/usr/local/bin/sunwait -v sun up +60` min" +%H:%M)
echo 'touch /tmp/AllSkyRadar/WSC.tmp/restart' | at 12:00
echo 'touch /tmp/AllSkyRadar/WSC.tmp/restart'| at $(date --date="+`/usr/local/bin/sunwait -v sun down -65` min" +%H:%M)
echo 'touch /tmp/AllSkyRadar/WSC.tmp/restart'| at $(date --date="+`/usr/local/bin/sunwait -v naut down -5` min" +%H:%M)

# Restart copy_loop_wsc.sh i stworzenie katalogu(ów) z nową datą na storage:
touch /tmp/AllSkyRadar/restart3

# Aktualizacja orbity iss dla matplotlib 
wget -qr https://www.celestrak.com/NORAD/elements/stations.txt -O /tmp/stations.txt
grep "ISS (ZARYA)" /tmp/stations.txt -A 2 > /tmp/iss.tle
Wymagania:

Sprzęt:
Może zadziałać na rPi0 przy zdjęciach co 10s, na rPi3/rPi4 mam co 5s.
Kamera raspberry v2 , ja używam dodatkowo chyba taki obiektyw

System:
rPi4 Raspbian Buster Linux rPi4 4.19.97-v7l+ #1294 (2020-02-13)

Software:
Poniżej część już na wyrost pod ASI i nakładkę z matplotlib:

https://github.com/spink-al/picamera
Tutaj pocięta biblioteka picamera, standardowo powinna być na raspbianie w /usr/lib/python3/dist-packages/picamera
trzeba tam skopiować i nadpisać wszystko, plikami z katalogu https://github.com/spink-al/picamera/tr ... r/picamera

https://github.com/filiparag/zwo-skycam
sudo pip3 install opencv-python==3.4.6.27
sudo pip3 install opencv-contrib-python==3.4.6.27
sudo apt install libhdf5-dev libhdf5-serial-dev libatlas-base-dev libjasper-dev libqtgui4 libqt4-test
sudo pip3 install matplotlib
sudo pip3 install Pillow
sudo pip3 install ephem (albo sudo apt install python-ephem)
sudo pip3 install zwoasi
sudo pip3 install scipy
sudo apt install tmux
sudo apt install screen
sudo apt install at

Zalecane:
Dodanie linijki do /etc/fstab

Kod: Zaznacz cały

tmpfs /tmp  tmpfs defaults,noatime 0 0
Pewnie z konfiguracją można pomieszać i przy jednej kamerze podnieść rozdzielczość mp4 do fullsize, można zrezygnować z zapisu jpg na zewnętrzny storage i zostać tylko przy podglądzie www i kompresji. Jak się ogarnę to dorzucę do tego samego repozytorium rozwiązanie z allsky na asi i z nakładką z pozycjami samolotów, na razie tyle. 🥴
Ostatnio zmieniony 27 lutego 2020, 18:00 przez spinka, łącznie zmieniany 2 razy.
Awatar użytkownika
spinka
Posty: 494
Rejestracja: 30 maja 2017, 13:07
Lokalizacja: Wrocław

Miał być allsky z nakładką, ale po przejrzeniu zrobiłem inaczej, dorzuciłem dorzuciłem dwa pliki na githuba
rPiCamera_bez_overlay.py - mniej więcej tak jak wczoraj, bez nakładki
rPiCamera_overlay.py - z nakładką matplotlib (karmioną z pliku /tmp/out.txt generowanego przez flight_warning_MLAT.py)

rPiCamera.py został zupdejtowany do wersji z nakładką żeby było widać różnice w historii modyfikacji

Na razie jako showcase, na sztywno azymut 260, korekcje dystorsji i kalibracja mniej więcej pod moją kamerę,
potem to powyciągam do plików konfiguracyjnych. Część od nakładki przekleiłem razem z wszystkimi krzakami tak jak miałem,
ale chyba nie ma tam nic bardzo żenującego.

Tak wygląda u mnie gdy wszystko działa jak powinno, zaznaczam że skrypt generuje jeszcze fullsize jpg, bez tej nakładki:
Obrazek

Obrazek
Awatar użytkownika
spinka
Posty: 494
Rejestracja: 30 maja 2017, 13:07
Lokalizacja: Wrocław

Dorzuciłem ostatnią część na githuba. Tym razem AllSky z nakładką dostosowany do kamery ASI.

Do mojego katalogu AllSkyRadar trzeba ręcznie skopiować skycam.py i asi.so z zwo-skycam.
copy_loop_asi.sh podobnie jak copy_loop_wsc.sh
start_asi_cam.sh uruchamia kamerę ASI
start_asr_mp4_fg.sh odpala w terminalu skrypt który kompresuje jpg do h264
start_asr_mp4_bg.sh odpala w tle skrypt który kompresuje jpg do h264
restart_asr_mp4.sh wyłącza skrypt który kompresuje jpg do h264, niezależnie czy był w fg czy bg i uruchamia ponownie w bg (w tle).
stop_asr_mp4.sh wyłącza skrypt który kompresuje jpg do h264, niezależnie czy był w fg czy bg.
Przy nie uruchomionej kompresji folder /tmp/AllSkyRadar/ASR.tmp może zacząć puchnąć, bo nic go nie opróżnia.

Zmodyfikowane www/*.html
Zmodyfikowy misc/symlink_www.sh
misc/_schedule.sh dodałem, ale jeszcze źródeł sunwait'a nie znalazłem u siebie. Później.

Szablon/układ tmuxa jeszcze poprzedni. Później. Można ręcznie
podzielić okienka Ctrl+"a", "-" w poziomie
albo w pionie Ctrl+"a","|",
albo nowe okno Ctrl+"a","c",
następne okno Ctrl+"a"+Ctrl+"Spacja",
poprzednie okno Ctrl +"a" + Ctrl +"a",
Ctrl+"a","z" powiększa panel na całe okno, drugi raz zmiejsza,
można przypadkiem wcisnąć Ctrl+"z" i proces z aktywnego panelu idzie w tło, wtedy polecenie %1 przywróci proces,

Pomiędzy panelami w obrębie okna Alt+ strzałki l/p/g/d
Ctrl+"c" przerywa działanie programu w danym oknie,
Ctrl+"d" opuszcza terminal i tym samym niszczy panel
Ctrl +"a","d" odłącza od tmuxa i wraca do zwykłej konsoli, tmux ze wszystkim pozostaje uruchomiony w tle,
Żeby wrócić do wcześniej uruchomionego tmuxa polecenie: tmux -L myapp a
Można zmieniać rozmiary paneli przeciągając myszką granice pomiędzy panelami.
Z zaawansowanych skrótów, to w panelu z flight_warning, który jest uruchomiony w screenie obowiązują skróty Ctrl+"b"+"costam" ,
np. Ctrl+"b","d" odłącza screena, Ctrl+"b"+Ctrl+"g" wyłącza/włącza dźwięki, co akurat przy flight_warning często używam,
ale to już ogólnie level "incepcja" :lol:

skróty myślowe/słownik:
ASI = kamera zwo asi, albo odnośnie fullsize jpg
ZWO = kamera zwo asi
ASR = AllSkyRadar, albo odnośnie zeskalowanych jpg z nakładką
WSC = WideSkyCamera/horyzontalna nie allsky
WSR = WideSkyRadar powinien być odnośnie zeskalowanych jpg z nakładką, pewnie zmienię
VRS = Virtual Server Radar
fg - foreground, pierwszy plan
bg - background, w tle
dummy = nakładka bez kamery
dump = dump1090
fr24 = flightradar24
fa = flightaware
FW/fw = skrypt flight_warning.py
pyt = python
rPi = raspberry pi
rPiCam = kamera raspberry pi
mp4/h264 = plik/kompresja video
.py = skrypt w pythonie
.sh = skrypt w bashu
terminal/konsola = zamiennie
tmux/screen = nakładki do terminala
sunwait = program który podaje mi godziny i minuty wsch/zach Słońca/zmierzchy itd, w oryginalnej wersji nie podaje godzin:minut, tylko czeka do tego czasu. Używam go do kolejkowania różnych zdarzeń zależnie od pory dnia/nocy w połączeniu z "at"
at = program/usługa, która wykonuje zadane polecenie o zadanej porze.
htop = menedżer zadań konsolowy
storage = dysk/zasób sieciowy
ssh/scp = Secure Shell i Secure Shell Copy
lat/lon = długość/szerokość geograficzna

Na razie dość, dajcie znać jak Wam zadziała.
:mrgreen:
Awatar użytkownika
spinka
Posty: 494
Rejestracja: 30 maja 2017, 13:07
Lokalizacja: Wrocław

Teraz mam inaczej, bo rPi4 czy zwo nie wejdzie w rure wod./kan. fi 50mm,
ale rPi0 się mieściły w takich rurach, razem z wentylatorami, przetwornicą i silnikiem do obracania, i innymi bzdurami:
Obrazek
trochę tych gratów podrukowałem przez te dwa latta.
Awatar użytkownika
spinka
Posty: 494
Rejestracja: 30 maja 2017, 13:07
Lokalizacja: Wrocław

Podobnie jak we flight_warning, również w AllSkyRadar dużo małych zmian, konfiguracja ląduje w osobnych plikach.

Nie wrzucam flight_warning i AllSkyRadar do jednego worka, bo nie wiem czy mogę/chcę, ale są tak robione żeby działały wspólnie lub osobno.

Większość ostatnich zmian dotyczy skryptu dla kamery rPi w wersji panoramicznej i jego pliku konfiguracyjnego.

Podobne zmiany dostanie wersja AllSky na kamerze ZWO.
Potem dorzucę skrypt do obsługi kamery rPi w wersji AllSky.
Panorama od AllSky różni się sposobem prezentacji danych w matplotlib, wykresy "X/Y" dla panoramy lub "Polarne" dla AllSky,
w różny sposób muszę przeliczać dane + korekcje danych dla zniekształceń obrazu.
Chyba do AllSkyRadar dorzucę "dummy" bez obsługi kamery, które jest chwilowo we flight_warning i pewnie rozdzielę to jeszcze na wersje AllSky i Panoramę.
Już całkiem osobno planuję TimeLapseMachine, tylko z obsługą kamer raspberry, mniej więcej na bazie AllSkyRadar.
Gdzieś między tym wszystkim powinienem wrzucić zestaw do deflickeringu, który używam do wygładzania jasności.

Jak coś u mnie działa to wrzucam na github, ale nie próbowałem tego instalować od zera na świeżej raspberry, więc nawet nie wiem jakie problemy mogą się pojawiać.

Coś istotnego mogłem w komentarzach w treści skryptów/konf napisać. Trzeba je przejrzeć przed próbą uruchomienia. Nie wszędzie ścieżki idą z plików konf. #todo

Timeline: Soon™

Edit: Dodałem dummy wersji AllSky do AllSkyRadar i przetestowałem na świeżo postawionej rPi0 (tyle że podpiąłem się do vrs na innej rPi).

sudo apt update

opcjonalnie mc:
sudo apt install mc

mceditem albo nano:
sudo mcedit /etc/fstab
dodać:
tmpfs /tmp tmpfs defaults,noatime 0 0
zapisać.

sudo raspi-config

Localisation Options > Change Timezone > ...
Boot options > Desktop/CLI > Console

Finish i Reboot Now
albo ręcznie:
sudo reboot

sudo apt install lighttpd

git clone https://github.com/spink-al/flight-warning.git
git clone https://github.com/spink-al/AllSkyRadar.git


Przenieść:
/home/pi/AllSkyRadar/AllSkyRadar/* -> /home/pi/AllSkyRadar/

lat/lon/alt w:
/home/pi/AllSkyRadar/AllSkyRadar/ASR_Conf.py

oraz lat/lon/alt w:
/home/pi/flight-warning/flight_warning_Conf.py

zmienić na python3, ip, port z danymi w:
/home/pi/flight-warning/flight_warning.sh

opcjonalnie screen i tmux:
sudo apt install screen tmux
jeśli tmux to konf własna albo moja ze skrótami klawiszy opisanymi wcześniej:
cp /home/pi/AllSkyRadar/other/.tmux.conf /home/pi/

sudo pip3 install ephem
sudo pip3 install opencv-python==3.4.6.27
sudo pip3 install opencv-contrib-python==3.4.6.27
sudo apt install libhdf5-dev libhdf5-serial-dev libatlas-base-dev libjasper-dev libqtgui4 libqt4-test
sudo pip3 install matplotlib


Adres ip maliny na za chwilę:
ifconfig wlan0 | grep "inet "

tmux
cd /home/pi/flight-warning/

bash flight_warning.sh
C-"a","-"
cd /home/pi/AllSkyRadar/
bash start_dummy.sh


powyższe ew. bez tmux, ale w różnych oknach terminala.

przeglądarka (np. w telefonie w tej samej sieci wifi):
http://ip_maliny_z_przed_chwili/dummy.html

Oprócz tej głupoty z AllSkyRadar w AllSkyRadar, poszło gładko.
:-)
Awatar użytkownika
wzzak
Posty: 87
Rejestracja: 20 września 2018, 10:35
Lokalizacja: Gniezno
Kontakt:

Dzięki @spinka za pomoc w odpaleniu. Pierwsze testy za mną. Kawał dobrej roboty i wiedzy którą się tutaj dzielisz. Szacun.
Synta 8, Powermate 2”, Canon R7,
ODPOWIEDZ