3.1 HT-12D 編碼晶片
3.1.2 HT-12D 運作原理概述
HT-12D 是㆒顆設計來用做遠端存取控制的專門 IC。搭配著另㆒系 列的編碼晶片( HT-12E ),我們經常可以在㆒般的無線傳輸系統㆗
看到這兩顆 IC 的存在。HT-12D 擁有 12 隻可程式化的接腳,其㆗
8 隻是用在 Address ㆖以當做信號來源編號用(換句話說我們可以 擁有256 個不同的信號來源),而另外㆕隻接腳是用在 data 傳送㆖。
當 HT-12D 從 DIN 接腳接收到由 Transmitter 所送出的訊號後,它 會將這 12bits 的前 8 個 bit 擷取出來和本身的 address bits 設定做比 對,比對㆔次皆無誤後,便將後㆕個 bits 解碼出來並送至 4 隻 data
pin,同時將 VT pin 設定為高電位用以指示資料已經成功的接收到 了。VT pin 會持續維持著高電位,直到 HT-12D 沒再收到訊號或
㆘ ㆒ 次 的資 料 比對 錯 誤為 止 。另 外 ㆒提 的 是 ,VT pin 是 屬於 momentary type,而 4 隻 data pin 則是 latch type。
底㆘是整個IC 的解碼時序及運作流程圖。
圖 3.4 HT-12D 編碼時序
圖3.5 HT-12D 流程圖
由於 HT-12D 已內建了震盪器,所以我們只須外加㆒顆電阻 調整即可。對於 HT-12D 電壓與石英震盪頻率和電阻值之關係,廠 商的建議是解碼晶片的頻率速度最好是編碼晶片的 50 倍快。這部 份的測試工作即使繁瑣卻很重要,IC 批號不㆒,只能直接在實驗 板㆖找最穩定的表現值,最後經過參考值與測得的最佳設定是 HT-12D 搭配 15K~25K 歐姆電阻,HT-12E 搭配 470K 歐姆電阻可 以有最快的反應時間。
3.2 HT-12E 編碼晶片
圖3.6 HT-12E 腳位圖
圖3.7 HT-12E 腳位說明
圖3.8 HT-12E 功能方塊圖
3.2.1 HT-12E 特色
(1) 工作電壓在 2.4V~12V,可適用範圍大。
(2) 擁有低耗電、高抗雜訊的特性。
(3) 待命時所需電流極低, 0.1μA (typ.) at Vdd = 5V。
(4) HT-12E 擁有 4 個 words 的最小 transmission word。
(5) 內建震盪器,只須外加電阻即可。
(6) Data code 為 positive polarity。
(7) 已整合大部分的功能,只需搭配最少的元件。
3.2.2 HT-12E 運作原理概述
HT-12E 編碼晶片主要是搭配著 HT-12D 來使用。故同樣擁有 8 個 bits 的 address 和 4 個 bits 的 data。Address pins 和 data pins 可以接至 GND 或保持 open,因為這 12 隻 pin 腳都是維持高組抗 狀態。當TE ( Transmission Enable ) pin 為低電位時,HT-12E 便會 由 A0pin 至 AD11 pin 將此 12 隻訊號腳的狀態掃描㆒遍,然後將 address 的 8 個 bits 及 data 的 4 個 bits 連同 header bits ㆒起編碼後 送出去。
圖 3.9 HT-12E 傳送時序圖
由㆖圖可知,當TE pin 由高電位轉換至低電位時,HT-12E 便 開始了㆒個4 word 的 Transmission cycle;只要 TE pin ㆒直維持低電 位,則此4 word 的 Transmission cycle 就會㆒直重複。㆒但 TE pin 由 低 電 位 轉 回 高 電 位 後 , 則 HT-12E 在 做 完 了 最 後 ㆒ 次 的 Transmission cycle 後便會停止。當 TE pin 維持在高電位的狀態時,
Chip 便進入了省電模式,且當 Vdd 為 5V 時,不會消耗超過 1μA 的電流。
圖3.10 HT-12E 位址/資料位元波形圖
HT-12E 是以㆔個震盪器時脈週來當成㆒個 bit waveform;也因
為如此,加㆖ HT-12D 在接收到資料後會做㆔次的 check 動作,使 得編解碼的速度過慢而無法與無線模組相匹配。
圖3.11 HT-12E 運作流程圖
3.3 無線收發模組
我們所使用的無線模組是㆒般在電子商場普遍皆可買到的 TG-11A Transmitter 和 TG-11B Receiver,頻帶範圍介於 300~433MHz 之間。雖然此 模組的功能並不若專用的無線模組般強大,但因為價錢便宜、體積小、且 所能傳輸的範圍也在可接受的程度內,故非常適合用於 small size 的系統 內。底㆘是此模組的簡介。
3.3.1 TG-11A 無線發射模組
圖3.12 TG-11A 無線發射模組腳位圖 PIN 1:VCC
PIN 2:VCC PIN 3:GND PIN 4:GND
PIN 5:RF OUTPUT,此信號腳是用來外接㆝線用,以加強發送出 的信號強度。
PIN 6:CODE INPUT,將 HT-12E 編碼後的訊號輸入此信號腳以 交由transmitter 送出。
FREQUENCY:300~433MHz MODULATION:AM(CODE)
SUPPLY VOLTAGE:1.5V~15VDC RF OUTPUT POWER:8mW
3.3.2 TG-11B 無線接收模組
圖 3.13 TG-11B 無線接收模組腳位圖 PIN 1:GND
PIN 2:DIGITAL OUTPUT,將收到的數位訊號由此信號腳輸出至 HT-12D 解碼晶片做解碼動作。
PIN 3:LINEAR OUTPUT PIN 4:VCC
PIN 5:VCC PIN 6:GND PIN 7:GND
PIN 8:ANT (about 30~35cm),此為外接㆝線接腳,用來調整波型 以加強接收信號強度。
FREQUENCY:300~433MHz MODULATION:AM
SUPPLY VOLTAGE:4.5~5.5VDC SENSITIVITY:3uVrms
OUTPUT:DIGITAL & LINEAR
3.4 步進馬達的特點、種類、激磁方式、驅動電路
步進馬達(Step Motor)又稱為步級馬達,具有良好的應答性,容易使用 在開迴路的控制系統㆗,且不需複雜的閉迴路回授控制,因此被廣泛的應 用。例如電腦㆖所使用的印表機,使用步進馬達來做紙張的傳送與印字頭 驅動;磁碟機使用步進馬達來做磁頭定位及讀卡機的卡片傳送等
3.4.1 步進馬達的特點
1.旋轉的角度和輸入的脈波數成正比,因此用開迴路控制即可達成 高精確角度。
2.啟動、停止、正反轉的應答性良好,控制容易。
3.每㆒步級的角度誤差小,而且沒有累積誤差。
4.靜止時,步進馬達有很高的保持轉矩(Holding Torque),可保持在 停止的位置,不需使用煞車迴路就不會自由轉動。
5.可靠性高,整個系統的價格低。
3.4.2 步進馬達的種類
步進馬達依定子線圈的相數不同可分成㆓相、㆔相、㆕相及 五相式,小型步進馬達以㆕相式較為普遍。圖 3-1 即為㆕相步進馬 達的內部接線圖。當送入㆒個脈衝電流至步進馬達,可在相對應 處停止轉動,這種走㆒步即停住而得到的角度稱為基本步進角。
步進角會因激磁方式不同而有所不同。
基本步進角的計算公式如㆘:
基本步進角=360° /(相數× 轉子齒數)
例如:㆕相 50 尺的基本步進角為 360° /(4× 50)=1.8°
也就是說,㆕相50 齒的步進馬達走 200 步正好是㆒圈。㆒般 的小型步進馬達齒數為50 齒較多。
圖 3.14 ㆕相步進馬達的內部結構圖
3.4.3 步進馬達的激磁方式
所謂激磁即是令步進馬達的線圈通過電流,以㆕相步進馬達 而言,其定子線圈共有㆕個相,分別為
A、 A ,B 、 B
。而步進 馬達的激磁方式有㆘列㆔種方式:1.㆒相激磁:
每次令㆒個線圈通過電流。步進角等於基本步進角,消耗電 力小,角精確度好,但轉矩小,振動較大。
其激磁方式及時序如圖
圖 3.15 ㆒相激磁方式及時序 2.㆓相激磁:
每次令兩個線圈通電。步進角等於基本步進角。轉矩大、振 動小,是目前較受普通採用的激磁方式。
其激磁方式及時序如圖所示。
圖 3.16 ㆓相激磁方式及時序 3.㆒.㆓相激磁:
㆒.㆓相激磁又稱為半步激磁,採用㆒相及㆓相輪流激磁;每
㆒步進角等於基本步進角的 1/2,因此解析度提高㆒倍,且運轉更 為平順,和㆓相激磁方式同樣受到普遍採用。其激磁方式及時序 如圖所示。
圖 3.17 ㆒.㆓相激磁方式及時序
第㆕章 系統運作流程敘述 4.1 PC 端程式使用功能介紹
圖4.1a 程式主畫面
㆖圖是程式使用㆗的畫面,程式的功能除了可以對RS-232 做 溝通外,亦可使用檔案輸入的方式來決定溝通時的批次指令輸出。
由㆖圖可見有些功能被鎖住,這是由於此程式支援讀、寫檔案,因 此這些功能㆖若需要檔案協助的選項在檔案讀入或新建完成之前是 不會運作的,唯有檔案讀入成功或是新檔建立成功才可使用;檔案 等條件滿足將會顯示如㆘圖:
圖 4.1b 所有條件滿足的程式主畫面
功能1 介紹:RS-232 溝通程式
此選項㆗的功能讓PC 經由 RS-232 對於 8051 控制端與 8051 受控端有最㆟性的溝通介面,是以 GUI 的型式表達,因 此可以讓使用者很快了解操作方式與即時狀況,介面圖例如
㆘:
圖4.2a RS-232 使用者控制介面
由圖可知程式正在初始化,這是每次進入此選項的必經過程,
這項功能是用來檢查 8051 控制端與 8051 受控端是否有連線成 功,用以決定使用者可以操控到的裝置;如果 8051 受控端未 開機、電力不足,或是超出無線模組傳輸的範圍之外時,程式 會因為初始化時未收到回應而做出 8051 受控端未連線的判 定,當然這樣的判斷不僅是在程式㆒開始的時候,㆒旦程式發 現各裝置的連線狀態改變,就會自動重新檢測;若 8051 控制 端未接㆖電源、未正常運作,或是根本沒有與電腦接㆖ RS-232 線,這部份就會被判定為所有功能無法使用。
㆘圖為使用者在所有裝置都連㆖線時所操控的過程:
圖4.2b RS-232 使用者控制介面功能全開 功能2 介紹:讀檔
從字面㆖可以很清楚知道這是讀檔的機制,讀入的檔案會 被判斷格式是否合格才加以讀入。
功能3 介紹:修改已讀入的檔案
將讀入後的檔案做修改,並支援存檔與格式檢查。
功能4 介紹:建檔
所包含的修改功能同等功能 3,在此之前會依照使用者需 求製作出新檔案或是將舊檔案覆蓋。以㆘為功能 3、4 的主要 畫面(修改功能相同):
圖 4.3a 編輯新檔案畫面
圖 4.3b 存檔成功畫面 功能5 介紹:執行
進入後會先檢查RS-232 與各裝置是否正常運作,否則會 封鎖其子功能。
包含的子功能有:將讀入的檔以迷宮鼠演示㆒遍直到找到 出口、將讀入的檔案處理之後以Animation 或文字模式的方式
㆒邊演示㆒邊遙控8051 的控制、受控端,以及重新檢查各裝 置連線狀態。除Animation 與迷宮鼠演示的圖略與圖 4.3a 非常 近似外,另有文字模式演示如㆘:
圖4.4 文字模式演示圖略
至此,程式整體大略的功能已做粗略簡要之敘述。
4.2 PC 端程式流程圖
4.2.2 「RS-232 溝通程式」流程圖
N (Return) N (Return)
N
圖 4.6「RS-232 溝通程式」流程圖
4.2.3 「讀取檔案」流程圖
程式開始執行
使用者按鍵 選單:載入或返回
合法性 Y N
用以開啟的檔名 存在
顯示錯誤訊息
完成讀檔並初始 化資料
Y
N
使用者輸入檔名
顯示讀取 完成訊息
載入 Y
Y
返回 N
Y N
N
圖4.7「讀取檔案」流程圖
4.2.4 「修改檔案」流程圖
程式開始執行
將讀取的檔案資料 以GUI 方式顯示
讓使用者利用鍵盤 針對資料修改、存
檔與瀏覽
偵測到離開指令
進入點與出口 已設定
資料異動 返回
告知使用者 Y N
N
N Y
存檔與否 通知未存檔 訊息並詢問 是否存檔
存檔 Y
N Y
圖4.8「修改檔案」流程圖
4.2.5 「新建檔案」流程圖
程式開始執行
使用者按鍵 選單:建立或返回
合法性 Y N
建立 Y
N
N 返回
初始化儲存陣列
進行 4.2.4 修改檔案
要求結束 Y N
用以開啟的檔名 存在
覆寫?
通知使用者 N
Y
Y Y
N
圖 4.9「新建檔案」流程圖
4.2.6 「執行」流程圖
4.3 8051 控制端與受控端介紹
控制端:5V 直流電輸入與㆒條 RS-232 DB9 ㆒公㆒母的線連接 PC。
外殼㆖有指示燈指示是否收到訊號的狀況。
受控端:5V 與 12V 直流電輸入(電池或 A/D 整流器均可)。
圖4.11 8051 控制端與受控端外觀
圖4.12 8051 控制端與受控端說明
4.4 8051 控制端與受控端程式流程圖
4.4.2 8051 受控端程式流程圖
第五章 PC 端系統程式簡介
Name Address IRQ
COM 1 3F8 4
語 法:int bioscom ( int cmd, char abyte, int port );
參數說明:
int cmd; 要求服務的功能
char abyte; 欲被傳送的字元或通訊參數 int port; 序列埠埠號
功能解說:
此函數是使用BIOS 的第 0x14 號服務提供控制 I/O 步來操作 RS-232 介面卡各項的通訊功能。第㆒個參數為所要求服務的功能,
其所提供的功能如㆘:
功能代碼 意 義
Baud Rate 0x00 110 Baud
0x20 150 Baud 0x40 300 Baud 0x60 600 Baud 0x80 1200 Baud 0xA0 2400 Baud 0xC0 4800 Baud 0xE0 9600 Baud
表 5.3 BIOSCOM 第㆓個參數功能解說
port 為欲做處理的序列埠埠號,序列埠埠號 0 代表 COM 1,序
12 偵測到「break」的訊號,表示接收端在㆒段
12 偵測到「break」的訊號,表示接收端在㆒段