• 沒有找到結果。

第五章 結論與未來展望:探討未來可以著手發展的研究,並對本文 做一個總結與建議。

第二章

儀器及軟體介紹

2.1 Hitec HS-422 伺服馬達介紹

由於機械手臂乃是由許多關節所組成,其靈活度也是由關節的多 寡與每個關節的活動範圍所控制。在此使用多具伺服馬達組成一機械 手臂,每具伺服馬達便是機械手臂之各關節,機械手臂之靈活度與載 重能力也都取決於伺服馬達之性能。圖 2-1 為伺服馬達實體圖。

圖 2-1 伺服馬達實體圖【3】

不同型號之伺服馬達皆具有其特殊之規格,性能也有所差異,表 2-1 為 HS-422 之特性規格表。

Control System +Pulse Width Control 1500usec Neutral Required Pulse 3-5 Volt Peak to Peak Square Wave Operating Voltage 4.8-6.0 Volts

Operating Speed (4.8V) 0.21sec/60 degrees at no load Operating Speed (6.0V) 0.16sec/60 degrees at no load

Stall Torque (4.8V) 45.82 oz/in. (3.3kg.cm) Stall Torque (6.0V) 56.93 oz/in. (4.1kg.cm)

Operating Angle 45 Deg. one side pulse traveling 400usec

360 Modifiable Yes

Direction Clockwise/Pulse Traveling 1500 to 1900usec

Current Drain (4.8V) 8mA/idle and 150mA no load operating Current Drain (6.0V) 8.8mA/idle and 180mA no load operating

Dead Band Width 8usec Motor Type 3 Pole Ferrite Potentiometer Drive Indirect Drive

Bearing Type Dual Oilite Bushing

Gear Type Nylon

圖 2-2 脈波控制圖【4】

由上圖可知,當脈波訊號為 1.5ms 時,伺服馬達轉向為中間、1ms 時為-45°、2ms 時為 45°。然而機械手臂所需之伺服馬達轉動範圍更 大,±45°並不能滿足機械手臂所需,故在本文中使用之脈波寬度為

0.5ms 至 2.5ms,伺服馬達之轉動範圍因而變成±90°,以達到機械手 臂靈活度之要求。

2.2 Mini SSC II 介紹

由於電腦無法直接傳送脈波訊號至伺服馬達,故在此使用 Mini

SSC II 作為傳送命令的橋樑。Mini SSC II 是使用 RS-232 接頭來與電 腦做連接,其傳輸速率為 2400 bps 或是 9600 bps,一組 Mini SSC II 可以一次控制八顆伺服馬達。要以 Mini SSC II 來控制伺服馬達,必 須送出的指令包含三個位元組:一個為同步位元組( Sync Byte )為

ASCII 的 255;一個為伺服馬達的編號( 0 ~ 7 );一個為伺服馬達所要 轉動的位置( 0~254,127 為中心點),如此一來才能以 Mini SSC II 來 控制伺服馬達使其轉動至目標位置。

圖 2-3 Mini SSC II 接收指令示意圖【4】

Mini SSC II 上有一顆 LED 燈,當 Mini SSC II 收到同步位元組 (Byte 1)後,LED 燈會亮起,直到收到位置(Byte 3)後,LED 燈會熄滅,

可由此 LED 燈可以驗證 Mini SSC II 所接收的指定是否正確。

圖 2-4 Mini SSC II 實體照片【1】

2.3 機械手臂控制盒

在此將製作ㄧ控制盒供應電源予 Mini SSC II(7~15V)及機械手臂

(5V)。由於控制盒內僅使用一 11V 電池,故必須將其降壓以供應機械 手臂使用。圖 2-5 為降壓電路圖。

Byte 1 Byte 2 Byte 3

[ Sync Marker ( 255 ) ] [ Servo #(0-7) ] [ Position (0-254) ]

圖 2-5 降壓電路圖【5】

在製作此降壓電路時需要一降壓 IC,在此使用之 IC 為 7805。圖 2-6 為降壓 IC 實體圖。

圖 2-6 降壓 IC 實體圖

在電路製作完成後,電池將會輸出 11V 及 5V 的電壓供給 Mini SSC II 及機械手臂使用,圖 2-7 為控制盒完成圖。

圖 2-7 控制盒完成圖

2.4 開發軟體

在 2.2 時曾經提到,伺服馬達的轉動是經由 Mini SSC II 輸出脈 波訊號控制,但電腦必須經由軟體的幫助,才能輸出命令至 Mini SS -C II,在此所使用之軟體為 LabVIEW。LabVIEW 是 Laboratory Virt ual Instrument Engineering Workbench 的縮寫,是由美國國家儀器股 份有限公司( NATIONAL INSTRUMENTS,簡稱 NI 公司 ) 於 1986 年發展出來的,其擁有強大的功能且為適用性極高的儀器控制與分析 軟體,和傳統程式語言不同的是,其程式語言是較為淺顯易懂的圖形 化程式語言(Graphic Language,簡稱 G 語言),其以圖形的方式來取 代文字程式的撰寫,所以其程式指令多為看見圖形即可知道其用途,

且利用資料流(Dataflow)的觀念來呈現程式執行的順序,也因為如 此,LabVIEW 較其他程式語言容易著手學習。

LabVIEW 程式ㄧ般稱為虛擬儀表(Virtual Instrument, VI),整個應 用程式的架構,包含了三個主要的部份:

個是輸出,稱之為顯示物件 ( Indicators )。透過不同類型的控制物件 與顯示器物件,即可建構出千變萬化的前置面板。圖 2-8 為前置面版 視窗。

圖 2-8 前置面版視窗

(b) 程式方塊 ( Block Diagram ) 視窗

程式方塊圖即為 LabVIEW 的原始程式碼,主要是利用圖示的方 式來表示,他代表著傳統程式裡的ㄧ行行指令,利用連線的方式將各 個有特定功能的函數圖形連結起來,使得資料可以藉由連線來傳送,

圖 2-9 為一個簡易的程式方塊圖。

圖 2-9 程式方塊視窗

(c) 圖像與連結器 ( Icon/Connector )

已完成的 VI 可以在其他的程式方塊圖中被呼叫出來,如同副程 式或是函數一樣,此時就需要製作圖像與連結器,因為 LabVIEW 是 圖形化程式語言,所以當想要呼叫副程式時,必須先把欲呼叫的程式 其連接器與圖像設定完成。圖像通常顯示於前置面板右上角,而連接 器視為此 VI 的輸入輸出端點,負責資料的傳送與接收,如同傳統程 式裡的參數。圖 2-10 為圖像與連接器的圖示。

圖 2-10 圖像與連結器【6】

2.5 機械手臂之組成

本文中使用之機械手臂為皮托科技股份有限公司出產之「Model

RCS-6 Robot Construction Set」,其為六軸伺服機械系統,伺服馬達之 位置可自由變化以創造出不同之機械手臂構形【7】。圖 2-11、2-12 為機械手臂實體圖。

圖 2-11 機械手臂實體圖

圖 2-12 機械手臂實體圖

此機械手臂原有套裝軟體控制其伺服馬達之動作,但在本文中並 不使用其附加之軟體,而改由以 LabVIEW 撰寫程式控制。

第三章

FEMALE MALE Signal Pin Signal Pin

1 DCD 1 DCD

3.2 硬體系統配置

將搖桿由 USB 插槽接入筆記型電腦,電腦再經由 RS-232 連接埠 連接 Mini SSC II,Mini SSC II 接上機械手臂之六個伺服馬達,並供 應 9V(Mini SSC II)及 5V(Servo)之電源於 Mini SSC II,由 LabVIEW 產 生 ASCII 至 Mini SSC II, Mini SSC II 接收命令判斷並輸出脈衝寬度

3.3 基礎控制

本章節介紹 LabVIEW 如何輸出命令至 Mini SSC II 並控制伺服馬 達之轉動,圖 3-2 為 Mini SSC II 所需之基本輸入。

圖 3-2 Mini SSC II 接收指令之程式參考

Mini SSC II 所接收之指令必須為三個位元組所組成,其中第一個 位元組稱為同步位元組(Sync Byte),為 ASCII 的 255,第二個為伺 服馬達的編號,本文使用之伺服馬達編號為 0~5,第三個為伺服馬達 之轉動位置(0~254,其中 127 為中心點)【4】。Mini SSC II 驅動伺服 馬達轉動之角度有兩種,分別為 90°及 180°,本文選擇之轉動角度為 180°,圖 3-3 為 Mini SSC II 驅動伺服馬達轉動之位置示意圖。

127

254 0

圖 3-3 伺服馬達轉動位置示意圖

圖 3-4 為基本實例應用。下圖(a)為前置面板(b)為程式方塊圖。

(a) (b)

圖 3-4 基本實例應用

上圖(b)中所示之【VISA Resource Name】為輸出至 RS-232 之連 接埠,由前置面板調整後之值為一數值,在程式方塊圖中由【Build

A-rray】轉為陣列後,再經由【Byte Array To String】轉為 ASCII 輸出 至 Mini SSC II 控制伺服馬達轉動至預定位置。此為 LabVIEW 經由 Mini SSC II 控制伺服馬達之基本架構。

第四章

實際應用

4.1 機械手臂應用於寫字

本章節之應用為多次測試後之結果,先預設機械手臂要寫之字 型,經由不斷測試後以達預設目標,圖 4-1 為測試流程圖。

在運用機械手臂寫字之部分,乃是找出筆畫軌跡的起始點與終 點,並且不斷測試伺服馬達的走向,使其能完成預定之筆畫。初步為 數個分開動作完成一字母,而後將其合併成為一連續動作,使之完成 欲得之字型,最後再加入使用鍵盤,按下鍵盤中對應的字母鍵,機械 手臂即可寫出。圖 4-2、4-3 為開關及鍵盤執行寫字之面板。

圖 4-1 測試流程圖

圖 4-2 使用者介面圖

圖 4-3 使用者介面圖

圖 4-2 中 A 為字型對應開關,按下開關機械手臂即可寫出其所對 應之字型,B 為動作顯示區,此處將會顯示出機械手臂正在執行的動 作,C 為顯示執行筆畫區,當 C 區燈亮時,B 區將不會顯示動作。圖

4-3 中 D 區為鍵盤輸入區,當在鍵盤上按下欲寫出之字型時,字型將 在 D 區顯示,機械手臂也會寫出相對應之字型。圖 4-4 為機械手臂寫 字之連續動作分解圖。

(1) (2)

(3) (4)

(5) (6)

(7) (8)

圖 4-4 機械手臂寫字之連續動作分解圖

4.2 機械手臂應用於連續動作

此設計為程式自動運算路徑,使用者只控制其各個到達位置,目 前只設計五個控制位置,但並不需全部調整,也可只調整二至三個位 置。在開關設計方面為,當一個開關開啟時,其他開關不得打開,以 避免使用者不小心按錯開關時位置又要重新調整的情況。圖 4-6 為使 用者介面圖。

圖 4-6 使用者介面圖

上圖中之 A 區為使用者調整各伺服馬達角度之調整區,各伺服 馬達之位置以角度方式顯現,而非以 0~254 之值呈現,方便使用者理 解及調整。而 B 區為暫存位置按鈕,開啟按鈕時,將讀取使用者在 A 區所調整的位置,按鈕關閉時將暫存當時機械手臂之位置,依序調整 共可記錄五個位置,C 區則為機械手臂之動作顯示區,機械手臂所正 在做的動作將在此區顯示出來,D 區則為總開關,開啟時機械手臂將 會將使用者暫存之五個位置用一連續動作顯現出來。

(a) (b)

(c)

圖 4-7 部份程式方塊圖

在程式方面,如圖 4-7 所示,當修改一開關開啟時,使用者調整 六個伺服馬達之角度,其可暫存開關關閉前的最後數值,再進入(b) 圖中做運算,最後進入(c)圖,使機械手臂之六伺服馬達,在總開關打 開時,自動生成一連續動作由歸零位置至使用者設定好的位置。

4.3 搖桿控制

4.3.2 搖桿數值轉換

由於搖桿數值與伺服馬達需要之數值有一段差距,必須經過轉換 後方能為伺服馬達所用,所以在本章節中將簡述其轉換過程。圖 4-11 為程式方塊圖。

圖 4-11 數值轉換方塊圖

搖桿輸出數值範圍為 32767 ~ -32768,但其中數值並非穩定的增 加或減少,而是有其一定的規律,所以在應用上是取其區間,上圖以 300 為一區間,再取出其商值以做為伺服馬達之用。

(0,-32768)

(-32768,-32768) (32767,-32768)

(-32768, 0) (0, 0) (32767, 0)

(-32768, 32767) (32767, 32767) (0, 32767)

圖 4-12 搖桿輸出值

4.3.3 搖桿控制實例

在此章節將實際以搖桿控制伺服馬達,使機械手臂產生動作。圖 4-13 為部份程式方塊圖。

圖 4-13 部份程式方塊圖

在此部份之控制為一個按鈕控制一個伺服馬達,當按鈕按下時,

搖桿之 X 軸輸出將可控制伺服馬達之轉向,以 127 為 0°,對應搖桿 之正中心(0,0)位置,當搖桿往正 X 軸移動時,伺服馬達則往機械 手臂之正 90°偏轉,反之亦然。圖 4-14 為機械手臂轉向圖。

機械手臂

-90° 90°

圖 4-14 機械手臂轉向圖

圖 4-15 機械手臂實體圖

搖桿上之每個按鈕均有一個對應的伺服馬達,圖 4-16 中(a)為搖桿 按鈕編號圖,(b)為伺服機編號圖

搖桿上之每個按鈕均有一個對應的伺服馬達,圖 4-16 中(a)為搖桿 按鈕編號圖,(b)為伺服機編號圖

相關文件