地月運動系統在我們小學課本中就已經學過,月球直徑3476公里,是地球直徑的3/11,月球質量是地球質量的1/81。月球在以地球為中心的圓軌道上每月繞地球轉一周,并隨地球繞太陽公轉,今天我們就用掌控板仿真功能制作一個基于mPyhon掌控板的地月運動演示系統。
要利用掌控板制作一個地月運動演示系統需要掌握循環模塊的使用技巧,了解繪畫工具和數學工具的使用(繪畫工具主要是繪制空心圓和實心圓的過程,數學工具主要是sin和cos的運用),其次還需熟悉OLED顯示字符的相關知識。
一、繪制地球圖案——實心圓:在指令模塊區添加顯示塊,繪制一個實心圓,圓心(96,32),半徑10。
二、繪制月球運動軌跡——空心圓:在指定模塊區添加顯示塊,繪制一個空心圓,圓心和地球的圓心是一樣的(96,32),半徑是30,完成之后我們可以運行看看效果,代表地球的實心圓和代表月球軌道的外圈。
三、繪制月球圖像,月球是圍繞著地球旋轉的,只需讓月球按照運動軌跡順時針旋轉就成了。但是這就會遇到一個問題,月球的圓心在哪里?因為月球始終是順著軌道運動,每移動一下,圓心都在變化,唯有軌道半徑保持不變。這里就需要借助地月運動系統輔助工具。圖中的數據仿真模擬了地月系統的圓心坐標變化的過程。橫坐標X=96+cos(i)*30;縱坐標Y=y=32+sin(i)*30。
代碼部分效果展示:
在代碼中我們先給定變量i的值的范圍在1-360之間,并且每隔11秒執行一次月球的運動,設置變量X和變量Y分別套用公式(橫坐標X=96+cos(i)*30;縱坐標Y=y=32+sin(i)*30)并且繪制三個圓(兩個實心圓:一個圓代表月球,一個圓代表地球;一個空心圓:代表月球的運動軌跡),月球繞著地球旋轉,為了運動模擬逼真效果還可以增加RGB燈光:依次進行紅綠顏色交替的互換,最終完成一個交互式的作品。
利用掌控板的仿真功能不僅僅可以做一些科學天文的小實驗,還可以做出一些音樂、歷史等不同的交互式作品,在接下來的日子里我也會繼續和大家分享更多有趣的小實驗。

