版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p> 匯編及接口技術(shù)課程設(shè)計(jì)</p><p> 題目:步進(jìn)電機(jī)控制系統(tǒng)</p><p> 班 級(jí): </p><p> 學(xué) 號(hào): </p><p> 姓 名: </p><p> 時(shí) 間: 200
2、9年12月 </p><p><b> 目 錄</b></p><p> 設(shè)計(jì)任務(wù)與要求 -3-</p><p> 設(shè)計(jì)方案(包括設(shè)計(jì)思路、使用到哪些芯片、各個(gè)芯片的作用) -------------------------------------------------3&l
3、t;/p><p> 硬件線路設(shè)計(jì)(包括線路圖及連線說明)----------4</p><p> 軟件設(shè)計(jì)(包括程序流程圖)-------------------------4</p><p> 源程序(要有注釋)-------------------------------------5</p><p> 調(diào)試過程(包括實(shí)驗(yàn)過程中的硬件
4、連線,實(shí)驗(yàn)步驟、出現(xiàn)的問題、解決的方法、使用的實(shí)驗(yàn)數(shù)據(jù)等)-----8</p><p> 總結(jié)(在整個(gè)設(shè)計(jì)過程中的心得和體會(huì),150字左右) ----------------------------------------------------8</p><p> 課程設(shè)計(jì)題目:步進(jìn)電機(jī)控制系統(tǒng)</p><p><b> 一.設(shè)計(jì)任務(wù)與
5、要求</b></p><p><b> ?。ㄒ唬┰O(shè)計(jì)目的</b></p><p> 了解步進(jìn)電機(jī)控制的基本原理,掌握控制步進(jìn)電機(jī)轉(zhuǎn)動(dòng)的編程方法。</p><p> 進(jìn)一步熟練8255的使用。</p><p><b> ?。ǘ┰O(shè)計(jì)內(nèi)容</b></p><p>
6、 編程控制步進(jìn)電機(jī),使其能夠正常運(yùn)轉(zhuǎn),要求:</p><p> 開關(guān)K8控制電機(jī)的啟動(dòng)與停止:當(dāng)K8向上撥時(shí),電機(jī)啟動(dòng),否則電機(jī)停止;</p><p> 開關(guān)K1~7控制電機(jī)的轉(zhuǎn)速:K1向上撥時(shí),得到最低轉(zhuǎn)速,…… K7向上撥時(shí),得到最高轉(zhuǎn)速。</p><p> 每個(gè)開關(guān)對(duì)應(yīng)一個(gè)發(fā)光二極管,要求開關(guān)向上撥時(shí),對(duì)應(yīng)的發(fā)光二極管亮。</p><
7、;p><b> 二.設(shè)計(jì)方案</b></p><p><b> ?。ㄒ唬┎竭M(jìn)電機(jī)原理</b></p><p> 步進(jìn)電機(jī)驅(qū)動(dòng)原理是通過對(duì)每相線圈中的電流的順序切換(實(shí)驗(yàn)中的步進(jìn)電機(jī)有四相線圈,每次有二相線圈有電流,有電流的相順序變化),來使電機(jī)作步進(jìn)式旋轉(zhuǎn)。驅(qū)動(dòng)電路由脈沖信號(hào)來控制,所以調(diào)節(jié)脈沖信號(hào)的頻率便可改變步進(jìn)電機(jī)的轉(zhuǎn)速。&l
8、t;/p><p> 本實(shí)驗(yàn)使用的步進(jìn)電機(jī)線圈由四相組成,驅(qū)動(dòng)方式為二相激磁方式,如圖3.1所示。</p><p> 圖3.1 步進(jìn)電機(jī)原理圖</p><p> 如表3.1所示,首先使HA線圈和HB線圈有驅(qū)動(dòng)電流,接著使HB和HC、HC和HD、HD和HA,又返回到HA和HB有驅(qū)動(dòng)電流,按這種順序切換,電機(jī)軸按順時(shí)針方向旋轉(zhuǎn)。</p><p
9、> 表3.1 步進(jìn)電機(jī)激磁方式</p><p> 注:當(dāng)實(shí)驗(yàn)結(jié)束要立即關(guān)閉電源,否則一直停留在某一相上會(huì)使電機(jī)發(fā)</p><p> ?。ǘ┧眯酒白饔?lt;/p><p> 此系統(tǒng)主要用到的芯片為8255, 8255方式0是基本輸入/輸出方式,A、B、C三個(gè)口中任何一個(gè)口都可提供簡(jiǎn)單的輸入和輸出操作,不需要應(yīng)答聯(lián)絡(luò)信號(hào),即可用于無條件傳送的場(chǎng)合,
10、也可以用作查詢方式傳送。當(dāng)采用查詢方式傳送時(shí),原則上可用A、B和C三個(gè)口的任一位充當(dāng)查詢信號(hào),但通常都是選用C口充當(dāng)查詢信號(hào),這和C口的編程有關(guān)。通常把C口的4位(高4位或低4位)規(guī)定為輸出口,用以輸出一些控制信號(hào),把C口的另4位規(guī)定為輸人口,用以輸入外設(shè)的狀態(tài)。</p><p> 方式1是一種選通輸人偷出方式,A口和B口均可工作在這種方式。方式1可作為查詢式傳送方式,此時(shí)握手聯(lián)絡(luò)信號(hào),C口要用6位(分成兩個(gè)3
11、位)分別作為A口和B口的應(yīng)答聯(lián)絡(luò)信號(hào)。方式1也可用作中斷方式,此時(shí)要寫對(duì)應(yīng)的C口的按位置位字,打開中斷。</p><p> 方式2是A口獨(dú)有的雙向傳送方式,一般使用中斷傳送方式。 </p><p><b> 三.硬件設(shè)計(jì)線路</b></p><p><b> 實(shí)驗(yàn)連線</b></p><p>
12、 8255模塊的WR、RD連到ISA總線接口模塊的IOWR、IORD,8255選通信號(hào)CE連到ISA總線接口模塊的IOY0。</p><p> 8255模塊的數(shù)據(jù)線AD7~AD0、地址線A7~A0分別連到ISA總線接口模塊的LAD0~LAD7,LA0~LA7。</p><p> 步進(jìn)電機(jī)的HA—PAO,HB—PA1,HC—PA2,HD—PA3。</p><p>
13、; 8255模塊的PA0~PA7與開關(guān)K1~K8相連,PB0~PB7與燈相連。</p><p> 2.運(yùn)行程序,觀察電機(jī)的運(yùn)轉(zhuǎn)。</p><p><b> 四. 軟件設(shè)計(jì)</b></p><p> 該驅(qū)動(dòng)器根據(jù)撥碼開關(guān)KX、KY的不同組合有三種工作方式供選擇:</p><p> 方式1為中斷方式:P3.5(I
14、NT1)為步進(jìn)脈沖輸入端,P3.7為正反轉(zhuǎn)脈沖輸入端。上位機(jī)(PC機(jī)或單片機(jī))與驅(qū)動(dòng)器僅以2條線相連。</p><p> 方式2為串行通訊方式:上位機(jī)(PC機(jī)或單片機(jī))將控制命令發(fā)送給驅(qū)動(dòng)器,驅(qū)動(dòng)器根據(jù)控制命令自行完成有關(guān)控制過程。</p><p> 方式3為撥碼開關(guān)控制方式:通過K1~K5的不同組合,直接控制步進(jìn)電機(jī)。</p><p> 當(dāng)上電或按下復(fù)位鍵K
15、R后,AT89C2051先檢測(cè)撥碼開關(guān)KX、KY的狀態(tài),根據(jù)KX、KY 的不同組合,進(jìn)入不同的工作方式。以下給出方式1的程序流程框圖與源程序。</p><p> 在程序的編制中,要特別注意步進(jìn)電機(jī)在換向時(shí)的處理。為使步進(jìn)電機(jī)在換向時(shí)能平滑過渡,不至于產(chǎn)生錯(cuò)步,應(yīng)在每一步中設(shè)置標(biāo)志位。其中20H單元的各位為步進(jìn)電機(jī)正轉(zhuǎn)標(biāo)志位;21H單元各位為反轉(zhuǎn)標(biāo)志位。在正轉(zhuǎn)時(shí),不僅給正轉(zhuǎn)標(biāo)志位賦值,也同時(shí)給反轉(zhuǎn)標(biāo)志位賦值;在反
16、轉(zhuǎn)時(shí)也如此。這樣,當(dāng)步進(jìn)電機(jī)換向時(shí),就可以上一次的位置作為起點(diǎn)反向運(yùn)動(dòng),避免了電機(jī)換向時(shí)產(chǎn)生錯(cuò)步。</p><p> 五.步進(jìn)電機(jī)控制源代碼</p><p><b> 程序源代碼</b></p><p> MY_DATA SEGMENT</p><p> A8255DW0C400H</p>
17、<p> B8255DW0C401H</p><p> C8255DW0C402H</p><p> D8255DW0C403H </p><p> SHUNDB03H,06H,09H,0CH;順時(shí)針旋轉(zhuǎn)</p><p> SGTB DB0F9H,0A4H,0B0H,099H,9
18、2H,82H</p><p> DCODEDB?</p><p> MY_DATA ENDs</p><p> MY_CODE SEGMENT </p><p> MY_PROCPROCFAR</p><p> ASSUME CS:MY_CODE,DS:MY_DATA</p>
19、;<p> START:MOVAX,MY_DATA</p><p> MOVDS,AX </p><p> MOVDX,D8255</p><p> MOVAL,90H</p><p> OUTDX,AL</p><p> MOVBL,33H</p&
20、gt;<p> NEW:MOV DX,A8255</p><p> IN AL,DX</p><p> TESTAL,80H;開關(guān)的啟停</p><p><b> JNZNEXT</b></p><p> MOVDX,C8255</p><p>
21、 MOVAL,00H</p><p> OUTDX,AL</p><p><b> JMPNEW</b></p><p> NEXT:NOP</p><p> MOVDX,C8255</p><p> AGAIN1:MOVAL,BL</p>&l
22、t;p> OUTDX,AL</p><p> CALLDELAY</p><p> MOV DX,A8255</p><p> IN AL,DX</p><p> TESTAL,40H;測(cè)試正反開關(guān)</p><p><b> JNZFAN</b></
23、p><p><b> ROLBL,1</b></p><p><b> JMPNEW</b></p><p> FAN: ROR BL,1</p><p> JMP NEW</p><p> EXIT:MOVAX,
24、4C00H</p><p> INT21H</p><p> MY_PROCENDP</p><p> DELAY PROC NEAR;延時(shí)程序</p><p><b> PUSHCX</b></p><p><b> PUSH SI</b
25、></p><p> MOV DX,A8255</p><p> IN AL,DX</p><p> TESTAL,01H</p><p> JNZ S2</p><p> TESTAL,02H</p><p> JNZ S3
26、</p><p> TESTAL,04H</p><p> JNZ S4</p><p> TESTAL,08H</p><p> JNZ S5</p><p> TESTAL,10H</p><p> JNZ S6<
27、/p><p> TESTAL,20H</p><p> JNZ S7</p><p> S1:MOV SI,200H</p><p> MOV DX,B8255</p><p> OUTDX,AL </p><p> JMP
28、 D1</p><p> S2:MOV DX,B8255</p><p> MOVAL,0F9H</p><p> OUTDX,AL</p><p> MOV SI,300H</p><p> JMP D1</p><p> S
29、3:MOV DX,B8255</p><p> MOVAL,0A4H</p><p> OUTDX,AL</p><p> MOV SI,500H</p><p> JMP D1</p><p> S4:MOV DX,B8255</p>
30、<p> MOVAL,0B0H</p><p> OUTDX,AL</p><p> MOV SI,700H</p><p> JMP D1</p><p> S5:MOV DX,B8255</p><p> MOVAL,099H</p&g
31、t;<p> OUTDX,AL</p><p> MOV SI,900H</p><p> JMP D1</p><p> S6:MOV DX,B8255</p><p> MOVAL,92H</p><p> OUTDX,AL</p&g
32、t;<p> MOV SI,1100H</p><p> JMP D1</p><p> S7:MOV DX,B8255</p><p> MOVAL,82H</p><p> OUTDX,AL</p><p> MOV SI,1300H<
33、/p><p> D1: MOV CX,-1</p><p> D2: LOOPD2</p><p><b> DECSI</b></p><p><b> JNZD1</b></p><p><b> POP SI</b
34、></p><p><b> POPCX</b></p><p><b> RET</b></p><p> DELAY ENDp</p><p> MY_CODE ENDS</p><p><b> END START</b
35、></p><p><b> 六.調(diào)試過程</b></p><p> 1.根據(jù)連線說明連接線路,并將機(jī)箱與計(jì)算機(jī)連接。</p><p><b> 2.獲取端口地址</b></p><p> 控制面板 ——系統(tǒng)——硬件 —— 設(shè)備管理器 —— QTH-2008PCI試驗(yàn)儀 —— 雙擊Q
36、TH-2008PCI-C—— 資源—— 輸入/輸出范圍 第二組地址</p><p> 3. 打開QTH—20008PCI連機(jī)軟件,輸入程序源代碼,進(jìn)行編譯、編譯連接、調(diào)試。</p><p> 4.測(cè)試步進(jìn)電機(jī)是否可以正常運(yùn)轉(zhuǎn),若不能檢查機(jī)箱連線是否正確,直到電機(jī)可以正常運(yùn)轉(zhuǎn)。</p><p> 5.運(yùn)行源代碼進(jìn)行調(diào)試,當(dāng)K8撥上時(shí)觀察電機(jī)是否運(yùn)轉(zhuǎn),若不能檢查并
37、修改源程序。</p><p> 6.當(dāng)電機(jī)可以運(yùn)轉(zhuǎn)時(shí),在源代碼中添加當(dāng)輸入不同時(shí)電機(jī)的運(yùn)轉(zhuǎn)速度不同的代碼段,并進(jìn)行調(diào)試。觀察電機(jī)的速度是否變化,若不明顯將延時(shí)時(shí)間增長(zhǎng),再觀察。</p><p><b> 七.總結(jié)</b></p><p> 通過這門課程的學(xué)習(xí)我們對(duì)生活中的好多簡(jiǎn)單的電子產(chǎn)品的工作原理有了進(jìn)一步的了解,微型計(jì)算機(jī)技術(shù)是學(xué)習(xí)微
38、電子技術(shù)不可或缺的課程。</p><p> 在此次課程設(shè)計(jì)中,通過對(duì)所學(xué)知識(shí)的綜合運(yùn)用來實(shí)現(xiàn)步進(jìn)電機(jī)的控制原理,主要用到了匯編語(yǔ)言的尋址方式和指令系統(tǒng),通匯編語(yǔ)言來編寫程序源代碼來實(shí)現(xiàn)步進(jìn)電機(jī)的加速。用到的硬件主要是可編程的并行通信接口8255,通過8255的控制字及工作方式里實(shí)現(xiàn)輸入輸出,熟悉并掌握了所學(xué)知識(shí),將所學(xué)的知識(shí)系統(tǒng)化并且學(xué)會(huì)了這些知識(shí)在實(shí)踐中的應(yīng)用。通過此次設(shè)計(jì)我感觸頗深,我們只有將所學(xué)的理論知識(shí)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 步進(jìn)電機(jī)課程設(shè)計(jì)--步進(jìn)電機(jī)控制系統(tǒng)
- 步進(jìn)電機(jī)課程設(shè)計(jì)報(bào)告---步進(jìn)電機(jī)控制系統(tǒng)
- 步進(jìn)電機(jī)課程設(shè)計(jì)---步進(jìn)電機(jī)控制系統(tǒng)的設(shè)計(jì)
- 步進(jìn)電機(jī)課程設(shè)計(jì)報(bào)告--步進(jìn)電機(jī)控制系統(tǒng)設(shè)計(jì)
- 步進(jìn)電機(jī)控制系統(tǒng)課程設(shè)計(jì)
- 步進(jìn)電機(jī)專業(yè)課程設(shè)計(jì)--步進(jìn)電機(jī)控制系統(tǒng)設(shè)計(jì)
- 課程設(shè)計(jì)-步進(jìn)電機(jī)控制步進(jìn)電機(jī)轉(zhuǎn)速實(shí)時(shí)控制
- 課程設(shè)計(jì)-- 微機(jī)步進(jìn)電機(jī)控制系統(tǒng)設(shè)計(jì)
- 步進(jìn)電機(jī)控制系統(tǒng)設(shè)計(jì)課程設(shè)計(jì)報(bào)告
- 微機(jī)原理課程設(shè)計(jì)--步進(jìn)電機(jī)控制系統(tǒng)
- 課程設(shè)計(jì)---步進(jìn)電機(jī)控制
- 單片機(jī)課程設(shè)計(jì)--步進(jìn)電機(jī)控制系統(tǒng)
- 課程設(shè)計(jì)----二相步進(jìn)電機(jī)控制系統(tǒng)的設(shè)計(jì)
- 步進(jìn)電機(jī)控制課程設(shè)計(jì)---基于intel 8086 cpu的步進(jìn)電機(jī)控制系統(tǒng)的設(shè)計(jì)與驗(yàn)證
- 步進(jìn)電機(jī)課程設(shè)計(jì)
- 課程設(shè)計(jì)步進(jìn)電機(jī)
- 微機(jī)控制技術(shù)課程設(shè)計(jì)---步進(jìn)電機(jī)控制系統(tǒng)設(shè)計(jì)
- 步進(jìn)電機(jī)控制系統(tǒng)設(shè)計(jì)
- 步進(jìn)電機(jī)控制系統(tǒng)
- 步進(jìn)電機(jī)控制a課程設(shè)計(jì)報(bào)告
評(píng)論
0/150
提交評(píng)論