熱門資訊
創客父愛作品:模擬NASA“太空艙”
來源:3XMaker 發布時間:2019年03月26日創客父愛作品:模擬NASA“太空艙”
當我為大兒子建造這個火箭控制臺時,清晰的意識到與之配套的還需要有一個太空船。在最近的四個月內,利用業余時間,我為小兒子制作了一款太空船。它有一個有許多非常有趣顯示屏幕的控制面板,同時能發出嗖嗖的火箭發射的聲音。一個操縱桿控制引擎和推進器的燈光和音效。有效載荷艙有一個機動艙口,并有一個可以通過視頻進行遠程遙控操作玩具衛星的機械臂。耳機可以為宇宙飛船和另一個屋子里的控制臺建立語音通信,這樣,孩子們就能在太空任務中進行分工合作。下面的視頻可以看到這個太空船的大部分功能,但是你想了解一些具體的制作細節,請繼續向下看。
這個阿波羅宇宙飛船多以直線為主。一個完整的圓柱體和錐形頂將會占去臥室的大部分空間,同樣也會增加時間和建造成本。我分別在三個不同的地方建造這個飛船,雖然不是很方便,但是把它從車庫移到臥室(還有去本地的創客嘉年華)成為了可能。在太空船和書架之間的墻上你可以看到為通向兩個孩子之間的啟動傳送系統而開的門。自從NASA的阿波羅時代的控制臺有一個啟動傳送系統,我想我會最終納入到我們的太空飛船項目中,作為運送關鍵部件和供給的最后一步。在建造太空飛船時,我并沒有完全限制在阿波羅主題。我增加了一些航天飛機的特點,比如帶有機械臂的有效載荷艙。
我在主發動機噴嘴處固定了一個音頻混頻器和低音放大器。在噴嘴底部,固定了一圈圣誕節用的LED彩燈。在前一個項目中,我破解了控制每個燈泡顏色和亮度的代碼,然后用Arduino進行控制來模仿火箭產生的火焰效果。這個Arduino同時控制每個推進器的紅色LED。通過USB操縱桿控制發動機和推進器LED的點亮。通過樹莓派讀取操縱桿的命令,并將操縱桿的維度映射到不同的方向,然后發命令給Arduino根據在相應方向上推進的大小來控制LED燈的亮度。樹莓派上的聲音系統也會播放聲音,并根據動作的大小而調節聲音大小。也就是說,如果只是推動操縱桿一點點,你會得到一個較弱的燈光和一個柔和的音樂。當你在這個方向更加向前推,燈光會更亮,聲音也會隨著變大。
說到聲音,我知道這對一個靠音效傳達很多動作的飛船來說是非常重要的。最后,我在面向宇航員的主控板上放置了一套電腦控制的音響。低音炮在飛船內,航天員腳下的位置。低音震蕩器放在了宇航員躺的那塊板子下方。低音震蕩器有自己的大功率放大器。對于不熟悉低音震蕩器的人來說,它有些類似于播放器,但不是通過聲音傳播輕微振動,而是通過固體傳遞到你的身體。這樣就會產生一種非常棒的振動效果,而不需要像音響那樣發出巨大的聲音。管看視頻時,當火箭發射和爆炸時會看到物體在振動,因為飛船中錄像的攝像機在振動。
我從freesound.org和NASA完善的檔案中尤其是阿波羅11號的飛行日志中獲得了控制面板需要的所有聲音。然后用音頻編輯軟件修剪、合成等方式處理。
我最喜歡的功能是,有一套運行在兩個孩子臥室之間的音頻通話系統將控制臺和宇宙飛船連接在了一起。這里用的是專為摩托車騎行設計的戴在頭盔下面的有線通信系統。我將耳機接到控制臺上,然后宇宙飛船連接到摩托車通信箱中。這樣就可以坐在控制臺前與坐在宇宙飛船中的另一個人交流了,指導他們完成諸如,發射,有效載荷部署,飛船修復,月球登錄等。每次玩耍的時候,他們都會說出許多專業的太空術語,學習到如何更好的指導對方。
CapCom面板有”按下通話”的PTT按鈕,當按下按鈕時,上方的LED就會點亮,然后播放一段通話開始的聲音,松開后,LED滅掉,播放一段通話結束的聲音。
飛船的有效載荷艙是非常有趣的。通過固定在控制面板上的遠程視頻監控屏幕和遠程遙控,宇航員可以遙控機械手臂發射和回收有效載荷艙。我們最愛的有效載荷艙是一套帶著一個小哈勃太空望遠鏡的太空玩具。當然也有許多不同的太空主題的樂高玩具和衛星可以玩。因此我對將來有一個詳細的規劃,將掛在天花板上五英寸長的魚線代表”軌道”。
有效載荷艙從這個角度看起來有些亂,但是宇航員從固定在右側的監控中看到左側確實非常干凈整潔。太空艙底部的絞盤通過繩子和滑輪來帶動支撐艙門的杠桿來實現開關,雖然有許多的減速齒輪,花費一分鐘左右才打開,但是考慮到絞盤的電機比一個頂針還小,能做到這樣實屬不易。D類電池可以為這個絞盤提供電力,同時可以將產生電力干擾的電機遠離其他用電設備。為控制面板和LCD屏幕提供電力的電源也在這個位置,還有連接操縱桿的樹莓派和Arduino。而控制面板則使用獨立的樹莓派和Arduino
我非常自豪于這套小狀態面板,這是一種非常便宜的制造炫酷顯示屏的方法。
我將LED緊密的固定在背板上,用手切的蜂巢式塑料板將光照進行隔絕。然后用一小塊廚房用砧板將光進行散射處理,最上面覆蓋一層噴墨的透明材料做為標簽。不同的LED用作不同系統的指示和警告,一些亮綠燈表示正在使用,比如降落傘(主降落傘(Main)和漏斗形降落傘(Drogue))和發動機的推進系統。其它亮紅燈表示危險情況,比如助推器(Booster)面板的按鈕多度使用就會引起各種故障,或者將”乙二醛泵(Glycol Pump)”開啟超過六次會引起”乙二醛溫度過低(Glycol Temp Low)”的警報。
“C&WS”是報警系統。這項功能同阿波羅飛船真實的系統是相似的當系統需給機組人員發送提醒或警告時,警報聲響起,主警報按鈕燈點亮,然后控制板相應的狀態指示燈點亮。按下主報警按鈕會停止噪音并且關閉按鈕上的燈,然后狀態面板會顯示引起警報的原因。“LAMP”可以對燈進行測試,它能將所有的狀態燈全部點亮來檢查是否有燒毀。我用“C&WS”面板上的其他開關作為模擬閃電的秘密觸發器
面板上標記的”控制(Control)”則主要依托于對飛船機械設備的想象了。對接探測開關有三個位置,回收,關閉,延伸。我沒有時間增加一個實際的對接探測器,但是可以同我的孩子們一起完成設計建造。
標著”SCE Power”是阿波羅飛船中的一個實際開關的翻版,它用來控制信號處理器是否切換到備用電源。信號處理器負責將發回控制臺的遙測數據處理干凈。一次,阿波羅12號飛船起飛后不久,就被閃電擊中,因為巨大的發射噪音,沒有人發現。控制臺開始接到各種錯亂的信號提示宇宙飛船出現了各種故障。當時負責控制臺EECOM站點的John Aaron發現了宇宙飛船遭受雷擊的癥狀,并從之前的訓練中找到解決方案。他建議宇航員將信號處理器切換到備用電源,然后遙測數據立馬恢復了,任務得以繼續進行。在我的宇宙飛船中,我做了一個觸發閃電的秘密觸發器,這樣引起的各種警報就會在SCE開關切換到Aux后恢復正常。
我的四歲兒子最愛的按鈕是”傾倒垃圾(Waste Dump)”,因為播放馬桶沖水的聲音,他認為這非常有趣。他知道宇航員給尿液收集器起的昵稱是”渴了先生(Mr. Thirsty)”,所以當有人撥動這個開關時他就會一直大小然后說”渴了先生(Mr. Thirsty)”。
為了處理氧氣和氫氣相關的監控,我設計了這個低溫(Cryogenics)面板。氧氣和氫氣灌都需要精確的測量罐內的壓力和數量等。當控制臺指示阿波羅13號的機組人員攪拌冷凍罐時,02號罐風扇錯誤的接線導致產生火花并引起爆炸。我的飛船控制面板中的“02風扇”開關也有類似的功能,播放一點風扇的噪音,然后是爆炸聲(低音震蕩器在這里幫了很大的忙),隨后就是02壓力和數量計開始變成紅色。實際中,缺氧會導致能量電池不工作(能量電池產生電能),狀態面板顯示“B總線欠壓(Main B Bus Undervolt)”,隨后開始播放著名的無線電呼叫“休斯頓,我們遇到問題了,B總線欠壓”。
EECOM面板包括四個電位器,每個分別對應一個12位LED燈條。旋轉旋鈕調節燈條中段位點亮的數量。所有段位變化的顏色表示旋鈕值大小的程度。如果旋鈕的數值調節到中間四個表示安全的段位中,所有的電量的段位就會是綠色。如果旋鈕數值稍高或稍低,就會顯示黃色。如果數值過高或過低,就會顯示紅色。這就是一個在宇航員與控制臺之間玩耍的非常棒的場景,詢問當前的等級是多少然后指示宇航員將進行操作是“需要更多動力”還是“節約能源”。
游戲時間結束時可以在終止“abort”面板以一種非常有趣的方式關閉整個飛船。將開關撥到“武器(Arm)”,“取消(Abort)”按鈕就會點亮。按下“取消(Abort)”會播放一段聲音“任務取消,系統關閉”然后安全的將電腦關閉。有時候在房內的一間屋子內,感覺到遠處陣陣的雷聲,如是說,我并不能確定這是正在靠近的雷雨還是飛船開著時孩子或者貓碰到了操縱桿。在游戲過程中,飛船本身并沒有多大的噪音,但是低音震蕩器產生的振動卻能穿透墻壁和地板。
我在助推器面板下安裝了可以模擬火箭聲響的音響。而低音震蕩器才是讓這個飛行器有真正震動感的關鍵。為了更加有趣點,我給每個按鈕添加了一個計數功能,這樣觸發系統過載的警報。比如說,狀態面板有三個可能的SPS警報,然后按下助推器(BOOSTER)控制板的SPS按鈕足夠多的次數就會將三個LED點亮。當助推器(BOOSTER)的任一按鈕按下后,綠色推力(THRUST)狀態燈就會亮起來。
這種帶有安全保護蓋的開關是非常不錯的。在撥動開關前首先將安全蓋打開,這極大的降低了觸碰的風險。這套煙火系統使用炸藥來執行某些操作,比如將艙口的降落傘彈開,引爆用來固定航天器不同模塊的爆炸螺栓。而這些系統又是一次性的,不能重新復位,所以防止誤觸是非常重要的。這些與開關相連接的聲音是各種各樣的爆炸聲和隨后的是一些我用聲音編輯器生成的噪音。你可以想象得到,這個低音震蕩器證明了所做的這些都是值得的。
查看控制板的后面就會發現,宇宙飛船的連線幾乎是控制臺的一半。
控制臺的程序我放在了Github上,需要Arduino與樹莓派兩者共同合作運行。Arduino使用了三個IO擴展芯片(MCP23017)讀取開關和按鈕的狀態。當開關(按鈕開關,船型開關,或者是撥動開關)改變狀態(開至關或者關至開),Arduino會通過串口通信(USB數據線)告訴樹莓派。然后樹莓派播放一段聲音或者開始一系列的事件,如果需要,還會給Arduino發送控制LED的命令。Arduino用了LED點陣驅動(HT16K33)控制所有的LED。這可以控制291個獨立的LED,聽起來數字非常巨大,但是要知道,數碼管的每個數字都有8個LED,LED燈條有24個LED(每個像素有紅、黃、綠三個LED,并能顯示三色)。電位器的數值通過Arduino的模擬輸入讀取。
我聽到有人說,沒有這種移開面板然后擺弄幾個零件的任務場景的科幻電影是不完整的。這聽起來對我的飛船來說是一個非常棒的特點,因此我在乘員艙中建了一個小隔間。用洞洞板做成的蓋子可以方便的拆卸(孩子們喜歡使用工具)。我在里面是鋪設了幾個接頭、軟管、閥門。將來的太空任務需要通過對這個乘員艙進行修補來完成。這對他們的動手能力,使用工具的能力,和鍛煉互相溝通的技巧都有非常大的幫助。
我設計這個宇宙飛船和控制臺是為了提供一種開放式的游戲。這本身不是一個必須輸或贏的游戲,而是一個可以為孩子們充分發揮想象力的炫酷的玩具。與其我他們設定各種游戲規則,不如提供一個他們可以自己思考的空間。提到制作的進展,我期望會隨著不斷的在其中玩耍,會想到更多的功能。然后一起添加這些新功能。開始會比較簡單,比如手工制作的衛星,為修理隔間增加的工具包和新玩意兒。隨著他們學到更多的知識,一些有趣的東西也會隨之出現的。
通過各種物品簡單的收集整理組合在一起而成的飛船可以提供凝聚力和有意思的體驗。分開來看,沒有一個單獨的功能是非常難以完成的,僅僅是有了有了更多的細節和大量的整合。如果你對制作類似的東西比較感興趣,你可以將其分解成可以操作的小塊,不要害怕學習新知識、新技能。你可以用一些簡單的工具和自學的技能,一周花費幾個小時就能制作出各種有趣的東西。

南京合越智能,增強智造,增強感知,增強交互!
業務合作
(我們會第一時間與您聯系)聯系方式
- 微信:13815863530(手機同號)
- QQ:38260484
- 3XMaker@163.com