PIC24單片機(jī)在軋機(jī)液壓缸行程檢測(cè)上的應(yīng)用
工作輥卡板是軋機(jī)工作輥的一個(gè)關(guān)鍵定位裝置,安鋼1780MM精軋機(jī)組由7架精軋機(jī)組成,每架軋機(jī)的工作輥都有8個(gè)卡板進(jìn)行固定,在換輥時(shí)這些卡板可以打開,卡板驅(qū)動(dòng)由卡板液壓缸來(lái)實(shí)現(xiàn)。目前,卡板的開閉狀態(tài)都是通過(guò)磁感應(yīng)開關(guān)來(lái)檢測(cè),由于軋機(jī)上水汽大并存在強(qiáng)磁場(chǎng)干擾,磁感應(yīng)開關(guān)在工作中會(huì)經(jīng)常丟失信號(hào),引起停車事故,從而嚴(yán)重影響生產(chǎn)節(jié)奏。為此,需要開發(fā)一套使用PIC24單片機(jī),配合渦街流量計(jì)通過(guò)檢測(cè)液壓回路內(nèi)流體累積流量的方式實(shí)現(xiàn)液壓缸行程檢測(cè)的系統(tǒng)。
1 液壓缸行程檢測(cè)系統(tǒng)簡(jiǎn)介
圖1是液壓缸行程檢測(cè)系統(tǒng)的檢測(cè)原理示意圖。從渦街流量計(jì)變送器得到的信號(hào)是由線圈或霍爾元件在旋轉(zhuǎn)中產(chǎn)生的具有正負(fù)半周的微弱電脈沖信號(hào),其幅值非常小,一般在毫安級(jí)。系統(tǒng)中的整形單元將該微弱信號(hào)轉(zhuǎn)變成同頻率,單片機(jī)可以識(shí)別的正脈沖信號(hào)。
1.1 瞬時(shí)流量
瞬時(shí)流量正比于流量及輸出的脈沖頻率,如式(1)所示,式中,F(xiàn)t為體積流量,單位為m3/h;k為流量計(jì)儀表系數(shù),單位為1/m3;f為流量計(jì)輸出頻率,單位為Hz。
當(dāng)頻率f在0和f1之間時(shí),儀表系數(shù)k按k1計(jì)算。當(dāng)頻率f大于f8時(shí),儀表系數(shù)k就按照k8計(jì)算。當(dāng)頻率在f1與f2之間時(shí),儀表系數(shù)k=(f-f1)/(f2-f1)·(k2-k1),依次類推。
1.2 頻率測(cè)量方法
通常頻率測(cè)量方法有兩種:測(cè)周法和測(cè)頻法。測(cè)頻法就是在一定的時(shí)間間隔內(nèi),對(duì)輸入的周期信號(hào)脈沖計(jì)數(shù),如圖2所示,按照普通測(cè)頻法的原理,會(huì)有誤差△n=±1。造成計(jì)數(shù)誤差的原因如下:
1)定時(shí)器啟動(dòng)后,沒有遇上待測(cè)脈沖的下降沿,而要等t1時(shí)間后才開始計(jì)數(shù);
2)定時(shí)器時(shí)問(wèn)到,不在待測(cè)脈沖的末尾,而提前了t2時(shí)間。
為了消除△n=±1誤差,系統(tǒng)中采用了新的測(cè)頻方法,采用式(3)進(jìn)行。
f=n/t’ (3)
系統(tǒng)中,利用單片機(jī)的軟件可控性,使消除計(jì)數(shù)誤差△n變得簡(jiǎn)單,計(jì)數(shù)時(shí)使用單片機(jī)的兩個(gè)定時(shí)器,一個(gè)定時(shí),一個(gè)計(jì)數(shù)。計(jì)數(shù)器由外部信號(hào)控制啟動(dòng),且與待測(cè)脈沖信號(hào)同步,這樣就消除了普通測(cè)頻法中t1的影響。在新測(cè)頻法中,當(dāng)定時(shí)時(shí)間t到了以后,CPU采樣到最后一個(gè)脈沖后,此時(shí)計(jì)數(shù)值為n,n個(gè)脈沖的時(shí)間為t’,這樣就消除了普通測(cè)頻法中t2的影響。這種測(cè)量方法的誤差≤1%。對(duì)定時(shí)時(shí)間t的選取小于1 s,這樣就保證對(duì)頻率信號(hào)的響應(yīng)時(shí)間小于1 s。
2 PIC24單片機(jī)高速脈沖捕捉功能實(shí)現(xiàn)
本系統(tǒng)中選用PIC24系列單片機(jī)是Microchip新的產(chǎn)品系列,該芯片是一款高性能16位RISC單片機(jī),其采用先進(jìn)的哈弗構(gòu)架,工作時(shí)鐘在32 MHz頻率下,指令速度高達(dá)16MIP S。
在設(shè)計(jì)中,使用PIC單片機(jī)的16位捕捉輸入通道,高速捕捉渦街流量計(jì)發(fā)出的脈沖信號(hào),采用上文闡述的脈沖測(cè)量方法,通過(guò)編程實(shí)現(xiàn)液壓缸行程測(cè)量。圖3為PIC24單片機(jī)輸入捕獲的功能框圖。
在本系統(tǒng)的控制程序中,首先設(shè)置ICxCON控制器中捕獲預(yù)分頻,以及邊沿檢測(cè)邏輯(上升沿檢測(cè))。當(dāng)在捕獲通道ICx有輸入信號(hào)符合邊沿檢測(cè)條件時(shí),這時(shí)將把捕獲信號(hào)的數(shù)值存入FIFO讀/寫緩存區(qū)。如果應(yīng)用程序需要讀取捕獲的數(shù)值,可以根據(jù)捕獲中斷ICxIF標(biāo)志判斷捕獲事件,從16位定時(shí)器TMRy、TMRx中讀取捕獲通道信號(hào)的數(shù)值就可以計(jì)算捕獲通道信號(hào)的大小,信號(hào)的寬度信息。
C語(yǔ)言程序中,設(shè)置為輸入捕獲模式1,每捕獲4個(gè)上升沿,進(jìn)行一次中斷,設(shè)置定時(shí)器2為基準(zhǔn)時(shí)間,為了避免異常中斷,屏蔽了IC1CON功能。實(shí)現(xiàn)代碼如下:
IPC0bits.IC1IP=1; //設(shè)置輸入捕獲寄存器為第一級(jí)優(yōu)先級(jí)
IFS0bits.IC1IF=0; //清除IC1中斷狀態(tài)標(biāo)志
IEC0bits.IC1IE=1; //使能IC1中斷
IC1 CON=0X0000; //關(guān)閉輸入捕獲模式1
IC1 CON=0X00A4; //打開輸入捕獲模式1
3 硬件設(shè)計(jì)與功能實(shí)現(xiàn)
系統(tǒng)硬件設(shè)計(jì)采用PIC24FJ128GA單片機(jī)芯片,配合相應(yīng)檢測(cè)電路實(shí)現(xiàn),液晶顯示單元由驅(qū)動(dòng)器HD44100和8位LCD構(gòu)成。
1)單片機(jī)的T0CK1是其計(jì)數(shù)器0的輸入端口,這里用來(lái)作為放大整形脈沖信號(hào)的輸入檢測(cè)端。
2)單片機(jī)的0SC1腳相連的是RC震蕩器的外界電阻和電容。
3)單片機(jī)的RB2、RB4、RB6作為按鍵的IO輸入口。
4)液晶驅(qū)動(dòng)模塊使用HD44100,其采用靜態(tài)驅(qū)動(dòng)方式。
5)每0.5 s計(jì)算一次瞬時(shí)流量(0.5 s內(nèi)的平均值),每5 s將累積流量值保存入E2PROM一次。
4 軟件設(shè)計(jì)與功能實(shí)現(xiàn)
軟件主要包括主程序,信號(hào)采集、測(cè)量、濾波程序、顯示程序和讀寫E2PROM程序等其它子程序。
4.1 主程序
主程序完成實(shí)時(shí)性要求不高的功能,完成系統(tǒng)上電初始化,實(shí)現(xiàn)鍵盤處理,動(dòng)態(tài)計(jì)算,刷新顯示等功能。其中,數(shù)據(jù)處理模塊主要是完成信號(hào)頻率與設(shè)定頻率的比較、儀表系數(shù)k值的確定,瞬時(shí)流量的計(jì)算、累計(jì)流量的計(jì)算等功能。
4.2 中斷服務(wù)程序
中斷服務(wù)程序由相應(yīng)的中斷源提出申請(qǐng),MCU實(shí)時(shí)響應(yīng)。服務(wù)程序調(diào)用后,首先判斷當(dāng)前中斷類型,然后進(jìn)行相應(yīng)的處理。圖4為系統(tǒng)軟件設(shè)計(jì)流程圖。
5 應(yīng)用效果
為了解決1780熱軋機(jī)組工作輥卡板缸信號(hào)頻閃的問(wèn)題,在每個(gè)卡板缸的進(jìn)油端安裝一臺(tái)流量計(jì),流量計(jì)的脈沖信號(hào)進(jìn)入上文的檢測(cè)系統(tǒng),對(duì)卡板缸的狀態(tài)進(jìn)行在線檢測(cè)。
每個(gè)液壓缸對(duì)應(yīng)開閉流量值可以在首次使用時(shí)通過(guò)按鍵進(jìn)行設(shè)定,并在系統(tǒng)中設(shè)置了最小流量,從而避免小信號(hào)的干擾。經(jīng)長(zhǎng)時(shí)間試用,卡板缸的狀態(tài)信號(hào)穩(wěn)定性得到很大改善,減少了維護(hù)人員更換機(jī)上接近開關(guān)的工作量,保證了正常的軋制節(jié)奏。
6 結(jié)束語(yǔ)
本文介紹了一種新型的軋機(jī)液壓缸行程檢測(cè)技術(shù),并以一款產(chǎn)品為例,詳細(xì)闡述了其檢測(cè)原理、軟硬件設(shè)計(jì)方案,最后以一個(gè)具體的應(yīng)用為對(duì)象,分析了該系統(tǒng)在實(shí)際工業(yè)現(xiàn)場(chǎng)的應(yīng)用效果。