什么,你想玩樂高機器人?上班時間還沒碼夠代碼是么 ;)
?
這篇我來介紹一下樂高的MindStorms系列產品,通常也直呼其為樂高機器人系列,它的重點,是可編程的能力……
?
樂高可編程機器人的產品歷史,源自于和麻省理工學院合作的項目。從1998年推出了的第一代“智慧型可編程化積木” 開始,到目前為止(2016年),樂高機器人一共推出了三代產品,在此期間還陸續推出過大小幾種簡化的可編程產品,用于特定的套裝系列。
?

各種可編程產品的主控模塊
?
Mindstorms的第一代產品當時全稱還是 Robotics Invention System(RIS),主控模塊是 RCX 1.0,在2000年前后,先后更新了RCX的1.5和2.0的版本
?

RCX 1.0 9719

9719 套裝內容
?
RCX做為樂高機器人第一代的產品,基本上已經奠定了后面幾代產品的整體基調:
?
首先是有一個主控模塊,可以通過編程,控制與之相連的外部組件,配備顯示屏可以做一些信息和狀態反饋
?
用于動力輸出的馬達,通過接口與主控模塊相連接,接收指令,同時由主控模塊供電
?
各種傳感器(比如觸動,溫度,距離,光線等),同樣通過接口與主控模塊相連接,用于采集外部反饋
?
主要結構組件采用樂高科技系列的零件,(原因也很明顯,機器人也是要用來執行各種機械運動的)
?
總體上來說,你可以認為,機器人系列是科技系列的一個智能加強版,通過編程來驅動馬達,而不是像普通的科技系列套裝那樣,通過遙控來手工控制馬達的運作。MindStorms系列的伺服馬達和科技系列的馬達構成也略有不同,MindStorms系列的伺服馬達具備角度步進控制的能力,所以能通過程序精確控制并完成特定的定位動作
?
此外,傳感器的引入,也使得MindStorms系列的編程不僅僅是完全機械化的執行固定的程序動作,而是可以將外部環境的信息采集反饋給程序,從而完成更加智能的行為控制
?

RCX1.0 搭建的自控履帶小車,配備兩個觸動傳感器用于探測障礙
?
第一代產品RCX的主控模塊,使用8位單片機進行編程,通過紅外端口和PC主機進行通訊,用于下載程序到主控模塊
?
2006年和2009年,樂高推出了產品名為NXT / NXT 2.0的第二代機器人產品,這一代產品升級了主控模塊的芯片,使用主頻48MHZ,32位的ARM 7芯片,支持USB和藍牙通訊協議,程序可以通過USB接口下載到主控模塊
?

MindStorms NXT 8527
?
叫機器人系列,沒有個機器人的搭建方案怎么說得過去呢?NXT2.0 8547的這個雙足步行機器人主模型,雖然走的顫顫悠悠,但是步行部分的結構設計還是很巧妙的(輪子驅動和踏步行走,實現難度完全是兩碼事)
?

8547
?
2013年,樂高發布了第三代機器人產品 EV3,這一代產品的主控模塊升級到主頻400MHZ的ARM9芯片,內存由NXT的256KB升級到了64MB(還是小氣。。。)運行的也不再是定制的嵌入式系統,而是基于Debian發行版的Linux操作系統,同時支持SD卡,usb,內置藍牙,支持wifi等通訊協議
?

EV3 玩具版 31313的5個官方示例模型
?
EV3的31313 套裝,官方自帶的五個示例中,包括這個眼鏡蛇,能在地面滑行前進,頭部附近遇到阻礙,能模擬發動攻擊動作,第一次看到產品發布前的宣傳視頻時,著實讓我驚艷了一把
?

31313 眼鏡蛇
?
之后,官網上陸續又添加了十幾個玩家設計的模型,比如下面這兩個:
?

電吉他

敲地鼠 ;)
?
整體上,樂高機器人三代產品的變更,主要體現在硬件參數和性能的提升,產品的基本構成思想并沒有太大的變化,如下圖EV3的產品模塊說明,差不多就是機器人系列典型的核心組件了:
?

EV3 產品模塊說明和連接示意圖