Jak uruchomić stację pogodową SR0WX
Aby uruchomić stację pogodową systemu sr0wx.py należy w pierwszej kolejności zaopatrzyć się w sprzęt, na którym to oprogramowanie uruchomimy. Nadaje się do tego w zasadzie każdy w miarę współczesny komputer PC. Należy wziąć pod uwagę fakt, iż taki komputer będzie pracował 24 godziny na dobę i istotne jest aby charakteryzował się małym poborem energii. To w zasadzie zawęża zakres poszukiwań sprzętu tylko do urządzeń terminalowych. Na szczęście na rynku jest szeroki wybór tego typu urządzeń i dość łatwo wejść w posiadanie takiego sprzętu.
Drugą istotną sprawą jest moc obliczeniowa. Pomimo na prawdę niewielkich wymagań stawianych sprzętowi w kontekście samego oprogramowania sr0wx.py, należy wziąć pod uwagę wymagania stawiane przez system operacyjny. Ponieważ systemy operacyjne i oprogramowanie puchną i wymagają coraz większej mocy obliczeniowej, w obecnym czasie niestety nie uruchomimy stacji pogodowej na komputerze sprzed 20 lat. W początkowym okresie uruchamiania stacji pogodowych nadawał się do tego komputer, dla którego standardem było 256MB pamięci RAM (np bardzo popularny terminal HP T5720). Umożliwiał on komfortową pracę z systemem Ubuntu 10.04, a po zwiększeniu ilości pamięci RAM - Ubuntu 12.04. Na dzień dzisiejszy (marzec 2021) te systemy już dawno temu utraciły wsparcie. Aktualnie wyborem nr 1 jest Ubuntu 16.04 Mate i386. Ja ten system uruchomiłem wykorzystując terminal HP ThinClient T510 z 2GB RAM DDR3 i pamięcią masową 16GB SSD. Terminal taki jest do nabycia za kwotę około 70zł (2021 r.).
Uwaga! Poniższy opis dotyczy instalacji Ubuntu 16.04 Mate i386 na terminalu ThinClient T510 z 2GB RAM DDR3 z 16GB SSD.
Pierwszym krokiem rozpoczynającym przygotowanie terminala pod budowę stacji pogodowej sr0wx.py jest oczywiście zainstalowanie systemu operacyjnego. Obrazy ISO można pobrać z poniższych stron:
Następnie za pomocą odpowiedniego programu, z pobranego obrazu przygotowujemy bootowalny pendrive USB, uruchamiamy za jego pomocą nasz terminal i przechodzimy cały proces instalacji. Dobrze w tym momencie podłączyć terminal do internetu za pomocą karty sieciowej przewodowej lub WiFi. Większość popularnych kart WiFi zadziała od razu po podłączeniu (polecam TP-Link TL-WN722n). Po zainstalowaniu systemu i połączeniu z internetem należy odświeżyć źródła oprogramowania:
sudo apt-get update (bardzo ważne!!!)
i zainstalować program Git (będzie potrzeby do pobrania oprogramowania sr0wx.py z Githuba)
sudo apt-get install git
Można jeszcze (ale nie jest to niezbędne) dokonać kompleksowej aktualizacji całego systemu operacyjnego zaciągając najnowsze paczki oprogramowania, które nie wchodziły w skład instalatora:
sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade
Po dokonaniu tych czynności mamy terminal ze świeżym systemem operacyjnym gotowym do zainstalowania oprogramowania stacji pogodowej.
Najnowszą wersję oprogramowania sr0wx.py można pobrać z adresów:
Paczka ZIP z Githuba: POBIERZ
Cały projekt na Githubie: https://github.com/sq9atk/sr0wx
Rozpakowany katalog z oprogramowaniem sr0wx.py najlepiej umieścić w głównym folderze użytkownika. Następnie należy doinstalować paczki niezbędne do działania oprogramowania oraz przyznać użytkownikowi prawa do korzystania z portu szeregowego COM, za pomocą którego będzie się odbywać sterowanie PTT nadajnika stacji pogodowej. Należy w tym celu uruchomić dwie komendy:
sudo apt-get install git python-pygame python-tz python-imaging python-serial curl php7.0 php7.0-curl ffmpeg
sudo gpasswd --add ${USER} dialout
W tym momencie nasz system jest w pełni przygotowanydo pierwszego uruchomienia oprogramowania sr0wx. Używając terminala należy wejść do folderu sr0wx i wydać komendę:
python sr0wx.py
Jeśli wszystkie poprzednie czynności wykonaliśmy poprawnie, uruchomi się oprogramowanie. Po kolei zostaną uruchomione wszystkie moduły, wykonując czynności służące zdobyciu danych pogodowych, niezbędnych do przygotowaniu głosowego komunikatu pogodowego. Na końcu usłyszymy z wbudowanego głośnka gotowy komunikat.
Pozostaje sprawić aby oprogramowanie uruchamiało się cykliczne, włączało nasz nadajnik i przekazywało do niego dźwięk z karty dźwiękowej.
Do cyklicznego uruchamia wykorzystuje się program o nazwie cron. Aby "podpiąć" uruchamianie stacji pogodowej pod cron-a wpisujemy w konsoli:
crontab -e
Uruchomi się okno edytora listy czynności crona. W wolnej linii należy dodać następującą komendę:
0,15,30,45 * * * * cd /home/[twoja_nazwa_usera]/[katalog_sr0wx] && python sr0wx.py
Następnie zapisujemy zmiany i restartujemy system. Stacja będzie się uruchamiać co pełny kwadrans. Poprawność zapisu komendy można sprawdzić wpisując w konsoli:
crontab -l
Kolejną ważną rzeczą jest konieczność przypisania uprawnień użytkownikowi do portu COM, który będzie sterować PTT.
W tym celu należy:
Po tych zmianach podczas uruchamiania stacji pogodowej na porcie COM pin DRT/RTS (w zależności od ustawienia w pliku config.py) pojawiać się będzie napięcie dodanie. Przy pomocy tranzystora lub mikroprzekaźnika na 5V sterujemy PTT w naszym nadajniku. Jednocześnie głos prognozy pogody z wyjścia słuchawkowego komputera skierowany na wejście mikrofonowe nadajnika zmoduluje transmitowany sygnał i prognoza zostanie wyemitowana w eter.
Dyskusja:
SQ9ATK 2023-11-28 13:52:27
UWAGA: W ustawieniach modułu "activity map" należy zaktualizować domenę, na jaką przesyłane są informacje do mapy aktywnych stacji.
Starą domenę ostol.pl trzeba zamienić na vhf.com.pl Stara domena wkrótce przestanie działać
adres ze starą domeną:
- service_url="http://wx.ostol.pl/map_requests?base=
adres z nową domeną:
- service_url="http://wx.vhf.com.pl/map_requests?base=",
SP9WCB 2023-11-15 23:16:29
Zainstalowałem na 16.04.
Ruszyło bez problemów, została konfiguracja w wolnym czasie.
Nie ma co kombinować tylko trzymać się 16.04.
Dzięki za pomoc
SP4BK 2023-11-15 18:16:20
U mnie zainstalowana na ubuntu 16.04 i upgradowana do najwyższe wersji. Działa bez problemu od tzw. "kopa". :D
SQ9ATK 2023-11-14 12:31:43
Pobierz tą wersję https://cdimage.ubuntu.com/ubuntu-mate/releases/16.04/release/ i na niej zainstaluj. Wiem że jest stara ale nadal działa na niej od kopa - dosłownie przedwczoraj odpalałem kolejną pogodynkę na niej i zero problemów. No i oczywiście ciut lżejsza niż 22...
SP9WCB 2023-11-14 11:28:57
W systemie źródła że tak to nazwę "fabryczne" nic nie zmieniane
SP9WCB 2023-11-14 11:25:37
lubuntu-22.04.3-desktop-amd64
Starałem się wybrać najlżejszy aktualny.
Zarówno update jak i upgrade zrobione.
Terminal to fujitsu futro s900 z 60GB dyskiem SSD więc na brak miejsca nie narzekam, staram się jedynie nie forsować terminala.
Jeżeli jest inny lekki, aktualny i sprawdzony system na którym stacja będzie funkcjonowała to nie widzę problemu żeby go przeinstalować. Dla mojej wygody jednak najlepiej na coś "debianopochodnego"
SQ9ATK 2023-11-13 20:06:39
Jaka wersja Ubuntu? Czy na początku było
sudo apt-get update?
SP9WCB 2023-11-13 14:56:39
Przymierzam do się uruchomienia stacji pogodowej i juz na początku schody:
lubuntu@lubuntu-futros900:~$ sudo apt-get install git python-pygame python-tz python-imaging python-serial curl php7.0 php7.0-curl ffmpeg
Czytanie list pakietów... Gotowe
Budowanie drzewa zależności... Gotowe
Odczyt informacji o stanie... Gotowe
Uwaga, wybieranie php7.0-thrift dla wyrażenia "php7.0"
Uwaga, wybieranie php7.0-common dla wyrażenia "php7.0"
Uwaga, wybieranie php7.0-curl dla wyrażenia "php7.0"
Pakiet php7.0-curl nie ma dostępnej wersji, ale odnosi się do niego inny pakiet.
Zazwyczaj oznacza to, że pakietu brakuje, został zastąpiony przez inny
pakiet lub nie jest dostępny przy pomocy obecnie ustawionych źródeł.
Pakiet python-tz nie ma dostępnej wersji, ale odnosi się do niego inny pakiet.
Zazwyczaj oznacza to, że pakietu brakuje, został zastąpiony przez inny
pakiet lub nie jest dostępny przy pomocy obecnie ustawionych źródeł.
E: Nie udało się odnaleźć pakietu python-pygame
E: Pakiet python-tz nie ma kandydata do instalacji
E: Nie udało się odnaleźć pakietu python-imaging
E: Nie udało się odnaleźć pakietu python-serial
E: Pakiet php7.0-curl nie ma kandydata do instalacji
Czy ktoś przerabiał podobny temat?
SP4BK (ex. SQ4BJO) 2022-10-17 23:24:45
Długie poszukiwania, ale błąd znaleziony.
SQ9ATK 2022-09-04 06:46:48
Dzięki za znalezienie błędu. Trzeba doinstalować paczkę: sudo apt-get install php7.0-xml
Tego brakowało do szczęścia.
Przydałoby się dodanie php7.0-xml do linii komend w opisie instalacji (10 linijek wyżej) :D
sp4bk 2022-10-17 18:59:46
Coś mi nie idzie. Ani na użytkownik, ani na root :(
root@wx-serwer:/home/wx/sr0wx-master/audio_generator# php index.php
-- początek generowania --
tekst do przeczytana - nazwa_pliku_bez_rozszerzenia
PHP Fatal error: Uncaught Error: Class 'DomDocument' not found in /home/wx/sr0wx-master/audio_generator/index.php:54
Stack trace:
#0 /home/wx/sr0wx-master/audio_generator/index.php(37): readKey()
#1 /home/wx/sr0wx-master/audio_generator/index.php(84): getMpg('tekst do przecz...', 'nazwa_pliku_bez...')
#2 {main}
thrown in /home/wx/sr0wx-master/audio_generator/index.php on line 54
root@wx-serwer:/home/wx/sr0wx-master/audio_generator#