機械人設計及程式編寫班

Download Report

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