摘 要:介紹傾角傳感器AMEB002在自動平衡系統(tǒng)中的應用。系統(tǒng)以AT89C52為控制核心,采用PWM技術(shù)對電動小車進行調(diào)速,根據(jù)傾角傳感器測量的角度,電動小車沿軌跡自動在蹺蹺板上行駛,實時顯示各項參數(shù)并保存,系統(tǒng)平衡時發(fā)出聲光報警。詳細論述系統(tǒng)的硬件組成及各部分電路設(shè)計,給出系統(tǒng)的軟件流程和測試過程。利用傾角傳感器實現(xiàn)高精度的平衡控制是系統(tǒng)設(shè)計的主要創(chuàng)新點。
關(guān)鍵詞:傾角傳感器;PWM;光電開關(guān);平衡調(diào)整
中圖分類號:TP212 文獻標識碼:B 文章編號:1004373X(2008)1619203
Automatic Balance System Based on Obliquity Sensor
ZHAO Jian.1,WU Shunwei.1,REN Zhibo.2
(1.Taishan University,Taian,271021,China;2.Shandong University of Science and Technology,Taian,271000,China)
Abstract:This paper introduces the application of obliquity sensor AME-B002 in automatic balance system.The system uses AT89C52 as controlling core,adjusts speed of electromotion dolly adopting PWM,with angle measured by obliquity sensor,electromotion dolly runs on the seesaw following the contrail,shows and caves all parameters at times,sends out sounds and lights for alarm at time of balance.And discusses hardware constitutes and circuits design of all parts in detail,gives software flow and testing process of the system.Using obliquity sensor realizes high accuracy balance cortrol is the main innovation spot of system design.
Keywords:obliquity sensor;PWM;photoelectricity switch;balance adjust
1 系統(tǒng)組成
系統(tǒng)組成框圖如圖1所示:

1.1 傾角傳感器
采用傾角傳感器,測量蹺蹺板轉(zhuǎn)動的角度,判斷其是否平衡。傳感器采用非接觸式傾角傳感器AMEB002。該傳感器的主要特點包括:角度范圍0°~360°;模擬輸出模式,電壓范圍0.5~+4.5 V;分辨率12位,精度10位;溫度范圍-40°~+100°;供電電壓5 V+10%。傾角傳感器輸出模擬電壓信號,經(jīng)過A/D轉(zhuǎn)換芯片轉(zhuǎn)換成數(shù)字信號,送到控制核心AT89C52。A/D轉(zhuǎn)換芯片采用美國德州儀器公司生產(chǎn)的帶串行控制的10位模數(shù)轉(zhuǎn)換器TLC1549。該芯片采用CMOS工藝,具有內(nèi)在的采樣和保持,采用差分基準電壓高阻輸入,抗干擾,可按比例量程校準轉(zhuǎn)換范圍,總不可調(diào)整誤差達到±1LSB Max(4.8 mV)等特點。芯片輸出為串行信號,占用控制核心的口資源較少。傾角傳感器安裝在蹺蹺板的轉(zhuǎn)動軸上,將蹺蹺板的傾角信息實時傳送給控制核心,作為判斷蹺蹺板平衡的依據(jù)。
1.2 引導軌跡
為了讓電動小車在蹺蹺板上沿直線運動,在板面上加入引導軌跡。引導軌跡采用黑色膠帶,寬度為20 mm,粘貼在蹺蹺板板面中間,其他部分為白色。電動小車通過傳感器可以檢測黑線,并沿著軌跡前進。
1.3 電動小車
1.3.1 電動機驅(qū)動電路
采用三極管設(shè)計的H橋型PWM電路。電路實現(xiàn)了簡單的轉(zhuǎn)彎和轉(zhuǎn)速控制。工作時用單片機控制三極管工作在占空比可調(diào)的開關(guān)狀態(tài),可以精確調(diào)整電動機轉(zhuǎn)速。由于三極管工作在飽和狀態(tài)或截止狀態(tài),效率非常高,其開關(guān)速度快、穩(wěn)定性強。電路如圖2所示。在圖2中,當Q1,Q4導通時,VCC正向加在直流電動機上,電動機正轉(zhuǎn);當Q2,Q3導通時,VCC反向加在直流電動機上,電動機反轉(zhuǎn)。圖2中4個二極管可以在控制電壓由低變高時,形成電動機電圈感應電壓的回路,起到保護電動機的作用。控制系統(tǒng)采用5 V電壓供電,因此若三極管基極直接由單片機控制,則控制電壓最高5 V,再加上三極管本身的壓降,加到電動機兩端的電壓就只有4 V左右,減弱了電動機的驅(qū)動能力。基于上述考慮,采用光電耦合器TLP521,將控制部分和電動機驅(qū)動隔離開來,不僅增加了各模塊之間的隔離度,也使驅(qū)動電流得到了大大的增強。

1.3.2 軌跡檢測模塊設(shè)計
系統(tǒng)檢測軌跡的基本原理:光線照射到路面并反射,由于黑線和白線的反射系數(shù)不同,可根據(jù)接收到反射光強弱判斷是否是黑線。采用反射式紅外發(fā)射接收傳感器,可以準確地檢測黑線的位置。在電動小車的前方并排安裝3個反射式紅外發(fā)射接收傳感器,中間傳感器檢測到黑線表明小車沿著軌跡前進;左邊傳感器檢測到黑線,表明小車向右偏離軌跡;右邊傳感器檢測到黑線,表明小車向左偏離軌跡。小車的后方并排安裝2個反射式紅外發(fā)射接收傳感器,與前方中間一個配合,確定倒車時小車軌跡。這樣,根據(jù)傳感器提供的小車運行信息,及時對小車的前進或倒車方向做出調(diào)整。
1.3.3 速度測量模塊
采用槽式光電開關(guān),測量車輪的轉(zhuǎn)速。該槽式光電開關(guān)采用標準的U字型結(jié)構(gòu),其發(fā)射器和接收器分別位于U型槽的兩邊,并形成一光軸,當被檢測物體經(jīng)過U型槽且阻斷光軸時,光電開關(guān)就產(chǎn)生了開關(guān)量信號。槽式光電開關(guān)適合檢測高速運動的物體,并且它能分辨透明與半透明物體,使用安全可靠。小車車軸上固定槽式光電開關(guān),在車軸齒輪上均勻分布8個小孔,車輪轉(zhuǎn)動時,小孔依次通過溝槽,光電開關(guān)便得到通斷相間的高低電平信號,得到的信號經(jīng)過整形放大,發(fā)送至單片機,用來計算車速。根據(jù)測得的車速,算出平均值,乘上小車運動時間便得到小車運動路程。
1.4 計時模塊
若采用單片機計時,一方面需要采用計數(shù)器,占用硬件資源;另一方面需要設(shè)置中斷、查詢等,同樣耗費單片機的資源。系統(tǒng)采用專用時鐘芯片DS12C887,其特點:在掉電方式下持續(xù)工作十年以上,內(nèi)部包含鋰電池,時鐘和輔助電路系統(tǒng),記量秒、分、小時、星期、日期、月、年和潤年直到2100年,用二進制或BCD碼表示時間,日歷和鬧鐘,地址、數(shù)據(jù)管腳復用,與單片機接口簡單,便于控制。
1.5 數(shù)據(jù)存儲模塊
系統(tǒng)中要存儲的信息包括小車速度、行駛時間、行駛路程、行駛狀態(tài)(前進、后退、平衡)和調(diào)整平衡時間等。要求掉電后數(shù)據(jù)不丟失,一方面,小車行駛過程中突然斷電,上電后可以按照斷電前系統(tǒng)存儲的狀態(tài)繼續(xù)行駛;另一方面,便于分析小車行駛狀態(tài)參數(shù),特別是小車自動調(diào)整平衡過程中小車狀態(tài)參數(shù)。
系統(tǒng)采用AT24C02作為存儲芯片。AT24C02 是一個2 k位串行E.2PROM,內(nèi)部含有256個8 位字節(jié),通過I.2C總線接口進行操作,占用單片機接口少,1.8 ~6.0 V工作電壓范圍, 1百萬次編程/擦除周期,可保存數(shù)據(jù)100 年。
1.6 電源模塊
方案1:單一電源供電。控制板和電機驅(qū)動板使用電機驅(qū)動的單組電源(可充電電池)。這樣供電比較簡單;但是由于電動機啟動瞬間電流很大,而且PWM驅(qū)動的電動機電流波動較大,會造成電壓不穩(wěn)、有毛刺等干擾,嚴重時可能造成單片機系統(tǒng)掉電;
方案2:雙電源供電。6 V可充電池為單片機系統(tǒng)供電,1節(jié)9 V電池為電動機供電。將電動機電源與單片機以及其周邊電路完全隔離,利用光電偶合器傳輸信號。這樣可以將電動機工作所造成的干擾徹底消除,提高系統(tǒng)的穩(wěn)定性。因此,系統(tǒng)采用雙電源供電。
1.7 聲光提示模塊
系統(tǒng)達到平衡狀態(tài)時,發(fā)出聲光提示信息。聲音提示由ISD1400芯片提供,它有20 s的錄放時間。事先將“系統(tǒng)達到平衡狀態(tài)”語音信息存儲到ISD1400芯片內(nèi)部,系統(tǒng)平衡時播放。光提示由發(fā)光二極管提供,發(fā)光二極管閃爍表示系統(tǒng)達到平衡狀態(tài)。
2 系統(tǒng)軟件設(shè)計
2.1 軟件流程圖
從起始點到平衡狀態(tài)流程圖,如圖3所示。
2.2 關(guān)鍵部分軟件調(diào)試
2.2.1 平衡調(diào)整
使蹺蹺板達到平衡是本設(shè)計控制最復雜且要求實時性較高的部分。要達到平衡,需要多次微調(diào)小車位置,采用兩級減速的方法實現(xiàn)。
一級減速 在蹺蹺板中點之前設(shè)置黑線作為減速標志,小車檢測到黑線立即減速。經(jīng)過多次試驗,減速標志設(shè)置在距蹺蹺板中點50 mm處,其寬度為20 mm,與小車行駛方向垂直。減速后,小車速度v=10 mm/s。

二級減速 根據(jù)傾角傳感器提供的蹺蹺板轉(zhuǎn)動角度,微調(diào)小車位置。小車在出發(fā)點時,蹺蹺板轉(zhuǎn)動角度值(傾角傳感器輸出經(jīng)TLC1549轉(zhuǎn)換得到的數(shù)字量)設(shè)為m0,經(jīng)測試此值在全過程中最小;小車在行駛中,蹺蹺板轉(zhuǎn)動角度值設(shè)為m。當m-m0大于等于3時,二級減速,使小車速度v=5 mm/s。循環(huán)讀取m值,判斷m-m0大小,處理如表1。

2.2.2 小車速度計算
用單片機的定時器T1計算槽式光電開關(guān)輸出的脈沖個數(shù)。T1工作在方式2,初始值TH1=0,TL1=0。產(chǎn)生一次T1溢出中斷,變量count加1。定時器T0定時1 s。1 s到達時計算脈沖總數(shù),公式如為N=count*65 536+TH1*256+TL1。車輪上均勻分布8個小孔,則路程計算公式為S=N/8*L,其中L=215 mm為車輪周長。速度v=S=N/8*215,單位為mm/s。
3 系統(tǒng)測試
3.1 測試設(shè)備
蹺蹺板:總長AB=1 600 mm, 寬度300 mm,C為中點,平衡時距地面70 mm,小車從A點出發(fā),AC之間下方可放配重物體。示意圖如圖4所示。
小車:長250 mm,寬150 mm。卷尺:精度1 mm。秒表:精度0.01 s。

3.2 測試過程
3.2.1 無配重測試
小車起始速度20 mm/s,無配重,從A點出發(fā),達到平衡時,保持5 s,小車繼續(xù)前進到B點,停留5 s,倒車,返回到A點。測試數(shù)據(jù)如表2。

3.2.2 有配重測試
小車起始速度20 mm/s,無配重,從A點出發(fā),達到平衡時,在AC之間加配重,重量70 g,小車重新找平衡,平衡時保持5 s,小車繼續(xù)前進到B點。測試數(shù)據(jù)如表3所示。

4 結(jié) 語
本設(shè)計在硬件上,使用高精度的傾角傳感器,以提高系統(tǒng)的穩(wěn)定性和精確性;PWM技術(shù)的使用則解決了電動機驅(qū)動的效率問題。軟件上充分利用AT89C52的控制和運算優(yōu)勢,實現(xiàn)了路面檢測、速度控制、傾角測量和復雜的速度計算等功能。從測試結(jié)果來看,本系統(tǒng)對不同環(huán)境具有較強的適應能力。
參 考 文 獻
[1]胡漢才.單片機原理及其接口技術(shù)[M].北京:清華大學出版社,2004.
[2]李朝青.單片機原理及接口技術(shù)[M].北京:北京航空航天大學出版社,2001.
[3]馮建華,趙亮.單片機應用系統(tǒng)設(shè)計與產(chǎn)品開發(fā)[M].北京:人民郵電出版社,2005.
作者簡介 趙 健 男,1982年出生,助教,在讀碩士研究生。主要從事計算機及電子應用方面的教學與科研工作