步進電機角度控制設(shè)計_第1頁
步進電機角度控制設(shè)計_第2頁
步進電機角度控制設(shè)計_第3頁
步進電機角度控制設(shè)計_第4頁
步進電機角度控制設(shè)計_第5頁
已閱讀5頁,還剩32頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

_目錄摘要....................................................................................................................................11設(shè)計任務(wù)與要求............................................................................................................21.1設(shè)計目的.................................................................................................................21.2設(shè)計要求和設(shè)計指標............................................................................................22方案分析........................................................................................................................33系統(tǒng)硬件部分................................................................................................................43.1主控模塊.................................................................................................................43.2鍵盤輸入模塊........................................................................................................73.3電機模塊.................................................................................................................83.4顯示模塊...............................................................................................................114系統(tǒng)軟件部分..............................................................................................................134.1整體流程圖及主程序..........................................................................................134.2按鍵流程圖及程序..............................................................................................154.3顯示模塊程序......................................................................................................204.4電動機模塊流程圖及程序.................................................................................214.5中斷程序...............................................................................................................235仿真運行......................................................................................................................256心得體會......................................................................................................................26參考文獻..........................................................................................................................27附錄一:Protues硬件仿真圖.....................................................................................28附錄二:系統(tǒng)程序.........................................................................................................29_摘要步進電機在控制系統(tǒng)中具有很廣泛的應用。它可以把脈沖信號轉(zhuǎn)換成角位移,并且可用作電磁制動輪、電磁差分器或角位移發(fā)生器等。謝謝閱讀步進電機是將電脈沖信號轉(zhuǎn)變?yōu)榻俏灰苹蚓€位移的開環(huán)控制元步進電機件。在非超載的情況下,電機的轉(zhuǎn)速、停止的位置只取決于脈沖信號的頻率和脈沖數(shù),而不受負載變化的影響,當步進驅(qū)動器接收到一個脈沖信號,它就驅(qū)動步進電機按設(shè)定的方向轉(zhuǎn)動一個固定的角度,稱為“步距角”,它的旋轉(zhuǎn)是以固定的角度一步一步運行的??梢酝ㄟ^控制脈沖個數(shù)來控制角位移量,從而達到準確定位的目的;同時可以通過控制脈沖頻率來控制電機轉(zhuǎn)動的速度和加速度,從而達到調(diào)速的目的。感謝閱讀此次設(shè)計使用C語言作為編程語言。C語言是一種計算機程序設(shè)計語言,它既具有高級語言的特點,又具有匯編語言的特點。它的應用范圍廣泛,具備很強的數(shù)據(jù)處理能力,不僅僅是在軟件開發(fā)上,而且各類科研都需要用到C語言,適于編寫系統(tǒng)軟件、三維、二維圖形和動畫,具體應用例如單片機以及嵌入式系統(tǒng)開發(fā)。精品文檔放心下載硬件部分使用89C51作為主控芯片,并使用ULN2003A將單片機的信號放大以控制步進電機,同時使用4位數(shù)碼管顯示轉(zhuǎn)動角度及次數(shù)。感謝閱讀關(guān)鍵詞 :步進電機 C語言 AT89C51ULN2003A 轉(zhuǎn)動角度謝謝閱讀_1設(shè)計任務(wù)與要求1.1設(shè)計目的設(shè)計制作和調(diào)試一個由8086組成步進電機角度測控系統(tǒng)。通過這個過程學精品文檔放心下載習熟悉鍵盤控制和七段數(shù)碼管的使用,掌握步進電機的角度控制和角度顯示方法。謝謝閱讀1.2設(shè)計要求和設(shè)計指標1.在顯示器上顯示任意四位十進制數(shù)2.將8個鍵定義鍵值為0~7,按任意鍵在顯示器上顯示對應鍵值謝謝閱讀3.實現(xiàn):(1)定義鍵盤按鍵:5個為數(shù)字鍵1~5;3個功能鍵:設(shè)置SET、清零CLR、感謝閱讀開始START;(2)顯示器上第一位顯示次數(shù),后三位顯示每次行走的角度;感謝閱讀(3)通過鍵盤的按鍵,設(shè)置步進電機各次的角度值;第一位設(shè)置次數(shù),后三位感謝閱讀設(shè)置角度值。(4)按START鍵啟動步進電機開始轉(zhuǎn)動,按SET鍵停止;按CLR鍵清零。謝謝閱讀_2方案分析課程設(shè)計要求設(shè)計一個直流電機微型計算機角度控制系統(tǒng),定義8個鍵盤按鍵:5個為數(shù)字鍵1~5;3個功能鍵:設(shè)置SET、清零CLR、開始START;顯示器上的四位可顯示轉(zhuǎn)動次數(shù)和每次轉(zhuǎn)動角度;通過鍵盤的按鍵,設(shè)置步進電機轉(zhuǎn)動次數(shù)和每次轉(zhuǎn)動角度;按START鍵啟動電機開始轉(zhuǎn)動,按SET鍵停止;按CLR鍵清零。精品文檔放心下載綜合分析之后,我們應該將電路實現(xiàn)利用鍵盤按鍵通過89C51的P3口實現(xiàn)輸入功能,并通過89C51的P0口和P1口實現(xiàn)對數(shù)碼管顯示的控制。同時我們可以通過P2口控制ULN2003A驅(qū)動電動機運行。謝謝閱讀我們可以將整體電路設(shè)計成幾個相對獨立而又有機結(jié)合的模塊,來逐一進行分析。感謝閱讀通過分析我們可以畫出系統(tǒng)圖,如圖2-1所示。鍵顯示模塊主盤控模模塊塊電機模塊圖2-1系統(tǒng)圖_3系統(tǒng)硬件部分3.1主控模塊3.1.1AT89C51芯片本次設(shè)計是使用AT89C51作為主控芯片,AT89C51是一種帶4K字節(jié)閃爍可編程可擦除只讀存儲器的低電壓、高性能CMOS8位微處理器,俗稱單片機。單片機的可擦除只讀存儲器可以反復擦除100次。該器件采用ATMEL高密度非易失存儲器制造技術(shù)制造,與工業(yè)標準的MCS-51指令集和輸出管腳相兼容。由于將多功能8位CPU和閃爍存儲器組合在單個芯片中,ATMEL的AT89C51是一種高效微控制器,89C2051是它的一種精簡版本。89C單片機為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價廉的方案。謝謝閱讀AT89C51的40個引腳主要有一下幾種(1)VCC:供電電壓。(2)GND:接地。(3)P0口:P0口為一個8位漏級開路雙向I/O口,每腳可吸收8TTL門電流。當P1口的管腳第一次寫1時,被定義為高阻輸入。P0能夠用于外部程序數(shù)據(jù)存儲器,它可以被定義為數(shù)據(jù)/地址的低八位。在FIASH編程時,P0口作為原碼輸入口,當FIASH進行校驗時,P0輸出原碼,此時P0外部必須被拉高。謝謝閱讀(4)P1口:P1口是一個內(nèi)部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門電流。P1口管腳寫入1后,被內(nèi)部上拉為高,可用作輸精品文檔放心下載_入,P1口被外部下拉為低電平時,將輸出電流,這是由于內(nèi)部上拉的緣故。在FLASH編程和校驗時,P1口作為低八位地址接收。謝謝閱讀(5)P2口:P2口為一個內(nèi)部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個TTL門電流,當P2口被寫“1”時,其管腳被內(nèi)部上拉電阻拉高,且作為輸入。并因此作為輸入時,P2口的管腳被外部拉低,將輸出電流。這是由于內(nèi)部上拉的緣故。P2口當用于外部程序存儲器或16位地址外部數(shù)據(jù)存儲器進行存取時,P2口輸出地址的高八位。在給出地址“1”時,它利用內(nèi)部上拉優(yōu)勢,當對外部八位地址數(shù)據(jù)存儲器進行讀寫時,P2口輸出其特殊功能寄存器的內(nèi)容。P2口在FLASH編程和校驗時接收高八位地址信號和控制信號。謝謝閱讀(6)P3口:P3口管腳是8個帶內(nèi)部上拉電阻的雙向I/O口,可接收輸出4個TTL門電流。當P3口寫入“1”后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平,P3口將輸出電流(ILL)這是由于上拉的緣故。謝謝閱讀P3口還有其他一些特殊功能,本事設(shè)計沒有使用,故在此不做敘述。精品文檔放心下載(7)RST:復位輸入。當振蕩器復位器件時,要保持RST腳兩個機器周期的高電平時間。謝謝閱讀(8)ALE/PROG:當訪問外部存儲器時,地址鎖存允許的輸出電平用于鎖存地址的地位字節(jié)。在FLASH編程期間,此引腳用于輸入編程脈沖。在平時,ALE端以不變的頻率周期輸出正脈沖信號,此頻率為振蕩器頻率的1/6。因此它可用作對外部輸出的脈沖或用于定時目的。然而要注意的是:每當用作外部數(shù)據(jù)存儲器時,將跳過一個ALE脈沖。如想禁止ALE的輸出可在SFR8EH地址上置0。此時,ALE只有在執(zhí)行MOVX,MOVC指令是ALE才起作用。另外,該引腳被略微拉高。如果微處理器在外部執(zhí)行狀態(tài)ALE禁止,置位無效。謝謝閱讀(9)/PSEN:外部程序存儲器的選通信號。在由外部程序存儲器取指期間,每個機器周期兩次/PSEN有效。但在訪問外部數(shù)據(jù)存儲器時,這兩次有效的/PSEN信號將不出現(xiàn)。精品文檔放心下載(10)/EA/VPP:當/EA保持低電平時,則在此期間為外部程序存儲器(0000H-FFFFH),不管是否有內(nèi)部程序存儲器讀取外部ROM數(shù)據(jù)。注意加密方式1時,/EA將內(nèi)部鎖定為RESET;當/EA端保持高電平時,單片機讀取內(nèi)精品文檔放心下載_部程序存儲器(。擴展有外部ROM時讀取完內(nèi)部ROM后自動讀取外部ROM)。精品文檔放心下載在FLASH編程期間,此引腳也用于施加12V編程電源(VPP)。感謝閱讀(11)XTAL1:反向振蕩放大器的輸入及內(nèi)部時鐘工作電路的輸入。謝謝閱讀(12)XTAL2:來自反向振蕩器的輸出圖3-1AT89C51芯片3.1.2時鐘電路及復位電路在本次課程設(shè)計中,我們用到AT89C51單片機。而他需要一些特定的控制電路的控制才能更好地工作。具體到本次課設(shè)中,我們需要時鐘電路、防抖電路、復位電路等。精品文檔放心下載如圖3-2所示是我們的時鐘電路,由電容C1、C2以及晶振組成。謝謝閱讀圖3-2時鐘電路如圖3-3所示是我們的復位電路。_圖3-3復位電路3.2鍵盤輸入模塊在微機化儀器儀表中,鍵盤是最常用的一種輸入設(shè)備,用于輸入數(shù)據(jù)和命令。鍵盤的每一個按鍵都被賦予一個代碼,稱為鍵碼。鍵盤系統(tǒng)的主要工作包括及時發(fā)現(xiàn)有鍵閉合,求閉合鍵的鍵碼。根據(jù)這一過程的不同,鍵盤可以分為兩種,即全編碼鍵盤和非編碼鍵盤。全編碼鍵盤多是商品化的計算機輸入設(shè)備,自動提供對應于被安檢的ASCII碼,且能同時產(chǎn)生一個控制信號通知微處理器。此外,這種鍵盤具有處理抖動和多鍵串鍵的保護電路,具有使用方便、價格較貴、體積較大、按鍵較多等特點。非編碼鍵盤恰如一組開關(guān),一般組成行和列矩陣。其全部工作過程,如按鍵的識別、鍵的代碼獲取、防止串鍵及消抖等問題,都靠程序完成。因此,它所需要的硬件少,價格便宜,一般作為單板機、智能儀表等簡單的輸入設(shè)備。精品文檔放心下載鍵盤電路常用的有兩種,一種是獨立式鍵盤電路,另一種是矩陣式鍵盤。獨立式鍵盤每個按鍵獨占一根I/O線。因此鍵識別軟件非常簡單。對于只有幾個按鍵的系統(tǒng),常采用這種電路。對于多按鍵系統(tǒng)來講,這種電路憂郁將占用更多的I/O線而變得無法實用。謝謝閱讀矩陣式鍵盤電路將I/O口線的一部分作為行線,另一部分作為列線,按鍵設(shè)置在行線和列線的交叉點上,這就構(gòu)成了行列式鍵盤。行列式鍵盤中按鍵的數(shù)量可達行線數(shù)n乘以列線數(shù)m。由此可以看到行列式鍵盤在按鍵較多時,可以節(jié)省I/O線。按鍵開關(guān)的兩端分別接在行線和列線上。行線通過一個電阻接到+5V電源上,在沒有鍵按下時,行線處于高電平狀態(tài)。感謝閱讀判斷是否有鍵按下的方法是:向所有的列線I/O口輸出低電平,然后將行線的電平狀態(tài)讀入累加器中,若無鍵按下,行線仍保持高電平狀態(tài),若有鍵按下,行線至少應有一條為低電平。當確定有鍵按下后,即可進行求鍵碼的過程。其方謝謝閱讀_法是:依次從一條列線上輸出低電平,然后檢查各行線的狀態(tài),若全為高電平,說明閉合鍵不在該列;若不全為1,則說明閉合鍵在該列,且在變?yōu)榈碗娖降男械慕稽c上。精品文檔放心下載在鍵盤處理程序中,每個鍵都被賦予了一個鍵號,由從列線I/O口輸出的數(shù)據(jù)和從行線I/O口讀入的數(shù)據(jù)可以求出閉合鍵的鍵號。精品文檔放心下載圖3-4鍵盤模塊原理圖3.3電機模塊3.3.1步進電機結(jié)構(gòu)及工作原理步進電機又叫脈沖電機,它是一種將電脈沖信號轉(zhuǎn)換為角位移的機電式數(shù)模轉(zhuǎn)換器。在開環(huán)數(shù)字程序控制系統(tǒng)中,輸出控制部分常采用步進電機作為驅(qū)動元件。步進電機控制線路接受計算機發(fā)來的指令脈沖,控制步進電機作為驅(qū)動元件。步進電機控制線路接收計算機發(fā)來的指令脈沖,控制步進電機做相應的轉(zhuǎn)動。在非超載的情況下,電機的轉(zhuǎn)速、停止的位置只取決于脈沖信號的頻率和脈沖數(shù),精品文檔放心下載_而不受負載變化的影響,即給電機加一個脈沖信號,電機則轉(zhuǎn)過一個步距角。這一線性關(guān)系的存在,加上步進電機只有周期性的誤差而無累積誤差等特點。使得在速度、位置等控制領(lǐng)域用步進電機來控制變的非常的簡單。謝謝閱讀步進電機的驅(qū)動電路根據(jù)控制信號工作,控制信號由8086通過8255A產(chǎn)生。謝謝閱讀此次設(shè)計采用四相式步進電機。圖3-5步進電機勵磁線圈(1)步進電機工作原理說明步進電機由轉(zhuǎn)子和定子組成。轉(zhuǎn)子由一個永久磁鐵構(gòu)成,定子分別由四組繞組組成。步進電機組成和電氣連接分別如圖3-6和3-7所示。感謝閱讀圖3-6轉(zhuǎn)子和定子示意圖 圖3-7電氣連接示意圖感謝閱讀當S1連通電源后,定子磁場將產(chǎn)生一個靠近轉(zhuǎn)子為N極,遠離轉(zhuǎn)子為S極才磁場,這樣的定子磁場和轉(zhuǎn)子的固有磁場發(fā)生作用,轉(zhuǎn)子就會轉(zhuǎn)動,正確地S1、S4的送電次序,就能控制轉(zhuǎn)子旋轉(zhuǎn)的方向。謝謝閱讀_例如:若送電的順序為S1閉合 斷開 S2閉合 斷開 S3閉合謝謝閱讀斷開 S4閉合 斷開,周而復始的循環(huán),在定子和轉(zhuǎn)子共同作用下,感謝閱讀電機就瞬時針旋轉(zhuǎn):若送電的順序為S4閉合 斷開 S3閉合 斷開 S2閉合謝謝閱讀斷開 S1閉合 斷開,周而復始的循環(huán),則電機就逆時針旋轉(zhuǎn),原理同理。感謝閱讀3.3.2電機驅(qū)動ULN2003A簡介ULN2003是高耐壓、大電流達林頓陳列,由七個硅NPN達林頓管組成。ULN2003是高壓大電流達林頓晶體管陣列系列產(chǎn)品,具有電流增益高、工作電壓高、溫度范圍寬、帶負載能力強等特點,適應于各類要求高速大功率驅(qū)動的系統(tǒng)。ULN2003A管腳如圖3-8所示。精品文檔放心下載圖3-8ULN2003A管腳圖ULN2003的每一對達林頓都串聯(lián)一個2.7K的基極電阻,在5V的工作電壓下它能與TTL和CMOS電路直接相連,可以直接處理原先需要標準邏輯緩沖器來處理的數(shù)據(jù)。ULN2003工作電壓高,工作電流大,灌電流可達500mA,并且能夠在關(guān)態(tài)時承受50V的電壓,輸出還可以在高負載電流并行運行。感謝閱讀ULN2003內(nèi)部還集成了一個消線圈反電動勢的二極管,可用來驅(qū)動繼電器。它是雙列16腳封裝,NPN晶體管矩陣,最大驅(qū)動電壓=50V,電流=500mA,輸入電壓=5V,適用于TTLCOMS,由達林頓管組成驅(qū)動電路。ULN是集成達林頓管IC,內(nèi)部還集成了一個消線圈反電動勢的二極管,它的輸出端允許精品文檔放心下載通過電流為200mA,飽和壓降VCE約1V左右,耐壓BVCEO約為36V。精品文檔放心下載_用戶輸出口的外接負載可根據(jù)以上參數(shù)估算。采用集電極開路輸出,輸出電流大,故可直接驅(qū)動繼電器或固體繼電器,也可直接驅(qū)動低壓燈泡。通常單片機驅(qū)動ULN2003時,上拉2K的電阻較為合適,同時,COM引腳應該懸空或接電源。ULN2003是一個非門電路,包含7個單元,單獨每個單元驅(qū)動電流最大可達350mA,9腳可以懸空。感謝閱讀由于ULN2003有這些特點,所以經(jīng)常作為顯示驅(qū)動、繼電器驅(qū)動、照明燈驅(qū)動、電磁閥驅(qū)動、伺服電機、步進電機驅(qū)動等電路中。精品文檔放心下載ULN2003A內(nèi)部結(jié)構(gòu)如圖3-9所示。圖3-9ULN2003A內(nèi)部結(jié)構(gòu)圖圖3-10電機模塊原理圖3.4顯示模塊數(shù)碼管是數(shù)碼顯示器的俗稱。常用的數(shù)碼顯示器有半導體數(shù)碼管,熒光數(shù)碼謝謝閱讀管,輝光數(shù)碼管和液晶顯示器等。譯碼和數(shù)碼顯示電路是將數(shù)字鐘和計時狀態(tài)直精品文檔放心下載觀清晰的反映出來,被人們的視覺器官所接受。顯示器件采用七段數(shù)碼管。在譯謝謝閱讀碼顯示電路輸出的驅(qū)動下,顯示出直觀、清晰的數(shù)字符號。本設(shè)計所采用的是半謝謝閱讀_導體數(shù)碼管,是用發(fā)光二極管(簡稱LED)組成的字形來顯示數(shù)字,七個條形發(fā)光二極管排列成七段組合字形,便構(gòu)成了半導體數(shù)碼管。半導體數(shù)碼管有共陽極和共陰極兩種類型,共陽極數(shù)碼管的七個發(fā)光二極管的陽極連在一起,而七個陰極則是獨立的。共陰極數(shù)碼管與共陽極數(shù)碼管相反,七個發(fā)光二極管的陰極連在一起,而陽極是獨立的。謝謝閱讀當共陽極數(shù)碼管的某一陰極接低電平時,相應的二極管發(fā)光,可根據(jù)字形使某幾段二極管發(fā)光,所以共陽極數(shù)碼管需要輸出低電平有效的譯碼器去驅(qū)動。共陰極數(shù)碼管則需要輸出高電平有效的譯碼器去驅(qū)動。七段顯示數(shù)碼管的外部引線排列如圖3-11,共陽極數(shù)碼管結(jié)構(gòu)示意圖如圖3-12所示。感謝閱讀圖3-11數(shù)碼管外引線排列圖3-12共陽極數(shù)碼管結(jié)構(gòu)示意圖在多位LED顯示時,為了節(jié)省I/O口線,簡化電路,降低成本,一般采用動態(tài)顯示方式。動態(tài)顯示方式是一位一位地分時輪流各位顯示器,對每一位顯示器來說,每隔一段時間輪流點亮一次,形成動態(tài)顯示。感謝閱讀_圖3.13顯示模塊原理圖4系統(tǒng)軟件部分4.1整體流程圖及主程序系統(tǒng)的整體軟件流程圖如圖4-1所示_是電機停止運行主程序如下:voidmain()

開始按下某一數(shù)字鍵數(shù)碼管顯示轉(zhuǎn)動次數(shù)和轉(zhuǎn)動角度按下開始鍵電機按數(shù)碼管顯示的數(shù)字開始運行停止鍵是否被按下否電機完成指定運行次數(shù)后停止否清零鍵是否被按下是數(shù)碼管清零圖4-1系統(tǒng)流程圖//主函數(shù)_{TMOD=0x01; //T0工作方式1TH0=0xd8; //設(shè)初值,0.01秒觸發(fā)一次謝謝閱讀TL0=0xf0;TR0=0; //關(guān)閉T0定時器ET0=1; //允許T0定時器中斷EA=1; //開啟總中斷允許P2=0x03;while(1){scan();show();if(num1==0) //若電機運行次數(shù)已達到設(shè)定值,則關(guān)精品文檔放心下載時器{ //并將狀態(tài)位置0TR0=0;status=0;}}}4.2按鍵流程圖及程序按鍵流程圖如圖4-2所示_開始某一數(shù)字鍵被按下,則寄存器被賦予相應值開始鍵被按下,寄存器將值傳給電機模塊,電機開始轉(zhuǎn)動停止鍵被按下,則寄存器被清零,電機停止轉(zhuǎn)動結(jié)束圖4-2按鍵模塊流程圖按鍵模塊程序如下:voidscan() //按鍵掃描{if(START==0&&status==0) //開始鍵:只有當電機不運行時謝謝閱讀才有效,且將狀態(tài)位置1;{ //并開啟定時器(電機重新開始轉(zhuǎn)動)。delay(10);if(START==0&&status==0){status=1;TR0=1; //開定時器0_num1=num;}}if(SET==0&&status==1) //停止鍵:只有當電機運行是有效,精品文檔放心下載將狀態(tài)位置0;{ //并關(guān)閉定時器(電機停止轉(zhuǎn)動)。delay(10);if(SET==0&&status==1){status=0;TR0=0; //關(guān)定時器0}}if(CLR==0&&status==0) //清零鍵:只有當電機不運行時,清感謝閱讀零鍵才有效{delay(10);if(CLR==0&&status==0){P1=0;P0=0xff;sh=0;}}if(k1==0&&status==0) //數(shù)字鍵1:設(shè)置為3045。只有當電感謝閱讀機不運行時,數(shù)字鍵才有效_{delay(10);if(k1==0&&status==0){num=3;num1=3;bai=0;shi=4;ge=5;sh=1;key=1;}}if(k2==0&&status==0) //數(shù)字鍵2:設(shè)置為4090感謝閱讀{delay(10);if(k2==0&&status==0){num=4;num1=4;bai=0;shi=9;ge=0;sh=1;key=2;}}_if(k3==0&&status==0) //數(shù)字鍵3:設(shè)置為5090謝謝閱讀{delay(10);if(k3==0&&status==0){num=5;num1=5;bai=0;shi=9;ge=0;sh=1;key=2;}}if(k4==0&&status==0) //數(shù)字鍵4:設(shè)置為6045謝謝閱讀{delay(10);if(k4==0&&status==0){num=6;num1=6;bai=0;shi=4;ge=5;sh=1;key=1;}}_if(k5==0&&status==0) //數(shù)字鍵5:設(shè)置為7090謝謝閱讀{delay(10);if(k5==0&&status==0){num=7;num1=7;bai=0;shi=9;ge=0;sh=1;key=2;}}}4.3顯示模塊程序由于使用的是4為數(shù)碼管,每一位需要顯示不同的數(shù)字,故讓各位數(shù)碼管按精品文檔放心下載照一定的順序輪流顯示,只要掃描頻率足夠高,由于人眼的“視覺暫留”現(xiàn)象,感謝閱讀就能連續(xù)穩(wěn)定的顯示。程序如下:voidshow() //數(shù)碼管顯示{if(sh==1){P1=0x01; //顯示第一位P0=smg[num];P0=0xff;_P1=0x02; //顯示第二位P0=smg[bai];P0=0xff;P1=0x04; //顯示第三位P0=smg[shi];P0=0xff;P1=0x08; //顯示第四位P0=smg[ge];P0=0xff;}}4.4電動機模塊流程圖及程序要是步進電機模塊按一定方向轉(zhuǎn)動,需要輪流給P2.0~P2.3口脈沖,故采精品文檔放心下載用移位的方法實現(xiàn),流程圖如圖4-3所示(。X初始值為0x01,Y初始值為0x02)謝謝閱讀_45度奇判斷此次轉(zhuǎn)動是為奇或偶X左移一位

開始判斷所需角度為45度還是90度偶Y左移一位X、Y進行或運算并將值送到P2口運行次數(shù)寄存器減一運行次數(shù)寄存器是否為0是停止電機結(jié)束

90度X、Y均左移一位否圖4-3電機模塊流程圖電機模塊程序如下:_voidmotor() //電機運行{if(key==1) //每次轉(zhuǎn)動角度為45度時感謝閱讀{if(c%2==0){x=_crol_(x,1);x=x|_crol_(x,4);}else{y=_crol_(y,1);y=y|_crol_(y,4);}c=c+1;P2=x|y;}if(key==2) //每次轉(zhuǎn)動角度為90度時精品文檔放心下載{x=_crol_(x,1);x=x|_crol_(x,4);y=_crol_(y,1);y=y|_crol_(y,4);P2=x|y;}}4.5中斷程序每次設(shè)計采用定時器來完成步進電機的轉(zhuǎn)動速度,每次中斷便是計數(shù)存儲器加一,當計數(shù)存儲器達到設(shè)定值時便使電機轉(zhuǎn)動一次。謝謝閱讀_中斷程序如下:voidtime0(void)interrupt1 //中斷處理程序謝謝閱讀{TR0=0;TH0=0xd8;TL0=0xf0;clk++;if(clk==100) //每一秒電機運轉(zhuǎn)一次{clk=0;num1--;motor(); //調(diào)用電機運行程序}TR0=1;}_5仿真運行(1)按下數(shù)字鍵后數(shù)碼管顯示數(shù)字圖5-1數(shù)碼管顯示(2)按下開始鍵后,電機開始運行圖5-2電機運行圖(3)按下停止鍵后,電機停止運行(4)按下清零鍵后,數(shù)碼管被清零。_圖5-3電機停止運轉(zhuǎn)6心得體會在我們的大三即將結(jié)束的時候,我進行了《步進電機微型計算機角度控制系精品文檔放心下載統(tǒng)的設(shè)計》??傮w來說,本次訓練主要是針對《計算機控制技術(shù)》所學理論知識感謝閱讀的檢測以及對protues軟件的學習和使用。隨著不斷深入的學習,我感受到了這個軟件的強大。以前我們學習《計算機謝謝閱讀控制技術(shù)》,需要絞盡腦汁的計算分析各電路。而使用這種方法,不但計算量大、感謝閱讀分析不太準確、結(jié)果準確性差、費時費力,通過學習protues,并通過使用protues,感謝閱讀非常方便準確的得到了仿真電路的正確連線方法以及最優(yōu)化電路。分析起來又快感謝閱讀又準確。大大促進了我們的學習效率。這次課程設(shè)計不僅鍛煉了我們的自學能力以及我自己的耐力。而且我也深切感謝閱讀的感受到了計算機控制技術(shù)在日常生活中的廣泛應用,作為工科生我們更要加強精品文檔放心下載理論聯(lián)系實際,為以后成為一名技術(shù)人才奠定堅實的理論實踐基礎(chǔ)。感謝閱讀_參考文獻郭天祥.新概念51單片機C語言教程.北京:電子工業(yè)出版社,2009精品文檔放心下載周潤景.基于PROTEUS的電路及單片機系統(tǒng)設(shè)計與仿真.北京:北京航空航天出版社,2006謝謝閱讀陳伯石.電力拖動自動控制系統(tǒng).北京:機械工業(yè)出版社,2003.謝謝閱讀李光飛.單片機課程設(shè)計實例指導.北京:北京航空航天出版社,2004精品文檔放心下載陳光東.單片微型計算機原理與接口技術(shù)(第二版).武漢:華中科技大學出版社,1999精品文檔放心下載_附錄一:Protues硬件仿真圖_附錄二:系統(tǒng)程序#include"reg51.h"#include"intrins.h"sbitk1=P3^0;sbitk2=P3^1;sbitk3=P3^2;sbitk4=P3^3;sbitk5=P3^4;sbitSTART=P3^5;sbitSET=P3^6;sbitCLR=P3^7;intsmg[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};intstatus=0,sh=0;謝謝閱讀intnum,bai,shi,ge,num1,key=0;精品文檔放心下載intclk=0;intc=0,x=0x1,y=0x2;voiddelay(inta);voidscan();voidshow();voidmotor();voiddelay(inta) //延時程序{inti,j;for(i=a;i>0;i--)for(j=1000;j>0;j--);_}voidscan() //按鍵掃描{if(START==0&&status==0) //開始鍵:只有當電機不運行時謝謝閱讀才有效,且將狀態(tài)位置1;{ //并開啟定時器(電機重新開始轉(zhuǎn)動)。delay(10);if(START==0&&status==0){status=1;TR0=1; //開定時器0num1=num;}}if(SET==0&&status==1) //停止鍵:只有當電機運行是有效,精品文檔放心下載將狀態(tài)位置0;{ //并關(guān)閉定時器(電機停止轉(zhuǎn)動)。delay(10);if(SET==0&&status==1){status=0;TR0=0; //關(guān)定時器0}}if(CLR==0&&status==0) //清零鍵:只有當電機不運行時,清精品文檔放心下

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論