PLC與PC機(jī)的串行通訊在數(shù)控管切割機(jī)中的應(yīng)用
點(diǎn)擊:1550
A+ A-
所屬頻道:新聞中心
1引言
桁架結(jié)構(gòu)在現(xiàn)今的許多大跨度的場(chǎng)館建筑中有廣泛運(yùn)用,它是由管與管相貫搭接后焊接而成的。傳統(tǒng)人丁切割出管材的相貫線比較困難,而且效率低。精度不高,迫切需要現(xiàn)代化的切割機(jī)床來(lái)切割管件。PLC因其高效、靈活、可靠、抗千擾能力強(qiáng)等優(yōu)點(diǎn)阿,可以在底層完成指導(dǎo)數(shù)控機(jī)床各個(gè)軸的運(yùn)動(dòng)的任務(wù),但是其無(wú)法獨(dú)自克服人機(jī)交互能力差、數(shù)據(jù)的計(jì)算能力弱等缺點(diǎn),而PC機(jī)卻有人機(jī)交互界面好、計(jì)算能力強(qiáng)等優(yōu)點(diǎn)。實(shí)現(xiàn)PLC與上位機(jī)的數(shù)據(jù)通訊,可以綜合二者的優(yōu)點(diǎn).構(gòu)成自動(dòng)化切割管件的最優(yōu)數(shù)控系統(tǒng)。將PC和PLC結(jié)合起來(lái)實(shí)現(xiàn)管切割機(jī)的運(yùn)動(dòng)控制,關(guān)鍵是實(shí)現(xiàn)PC與PLC之間的通訊。以橫河PLC為例,研究了PLC與PC通訊的原理,實(shí)現(xiàn)了通過(guò)VB編寫(xiě)應(yīng)用程序?qū)⒓庸?shù)據(jù)輸入到PLC指定的數(shù)據(jù)寄存器中。
2 系統(tǒng)構(gòu)成
一臺(tái)五軸四聯(lián)動(dòng)管材相貫線切割數(shù)控機(jī)床的示意圖,如圖1所示。底層采用橫河PLC+運(yùn)動(dòng)控制模塊+伺服電機(jī)對(duì)五根軸進(jìn)行控制。加_T過(guò)程的運(yùn)動(dòng)為:切管繞Y軸做回轉(zhuǎn)運(yùn)動(dòng),同時(shí)割咀工作臺(tái)沿Y1軸和Z2軸做卣線運(yùn)動(dòng)切割出相貫線,割咀繞 軸做擺動(dòng),五為一確定值(切割半徑與割咀長(zhǎng)度之和),使之在切割相貫線的同時(shí)切割出坡口,一次定位安裝完成管切割,減少多次切割的加工誤差和定位誤差。整個(gè)系統(tǒng)的運(yùn)行,如圖2所示。在PC機(jī)中運(yùn)行相貫線的計(jì)算軟件,用戶通過(guò)人機(jī)界面,輸入管徑、壁厚、管與管的軸交角等參數(shù),軟件自動(dòng)計(jì)算出相貫線上點(diǎn)的坐標(biāo)和切割坡口的實(shí)際切割角,并將這些數(shù)據(jù)轉(zhuǎn)化為PLC的控制數(shù)據(jù),通過(guò)RS232總線將PC與PLC點(diǎn)對(duì)點(diǎn)的連接起來(lái),將數(shù)據(jù)傳遞給PLC進(jìn)行加工。
圖1 數(shù)控管切割機(jī)示意圖
圖2系統(tǒng)運(yùn)行示意圖圖2系統(tǒng)運(yùn)行示意圖圖2系統(tǒng)運(yùn)行示意圖
3通訊協(xié)議
PC機(jī)與PLC之間正確通訊數(shù)據(jù),必須滿足以下4個(gè)條件:(1)PC機(jī)串口和PLC通訊模塊的波特率設(shè)置一致;(2)在PC機(jī)的通信程序中,只使用PLC協(xié)議規(guī)定的命令和格式;(3)無(wú)論是PC機(jī)向PLC發(fā)送數(shù)據(jù)或者是Pc機(jī)讀取PLC某一數(shù)據(jù)寄存器中的數(shù)據(jù),通訊程序都開(kāi)始于Pc機(jī)主動(dòng)向PLC發(fā)出命令幀;(4)PLC接收到PC機(jī)發(fā)來(lái)的命令幀后。執(zhí)行指令并傳回響應(yīng)幀。
PLC選用的是日本橫河(YOKOGAWA)FA—M3系列,因其平均掃描時(shí)間達(dá)20000步/ms,支持主程序和高速定時(shí)程序并行處理濱現(xiàn)了真正的高速化,擁有快速精確的位置控制功能。同時(shí)選用配套的F3LCll-1F通訊模塊,它有一個(gè)RS232C接口,它的右側(cè)有3個(gè)開(kāi)關(guān)SW用于設(shè)置通訊模塊.通過(guò)撥動(dòng)3個(gè)開(kāi)關(guān)SW,就可以完成對(duì)PIE的通訊模塊的設(shè)置?,F(xiàn)將PLC的通訊模塊的傳輸速度設(shè)置為115200bps.?dāng)?shù)據(jù)格式為:8位字符長(zhǎng)度、無(wú)奇偶校驗(yàn)、有和校驗(yàn)、停止位為1位、無(wú)結(jié)束字符CR。
PLC命令幀格式,如圖3所示。起始字符為ASCII碼$02,結(jié)束字符為ASCII碼$03,校驗(yàn)碼為從起止字符到校驗(yàn)碼之前的所有指令的16進(jìn)制ASCII碼值相加的和的最低兩位。因?yàn)镻LC處理和掃描程序需要時(shí)間,所以需要設(shè)定等待時(shí)間,也為16進(jìn)制數(shù)值。具體等待時(shí)間和16進(jìn)制數(shù)對(duì)應(yīng)表,如表1所示。
圖3 命令幀格式
PLC接收到PC機(jī)發(fā)出的命令幀后,向PC機(jī)發(fā)出反應(yīng)幀,反應(yīng)幀有正確反應(yīng)幀和錯(cuò)誤反應(yīng)幀之分。PLC正確執(zhí)行PC機(jī)發(fā)出的命令幀后,向PC機(jī)傳回正確響應(yīng)崎,否則,傳回錯(cuò)誤畹直幀。PC機(jī)首先根據(jù)響應(yīng)幀的校驗(yàn)碼是否正確判斷數(shù)據(jù)接收完成與否,如果數(shù)據(jù)接收完成,再根據(jù)反應(yīng)幀可判斷出它發(fā)出的指令PLC是否正確執(zhí)行,如果是錯(cuò)誤執(zhí)行.那么PC機(jī)重新發(fā)送命令幀,直到PLC反饋正確反應(yīng)幀為止。正確與錯(cuò)誤響應(yīng)幀格式,如圖4、圖5所示。
4通訊程序設(shè)計(jì)
PC與PLC的數(shù)據(jù)傳輸是以幀的形式傳遞的。寫(xiě)數(shù)據(jù)時(shí)由PC機(jī)通過(guò)串行口向PLC發(fā)出寫(xiě)數(shù)據(jù)命令幀,PLC接受命令,并向PC機(jī)傳回響應(yīng)幀。PC機(jī)判斷響應(yīng)幀是否為正確的響應(yīng):正確,寫(xiě)數(shù)據(jù)結(jié)束:錯(cuò)誤,重新發(fā)送寫(xiě)數(shù)據(jù)命令幀,直到PLC反饋正確響應(yīng)為止。讀數(shù)據(jù)時(shí)由PC機(jī)通過(guò)串行口向PLC發(fā)出讀數(shù)據(jù)命令幀,PLC接受命令,并傳回響應(yīng)幀(里面包括有傳回的數(shù)據(jù))。PC機(jī)判斷響應(yīng)幀是香為正確的響應(yīng):正確.從響應(yīng)幀中凄出數(shù)據(jù).讀數(shù)據(jù)結(jié)束;錯(cuò)誤.重新發(fā)送讀數(shù)據(jù)命令幀,直到PLC反饋正確響應(yīng)為止。PC機(jī)向PLC寫(xiě)數(shù)據(jù)的程序流程如圖6所示,讀數(shù)據(jù)的程序流程圖,如圖7所示。
圖6寫(xiě)數(shù)據(jù)程序流程圖
圖7讀數(shù)據(jù)程序流程圖
Visual Basic 6.0是Windows環(huán)境下簡(jiǎn)單高效的可視化編程語(yǔ)言開(kāi)發(fā)系統(tǒng),它提供了一種實(shí)現(xiàn)串口通訊的控件MSComm。通過(guò)MSComm控件可以完成對(duì)串口的讀寫(xiě)工作,從而實(shí)現(xiàn)與PLC的通訊.為此需要正確設(shè)置它的一些屬性目:
CommPort:設(shè)定通信連接端口,必匆諾£程序中指定串行端口號(hào);
PortOpen:設(shè)定通信口狀態(tài),用于打開(kāi)和關(guān)閉串行通信端口;
Settings:設(shè)定通信151參數(shù),其格式是“bbbb,p,d,s”,其中bbbb為通信速率,p為通信檢查方式,d為數(shù)據(jù)位數(shù),s為停止位數(shù),其設(shè)定應(yīng)與PIE的設(shè)定一致;
Input:將數(shù)據(jù)傳送至輸入緩沖區(qū)的字符讀人到程序.并將已讀取的字符清除;
Output:將字符寫(xiě)人輸出緩沖區(qū).用于向?qū)Ψ桨l(fā)送信息;
InBufferCount:設(shè)置輸入緩沖區(qū)的大小。
PC機(jī)脅繃翟序,初始化PC機(jī)的串行通串口(具體程序略)。PC機(jī)上的人機(jī)界面和PC機(jī)向PIE傳輸數(shù)據(jù)。PC機(jī)與PIE的串行通訊通過(guò)了工作現(xiàn)場(chǎng)的嚴(yán)格測(cè)試,被證明符合在工業(yè)現(xiàn)場(chǎng)上使用的要求。
5 結(jié)論
在現(xiàn)代工業(yè)控制中,PLC與PC機(jī)的串行通訊運(yùn)用得越來(lái)越廣泛。PLC完成現(xiàn)場(chǎng)各種開(kāi)關(guān)鼉的控制.伺服電機(jī)脈沖的發(fā)出;PC機(jī)提供人機(jī)交互界面,實(shí)現(xiàn)數(shù)據(jù)的計(jì)算和加工過(guò)程的模擬;同時(shí)VB能提供良好的用戶界面,和強(qiáng)大的數(shù)據(jù)計(jì)算能力,并且提供串口控件,進(jìn)一步提高了實(shí)用性。結(jié)合橫河FA-M3型PLC的特點(diǎn),通過(guò)其在數(shù)控管切割機(jī)中的運(yùn)用,詳細(xì)地闡述了基于VB語(yǔ)言的PLC與上位機(jī)串行通訊實(shí)現(xiàn)的方法。通過(guò)數(shù)控切割機(jī)切割管件的運(yùn)行表明,利用VB的MSComm控件設(shè)計(jì)的通訊軟件可以很好地滿足了PC機(jī)向數(shù)控管切割機(jī)傳輸加工數(shù)據(jù)的要求。
(審核編輯: Doris)
分享