咨詢電話
ENGLISH0755-88840386發(fā)布時間:2021-03-11 17:52:13 |來源:網絡轉載
本文介紹了結合PVC自動監(jiān)控配混料系統(tǒng)項目的開發(fā),介紹了歐姆龍C200HE串行通信接口的工作機制與特性,主要分析了在Delphi環(huán)境中實現上位機和C200HE監(jiān)控系統(tǒng)的串行通信技術,并給出了部分關鍵程序。實際應用表明,給設計簡單實用,性能可靠,對其他同類型的控制系統(tǒng)的設計有一定的借鑒作用。
由于該混配料系統(tǒng)配置靈活、可靠性高以及結構開放等優(yōu)點,PLC被廣泛應用于工業(yè)控制領域中,在此類控制系統(tǒng)中,一般均為兩級遞階結構,一是智能數據采集系統(tǒng),也就是通常所說的下位機;二是數據處理和顯示系統(tǒng),即上位機HMI(HumanMachineInterface)系統(tǒng)。上位機(微計算機、工業(yè)控制機)完成采集數據信息的存儲、事件記錄與處理、參數設定、狀態(tài)顯示、高級復雜算法等功能,實現系統(tǒng)的實時監(jiān)控。下位機(PLC),主要完成數據采集、狀態(tài)判別、輸入輸出控制等。工控機與PLC組成的主從式實時監(jiān)控系統(tǒng),是自動控制、計算機應用、信號檢測與處理、通信等技術的綜合應用,能夠充分發(fā)揮各自在工業(yè)控制中的優(yōu)勢,在此類控制系統(tǒng)中,上下位機的通信是其關鍵技術之一。
1PVC自動配混料IPC-PLC監(jiān)控系統(tǒng)
系統(tǒng)結構如圖1所示,它通過智能稱重儀表、位置開關、溫度傳感器等設備來獲取系統(tǒng)當前時刻的各項參數,并結合上位機IPC(IndustrialPersonalComputer)的設置參數與操作指令來自動完成系統(tǒng)的工藝流程,實現PVC工藝的自動上料、計量、配混料及系統(tǒng)保護等功能,同時將系統(tǒng)的各項信息反饋給上位機,由上位機進行計量的實時顯示、配方的存儲與調用、自動報警、報表打印,并通過工業(yè)以太網實現遠程監(jiān)控。
2 通訊協(xié)議
本系統(tǒng)中上位機與OMRONCH200通過HOSTLINK單元及串行總線互聯而成的RS-232C總線上位連接系統(tǒng)而進行信息交換,上位連接系統(tǒng)是一種主從式總線型局域網,它以上位機為該工業(yè)網中的通信主站,其它連入該網的PLC皆為從站,其通信采用主從輪詢的方式:上位機始終具有初始傳送優(yōu)先權,所有通訊均由上位機來啟動,向從站發(fā)送數據或者從從站中讀取數據都是主站以命令幀形式發(fā)送,對于主站發(fā)來的命令幀,從站用響應幀應答,當命令幀很長時,需要分成幾幀發(fā)送。
在命令幀或響應幀中包含著需要通信的數據,只要實現命令幀與響應幀的應答,才能使要交換的數據順利到達對方。
為確保上下位機之間能正確交換數據,必須制定相互遵循的通訊規(guī)約,OMRON專用協(xié)議是OMRON專用協(xié)議是3層協(xié)議,即物理層、數據鏈路層及應用層。因為編寫通信程序是基于應用層進行的,因此我們只關心命令幀與響應幀格式,只要我們編寫的通信程序發(fā)出的命令幀格式完全符合OMRON專用協(xié)議,PLC就一定能理解。對PLC發(fā)回的響應幀,我們必須按其格式進行拆裝、識別,才能正確分離出交換數據及有用狀態(tài)信息。
上位機的命令幀由不固定的字節(jié)數組成,針對不同的識別碼有不同的幀長度。但基本格式大體一致。本文以讀DM區(qū)數據的命令幀為例,如圖2所示,其中@符號必須置于每個命令幀的開頭;節(jié)點號為主站所尋找的目標地址(設備號),設置在PLCDM區(qū)的DM6648的00~07位中,為00~31(BCD碼),響應幀中也必須帶上同一設備號,告訴主站以與哪一個從站建立了通信;識別碼,由2英文字母組成的命令代碼,它表示通信命令(如RD,RH,WD,TS,MM等);起始字,也就是起始偏移地址(0~9999);字數,為數據個數(n=1~10000,若讀10,000個字,被讀字數用0000表示);FCS,幀檢查順序碼,為2個ASCII字符的8位數據,其計算方法為其前面除@符號字節(jié)的所有字節(jié)的異或值;終止符,設置成“*”和回車(CHR$(13))兩字符,表示命令結束。
上位機讀DM區(qū)命令的PLC相應的響應幀格式,對比之下,其中結束碼表示命令完成的狀態(tài)(即,是否有錯誤發(fā)生),有代碼00、13、A8等形式,分別代表正常結束、FCS錯誤、傳送數據時因幀長度錯誤引起中止等含義。例如,發(fā)送一讀第10號從站的DM區(qū)DM0031和DM0032數據的命令幀“@10RD00310002##﹡↙”(其中##表示校驗字節(jié))后,收到的響應幀為“@10RD00000A012C##﹡↙”,表示順利讀出第10號從站DM0031和DM0032內的數據值分別為10和300。
3上下位機軟件設計
1)上位機程序設計
上位機監(jiān)控程序采用Delphi設計語言,總體分為組態(tài)環(huán)境和運行環(huán)境。
上位機程序中最關鍵的是要和PLC進行實時通信,Delphi利用串口通信有三種方式:
⑴利用VB中的ActiveX控件(MsComm.OCX)或第三方通信控件。⑵通過WindowsAPI函數。⑶通過Delphi中嵌入匯編直接操作端口實現通訊(如BIOS中調用INT14H串行通信功能)。
其中調用WindowAPI函數需要在VB開發(fā)的應用程序中添加外接的API程序和必需的通信協(xié)議參數設置,實際使用比較繁瑣。而通過Delphi中嵌入匯編直接操作端口實現通訊的方式需要以內嵌匯編的方式自己編寫模塊,使用時,再加入到工程文件中,設計過程中用戶還需了解CPU和板卡的支持速度,給整個軟件設計中帶來一定的難度。與前兩種方法相比較,利用VB中的MsComm控件實現串行通信更為簡單,因為它已經把Windows的編程復雜性封裝起來且提供了使用RS-232C進行通信的所有協(xié)議和標準的事件處理函數、過程、屬性和方法,用戶可以很方便地使用屬性來完成通信格式參數地設置,并通過事件驅動方式來實現通信軟件的開發(fā)。
配混料系統(tǒng)采用MSComm控件實現,由于數據以命令幀與應答幀的形式來完成通信,所以通訊方式應設為二進制傳輸,即MSComm1.InputMode:=1,上下位機的通訊參數選用OMRON所規(guī)定的標準端口參數,即MSComm1.Setting:=“9600,E,7,2”。下面以一函數為例說明怎樣發(fā)送命令幀,此函數用于讀出10號從站數據存儲區(qū)DM0031、DM0032中的數值。
var
dm_read:variant;
begin
dm_read:=VarArrayCreate([0,10],varbyte);//創(chuàng)建11字節(jié)的數據幀
dm_read[0]:=40;//幀開頭標志@的ASCLL碼的十六進制數
dm_read[1]:=10;//節(jié)點號BCD碼
dm_read[2]:=52;//指令代碼R的ASCLL碼的十六進制數
dm_read[3]:=44;//指令代碼D的ASCLL碼的十六進制數
dm_read[4]:=0;//偏移地址高兩位的BCD碼
dm_read[5]:=31;//偏移地址低兩位的BCD碼
dm_read[6]:=0;//字數高兩位的BCD碼
dm_read[7]:=2;//字數低兩位的BCD碼
dm_read[8]:=10xor52xor44xor0xor31xor0xor2;//校驗字節(jié)
dm_read[9]:=2A;//終止符*的ASCLL碼的十六進制數
dm_read[10]:=0D;//終止符回車CR的ASCLL碼的十六進制數
MsComm1.Output:=dm_read;
end;
2)下位機編程實現
OMRONC200HX系列與RS232串口功能有關的寄存器為DM6645、DM6646、DM6649和專用繼電器SR264,它們主要用于RS-232C串口通訊方式的設置及與運行管理。
數據存儲器DM6648用于存儲通訊方式控制字,可由用戶在編程方式下直接設置,屬于可讀寫的特殊標志位寄存器,其格式如下:
D15~D08 D07~D00
幀格式 波特率
位D00~D07中波特率代碼00~04依次對應19.2~1.2Kbps波特率。位D08~D15中幀格式代碼00~11主要設置起動位、數據長度(7位或8位)、停止位(1位或2位)、檢驗方式(奇校驗或偶校驗)。
本系統(tǒng)使用的為標準通訊方式:1個起動位,7個數據位,偶校驗,2個停止位,9600bps。
通訊過程的各種情況標志實時存儲于專用繼電器SR264中。專用繼電器SR264D00~D15位的功能標志為:
D00~D03RS-232C端口錯誤碼信息
0000:沒有錯誤;0001:奇偶校驗錯誤;0010:幀錯誤;0011:運行錯誤;
0100:FCS錯誤;0101:超時錯誤;0110:校驗和錯誤;0111:命令錯誤;
D04:RS-232C端口通信錯誤;
D05:RS-232C端口發(fā)送準備好標志;
D06:RS-232C端口接收完成標志;
D07:RS-232C端口接收溢出標志;
PLC在接收上位機發(fā)來的命令幀之前,先檢查SR26406(RS-232C端口接收結束標志)是否為ON;為ON則使用接收指令接收數據,執(zhí)行接收指令時將接收完成標志位置OFF,同時將接收到的數據傳遞到指定的字中,讀取接收的數據而產生的狀態(tài)存儲在SR264存儲器中。PLC根據繼電器SR264中對應的標志位D04~D07的狀態(tài),決定當前信息的取舍,同時還可在出錯的情況下將此錯誤標志位發(fā)送給上位機,以便要求重發(fā)。
PLC在與上位機的通信過程中,還有可以使用TXD(-)和RXD(-)指令與通信協(xié)議宏功能來控制同各種裝有RS-232C或RS-422/485端口的通用器件或通訊設備的數據的接收與發(fā)送。
下位機OMRONC200HX系列在配混料系統(tǒng)上電后,就立即執(zhí)行“清理IR區(qū)并復位所有的定時器”、“檢查I/O單元的連接”、“復位監(jiān)視定時器”這最初的三個操作,剩余的各個操作均以掃描的形式執(zhí)行,該掃描包括九項基本操作:監(jiān)督過程、執(zhí)行程序、計算掃描周期、I/O刷新、RS-232連接處理、上位機鏈接服務、外圍設備服務、通信板服務、SYSMACLINK和SYSMACNET鏈接單元服務。
4結語
Delphi在開發(fā)可視化環(huán)境下的監(jiān)控系統(tǒng)時有其獨特的優(yōu)勢,本配混料監(jiān)控系統(tǒng)采用了點對點的主從應答方式,實現了PLC與上位機的串行通信。經現場調試及運行表明,該系統(tǒng)具有可靠性高、實時性等優(yōu)點。隨著串行通信設備的不斷集成化,該混料系統(tǒng)可以更好地移植于其它工業(yè)測控系統(tǒng)和分布式監(jiān)控系統(tǒng)中。
本文源于網絡轉載,如有侵權,請聯系刪除
深圳市卓禾儀器有限公司是一家專門從事稱重儀表和全自動包裝碼垛生產線的研發(fā)及生產的高新技術企業(yè),所生產的JY500系列稱重顯示控制器(包括配料秤儀表、皮帶秤儀表、包裝秤儀表、重量變送器等)高速高精度,使用壽命長。卓禾儀器有十數年的現場校驗經驗,在業(yè)內有良好的口碑,且有專門的售后工程師幫忙解決產品使用過程中遇到的技術問題,客戶可以放心省心順心的使用我司的產品。如果對我司的產品感興趣,歡迎咨詢。