Анатомія "Космічного ЦОДу". Захмарний сервер: дивимося під капот

Анатомія "Космічного ЦОДу". Захмарний сервер: дивимося під капот

Вже завтра ми відправимо наш сервер до стратосфери. Під час польоту стратостат роздаватиме інтернет, зніматиме і передаватиме відео та дані телеметрії на землю. Ми кілька разів писали, що розповімо про технічну сторону нашого проекту «Космічний ЦОД» (раніше відгукувався на ім'я)Сервер у хмарах 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

Купити надійний хостинг для сайтів із захистом від DDoS, VPS VDS сервери 🔥 Купити надійний хостинг для сайтів із захистом від DDoS, VPS VDS сервери | ProHoster