freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于單片機(jī)控制的數(shù)控x-y工作臺(tái)系統(tǒng)設(shè)計(jì)插補(bǔ)設(shè)計(jì)-文庫(kù)吧在線文庫(kù)

  

【正文】 設(shè)計(jì)簡(jiǎn)介 2 XY數(shù)控工作臺(tái)總體方案分析 2 仿真開(kāi)發(fā)環(huán)境Proteus簡(jiǎn)介 2 程序開(kāi)發(fā)環(huán)境KeilμVision2簡(jiǎn)介 22 XY數(shù)控工作臺(tái)機(jī)械部件功能分析 4 步進(jìn)電動(dòng)機(jī)的工作原理 4 步進(jìn)電動(dòng)機(jī)的工作方式 43 XY數(shù)控工作臺(tái)硬件電路分析 6 控制系統(tǒng)微控制器AT89C52 6 AT89C52單片機(jī)的主要工作特性 6 AT89C52單片機(jī)的內(nèi)部結(jié)構(gòu) 6 AT89C52單片機(jī)的各引腳功能 15 可編程并行接口芯片8255A 16 8255A的內(nèi)部結(jié)構(gòu) 16 8255A的引腳功能 17 8255A的工作方式 18 8255A控制字 194 基于PROTEUS仿真電路分析 21 XY數(shù)控工作臺(tái)控制系統(tǒng)仿真電路圖 21 XY數(shù)控工作臺(tái)控制系統(tǒng)硬件資源及其分配 21 電路模塊圖分析 22 XY向步進(jìn)電機(jī)控制電路分析 22 四行四列矩陣式鍵盤(pán)控制電路分析 23 XY數(shù)控工作臺(tái)顯示電路分析 24 程序在仿真電路圖中實(shí)現(xiàn)的功能 255 XY數(shù)控工作臺(tái)總程序軟件設(shè)計(jì) 26 程序總流程分析 26 Main 函數(shù)功能解釋 26 逐點(diǎn)比較法的插補(bǔ)原理 27 逐點(diǎn)比較法插補(bǔ)的優(yōu)點(diǎn) 27 插補(bǔ)總流程分析 276 XY數(shù)控工作臺(tái)快速進(jìn)給軟件設(shè)計(jì) 28 快速進(jìn)給程序分析 287 XY數(shù)控工作臺(tái)直線插補(bǔ)軟件設(shè)計(jì) 30 逐點(diǎn)比較法的直線插補(bǔ)的數(shù)學(xué)原理 30 逐點(diǎn)比較法的直線查補(bǔ)的偏差判別機(jī)制 30 直線插補(bǔ)中的終點(diǎn)判別機(jī)制 31 直線插補(bǔ)計(jì)算過(guò)程 31 直線插補(bǔ)中的進(jìn)給判別機(jī)制 31 直線插補(bǔ)程序分析 328 XY數(shù)控工作臺(tái)圓弧插補(bǔ)軟件設(shè)計(jì) 34 逐點(diǎn)比較法的圓弧插補(bǔ)的數(shù)學(xué)原理 34 逐點(diǎn)比較法的圓弧查補(bǔ)的偏差判別機(jī)制 34 圓弧插補(bǔ)中的終點(diǎn)判別機(jī)制 35 圓弧插補(bǔ)計(jì)算過(guò)程 35 4個(gè)象限的圓弧插補(bǔ) 35 順圓插補(bǔ)程序分析 37 逆圓插補(bǔ)程序分析 399 XY數(shù)控工作臺(tái)代碼處理軟件設(shè)計(jì) 41 代碼處理程序分析 4110 XY數(shù)控工作臺(tái)象限判別軟件設(shè)計(jì) 43 象限判斷總程序分析 43 G0與G1情況象限判斷程序分析 43 G2情況象限判斷程序分析 45 G3情況象限判斷程序分析 4511 中斷程序設(shè)計(jì)方法 47 定時(shí)器中斷程序解釋 47 外部中斷程序解釋 47結(jié)論與展望 48參考文獻(xiàn) 49附錄A 總程序: 50附錄B 文獻(xiàn)翻譯原文 75附錄C 文獻(xiàn)翻譯譯文 83謝 辭 90前言本次畢業(yè)設(shè)計(jì)的選題為基于單片機(jī)控制的數(shù)控XY工作臺(tái)系統(tǒng)設(shè)計(jì)——插補(bǔ)部分。在系統(tǒng)程序設(shè)計(jì)上運(yùn)用逐點(diǎn)比較法使步進(jìn)電機(jī)實(shí)現(xiàn)單坐標(biāo)定位、兩坐標(biāo)直線插補(bǔ)和圓弧插補(bǔ)的基本功能;在此功能基礎(chǔ)上通過(guò)建立象限判別程序,使XY工作臺(tái)達(dá)到四象限的工作要求;并編寫(xiě)了代碼處理指令,使CPU能夠根據(jù)讀入的指令信息(G代碼與X軸和Y軸坐標(biāo)),分別向X軸和Y軸步進(jìn)電機(jī)輸出執(zhí)行指令所需的控制信號(hào),從而完成指定的工序。本設(shè)計(jì)用AT89C52組成專用單片機(jī)控制系統(tǒng),從鍵盤(pán)輸入G代碼后,能通過(guò)直線插補(bǔ)和圓弧插補(bǔ),完成平面輪廓加工。② 支持主流單片機(jī)系統(tǒng)的仿真。② 利用μVision2的文件編輯器編寫(xiě)C語(yǔ)言(或匯編語(yǔ)言)源程序文件,并將文件添加到項(xiàng)目中去。步進(jìn)電動(dòng)機(jī)控制線路接受微機(jī)發(fā)來(lái)的指令脈沖,控制步進(jìn)電動(dòng)機(jī)作相應(yīng)地轉(zhuǎn)動(dòng),從而是步進(jìn)電動(dòng)機(jī)驅(qū)動(dòng)數(shù)控系統(tǒng)的工作臺(tái)。而0、3號(hào)齒和A、B相繞組產(chǎn)生錯(cuò)齒,5號(hào)齒就和A、D相繞組磁極產(chǎn)生錯(cuò)齒。圖22 四相步進(jìn)電動(dòng)機(jī)三種工作方式下的工作波形圖3 XY數(shù)控工作臺(tái)硬件電路分析 控制系統(tǒng)微控制器AT89C52 AT89C52單片機(jī)的主要工作特性? 8031CPU(8051的內(nèi)核);? 8KB的快速擦寫(xiě)Flash存儲(chǔ)器,用于程序存儲(chǔ)器,可擦寫(xiě)次數(shù)為1000次;? 256字節(jié)的RAM,其中高128字節(jié)地址被特殊功能寄存器SFR占用;? 32跟可編程I/O端口:P0、PPP3;? 2個(gè)可編程16位定時(shí)器:P3口的第二功能;? 具有6個(gè)中斷源、5個(gè)中斷矢量、二級(jí)優(yōu)先權(quán)的中斷系統(tǒng);? 1個(gè)數(shù)據(jù)指針DPTR;? 1個(gè)可編程的全雙工串行通信:P3口的第二功能;? 具有“空閑”和“掉電”兩種低功耗工作方式;? 可編程的3級(jí)程序鎖定位;? 工作電源的電壓為(5177。程序狀態(tài)字PSW各位的狀態(tài)標(biāo)志定義如圖32和表31所示;圖31 AT89C52單片機(jī)原理結(jié)構(gòu)圖圖32 PSW各位的狀態(tài)標(biāo)志表31 PSW各位的定義狀態(tài)標(biāo)志定義含義CY高位進(jìn)位標(biāo)志若當(dāng)前執(zhí)行指令的運(yùn)算結(jié)果產(chǎn)生進(jìn)位或借位,該標(biāo)志被置成CY=1;否則CY=0。用來(lái)指示累加其中內(nèi)容的奇偶性,該位始終跟蹤指示累加器中1的個(gè)數(shù),則P=0;否則P=。虛線框內(nèi)左側(cè)為片內(nèi)自帶的數(shù)據(jù)存儲(chǔ)器RAM,此256字節(jié)單元(00H~FFH)的低128字節(jié)(00H~7FH)單元為用戶使用去,高128字節(jié)(80H~FFH)單元為特殊功能寄存器SFR區(qū)。AT89C52單片機(jī)的并行I/O接口有以下應(yīng)用特性:P0、PPP3作為通用I/O口使用時(shí),輸入操作是讀引腳狀態(tài);輸出操作是對(duì)口的鎖存器的寫(xiě)入操作,鎖存器的狀態(tài)立即反映到引腳上。I/O口的驅(qū)動(dòng)特性。TF0T/C0的溢出標(biāo)志,溢出時(shí)由硬件置1,進(jìn)入中斷后又由硬件自動(dòng)清0TR0T/C0的啟動(dòng)和停止位,由軟件控制。T0:定時(shí)器/計(jì)數(shù)器0中斷,由T0計(jì)滿回零引起。當(dāng)CPU檢測(cè)到INT0低電平或下降沿且IT0=1時(shí),由內(nèi)部硬件置位IE0標(biāo)志位(IE0=1),向CPU請(qǐng)求中斷,當(dāng)CPU響應(yīng)中斷并轉(zhuǎn)向該中斷服務(wù)程序執(zhí)行時(shí),由硬件內(nèi)部自動(dòng)將IE0清0。EX1外部中斷1控制位,EX1=1,允許中斷;EX1=0,禁止外部中斷1中斷。PT0T0中斷優(yōu)先級(jí)控制位。一般情況下,ALE 仍以時(shí)鐘振蕩頻率的1/6 輸出固定的脈沖信號(hào),因此它可對(duì)外輸出時(shí)鐘或用于定時(shí)目的。如端為高電平(接Vcc端),CPU 則執(zhí)行內(nèi)部程序存儲(chǔ)器中的指令。 8255A的內(nèi)部結(jié)構(gòu)8255A內(nèi)部由PA、PB、PC這3個(gè)8位可編程雙向I/O口,A組控制器和B組控制器,數(shù)據(jù)緩沖器及讀/寫(xiě)控制邏輯4部分電路組成,其結(jié)構(gòu)如圖36[5] 梁景凱,[M].北京:機(jī)械工業(yè)出版社,2006,第108頁(yè).所示。圖37 8255A引腳圖① 數(shù)據(jù)總線(8條):D0~D7,用于傳送CPU和8255A間的數(shù)據(jù)、命令和狀態(tài)字。若為低電平(必為高電平),則所選8255A處于讀狀態(tài);若為低電平(必為高電平),則所選8255A處于寫(xiě)狀態(tài)。方式0:基本輸入/輸出方式。PC口的低4位服務(wù)于B口,稱B組。~四行四列矩陣式鍵盤(pán)行掃描輸入輸出線~四行四列矩陣式鍵盤(pán)列掃描輸入輸出線8255A連接8255A片選端限位信號(hào)輸入口,低地平時(shí)請(qǐng)求外部中斷0可編程控制器8255A寫(xiě)選通信號(hào)端口可編程控制器8255A讀選通信號(hào)端口D0~D7連接AT89C52的P0口,負(fù)責(zé)數(shù)據(jù)的輸入與輸出PA口連接8位8端數(shù)碼管的段驅(qū)動(dòng)端口PB口連接8位8端數(shù)碼管的位選端口PC0~PC3向X向步進(jìn)電動(dòng)機(jī)輸入脈沖數(shù)和脈沖相序PC4~PC7向Y向步進(jìn)電動(dòng)機(jī)輸入脈沖數(shù)和脈沖相序 電路模塊圖分析 XY向步進(jìn)電機(jī)控制電路分析圖42 X/Y向步進(jìn)電機(jī)控制電路模擬圖圖42為X/Y向步進(jìn)電機(jī)控制電路模擬圖,從圖從我們可以看到仿真選用的是6線制的四相八拍步進(jìn)電機(jī),通過(guò)8255A的PC0~PC3口分別向X向步進(jìn)電機(jī)輸入脈沖信號(hào),PC4~PC7則分別向Y向步進(jìn)電機(jī)輸入脈沖信號(hào)。通過(guò)下面章節(jié)的設(shè)計(jì)分析,您將能看到我在程序上是如何完成代碼處理、直線插補(bǔ)和圓弧插補(bǔ)等軟件功能。常用的脈沖增量查補(bǔ)方法是逐點(diǎn)比較法。判斷終點(diǎn)坐標(biāo)是否在4象限,若成立,運(yùn)行X軸正向進(jìn)給程序,若不成立,運(yùn)行X軸反向進(jìn)給程序。點(diǎn)m(Xm,Ym)為加工點(diǎn)(動(dòng)點(diǎn)),若點(diǎn)m在直線段OA上,則有 Xm/Ym=Xe/Ye (71)即 Xm/Ym Xe/Ye=0 (72)現(xiàn)定義直線插補(bǔ)的偏差判別式為 Fm= Ym*Xe – Xe*Ye (73)若Fm=0,表明點(diǎn)m在OA直線段上;若Fm0表明點(diǎn)m在OA直線段的上方,即m’處;若Fm0,表明點(diǎn)m在OA直線段的下方,即m’’處??紤]到程序的簡(jiǎn)潔性,本次設(shè)計(jì)中選擇方法二。該表中4個(gè)象限的終點(diǎn)坐標(biāo)值絕對(duì)值代入計(jì)算式中的Xe和Ye。圖81 第一象限逆圓弧因此可得第一象限逆圓弧逐點(diǎn)比較插補(bǔ)的原理是:沖圓弧的起點(diǎn)出發(fā),當(dāng)Fm≥0時(shí),為了逼近圓弧,下一步向X方向進(jìn)給一步,并計(jì)算新的偏差;若Fm0,為了逼近圓弧,下一步向+Y方向給進(jìn)一步,并計(jì)算新的偏差。因此圓弧插補(bǔ)計(jì)算過(guò)程分為5個(gè)步驟即盤(pán)查判別、坐標(biāo)進(jìn)給、偏差計(jì)算、坐標(biāo)計(jì)算、終點(diǎn)判別。表81 圓弧插補(bǔ)計(jì)算公式和進(jìn)給方向偏差圓弧種類進(jìn)給方向偏差計(jì)算坐標(biāo)計(jì)算Fm≥0SRNR2YFm+1=Fm2Ym+1Xm+1=XmYm+1=Ym1SRNR4+YNRSR4XFm+1=Fm2Xm+1Xm+1=Xm1Ym+1=YmNRSR2+XFm0SRNR4+XFm+1=Fm+2Xm+1Xm+1=Xm+1Ym+1=YmSRNR2XNRSR2+YFm+1=Fm+2Ym+1Xm+1=XmYm+1=Ym+1NRSR4Y 順圓插補(bǔ)程序分析順圓插補(bǔ)程序流程圖見(jiàn)圖84。如果為象限一則運(yùn)行X軸正向進(jìn)給程序,進(jìn)行偏差判別運(yùn)算flag_3=flag_3+2*x_g2+1,改變坐標(biāo)值x_g2=x_g2+1。判斷偏差判別式結(jié)果flag_3是否不小于零,若flag_3大于等于零再對(duì)象限進(jìn)行判斷。如果為象限三則運(yùn)行Y軸反向進(jìn)給程序,進(jìn)行偏差判別運(yùn)算flag_3=flag_3+2*y_g2+1,改變坐標(biāo)值y_g2=y_g2+1。10 XY數(shù)控工作臺(tái)象限判別軟件設(shè)計(jì) 象限判斷總程序分析432開(kāi)始Flag_g=?G0與G1情況象限判斷程序G2情況象限判斷程序G3情況象限判斷程序END圖101 象限判斷總程序流程圖象限判斷總程序流程圖見(jiàn)圖101。首先檢測(cè)是否有鍵按下,若無(wú)鍵按下,程序結(jié)束,若有鍵按下則通過(guò)鍵盤(pán)掃描程序判斷按下為什么鍵,若按下為G鍵則flag_enter=3,代表若有數(shù)字鍵按下時(shí),直接在八位七段LED顯示板上的第三位顯示按下鍵值,并存入flag_g即指令類型存儲(chǔ)器中,若按下鍵為X則flag_enter=2,八位七段LED顯示板上的第一位顯示X,代表進(jìn)入X值輸入狀態(tài),若有數(shù)字鍵按下時(shí),當(dāng)前按下數(shù)字在八位七段LED顯示板上的第四位顯示,原八位七段LED顯示板上三、四位數(shù)字向左移一位,原第五位被舍棄,若有“—”鍵按下時(shí),八位七段LED顯示板上的第一位該為顯示“—”,表示此X值用于插補(bǔ)應(yīng)為負(fù)值。如果為象限四則運(yùn)行Y軸正向進(jìn)給程序,進(jìn)行偏差判別運(yùn)算flag_3=flag_32*y_g2+1,改變坐標(biāo)值y_g2=y_g21。在進(jìn)行完進(jìn)給,偏差判別,坐標(biāo)改變后進(jìn)行終點(diǎn)判別,計(jì)算flag_finish= flag_finish1后,判斷flag_finish是否等于零,如果不是,回到之前的判斷flag_3的程序,如果flag_finish=0,則順圓插補(bǔ)程序結(jié)束。如果為象限二則運(yùn)行X軸正向進(jìn)給程序,進(jìn)行偏差判別運(yùn)算flag_3=flag_32*x_g2+1,改變坐標(biāo)值x_g2=x_g21。設(shè)加工點(diǎn)線處于m(Xm,Ym)點(diǎn),若Fm≥0,則沿Y方向進(jìn)給一步,到(m+1)點(diǎn),新加工點(diǎn)坐標(biāo)將是(Xm,Ym1),可求出新的偏差為 Fm+1=Fm2Ym+1 (87) 若Fm0,則沿+X方向進(jìn)給一步至(m+1)點(diǎn),新加工點(diǎn)的坐標(biāo)將是(Xm+1,Ym),同樣可求出新的偏差為 Fm+1=Fm2Xm+1 (88)(2) 4個(gè)象限的圓弧插補(bǔ)式(84)、(86)、(87)、(88)給出了第一象限逆、順圓弧的插補(bǔ)計(jì)算公式,其他象限的圓弧插補(bǔ)可與第一象限的情況相比較而得出,因?yàn)槠渌笙薜乃袌A弧總是與第一象圖82 第一象順圓弧限中的逆圓弧或順圓弧互為對(duì)稱,如圖38所示。因?yàn)榧庸c(diǎn)是從圓弧的起點(diǎn)開(kāi)始,故起點(diǎn)的偏差F0=0。 YN Y Y YNNN開(kāi)始X= x_start_value,Y=y_start_valueflag_finish=x_finish_value+y_finish_valueFlag_xiangxian=1,4?X軸正向進(jìn)給程序flag_3= flag_3+x_finish_valueFlag_finish= Flag_finish1Flag_xiangxian=1,2?Y=Y+1Flag_finish= Flag_finish1Flag_finish=0?ENDX軸反向進(jìn)給程序Y軸正向進(jìn)給程序Y軸反向進(jìn)給程序Flag_3≥0圖73 直線插補(bǔ)流程圖
點(diǎn)擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計(jì)相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1