機器人編程:機器人課程,不僅涉及編程的知識,還需要孩子們了解學習機械、工程、信息等方面的知識。很多時候要運用機械解決問題,強調動手能力。解決問題的過程可能狀況百出,需要細心觀察、耐心解決,更強調團隊配合能力。
計算機編程:學的是編程的概念,注重計算機的思維,比如算法,函數,循環。它的理論性強,通常強調要以最有效的方式去解決問題,而且是在多場景通用的解決方法。編程對數學的要求更高,孩子學習編程就要學會對所見信息進行組織、分析,即培養邏輯思維,找到事物的相互關聯。相對於機器人,編程的世界是虛擬世界也可以說是完美世界。它沒有機器人世界的隨機性,只要你指令正確,計算機就完美呈現。
通俗的點說,計算機編程和機器人編程最大的區別就是一個是控制虛擬的,一個是真實世界的東西。
計算機編程,你控制一個角色直走100步,然後右轉90度,直走100步,你會發現走的特別完美。
接著你在用同樣的方法控制機器人,你會發現機器人好像不怎麼聽話,告訴了直走,走著走著就斜了,說好了拐90度彎的,還沒拐到90度就停止了。
瀏覽器版本過低,暫不支持視頻播放
這就是虛擬與現實的差距,為什麼會有這麼大區別呢?我們知道實際的機器人呢,除了軟體程序會影響,硬體構造也會影響,並且非常大,輪子是否磨損,重心是否調整好,電量是否充足,地面是否平整等等。
諸多的因素影響到機器人的實際運行效果,同一個程序,同一個機器人,可能第一次和第二次會出現不同的效果,總會出現不同程度的誤差,而如何找到原因,解決問題,減小誤差,就是我們追求的目標。一次次的修改完善,只是為了無限逼近我們想要的結果。
然而這些事情都是比較磨人的,有時候可能需要重新拆掉再來一邊,或者硬體損壞需要重新購買。這個過程中,孩子們不僅要有耐心解決問題,更要有對抗枯燥環境的適應能力。
就像最近帶孩子們一起做的「懸崖勒馬」小車,原理其實很簡單,但是要孩子們獨自完成,不出問題還是挺難的,每個車輪的位置調整,速度等都需要考慮到,一步步調整改進後才可能成功。
而虛擬的是在完美的條件下運行的,對於現實中的那些問題很少會碰到(電腦黑屏死機了等等),做錯了刪除重來就可以了,當然時間成本都是一樣的。
不怎麼了解機器人的,有時候看到機器人走個直線,會說就這麼簡單嘛。一般我都是微微一笑。機器人酷炫的背後,是一次次的調整修改,一次次的推倒重建,更多的人只是看一個結果,只有參與其中的人才知其不易。