Anatomy ng isang "Space Data Center". Sky-high server: tumingin sa ilalim ng hood

Anatomy ng isang "Space Data Center". Sky-high server: tumingin sa ilalim ng hood

Bukas ipapadala namin ang aming server sa stratosphere. Sa panahon ng paglipad, ipapamahagi ng stratospheric balloon ang Internet, kukunan at ipapadala ang data ng video at telemetry sa lupa. Sumulat kami ng ilang beses na pag-uusapan natin ang teknikal na bahagi ng aming proyekto na "Space Data Center" (dating tumugon sa pangalang "Server sa ulap 2.0"). Nangako kami - naghahatid kami! Sa ilalim ng hiwa mayroong isang maliit na piraso ng hardware at code.

Web server

Kahit na sa nakaraang proyektong "Server in the Clouds", nang umakyat kami sa isang ganap na lobo kasama ang isang crew ng dalawang tao, ang pagkuha sa amin ng isang ganap na server na may pagpupulong ng baterya ay, sabihin nating, hindi makatuwiran. At ngayon ay pinag-uusapan natin ang tungkol sa isang maliit na stratospheric balloon, na kailangang umakyat ng 30 km, hindi 1. Samakatuwid, pinili namin ang parehong Raspberry Pi bilang isang web server. Ang microcomputer na ito ay bubuo ng isang HTML na pahina at ipapakita ito sa isang hiwalay na display.

Koneksyon sa satellite

Bilang karagdagan sa Raspberry, ang mga modem mula sa Iridium at Globalstar satellite communication network ay lilipad sa board. Tulad ng naaalala mo, nagplano kaming magdagdag ng isang modem para sa domestic Gonets network sa kanilang kumpanya, ngunit wala kaming oras upang matanggap ito nang maaga, kaya ipapadala namin ito sa susunod na flight. Sa pamamagitan ng mga satellite modem, matatanggap ng web server ang iyong mga mensahe, na maaaring ipadala sa pahina ng proyekto. Ang mga mensaheng ito ay ipapadala sa Raspberry Pi, na magpi-queue sa kanila at ipapakita ang mga ito sa isang HTML na pahina.

Mahalagang punto: ang limitasyon sa haba ng isang text message sa Russian ay 58 character (kabilang ang mga puwang). Kung mas mahaba ang mensahe, mapuputol ito sa panahon ng paghahatid. Gayundin, ang lahat ng mga espesyal na character ay puputulin mula sa teksto, halimbawa, /+$%&;''""<>n at mga katulad

Dahil ang Raspberry Pi ay mayroon lamang isang UART port, ikokonekta namin ang mga satellite modem sa pamamagitan ng isang intermediate hub, na mangongolekta ng data mula sa mga modem at ipapadala ito sa Raspberry Pi.

Modem ng radyo

Hindi lang ipapakita ng web server ang lahat ng mensaheng natanggap mula sa iyo sa display, ngunit ipapadala rin ito sa Earth sa pamamagitan ng LoRa radio modem. Kaya gusto naming subukan ang ideya ng ​​pamamahagi ng Internet mula sa stratosphere (isang pagkilala sa proyekto ng Google Loon). Siyempre, ang aming stratospheric balloon ay hindi isang ganap na repeater ng komunikasyon, ngunit kahit na ang mga kakayahan nito ay sapat para sa matatag na paghahatid ng data, nang walang malaking pagkawala ng impormasyon, kung gayon ang mga dalubhasang sistema ay tiyak na makayanan ang pamamahagi ng Internet mula sa pre-space.

Telemetry

Bilang karagdagan, pinaplano naming ipakita ang data ng telemetry sa parehong pahina ng HTML. Dadalhin sila ng Raspberry Pi mula sa isang hiwalay na flight controller.

Anatomy ng isang "Space Data Center". Sky-high server: tumingin sa ilalim ng hood

Nagtatanong ito ng iba't ibang mga sensor na maaaring ilagay sa loob at labas ng hermetic box ng hardware, kinokolekta ang impormasyon sa isang tumpok, sinusuklay ito at ibigay ito sa isang maginhawang anyo sa mga nagtatanong. Sa aming kaso, hihilingin nito ang Raspberry Pi. Itatala namin ang presyon, altitude, mga coordinate ng GPS, patayo at pahalang na bilis at temperatura.

Ang data mula sa flight controller ay ipinapadala sa mahabang linya, na pagkatapos, gamit ang code na ito:

$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);

maging isang array sa isang form na maginhawa para sa pagpapakita:

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 
)

Ibo-broadcast din namin ang data ng telemetry sa Earth kasama ng iyong mga mensahe. Para magawa ito, magde-deploy kami ng receiving station sa launch site.

Display at camera

Upang matiyak mo na talagang natatanggap ng server ang iyong mga mensahe sa pamamagitan ng satellite communication, at na ito ay aktwal na lumipad sa stratosphere at hindi nakatayo sa aming opisina, nagpasya kaming ipakita ang lahat ng mga mensahe na may telemetry sa isang display na kukunan ng isang GoPro. Nagkaroon ng kaunting oras upang ihanda ang proyekto (paano magkakaroon ng marami nito?!), kaya hindi kami nag-abala sa Aliexpress at isang panghinang, ngunit sa halip ay kumuha ng isang handa na aparato. Ito ay higit pa sa sapat para sa aming mga pangangailangan. Ikokonekta namin ang display sa Raspberry sa pamamagitan ng HDMI.

Plano rin naming mag-broadcast ng video mula sa GoPro sa pamamagitan ng isang hiwalay na channel sa radyo, ngunit hindi pa rin alam kung paano ito gagana - marahil mababawasan ng mababang ulap ang hanay ng komunikasyon. Ngunit sa anumang kaso, pagkatapos naming mahanap ang nakalapag na stratospheric balloon, magpo-post kami ng video mula sa camera at makikita mo mismo kung anong mga mensahe ang natanggap ng aming "pre-space data center" at kung anong altitude ito umakyat - ang telemetry ay ipapakita sa parehong HTML page, Bilang karagdagan, makikita ang isang piraso ng abot-tanaw.

Pagkain

Ang lahat ng kagandahang inilarawan sa itaas ay papaganahin ng isang pagpupulong ng mga baterya ng lithium na binuo ayon sa 3S4B circuit - tatlo sa serye, apat na magkatulad. Ang kabuuang kapasidad ay tungkol sa 14 Ah sa isang boltahe ng 12 V. Ayon sa aming mga pagtatantya, ito ay dapat sapat, ngunit pagkatapos ng pangwakas na pagpupulong, siyempre, susukatin namin ang aktwal na pagkonsumo, at kung kinakailangan, magdagdag ng higit pang mga baterya.

Idagdag sa lahat ng GPS beacon na ito, na gagamitin namin para hanapin ang nakarating na stratospheric balloon. At ang hermetic box ang magiging "bahay" para sa server at iba pang device.

Anatomy ng isang "Space Data Center". Sky-high server: tumingin sa ilalim ng hood

Poprotektahan nito ang maselang kagamitan mula sa mga pagbabago sa temperatura at presyon. Kasabay nito, babawasan din nito ang dosis ng radiation, bagama't hindi ito gumaganap ng anumang papel para sa aming proyekto, lilipad ang server sa stratosphere nang napakaikling panahon, at ang background doon ay hindi kasing taas ng sa ISS.

Bilang karagdagan sa pagpapadala ng mga mensahe sa website ng proyekto, maaari kang makilahok sa isang kumpetisyon at hulaan kung saan dadating ang probe. Ang pangunahing premyo ay isang paglalakbay sa Baikonur para sa paglulunsad ng Soyuz-MS-13 manned spacecraft.

Anatomy ng isang "Space Data Center". Sky-high server: tumingin sa ilalim ng hood

Pinagmulan: www.habr.com

Magdagdag ng komento