喜歡這套資料就充值下載吧。。。資源目錄里展示的都可在線預(yù)覽哦。。。下載后都有,,請放心下載,,文件全都包含在內(nèi),,【有疑問咨詢QQ:414951605 或 1304139763】
==========================================
喜歡這套資料就充值下載吧。。。資源目錄里展示的都可在線預(yù)覽哦。。。下載后都有,,請放心下載,,文件全都包含在內(nèi),,【有疑問咨詢QQ:414951605 或 1304139763】
==========================================
畢業(yè)設(shè)計(論文)
摘要
如今,由于工作臺操作簡單,精度高,能夠滿足一般生產(chǎn)需求。正因為如此,所以它廣泛應(yīng)。
本文主要研究的是兩維步進單片機控制工作臺的控制部分。主要的任務(wù)就是用單片機實現(xiàn)兩個步進電機的正反轉(zhuǎn)和速度的控制。本控制系統(tǒng)可以由鍵盤輸入運行的步數(shù),由LED管顯示,信號經(jīng)單片機轉(zhuǎn)換,采用軟件對信號進行環(huán)形分配,利用光電隔離器進行光電隔離,經(jīng)功率放大器進行信號的放大,用放大的信號來驅(qū)動步進電機的運行。由各個功能鍵控制系統(tǒng)的運行,按啟動鍵后,步進電機按照輸入的步數(shù)進行走步;如在運行期間按停止鍵,則步進電機停止運行。工作臺的兩頭都有行程開關(guān),如果超出了極限位置,行程開關(guān)閉合,步進電機停止轉(zhuǎn)動,并且蜂鳴器報警。
關(guān)鍵詞:工作臺;步進電機;單片機
Abstract
Nowadays, The workbench is easy to operate, the precision is high, and it can meet the generally production demand . Just because of this, so it is widely used.
Main research of this paper is that the part of control of the two-dimension stepping single-chip microcomputer control workbench. The main task is to realize two stepping motor’s rotating positive and negatively and control of pace with single-chip microcomputer. The running steps are input by keyboard in this control system, displayed by the LED tube. The signal is transformed by single-chip microcomputer . The signal Loop allotter is achieved by software. The photoelectricity seclusion is achieved by Electro-optical disconnector. The signal is enlarged by power?Amplifier. Then the signal can run the stepping motor. The system’s run is controlled by functional keys. Stepping motor will run to the given steps if the “start” key is pressed. Meanwhile, stepping motor will stop if the “stop” key is pressed. There are limit switches on the two heads of the workbench, if the workbench go beyond the terminal position, the limit switch is off, the stepping motor will be stop at once, and the buzzer scream.
Keywords workbench stepping motor single-chip microcomputer
III
目錄
1 緒論 1
1.1課題研究的背景 1
1.2工作臺的發(fā)展現(xiàn)狀與方向 1
1.3本課題研究的范圍和意義 3
1.4步進電機的發(fā)展現(xiàn)狀 3
1.5單片機的發(fā)展現(xiàn)狀 4
2 控制系統(tǒng)的總體設(shè)計 6
2.1系統(tǒng)總體方案 6
2.2機械系統(tǒng) 6
2.3 控制系統(tǒng)設(shè)計 6
2.3.1接口設(shè)計 6
2.3.2控制方案的選擇 7
2.3.3伺服系統(tǒng)設(shè)計 7
3 控制系統(tǒng)的設(shè)計方案 8
3.1 硬件系統(tǒng)設(shè)計 8
3.1.1系統(tǒng)的硬件結(jié)構(gòu) 8
3.1.2步進電機 8
3.1.3微處理器的選擇 15
3.1.4鍵盤操作的接口電路設(shè)計 17
3.1.5顯示部分操作的接口和電路設(shè)計 21
3.1.6 報警電路的設(shè)計 24
3.1.7 單片機與PC機的通信 25
3.1.8系統(tǒng)的抗干擾設(shè)計 26
3.2 軟件系統(tǒng)設(shè)計 28
3.2.1 軟件結(jié)構(gòu)設(shè)計 28
3.2.2系統(tǒng)的程序流程 29
結(jié)論 40
致謝 41
參考文獻 42
附錄 43
I
1 緒論
1.1課題研究的背景
當(dāng)今社會,隨著科技的發(fā)展,工作臺的應(yīng)用越來越廣泛?,F(xiàn)在的工作臺廣泛用于焊接,點膠,打孔,包裝,取料等各類精密位置控制設(shè)備的應(yīng)用等。人們對工作臺的研究從來沒有停止過。為了滿足不同的要求,出現(xiàn)了各式各樣的工作臺。例如,用于普通畫線用的二維工作臺,具有防靜電功能的防靜電工作臺,還有回轉(zhuǎn)工作臺可用于分度,用于高精度的加工的納米微動工作臺等。
隨著人類的進步,越來越多并且越來越好的工作臺將會被制造出來,來滿足生產(chǎn)發(fā)展的需求。
1.2工作臺的發(fā)展現(xiàn)狀與方向
(1)納米級微動工作臺的研究現(xiàn)狀及發(fā)展趨勢
納米級微動工作臺為從事納米科學(xué)技術(shù)研究提供一維、二維或三維的納米級微運動,是納米科學(xué)技術(shù)研究應(yīng)必備的關(guān)鍵儀器設(shè)備?,F(xiàn)代納米科學(xué)技術(shù)的快速發(fā)展對微動工作臺提出了迫切的更高要求,即在提供大范圍運動的前提下,還應(yīng)具有納米級的運動精度。在為納米科學(xué)技術(shù)研究提供小范圍納米級精度的微運動時,最常見的是以壓電陶瓷PZT作為驅(qū)動部件的柔性鉸鏈機構(gòu)微動工作臺,要為納米科學(xué)技術(shù)研究提供大范圍納米級精度的微運動時,柔性鉸鏈機構(gòu)、壓電堆、絲桿滑動機構(gòu)和氣浮微動工作臺等卻都不能滿足要求,它們不能同時實現(xiàn)納米級運動精度和大運動范圍。磁懸浮微動工作臺由于運動平臺和驅(qū)動機構(gòu)采用非接觸的磁懸浮驅(qū)動技術(shù),因此,易于實現(xiàn)大范圍納米級微運動,并且消除了摩擦、磨損對運動精度造成的影響。
① 納米級微動工作臺的研究現(xiàn)狀:
I. 柔性鉸鏈?zhǔn)轿庸ぷ髋_
柔性鉸鏈微動機構(gòu)是近年來發(fā)展起來的一種新型的微位移機構(gòu)。它的特點是結(jié)構(gòu)緊湊、體積很小,可以做到無機械摩擦、無間隙,具有較高的位移分辨率,可達1 nm。使用壓電或電致伸縮器件驅(qū)動,可以實現(xiàn)亞微米甚至是納米級的精度,同時不產(chǎn)生噪音和發(fā)熱,可適于各種介質(zhì)環(huán)境工作,是精密機械中理想的微位移機構(gòu)。已在航空、宇航、微電子工業(yè)部門、精密測量和生物工程領(lǐng)域獲得重要的應(yīng)用。由于它的出現(xiàn),開創(chuàng)了精度進入納米的新時代。
II.滾動導(dǎo)軌式微動工作臺
滾動導(dǎo)軌也是微動工作臺中一種常見的導(dǎo)軌形式,它具有行程大,運動靈活、結(jié)構(gòu)簡單、工藝性好、容易實現(xiàn)較高的定位精度的優(yōu)點,采用滾珠導(dǎo)軌作為微動工作臺的支承和導(dǎo)向元件,直流伺服電機傳動、實現(xiàn)了對自動分步重復(fù)光刻機的微定位控制。
III. 磁懸浮式微動工作臺
磁懸浮式微動工作臺由于運動平臺和驅(qū)動機構(gòu)采用非接觸式的磁懸浮驅(qū)動技術(shù),因此沒有摩擦力和機械部件的磨損,易于實現(xiàn)高精度、大范圍的要求。
② 納米級微動工作臺發(fā)展趨勢及需要解決的問題
大范圍、高精度是納米科技對微動工作臺提出的新要求,然而大行程和高精度是微動技術(shù)中的一對矛盾。因此微動工作臺的未來研究方向應(yīng)圍繞如何解決這一對矛盾展開。
I.多種微運動相結(jié)合技術(shù):結(jié)合多種微動方法以彌補各自的不足仍然是解決以上問題的主要辦法,比如在現(xiàn)有研究已經(jīng)成熟的各種微動工作臺基礎(chǔ)上,妥善解決好其中兩種或者多種微動工作臺間的兼容性,解決好機械結(jié)構(gòu)間的裝配誤差、多種平臺間的定位誤差,采用粗動和微動相結(jié)合的方法,粗動臺用以完成快速大范圍,微動工作臺實現(xiàn)高精度,也就是說通過微動工作臺對粗動工作臺由于運動所帶來的誤差進行精度補償,以此實現(xiàn)大范圍、高精度的要求。
II.新型納米級微動工作臺的研究:運動方向間的交叉耦合嚴(yán)重影響納米微動工作臺的定位精度,因此需進一步研究運動導(dǎo)向結(jié)構(gòu),從運動原理上有效地消除運動方向間的交叉耦合產(chǎn)生的定位誤差,提高納米級微動工作臺的定位精度。
III.改進控制策略,如采用建立遲滯和蠕變數(shù)學(xué)模型進行開環(huán)控制來避免因反饋而可能引起的不穩(wěn)定問題,采用自適應(yīng)控制消除建模的誤差和參數(shù)的不確定性及系統(tǒng)環(huán)境的變化等因數(shù)對系統(tǒng)精度的影響,提高系統(tǒng)的魯棒性。采用模糊控制、神經(jīng)元網(wǎng)絡(luò)控制等方法改善系統(tǒng)的非線性和不確定性。
IV.磁懸浮微動工作臺性能的進一步提高:在現(xiàn)有磁懸浮微動工作臺基礎(chǔ)上,充分考慮磁滯非線性、磁飽和以及高次諧波對系統(tǒng)精度的影響,解決運動控制和定位技術(shù),從而實現(xiàn)納米級精度的大范圍運動。
隨著微米、納米科學(xué)技術(shù)的不斷發(fā)展,納米級微動工作臺的研究正日益受到國內(nèi)外的重視。但因受到機械加工精度、控制精度和機構(gòu)復(fù)雜性等技術(shù)水平的制約,其精度和運動范圍還受到一定影響,隨著對微動工作臺的深入研究,結(jié)構(gòu)合理、高精度和高分辨率的微動工作臺必將不斷問世。
(2)旋轉(zhuǎn)升降式工作臺的發(fā)展趨勢
多種多樣的升降工作臺有著廣泛的應(yīng)用領(lǐng)域。許多工業(yè)企業(yè)除了在生產(chǎn)線上或生產(chǎn)線外使用升降工作臺以外,往往還利用升降工作臺來運送較大的工件。例如在物資入庫的時候,人們可以利用升降工作臺首先將成批的鋼材運送到指定的貨架處,然后再存放到貨架的不同規(guī)格格層中或者在室外,將工作臺升降到合適的工作高度或者將單臂吊之類的起重設(shè)備運送到室外讓它在室外工作等等。
在2002年的漢諾威博覽會上,Bolzoni Auramo有限責(zé)任公司推出他們開發(fā)生產(chǎn)的移動式升降工作臺。該公司的設(shè)計師們設(shè)計的升降工作臺帶有運動裝置使升降的物體重通過運動設(shè)備的輪子傳遞到地面, 從而可以使升降工作臺在任何器要它的地點發(fā)揮作用。這種移動式的結(jié)構(gòu)設(shè)計也可“移植” 到超薄型升降工作臺的設(shè)計中。尤其是在汽車制造業(yè)中使用更為頻繁。這種升降工作臺不需要液壓驅(qū)動系統(tǒng), 幾乎不需要維護保養(yǎng)。早在20年前, Flexlift公司就研制開發(fā)出了機械式升降工作臺。但是在今天機電一體化驅(qū)動技術(shù)取得了重大進步之后, 才使機械式升降工作臺也有了較大的發(fā)展。
1.3本課題研究的范圍和意義
本課題研究的是X-Y工作臺的控制部分,主要的任務(wù)就是通過單片機實現(xiàn)對兩個步進電機的控制。包括速度,轉(zhuǎn)向等的控制。采用并行控制方式。通過鍵盤可以輸入控制的運行步數(shù),電機的正反轉(zhuǎn),運行出錯時候可以急停鍵停止,還有其他的一些操作等都可以通過鍵盤實現(xiàn)。本系統(tǒng)的顯示功能是利用8位的數(shù)碼管實現(xiàn)運行步數(shù)的顯示,在工作臺運行超過極限位置時候,安裝在工作臺兩端的行程開關(guān)會被按下,產(chǎn)生電流信號,通過光電轉(zhuǎn)換裝置,向單片機發(fā)出信號,經(jīng)單片機發(fā)出信號,蜂鳴器報警,報警的同時,電機停止轉(zhuǎn)動。
通過本課題的學(xué)習(xí)與研究,使我了解工作臺的工作原理,知道了單片機的發(fā)展與簡單的應(yīng)用,對步進電機的結(jié)構(gòu),工作原理有了更進一步的理解。使我認(rèn)識了很多的電子元件,懂得了許多的控制方面的知識。
1.4步進電機的發(fā)展現(xiàn)狀
步進電機最早是在20年代由英國人所開發(fā)。20年代后期晶體管的發(fā)明也逐漸應(yīng)用在步進電機上,對于數(shù)字化的控制變得更為容易。往后經(jīng)過不斷改良,使得今日步進電機已廣泛運用在需要高定位精度、高分解能、高響應(yīng)性、信賴性等靈活控制性高的機械系統(tǒng)中。在生產(chǎn)過程中要求自動化、省人力、效率高的機器中,我們很容易發(fā)現(xiàn)步進電機的蹤跡,尤其以重視速度、位置控制、需要精確操作各項指令動作的靈活控制性場合步進電機用得最多。
(1)步進電機的分類
步進電機依其構(gòu)造上的差異可分為三大類:
① 可變磁阻式(VR型):
轉(zhuǎn)子以軟鐵加工成齒狀,當(dāng)定子線圈不加激磁電壓時,保持轉(zhuǎn)矩為零,故其轉(zhuǎn)子慣性小、響應(yīng)性佳,但其容許負(fù)荷慣性并不大。其步進角通常為15°。
② 永久磁鐵式(PM型):
轉(zhuǎn)子由永久磁鐵構(gòu)成,其磁化方向為輻向磁化,無激磁時有保持轉(zhuǎn)矩。依轉(zhuǎn)子材質(zhì)區(qū)分,其步進角有45°、90°及7.5°、11.25°、15°、18°等幾種。
③ 混和式(HB型):
轉(zhuǎn)子由軸向磁化的磁鐵制成,磁極做成復(fù)極的形式,兼有可變磁阻式步進電機及永久磁鐵式步進電機的優(yōu)點,精確度高、轉(zhuǎn)矩大、步進角度小。
(2)步進電機的歷史
步進電機在我國已有幾十余年的生產(chǎn)史,近幾年,大規(guī)模集成電路及計算機技術(shù)的發(fā)展,進一步推動了步進電機的技術(shù)進步和廣泛應(yīng)用,據(jù)統(tǒng)計,全世界步進電機的年產(chǎn)量已達一億多臺,市場銷售量占世界微電機銷售總量的5~8%左右。
步進電機的發(fā)展依賴計算機外設(shè)和辦公自動化機械的發(fā)展。我國計算機工業(yè)雖然起步晚,但經(jīng)過三十年的努力,已經(jīng)初具規(guī)模。我國早在六十年代中期開始致力于步進電機的研究和開發(fā),直到20 世紀(jì)80 年代,一直是磁阻式步進電動機占統(tǒng)治地位,混合式步進電動機是8 0 年代后期才開始發(fā)展,至今仍然是二種結(jié)構(gòu)類型同時并存。盡管新的混合式步進電動機完全可能替代磁阻式電動機,但磁阻式電動機的整機獲得了長期應(yīng)用,對于它的技術(shù)也較為熟悉,特別是典型的混合式步進電動機的步距角(0 . 9°/1.8°)與典型的磁阻式電動機的步距角(0.75°/1.5°)不一樣,用戶改變這種產(chǎn)品結(jié)構(gòu)不是很容易的,這就使得兩種機型并存的局面難以在較短時間內(nèi)改變。這種現(xiàn)狀對步進電動機的發(fā)展是不利的 。
(3)步進電機的發(fā)展趨勢:
① 小型化、高精度
計算機外部設(shè)備趨向小型,也就要求永磁式和混合式步進電機向小機座號發(fā)展,目前直徑為39、42的步進電機使用就較多。
② 電機與線路一體化
機電一體化的步進電機更受到用戶的歡迎,雖然控制線路的成本比較高,但與電機組成一體化產(chǎn)品后更便于整機使用。
③ 多功能
新一代的磁盤與光盤需要具有兩個自由度的圓柱式步進電機,直接完成橫向運動和旋轉(zhuǎn)運動兩個功能,這種產(chǎn)品在日本電話電信公司已有產(chǎn)品。另外,美國已推出帶電傳感器的步進電機,能自檢位置和轉(zhuǎn)速。
④ 直線小步距、高分辨率
據(jù)日本和歐美國家報道,此類步進電機已制成步距為0.1微米,在40英寸/秒的線速度下產(chǎn)生50磅推力,分辨率達12500步/英寸,定位精度為0.001英寸。
⑤ 新結(jié)構(gòu)、新材料、新技術(shù)
步進電機總的發(fā)展趨向是增大出力、提高精度、改善動態(tài)特性,為此已出現(xiàn)一種盤式、軸向氣隙的新結(jié)構(gòu)步進電機。同時,還在研究采用如高磁能積的鐵氧體、稀土、壓電等新材料。
1.5單片機的發(fā)展現(xiàn)狀
隨著目前微電子技術(shù)的發(fā)展,技術(shù)工藝的不斷提高,單片機技術(shù)也有了長足的進步。
單片機在最近幾年中得到了極大的發(fā)展,目前世界范圍內(nèi)單片機發(fā)展的主要領(lǐng)域有4個:一是歐美,最新開發(fā)產(chǎn)品及主要廠商有:National semicundutor 的cop8系列單片機,美國的Scenix 的八位單片機,荷蘭PHILLIPS的51系列單片機,美國AMD公司186系列16位嵌入式微機控制器,MOTOROLA的各個系列單片機;二是日本,TOSHIBA公司開發(fā)了從4位到64位多系列單片機,日立公司也有從4位到32位多系列單片機,NEC公司的75X、78X系列微機;三是臺灣地區(qū), 主要有WINBOND的W741/W516,W78/W77等系列產(chǎn)品微控制器;四是韓國,主要有HYUNDAI microelectrionics的GMS800、GMS30系列微控制器。另外還有LG公司也生產(chǎn)單片機,可見單片機發(fā)展到今天可以說種類繁多、性能各異。但目前我國的許多單片機應(yīng)用單位仍停留在采用片內(nèi)無ROM等低檔單片機狀態(tài)。
當(dāng)國內(nèi)從80 年代起開始了單片機的熱潮,二十多年過去了,單片機從研究所走出來,成為日常生活中的一個不可缺少的部件。硬件方面日趨多樣化,4 位、8 位、16 位、32 位等型號共同并存,在不同的領(lǐng)域存在,如家電、玩具、工業(yè)設(shè)備、儀器、通訊等。軟件方面發(fā)展主要為匯編語言、C 語言、嵌入式操作系統(tǒng)。速度、穩(wěn)定性特別要求的場合較多采用匯編語言和C 語言。單片機作為微型計算機的一個重要分支,應(yīng)用面很廣,發(fā)展很快。自單片機誕生至今,已發(fā)展為上百種系列的近千個機種。目前,單片機正朝著高性能和多品種方向發(fā)展趨勢將是進一步向著C M O S 化、低功耗、小體積、大容量、高性能、低價格和外圍電路內(nèi)裝化等幾個方面發(fā)展。
2 控制系統(tǒng)的總體設(shè)計
2.1系統(tǒng)總體方案
圖2-1 總體設(shè)計圖
2.2機械系統(tǒng)
①傳動機構(gòu)采用滾珠絲杠副與齒輪減速。
②導(dǎo)向機構(gòu)采用滾動直線導(dǎo)軌。
③執(zhí)行機構(gòu)采用步進電機。
2.3 控制系統(tǒng)設(shè)計
本系統(tǒng)選用的微型機是8051單片機,采用開環(huán)的控制方式,采用三相六拍步進電機。
圖2-2 開環(huán)控制流程圖
2.3.1接口設(shè)計
(1)人機接口
①采用鍵盤作為輸入。采用矩陣式鍵盤,用20個鍵來控制步進電機。
②采用蜂鳴器作為警報裝置。
③采用數(shù)碼管作為顯示器。采用八段數(shù)碼管作為步數(shù)的顯示。
(2)機電接口
采用光電偶合器作為微型機與步進電機驅(qū)動電路的接口,實現(xiàn)電氣隔離,以保護單片機。
2.3.2控制方案的選擇
控制的方案不外乎有三種:開環(huán)控制、半閉環(huán)控制、閉環(huán)控制。
上圖為最簡單的“開環(huán)控制”,若在“機械傳動”機構(gòu)中引出反饋給控制部分,在經(jīng)過比較放大的則為“半閉環(huán)控制”。如若是在機械執(zhí)行機構(gòu)中引出反饋則為閉環(huán)控制。
開環(huán)控制:特點是簡單,控制精度低。控制的精度完全取決于所用元件的精度和校準(zhǔn)的精度,且抗干擾的能力差。但由于其結(jié)構(gòu)簡單、成本低。在精度要求不高的情況下,有一定的使用價值。
閉環(huán)控制:特點是控制精度高,抗干擾能力強。缺點是使用的元件多,線路復(fù)雜,系統(tǒng)的分析和設(shè)計都比較麻煩。
半閉環(huán):特點是控制的精度介于閉環(huán)和開環(huán)之間。
采用步進電機來實現(xiàn)驅(qū)動,一般情況下多采用開環(huán)控制。因為步進電機的輸出轉(zhuǎn)角與控制器提供的脈沖數(shù)有正比的關(guān)系,電機轉(zhuǎn)速與控制器提供的脈沖頻率成正比。因此通常在精度要求不是很高時,負(fù)載不是很大的情況下采用步進電機是合理的。
下圖為開環(huán)控制的框圖
圖2-3 開環(huán)控制框圖
2.3.3伺服系統(tǒng)設(shè)計
由于本系統(tǒng)的精度要求不高,載荷不大,再考慮了其經(jīng)濟要求等因素后,決定采用開環(huán)控制。
3 控制系統(tǒng)的設(shè)計方案
3.1 硬件系統(tǒng)設(shè)計
3.1.1系統(tǒng)的硬件結(jié)構(gòu)
計算機的硬件和軟件是相互結(jié)合而工作的,有些任務(wù)必須由硬件來實現(xiàn),另外有些任務(wù)必須由軟件來實現(xiàn)。但是也有一些任務(wù)可以由軟件來完成,也可由硬件來完成。一般來說,增加硬件會提高成本,但能簡化設(shè)計程序,且實時性好。反之,加重軟件任務(wù),會增加編程調(diào)試工作量,但能降低硬件成本。所以要合理的安排軟、硬件的結(jié)構(gòu)。
本系統(tǒng)步進電機速度的控制是由改變發(fā)出脈沖的時間間隔來實現(xiàn)的,用定時器來控制發(fā)出脈沖的時間間隔,這樣更能發(fā)揮硬件實時性的優(yōu)勢,同時能夠減輕軟件的任務(wù)。
由于本工作臺控制系統(tǒng)采用單片機作為核心部件,利用單片機構(gòu)成系統(tǒng)應(yīng)從元件級進行系統(tǒng)設(shè)計,根據(jù)任務(wù)需要,選擇合理的單片機并配置必須的存儲器、接口和外圍設(shè)備來構(gòu)成系統(tǒng)。
在進行系統(tǒng)的擴展和配置設(shè)計時考慮了以下原則
(1)盡可能的選擇典型電路,并符合單片機的常規(guī)用法。為硬件系統(tǒng)的標(biāo)準(zhǔn)化、模塊化打下良好的基礎(chǔ)。
(2)系統(tǒng)的擴展與外圍設(shè)備配置的水平應(yīng)充分滿足應(yīng)用系統(tǒng)功能的要求,并留有適當(dāng)?shù)挠嗟?,以便進行二次開發(fā)。
(3)硬件結(jié)構(gòu)應(yīng)結(jié)合應(yīng)用軟件方案一并考慮。硬件結(jié)構(gòu)與軟件方案會產(chǎn)生相互影響??紤]的原則是,軟件能實現(xiàn)的功能盡可能的由軟件來實現(xiàn),以簡化硬件電路。但是由軟件實現(xiàn)的硬件功能,其響應(yīng)的時間要比直接用硬件實現(xiàn)的時間長,而且占用CPU時間。
(4)整個系統(tǒng)中的相關(guān)的器件要盡可能的做到性能匹配。
(5)單片機外接電路較多時,必須考慮其驅(qū)動能力,增設(shè)線驅(qū)動器或者減少芯片功耗,降低總線負(fù)載。
根據(jù)以上設(shè)計原則及結(jié)構(gòu)框圖,逐一設(shè)計出每個單元電路,最后組合起來,成為完整的硬件系統(tǒng)。
3.1.2步進電機
圖3-1為三相反應(yīng)式步進電機的工作原理圖,其定子上有六個極,每個極上裝有控制繞組,每相對的兩極組成一相。轉(zhuǎn)子上有四個均勻分布的齒,其上沒有繞組,當(dāng)A相控制繞組通電時,轉(zhuǎn)子在磁場力的作用下與定子齒對齊,即轉(zhuǎn)子齒1、3和定子齒A、A'對齊,如圖3-1(a)所示。若切斷A相,同時接通B相,在磁場力作用下轉(zhuǎn)子轉(zhuǎn)過30°,轉(zhuǎn)子齒2、4和定子齒B、B'對齊,如圖3-1(b)所示,轉(zhuǎn)子轉(zhuǎn)過一個步距角。如再使B相斷電,同時C相控制繞組通電,轉(zhuǎn)子又轉(zhuǎn)過30°,使轉(zhuǎn)子齒1、3和定子齒C、C'對齊,如圖3-1(c)所示。如此循環(huán)往復(fù),并按A→B→C→A順序通電,步進電機按一定方向轉(zhuǎn)動。電機的轉(zhuǎn)速取決于控制繞組接通和斷開的變化頻率。
(a) (b) (c)
圖3-1三相反應(yīng)式步進電機單三拍工作時工作原理圖
實際的步進電機的轉(zhuǎn)子鐵心和定子磁極上均有小齒,齒距相等。定子和轉(zhuǎn)子的齒數(shù)要有一定比例的配合,即要求在某一相的一對極下,定子和轉(zhuǎn)子的齒一一對齊,而此時在其它兩相的磁極下,定子和轉(zhuǎn)子的齒要分別錯開一定的角度。這樣,如果步進電機的三相繞組按一定的方式通電,那么它就以一定的步矩角進行走步。步進電機的步距角的大小是由轉(zhuǎn)子的齒數(shù)、控制繞組的相數(shù)和通電方式?jīng)Q定,它們之間存在以下關(guān)系:
= 式(3.1)
式中,為步距角;C為通電狀態(tài)系數(shù),當(dāng)采用單相或雙相通電方式時,C=1;而采用單、雙相輪流通電方式時,C=2;m為步進電機的相數(shù);Zr為步進電機轉(zhuǎn)子齒數(shù)。
控制繞組通電狀態(tài)的改變,是由外加輸入脈沖驅(qū)動電路來實現(xiàn)的。每當(dāng)外電路送入一個脈沖,控制繞組的通電狀態(tài)即改變一次,與此對應(yīng)步進電機將轉(zhuǎn)動一個步距角。因此步進電機轉(zhuǎn)過的步距角數(shù)等于外加脈沖數(shù),則步進電機的轉(zhuǎn)速為:
n = 式(3.2)
式中f為步進電機通電的脈沖頻率,單位為Hz;n為步進電機的轉(zhuǎn)速,單位為r/min。步進電機的轉(zhuǎn)速用步矩角表示為:
n = = × = 式(3.3)
由式(3.1)和(3.2)可知,電機的相數(shù)和轉(zhuǎn)子的齒數(shù)越多,則步距角就越小,電機在脈沖頻率一定時的轉(zhuǎn)速也越低。當(dāng)電機的相數(shù)和轉(zhuǎn)子的齒數(shù)一定時,轉(zhuǎn)子的轉(zhuǎn)速和輸入的脈沖頻率成正比。因此,改變輸入的脈沖頻率就可以改變轉(zhuǎn)速,改變通電狀態(tài)順序就可以實現(xiàn)正反轉(zhuǎn)。由于這些特性,步進電機控制系統(tǒng)中,能夠按照控制命令實現(xiàn)啟動、停止、升速、降速、正反轉(zhuǎn)等操作。
3.1.2.1步進電機控制系統(tǒng)的構(gòu)成
舊式的步進電機控制系統(tǒng)由步進控制器、功率放大器和步進電機組成,如圖3-2所示。步進控制器包括緩沖寄存器、環(huán)形分配器、控制邏輯及正反轉(zhuǎn)控制門等其作用是把輸入脈沖變?yōu)榄h(huán)形脈沖,以便實現(xiàn)對步進電機的轉(zhuǎn)動和正反向控制。功率放大器的作用是將步進控制器輸出的環(huán)形脈沖加以放大,以驅(qū)動步進電機轉(zhuǎn)動。在這種控制中,由于步進控制器線路復(fù)雜,成本高,限制了它的應(yīng)用。
圖3-2步進電機控制系統(tǒng)的組成
隨著微型計算機的廣泛應(yīng)用,采用計算機控制系統(tǒng),只要控制輸入電脈沖的數(shù)量、頻率以及電機繞組通電相序即可獲得所需的轉(zhuǎn)角、轉(zhuǎn)速及轉(zhuǎn)向。這不僅簡化了線路,降低了成本,而且控制方便,提高了可靠性。圖3-3為微機控制步進電機的系統(tǒng)結(jié)構(gòu)圖。
圖3-3微機控制步進電機的系統(tǒng)結(jié)構(gòu)圖
3.1.2.2 步進電機的串行和并行控制
使用微機對步進電機進行控制,有串行和并行兩種方式。
(1)串行控制
具有串行控制功能的單片機與步進電機驅(qū)動電源之間有較少的連線。將信號送入步進電機驅(qū)動電源的為環(huán)形分配器,所以在這種系統(tǒng)中,驅(qū)動電源必須含有環(huán)形分配器。這種控制方式的示意圖見圖3-4所示。
圖3-4串行控制示意圖
(2)并行控制
用微型計算機系統(tǒng)的數(shù)條端口線直接去控制步進電機各相驅(qū)動電路的方法稱為并行控制。在電機的驅(qū)動電源內(nèi),不包括環(huán)形分配器,其功能由微型計算機系統(tǒng)實現(xiàn)。并行控制方案示意圖見圖3-5。
圖3-5并行控制示意圖
3.1.2.3步進電機的失步
在步進電機的運行過程中,將可能出現(xiàn)失步,其失步原因有兩種:
(1)轉(zhuǎn)子的加速度慢于步進電機的旋轉(zhuǎn)磁場,也就是低于換相速度而產(chǎn)生的。這是因為輸入電機的電能不足,在步進電機中產(chǎn)生的同步力矩?zé)o法使轉(zhuǎn)子速度跟隨定子磁場的旋轉(zhuǎn),從而引起失步。
(2)轉(zhuǎn)子的平均速度高于定子磁場的平均旋轉(zhuǎn)速度,這時定子通電勵磁的時間較長,大于轉(zhuǎn)子步進一步所需要的時間,則轉(zhuǎn)子在步進過程中獲得過多的能量,從而產(chǎn)生前沖和后沖的擺動振蕩,當(dāng)振蕩足夠嚴(yán)重時就會導(dǎo)致失步。
以步進電機三相單三拍通電方式為例分析步進電機的失步。在圖3-1中,由B相斷電,接通C相時,轉(zhuǎn)子齒2、4與B相磁極對齊而轉(zhuǎn)到轉(zhuǎn)子齒1、3與C相磁極對齊(圖c),若是由于某一原因造成轉(zhuǎn)子的阻轉(zhuǎn)矩大于電磁轉(zhuǎn)矩的作用,則轉(zhuǎn)子齒1、3沒有轉(zhuǎn)到與C相磁極對齊的位置,而停留在原處未動的位置(圖b),那么當(dāng)C繞組斷電再接通A相時,受A相磁極影響最大的轉(zhuǎn)子齒1、3仍返回到與A相磁極對齊(圖a)。由此可見,當(dāng)步進電機發(fā)生失步時,往往丟掉一個通電循環(huán)的步數(shù)或其整數(shù)倍。也就是說步進電機運行時失步的規(guī)律是,所失的步數(shù)是通斷電循環(huán)拍數(shù)的整數(shù)倍。
同理在停止過程中,如果負(fù)載超過步進電機的極限制動能力,步進電機將產(chǎn)生滑步或過沖。丟掉的步數(shù)也是循環(huán)拍數(shù)的整數(shù)倍。
所以要使步進電機快速的達到所要求的速度又不失步或過沖,其關(guān)鍵在于使加速過程中加速度所要求的轉(zhuǎn)矩既能充分利用各個運行頻率下步進電機所提供的轉(zhuǎn)矩,又不能超過這個轉(zhuǎn)矩。
3.1.2.4步進電機的的脈沖分配
步進電機的步進要求按一定的順序及頻率接通和斷開步進電機的控制繞組,這樣步進電機才能按要求啟動、運轉(zhuǎn)和停止。所以這就需要脈沖分配。以提供步進電機所需要的脈沖信號。
要使步進電機按要求步進,就要確定的給出脈沖分配,加到功率放大器輸入端。實現(xiàn)脈沖環(huán)行分配的方法有三種。
一種是采用計算機軟件,利用查表或計算的方法來進行脈沖的環(huán)行分配。把相應(yīng)的狀態(tài)代碼列入程序數(shù)據(jù)表中,通過軟件可順次在數(shù)據(jù)表中提取數(shù)據(jù)并通過輸出接口輸出即可,通過正向順序讀取和反向順序讀取數(shù)據(jù)表可控制電機進行正反轉(zhuǎn),通過控制讀取一次的時間間隔可控制電動機的轉(zhuǎn)速。該方法能充分利用計算機軟件資源以降低硬件成本,尤其是對多相的脈沖分配具有更大的優(yōu)點。但由于軟件分配法占用計算機的運行時間,易影響步進電機的運行速度。另一種是采用小規(guī)模集成電路搭接而成的環(huán)行分配器。這種方式靈活性大,可搭接任意相任意通電順序的環(huán)行分配器,同時在工作時不占計算機的工作時間。第三種即采用專用的環(huán)行分配器件。如市售的CH250即為一種三相步進電機專用環(huán)行分配器。它可以實現(xiàn)三相步進電機的各種環(huán)行分配,使用方便、接口簡單。
本系統(tǒng)采用軟件分配法來進行脈沖的分配。三相六拍工作方式的脈沖分配的時序圖如圖3-6所示。在此方式下,繞組的通電順序是,正轉(zhuǎn)時,按A→AB→B→BC→C→CA→A;反轉(zhuǎn)時,按A→AC→C→CB→B→BA→A進行。
圖3-6 三相六拍脈沖時序圖
三相六拍控制方式的通電狀態(tài)參看表3-1,可知正轉(zhuǎn)時I/O口應(yīng)循環(huán)輸出控制字0x01→0x03→0x02→0x06→0x04→0x05→…,反轉(zhuǎn)時I/O口應(yīng)循環(huán)輸出控制字0x05→0x04→0x06→0x02→0x03→0x01→…。在輸出最后一個控制字0x05(正轉(zhuǎn))或0x01(反轉(zhuǎn))后,要修改控制字地址指針,即地址指針重新賦值。
表3-1步進電機三相六拍環(huán)行脈沖分配狀態(tài)表
節(jié)拍序號
通電相
C相
B相
A相
控制字
方向
正轉(zhuǎn)
反向
0
A
0
0
1
0x01
1
AB
0
1
1
0x03
2
B
0
1
0
0x02
3
BC
1
1
0
0x06
4
C
1
0
0
0x06
5
CA
1
0
1
0x05
0
A
0
0
1
0x01
在輸出每一個控制字之前,判斷地址指針中的內(nèi)容是否為0x00。如果是0x00,則地址指針重新指向第一個控制字;否則,直接將地址指針中的內(nèi)容輸出到I/O口中,然后地址指針加1。如此循環(huán),便實現(xiàn)步進電機的連續(xù)運轉(zhuǎn)。
3.1.2.5步進電機的驅(qū)動電源
從計算機輸出口或從環(huán)行分配器輸出的信號脈沖電流一般只有幾個毫安,不能直接驅(qū)動步進電機,必須采用功率放大器將脈沖電流進行放大,使其增大到幾至十幾安培,從而驅(qū)動步進電機運轉(zhuǎn)。步進電機的工作特性在很大程度上取決于驅(qū)動電源的特性,對其每一相繞組來說,驅(qū)動電源相當(dāng)于一個電流無觸點開關(guān),理想的驅(qū)動電源應(yīng)使通過繞組的電流盡量接近矩形波。由于電機繞組有很大的電感,要做到這一點是困難的。
傳統(tǒng)的雙極型功率晶體管驅(qū)動電路有兩種型式,一種是應(yīng)用于小功率步進電機的單電源驅(qū)動線路,另一種是應(yīng)用于功率步進電機的高、低壓雙電源驅(qū)動線路。這兩種電路的共同問題是損耗大,效率低,而且大功率管易發(fā)生擊穿故障。
本控制系統(tǒng)采用步進電機驅(qū)動IC,內(nèi)含四組NPN達靈頓晶體管,使步進電機有足夠大的驅(qū)動電流,各個B極有3mA的輸入電流,才可使C-E導(dǎo)通。每個輸入可承受的最大電流為4A,非常適合來驅(qū)動步進電機!因為B極需要3mA的輸入電流方可導(dǎo)通,所以要用緩沖器來推動,其可用的組件有4050、74244。
3.1.2.6步進電機及其驅(qū)動電路的設(shè)計
(1)步進電機的技術(shù)參數(shù)
具體的產(chǎn)品的型號為:75BF003 技術(shù)數(shù)據(jù)見表3-2
表3-2 75BF003步進電機技術(shù)數(shù)據(jù)
相數(shù)
步距角/(°)
電壓(V)
相電流/A
最大靜轉(zhuǎn)矩/N.m
空載啟動頻率
3
1.5°
30
4
0.882
1250
電感/mH
電阻/N
分配方式
外形尺寸(軸徑)(mm)
重量/Kg
轉(zhuǎn)子轉(zhuǎn)動慣量
35.5
0.82
3相六拍
φ75×76(φ8)
1.58
1.563
(2)步進電機驅(qū)動電路的設(shè)計
輸出通道的設(shè)計內(nèi)容是確定通道結(jié)構(gòu)和元件裝置,合理選擇驅(qū)動電路。本系統(tǒng)的輸出通道也就是控制步進電機的通道,由于8051的P1口可以作為輸出使用,所以將其作為輸出通道的控制端口,采用三相六拍的步進電機進行并行控制需要P1口中的六位。
另外,單片機與步進電機的接口由專用的控制裝置來實現(xiàn)。步進電機的脈沖分配由單片機通過軟件控制構(gòu)成環(huán)行分配器。
除了上面的,一個完整的步進電機的控制還需要光電隔離器。光電隔離器的作用的把步進電機與單片機隔離開來,即把強電部分與弱電部分隔開,以保護單片機在步進電機漏電的時候單片機不會被損壞。
光電隔離器是隔離器的一種, 它是把發(fā)光器件與光敏接受器件集成在一起, 或用一根光導(dǎo)纖維把兩部分連接起來的器件。通常發(fā)光器件為發(fā)光二極管(LED) , 光接受器件為光敏晶體管等。加在發(fā)光器件上的電信號為耦合器的輸入信號, 接受器件輸出的信號為隔離器的輸出信號。當(dāng)有輸入信號加在光電隔離器的輸入端時, 發(fā)光器件發(fā)光, 光敏管受光照射產(chǎn)生光電流, 使輸出端產(chǎn)生相應(yīng)的電信號, 于是實現(xiàn)了光電的傳輸和轉(zhuǎn)換。其主要特點是以光為媒介實現(xiàn)電信號的傳輸, 而且器件的輸入和輸出之間在電氣上完全是絕緣的。
從結(jié)構(gòu)上看, 光電隔離器由一發(fā)光二極管和光敏晶體管封裝在同一個管殼內(nèi)組成, 其表示符號如圖3-7所示。它們在結(jié)構(gòu)排列上使LED 輻射能量有效地耦合到光敏晶體管上, 一般有金屬封裝和塑料封裝兩種形式。金屬封裝采用金屬外殼并用玻璃絕緣, 芯片采用環(huán)焊以保證發(fā)光管與接受管對準(zhǔn)。塑料封裝采用雙列直插式結(jié)構(gòu), 管芯先裝于管腳上,中間用透明樹脂固定, 具有聚光作用, 故靈敏度較高, 是目前應(yīng)用較多的一種。
圖 3-7 光電隔離器原理圖
本控制系統(tǒng)選用TLP521-4型光電耦合器。
引腳如圖3-8
圖 3-8 TLP521-4型光電耦合器引腳
每一個TLP521-4型光電耦合器有四個光電隔離器,所以本系統(tǒng)需要兩個這樣的光電耦合器,實現(xiàn)單片機與步進電機的隔離。
3.1.3微處理器的選擇
微處理器的主要性能指標(biāo)是位數(shù)、主頻、尋址能力、指令系統(tǒng)、內(nèi)部寄存器情況等。位數(shù)是重要的指標(biāo),除了影響運算精度外,還關(guān)系到指令系統(tǒng)的功能、尋址能力以及操作速度等。主頻影響操作速度。尋址能力決定可能的最大存儲容量。指令系統(tǒng)性能影響數(shù)據(jù)處理、輸入輸出等操作功能以及編程的方便性。內(nèi)部寄存器的數(shù)量和功能也和操作方便性有關(guān)。此外,單片機都帶有一定數(shù)量的內(nèi)部RAM,還有內(nèi)部ROM或其它器件。
考慮到需要滿足的要求及經(jīng)濟因素,本系統(tǒng)選擇MCS-51單片機。
(1) MCS-51單片機簡介
MCS-51單片機是一種單片機系列的名稱,由Intel公司研發(fā),是目前國內(nèi)廣泛應(yīng)用的單片機,屬于這一系列的單片機型號有許多種,包括8051、8751、8031、80C51、87C51、80C31等,它們的基本組成和基本性能都是相同的,但是性能上略有差別。
MCS-51單片機是在一塊芯片上集成了CPU、ROM、RAM、定時器/計數(shù)器和多種功能的I/O端口等一臺計算機所需要的基本功能部件。
單片機內(nèi)部包含了下列的幾個部件:
一個8位CPU;
一個片內(nèi)震蕩器及時鐘電路;
4K字節(jié)程序存儲器;
128字節(jié)數(shù)據(jù)存儲器;
兩個16位可編程定時器/計數(shù)器;
一個可編程全雙工串行口;
四個8位可編程并行I/O口;
64K字節(jié)外部數(shù)據(jù)存儲器和64K字節(jié)程序存儲器擴展控制電路;
五個中斷源,兩個優(yōu)先級嵌套中斷機構(gòu)。
以上部分通過總線連接。
MCS-51系列單片機的引腳:
MCS-51系列單片機中各種型號的引腳是相互兼容的,而絕大多數(shù)都采用40引腳的雙列直插封裝方式。如圖3-9所示
圖3-9 8051引腳圖
(2)8051的引腳功能:
主電源引腳VCC和VSS
VCC——(40腳)接+5V電壓;
VSS——(20腳)接地。
外接晶體引腳XTAL1和XTAL2
XTAL1(19腳)接外部晶體的一個引腳。在單片機內(nèi)部,它是一個反相放大器的輸入端,這個放大器構(gòu)成了片內(nèi)振蕩器。當(dāng)采用外部振蕩器時,對HMOS單片機,此引腳應(yīng)接地;對CHMOS單片機,此引腳作為驅(qū)動端。
XTAL2(18腳)接外晶體的另一端。在單片機內(nèi)部,接至上述振蕩器的反相放大器的輸出端。采用外部振蕩器時,對HMOS單片機,該引腳接外部振蕩器的信號,即把外部振蕩器的信號直接接到內(nèi)部時鐘發(fā)生器的輸入端;對CMOS,此引腳應(yīng)懸浮。
控制或與其它電源復(fù)用引腳RST/VPD、ALE/PROG、PSEN和EA/VPP
① RST/VPD(9腳)當(dāng)振蕩器運行時,在此腳上出現(xiàn)兩個機器周期的高電平將使單片機復(fù)位。推薦在此引腳與VSS引腳之間連接一個約8.2k的下拉電阻,與VCC引腳之間連接一個約10μF的電容,以保證可靠地復(fù)位。
VCC掉電期間,此引腳可接上備用電源,以保證內(nèi)部RAM的數(shù)據(jù)不丟失。當(dāng)VCC主電源下掉到低于規(guī)定的電平,而VPD在其規(guī)定的電壓范圍(5±0.5V)內(nèi),VPD就向內(nèi)部RAM提供備用電源。
② ALE/PROG(30腳):當(dāng)訪問外部存貯器時,ALE(允許地址鎖存)的輸出用于鎖存地址的低位字節(jié)。即使不訪問外部存儲器,ALE端仍以不變的頻率周期性地出現(xiàn)正脈沖信號,此頻率為振蕩器頻率的1/6。因此,它可用作對外輸出的時鐘,或用于定時目的。然而要注意的是,每當(dāng)訪問外部數(shù)據(jù)存儲器時,將跳過一個ALE脈沖。ALE端可以驅(qū)動(吸收或輸出電流)8個LS型的TTL輸入電路。
對于EPROM單片機(如8751),在EPROM編程期間,此引腳用于輸入編程脈沖(PROG)。
③ PSEN(29腳):此腳的輸出是外部程序存儲器的讀選通信號。在從外部程序存儲器取指令(或常數(shù))期間,每個機器周期兩次PSEN有效。但在此期間,每當(dāng)訪問外部數(shù)據(jù)存儲器時,這兩次有效的PSEN信號將不出現(xiàn)。PSEN同樣可以驅(qū)動(吸收或輸出)8個LS型的TTL輸入。
④ EA/VPP(引腳):當(dāng)EA端保持高電平時,訪問內(nèi)部程序存儲器,但在PC(程序計數(shù)器)值超過0FFFH(對851/8751/80C51)或1FFFH(對8052)時,將自動轉(zhuǎn)向執(zhí)行外部程序存儲器內(nèi)的程序。當(dāng)EA保持低電平時,則只訪問外部程序存儲器,不管是否有內(nèi)部程序存儲器。對于常用的8031來說,無內(nèi)部程序存儲器,所以EA腳必須常接地,這樣才能只選擇外部程序存儲器。
輸入/輸出(I/O)引腳P0、P1、P2、P3(共32根)
① P0口(39腳至32腳):是雙向8位三態(tài)I/O口,在外接存儲器時,與地址總線的低8位及數(shù)據(jù)總線復(fù)用,能以吸收電流的方式驅(qū)動8個LS型的TTL負(fù)載。
② P1口(1腳至8腳):是準(zhǔn)雙向8位I/O口。由于這種接口輸出沒有高阻狀態(tài),輸入也不能鎖存,故不是真正的雙向I/O口。P1口能驅(qū)動(吸收或輸出電流)4個LS型的TTL負(fù)載。
③ P2口(21腳至28腳):是準(zhǔn)雙向8位I/O口。在訪問外部存儲器時,它可以作為擴展電路高8位地址總線送出高8位地址。在對EPROM編程和程序驗證期間,它接收高8位地址。P2可以驅(qū)動(吸收或輸出電流)4個LS型的TTL負(fù)載。
④ P3口(10腳至17腳):是準(zhǔn)雙向8位I/O口,在MCS-51中,這8個引腳還用于專門功能,是復(fù)用雙功能口。P3能驅(qū)動(吸收或輸出電流)4個LS型的TTL負(fù)載。[7]
3.1.4鍵盤操作的接口電路設(shè)計
3.1.4.1鍵盤操作實現(xiàn)的功能分析
參數(shù)設(shè)定 本系統(tǒng)在開始運行之前要求輸入步進電機勻速的運行速度和運行的總步數(shù),所以要進行按鍵輸入數(shù)值以傳入?yún)?shù)。
系統(tǒng)啟動、停止等操作 為了實現(xiàn)系統(tǒng)的啟動、停止和正、反轉(zhuǎn),要設(shè)置相應(yīng)的按鍵和開關(guān)進行功能鍵的處理。
根據(jù)上面對鍵盤要求的分析,考慮到本系統(tǒng)還要求有顯示功能,所以選用8255并行接口芯片作為鍵盤與顯示接口。
3.1.4.2 8255芯片簡介
MCS-51單片機是Intel公司的產(chǎn)品,Intel公司的配套I/O接口芯片與MCS-51單片機的接口最為簡單、可靠。8255是用Intel MCS-80/85系列的通用可編程并行輸入/輸出接口芯片。它也可以和MCS-51單片機系統(tǒng)相連,以擴展MCS-51系統(tǒng)的I/O端口,8255與MCS-51單片機相連時是作為外部RAM單元來處理的。它具有三個8位并行輸入/輸出口,具有三種工作方式,可通過程序來改變其工作方式,因而其使用起來靈活方便,通用性強,可以作為單片機與多種外圍設(shè)備連接時的中間接口電路。
8255的引腳功能:
8255有40個引腳,采用雙列直插式封裝,如圖3-10
圖3-10 8255引腳圖
8255各個引腳的功能:
D0~D7:三態(tài)雙向數(shù)據(jù)總線,8255與CPU數(shù)據(jù)傳送的通道,當(dāng)CPU 執(zhí)行輸入輸出指令時,通過它實現(xiàn)8位數(shù)據(jù)的讀/寫操作,控制字和狀態(tài)信息也通過數(shù)據(jù)總線傳送。
CS:片選信號線,當(dāng)這個輸入引腳為低電平時,表示芯片被選中,允許8255與CPU進行通訊。
RD:讀信號線,當(dāng)這個輸入引腳為低電平時,允許8255通過數(shù)據(jù)總線向CPU發(fā)送數(shù)據(jù)或狀態(tài)信息,即CPU從8255讀取信息或數(shù)據(jù)
WR:寫入信號,當(dāng)這個輸入引腳為低電平時,允許CPU將數(shù)據(jù)或控制字寫入8255。
RESET:復(fù)位輸入線,當(dāng)該輸入端外于高電平時,所有內(nèi)部寄存器(包括控制寄存器)均被清除,所有I/O口均被置成輸入方式。
A1、A0:端口地址總線,8255中有端口A、B、C和一個內(nèi)部控制字寄存器,共4個端 口,由A0、A1輸入地址信號來尋址。
PA0~PA7:端口A輸入輸出線,一個8位的數(shù)據(jù)輸出鎖存器/緩沖器, 一個8位的數(shù)據(jù)輸入鎖存器。
PB0~PB7:端口B輸入輸出線,一個8位的I/O鎖存器, 一個8位的輸入輸出緩沖器。
PC0~PC7:端口C輸入輸出線,一個8位的數(shù)據(jù)輸出鎖存器/緩沖器, 一個8位的數(shù)據(jù)輸入緩沖器。端口C可以通過工作方式設(shè)定而分成2個4位的端口, 每個4位的端口包含一個4位的鎖存器,分別與端口A和端口B配合使用,可作為控制信號輸出或狀態(tài)信號輸入端口。[6]
3.1.4.3 矩陣式鍵盤掃描方式工作原理與去抖動的方法
無鍵按下時,各行線均為高電平。當(dāng)采用列線輸出低電平時,有鍵按下相應(yīng)行線上出現(xiàn)低電平。根據(jù)此原理,CPU對整個鍵盤進行掃描,即CPU不斷對列線逐列置低電平,然后檢查行線輸入狀態(tài),確定按鍵情況。若無鍵按下時,行線與列線斷開,行線上全是高電平,當(dāng)有鍵按下時,總有鍵把某行某列短接,使行線端口不全為高電平,即不全為“1”。此時讀到的鍵值就是按下的鍵。掃描全部鍵盤時間很短,僅十幾微秒,而按鍵時間一次至少幾十毫秒,所以只要有鍵按下,都能被掃描到。
鍵是機械開關(guān)結(jié)構(gòu),由于機械觸點的彈性及電壓突跳等原因,在觸點閉合或斷開的瞬間會出現(xiàn)電壓抖動,所以要進行鍵的去抖動處理。去抖動的方法有硬件去抖動和軟件去抖動。
① 硬件去抖動
對于單個按鍵或按鈕可以采用RC濾波器或RS雙穩(wěn)態(tài)觸發(fā)器(如圖)來抑制開關(guān)輸出邏輯信號的抖動,當(dāng)開關(guān)從A端打向B端時,無法避免的在Q’輸入一個近似于圖示的脈沖序列,利用RS雙穩(wěn)態(tài)觸發(fā)器連續(xù)的“置0”和“保持”功能,可以使輸出端Q保持翻轉(zhuǎn)為低電平, 維持高電平。如圖3-11,該方法比較復(fù)雜,如果系統(tǒng)按鍵輸入較多,則因附加電路太多而不用這種方法。
圖3-11 硬件去抖原理圖
② 軟件法
I.延遲法。
延遲法是采用時間延遲來躲過抖動,當(dāng)檢測到按鍵被按下或釋放時,由CPU產(chǎn)生一段延時,時間大約為10~20ms,然后再進入掃描檢測程序,從而將按鍵抖動5~10ms躲過,所以不會造成系統(tǒng)誤讀輸入狀態(tài)。因為這種方法比較簡單,不需要增加成本,所以在大多數(shù)微機控制系統(tǒng)中常常使用。
II.采樣法。
在數(shù)據(jù)采集時利用程序?qū)崿F(xiàn)開關(guān)機械抖動的消除,程序設(shè)計的思路是:在檢測到鍵有動作時,按照一定的時間間隔對端口進行周期性的采樣,采樣時間比產(chǎn)生抖動的時間稍長(如30~35ms),若考慮器件的差異和老化等因素,采樣的時間應(yīng)該更長一些,如果連續(xù)采樣得到同樣狀態(tài)的信號,則認(rèn)為信號值是正確的。但是如果在采樣時出現(xiàn)抖動噪聲,則噪聲信號也可能被誤認(rèn)為信號,為防止噪聲可能被誤認(rèn)為信號,通常采用多次采樣的模式。
由于本控制系統(tǒng)的鍵數(shù)多,使用硬件會使成本增加,所以是用軟件法。
3.1.4.4 鍵盤各鍵功能規(guī)劃
各數(shù)值鍵及功能鍵具體設(shè)計如下:
I.?dāng)?shù)字鍵0~9 本系統(tǒng)在開始運行之前要求輸入步進電機勻速的運行步數(shù),所以要進行按鍵輸入數(shù)值以傳入?yún)?shù),并通過顯示器顯示。
II.系統(tǒng)啟動、停止、急停鍵 當(dāng)要輸入的參數(shù)輸入并無誤后,按動啟動鍵,步進電機開始走步,運行結(jié)束后按停止鍵結(jié)束走步。如果遇到緊急情況,可以按急停鍵,步進電機同樣停止運轉(zhuǎn),待問題解決后,系統(tǒng)才能正常使用。
III.正/反轉(zhuǎn)控制 可以控制步進電機的正反轉(zhuǎn)
IV.X+,Y+,X-,Y-鍵 可以實現(xiàn)步進電機的手動控制,在輸入?yún)?shù)時,先按此鍵,然后輸入相應(yīng)的數(shù)值。
V.確定與刪除鍵 在輸入?yún)?shù)時候如果發(fā)現(xiàn)輸入錯誤,可以使用刪除鍵刪除然后重新輸入,在輸入完畢后,按確定鍵進行下一個參數(shù)的設(shè)定或者運行步進電機。
3.1.5顯示部分操作的接口和電路設(shè)計
3.1.5.1 LED顯示器的設(shè)計
LED顯示器的發(fā)光二極管有兩種連接方法,共陽極接法和共陰極接法。本設(shè)計中采用共陰極接法。七段發(fā)光二極管,再加上一個小數(shù)點位,共計八段,因此提供給LED顯示器的字形代碼正好一個字節(jié)。
用單片機驅(qū)動LED數(shù)碼管有很多方法,按顯示方式分,有靜態(tài)顯示和 動態(tài)(掃描)顯示:
① LED靜態(tài)顯示方式
LED工作于靜態(tài)顯示方式時,各位的共陰極(或共陽極)連接在一起并接地(或+5V);每位的段選線(a~dp)分別與一個8位的鎖存輸出相連。之所以稱為靜態(tài)顯示,是由于顯示器中的各位相互獨立,而且各位的顯示字符一經(jīng)確定,相應(yīng)鎖存器的輸出將維持不變,直到顯示另一個字符為止。也正因為如此,靜態(tài)顯示器的亮度都比較高。這種顯示方式接口,編程容易,管理也簡單,但是占用口線資源較多。如果顯示器位數(shù)增多,則靜態(tài)顯示方式無法適應(yīng)。因此在顯示位數(shù)較多的情況下,一般都采用動態(tài)顯示方式。
② LED動態(tài)顯示方式
在多位LED顯示時,為了簡化硬件電路,通常將所有位的段選線相應(yīng)地連接在一起,由一個8位I/O口控制,形成段選線的多路復(fù)用。而各位的共陽極或者共陰極分別由相應(yīng)的I/O口控制,實現(xiàn)各位的分時選通。在掃描過程中,在某一瞬間,只讓某一位的字位線處于選通狀態(tài),其它各位的字位線處于斷開狀態(tài);同時字段線上輸出相應(yīng)位要顯示字符的段選碼。這樣在每一瞬時,6位LED中只有選通的那一位LED顯示出字符,而其它5位則是熄滅的。同樣,在下一瞬時,只顯示下一位LED。如此繼續(xù),等6位LED都依次顯示完畢后,循環(huán)進行。雖然這些字符是在不同的瞬時輪流顯示出來的,但如使每位顯示的字符停留顯示一段時間,一般為1~5ms,由于人眼的視覺暫留現(xiàn)象,則可以造成多位同時亮的假象,看到的是6位穩(wěn)定顯示的字符,達到顯示的目的。
考慮到上面的情況,本控制系統(tǒng),不適用靜態(tài)顯示方式,所以選取動態(tài)顯示方式。
3.1.5.2 LED顯示的驅(qū)動
驅(qū)動LED數(shù)碼管的器件有很多,本系統(tǒng)選用串行顯示管理芯片PS7219。
串行顯示管理芯片PS7219廣泛地應(yīng)用于智能儀表當(dāng)中,在具體應(yīng)用過程中,它接收所要顯示的數(shù)據(jù)并將其顯示在LED顯示器上,動態(tài)地掃描管理著顯示,該芯片本身只需3根線就可與單片機實現(xiàn)接口,硬件連接簡便,軟件編程容易.尤其用在單片機擔(dān)負(fù)繁忙數(shù)據(jù)處理任務(wù)的系統(tǒng)中,節(jié)省單片機用于顯示掃描的時間,更顯出其優(yōu)越性,分述如下。
① 顯示芯片PS7219
PS7219是一種高性價比的多位LED顯示管理芯片,其接口采用流行的同步串行外設(shè)接口(SPI),可與任何一種單片機方便接口,并可同時驅(qū)動8位LED。其內(nèi)部具有15×8RAM功能控制寄存器,可方便尋址、對每位數(shù)字可單獨控制、刷新。顯示亮度可數(shù)字控制,每位都具有閃爍使能控制。內(nèi)部自帶時鐘電路,無需任何外部元件便可多路復(fù)用自動掃描。N個PS7219級聯(lián),可實現(xiàn)N×8位LED的顯示。適于各種智能儀表的顯示。
PS7219具有以下主要特點:
I.與單片微處理器的接口只需3條線。
II.可以按位選擇BCD碼譯碼或者不譯碼。每位數(shù)字可被單獨尋址和更新,無需重寫整個顯示器。
III.可以設(shè)定掃描顯示位數(shù)(從1位到8位)。
IV.可設(shè)定掉電模式禁止所有顯示,以降低功耗;也可強迫所有LED接通,進入測試方式。
V.具有較高的驅(qū)動能力,段驅(qū)動處接不同的上拉電阻,可改變LED的段電流。
PS7219芯片的引腳如圖3-12
圖3-12 PS7219引腳
引腳說明:
RST:復(fù)位功能。PS7219上電時RST引腳要求外部提供一個典型高電平復(fù)位信號;PS7219A內(nèi)置一個μP監(jiān)控電路,可為系統(tǒng)其他IC提供可靠的復(fù)位信號,上電時對外部提供一個可靠的高電平復(fù)位信號,脈寬大于140ms。
LOAD:裝載數(shù)據(jù)輸入。當(dāng)LOAD為高電平,串行輸入數(shù)據(jù)的最后16位被鎖定。
DIN:串行數(shù)據(jù)輸入。在CLK的下降沿,數(shù)據(jù)被加載到內(nèi)部16位移位寄存器中。
CLK:時鐘輸入。最高頻率為500kHz,在CLK