Tag Archives: robot

7月24日-7月25日_新北高工NXT研習營

20150724_103604

這次針對國中高中的高一新鮮人舉辦一連串的研習營,目的要讓同學體驗上了高中之後,有各式各樣的新知識、新技能等帶著他們來學習,研習營第一彈:NXT機器人研習

這次教學內容有:

觸碰遙控車、倒車雷達與避障機器人、光感應循跡機器人、相撲機器人還有足球機器人,兩天給你豐富的享受。

從7/27開始,還有APP設計體驗、3D繪圖、電路設計等體驗可以參加,地點在新北高工~

20150724_103623 20150724_103639

20150724_103652 20150724_103709

20150724_103716 20150724_103724

150415 Arduino習作工坊結訓與機器人之夜

Arduino 習作工坊春季班結訓囉,這一期學員好多啊,感謝大家對 CAVEDU 的肯定,我們還有很多課程,歡迎看看喔別忘了我們課程的投影片都是open的,歡迎自由取用分享(註明出處即可)。

最後一堂課是機器人之夜,會教大家如何用android app 透過藍牙(通訊之夜課程)來控制雙輪機器人(動力之夜課程)與 mearm 機械手臂。上完課就帶回家,很讚啊

thumb_IMG_1264_1024-1024x768-crop

看看這個態勢,好壯觀啊!MakerBar 快被塞滿了

thumb_IMG_1257_1024

 

 

 

thumb_IMG_1259_1024

學員表示說,像這樣的課程挺紓壓的,組組東西寫寫程式感覺很好(到底在哪邊服務這麼辛苦…)

thumb_IMG_1260_1024

大家一起來看看如何用 joystick 模組來控制 servo 的位置。

thumb_IMG_1263_1024

[2015 3月號 Robocon雜誌專欄]輕鬆使用Android 裝置控制樂高機器人:

感謝各位讀者的支持,連載終於邁入最終回了!本期專題要介紹如何使用Android 手機上的姿態感測器來控制樂高EV3 機器人。有接觸過App Inventor 的師長朋友們,歡迎從App Inventor 中文學習網的檔案庫下載本程式的aia 原始檔與apk 安裝檔。

文章原文刊載於《ROBOCON》國際中文版2015/3月號


什麼是Direct Command?為什麼需要它?

根據樂高官方文件, 您可以使用Direct Command做到的重要功能有:

• 啟動/停止主機上指定檔名的程式。
• 控制馬達啟動、停止、轉向、電力與角度上限。
• 取得感測器值與狀態

其餘功能,請參考官方文件(註1)。

開始玩機器人

本範例的機器人與2013 年1 月號的「翻轉控制」專欄是一樣的,只是由NXT 換成EV3 機器人而已。機器人不須加裝任何感測器,只要用兩顆馬達組裝成雙輪機器人即可。本範例是將馬達接在EV3 主機的輸入端A 與B。請確認EV3 主機的藍牙已啟動,接著將EV3 主機與Android 手機進行藍牙配對(註3),完成之後就可以把機器人放到一邊了。啟動藍牙之後,您可以從EV3主機的螢幕左上角看到藍牙的符號。

接下來依序介紹程式的各個功能:

STEP1 登入畫面:

首次進入程式的畫面如圖1a ,這時只有「EV3 裝置/ 連線」按鈕可以按,其它所有按鈕都無法操作。點選「EV3裝置/ 連線」按鈕後進入藍牙裝置清單(圖1b),請找到剛剛配對完成的EV3主機名稱(本範例為abc),點選之後就會由Android 裝置對EV3 主機發起藍牙連線。順利連線成功的話,「EV3裝置/ 連線」按鈕會變成不可按的狀態,其他按鈕則都可按(圖1c)。

圖1a 程式首次執行的畫面。 圖1b 點選連線按鈕後進入藍牙裝置清單。 圖1c 連線成功後的畫面。

STEP2 程式初始化:

在點選連線清單之前(ListPicker_EV3 清單選取器的BeforePicking 事件),需先將清單內容指定為Android裝置上的藍牙配對清單(圖2a),其中connected 這個布林變數是用來指示現在手機是否已和機器人成功連線。

圖2a 指定藍牙配對裝置清單。

點選之後, 會先測試連線是否成功,成功則將「EV3 裝置/ 連線」按鈕設為不可點選,「斷線」等按鈕設為可點選(圖2b)。

圖2b 連線成功後啟動相關元件。

STEP3 直接控制副程式start與stop:

直接控制的奧妙之處在於直接對EV3 發送位元陣列, 只要按照樂高官方文件(註1)的說明,以正確的格式來發送資料即可。以 start 副程式來說, 它可接受兩個參數:port/ speed。您可以看到每次呼叫它時, 都會初始化一個名為 data 的空清單,以本範例來說,每一個清單元素代表一個位元組長度的內容。格式為:(13, 0, 0, 0, 128, 0, 0, 165,
0, port , 129, speed , 166 ,0, port),如圖3a。這當然需要您去查找官方文件中各個欄位所代表的意義。在此我們是將port 與 speed 用變數來控制, 代表所要控制的馬達與其轉速。最後透過BluetoothClient 元件將整個data 清單經由藍牙發送給EV3 機器人即可。

圖3a start 副程式

到了stop 副程式,資料格式當然也有所改變。我們還用一個if 判斷式去檢查stop 參數是否為true , 如果是則在data 清單最後加入1 ,反之則加入0。這樣發送出去之後就能控制機器人是否要停止動作(圖3b)。

圖3b stop 副程式。

藉由這樣的架構,當您要改用姿態控制、觸碰點控制、語音控制時,整體架構是不變的,差別只在於如何修改speed 變數值而已。

STEP4 姿態感測器:

當手機的姿態發生變化時,就會自動呼叫它的姿態改變(OrientationChanged) 事件, 並會把XYZ 的軸向變化以pitch、roll 與azimuth 這三個事件變數呈現, 供我們取用。由圖4a 可知, 我們要透過X 軸向傾斜來控制機器人前進,Y 軸向傾斜來控制左右轉彎等。在本範例中我們使用另外一個Angle 參數(回傳一個角度代表手機往哪個方向傾斜)求出兩顆馬達的轉速。

圖4a Android 手機軸向示意圖。

在此有兩個重要的變數angle 與power:angle 代表手機的傾斜角度,這是由姿態感測器的Angle 參數再減去45 所決定,45 代表座標軸的偏移量。接著是power 變數,這是一個介於0 ∼ 1 之間的小數,代表手機的傾斜程度,數字愈大代表愈斜。power 變數值是由姿態感測器的Magnitude 變數再乘上200 所決定,200 是一個調控用的參數,數字愈大,代表在同樣的傾斜度下,機器人會跑得愈快,但是也更敏感而不好操控。樂高EV3 機器人的馬達電力範圍為100(正向全速旋轉)到-100(反向全速旋轉),數值超過上下限則就限制在100 或-100 ,如圖4b。

圖4b 姿態感測器的姿態改變事件(上半)

這四個重要的參數(pitch、roll、左馬達轉速與右馬達轉速)都會更新在畫面中間的四個Label 標籤元件上。先呼叫一次 stop 副程式,讓馬達先短暫停頓。接著呼叫兩次start 副程式,分別傳入「port =1;speed = cos(angle x power)」與「port =2;speed= sin( angle x power)」這組參數,代表根據姿態感測器的姿態變化量,進行三角函數運算結果,來決定左右馬達的轉速。

最後,把夾角與左右輪轉速捨去小數點之後(round 指令),將計算結果更新在Screen 的狀態列上,如圖4c。

圖4c 姿態感測器的姿態改變事件(下半)。

STEP5 斷線:

按下「斷線」按鈕之後,會中止藍牙連線(BluetoothClient.Disconnect指令),並使畫面上的各個元件恢復到程式一開始時的狀態。

操作

實際執行的時候,請先確認EV3 已經開機且藍牙也啟動了。接著在您的Android 裝置上點選畫面中的「EV3裝置/ 連線」按鈕, 會進到如圖1b的藍牙清單畫面,點選您所要的EV3主機名稱並連線成功後,試著把手機左右搖晃看看。朝前方傾斜,機器人就會前進,傾斜愈多,機器人跑得愈快(圖5a)。左右傾斜的話則是控制機器人左轉或右轉(圖5b)。在App Inventor 官方推出EV3 的元件之前,您也可以用這樣的方法來直接控制樂高EV3 機器人喔!

圖5a 手機朝前方傾斜43 度,X 軸向姿態發生 變化(pitch),機器人朝前方移動,左右馬達電力(38, 39)。

圖5b 手機朝左方傾斜44 度,Y 軸向姿態發生變化(roll),機器人原地左轉,左右馬達電力(-37, 41)。

本程式已上架Google play,請到Google Play 搜尋「CAVE 教育團隊」就找得到我們的樂高機器人系列app 了。歡迎大家到App Inventor 中文學習網的檔案庫下載本程式的aia 原始檔與apk 安裝檔。

註1:樂高EV3 直接控制指令的相關文件請參閱此網頁:http://botbench.com/blog/2014/02/19/ev3-buildyour-own-block-and-hdksdk-docs-available/

註2: 想學如何開發App Inventor 程式嗎? 請到App Inventor 中文學習網(http://www.appinventor.tw)與
我們一同學習。

註3: 與EV3 連線後如果出現「Error 402」之錯誤訊息請不必理會,程式依然能正確執行。

 

[3/29_C-Day有什麼?]系列之六:3D列印RAPIRO機器人公仔!!

RAPIRO機器人外形可愛,易於組裝,但要價不斐,我只是一個初心者,買不起怎麼辦?沒關係,本團隊於3/29 C-DAY當天送您RAPIRO機器人3D列印公仔,還可現場幫它彩繪,數量有限,送完為止喔!!!馬上來看看討喜的RAPIRO公仔吧:

(RAPIRO八人眾)

9

(未拆支撐架前)

5

(拆支撐架後)

7

(打磨後上第一次補土噴漆)

6

心動了嗎?趕快來C-DAY帶一個回家收藏吧!!

RAPIRO 列印檔載點

[新譯書上市] 機器人製作聖經

機器人製作聖經  Robot Builder’s Bonanza

作者: 高登‧麥康
譯者:曾吉弘
出版社:馥林文化
出版日期:2015/02/02
語言:繁體中文
定價:980元

內容簡介

《機器人製作聖經》一書可以說是教學步驟,也可以說是參考資料。製作機器人需要知道的關於機器人的藝術與科學在這本書中都可以找到。

本書沒有難以破譯的數學方程式、不切實際地假設你擁有電子或機械的專業知識能力,或是只有經驗豐富的專業人士才可以解決的複雜設計。如果你是新手,你可以先上本書的RBB線上資源網站查看「我的第一臺機器人」系列課程,這些課程會帶領你循序漸進地學習如何製作價格平實的自主活動機器人;如果你已經有一些組裝、電子學或是程式設計的經驗,本書已經規劃排序好各個步驟,你可以一邊閱讀一邊複習你所學過的各種技術與知識。

機器人製作聖經-封面

本書特色

.美國Amazon網路書店評選4.7顆星、機械教科書類排名前20名!

.使用本書時不需要任何經驗!沒有難以破譯的數學方程式,或不切實際地假設你擁有電子或機械的專業知識能力。是給非專業人士的機器人學專書中涵蓋最廣、最完整的一本。

.完整升級!大幅修訂的第四版新增了Arduino與PICAXE微控制器的章節,並且運用快速成型技術在更短的時間內製作機器人。

.本書中的模組化專題可以依照自己喜歡的方式合併,創造出各式各樣的高智慧機器人!

作者介紹

作者簡介

高登‧麥康(Gordon McComb)

高登‧麥康擁有65本書籍著作,在各雜誌上發表過數以千計的文章,書籍銷售量已發行超過百萬本,被翻譯成十幾種語言出版。他撰寫關於電腦與高科技的週刊新聞專欄已有13年的經驗,吸引了世界各地幾百萬名讀者。他也是SERVO雜誌與其他出版品的定期文章寫手,還自己架設網站,專門教導機器人建構過程中的科學藝術。

譯者簡介

曾吉弘

CAVEDU教育團隊技術總監,對於Android、機器人與各種合金玩具有狂熱。著、譯有多本Android、Arduino、Raspberry Pi與機器人相關書籍,為一群活潑近乎躁動的機器人玩家頭目。官方網站:www.cavedu.com

目錄

第1卷──機器人製作的藝術與科學
第1章  歡迎來到機器人的美妙世界!
第2章  機器人的構造
第3章  取得零件

第2卷──組裝機器人
第4章  安全第一(永遠第一)
第5章  組裝機器人主體──基礎篇
第6章  機械組裝技巧
第7章  木材加工
第8章  製作移動式木頭平臺
第9章  塑膠加工
第10章 製作移動式塑膠平臺
第11章 金屬加工
第12章 製作移動式金屬平臺
第13章 組裝的技術
第14章 快速成型法
第15章 使用電腦輔助設計製作機器人設計圖
第16章 使用玩具零件製作高科技機器人
第17章 用手邊的零件來製作機器人

第3卷──動力、馬達與運動
第18章 電池大補帖
第19章 機器人的電力系統
第20章 讓機器人動起來
第21章 如何正確選擇馬達
第22章 使用直流馬達
第23章 使用伺服機
第24章 安裝馬達與輪子
第25章 形狀記憶合金與機器人動作

第4卷──手做機器人專題
第26章 製作輪型、履帶機器人
第27章 組裝足式機器人
第28章 以機器手臂進行實驗
第29章 以機械夾具進行實驗

第5卷──機器人電子學
第30章 製作機器人電路:基礎篇
第31章 機器人常見的電子元件
第32章 使用免焊麵包板
第33章 製作電路板

第6卷──電腦及電子控制
第34章 機器人「大腦」概述
第35章 認識微控制器
第36章 程式設計觀念:基礎篇

第7卷──作為大腦的微控制器
第37章 使用Arduino開發板
第38章 使用PICAXE微控制器
第39章 使用BASIC Stamp
第40章 將硬體與微控制器或電腦連接
第41章 遙控系統

第8卷──感測器、導航與回授
第42章 加上觸覺
第43章 感測接近程度與距離
第44章 機器人的眼睛
第45章 機器人導航
第46章 製造與聆聽聲音
第47章 互動新創意
第48章 危險!威爾羅賓遜

附錄AARBB線上資源網站
附錄B 網際網路上的零件供應商
附錄C 機械規格對照
附錄D 電子規格參考

python on EV3 機器人 – 整理好的 img 檔送給您!

本篇要介紹如何燒錄給樂高EV3 機器人開機用的SD卡,內含的作業系統是 Debian,並已經掛好版本相當新的 Python2 與 Python 3。本文是按照 ev3dev 網站來操作,歡迎您與我們一起來玩玩看喔!

先讓大家看看成功的畫面,讚啦!在這個 terminal 下面可以玩的事情實在是太多了。要做到以下畫面,您需要兩件事:

1. 下載 img 映像檔並燒錄到 micro SD 卡中,插入EV3的SD卡插槽即可開機(無需更改原本的作業系統)2. 完成 Ethernet over USB,讓這台EV3模擬成一個網路裝置。我們就是這樣透過 SSH 來登入它,它也能利用電腦的網路來上網更新套件等等。本文以 Windows 來示範(說真的在 Linux / MAC 上來處理簡單多了)

009

1. 請下載我們幫您包好的 img 檔,與官方的差別在於我們有幫大家把一些python 套件與官方開發的 EV3 library 整理得更好一點。這個解壓縮完會有 15G,所以您需要16G 的記憶卡喔。使用 Win32DiskImager 燒錄,燒錄完畢插入 EV3 的 micro SD slot 即可開機。開機完成畫面如下:

 

2. 請進入 USB 選單,啟動RNDIS(Remote Network Driver Interface Specification、遠端網路驅動程驅動規格… 好拗口)。接著回到上一層,進入 Networking 選單,啟動 Gadget 選項即可。

    

 

3. 接著請將您的 EV3 接上電腦,並開啟控制台 / 裝置管理員。在此由於 Windows 會自動安裝好 driver ,但這不是我們要的,所以在此要重新做一遍。請在網路介面卡下找到 Remote NDIS based Internet Sharing Device

004

4. 請對它點選右鍵來更新驅動程式,並選擇[從指定位置來安裝]。接著選擇網路介面卡,製造商選擇 Microsoft,並在右側找到 Remote NDIS Compatible Device。這時就會您是否確定要更新 driver,點選確定後即可,在此需要等一下(約1~2分鐘)。

5. 最後一步是把我們聯外的網路分享給 EV3 使用。請回到控制台 / 網路與共用中心,請點選畫面左側的[變更介面卡設定]。您在其中會看到一個 USB Ethernet/RNDIS Gadget,這就是 EV3 啦。

005

6. 請回到控制台/網路與網際網路/網路連線,找到您聯外的網路名稱(下圖為 ROBOTKINGDOM-WIRELESS),對它點右鍵,找到[共用]選項。

006

7. 請勾選其中的選項,這樣就能讓 EV3 藉由這個網路來聯外了。

 

008

 

8. 電腦設定完成了,請回到EV3 主畫面。Networking / Manage connections,會看到一個 Wired 選項,請點選它

在 IPv4 標籤下點選 Change…

選擇 Load Windows Defaults,藉此仔入我們之前辛辛苦苦做好的設定啊 QQ

這時還沒有連線,所以您會看到 State 顯示為離線(offline)。請切到 Conn. 標籤,點選 Connect automatically,這樣 EV3 就會在每次開機時試著去用這組設定去連上網路。

最後點選Connect,一切順利的話就可以在 IPv4 標籤下看到您的 EV3 取得的 IP了!下圖為 192.168.137.3,我們就是透過這個 IP 來登入 EV3。

 

9. 請用 putty 或其他類似功能的連線程式,使用 SSH 連到這個 IP。預設帳密為 root / r00tme <- 兩個 zero 不是O。登登登!登入之後的歡迎畫面如下:

009

 


 

 

 

 

登入之後就來玩看看,首先切換到  /sys/class 裡面看看有什麼,相關的硬體都有:gpio (EV3的按鈕好像是歸類在這,還要確認一下)、leds、tacho-motor 與 i2c 裝置等等。再進入 /tacho-motor 資料夾看看:有一個 motor0 ,這代表一個實體樂高EV3馬達。

請注意您必須真的接上一個馬達才會在 /tacho-motor 資料夾下看到 motor0

013

輸入 cat /sys/class/tacho-motor/motor0/position 即可讀取馬達角度感測器值,下圖讀了兩次:-33 與 239

011

要直接這樣子讓馬達轉起來也是可以的:請先 echo 50 > ~/duty_cycle_sp,代表設定馬達電力為 50%,接著再 echo 1 > ~/run。馬達就會轉動啦!延伸閱讀:Python EV3 速記 – 控制馬達轉速與方向

012

[新書出版] LabVIEW 高階機器人教戰手冊 第二版 – 針對樂高EV3/NXT機器人

[LabVIEW高階機器人教戰手冊 第二版] 來了!內容適用於樂高EV3與NXT機器人套件。如果是EV3的話,您需要使用 LabVIEW 2012以後的版本並另外安裝對應版本的 LabVIEW Module for LEGO MINDSTORMS

本書第一版是2010年10月出版的,一轉眼已經過了4年了,很高興個還能收到許多讀者的支持與肯定,我們會更努力編寫優良的教材喔

請參考 CAVEDU 實驗室 LabVIEW 說明

2014-12-24 19.35.57

書名:LabVIEW高階機器人教戰手冊:打造智能與趣味兼具的機器人(第二版)

作者: 曾吉弘、官文絢、吳維翰、謝宗翰、顏義翔、薛皓云、翁子麟
出版社:碁峰
出版日期:2014/12/24
語言:繁體中文

定價:450元

內容簡介

  .使用LabVIEW高階圖形化程式環境,程式功能強大且指令豐富,可以讓您設計出各種不同的機器人。.支援最新的樂高EV3機器人平台,也向下相容樂高NXT機器人。

.適用LabVIEW 2009之後的版本。

.第二版新增:資料擷取與分析、Kinect 體感互動等專章介紹。

.包含了92個核心程式範例與4個進階專題,如:人機介面設計、影像辨識追蹤與高階機器人行為模式等,您可從中學習諸多重要技巧與概念。

.您將學到可運用哪些設備讓機器人更厲害,包含:Kinect 體感感測器、光感測器陣列與視覺處理模組等。

.本書作者群為LabVIEW專業教學團隊,實戰經驗豐富,帶領您從無到有建立起圖形化程式設計的基礎以及機器人技術,不僅適合機器人玩家閱讀,亦可做為機電整合、訊號分析量測與自動控制課程之先導教材。

.範例程式檔與本書更多

名人推薦

淡江大學電機系暨機器人研究所 翁慶昌教授
南台科技大學機器人研究中心 謝銘原主任
國家發展儀器股份有限公司 大中華區行銷總經理 郭皇志  聯合推薦!

作者介紹

作者簡介曾吉弘

CAVEDU教育團隊技術總監
Robocon雜誌國際中文版 專欄作者

官文絢

臺北市立大學物化系助理教授
國立交通大學電子物理博士

吳維翰(John)

學歷:美國麻省 Tufts University: 機械工程系學士、碩士(2002,2004)
現職:國家發展儀器股份有限公司

目錄

chapter 01 LabVIEW 緒論
chapter 02 樂高機器人發展發與零件介紹
chapter 03 LabVIEW 初體驗與撰寫準則
chapter 04 機器人初體驗與控制結構
chapter 05 機器人動作控制
chapter 06 感測器原理與應用
chapter 07 數值運算
chapter 08 其他 EV3 功能
chapter 09 直接控制模式
chapter 10 資料擷取與分析
chapter 11 LabVIEW 的延伸應用
chapter 12 終極循跡機器人
chapter 13 機器視覺
chapter 14 向經典致敬 – 圖靈機
chapter 15 Kinect 體感互動
appendix A 範例機器人組裝說明
appendix B LabVIEW 的 NXT/EV3 介面
appendix C LabVIEW 的其他樂高機器人周邊
appendix D 取得 LEGO MindStorms LabVIEW Module
appendix E 參考文獻

[3D繪圖]紅外線測距感測器底座

繼上次製作超音波感測器底座後,深獲好評(?),這次再來替我們的紅外線測距感測器來做個底座,有了上次的經驗後,這次製作時間快了許多,做出來裝在mini car上的效果是這樣:

正面來一張

rid2

側面來一張

rid3

本次繪圖使用DesignSpark Mechanical 2 .0,這次一共改了五個版本後才完成,以下為3D圖

RID4

五個版本正面圖排排站,正面並沒有作太多的更改

RID5

接下來比較一下每個版本的差異,首先第一版完成後發現內側無凹槽,且二側半圓形洞太前面,所以第二版增加凹槽並加厚半圓形洞。

RID6

後來發現塞進去後大部份都卡在外面,所以笨笨的將半圓形洞往前填滿,後來發現還是卡在外面…

RID7

後來發現是內側第二層要往後調,且二個螺絲孔位置似乎較下面,調整後3、4版比較

RID8

最後發現還有1.5mm的差距才能完全卡入,所以將正面中間四方形洞的寬度上、下調整0.1mm

rid9

完成品,綠色還滿討喜的

rid10

rid11

附上檔案供大家下載使用看看喔! RID Sensor

Python EV3 速記 – 控制馬達轉速與方向

EV3 改用 Linux 為核心之後,真是創意無限。只要燒錄好 SD 卡,就能讓 EV3 用不同的作業系統開機。繼 leJOS 之後,也可以用 Debian 開機了。既然是一台完整的作業系統,自然是寫什麼程式語言都可以,但 python 最近實在是太夯了,所以 ev3dev 這個網站就提供了全套的 python + EV3 教學。您只要燒錄好 SD 卡並設定好 Ethernet over USB 就可以了。(本文為速記,日後會補上完整的環境建置教學)

http://www.ev3dev.org/

先來看影片,下指令控制馬達轉動,停止還可以控制轉速

控制轉速:echo 50 > /sys/class/tach0-motor/motor0/duty_cycle_sp   (0為靜止,100為最高速)

轉動: echo 1 > /sys/class/tach0-motor/motor0/run

停止:echo 0 > /sys/class/tach0-motor/motor0/run

設定好 Ethernet over USB 之後,可以透過 Putty 小程式來 SSH 登入 EV3,下圖中的 192.168.137.3 就是 EV3 的 IP。登入後就能進行各種 linux command。

009

EV3 的各類硬體裝置(LED,發音器,馬達,感測器等等)是列在 /sys/class 中,馬達是位於 /tacho-motor 資料夾中

013

在 terminal 中輸入 cat /sys/class/tach0-motor/motor0/position 即可讀取指定馬達的角度感測器值。下圖共讀取兩次: -33 與 239

011

 

MeArm 機器手臂 之CAVEDU 改良版

12/17 CAVEDU 與 MakerBar Taipei 舉辦的機器人之夜,學員學到了如何用 Arduino 來控制雙輪機器人與最近很紅的 MeArm 桌上型小機器手臂。另外在 Raspberry Pi 的課程中,也會改用 Raspberry Pi 的GPIO 腳位來控制這些伺服機,這樣可以玩的事情就更多囉。

在組裝過程中,我們有對轉動樞紐做一點改良,改用帳簿釘(影印店就有賣),這樣關節轉動會比較順暢,不會因為太緊而轉動不良甚至零件變形。改良版本會盡快放到網路上讓大家下載。

2014-12-17 20.25.20

 

來看美美的沙龍照喔

arm3  arm1arm2

[LinkIt One教學] 雙馬達機器人

使用 LinkIt One 來進行各種 I/O 之後,要做一台機器人也是一定要的。只要使用 L293D 這樣的馬達控制晶片就可以控制直流馬達。先來看影片。偷懶使用 Motoduino 來當作馬達控制板,本程式無法調整馬達速度。

CAVEDU LinkIt One 系列文章

任何雙馬達車身都可以喔。行動電源是對 LinkIt One 供電,電池則是對馬達供電

10815893_889158677763902_535136444_n 10815734_889158541097249_2047084033_n

從上方看下去

10841307_889159007763869_1680010118_n

程式碼如下:

void setup() {
  // put your setup code here, to run once:
  pinMode(2, OUTPUT);
  pinMode(3, OUTPUT);
  pinMode(4, OUTPUT);
}

void loop() {
  // put your main code here, to run repeatedly:
  forward();
  delay(500);
  stopped();
  delay(500);
  back();
  delay(500);
  stopped();
  delay(500);
  left();
  delay(500);
  stopped();
  delay(500);
  right();
  delay(500);
  stopped();
  delay(500);
}

void forward()
{
  digitalWrite( 2, HIGH);
  digitalWrite( 3, LOW);
  digitalWrite( 4, LOW);
}

void back()
{
  digitalWrite( 2, LOW);
  digitalWrite( 3, LOW);
  digitalWrite( 4, LOW);
}

void left()
{
  digitalWrite( 2, HIGH);
  digitalWrite( 3, LOW);
  digitalWrite( 4, HIGH);
}

void right()
{
  digitalWrite( 2, HIGH);
  digitalWrite( 3, HIGH);
  digitalWrite( 4, LOW);
}

void stopped()
{
  digitalWrite( 2, HIGH);
  digitalWrite( 3, HIGH);
  digitalWrite( 4, HIGH);
}

Arduino Yun_無線網路遙控車(一)

今天要使用Arduino Yun 來做一台無線網路遙控車。我們可以在網頁上製作一個遙控器,控制車體前後左右移動,還能透過超音波感測器來偵測距離,今天是要把書上的專題所提供的硬體做替換,讓車體也能順利地使用

20141109_225801

這次的專題參考的是碁峯出版:實戰物聯網開發-使用ArduinoYun

這本書是由本團隊的阿吉老師所翻譯的~~~

20141109_225818

這本專題在第四章提到使用無線網路遙控車體,使用的材料有:

  • ArduinoYun開發板
  • ArduinoUno開發板
  • DFRobot馬達擴充板:DFRduino
  • DFRobot超音波感測器:URM37
  • DFRobot:miniQ二輪平衡車機組
  • DFRobot

今天,為了增加我們入手這些裝備的方便性、減少製作成本,我們會把ArduinoUno開發板(台幣:800元)、馬達擴充板(美金10元,不含運費)、超音波感測器(美金15元,不含運費)做替換。

替換的零件為:超音波感測器HS-SR04  (台幣100元,光華商場購得)

20141110_000733

ArduinoUno + 馬達擴充板=motoduino 2.0 ,(台幣600元,官方網站購得)

20141109_225148

接下來要疊上 Arduino Yun開發板

20141109_225125

遙控車本身不一定要購入指定的車體,只要準備是左右輪胎透過獨立的直流馬達來驅動(共兩個)的車體即可。本範例為左右輪胎各一個直流馬達(miniQ二輪平衡車機組)

20141110_000701

接著開始撰寫程式了~~

如果您使用的硬體跟書中使用的硬體相同的話,範例檔案可以由此下載

如果您想使用這次分享的硬體製作的話,範例檔案可以由此下載

這是這次我所製作出來的遙控車,為了方便日後加裝其他的感測器,使用了比較高的銅柱

20141109_225032

這個遙控車與書中的遙控車有什麼地方需要注意呢?

最大的不同在於motoduino與arduinoyun接線的腳位不同,以及超音波感測器的程式碼撰寫不同

首先請到我們的檔案庫下載範例

接著將範例中的資料夾”HCSR04Ultrasonic”複製到ArduinoIDE的library當中,

請注意!ArduinoYun使用的IDE最少要1.5.6以上的版本!!

yun_sonic01

接著打開檔案”motoduino_sketch.ino”,這個檔案請燒錄在Motoduino上,畫黃線的部分是ArduinoYun與Motoduino的連接方式

還有宣告馬達的腳為5、6、7、8

yun_sonic02

圖中使用的函式庫<wire.h>是motoduino與ArduinoYun溝通(I2C)的方式

motoduino與ArduinoYun的溝通

1、將motoduino的A4腳與ArduinoYun的D2腳相連

2、將motoduino的A5腳與ArduinoYun的D3腳相連

 

Motoduino的馬達連接方式

1、將右邊馬達的正極接在M1+,負極接在M1-

2、將左邊馬達的正極接在M2+,負極接在M2-

 

接著我們來連接超音波感測器,超音波感測器的接線請接在ArduinoYun上。

首先打開檔案”HC-SR04_yun_sketch.ino”,這個檔案請燒錄在AduinoYun上,

畫黃線的部分是ArduinoYun與超音波感測器使用的函式庫、宣告的腳位為10、11

yun_sonic03

連接超音波感測器

1、感測器Vcc接腳與Yun的5V接腳相連

2、感測器Trig接腳與Yun的D10接腳相連

3、感測器Echo接腳與Yun的D11接腳相連

4、感測器GND接腳與Yun的GND接腳相連

將線連好之後,我們來測試ArduinoYun與motoduino受否能溝通成功,讓車子順利行走

將程式”HC-SR04_yun_sketch.ino”燒入ArdunioYun的程式之前,我們首先開啟測試的程式碼,

這個程式碼不需要網路連線就會對motoduino下達轉動馬達的指令

將下圖的程式碼”/*”、”*/”去除後,再進行燒入

yun_sonic04

 

燒入後你的ArduinoYun,就會一直傳送資料250,0,0,0給motoduino。

可以輸入的馬達馬力為0-255

控制馬達前進後退則為0、1

 

打開Serial monitor可以確認指令是否成功傳送

yun_sonic05

如果要確認motoduino是否有收到資料

將程式””motoduino_sketch.ino””燒入motoduino的程式之後

打開Serial monitor,就可以進行確認

yun_sonic06

超音波感測器測試

打開程式”HC-SR04_yun_sketch.ino”,接著將程式72行  //measure_distance(1);的註解刪除

yun_sonic07

接著將程式”HC-SR04_yun_sketch.ino”燒入到ArdunioYun的程式,打開Serial monitor就可以看到超音波感測器偵測時使用的時間,以及與障礙物之間的距離

yun_sonic08

今天的分享就到此為止,下篇教學將告訴您如何架設網站,透過網頁按鈕來控制這台機器人,再見囉~~~

 

 

 

樂高EV3 與 MindSensors 系列周邊教學投影片

樂高EV3原廠的感測器不夠用怎麼辦?如果要用到4個以上的感測器或馬達怎麼辦?這時您需要一些協力廠商所生產的感測器以及擴充套件等等。讓您的機器人可以更厲害!

MindSensors 這家公司來說,它生產了許多機器人必備的感測器,例如NXTCam 視覺模組三合一加速度計與陀螺儀光感測器陣列循跡模組紅外線測距PS2 無線手把接收器感測器埠擴充器馬達埠擴充器等等,且樂高機器人主要的程式環境(EV3,NXTG,leJOS,LabVIEW,NXC 與RobotC 等)都有現成的函式庫與範例,方便上手。

針對這些設備的應用,我們先把投影片放上來了,也歡迎大家報名本週六的研習營喔

13-22

投影片搶先看


也可以看一下 NXTCam 實際用在物件追蹤上的效果影片

141101 樂高EV3機器人與 MindSensors 感測器應用研習營@CAVEDU

樂高EV3機器人套件以豐富的零件與簡易的圖形化介面著稱,MindSensors 則針對樂高機器人平台推出了許多周邊,包含各類感測器與擴充埠等。本日研習將使用 熱門的樂高EV3 教育性機器人平台搭配 MindSensors 系列產品做各類進階的應用。包含 NxtCam 機器視覺、紅外線測距感測器、光感測器陣列循跡器、PS2搖桿接收器與馬達/感測器多工器等

報名網址請按我

2014-10-08 14.43.10

來看看使用 Lineleader + Sumoeyes 的避障循跡機器人影片吧

主辦單位:CAVEDU 教育團隊、翰尼斯企業有限公司

協辦單位:智能機器人研究所、《Make》國際中文版

時間 : 103年10月18日星期日 09:30~17:00

地點 : 翰尼斯企業有限公司 台北市中正區中華路二段165號1樓

備註: 請自行攜帶筆記型電腦,以便實際操作。。

收費:3,000 。名額有限,請儘早報名

匯款方式:
銀行名稱 :華南商業銀行 雙園分行
戶名 :翰尼斯企業有限公司
銀行代號 :008
帳號 :122-10-015315-3

超級好禮相贈:
1. [機器人程式超簡單-LEGO® MINDSTORMS® EV3動手作] 書籍一本
2. MindSensors 十字軸專用金屬軸承一組 (內含 3個)

活動議程:

9:30 CAVEDU 教育團隊簡介

9:50 樂高EV3 機器人套件
硬體介紹:主機操作選單
組裝雙輪機器人
控制馬達轉速與方向
匯入 MindSensors 指令集

10:30 紅外線測距感測器搭配光感測器陣列循跡器
循跡避障機器人

12:00 中餐

13:00 PS2搖桿接收器
遙控機器人設計
高階機器人行為設計

14:30 NxtCam 機器視覺
設定邊界值
辨識顏色與物體數量

16:30 馬達/感測器多工器
結語、賦歸

注意:主辦單位保留修改與解釋活動之所有權利。

服務電話:02-23062900
service@cavedu.com