摘 要:本文對基于IPC (Industrial Personal Computer)的配合飼料控制系統(tǒng)的工作原理、硬件結(jié)構(gòu)和軟件編程進行了闡述。該系統(tǒng)采用了動態(tài)連接庫技術(shù)和多任務(wù)處理技術(shù)實現(xiàn)了對配合飼料過程的控制和管理。本人對動態(tài)連接庫技術(shù)已在貴刊發(fā)表過,在此主要講述多任務(wù)的實現(xiàn)方法,并給出實現(xiàn)這一方法的軟件流程圖,這一思想也適用于其它多任務(wù)系統(tǒng)的控制,具有較高的參考價值。
關(guān)鍵詞:I/O接口;多任務(wù);軟件設(shè)計
1 引言
Visual Basic(VB)是Microsoft 公司推出的一個集成開發(fā)環(huán)境,具有簡單易學(xué)、功能強大、軟件費用支出低等優(yōu)點。它提供了開發(fā)Windows 應(yīng)用程序最迅速、最簡捷的方法,不論是Windows 應(yīng)用程序的資深專家還是初學(xué)者,VB都為他們提供了整套工具,以方便開發(fā)應(yīng)用程序。VB中高度的封裝和模塊化減輕了編程者的負擔(dān),同時也使開發(fā)人員失去了許多訪問底層API函數(shù)和直接與Windows交互的機會,對接口硬件的控制和低級操作等方面顯得力不從心。但是在VB中可以調(diào)用Win32API函數(shù)或程序員自己用C/C++等開發(fā)一些動態(tài)連接庫,用于在VB中調(diào)用來完成VB中不可能完成的事,大大增強了VB的編程能力。這樣VB和動態(tài)連接庫既能方便地做出用戶滿意的界面,又能控制外部設(shè)備,本人就使用這一技術(shù)編寫了飼料廠配合飼料控制系統(tǒng)。
2 系統(tǒng)概述
IPC配合飼料控制系統(tǒng)用于飼料廠自動配料過程。該系統(tǒng)可對配料、混合流程進行自動控制。在配料過程中設(shè)計了系統(tǒng)流程的監(jiān)控界面、生產(chǎn)參數(shù)配置界面、換倉給料、暫停給料、點動下料、料柱自動跟蹤、打印每斗配料數(shù)據(jù)等功能,實現(xiàn)了配料過程自動化。
系統(tǒng)硬件配置采用高可靠性工業(yè)控制微機,與現(xiàn)場相連的開關(guān)量輸入、輸出接口電路板采用光電隔離技術(shù),提高了系統(tǒng)的抗干擾和穩(wěn)定性,延長了使用壽命。人機對話界面友好,完全符合Windows 界面規(guī)范,采用下拉菜單列出全部功能,界面圖示與中文提示相結(jié)合,無需專業(yè)培訓(xùn),按提示即可順利操作。
3 控制原理
配料時,給料電機放料至秤斗,秤斗重量發(fā)生變化,使傳感器輸出電信號發(fā)生變化,該信號經(jīng)放大板放大進入A/D板,轉(zhuǎn)換成數(shù)字量進入計算機。計算機按照程序要求對數(shù)字量分析比較,當(dāng)數(shù)字量遠小于設(shè)定植時,給料電機繼續(xù)下料;若接近給定值,則點動給料,每次點動的時間為2秒,若達到給定值,則關(guān)閉給料電機,啟動下一料倉電機。當(dāng)配方全部配完后,檢查混合機中無料時,控制秤斗門放料,料放空后關(guān)門,開始下一斗配料過程。
系統(tǒng)輸入信號包括:(1)荷重傳感器的毫伏級電壓信號;(2)秤斗門關(guān)應(yīng)答,用于檢測秤斗門是否關(guān)到位,當(dāng)關(guān)到位后給料電機才能啟動給料,如果超過設(shè)定的關(guān)門時間計算機仍沒檢測到秤斗門關(guān)應(yīng)答信號,系統(tǒng)報警提示用戶處理;(3)混合機門開應(yīng)答,當(dāng)混合機混合時間到后計算機控制混合機門打開,計算機開始檢測混合機門開應(yīng)答信號,開到位后開始計時,計時時間到關(guān)混合機,若超過開門時間仍未檢測到混合機開應(yīng)答信號,計算機報警提示處理;(4)混合機門關(guān)應(yīng)答,用于檢測混合機門是否關(guān)到位,方能打開秤斗門放料,若超時報警提示處理;(5)固體添加應(yīng)答,用于檢測固體添加劑是否已經(jīng)加入。
系統(tǒng)輸出信號包括:(1)對給料電機的控制;(2)對秤斗門的控制;(3)對混合機開門控制;(4)對混合機關(guān)門控制;(5)固體添加劑提示;(6)液體添加劑控制。
4 系統(tǒng)硬件配置
系統(tǒng)硬件配置如圖1所示。
[align=center]
圖1 系統(tǒng)硬件配置[/align]
A/D板選用的是型號AB1057,本板輸入8通道模擬電壓,輸入范圍:0—5V。DI/DO板選用AB720,32通道數(shù)字輸入 TTL電平,輸入范圍:0V或5V,32通道數(shù)字輸出 TTL電平, 輸出范圍:0V或5V。光電隔離數(shù)字量輸入板選用AB782,8通道光電隔離數(shù)字輸入,輸入范圍:12V,輸出范圍:0V或5V。固態(tài)繼電器輸出板選用AB786,16通道固態(tài)繼電器輸出板,輸入范圍:0V或5V,輸出范圍:220VAC。信號調(diào)理放大板選用AB001,輸入范圍:0—50毫伏,輸出范圍:0—5V。
5. 系統(tǒng)軟件設(shè)計
本系統(tǒng)軟件主要有系統(tǒng)管理模塊、配置生產(chǎn)參數(shù)模塊、系統(tǒng)調(diào)試模塊、生產(chǎn)監(jiān)控模塊等組成。其中最主要的部分是生產(chǎn)監(jiān)控模塊,也是本系統(tǒng)的控制核心,在生產(chǎn)監(jiān)控過程中,系統(tǒng)要同時執(zhí)行多項任務(wù):自動配料、混合機混合控制、固體添加控制、油脂添加控制、打印每斗生產(chǎn)數(shù)據(jù)、執(zhí)行用戶各種請求(包括:生產(chǎn)過程換倉給料、暫停生產(chǎn)、恢復(fù)生產(chǎn)、是否實時打印數(shù)據(jù)、退出生產(chǎn)等等),這些任務(wù)都是根據(jù)生產(chǎn)工藝要求在滿足一定條件下執(zhí)行的,為了實現(xiàn)這一功能,本人在設(shè)計監(jiān)控過程中為每個任務(wù)都分別編寫了任務(wù)模塊,例如:執(zhí)行配料過程的配料過程模塊、執(zhí)行混合任務(wù)的混合機混合模塊、執(zhí)行打印任務(wù)的打印生產(chǎn)數(shù)據(jù)模塊等等,在執(zhí)行各個模塊時在監(jiān)控畫面中系統(tǒng)都會動態(tài)顯示其進程,同時給予必要的提示信息。怎樣實現(xiàn)這些多任務(wù)按照工藝要求有條不紊的執(zhí)行是此配料系統(tǒng)的關(guān)鍵,本人很成功地解決了這一問題,并把此方法用于其它多任務(wù)的生產(chǎn)控制過程中,實踐表明效果很好。在此我主要介紹一下這部分軟件的實現(xiàn)過程并給出軟件流程圖。主程序循環(huán)判斷各個任務(wù)是否滿足執(zhí)行的條件,如果滿足執(zhí)行的條件就啟動該任務(wù),每個任務(wù)都單獨編寫了任務(wù)模塊,如果不滿足執(zhí)行的條件主程序繼續(xù)判斷下一個任務(wù)…,這一思想也適合于其它語言編寫的多任務(wù)控制。主程序循環(huán)流程如圖2所示。
[align=center]
圖2 主程序循環(huán)流程圖[/align]
6 結(jié)束語
本系統(tǒng)已在飼料廠的自動配料生產(chǎn)過程中得到廣泛應(yīng)用。實踐表明,系統(tǒng)具有操作簡單、運行可靠、功能強大、配料精度高等特點,并獲得河北省科技成果獎,取得了較大的經(jīng)濟效益和社會效益,具有很強的實用價值和推廣價值。
本文作者的創(chuàng)新點:控制系統(tǒng)多任務(wù)的設(shè)計方法。這種設(shè)計方法適用于用多種語言來實現(xiàn)生產(chǎn)過程的多任務(wù)的控制。
參考文獻:
[1] 徐惠攀 王典洪 孔令彬 章璐.基于PCC的水輪機組現(xiàn)地控制單元的設(shè)計與實現(xiàn).微計算機信息,2006,1-1:P6-8。
[2]李懷明 駱原 王育新著 Visual Basic6.0中文版參考詳解清華大學(xué)出版社。 2000年
[3]譚浩強著 Visual Basic程序設(shè)計 清華大學(xué)出版社。2004年