MITSUBISHI PLC模塊
聯(lián)系人;陳如(銷售經(jīng)理)
電話:0592-5085329
手機(jī):18030132586
QQ ;1151195663
誠(chéng)信經(jīng)營(yíng),質(zhì)量為,誠(chéng)信至上,真誠(chéng)為您服務(wù)
近年來我海關(guān)業(yè)務(wù)急劇增長(zhǎng),過境車輛的迅速增多迫切需要改進(jìn)海關(guān)驗(yàn)放方式。在深圳鹽田海關(guān)條碼識(shí)別系統(tǒng)的開發(fā)中,我們基于西門子S7-226 PLC構(gòu)造了一個(gè)分布式監(jiān)控系統(tǒng),在上位機(jī)的監(jiān)督管理下,利用PLC準(zhǔn)確快速地對(duì)過境車輛認(rèn)證,極大提高了海關(guān)的工作效率。
2 系統(tǒng)功能
如圖1,該系統(tǒng)是一個(gè)分布式海關(guān)條碼監(jiān)測(cè)系統(tǒng),它通過各閘口條碼掃描儀自動(dòng)識(shí)別經(jīng)過車輛的條碼標(biāo)志,從而判斷是否應(yīng)該放行以及應(yīng)當(dāng)采取的措施。系統(tǒng)根據(jù)讀單情況按預(yù)先設(shè)定流程動(dòng)作做相應(yīng)處理,包括開閘放行、落閘、各種非正常情況下的報(bào)警并自動(dòng)閉鎖、各項(xiàng)數(shù)據(jù)送上位機(jī)處理、接收上位機(jī)指令并相應(yīng)動(dòng)作、接收上位機(jī)組態(tài)命令等等,系統(tǒng)自動(dòng)檢測(cè)當(dāng)前工作狀況并能在出錯(cuò)的情況下安全退出。
3 系統(tǒng)結(jié)構(gòu)
過往車輛上的條碼由條碼掃描儀讀入并通過通訊轉(zhuǎn)換RS232/RS485送入S7 226 PLC 的Port0口,S7 226 PLC的Port1口連接PC機(jī)。
1. PLC S7-226
SIMATIC S7是西門子公司生產(chǎn)的具有很高的性能價(jià)格比的微型可編程序控制器,它具有結(jié)構(gòu)小巧,運(yùn)行速度高,價(jià)格低廉及多種集成功能等特點(diǎn)。它主要包括如下部件:
① 中央處理器(CPU) ②輸入和輸出(I/O) ③編程口
S7-226的編程環(huán)境
西門子公司專為SIMATIC S7-200系列PLC設(shè)計(jì)了編程軟件STEP 7 Micro/Dos和Micro/WIN V2.0以及當(dāng)前的*新版本Micro/WIN V3.2,它們主要用于用戶開發(fā)SIMATIC S7-200系列PLC的控制程序,以及實(shí)時(shí)監(jiān)控程序的執(zhí)行狀態(tài)。這兩種編程環(huán)境都方便易用。
S7-226的其它特性
① 高速計(jì)數(shù)器:高速計(jì)數(shù)器用來記錄電頻率高達(dá)7KHz的脈沖,并可連接兩個(gè)垂直900的脈沖串計(jì)數(shù)。使用s7-200可以更容易地定位,或?qū)焖僖苿?dòng)物體進(jìn)行計(jì)數(shù)。
② 口令保護(hù):由用戶定義的口令,可防止對(duì)可編程序控制器及其內(nèi)存進(jìn)行非法訪問。
③ EPROM存儲(chǔ)卡:為插入式內(nèi)存卡,用于存儲(chǔ)程序且不易丟失,以及無需編程設(shè)備進(jìn)行程序移植復(fù)制。
④ 模擬量調(diào)節(jié):模擬量調(diào)節(jié)是一種通過旋轉(zhuǎn)位子蓋板里面的微調(diào)電位器,來改變兩個(gè)用戶變量的硬件方法,這些變量可以手動(dòng)改變以實(shí)現(xiàn)微調(diào)控制。
⑤ 強(qiáng)制功能:可用于強(qiáng)制控制任何輸入和輸出點(diǎn)。強(qiáng)制功能,可以在RUN或STOP方式下使用。
⑥ 實(shí)時(shí)時(shí)鐘:可由程序指令訪問,用于控制日期。
⑦ 脈沖輸出:可選為兩個(gè)50%負(fù)載周期的脈沖串輸出控制,或特定的脈寬調(diào)制輸出控制。
⑧ 自由接口方式:用戶可用梯形圖編程來定義通訊口參數(shù),提供與不同智能設(shè)備的連接。
⑨ 特殊標(biāo)志:在可編程序控制口與你的程序之間提供狀態(tài)及控制功能的內(nèi)部數(shù)據(jù)位。
⑩ 符號(hào)地址:允許你在程序中使用名稱作為I/O點(diǎn)的地址。
2.條碼掃描儀
采用美Metrologic公司的MS700 i串行激光條碼掃描儀,掃描速度達(dá)2000線 / 秒,可靠掃描距離在0—7英寸區(qū)域內(nèi),在掃描區(qū)內(nèi)有20條激光掃描線,分五個(gè)方向?qū)l形碼進(jìn)行掃描,可選擇12種條形碼碼制,通過RS 232接口與PLC進(jìn)行通信。與CCD掃描儀相比,激光掃描儀讀率高,能高速掃描識(shí)讀任意方向通過的條碼且對(duì)操作者要求低,實(shí)際應(yīng)用中效果很好。
3.中文顯示屏
中文顯示屏使用自定義通信協(xié)議通過RS 485接口與PLC通信。
4 軟件設(shè)計(jì)
1、PLC軟件設(shè)計(jì)
(1)PLC與PC的通信及條碼識(shí)別
PLC與PC之間的通信采用RS-485/RS-232方式,信號(hào)的轉(zhuǎn)換由RS-232/RS-485轉(zhuǎn)換器完成。以下簡(jiǎn)要介紹S7-200系列與自由口功能有關(guān)的寄存器SMB2,SMB3,SMB30,它們主要用于自由口通訊方式的確定及運(yùn)行管理。
控制字寄存器SMB30用于存儲(chǔ)通訊方式控制字,由用戶寫入,屬于可讀寫的特殊標(biāo)志位寄存器。其格式如下:
mm:(通信協(xié)議)00 PPI協(xié)議(從機(jī))
01 自由口協(xié)議
10 PPI協(xié)議(主機(jī))
11 保留(缺省為PPI從機(jī))
bbb:(波特率) 000~111依次對(duì)應(yīng)38400 bps ~ 300 bps波特率
pp:(校驗(yàn)方式) 00 無校驗(yàn)
01 偶校驗(yàn)
10 無校驗(yàn)
11 奇校驗(yàn)
通訊接收字符緩沖器SMB2用于存放在自由口通訊方式下接收到的當(dāng)前字符,它是一個(gè)暫存寄存器,一般應(yīng)在下一步取走其中的內(nèi)容。
通訊校驗(yàn)結(jié)果寄存器SMB3,在作自由口通訊時(shí),PLC的通訊接口按由SMB30規(guī)定的奇偶校驗(yàn)方式對(duì)所接收到的信號(hào)作校驗(yàn)。若檢測(cè)到錯(cuò)誤,PLC自動(dòng)將SMB3.0置1,根據(jù)此標(biāo)志位,可決定當(dāng)前信息的取舍,同時(shí)還可在出錯(cuò)的情況下,將此錯(cuò)誤位發(fā)送給對(duì)方,以便要求它重發(fā)。
在S7 226 PLC中,集成了兩個(gè)RS485數(shù)據(jù)通訊端口,可使用專用的位通訊協(xié)議作波特率高達(dá)38.4kbit/s 的高速通訊,并可按步調(diào)整。
以下為PLC接收部分程序片段:
LD SM0.1 //個(gè)掃描周期接通
MOVB 9, SMB30 //初始化port0口
ATCH INT_0, 8 //指定port0口接收事件由中斷0處理
MOVD &VB101, VD96 //指針VD96指向VB101開始的V寄存器區(qū)
MOVD &VB0, VD36 //VD36也指向VB101開始的V寄存器區(qū)
MOVB 0, VB41 //接收字符個(gè)數(shù)清0
下面為中斷0片段(接收并存儲(chǔ)):
LD SM0.0 //一直接通
MOVB SMB2, *VD36 //只要接收到字符就存入指針VD36所指向的區(qū)域,
//即VB101開始的V寄存器區(qū)
INCD VD36 //指針下移,為接收并存儲(chǔ)下一字符作準(zhǔn)備
INCB VB41 //字符計(jì)數(shù)個(gè)數(shù)加一
當(dāng)PLC需要向PC傳送數(shù)據(jù)時(shí),可以通過以下代碼實(shí)現(xiàn):
PLC發(fā)送部分程序片段:
LD SM0.1 //個(gè)掃描周期接通
MOVB 9, SMB130 //初始化port1口
MOVB 14, VB100 //將14存入VB100中
XMT VB100,1 //指定port1口發(fā)送自VB101開始的V寄存器區(qū),
//發(fā)送字符個(gè)數(shù)由VB100的內(nèi)容決定
以下為PLC接收條碼并判斷部分:
LDB= SMB2, 10 //收到換行符,條碼結(jié)束
LPS
MOVD &VB0, VD36
AB<> VB41, 14 //總共收到條碼字符數(shù)不等于14,出錯(cuò),
S M0.1, 1 //置位M0.1
LRD
AB=VB41, 14 //總共收到條碼字符數(shù)等于14,正確,
R M0.1, 1 //復(fù)位M0.1
LPP
MOVB 0, VB41 //接收字符個(gè)數(shù)清0,為下一次接收作準(zhǔn)備
(2) 條碼掃描儀與PLC的通信
Metrologic MS700i可以通過開機(jī)掃描設(shè)置條碼而設(shè)定通信協(xié)議及條碼類型,并可以通過連機(jī)方式從一臺(tái)掃描儀“”工作方式從而達(dá)到成組設(shè)定的目的。條碼掃描儀與PLC之間的通信采用RS232/RS485方式,使用條碼掃描儀自帶通訊電纜。
(3) 顯示屏與PLC的通信
由PLC根據(jù)條碼掃描情況發(fā)送給顯示屏相應(yīng)的信息用以顯示當(dāng)前狀況,使用RS485通訊協(xié)議。通信格式為:頭尾各為十六進(jìn)制02和03以標(biāo)志信息起始,中間為ascii 碼的狀態(tài)信息。
2、上位機(jī)軟件設(shè)計(jì)
PC機(jī)的監(jiān)控程序用Delphi5.0完成,分為組態(tài)環(huán)境和運(yùn)行環(huán)境兩部分。組態(tài)環(huán)境下,用戶可對(duì)每一閘口進(jìn)行PLC參數(shù)、狀態(tài)設(shè)定及條碼設(shè)定;運(yùn)行環(huán)境下,對(duì)各閘口實(shí)時(shí)監(jiān)控,必要時(shí)發(fā)出控制命令,并具備歷史數(shù)據(jù)存儲(chǔ)和報(bào)表打印功能。
考慮通信方案如下:
(1) 引用VB的MsComm控件或第三方通信控件;
(2) 通過Delphi中嵌入?yún)R編直接對(duì)端口操作實(shí)現(xiàn)通訊(如BIOS串行通信功能調(diào)用 INT 14H);
(3) 調(diào)用Windows API 函數(shù)實(shí)現(xiàn);
由于方案1存在發(fā)布問題,方案2存在一定危險(xiǎn)性,所以在實(shí)際開發(fā)過程中我們采用方案3,通過CreateFile、CloseHandle、ReadFile、WriteFile、SetCommState、GetCommState等API函數(shù)及DCB設(shè)備控制塊的操作實(shí)現(xiàn)PC-PLC快速可靠的通信。