咨詢電話
ENGLISH0755-88840386發(fā)布時間:2020-12-28 14:18:14 |來源:網(wǎng)絡(luò)轉(zhuǎn)載
0引言
在測重精度要求較高的現(xiàn)代化流水線作業(yè)環(huán)境中,稱重系統(tǒng)性能的優(yōu)劣對工業(yè)生產(chǎn)的效率和質(zhì)量起著非常重要的作用。目前,大部分在線稱重系統(tǒng)主要靠手動控制,單機(jī)操作,自動化程度不高。本文中的稱重系統(tǒng)可以進(jìn)行遠(yuǎn)程控制,聯(lián)網(wǎng)操作,對系統(tǒng)參數(shù)可以在線調(diào)整和監(jiān)控,主要作為包裝生產(chǎn)線以及輸送系統(tǒng)中的測重部分,具有較高的精度,運行穩(wěn)定可靠,界面友好,特別適用于對測重精度要求較高,可靈活配置系統(tǒng)參數(shù)的場合,主要用于在線檢測產(chǎn)品重量是否合格,包裝內(nèi)是否缺少部件,以及提供反饋信號調(diào)節(jié)加料設(shè)備等。而本文所介紹的就是這種稱重系統(tǒng)中主要部件即嵌入式速度控制器的設(shè)計,該速度控制器決定了流水線運行的速度以及稱重的精度,對流水線生產(chǎn)的效率和質(zhì)量起著關(guān)鍵性的作用。本文所設(shè)計的速度控制器將Rs-232/Rs-485兩種通用串行通信方式[1,2]集成于同一模塊中,實現(xiàn)了多種通信方式的兼容;提出了一種將浮點數(shù)運算轉(zhuǎn)化成定點數(shù)運算的計算方式,避免了對單片機(jī)而言復(fù)雜的浮點數(shù)運算,大大提高了單片機(jī)處理數(shù)據(jù)的速度,增強(qiáng)了系統(tǒng)的實時性和快速性。
l稱重系統(tǒng)簡介
稱重系統(tǒng)主要由稱重平臺、液晶顯示屏、控制鍵盤、速度控制器、數(shù)據(jù)處理器以及作為系統(tǒng)上位機(jī)的工控機(jī)等部分組成。系統(tǒng)的稱重平臺如圖l所示,主要由轉(zhuǎn)輪、皮帶、稱重傳感器以及光電檢測器等部件組成。轉(zhuǎn)輪由速度控制器所控制得電動機(jī)驅(qū)動,利用摩擦力帶動皮帶運動,兩個光電檢測器分別用于檢測被測物體進(jìn)入和離開稱重區(qū)域,當(dāng)檢測到物體進(jìn)入稱重區(qū)域后數(shù)據(jù)處理器便開始采集稱重傳感器傳來的重量數(shù)據(jù),直到光電檢測器檢測到該物體離開稱重區(qū)域為止,然后數(shù)據(jù)處理器將這一時間段內(nèi)采集到的重量數(shù)據(jù)進(jìn)行處理,將最終的被測物體重量數(shù)據(jù)送到顯示終端顯示,同時,根據(jù)被測物體重量的合格與否進(jìn)行物體的分類處理,不合格產(chǎn)品將被剔除,剔除裝置采用推桿式的機(jī)械結(jié)構(gòu)。
系統(tǒng)的原理如圖2所示,作為上位機(jī)的工控機(jī)首先發(fā)出指令初始化速度控制器、數(shù)據(jù)處理器以及液晶顯示屏的顯示內(nèi)容,然后根據(jù)測量工序?qū)λ俣瓤刂破骱蛿?shù)據(jù)處理器進(jìn)行控制。數(shù)據(jù)處理器將采集到的重量數(shù)據(jù)進(jìn)行處理后傳回工控機(jī),工控機(jī)將所得的數(shù)據(jù)按指定的格式顯示在液晶顯示屏上。
控制鍵盤是集成在液晶顯示屏上的,采用塑料薄膜按鍵,鍵盤主要進(jìn)行人機(jī)界面交換等。速度控制器主要與上位機(jī)進(jìn)行通信、接收上位機(jī)的命令,對多個電動機(jī)進(jìn)行同步和高精度的恒速控制,并對電動機(jī)進(jìn)行調(diào)速控制等。
2速度控制器的設(shè)計
速度控制器首先必須接收上位機(jī)的指令來設(shè)置本身的參數(shù),并根據(jù)指令輸出特定頻率的脈沖,通過│/V轉(zhuǎn)換控制電動機(jī)輸出系統(tǒng)所要求的速度。它具有4通道獨立方波脈沖輸出;非光電隔離輸出、光電隔離輸出可選;輸出電平:TTL電平(非光電隔離)或+l2V電平(光電隔離)可選;脈沖輸出頻率為0λ500Hz可調(diào);通信接口:Rs-232/485可選;內(nèi)置看門狗;電源+l0Vλ+30VDC非調(diào)節(jié)(通常為+24VDC);控制器上還提供光電隔離用的外部電源引入端口。該速度控制器能夠檢測上位機(jī)指令的正確性,根據(jù)特定的通信協(xié)議向上位機(jī)反饋信息,所有數(shù)據(jù)全部以AsCⅡ碼形式傳輸,并加以累加和校驗。
2.1硬件電路設(shè)計
速度控制器的硬件原理如圖3所示,它以Interl6位單片機(jī)80Cl96KB為中央處理器,外擴(kuò)一片EPR0M27Cl28,另有Rs-232、Rs-485收發(fā)器[3],TLP52l-4四光耦芯片各一片,以及復(fù)位電路和電源模塊。
80Cl96KB單片機(jī)作為該系統(tǒng)的核心,其作用是接收上位機(jī)的操作指令,判斷指令的正確性,并向上位機(jī)返回相關(guān)信息;若指令有效則執(zhí)行該指令,并向上位機(jī)返回確認(rèn)信息,若指令無效則等待,并向上位機(jī)返回報錯信息。Rs.485收發(fā)器用于以高數(shù)據(jù)速率或者長距離進(jìn)行通信的場合,也可
用于與計算機(jī)之間的通信,但需要增加Rs-485到Rs-232之間的轉(zhuǎn)換部分。TLP52l-4四光耦芯片用于和外電萬路方的數(shù)隔據(jù)離,以提高系統(tǒng)的抗干擾能力;80Cl96KB的Pl.0λPl.3口按要求輸出4路獨立方波脈沖,方波脈沖的占空比為50%,并提供兩種輸出方式,一種是非光電隔離輸出即脈沖直接輸出方式,另一種是光電隔離輸出方式即4路方波脈沖分別經(jīng)4個獨立光耦輸出;而經(jīng)光電隔離后的輸出脈沖波形比較穩(wěn)定,抖動很小,這就大大增強(qiáng)了系統(tǒng)的抗干擾能力。電源模塊為該速度控制器中的所以芯片提供+5V的TTL電平,光耦的+12VDC的隔離電源由外電路提供,該電源模塊不提供這一電源;該電源模塊選用sEMTECH公司的LM2575.ADJ芯片[4]作為其核心器件,可以將4Vλ40VDC之間的任一電壓轉(zhuǎn)換成+5V左右的可調(diào)電壓,通過一個電位器可以精確的調(diào)節(jié)+5V電壓供TTL電平的芯片使用。該電源模塊的輸出電流為150mAλ1.0A,完全能夠滿足需要。
2.2軟件設(shè)計
系統(tǒng)的軟件部分主要由主程序,接收中斷服務(wù)程序以及其他一些子程序組成。
2.2.l主程序
主程序的流程圖如圖4所示。程序開始首先要進(jìn)行初始化;初始化的內(nèi)容主要包括定義存儲單元并賦初始值,設(shè)置傳輸波特率,置堆棧初值,設(shè)置中斷寄存器、控制寄存器和串行口狀態(tài)寄存器,開中斷等。程序剛開始沒有接收到上位機(jī)的指令,將P1.0λP1.3四路通道的輸出全部置零,然后開始查詢狀態(tài)標(biāo)志位,這里的狀態(tài)標(biāo)志位有四位,分別對應(yīng)著P1.0λP1.3口,用來記錄四路通道中有哪幾路是有脈沖輸出的,有脈沖輸出的位被置1,沒有脈沖輸出的位被清0,狀態(tài)標(biāo)志位的置位與清零在接收中斷服務(wù)程序中完成;當(dāng)檢測到某一狀態(tài)標(biāo)志位為1時,便讓它所對應(yīng)的一路通
道開始輸出脈沖,脈沖的輸出寬度由接收中斷服務(wù)程序中接
收的上位機(jī)的指令來確定,從上位機(jī)指令中分離出脈寬數(shù)據(jù),然后再將脈寬數(shù)據(jù)轉(zhuǎn)換成定時器的計數(shù)個數(shù)存入指定的RAM單元備用,這一過程由脈寬轉(zhuǎn)換子程序來完成,具體的脈沖輸出過程敘述如下:檢測到第i位狀態(tài)標(biāo)志位為1,則讓P1.i口輸出低電平(i=1,2,3,4),記錄下開始輸出脈沖時定時器的初值,然后不斷的讀取定時器的值,定時器的溢出次數(shù)也要記錄,由定時器溢出中斷服務(wù)子程序完成,將這兩個值相減得到的差值與脈寬數(shù)據(jù)的定時器值相比較,如果相等則輸出脈寬達(dá)到要求,讓P1.i口輸出高電平,如果不相等則查詢下一位狀態(tài)標(biāo)志位,然后不斷重復(fù)以上的操作實現(xiàn)脈沖的輸出,狀態(tài)標(biāo)志位為零的通道輸出始終保持零。
2.2.2接收中斷服務(wù)程序
接收中斷服務(wù)程序的流程圖如圖5所示,接收中斷發(fā)生后首先要保護(hù)現(xiàn)場,然后將接收緩沖區(qū)內(nèi)的數(shù)據(jù)存到指定的存貯單元,根據(jù)通信協(xié)議和上位機(jī)之間所有的數(shù)據(jù)都以AsCⅡ碼形式傳輸,并加以累加和校驗,那么就需要驗證上位機(jī)傳送的指令正確性,將所有的數(shù)據(jù)相加,不計進(jìn)位所得的和與上位機(jī)發(fā)萬來方的數(shù)校據(jù)驗位比較,如果相等則向上位機(jī)反饋確認(rèn)信息,如果不相等則向上位機(jī)反饋報錯信息,當(dāng)檢測到指令是正確的,然后再對該指令進(jìn)行處理;首先要將接收的AsCⅡ碼形式的數(shù)據(jù)轉(zhuǎn)換為十六進(jìn)制形式的數(shù)據(jù),然后根據(jù)通信協(xié)議從指令中分離出脈沖輸出的通道號和脈寬數(shù)據(jù),根據(jù)脈沖輸出的通道號置相應(yīng)的狀態(tài)標(biāo)志位,所得的脈寬數(shù)據(jù)要經(jīng)過處理轉(zhuǎn)換為脈寬數(shù)據(jù)的定時器值存入RAM的指定單元備用,脈寬數(shù)據(jù)的處理由脈寬轉(zhuǎn)換子程序來完成;最后恢復(fù)現(xiàn)場,中斷返回,接收中斷服務(wù)程序結(jié)束。
2.2.3相關(guān)子程序
主程序和接收中斷服務(wù)程序中用到的子程序主要有脈寬轉(zhuǎn)換子程序,定時器溢出中斷服務(wù)子程序,脈寬判斷子程序,發(fā)送子程序,AsCⅡ碼到十六進(jìn)制的轉(zhuǎn)換子程序,十六進(jìn)制到AsCⅡ碼的轉(zhuǎn)換子程序等。脈寬轉(zhuǎn)換子程序主要實現(xiàn)的是將從上位機(jī)的指令中分離出來的脈寬數(shù)據(jù)轉(zhuǎn)換為定時器的計數(shù)值,從上位機(jī)的指令中分離出來的脈寬數(shù)據(jù)為兩位十六進(jìn)制數(shù)01HλFFH之間,它所代表的是0λ500Hz的脈沖輸出頻率,也就是說將0λ500Hz分成了255等分,每一等分代表的是500/255Hz;輸出脈沖的周期為頻率的倒數(shù),又因為輸出脈沖的占空比為50%,所以其周期的一半就是脈沖的高電平或低電平的寬度;該單片機(jī)系統(tǒng)的晶振為8MHz,其定時器T1的計數(shù)單位時間為2us,脈寬轉(zhuǎn)換的計算過程如下:
當(dāng)x<2時,y為三字節(jié),因此,需要進(jìn)行浮點數(shù)運算,浮點數(shù)運算對單片機(jī)系統(tǒng)來說是不利的;但如果將上式的分子拆分成兩部分,分別計算后再相加,就可以避免浮點數(shù)運算,而將其轉(zhuǎn)化成定點數(shù)運算,因而,上式可轉(zhuǎn)化為如下定點數(shù)運算:
然后將求得的脈寬定時器計數(shù)值按高低字節(jié)分別存入RAM指定單元供脈寬判斷子程序使用。
3結(jié)論
通過現(xiàn)場的調(diào)試嵌入式速度控制器在此稱重系統(tǒng)中反應(yīng)靈敏,運行穩(wěn)定,能夠快速而準(zhǔn)確的執(zhí)行上位機(jī)傳輸來的各種指令。經(jīng)過光電隔離的輸出脈沖波形比較穩(wěn)定,無明顯波動,抗干擾能力強(qiáng);直接輸出的脈沖波形受負(fù)載的影響較大,一般適用于負(fù)載干擾較小的情況;經(jīng)光電隔離的輸出脈沖為+12V電平,直接輸出的脈沖為TTL電平,可以根據(jù)現(xiàn)場的條件和需要選擇合適的輸出方式;該控制器具有Rs-232/485兩種通信方式,完全能夠滿足工業(yè)現(xiàn)場的各種通信要求。整個稱重系統(tǒng)通過了8000V非接觸式高壓沖擊試驗和6000V接觸式高壓沖擊試驗,性能可靠,工作穩(wěn)定,說明該嵌入式速度控制器完全達(dá)到系統(tǒng)的性能要求;該速度控制器的功能還可以進(jìn)一步加強(qiáng),如加入數(shù)字量的輸入/輸出功能,可以支持光電隔離的數(shù)字量輸入和繼電器輸出功能等,軟件方面可以加入一些智能算法,進(jìn)一步提高系統(tǒng)的輸出精度。該嵌入式速度控制器集成了一般嵌入式工控模塊的幾大功能,并可以根據(jù)現(xiàn)場的控制要求方便靈活的擴(kuò)展其功能,大大節(jié)約了系統(tǒng)集成的成本。
本文源于網(wǎng)絡(luò)轉(zhuǎn)載,如有侵權(quán),請聯(lián)系刪除