Плата відстеження польотів Pi-Sky – Raspberry Pi

Плата відстеження польотів Pi-Sky – Raspberry Pi


Pi Towers було досить тихо в Maker Monday, оскільки ми всі насолоджувалися святом у Великій Британії… тому ми вирішили святкувати у вівторок. Ознайомтеся з цим чудовим посібником Джеймса Мітчелла, який показує вам, як створити локальну панель керування польотом на Raspberry Pi з живими картами, історією та повторами.

Ви коли-небудь дивилися вгору і задавалися питанням, куди летів той літак, який ви бачили, або звідки він прилетів? Комерційні трекери польотів показують літаки по всьому світу, але залежно від того, скільки даних ви хочете або скільки ви готові заплатити, мати під рукою дані в реальному часі може бути рідкістю. За допомогою Raspberry Pi і приймача ADS-B 1090 МГц будівельники можуть декодувати ці відкриті радіопередачі з найближчих літаків і стежити за тим, що відбувається нагорі.

Плата відстеження польотів Pi-Sky – Raspberry Pi
Рейс GAF866 на Берлінському авіасалоні ILA

Який літак доставляє і як ми це отримуємо

ADS-B означає Automatic Dependent Control Broadcast. Більшість сучасних літаків передають ADS-B на частоті 1090 МГц короткими пакетами, кілька разів на секунду, що містить шістнадцяткову адресу ICAO (унікальний номер, призначений конкретному літаку), позивний (ідентифікатор управління повітряним рухом літака – наприклад, RYR3EM), позицію GPS, висоту, швидкість, траєкторію, вертикальну швидкість і ключові коди. Однак у трансляції не повідомляється, який це літак, звідки прибув рейс, куди він прямує, коли вилетів або прибув.

Як правило, коли ви використовуєте такий додаток, як FlightAware або Flightradar24, дані про рейси, які ви бачите, збираються з мережі приймачів 1090 МГц з усього світу, а також дані від постачальників рейсів. Важко назвати відсоток, але отримувачами можуть бути вболівальники, управління повітряним рухом, сусідні агентства та навіть уряди.

Приймач FlightAware Pro Stick Plus ADS-B/Mode S

Будь-який приймач у діапазоні приблизно від 100 до 250 км може приймати радіомовлення 1090 МГц з літака; це залежить від висоти польоту, типу використовуваної антени (кімнатна чи зовнішня) і навколишньої місцевості.

Створіть свій власний прийом

Загалом, будь-який сучасний комп’ютер Raspberry Pi з USB та мережею можна використовувати як основу для створення власного приймача. Але ви можете розмістити свій приймач на відкритому повітрі, де враховуються потужність і розмір.

Вам потрібен сумісний USB-приймач, налаштований на 1090 МГц; Наприклад, FlightAware Stick, FlightAware Pro Stick, Airspy Mini або RTL-SDR Blog V3 або V4. Зазвичай ці приймачі надають утиліту дешифрування: dump1090, яка виводить JSON на локальну URL-адресу, наприклад /data/aircraft.json. Існують деякі загальні інструменти RTL-SDR, але якщо вони сумісні з програмним забезпеченням dump1090, вони повинні працювати на ОС Raspberry Pi.

Повторні денні рейси одразу

Коли ви дізнаєтеся, які USB-накопичувачі ви хочете використовувати, слід звернути увагу на те, чи мають вони вбудовані фільтри чи підключені до антен із фільтрами. Фільтри важливі для блокування небажаного радіошуму, і на додаток до розміщення антени (чим вище, тим краще), це може покращити відстань, на якій можна виявити літак.

Рекомендовано використовувати FlightAware Pro Stick Plus. Пакети Raspberry Pi від FlightAware є зрілими, регулярно оновлюються та детально задокументовані. Зокрема, Pro Stick Plus поєднує в собі приймач і фільтр. Існує можливість завантажити свої дані в мережу FlightAware, що означає, що ви стаєте корпоративним клієнтом і можете користуватися програмою FlightAware без реклами.

Представляємо Pi-Sky

Pi-Sky — це єдина програма Python і веб-сервер, який зчитує дані dump1090, збагачує ці дані через загальнодоступні API та передає JSON у підключений браузер. Усе працює локально, тому ви контролюєте дані.

Особливості Pi-Sky

Ось деякі функції Pi-Sky:

Список рейсів: список маршрутів, визначених акцептором вашої картки, з деталями маршруту та логотипом авіакомпанії. Додатковий знімний дисплей показує останній рейс у стилі польоту аеропорту.

Карта польотів: локальна оперативна карта виявлених літаків у вигляді значків літаків. Натисніть на рейс, щоб дізнатися більше, і відстежте його на карті.

історія: отримані дані про польоти зберігаються в SQLite (тривалість можна налаштувати – за замовчуванням сім днів). На сторінці історії ви можете відтворювати польоти на карті, переглядати окремі рейси з міні-картами та фотографіями літака, а також фільтрувати за датою, маршрутом, типом і моделлю літака.

збагачення: ADS-B надає лише знімок кожного літака. Pi-Sky використовує безкоштовні API для заповнення (розширеної) інформації про маршрут, тип літака, реєстрацію та деталі аеропорту, якщо вони доступні.

Електронна підтримка Pimoroni Inky: відображення міні-карти та карти польоту на підключеному дисплеї Inky.

Інформація про збагачення та звідки вона надходить

Використовує Pi-Sky adsb.lol Для заповнення деталей, які не включають трансляції ADS-B. Adsb.lol був створений авіаційними ентузіастами та іншими учасниками, які обмінюються інформацією про приймач у центральній службі, яка підтримує базу даних маршрутів польотів. Він пропонує безкоштовний доступ до API, включаючи історичні дані маршрутизації, з відкритими умовами обслуговування. Якщо ви хочете підтримати проект, ви можете передати особисту інформацію одержувача на adsb.lol окремо або зробити пожертву через його веб-сайт.

Розширена інформація про рейси

Коли ваш приймач виявляє літак, Pi-Sky зберігає позиції у своїй локальній базі даних SQLite (якщо ввімкнено). Якщо літак має позивний і GPS-позицію, Pi-Sky запитає adsb.lol, чи знає він інформацію про маршрут: відправлення та призначення. Це добре працює для регулярних рейсів авіакомпаній, які часто з’являються в історичній базі даних. Це ненадійно для одноразових рейсів, таких як приватний, військовий, рятувальний або поліцейський транспорт. Будь-яке збагачення Pi-Sky реєструється локально в журналі польотів.

Служба adsb.lol зазвичай повертає коди аеропортів, такі як BER, EDDB або STN. Потім Pi-Sky використовує базу даних аеропортів OpenFlights, щоб перетворити їх на читабельні назви: наприклад, EDDB (або BER) стає Берлін Бранденбург, а STN стає Лондон Станстед.

Карти польотів надають всю інформацію одразу

Щоб отримати інформацію про літак, Pi-Sky шукає шістнадцяткову адресу ICAO через adsb.lol, щоб знайти реєстрацію, тип і модель, якщо вони доступні. Існує також додаткова офлайн-база даних літаків Mectronics, яку можна завантажити в налаштуваннях Pi-Sky; він індексується за адресою ICAO і може заповнити відсутні поля виробника, типу, моделі та реєстрації.

На сторінці «Історія» Pi-Sky може показати фотографію літака, коли відома реєстрація. Він намагається PlaneSpotters.net спочатку повертається до API Wikimedia Commons.

Це безкоштовний загальнодоступний пакет, і він не ідеальний, але саме тому Pi-Sky може існувати без платної підписки.

А як щодо мережі OpenSky?

Шукаючи в Google API відстеження польотів, ви можете знайти OpenSky Network: opensky-network.org знаходиться у верхній частині списку. Подобається adsb.lolOpenSky створено на основі краудсорсингових даних ADS-B і надає API. В основному Pi-Sky може використовувати OpenSky для збагачення, але є важливі застереження.

Знайдіть конкретні рейси за допомогою фільтрів

На сайті зазначено: «Безкоштовний доступ до повного набору даних надається лише дослідницьким установам, авіаційним властям, урядам і некомерційним організаціям для неособистого використання». Відповідно до умов ліцензії на використання OpenSky дані знову призначені для некомерційних досліджень і освіти. Що ще важливіше, Pi-Sky як постійний трекер польотів вимагає письмової ліцензії навіть для некомерційного використання. Комерційне або комерційне використання також потребує окремої угоди.

Якщо ви використовуєте дані OpenSky в опублікованій роботі, її умови вимагають належного цитування. Доступ через API базується на маркерах (OAuth2), а кредитні обмеження на більшості кінцевих точок означають, що можливе погіршення якості обслуговування. Більше підходить для незалежного аматорського проекту adsb.lol: Pi‑Sky може вільно запитувати його під час збагачення рейсів.

Встановлення та налаштування

Збірка починається з нового образу ОС Raspberry Pi, написаного за допомогою Raspberry Pi Imager. Після завантаження Raspberry Pi відкрийте вікно терміналу.

Ви можете встановити Pi-Sky, клонувавши це сховище GitHub і дотримуючись його інструкцій README.md файл:

$ git clone 

Крім того, Pi-Sky також можна встановити за допомогою єдиного інсталятора, який виконує всі вимоги: додає репозиторій FlightAware APT, встановлює dump1090-fa, клонує Pi-Sky. /home/pi/pi-skyстворює, записує віртуальне середовище Python config.json і реєструє служби systemd, щоб і dump1090, і Pi-Sky запускалися автоматично під час завантаження.

Конфігурація також може бути заблокована для загальнодоступних сайтів

Підключіть USB-накопичувач ADS-B перед встановленням.

$ curl -fsSL | sudo bash

Коли скрипт завершує роботу, він зазвичай друкує URL-адресу локальної карти http://: 5050/.

Відкрийте цю адресу в браузері в тій же мережі, щоб переконатися, що вона працює. Якщо висхідного трафіку все ще немає, перевірте dump1090 за допомогою:

$ sudo systemctl status dump1090-fa

Крім того, перевірте канал JSON за допомогою curl:

$ curl 

Точне налаштування на сторінці веб-конфігурації за адресою /config.html.

Важливо вказати місце розташування приймача в конфігурації (якщо у вас є Pi-Sky, ви можете приховати розташування на карті, а також заблокувати конфігурацію). Якщо у вас поблизу є аеропорт, ви можете ввести його там (це допомагає центрувати карту).

Наступний крок

Виняткова потужність Pi-Sky полягає в тому, що він зберігає всі дані польоту локально, і ви можете безкоштовно використовувати його для будь-яких завдань. Можливість відображати частину цієї інформації на електронному дисплеї Inky Pimoroni вже вбудована.

Знайдіть більше проектів тут Офіційний журнал Raspberry Pi

Однак ви не знайдете цієї збірки в останньому номері. Це вперше Офіційний журнал Raspberry Pi №168, який тепер ви можете читати онлайн безкоштовно.

Ви також можете підписатися на друковану версію нашого журналу. Ми не тільки доставляємо по всьому світу, але й ті, хто підпишеться на шість або дванадцять місяців підписки на друковану версію, отримають БЕЗКОШТОВНО Raspberry Pi Pico 2 W!

Ви можете знайти Офіційний журнал Raspberry Pi у Facebook, X, Threads, LinkedIn і Mastodon. Ви також можете зв’язатися з командою електронною поштою: [email protected]



Source link

Leave a Reply

Your email address will not be published. Required fields are marked *

Delta Air Lines (m1h262p) Delta Air Lines (m1h26g2) 애벗잡담잡이 애벗태양새 애벗얼가니새 애벗찌르레기 압드알쿠리참새 압딤황새 아버데어시스티콜라 이상한덤불개개비 에이버트북미덤불멧새 아비시니아캣버드 아비시니아크림슨윙 아비시니아지상코뿔새 아비시니아지상지빠귀 아비시니아긴발톱할미새 아비시니아올빼미 아비시니아파랑새 아비시니아낫부리후투티 아비시니아슬레이티딱새 아비시니아지빠귀 아비시니아왁스빌 아비시니아검은딱새 아비시니아동박새 아비시니아딱따구리 아카시아얼룩바벳 아카시아박새 아카디아딱새 아체직박구리 도토리딱따구리 아크레앤트슈라이크 아크레토디타이런트 아다마와멧비둘기 애들레이드솔새 아델리펭귄 애드미럴티매미새 아페프비둘기 아프간잡담잡이 아프간눈참새 아프리카줄무늬올빼미 아프리카검은오리 아프리카검은칼새 아프리카푸른딱새 아프리카푸른박새 아프리카넓적부리새 아프리카시트릴 아프리카목걸이멧비둘기 아프리카뜸부기 아프리카크림슨윙핀치 아프리카뻐꾸기 아프리카뻐꾸기매 아프리카뱀목가마우지 아프리카사막솔새 아프리카어두운색딱새 아프리카난쟁이물총새 아프리카에메랄드뻐꾸기 아프리카발가락물닭 아프리카파이어핀치 아프리카물수리 아프리카꾀꼬리 아프리카참매 아프리카풀올빼미 아프리카녹색비둘기 아프리카회색딱새 아프리카회색코뿔새 아프리카회색딱따구리 아프리카하리어매 아프리카매수리 아프리카산악잡담잡이 아프리카황조롱이 아프리카후투티 아프리카물꿩 아프리카습지하리어 아프리카올리브비둘기 아프리카대머리황새 아프리카검은머리물떼새 아프리카종려칼새 아프리카긴꼬리딱새 아프리카펭귄 아프리카피쿨렛 아프리카얼룩코뿔새 아프리카얼룩할미새 아프리카밭종다리 아프리카팔색조 아프리카난쟁이거위 아프리카난쟁이물총새 아프리카뜸부기 아프리카붉은눈직박구리 아프리카갈대개개비 아프리카강제비 아프리카바위 종다리류 아프리카성따오기 아프리카소쩍새 아프리카때까치딱새 아프리카은부리참새 아프리카제비물떼새 아프리카도요 아프리카저어새 아프리카점박이나무타기 아프리카검은딱새 아프리카뜸부기 아프리카지빠귀 아프리카볏도요 아프리카숲올빼미 아프리카노랑솔새 아가미왜가리 날렵한박새딱딱새