新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于AVR單片機(jī)的輪胎模具內(nèi)徑測量系統(tǒng)

基于AVR單片機(jī)的輪胎模具內(nèi)徑測量系統(tǒng)

作者: 時間:2012-09-02 來源:網(wǎng)絡(luò) 收藏

步進(jìn)電機(jī)脈沖的產(chǎn)生由定時器1和定時器2實現(xiàn),ATmega16控制器接收到上位機(jī)的命令后,首先獲取需要轉(zhuǎn)動的步數(shù),然后根據(jù)相應(yīng)命令打開相應(yīng)定時器的計數(shù)功能??刂瞥绦蛑杏枚〞r器1控制二路脈沖輸出,定時器2控制一路脈沖輸出,從而完成3路電機(jī)的控制。
定時器2使用CTC模式,匹配中斷使能。通過匹配中斷,在OCR2端口可以輸出脈沖,通過設(shè)定寄存器OCR2寄存器的值可以改變輸山脈沖頻率。定時器1使用相位與頻率修正模式,在不同串口命令下分別設(shè)置ICR1、OCR1A和OCR1B寄存器的值并打開不同的匹配中斷,從而可以分別在OC1A和OC1B端口輸出匹配脈沖。其輸出頻率控制和定時器2原理一樣,只是還需要改變計數(shù)上限值ICR1。由于3路電機(jī)不同時運動,因此每次只有一個定時器處于打開狀態(tài),其余則需要關(guān)閉。
在程序運行中,設(shè)置了一個全局變量保存電機(jī)運行的步數(shù)。在收到上位機(jī)的命令后,控制程序首先將該步數(shù)寫入片內(nèi)EEPROM中再執(zhí)行。由于EEPROM數(shù)據(jù)掉電不丟失,因此掉電后復(fù)位時可以從EEPROM中取出數(shù)據(jù)然后執(zhí)行下一次操作。
3.2 手輪微調(diào)控制
手輪的作用主要是實現(xiàn)微調(diào)設(shè)備找到合適的點。電子手輪一共有兩路脈沖輸出,兩路脈沖相位差決定了手輪的旋轉(zhuǎn)方向。手輪的控制采用定時器0,使用計數(shù)模式。定時器0沒置為CTC模式,上升沿觸發(fā),OCR0為1,計數(shù)初始值為0,中斷使能。當(dāng)外部上升沿觸發(fā)時計數(shù)到1時觸發(fā)中斷,在中斷子程序里面根據(jù)手輪狀態(tài)產(chǎn)生相應(yīng)的脈沖輸出。
在手輪中斷子程序中,首先將計數(shù)器自動清零等待下一個手輪脈沖。然后判斷正反信號和手輪檔位狀態(tài),ATmega16根據(jù)狀態(tài)信息通過延時方法產(chǎn)生一定數(shù)量的脈沖控制步進(jìn)電機(jī)。手輪狀態(tài)共有Z、Y、X 3個方向,X1、X10、X100 3個檔位。若手輪在X檔位則在相應(yīng)端口(該端口同時也是定時器脈沖輸出口)輸出一定數(shù)目的脈沖。改變延時的大小可以改變輸出頻率,但是由于延時輸出脈沖的最大頻率決定于晶振,因此輸出脈沖受到一定影響。延遲方法產(chǎn)生的脈沖不能精確控制步進(jìn)電機(jī)的步進(jìn)角度,但是可以用于微調(diào)。
手輪的正反信號通過D觸發(fā)器來判斷。將手輪脈沖A作為CLK信號,脈沖B為CP信號,復(fù)位端和置位端接高電平。當(dāng)手輪正轉(zhuǎn)時脈沖A脈沖與脈沖B的相位差為正90度,D觸發(fā)器輸出高電平;若反轉(zhuǎn)A脈沖與B脈沖的相位差為負(fù)90度,輸出低電平。
3.3 串口模塊
上位機(jī)和主要采用UART異步通信,收發(fā)按字節(jié)處理。接收上位機(jī)命令時采用UART查詢方法實現(xiàn)數(shù)據(jù)接收。其通信格式為:起始字+控制字節(jié)+步數(shù)+結(jié)束字,數(shù)據(jù)使用國際通用標(biāo)準(zhǔn)ASCII碼格式,如表1所示。

本文引用地址:http://2s4d.com/article/170955.htm

h.JPG


設(shè)計過程中使用ICC編譯器編寫控制程序,可以使用atoi函數(shù)將ASCII碼格式步數(shù)轉(zhuǎn)化為整型數(shù)據(jù)。

i.JPG


單片機(jī)對上位機(jī)通信主要是使用兩個字節(jié)數(shù)據(jù)發(fā)送手輪狀態(tài)信息和行程開關(guān)狀態(tài)信息。單片機(jī)在接收到查詢命令后,將兩字節(jié)狀態(tài)信息返回給上位機(jī),每次執(zhí)行步進(jìn)電機(jī)命令后也需要向上位機(jī)發(fā)送狀態(tài)信息,將執(zhí)行結(jié)果返回給上位機(jī)。其定義如表2所示。

4 結(jié)束語
文中單片機(jī)設(shè)計了一套內(nèi)徑,可以接收電子手輪和上位機(jī)信息分時控制多路步進(jìn)電機(jī)并能控制光柵尺讀數(shù)。
設(shè)備經(jīng)過安裝后,選取標(biāo)準(zhǔn)鋼板作為測試目標(biāo),在垂直方向選定若干個測試點,結(jié)果證明其誤差在2μm以內(nèi)。然后選取子午線作為測試目標(biāo),與人工測量數(shù)據(jù)進(jìn)行對比,測量誤差在4 μm以內(nèi),達(dá)到設(shè)計要求。

接地電阻相關(guān)文章:接地電阻測試方法


行程開關(guān)相關(guān)文章:行程開關(guān)原理

上一頁 1 2 3 下一頁

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉