Transcript 機械人設計及程式編寫班
! 機械人設計及程式編寫(實戰班) Copyright@2010 HKPU, Dept. of Computing. All rights reserved 1 溫故知新 — NXT 基本組件介紹 Copyright@2010 HKPU, Dept. of Computing. All rights reserved 2 溫故知新 — 組件的正確應用 軸與軸套的應用︰ 通用 不應常用 樑與連接器的應用︰ Copyright@2010 HKPU, Dept. of Computing. All rights reserved 3 溫故知新 — 控制器及馬達的擺放 Copyright@2010 HKPU, Dept. of Computing. All rights reserved 4 溫故知新 — 建立機械人示範 建立的方法為︰ 先置馬達,後把控制器固定 首先量度馬達拼合的距離 Copyright@2010 HKPU, Dept. of Computing. All rights reserved 5 溫故知新 — 建立機械人示範 先連接兩個 馬達 Copyright@2010 HKPU, Dept. of Computing. All rights reserved 6 溫故知新 — 建立機械人示範 但連接後的馬達尚未穩固 Copyright@2010 HKPU, Dept. of Computing. All rights reserved 7 溫故知新 — 建立機械人示範 加築橫樑以固定馬達 Copyright@2010 HKPU, Dept. of Computing. All rights reserved 8 溫故知新 — 建立機械人示範 把NXT控制器 扣在馬達上面 Copyright@2010 HKPU, Dept. of Computing. All rights reserved 9 溫故知新 — 建立機械人示範 我們下一步把車輪連接到馬達,以下有兩 點需要注意︰ 車輪的兩面是不同的 凹 平 宜用較平的一面向著馬達,較凹 的一面向外 Copyright@2010 HKPU, Dept. of Computing. All rights reserved 10 溫故知新 — 建立機械人示範 利用軸把車輪 及馬達連接, 再用軸套把車 輪與軸固定 Copyright@2010 HKPU, Dept. of Computing. All rights reserved 11 溫故知新 — 建立機械人示範 安裝了兩個推動輪後,機械人還需要輔助 輪作支撐 Copyright@2010 HKPU, Dept. of Computing. All rights reserved 12 溫故知新 — 建立機械人示範 在這裡我們只安 裝一個小前輪 Copyright@2010 HKPU, Dept. of Computing. All rights reserved 13 溫故知新 — 建立機械人示範 最後插上導線 注意導線應當收好, 以免阻礙機械人走動 Copyright@2010 HKPU, Dept. of Computing. All rights reserved 14 溫故知新 — 建立機械人示範 機械人的重心有所不同 Copyright@2010 HKPU, Dept. of Computing. All rights reserved 15 程式編寫 — 軟件介紹 我們使用Mindstorm NXT軟件編寫驅動機 械人的程式 Copyright@2010 HKPU, Dept. of Computing. All rights reserved 16 程式排列 程式 方塊 幫助與示範 程式方塊微調 Copyright@2010 HKPU, Dept. of Computing. All rights reserved 17 程式編寫 — 驅動機械人 我們先學控制機械人的行動。 換句話說,我們要編寫控制兩個馬達的程 式。 使用綠色程式方塊便可控制馬達的轉動。 Copyright@2010 HKPU, Dept. of Computing. All rights reserved 18 程式編寫 — 驅動機械人 注意事項︰ 機械人向前 / 後走,轉左 / 右,除了視乎程式的 編寫,也視乎馬達的擺放的方法。 以車輪轉動角度(degrees)來控制馬達,比使用 秒數(seconds)及圈數(rotations)準確。 角度及圈數並不是用來設定機械人拐彎的彎度, 而是馬達需要轉動的多少,從而控制車輪行走 的距離。 Copyright@2010 HKPU, Dept. of Computing. All rights reserved 19 程式編寫 — 驅動機械人 注意事項︰ 機械人會拐彎,是因為兩個車輪的轉速不同。 要使機械人原地自轉,我們要控制其中一個車 輪向前轉,而另一個側向後轉。 Copyright@2010 HKPU, Dept. of Computing. All rights reserved 20 任務1:機械人沿線走 ? 機械人必須使用兩個馬達作驅動器,也須安裝輔助輪。 除車輪以外,機械人其他組件不可碰到地面。所有組 件必須穩固。 機械人須沿著黑線走,而走的距離及轉彎的角度必須 與黑線的大致相同。 Copyright@2010 HKPU, Dept. of Computing. All rights reserved 21 任務1:成果 同學可先利用機械人內置的”View”功能, 預計在一段特定的距離中,馬達需轉動多 少 / 多久。 車的設計會影響機械人行走的準確度。 不穩固或重心偏離的機械人容易「走不直」。 同學應掌握到如何使用Mindstorm軟件,及 組合使用綠色的程式方塊。 Copyright@2010 HKPU, Dept. of Computing. All rights reserved 22 加裝機械人 — 機械臂 為機械人添加一隻「手」,以便機械人做 更多的動作。 機械臂也是由馬達來控制的。把第三個馬 達安裝在機械人的上方 / 側面 /下方……視乎 機械臂的功能。 編程的時候,需要獨立地使用一個程式方 塊來控制第三個馬達。 Copyright@2010 HKPU, Dept. of Computing. All rights reserved 23 加裝機械人 — 機械臂 Copyright@2010 HKPU, Dept. of Computing. All rights reserved 24 任務2:搬運工人 在任務1使用的機械人上,加裝至少一個機械臂。 機械人需從指定的地方,搬運數件不同形狀及大 小的物件到另一個指定的地方。 機械臂的形狀不限。同學可在搬運不同物件時更 換機械臂。 機械人的行走路線及搬運次序不限。 Copyright@2010 HKPU, Dept. of Computing. All rights reserved 25 任務2:成果 並非搬運每一件物件也需要機械臂。 機械人可直接推著物件走(只可走直線)。 細心設計機械人的行走路線及搬運次序, 盡量以最短的行走路線運送物件。如果許 可,可以同一動作在同一路線上搬運兩個 或以上的物件。 Copyright@2010 HKPU, Dept. of Computing. All rights reserved 26 加裝機械人 — 多方向機械臂 利用齒輪的組合,令一個馬達可輸出兩個 或以上的轉動方向。 故此一個馬達可連上不同轉動方向及功能 的機械臂。 Copyright@2010 HKPU, Dept. of Computing. All rights reserved 27 加裝機械人 — 多方向機械臂 Copyright@2010 HKPU, Dept. of Computing. All rights reserved 28 加裝機械人 — 感應器的應用 觸動傳感器 光電傳感器 超聲波傳感器 聲音傳感器 Copyright@2010 HKPU, Dept. of Computing. All rights reserved 29 觸動傳感器 (Touch Sensor) 可感應三種碰撞模式︰ 按 放 按+放 Copyright@2010 HKPU, Dept. of Computing. All rights reserved 30 光電傳感器 (Light Sensor) 感應光度, 以 0-100%為量度單位。 _____% _____% 跟據光線反射的原理,光電傳感器可分辨 兩種截然不同的顏色。 Copyright@2010 HKPU, Dept. of Computing. All rights reserved 31 超聲波傳感器 (Ultrasonic Sensor) 並非量度聲音,而是距離。 以0-100寸 / 0-254厘米為單位。 超聲波傳感器往前打出超聲波,直至遇到 阻礙物把超聲波反射回頭。機械人與阻礙 物的距離,可由超聲波送出直至收回的時 間計算出來。 Copyright@2010 HKPU, Dept. of Computing. All rights reserved 32 聲音傳感器 (Sound Sensor) 量度機械人周遭音量的大小。 以0-100為單位。 Copyright@2010 HKPU, Dept. of Computing. All rights reserved 33