Анатомія "Касмічнага ЦАДа". Зааблочны сервер: глядзім пад капот

Анатомія "Касмічнага ЦАДа". Зааблочны сервер: глядзім пад капот

Ужо заўтра мы адправім наш сервер у стратасферу. Падчас палёту стратастат будзе раздаваць інтэрнэт, здымаць і перадаваць відэа і дадзеныя тэлеметрыі на зямлю. Мы некалькі разоў пісалі, што раскажам пра тэхнічны бок нашага праекту «Касмічны ЦАД» (раней адгукаўся на імя «.Сервер у аблоках 2.0»). Абяцалі - выконваем! Пад катом жменя жалязяк і кода.

Вэб-сервер

Нават у мінулым праекце "Сервер у аблоках", калі мы паднімаліся на паўнавартасным паветраным шары з экіпажам з двух чалавек, браць з сабой паўнавартасны сервер з акумулятарнай зборкай было, скажам так, не рацыянальна. А цяпер гаворка ідзе пра маленькі стратастат, якому мае быць уздым на 30 км, а не на 1. Таму мы ў якасці вэб-сервера абралі той жа Raspberry Pi. Гэты мікракампутар будзе фармаваць HTML-старонку і паказваць яе на асобным дысплеі.

Спадарожнікавая сувязь

Акрамя Raspberry на борце паляцяць мадэмы сетак спадарожнікавай сувязі Iridium і Globalstar. Як вы памятаеце, мы планавалі ім у кампанію дадаць і мадэм айчыннай сеткі "Ганец", але мы не паспелі атрымаць яго загадзя, таму адправім яго ў наступны палёт. Праз спадарожнікавыя мадэмы вэб-сервер будзе атрымліваць вашыя паведамленні, якія можна будзе адпраўляць на старонцы праекта. Гэтыя паведамленні будуць перадавацца на Raspberry Pi, якая стане выбудоўваць з іх чаргу і адлюстроўваць на HTML-старонцы.

Важны момант: абмежаванне на даўжыню тэкставага паведамлення на рускай мове - 58 сімвалаў (уключаючы прабелы). Калі паведамленне будзе даўжэй, то пры перадачы яно будзе абрэзана. Таксама з тэксту будуць выразацца ўсе спец.знакі, напрыклад, /+$%&;''""<>n і падобныя.

Паколькі ў Raspberry Pi ўсяго адзін UART-порт, мы падключым спадарожнікавыя мадэмы праз прамежкавы канцэнтратар, які будзе збіраць дадзеныя з мадэмаў і адпраўляць на Raspberry Pi.

Радыёмадэм

Усе атрыманыя ад вас паведамлення вэб-сервер будзе не толькі адлюстроўваць на дысплеі, але і трансляваць на Зямлю па радыёмадэме LoRa. Так мы хочам пратэставаць ідэю раздачы інтэрнэту са стратасферы (трыб'ют праекту Google Loon). Вядома, наш стратастат - гэта не паўнавартасны рэтранслятар сувязі, але нават калі яго магчымасцяў хопіць для ўстойлівай перадачы дадзеных, без вялікіх страт інфармацыі, то ўжо спецыялізаваныя сістэмы сапраўды зладзяцца з раздачай інтэрнэту з предкосмоса.

тэлеметрыя

Акрамя таго, мы плануем на той жа HTML-старонцы выводзіць дадзеныя тэлеметрыі. Браць іх Raspberry Pi будзе з асобнага палётнага кантролера.

Анатомія "Касмічнага ЦАДа". Зааблочны сервер: глядзім пад капот

Ён апытвае розныя датчыкі, якія можна змясціць як унутры, так і звонку апаратнага гермобокса, збірае інфармацыю ў кучу, прычэсвае і ў зручным выглядзе аддае тым, хто папросіць. У нашым выпадку папросіць Raspberry Pi. Мы будзем рэгістраваць ціск, вышыню, GPS-каардынаты, вертыкальную і гарызантальную хуткасць і тэмпературу.

Дадзеныя з палётнага кантролера перадаюцца доўгімі радкамі, якія затым з дапамогай гэтага кода:

$str = 'N:647;T:10m55s;MP.Stage:0;MP.Alt:49;MP.VSpeed:0.0;MP.AvgVSpeed:0.0;Baro.Press:1007.06;Baro.Alt:50;Baro.Temp:35.93;GPS.Coord:N56d43m23s,E37d55m68s;GPS.Home:N56d43m23s,E37d55m68s;Dst:5;GPS.HSpeed:0;GPS.Course:357;GPS.Time:11h17m40s;GPS.Date:30.07.2018;DS.Temp:[fc]=33.56;Volt:5.19,0.00,0.00,0.00,0.00,0.00,0.00,0.00';
parse_str(strtr($str, [
	
':' => '=',
	
';' => '&'
]), $result);
print_r($result);

ператвараюцца ў масіў у зручным для адлюстравання выглядзе:

Array 
(
       [N] => 647
       [Т] => 10m55з
       [MP_Stage] => 0
       [MP_Alt] => 49
       [MP_VSpeed) => 0.0
       [MP_AvgVSpeed] => 0.0
       [Baro Рrеss] => 1007.06
       [Baro_Alt] => 50
       [Baro_Temp] => 35.93
       [GPS_Coord] => N56d43m23s,E37d55m68s 
       [GPS_Home) => N56d43m23s,E37d55m68s 
       [Dst] => 5
       [GPS_HSpeed] => 0
       [GPS_Course] => 357
       [GPS_Time] => 11h17m40s
       [GPS_Date] => 30.07.2018
       [DS_Temp] => [fс] ЗЗ.56
       [Volt] => 5.19, 0.00,0.00,0.00,0.00,0.00,0.00,0.00 
)

Тэлеметрычныя дадзеныя мы таксама будзем трансляваць на Зямлю разам з вашымі паведамленнямі. Для гэтага ў месцы запуску разгорнем прыёмную станцыю.

Дысплей і камера

Каб вы маглі пераканацца, што сервер сапраўды атрымлівае вашы паведамленні праз спадарожнікавую сувязь, і што ён наогул паляцеў у стратасферу, а не стаіць у нас у офісе, мы вырашылі выводзіць усе паведамленні з тэлеметрыяй на дысплей, які будзе здымаць GoPro. Часу на падрыхтоўку праекту было мала (ды калі ж яго бывае шмат?!), таму мы не сталі мучаць Аліэкспрэс і паяльнік, а замест гэтага ўзялі гатовы прыбор. Для нашых патрэб яго больш за досыць. Дысплей мы падключым да Raspberry праз HDMI.

Яшчэ мы плануем трансляваць відэашэраг з GoPro па асобным радыёканале, але як яно будзе працаваць, пакуль невядома - магчыма, нізкая воблачнасць моцна паменшыць далёкасць сувязі. Але ў любым выпадку, пасля таго, як мы знойдзем прызямліўся стратастат, мы выкладзем відэа з камеры і вы зможаце самі пераканацца, якія паведамленні атрымаў наш «перадкасмічны Цодзік» і на якую вышыню ён забраўся – тэлеметрыя будзе выводзіцца ў той жа HTML-старонцы, да таго ж будзе бачны кавалачак гарызонту.

Харчаванне

Уся вышэйапісаная прыгажосць будзе запатрабавана ад зборкі літыевых акумулятараў, сабраных па схеме 3S4B – тры паслядоўна, чатыры паралельна. Агульная ёмістасць каля 14 А·ч пры напрузе ў 12 У. Па нашых прыкідках, гэтага павінна хапіць, але пасля фінальнай зборкі, вядома, вымераем фактычнае спажыванне, і калі трэба, накінем яшчэ акумулятараў.

Яшчэ дадайце да ўсяго гэтага GPS-маякі, па якіх мы будзем шукаць прызямліўся стратастат. А «хаткай» для сервера і іншых прыбораў будзе гермабокс.

Анатомія "Касмічнага ЦАДа". Зааблочны сервер: глядзім пад капот

Ён зберажэ далікатную апаратуру ад перападаў тэмператур і ціскі. Заадно і радыяцыйную дозу паменшыць, хоць для нашага праекту гэта ніякай ролі не гуляе, занадта нядоўга сервер будзе лётаць у стратасферы, ды і фон тамака не такі высокі, як на МКС.

Акрамя адпраўкі паведамленняў на сайце праекта, Вы можаце паўдзельнічаць у конкурсе і адгадаць месца прызямлення зонда. Галоўны прыз - паездка на Байканур на запуск пілатуемага карабля Саюз-МС-13.

Анатомія "Касмічнага ЦАДа". Зааблочны сервер: глядзім пад капот

Крыніца: habr.com

Дадаць каментар