Анатомия на „Център за космически данни“. Небесен сървър: погледнете под капака

Анатомия на „Център за космически данни“. Небесен сървър: погледнете под капака

Утре ще изпратим нашия сървър в стратосферата. По време на полета стратосферният балон ще разпространява интернет, ще снима и предава видео и телеметрични данни на земята. Писахме няколко пъти, че ще говорим за техническата страна на нашия проект „Космически център за данни“ (преди това отговаряше на името „Сървър в облаците 2.0"). Обещахме - доставяме! Под разреза има шепа части от хардуер и код.

уеб сървър

Дори в предишния проект „Сървър в облаците“, когато се издигнахме в пълноправен балон с екипаж от двама души, да вземем със себе си пълноправен сървър с акумулаторна батерия, да кажем, не беше рационално. И сега говорим за малък стратосферен балон, който ще трябва да изкачи 30 км, а не 1. Затова избрахме същия Raspberry Pi като уеб сървър. Този микрокомпютър ще генерира HTML страница и ще я покаже на отделен дисплей.

Сателитна връзка

В допълнение към Raspberry на борда ще летят модеми от сателитните комуникационни мрежи Iridium и Globalstar. Както си спомняте, планирахме да добавим модем за вътрешната мрежа Gonets към тяхната компания, но нямахме време да го получим предварително, така че ще го изпратим със следващия полет. Чрез сателитни модеми уеб сървърът ще получава вашите съобщения, които могат да бъдат изпратени до страница на проекта. Тези съобщения ще бъдат предадени на 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. Имаше малко време за подготовка на проекта (как може да има много от него?!), така че не се занимавахме с Aliexpress и поялник, а вместо това взехме готово устройство. Това е повече от достатъчно за нашите нужди. Ще свържем дисплея към Raspberry чрез HDMI.

Също така планираме да излъчваме видео от GoPro чрез отделен радиоканал, но все още не е известно как ще работи - може би ниските облаци значително ще намалят обхвата на комуникация. Но във всеки случай, след като намерим кацналия стратосферен балон, ще публикуваме видео от камерата и можете сами да видите какви съобщения е получил нашият „предкосмически център за данни“ и на каква височина се е изкачил - ще се покаже телеметрията в същата HTML страница, Освен това ще се вижда част от хоризонта.

Питание

Цялата красота, описана по-горе, ще се захранва от комплект литиеви батерии, сглобени по схемата 3S4B - три последователно, четири паралелно. Общият капацитет е около 14 Ah при напрежение 12 V. Според нашите оценки това трябва да е достатъчно, но след окончателното сглобяване, разбира се, ще измерим реалната консумация и ако е необходимо, ще добавим още батерии.

Добавете към всичко това GPS маяци, които ще използваме за търсене на кацналия стратосферен балон. А херметичната кутия ще бъде „къщата“ за сървъра и другите устройства.

Анатомия на „Център за космически данни“. Небесен сървър: погледнете под капака

Той ще предпази деликатното оборудване от промени в температурата и налягането. В същото време ще намали и дозата радиация, въпреки че това не играе никаква роля за нашия проект, сървърът ще лети в стратосферата за твърде кратко време, а фонът там не е толкова висок, колкото на МКС.

В допълнение към изпращането на съобщения до сайт на проекта, можете да участвате в състезание и да познаете къде ще кацне сондата. Основната награда е пътуване до Байконур за изстрелването на пилотирания космически кораб Союз-МС-13.

Анатомия на „Център за космически данни“. Небесен сървър: погледнете под капака

Източник: www.habr.com

Добавяне на нов коментар