當(dāng)前位置:歐亞貿(mào)易網(wǎng) > 技術(shù)中心 > 所有分類
| 防爆電子秤通信及數(shù)據(jù)庫(kù)管理系統(tǒng) | 2020-01-13 |
| 摘要:針對(duì)現(xiàn)代工業(yè)行業(yè)廣泛應(yīng)用的電子秤系統(tǒng)管理問(wèn)題,提出了一種新的系統(tǒng)開(kāi)發(fā)模式,采用Mi—crosoft公司的高級(jí)計(jì)算機(jī)語(yǔ)言VB6.0與常用數(shù)據(jù)庫(kù)系統(tǒng)Access2000開(kāi)發(fā)電子秤數(shù)據(jù)管理系統(tǒng),結(jié)合SI—EMENS公司工業(yè)稱重儀表PIc,通過(guò)計(jì)算機(jī)COM口串行通信方式組成工業(yè)配料系統(tǒng)。該稱重在計(jì)算機(jī)上不僅可實(shí)現(xiàn)防爆電子秤數(shù)值的記錄、保存、查詢和歸檔等管理功能,還可以進(jìn)行工業(yè)工藝流程控制。配料系統(tǒng)VB數(shù)據(jù)庫(kù)程序及VB與PIC通信程序的開(kāi)發(fā)過(guò)程。 對(duì)于自動(dòng)化配料系統(tǒng)中的自動(dòng)防爆電子地磅或者單臺(tái)自動(dòng)防爆電子秤配料系統(tǒng),傳統(tǒng)的稱重控制方法為PLC與RS485口直接通訊或者采用模擬量輸入、輸出模塊組態(tài)系統(tǒng),這樣的系統(tǒng)不僅成本高,而且編程調(diào)試比較復(fù)雜,人機(jī)交互界面較差。基于此問(wèn)題,我們開(kāi)發(fā)了一種經(jīng)濟(jì)型自動(dòng)防爆電子秤系統(tǒng),主要控制界面由面向?qū)ο蟾呒?jí)語(yǔ)言VB6.0與數(shù)據(jù)庫(kù)系統(tǒng)Access2000開(kāi)發(fā)完成,而工業(yè)稱重儀表PLC執(zhí)行生產(chǎn)工藝控制,VB程序可編譯成獨(dú)立執(zhí)行EXE文件或者SETUP安裝文件,便于使用和移植。為了便于介紹,本文以單臺(tái)防爆電子秤配料系統(tǒng)為例介紹該系統(tǒng)的開(kāi)發(fā)方法。 1稱重系統(tǒng)主要任務(wù)及構(gòu)成 1.1稱重系統(tǒng) 主要任務(wù)當(dāng)配料系統(tǒng)接收到需執(zhí)行防爆電子地磅信號(hào)時(shí),防爆電子秤裝置開(kāi)始執(zhí)行防爆電子地磅,防爆電子秤信息通過(guò)數(shù)據(jù)采集卡或者計(jì)算機(jī)COM1口被接收,然后通過(guò)VB程序?qū)⒃摂?shù)值寫(xiě)入用戶預(yù)定義的數(shù)據(jù)庫(kù)中,程序可以將該數(shù)據(jù)自動(dòng)添加到數(shù)據(jù)庫(kù)中去,數(shù)據(jù)庫(kù)可提供添加、查找、刪除和打印等管理功能,方便用戶操作管理數(shù)據(jù)。 1.2稱重系統(tǒng)構(gòu)成 防爆電子秤通訊及管理系統(tǒng)由防爆電子地磅機(jī)械系統(tǒng)和控制及管理系統(tǒng)組成。防爆電子秤機(jī)械系統(tǒng)主要由支撐架、升降氣缸、防爆地磅和稱臺(tái)支架等組成;控制及管理系統(tǒng)主要由工業(yè)計(jì)算機(jī)、PLC、防爆電子秤稱重模塊和中問(wèn)繼電器等組成,軟件系統(tǒng)采用Microsoft公司的VB6.0和Access2000,SIEMENS公司的STEP7V5.4。如果存在多臺(tái)防爆地磅,可通過(guò)網(wǎng)絡(luò)集線器組建EN—THERNET進(jìn)行485通信網(wǎng)絡(luò)擴(kuò)展,本文以單臺(tái)防爆地磅232通信方式為例介紹系統(tǒng)組成結(jié)構(gòu),如圖1所示。 2VB程序開(kāi)發(fā) 經(jīng)濟(jì)型電子秤數(shù)據(jù)傳輸主要是串口通信,即電子秤的輸出信號(hào)可以通過(guò)RS232口輸出,該通信協(xié)議正匹配工業(yè)計(jì)算機(jī)的C0M口,對(duì)于獲取COM通信處理,我們使用VB中成熟的非標(biāo)準(zhǔn)控件MSComm,它具有事件驅(qū)動(dòng)和查詢2種通信方式。由于需要在程序事件發(fā)生時(shí)主控程序會(huì)被告知,因此采用事件驅(qū)動(dòng)的通信處理方法,對(duì)該控件對(duì)象的部分屬性依據(jù)防爆地磅的實(shí)際通訊需求進(jìn)行賦值處理,就可以實(shí)現(xiàn)計(jì)算機(jī)與防爆地磅的通訊連接。程序操作界面簡(jiǎn)單設(shè)置為登陸窗口,主要控制窗口及報(bào)表打印窗口,依據(jù)實(shí)際需要可進(jìn)行窗口擴(kuò)展。 為此,設(shè)計(jì)串口通信程序,MSComm通信程序舉例說(shuō)明如下:PrivateSubForm—Load()在PrivateSubForm—Load()在窗體加載事件中執(zhí)行如下代碼WithMSComm1.CommPort=1設(shè)置串行口為COM1.Settings=”1200,n,7,1”設(shè)置波特率為1200,無(wú)奇偶校驗(yàn),7位數(shù)據(jù)位,1位停止位.InputMode=comlnputModeText設(shè)置數(shù)據(jù)接收為字符串方式.InputLen=0讀取緩沖區(qū)的所有內(nèi)容.RThreshold=1每接收到1個(gè)字節(jié)就觸發(fā)一次On~Comm事件.PortOpen=True"打開(kāi)串口EndWith 3Access2000數(shù)據(jù)庫(kù)開(kāi)發(fā) 3.1數(shù)據(jù)庫(kù)功能與技術(shù)要求 數(shù)據(jù)庫(kù)系統(tǒng)可實(shí)現(xiàn)數(shù)據(jù)的添加、刪除、查找和顯示等功能,數(shù)據(jù)表字段顯示日期時(shí)間、型號(hào)和質(zhì)量等信息。數(shù)據(jù)庫(kù)軟件結(jié)構(gòu)如圖2所示。 3.2數(shù)據(jù)庫(kù)開(kāi)發(fā)過(guò)程 首先要在Access中創(chuàng)建一個(gè)新的數(shù)據(jù)庫(kù),命名為“BB”(可任意命名),然后創(chuàng)建ODBC數(shù)據(jù)源,打開(kāi)“ODBC數(shù)據(jù)源管理器”,單擊“添加按鈕”,在彈出的對(duì)話框中選擇MicrosoftAccessDriver(*.mdb),單擊“完成”按鈕,接下來(lái)設(shè)置數(shù)據(jù)源名為“AB”,選擇數(shù)據(jù)源鏈接的數(shù)據(jù)庫(kù),單擊“確定”按鈕就完成了創(chuàng)建。在VB程序中,用ActiveX數(shù)據(jù)對(duì)象(簡(jiǎn)稱ADO控件)鏈接數(shù)據(jù)庫(kù)。ADO技術(shù)是Mircrosoft公司開(kāi)發(fā)的數(shù)據(jù)庫(kù)應(yīng)用程序面向?qū)ο蟮男陆涌冢珹DO技術(shù)可以訪問(wèn)包括關(guān)系數(shù)據(jù)庫(kù)和非關(guān)系數(shù)據(jù)庫(kù)在內(nèi)的所有文件系統(tǒng),使應(yīng)用程序具有較好的靈活性和通用性,ADO中最主要的3個(gè)對(duì)象是Connection、Command和Recordset。Connection對(duì)象主要用于設(shè)置訪問(wèn)數(shù)據(jù)源所需的鏈接;Command對(duì)象主要用于設(shè)置訪問(wèn)數(shù)據(jù)源所需的命令;Recordset對(duì)象主要用來(lái)存放從結(jié)果中取回的記錄,它可以瀏覽記錄,增加、修改、刪除記錄,并可將已經(jīng)修改的記錄回傳給數(shù)據(jù)源。采用使用代碼的方法來(lái)實(shí)現(xiàn)與數(shù)據(jù)庫(kù)的鏈接。在窗體的FORMLOAD事件中輸入如下主要代碼。PrivateSubForm_Load()Adodc1.C0nnectionString一”Provider—Microsoft.Jet.OLEDB.4.0;DataSource=F:\11\AB.mdb;PersistSecurity—InfoFalse”‘鏈接數(shù)據(jù)庫(kù)Adodc1.RecordSource=”select*fromAB”‘鏈接數(shù)據(jù)表SetDataGrid1.DataSource=Adodcl設(shè)置顯示表格記錄字段值當(dāng)VB程序成功接收到防爆電子秤數(shù)據(jù)時(shí),可自動(dòng)寫(xiě)入用戶的數(shù)據(jù)庫(kù)中,用戶也可以在數(shù)據(jù)處理使用后再寫(xiě)入數(shù)據(jù)庫(kù)中,主要代碼如下。PrivateSubMSComml—OnComm()‘當(dāng)端口被激活時(shí)WithAdodc1.Recordset.AddNew.ReCordset.Fields(1):Date&””&Time‘記錄時(shí)間日期I.Recordset.Fields(2)一Text2.Text記錄字段2內(nèi)容.Recordset.Fields(3)一Text1.Text‘記錄字段3內(nèi)容……………………………….‘記錄字段N內(nèi)容.Recordset.Update.RecordSource=”select*from表2”Refresh4 PLC程序開(kāi)發(fā) PLC程序開(kāi)發(fā)應(yīng)以實(shí)際工藝流程和工藝技術(shù)指標(biāo)為條件,簡(jiǎn)單介紹一種自動(dòng)防爆電子秤工藝流程。當(dāng)PLC接收到防爆電子秤裝置執(zhí)行信號(hào)時(shí),防爆電子秤氣缸升起,防爆地磅執(zhí)行防爆電子秤,數(shù)據(jù)傳送,防爆電子秤完畢,防爆電子秤氣缸下降,等待下一次稱量。此外PLC程序開(kāi)發(fā)簡(jiǎn)單,讀者可自行開(kāi)發(fā)設(shè)計(jì),還可以根據(jù)生產(chǎn)實(shí)際需要開(kāi)發(fā)HMI界面等功能。 5VB程序與PLC程序的關(guān)聯(lián)實(shí)現(xiàn) 5.1VB與PLC獨(dú)立 控制如果防爆電子秤系統(tǒng)是開(kāi)環(huán)控制類型,則VB程序只需記錄數(shù)據(jù)到數(shù)據(jù)庫(kù)中即可,無(wú)須反饋給PLC指令。也就是說(shuō)VB和PLC控制是分別獨(dú)立的配料系統(tǒng),各行其責(zé),它們之間無(wú)須進(jìn)行通信處理。 5.2VB與PLC聯(lián)合控制 如果防爆電子秤系統(tǒng)是閉環(huán)控制類型,則VB成功接收數(shù)據(jù)后需要向PLC發(fā)送指令,以驅(qū)動(dòng)PLC內(nèi)部程序,此時(shí)需要上位機(jī)PC與下位機(jī)PLC實(shí)現(xiàn)通信連接。繼續(xù)使用前文介紹過(guò)的MSComm控件來(lái)實(shí)現(xiàn)VB與PLC的通信。計(jì)算機(jī)與西門子PLC進(jìn)行通信時(shí)必須遵守西門子PLC300的PPI(PointtoPoint)協(xié)議,該通訊協(xié)議采用主從式的通訊方式,一次讀寫(xiě)操作的步驟為: 1)PLC配料系統(tǒng)要求發(fā)送數(shù)據(jù)時(shí),計(jì)算機(jī)會(huì)發(fā)送一組帶有前導(dǎo)碼的字符串。在前導(dǎo)碼之后便是站號(hào),站號(hào)之后便是要配料系統(tǒng)解讀的命令或數(shù)據(jù); 2)當(dāng)PLC配料系統(tǒng)收到要求字符串并經(jīng)過(guò)判讀確定后,便會(huì)送出計(jì)算機(jī)所要求的數(shù)據(jù)。同時(shí),數(shù)據(jù)被送出時(shí)會(huì)在數(shù)據(jù)之前加上前導(dǎo)碼與站號(hào),計(jì)算機(jī)也以此前號(hào)碼與站號(hào)辨別數(shù)據(jù)來(lái)自何處; 3)計(jì)算機(jī)端收到配料系統(tǒng)發(fā)送回來(lái)的字符串即進(jìn)行解讀檢查的操作。當(dāng)檢查完成后,便再送出一個(gè)確定的字符串給配料系統(tǒng),用以說(shuō)明計(jì)算機(jī)端已成功接收到字符串;而若發(fā)送失敗,計(jì)算機(jī)也會(huì)在所送的字符串中要求配料系統(tǒng)重新發(fā)送數(shù)據(jù)。通過(guò)以上步驟我們可以看出,計(jì)算機(jī)和PLC通過(guò)收發(fā)2次數(shù)據(jù),才完成1次數(shù)據(jù)的讀寫(xiě)。數(shù)據(jù)通信字符串流動(dòng)情況如圖3所示。 6結(jié)語(yǔ) 稱重系統(tǒng)采用VB6.0與Access2000開(kāi)發(fā)的防爆電子秤數(shù)據(jù)庫(kù)管理系統(tǒng)與PLC配料系統(tǒng)相組合,方便地實(shí)現(xiàn)了數(shù)據(jù)通訊功能和生產(chǎn)工藝要求。這種防爆電子秤系統(tǒng)具有開(kāi)發(fā)成本低廉、難度低和可操作性強(qiáng)的特點(diǎn)。通過(guò)實(shí)際生產(chǎn)表明,該系統(tǒng)穩(wěn)定可靠,并且可以根據(jù)實(shí)際需求進(jìn)行程序升級(jí)和功能擴(kuò)展,因此該系統(tǒng)模式適用于多種形式的防爆電子秤場(chǎng)合,值得推廣應(yīng)用。 | |