地稅局自動(dòng)蓋章系統(tǒng)設(shè)計(jì)
《地稅局自動(dòng)蓋章系統(tǒng)設(shè)計(jì)》由會(huì)員分享,可在線閱讀,更多相關(guān)《地稅局自動(dòng)蓋章系統(tǒng)設(shè)計(jì)(29頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、. 地稅局自動(dòng)蓋章系統(tǒng)設(shè)計(jì) 地稅局自動(dòng)蓋章系統(tǒng)是一種集自動(dòng)蓋章和頁(yè)碼打印于一體的辦公設(shè)備,它能夠自動(dòng)實(shí)現(xiàn)收費(fèi)票據(jù)的蓋章,收費(fèi)票據(jù)的頁(yè)碼打印功能。系統(tǒng)設(shè)計(jì)的主要任務(wù)圍繞步進(jìn)電機(jī)的控制展開。 步進(jìn)電機(jī)是一種將電脈沖轉(zhuǎn)化為角位移的執(zhí)行機(jī)構(gòu)。通俗一點(diǎn)講:當(dāng)步進(jìn)驅(qū)動(dòng)器接收到一個(gè)脈沖信號(hào),它就驅(qū)動(dòng)步進(jìn)電機(jī)按設(shè)定的方向轉(zhuǎn)動(dòng)一個(gè)固定的角度(即步進(jìn)角)。您可以通過控制脈沖個(gè)數(shù)來控制角位移量,從而達(dá)到準(zhǔn)確定位的目的;同時(shí)您還可以通過控制脈沖頻率來控制電機(jī)轉(zhuǎn)動(dòng)的速度和加速度,從而達(dá)到調(diào)速的目的。 隨著運(yùn)動(dòng)控制系統(tǒng)中數(shù)字化技術(shù)的發(fā)展與成熟,步進(jìn)電機(jī)在自動(dòng)化控制中得到廣泛的應(yīng)用。
2、 1 系統(tǒng)功能說明 地稅局自動(dòng)蓋章系統(tǒng)根據(jù)其使用的不同環(huán)境,具有以下的幾種功能,以滿足不同客戶的使用要求。 1.1票據(jù)進(jìn)/出倉(cāng)功能 該功能主要用于操作人員把票據(jù)送入或者取出打印設(shè)備,其工作原理與電腦的光驅(qū)設(shè)備的進(jìn)出倉(cāng)原理相同。首次按下“進(jìn)/出倉(cāng)”鍵,設(shè)備的票據(jù)倉(cāng)在步進(jìn)電機(jī)的驅(qū)動(dòng)下伸出來,以便操作人員放入票據(jù),再次按下“進(jìn)/出倉(cāng)”鍵,設(shè)備的票據(jù)倉(cāng)在步進(jìn)電機(jī)的驅(qū)動(dòng)下收回,準(zhǔn)備進(jìn)行下一步的操作。 1.2蓋章功能 當(dāng)操作人員放入票據(jù)以后,再按下“蓋章”鍵,設(shè)備在檢測(cè)到票據(jù)倉(cāng)有紙的情況下,進(jìn)行票據(jù)的自動(dòng)蓋章,同時(shí)蓋章指示燈亮,表明設(shè)備正在進(jìn)行蓋章操作
3、;當(dāng)把所有的票據(jù)頁(yè)蓋章完畢后,蓋章結(jié)束的指示燈亮,表明蓋章結(jié)束。 1.3打印頁(yè)碼功能 當(dāng)操作人員放入票據(jù)以后,再按下“打印頁(yè)碼”鍵,設(shè)備在檢測(cè)到票據(jù)倉(cāng)有紙的情況下,進(jìn)行票據(jù)的頁(yè)碼打印,同時(shí)頁(yè)碼打印指示燈亮,表明設(shè)備正在進(jìn)行票據(jù)的頁(yè)碼打印操作;當(dāng)把所有票據(jù)的頁(yè)碼完畢后,頁(yè)碼打印結(jié)束的指示燈亮,表明票據(jù)頁(yè)碼打印結(jié)束。 1.4取消功能 當(dāng)操作人員按下“取消”鍵,設(shè)備取消正在進(jìn)行的操作,并進(jìn)入復(fù)位后的等待狀態(tài)。 精品 . 1.5復(fù)位功能 當(dāng)操作人員按下“復(fù)位”鍵,設(shè)備進(jìn)行系統(tǒng)的復(fù)位操作。并隨后進(jìn)入等待狀態(tài)。 2 應(yīng)用系統(tǒng)設(shè)計(jì) 2.1應(yīng)用系統(tǒng)結(jié)構(gòu)設(shè)計(jì) 根據(jù)1.1節(jié)所述的地稅局
4、自動(dòng)蓋章系統(tǒng)的功能,該系統(tǒng)需要完成步進(jìn)電機(jī)的驅(qū)動(dòng),蓋章電磁鐵的擊打,打印電磁鐵的擊打,票據(jù)進(jìn)/出倉(cāng)的位置傳感器、紙張有/無的傳感器的信號(hào)檢測(cè),指示燈的驅(qū)動(dòng),票據(jù)翻頁(yè)的機(jī)械手步進(jìn)電機(jī)的驅(qū)動(dòng)等操作,系統(tǒng)的結(jié)構(gòu)框圖如圖1所示。 2.2設(shè)備及器件選型 精品 . 本設(shè)計(jì)采用Atmel公司的AT90S8535高性能低功耗的AVR單片機(jī)作為設(shè)備的核心控制器。根據(jù)圖8-1所設(shè)計(jì)的系統(tǒng)結(jié)構(gòu),選擇合適功能器件,以完成完整的系統(tǒng)控制電路設(shè)計(jì)??刂葡到y(tǒng)需要選擇穩(wěn)壓電源單元,步進(jìn)電機(jī)及電機(jī)驅(qū)動(dòng)器單元,功能鍵盤單元,位置傳感器單元和驅(qū)動(dòng)電磁擊打錘的固態(tài)繼電器單元。 2.2.1 穩(wěn)壓電源 1.穩(wěn)壓電源的分類
5、 常用的穩(wěn)壓電源有開關(guān)穩(wěn)壓電源、輸出電壓值固定的穩(wěn)壓電源和輸出電壓值可以調(diào)節(jié)的穩(wěn)壓電源。 開關(guān)穩(wěn)壓電源: 開關(guān)電源的特點(diǎn)如下:價(jià)格低、可靠性高;適用AC輸入電源;效率高、工作溫度低;軟啟動(dòng)電流、能有效降低AC輸入沖擊;有短路保護(hù)、過載保護(hù);體積小、重量輕;內(nèi)有EMI濾波器、紋波極小。 開關(guān)型穩(wěn)壓電源通常由輸入濾波電路、工頻整流電路、功率因數(shù)校正電路、直流變換器和輸出濾波器等部分組成,如圖2所示。 輸入濾波器的主要作用是衰減電網(wǎng)中的高頻諧波分量,同時(shí)也可防止開關(guān)電源產(chǎn)生的高頻諧波分量進(jìn)入電網(wǎng),影響其他用電設(shè)備,輸入濾波器通常采用LC低通濾波器,為了更大地衰減高次諧波分量,也
6、可以采用幾個(gè)單級(jí)濾波器組成的多級(jí)濾波器;工頻整流器的主要作用是將交流輸入電壓變換成直流電壓,該整流器通常采用單相或者三相橋式整流電路,為了使輸入電壓比較平穩(wěn),輸出端還必須加入濾波電容;功率因數(shù)校正電路的主要作用是:通過升高整流器輸出的直流電壓,迫使交流輸入電流與交流輸入電壓的波形及相位基本相同,從而使功率因數(shù)接近1,該電路通常采用直流升壓變換器;直流變換器的主要作用是將功率因數(shù)校正電路輸出的直流高壓變換成設(shè)備所需的電壓值,通常采用的變換器有單端變換器、推挽變換器和橋式變換器;輸出濾波器的主要作用是衰減直流變換器輸出電壓中的高頻分量,降低輸出電壓的紋波,從而滿足電子設(shè)備的要求,輸出濾波器也采用L
7、C濾波電路。 在簡(jiǎn)單了結(jié)了開關(guān)型穩(wěn)壓電源的基礎(chǔ)上,同時(shí)考慮了電源的性能、價(jià)格和系統(tǒng)本身對(duì)電源功率的要求等因素。本系統(tǒng)選擇了復(fù)旦大學(xué)科教實(shí)業(yè)有限公司的S-350-36(36V/5A)型開關(guān)型穩(wěn)壓電源。 精品 . 輸出電壓值固定的穩(wěn)壓電源: 輸出電壓值固定的穩(wěn)壓電源的結(jié)構(gòu)相對(duì)比較簡(jiǎn)單,通常使用輸出電壓固定的集成穩(wěn)壓器件來實(shí)現(xiàn),由于它只有輸入、輸出和公共引出端,故稱之為三端式穩(wěn)壓器。三端式穩(wěn)壓器的型號(hào)很多,本系統(tǒng)選用的三端式穩(wěn)壓器是具有正電壓輸出的78M05。具體的電路圖如圖3所示。 圖3 +5V穩(wěn)壓電源電路圖 輸出電壓值可以調(diào)節(jié)的穩(wěn)壓電源 輸出電壓值可以調(diào)節(jié)的穩(wěn)
8、壓電源通常使用三端可調(diào)式集成穩(wěn)壓器,以LM317為例,其電路結(jié)構(gòu)和常用的外接元件如圖4所示。 精品 . LM317的內(nèi)部有比較放大器、偏置電路(圖中未畫出)、恒流電路和帶隙基準(zhǔn)電壓VREF等,它的公共端改接到輸出端,器件本身無接地端。所以消耗的電流都從輸出端流出,內(nèi)部的基準(zhǔn)電壓(約1.2V)接至比較放大器的同相端和調(diào)整端之間。若接上外部的調(diào)整電阻R1、R2后,輸出電壓為: (1)。 LM317的VREF=1.2V,IADJ=50µA,由于調(diào)整端電流IADJ<<I1 ,故可以忽略,式8.1可以簡(jiǎn)化為:
9、 (2)。 2.2.2 步進(jìn)電機(jī)及驅(qū)動(dòng)器 1. 步進(jìn)電機(jī)的分類 步進(jìn)電機(jī)分通常兩種:反應(yīng)式步進(jìn)電機(jī),感應(yīng)子式步進(jìn)電機(jī)。 反應(yīng)式步進(jìn)電機(jī) 由于反應(yīng)式步進(jìn)電機(jī)工作原理比較簡(jiǎn)單。下面是三相反應(yīng)式步進(jìn)電機(jī)的工作原理。 電機(jī)轉(zhuǎn)子均勻分布著很多小齒,定子齒有三個(gè)勵(lì)磁繞阻,其幾何軸線依次分別與轉(zhuǎn)子齒軸線錯(cuò)開。0、1/3て、2/3て,(相鄰兩轉(zhuǎn)子齒軸線間的距離為齒距以て表示),即A與齒1相對(duì)齊,B與齒2向右錯(cuò)開1/3
10、て,C與齒3向右錯(cuò)開2/3て,A'與齒5相對(duì)齊,(A'就是A,齒5就是齒1)定轉(zhuǎn)子的展開圖如圖8-5所示。 圖5定轉(zhuǎn)子的展開圖 如A相通電,B,C相不通電時(shí),由于磁場(chǎng)作用,齒1與A對(duì)齊,(轉(zhuǎn)子不受任何力以下均同)。 如B相通電,A,C相不通電時(shí),齒2應(yīng)與B對(duì)齊,此時(shí)轉(zhuǎn)子向右移過1/3て,此時(shí)齒3與C偏移為1/3て,齒4與A偏移(て-1/3て)=2/3て。 如C相通電,A,B相不通電,齒3應(yīng)與C對(duì)齊,此時(shí)轉(zhuǎn)子又向右移過1/3て,此時(shí)齒4與A偏移為1/3て對(duì)齊。 如A相通電,B,C相不通電,齒4與A對(duì)
11、齊,轉(zhuǎn)子又向右移過1/3て。 這樣經(jīng)過A、B、C、A分別通電狀態(tài),齒4(即齒1前一齒)移到A相,電機(jī)轉(zhuǎn)子向右轉(zhuǎn)過一個(gè)齒距,如果不斷地按A,B,C,A 精品 . ……通電,電機(jī)就每步(每脈沖)1/3て,向右旋轉(zhuǎn)。如按A,C,B,A……通電,電機(jī)就反轉(zhuǎn)。 由此可見:電機(jī)的位置和速度由導(dǎo)電次數(shù)(脈沖數(shù))和頻率成一一對(duì)應(yīng)關(guān)系。而方向由導(dǎo)電順序決定。 感應(yīng)子式步進(jìn)電機(jī) 感應(yīng)子式步進(jìn)電機(jī)與傳統(tǒng)的反應(yīng)式步進(jìn)電機(jī)相比,結(jié)構(gòu)上轉(zhuǎn)子加有永磁體,以提供軟磁材料的工作點(diǎn),而定子激磁只需提供變化的磁場(chǎng)而不必提供磁材料工作
12、點(diǎn)的耗能,因此該電機(jī)效率高,電流小,發(fā)熱低。因永磁體的存在,該電機(jī)具有較強(qiáng)的反電勢(shì),其自身阻尼作用比較好,使其在運(yùn)轉(zhuǎn)過程中比較平穩(wěn)、噪音低、低頻振動(dòng)小。 感應(yīng)子式步進(jìn)電機(jī)某種程度上可以看作是低速同步電機(jī)。一個(gè)四相電機(jī)可以作四相運(yùn)行,也可以作二相運(yùn)行。(必須采用雙極電壓驅(qū)動(dòng)),而反應(yīng)式電機(jī)則不能如此。例如:四相,八相運(yùn)行(A-AB-B-BC-C-CD-D-DA-A)完全可以采用二相八拍運(yùn)行方式。不難發(fā)現(xiàn)其條件為C=,D=. 一個(gè)二相電機(jī)的內(nèi)部繞組與四相電機(jī)完全一致,小功率電機(jī)一般直接連接為二相,而功率大一點(diǎn)的電機(jī),為了方便使用,靈活
13、改變電機(jī)的動(dòng)態(tài)特點(diǎn),往往將其外部接線為八根引線(四相),這樣使用時(shí),既可以作四相電機(jī)使用,可以作為二相電機(jī)繞組串聯(lián)或并聯(lián)使用。 本系統(tǒng)選用的是三相反應(yīng)式步進(jìn)電機(jī)。 步進(jìn)電機(jī)驅(qū)動(dòng)器 步進(jìn)電機(jī)驅(qū)動(dòng)器是能夠?qū)崿F(xiàn)使用、控制步進(jìn)電機(jī)必須的環(huán)形脈沖,功率放大等功能組成的控制器。其結(jié)構(gòu)框圖如圖8-6所示。 其中各個(gè)接線端子的具體功能如下: CP 接CPU脈沖信號(hào)(負(fù)信號(hào),低電平有效); OPTO 接CPU+5V; FREE 脫機(jī)
14、,與CPU地線相接,驅(qū)動(dòng)電源不工作; DIR 方向控制,與CPU地線相接,電機(jī)反轉(zhuǎn); 精品 . VCC 直流電源正端; GND 直流電源負(fù)端; A 接電機(jī)引出線紅線; 接電機(jī)引出線綠線 ; B &
15、#160; 接電機(jī)引出線黃線; 接電機(jī)引出線藍(lán)線; 2.2.3 功能鍵盤 本系統(tǒng)的功能鍵盤采用了獨(dú)立式動(dòng)態(tài)掃描鍵盤,該鍵盤的結(jié)構(gòu)及功能在12章中有詳細(xì)的介紹,這里不再過多介紹了。 2.2.4 位置傳感器 本系統(tǒng)的位置傳感器采用由發(fā)光二極管和光敏二極管組成的電路來實(shí)現(xiàn),在下一節(jié)中將結(jié)合電路原理圖進(jìn)行說明。 2.2.5 固體繼電器 固體繼電器(亦稱固態(tài)繼電器)英文名稱為Solid State Relay,簡(jiǎn)稱SSR。它是用半導(dǎo)體器件代替?zhèn)鹘y(tǒng)電接點(diǎn)作為切換裝置的具有繼電器
16、特性的無觸點(diǎn)開關(guān)器件,單相SSR為四端有源器件,其中兩個(gè)輸入控制端,兩個(gè)輸出端,輸入輸出間為光隔離,輸入端加上直流或脈沖信號(hào)到一定電流值后,輸出端就能從斷態(tài)轉(zhuǎn)變成通態(tài)。 固體繼電器工作可靠,壽命長(zhǎng),無噪聲,無火花,無電磁干擾,開關(guān)速度快,抗干擾能力強(qiáng),且體積小,耐沖擊,耐振蕩,防爆、防潮、防腐蝕、能與TTL、DTL、HTL等邏輯電路兼容,以微小的控制信號(hào)達(dá)到直接驅(qū)動(dòng)大電流負(fù)載。主要不足是存在通態(tài)壓降(需相應(yīng)散熱措施),有斷態(tài)漏電流,交直流不能通用,觸點(diǎn)組數(shù)少,另外過電流、過電壓及電壓上升率、電流上升率等指標(biāo)差。 固體繼電器目前已廣泛應(yīng)用于計(jì)算機(jī)外圍接口裝置,電爐加熱恒溫系統(tǒng),數(shù)控機(jī)械,遙控
17、系統(tǒng)、工業(yè)自動(dòng)化裝置;信號(hào)燈、閃爍器、照明舞臺(tái)燈光控制系統(tǒng);儀器儀表、醫(yī)療器械、復(fù)印機(jī)、自動(dòng)洗衣機(jī);自動(dòng)消防,保安系統(tǒng),以及作為電網(wǎng)功率因素補(bǔ)償?shù)碾娏﹄娙莸那袚Q開關(guān)等等,另外在化工、煤礦等需防爆、防潮、防腐蝕場(chǎng)合中都有大量使用。 本系統(tǒng)驅(qū)動(dòng)電磁擊打錘和抓紙機(jī)械手是通過AVR單片機(jī)的輸出控制直流固體繼電器來實(shí)現(xiàn)的。直流固體繼電器的輸出量程既能夠滿足驅(qū)動(dòng)電磁擊打錘所需要的較大的電流,又可以起到隔離作用,防止電磁擊打錘的線圈的在通斷電時(shí)產(chǎn)生的脈沖尖峰對(duì)系統(tǒng)的干擾,提高控制系統(tǒng)的抗干擾能力。 3 硬件設(shè)計(jì) 地稅局自動(dòng)蓋章系統(tǒng)的控制電路原理如圖7所示,下面對(duì)各單元電路進(jìn)行說明。 精品 .
18、 圖8 自動(dòng)蓋章系統(tǒng)的控制電路原理圖 3.1電源設(shè)計(jì) 本系統(tǒng)的電源共有+36V、 +12V、+5V三種。其中+36V電源由開關(guān)電源輸出,用來作為電機(jī)及系統(tǒng)其它電源的輸入。系統(tǒng)的+12V電源用于擊打電磁和抓紙機(jī)械手的供電,它由可調(diào)三端穩(wěn)壓電源器件LM350將+36V降壓得到,LM350和LM317為同一系列的可調(diào)三端穩(wěn)壓器件,工作原理完全相同,只在具體的參數(shù)上有所差別??刂葡到y(tǒng)的+5V電源由固定值三端穩(wěn)壓電源器件78M05對(duì)+12V電壓進(jìn)行降壓得到,它為單片機(jī)及其接口系統(tǒng)提供電源。其中電阻R2和發(fā)光二極管D7組成電源工作指示燈。系統(tǒng)電源設(shè)計(jì)的電路原理圖如圖9所示。
19、 圖9系統(tǒng)電源的電路原理圖 8.3.2步進(jìn)電機(jī)接口電路設(shè)計(jì) 本系統(tǒng)共有三個(gè)獨(dú)立工作的步進(jìn)電機(jī),分別是控制進(jìn)/出倉(cāng)的步進(jìn)電機(jī),控制翻票據(jù)的步進(jìn)電機(jī)和控制頁(yè)碼字輪旋轉(zhuǎn)的步進(jìn)電機(jī),各個(gè)步進(jìn)電機(jī)的功率不同,因此選用了三個(gè)步進(jìn)電機(jī)控制器。但是三個(gè)步進(jìn)電機(jī)不同時(shí)工作,因此可以共用一個(gè)方向控制線。其具體電路圖如圖10所示。 精品 . 圖10步進(jìn)電機(jī)控制電路圖 3.3功能鍵盤接口電路設(shè)計(jì) 本系統(tǒng)的功能鍵盤設(shè)計(jì)采用的是獨(dú)立式鍵盤結(jié)構(gòu),并設(shè)計(jì)了蓋章和打印頁(yè)碼的工作指示燈,具體電路如圖11所示。 圖11系統(tǒng)功能鍵盤電路圖 其中S1為進(jìn)/出倉(cāng)
20、功能鍵,S2為蓋章功能鍵,S3為打印頁(yè)碼功能鍵,S4為取消功能鍵,S5為復(fù)位功能鍵。綠色發(fā)光二極管D5為蓋章工作指示燈,紅色發(fā)光二極管D6為蓋章結(jié)束指示,綠色燈發(fā)光二極管D7為打印頁(yè)碼工作指示燈,紅色發(fā)光二極管D8為打印頁(yè)碼結(jié)束指示燈。 精品 . 3.4位置傳感器接口電路設(shè)計(jì) 本設(shè)計(jì)的位置傳感器采用了由發(fā)光二極管和光敏二極管組成的電路來實(shí)現(xiàn),它們分別位于被探測(cè)的物體的兩側(cè)。其工作原理框圖如圖8-12所示。 圖12 傳感器工作原理框圖 光敏二極管是利用硅PN結(jié)受光照后產(chǎn)生光電流的一種光電器件,光敏二極管使用時(shí)要反向接入電路中,即正極接電源
21、負(fù)極,負(fù)極接電源正極。 系統(tǒng)工作時(shí),發(fā)光二極管通電發(fā)出可見光,當(dāng)沒有物體遮擋時(shí),高靈敏度光敏二極管接收可見光,使得自身阻值變小,電路輸出邏輯低電平到AVR單片機(jī);當(dāng)有物體遮擋時(shí),高靈敏度光敏二極管無法接收可見光,使得自身阻值增大,電路輸出邏輯高電平到AVR單片機(jī)。單片機(jī)通過高低電平來判斷有無遮擋物,進(jìn)而判斷物體的位置。其具體的電路圖如圖13所示。 圖 13 傳感器的電路原理圖 其中發(fā)光二極管D2和電阻R1組成發(fā)光電路,為傳感器提供光源;電阻R5和光敏二極管D3組成光電接收和邏輯轉(zhuǎn)換電路,為AVR單片機(jī)提供邏輯電平的輸入。其它的6個(gè) 傳感器
22、的構(gòu)成和工作原理與該電路完全相同,在圖8和圖10中進(jìn)行了省略,實(shí)際系統(tǒng)中共有7個(gè)這種傳感器。 精品 . 3.5固態(tài)繼電器接口電路設(shè)計(jì) 本系統(tǒng)的三個(gè)固體繼電器接口電路有兩種用途,其中的兩個(gè)分別用來驅(qū)動(dòng)蓋章和打印頁(yè)碼的電磁擊打錘,另外一個(gè)用來驅(qū)動(dòng)抓票據(jù)所用的機(jī)械手。其接口電路如圖8-14所示。 不同型號(hào)的固體繼電器的輸入驅(qū)動(dòng)電流不同,為了保護(hù)單片機(jī),減少其功耗,在單片機(jī)輸出引腳增加了功率放大的74LS04,用它的輸出來驅(qū)動(dòng)固體繼電器。 4 系統(tǒng)程序 系統(tǒng)程序給出了地稅局自動(dòng)蓋章系統(tǒng)的軟件,包含頭文件及各種變量的定義,鍵盤掃描函數(shù),蓋章函數(shù),打印頁(yè)碼函數(shù),以及中斷復(fù)位函數(shù),初始
23、化函數(shù)和主程序。 4.1 頭文件及全局變量定義 #include <io8535v.h> #include <macros.h> #define unsigned int uint #define unsigned char uchar //管腳功能 #define SIGN_ON PD0 //PD0 蓋章工作指示燈輸出管腳 #define SIGN_OFF PD1 //PC7 蓋章結(jié)束指示燈輸出管腳 #define PRINT_ON PD3 //PD3 打印頁(yè)碼工作指示燈輸出管腳 #define PD
24、4 PRINT_OFF //PD4 打印頁(yè)碼結(jié)束指示燈輸出管腳 #define PC7 M1_pulse //PC7 裝票電機(jī)脈沖輸出管腳 #define PC6 M2_pulse //PC6 行走電機(jī)脈沖輸出管腳 #define PC5 M3_pulse //PC5 字輪電機(jī)脈沖輸出管腳 #define PC4 M_DIR //PC4 電機(jī)方向輸出管腳 精品 . #define PC3 SIGN_ACT //PC3 蓋章?lián)舸螂姶盆F輸出管腳 #define PC2 PRINT_ACT //PC2 字輪擊打電磁
25、鐵輸出管腳 #define PC1 GRASP_ACT //PC1 抓紙機(jī)械手輸出管腳 #define PB6 SONSOR_6 //PB6 行走右傳感器 #define PB5 SONSOR_5 //PB5 行走左傳感器 #define PB4 SONSOR_4 //PB4 字輪傳感器 #define PB3 SONSOR_3 //PB3 紙傳感器 #define PB2 SONSOR_2 //PB2 后傳感器 #define PB1 SONSOR_1 //PB1 中傳感器 #define PB0 S
26、ONSOR_0 //PB0 前傳感器 #define PA2 KEY_2 //PA2 打印頁(yè)碼鍵 #define PA1 KEY_1 //PA1 蓋章鍵 #define PA0 KEY_0 //PA0 裝票鍵 bit keydown, cancelflag; unsigned int u;; unsigned char i,j, x,y,k,m,n,funkeynum,r_step,b,c, void cancel() interrupt 0 { cancelflag=1; } //功能鍵掃描 void funkey
27、scan() { keydown=0; funkeynum=3; if(KEY_0==0) { Delayl(10); if(KEY_0==0) { funkeynum=0; keydown=1; } } //PA0 裝票 精品 . if(KEY_1==0) { Delayl(10); if(KEY_1==0) { funkeynum=1; keydown=1; } } //PA1 蓋章 if(KEY_2==0) { Delayl(10
28、); if(KEY_2==0) { funkeynum=2; keydown=1; } } //PA2 打碼 } void delays(uint j) { uint i; for(i=0;i<j;i++) { ; } } void delay1(unsigned int j) { uint i; for(i=0;i<j;i++) { uint l; for(l=0;l&
29、lt;1000;l++); } } 精品 . void pulsezhuangpiao() //裝票頻率 { delays(45); //裝票周期45 M1_pulse=1; //Pc7=1 delays(45); //裝票周期45 M1_pulse=0; //Pc7=0 } void pulsexingzou() { delays(35); //行走周期35 M2_pulse=1
30、; //Pc6=1 delays(35); //行走周期35 M2_pulse=0; //Pc6=0 } void pulsezilun() //字輪電機(jī)脈沖 { delays(55); //字輪電機(jī)周期35 M3_pulse=0; //Pc5=0 delays(55); //字輪電機(jī)周期35 M3_pulse=1; //Pc5=1 } void print
31、_act() { PRINT_ACT=1; delay1(5); //打字電磁鐵打下時(shí)間延時(shí)20(*1000) PRINT_ACT=0; delay1(20); //打字電磁鐵上升時(shí)間延時(shí)20(*1000) } void sign_act() { SIGN_ACT=1; delay1(20); //蓋章電磁鐵打下時(shí)間延時(shí)20(*1000)
32、 SIGN_ACT=0; 精品 . delay1(20); //蓋章電磁鐵上升時(shí)間延時(shí)20(*1000) } void num_step() { M_DIR=0; //反轉(zhuǎn) for(u=0;u<40;u++) //行走電機(jī)距離即字間距40 { pulsexingzou(); } } void reverse_step() { unsigned int i; for(i=0;
33、i<350;i++) //居中以后再走100吸紙 { M_DIR=0; //反轉(zhuǎn) pulsexingzou(); } GRASP_ACT=1; //吸紙 while(SONSOR_5==0) //等待開關(guān) { M_DIR=0; //反轉(zhuǎn) pulsexingzou(); } } void forward_step() { GRASP
34、_ACT=0; //不吸紙 while(SONSOR_6==0) //等待開關(guān) { M_DIR=1; //正轉(zhuǎn) pulsexingzou(); } M_DIR=0; //反轉(zhuǎn) for(u=0;u<400;u++) //行走電機(jī)居中 { pulsexingzou(); } 精品 . GRASP_ACT=0;
35、 //放紙 } void judge1() //判斷字輪正反轉(zhuǎn) { if(b>10){r_step=(20-b)*12; M_DIR=1;} else {r_step=b*12; M_DIR=0; } } void judge2() //判斷字輪正反轉(zhuǎn) { if(b>10){r_step=(20-b)*12; M_DIR=0;} else {r_step=b*12; M_DIR=1; } } void mot
36、orxizhi() { reverse_step(); u=0; delay1(5); //吸紙延時(shí)10*(1000) while(SONSOR_6==0) //等待開關(guān) { M_DIR=1; //往右轉(zhuǎn) u++; pulsexingzou(); if(u==380){ GRASP_ACT=0;} //抓紙機(jī)械手往右走380步放紙 } } void motor3qianz
37、ou() { M_DIR=1; //方向 while(SONSOR_0==0) //前傳感器 pulsezhuangpiao(); //承票板往前走 } void motor3houzhong() { uchar e; 精品 . while(SONSOR_1==0) //中傳感器 { M_DIR=0; //方向 pulsezhuangpi
38、ao(); //承票板往hou走 } for(e=0;e<55;e++) //修正位置誤差55 { M_DIR=0; //方向 pulsezhuangpiao(); //承票板往hou走 } } void motor3houzou() { M_DIR=0; //方向 while(SONSOR_2==0) //后傳感器
39、 pulsezhuangpiao(); //承票板往hou走 } void motor30() { motor3qianzou(); motor3houzhong(); } void motor3qianzhong() { M_DIR=1; //方向 while(SONSOR_1==0) //中傳感器 { pulsezhuangpiao(); //承票板往前走 } for(i=0;i<20;
40、i++) pulsezhuangpiao(); } void motor1_fuwei() { reverse_step(); COM8255=0x03; //正空蹦不動(dòng)作 精品 . delay1(5); while(SONSOR_6==0) //等待開關(guān) { M_DIR=1; //正轉(zhuǎn) pulsexingzou(); } M_DIR=0;
41、//反轉(zhuǎn) //以上程序初始定位 } void motor2_fuwei() { M_DIR=0; while(SONSOR_4==0) //字輪光電傳感器 { pulsezilun(); } } void motor12_dama() { unsigned char k=0,p;//n, while(SONSOR_3==0) //紙張結(jié)束標(biāo)志位為0時(shí)循環(huán)執(zhí)行 { for(u=0;u<150;u++) { M_DIR=0
42、; pulsexingzou(); } //電機(jī)進(jìn)入打印位置 motor2_fuwei(); //字輪復(fù)位 p=0; if(k<10) { b=k+k; judge1(); for(u=0;u<r_step;u++) //字輪電機(jī)轉(zhuǎn)到打印位置 {puls
43、ezilun(); } print_act(); } 精品 . else { b=k/10+k/10; //取整的yushu judge1(); for(u=0;u<r_step;u++) //字輪電機(jī)轉(zhuǎn)到打印位置 {pulsezilun(); } print_act(); num_step(); p=2*(k%10);
44、 //取整的值 if(p>b) { b=p-b; judge1(); } else { b=b-p; judge2(); } for(u=0;u<r_step;u++) //字輪電機(jī)轉(zhuǎn)到打印位置 {pulsezilun(); } print_act(); } k++; motorxizhi(); if(cancelfla
45、g==1) goto OUT2; } OUT2: cancelflag=0; for(u=0;u<450;u++) { M_DIR=0; pulsexingzou(); } } 精品 . void motor30() { uint i; for(i=0;i<350;i++) //居中以后再往左走100吸紙 { M_DIR=0; //反轉(zhuǎn) pulsexingzou(); }
46、 GRASP_ACT=1; //吸紙 while(SONSOR_5==0) //等待開關(guān) { M_DIR=0; //反轉(zhuǎn) pulsexingzou(); } M_DIR=1; //往右轉(zhuǎn) for(u=0;u<500;u++) //往右走的脈沖個(gè)數(shù)500 { pulse
47、xingzou(); GRASP_ACT=1; } //行走電機(jī)居中 motor3qianzou(); } void motorjuzhong() { for(u=0;u<450;u++) { M_DIR=0; pulsexingzou(); } } void motorgaizhang() { while(SONSOR_3==0) //紙張結(jié)束標(biāo)志位為1時(shí)循環(huán)執(zhí)行 { moto
48、r3houzou(); sign_act(); motor3qianzhong(); motorxizhi(); 精品 . motorjuzhong(); if(cancelflag==1) goto OUT3; } OUT3: cancelflag=0; } void main(void) { begin: cancelflag=0; SIGN_ACT=0; //蓋章?lián)舸螂姶盆F1吸起 PRINT_ACT=0; //打印頁(yè)碼擊打電磁鐵2吸起 GRAS
49、P_ACT=0; //抓紙機(jī)械手不動(dòng)作 forward_step(); //翻頁(yè)步進(jìn)電機(jī)復(fù)位 motor3houzou(); //承票板往后走 motor3qianzhong(); //承票板往中間走進(jìn)行復(fù)位 IT1 = 0; //設(shè)外部中斷1為低電平觸發(fā) EA = 1; //開中斷 EX1 = 1; //開中斷1 do{ do {funkeyscan(); } while(keydown==0); switch(funkeynum) { c
50、ase 1 : //裝票操作 motor3(); break; case 3 : //蓋章 motor30(); //裝票 wait1: while(KEY_1!=0); while(KEY_1==0) {
51、 DelayMs(50); if(KEY_1==0) { motor3houzhong(); 精品 . } else goto wait1; } SIGN_ON=0; SIGN_OFF=1; //蓋章進(jìn)行中指示燈亮 motor3houzou(); motorga
52、izhang(); // 蓋章 motor3qianzhong(); SIGN_ON=1; SIGN_OFF=0; //蓋章結(jié)束指示燈亮 break; case 3 : //打印頁(yè)碼 motor30(); //裝票 wait2: while(KEY_2!=0);
53、 while(KEY_2==0) { DelayMs(50); if(KEY_2==0) { motor3houzhong(); } else goto wait2; } PRINT_ON=0; PRINT_OFF=1; //打印頁(yè)碼進(jìn)行指示燈
54、亮 motor1_fuwei(); motor12_dama(); //打印頁(yè)碼 PRINT_ON=1; PRINT_OFF=0;//打印頁(yè)結(jié)束指示燈亮 break; }while(1); } 5系統(tǒng)集成與調(diào)試 地稅局自動(dòng)蓋章系統(tǒng)的測(cè)試主要有以下幾部分:電源的測(cè)試、傳感器電路的測(cè)試、電機(jī)驅(qū)動(dòng)電路的測(cè)試、電磁擊打錘電路的測(cè)試和鍵盤電路的測(cè)試。對(duì)電機(jī)驅(qū)動(dòng)電路的測(cè)試應(yīng)編寫相應(yīng)的測(cè)試程序,其它電路單元的測(cè)試應(yīng)該以硬件電路調(diào)試為主。 精品
55、. 5.1.電機(jī)驅(qū)動(dòng)電路的測(cè)試 根據(jù)圖7-10所設(shè)計(jì)的步進(jìn)電機(jī)驅(qū)動(dòng)電路,在硬件電路焊接完成之后,可以編制如下的測(cè)試程序,對(duì)步進(jìn)電機(jī)單元進(jìn)行測(cè)試。測(cè)試的目的是為了調(diào)試電機(jī)的轉(zhuǎn)速以符合實(shí)際工作狀況的需要。 #include <io8535v.h> void delay( int j ) { int i; for(i=0;i<j;i++) //步進(jìn)電機(jī)轉(zhuǎn)速周期j { ; } } void pulse() { delay(35); Pc6=1; //Pc5=1
56、; //Pc4=1; delay(35); Pc6=0; //Pc5=0; //Pc4=0; } main() { int i; while(1) { Pc3=1; //正轉(zhuǎn) for(i=0;i<200;i++) //正轉(zhuǎn)200個(gè)脈沖 { pulse(); } Pc3=0; //反轉(zhuǎn) for(u=0;u<200;u++) //反轉(zhuǎn)200個(gè)脈沖 精品 . { pulse(); } } } 如有侵權(quán)請(qǐng)聯(lián)系告知?jiǎng)h除,感謝你們的配合! 精品
- 溫馨提示:
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. 裝配圖網(wǎng)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 中考語(yǔ)文語(yǔ)言知識(shí)積累及運(yùn)用課件
- 6.康復(fù)醫(yī)學(xué)的工作方法和流程
- 部編本人教版小學(xué)一年級(jí)語(yǔ)文下冊(cè)11-彩虹課件
- 活動(dòng)四單股銅芯導(dǎo)線的T型連接絕緣層的恢復(fù)單股銅芯導(dǎo)線的T型連接課件
- 機(jī)場(chǎng)運(yùn)營(yíng)與管理 課程講義
- 不得作為商標(biāo)的標(biāo)志的審查解讀
- MRSA共識(shí)解讀2012-1-17(1)
- 高中語(yǔ)文必修一《優(yōu)美的漢字》課件
- 安全生產(chǎn)管理培訓(xùn)課件
- 衛(wèi)生系統(tǒng)法律知識(shí)講座-法律責(zé)任與法律救濟(jì)
- 骨關(guān)節(jié)脫位課件
- 護(hù)士行為與護(hù)理安全 課件
- 公路工程技術(shù)標(biāo)準(zhǔn)宣貫-隧道部分課件
- 預(yù)防冬季傳染病主題班會(huì)
- 疾病預(yù)防與食品安全教育.ppt