引言
本文以ge fanuc plc系列pcm智能通訊模塊在某泵站控制系統(tǒng)中的應用為例進行探討山析,介紹了basic語言在解決plc與現(xiàn)場儀表或其它外部智能設(shè)備之間數(shù)據(jù)通訊問題時能起到的作用奶是,為廣大同行提供又一種串行通訊解決方案。
1 簡介
basic語言是微機系統(tǒng)中廣泛應用的一種高級編程語言聚磺,它的指令接近思維邏輯的表達瓤计,與自然語言有相通之處,易學易懂莹宁,同時它包涵豐富的算法函數(shù)圾峭,能十分方便地進行各種數(shù)據(jù)處理,因而深受廣大編程愛好者喜愛庇鸭。plc是計算機科學在工業(yè)控制領(lǐng)域內(nèi)的一個重要分支废徙,它一般采用梯形圖、語句表作為其編程語言狂嘉,由于梯形圖形似電氣原理圖爵孔,直觀易懂,易為電氣工程師所接受询蚊,為plc的推廣應用起到了極大的推動作用神阔。plc從誕生至今,幾十年來因震,應用領(lǐng)域不斷擴大吩捞,現(xiàn)在鳞编,通訊問題已成為plc應用中的一個重要課題之一。
2 系統(tǒng)簡述
本系統(tǒng)采用ge fanuc 90-30系列plc model351渐扮,一塊智能通訊模塊cmm311论悴,一塊可編程智能通訊模塊pcm311,及開關(guān)量輸入墓律、輸出模塊膀估,模擬量輸入模塊若干。
通訊模塊cmm311有兩個通訊口耻讽,分別負責與上位機組態(tài)軟件及現(xiàn)場digital觸摸屏進行通訊察纯。
可編程通訊模塊pcm311為通訊協(xié)處理機,內(nèi)有固化的megabasic語言解釋程序针肥,能執(zhí)行通過外部編程終端存儲進來的basic程序饼记。該模塊有兩個通訊端口,一個端口為編程口慰枕,ge公司logicmaster編程軟件包中有專用于pcm模塊編程的軟件具则,用它可通過該編程口登錄pcm模塊,將計算機中文本形式的basic代碼文件存入模塊的存儲器中;另一個端口為專用外部通訊口捺僻,在basic程序中可打開此端口與外部智能設(shè)備進行通訊乡洼。在特殊時候,編程口也可被basic程序打開嚼讹,作與外部設(shè)備通訊用扛焊,但這樣使用在調(diào)試時稍有不便。
系統(tǒng)布置要求敘述如下:
plc cpu負責開關(guān)量脊腺、模擬量的采集崎绽、運算,實施直接的控制功能;通訊模塊cmm311通過兩個通訊口分別連接上位機及觸摸屏茉园,實現(xiàn)人機界面與plc的數(shù)據(jù)通訊;pcm模塊的com2與westinghouse(西屋儀表)mint ii網(wǎng)絡(luò)轉(zhuǎn)換器相連宅殿,負責通過mint ii網(wǎng)絡(luò)轉(zhuǎn)換器與現(xiàn)場三個種類的12臺westinghouse儀表通訊,采集電流汁讹、電壓诞书、功率等各種物理量的實時數(shù)據(jù),同時棋裳,com1在調(diào)試完畢后用來與現(xiàn)場一臺三菱fx2n plc通訊快檀,實現(xiàn)從ge plc系統(tǒng)到fx2n系統(tǒng)的數(shù)據(jù)通路,方案圖如圖1所示凭协。
[DividePage:NextPage]
2.1 minit ii轉(zhuǎn)換器通訊協(xié)議簡介
在這個方案中都晶,minit ii與下位設(shè)備的硬件連接為雙絞線,minit ii及下位各設(shè)備都并入雙絞線組成的westinghouse incom網(wǎng)絡(luò),在該網(wǎng)絡(luò)中各通訊主體使用二進制通訊方式耽梅,數(shù)據(jù)幀均由33位二進制數(shù)構(gòu)成薛窥,minit ii充當主站(master)角色,對下位各設(shè)備發(fā)起通訊眼姐,進行輪詢诅迷。
pcm311模塊與minit ii轉(zhuǎn)換器進行的是ascii碼通訊方式,而minit ii轉(zhuǎn)換器與下位dt3000妥凳、mp3000竟贯、iq200各系列設(shè)備的通訊方式為二進制碼通訊,實際上minit ii所起到的作用是將pcm模塊發(fā)出的ascii碼指令幀轉(zhuǎn)譯為二進制碼指令幀逝钥,當然,在通訊過程中拱镐,我們只需關(guān)心ascii碼通訊幀的格式艘款,minit ii會自動將其轉(zhuǎn)為二進制格式后發(fā)到incom網(wǎng)絡(luò)中去。
minit ii模塊的25針rs232串行口接收的ascii碼幀由10個ascii碼字符組成沃琅,分為控制指令幀哗咆、數(shù)據(jù)指令幀兩類,大致形式如下:
控制指令:
◎鸨省(stx)(c/d)(inst)(comm)(scomm)(address)(sumcheck)
數(shù)據(jù)指令:
《撂(stx)(c/d)(data)(sumcheck)
stx:第2號ascii碼,占一位
c/d:控制指令時為1床少,數(shù)據(jù)指令時為0砂两,占一位
inst、comm橘疚、scomm:由這三個數(shù)字指定需要返回的參數(shù)汪汰,各占一位
address:指定指令的發(fā)送對象,是一個三位數(shù)的十六制數(shù)胶僵,占三位
sumcheck:和校驗碼步盼,占二位
data:返回的數(shù)據(jù)信息,占六位
minit ii串行通訊參數(shù)在其面板上通過開關(guān)來選定隘勾。
2.2 fx2n plc通訊協(xié)議簡介
fx2n是三菱品牌plc在小系統(tǒng)控制應用中使用較多的一種經(jīng)濟型plc樊鲁,外部設(shè)備通過232bd、485bd等插件或485adp等模塊可與其建立ascii碼串行通訊捏章,讀取plc內(nèi)部寄存器的值蔗彤。其協(xié)議格式如下:
(1) 讀寄存器
*外設(shè):(enq)(站號)(pc號)(命令字符)(等待時間)(頭元件)(元件數(shù))(和校驗)
*plc:(stx)(站號)(pc號)(返回數(shù)據(jù))(etx)(和校驗)
*外設(shè):(ack)(站號)(pc號)
』菸簟(2) 寫寄存器
*外設(shè):(enq)(站號)(pc號)(命令字符)(等待時間)(頭元件)(元件數(shù))(寫出數(shù)據(jù))(和校驗)
*plc:(stx)(站號)(pc號)
*enq幕与、stx、ack、etx:為相應的ascii碼
*站號:plc的站地址啦鸣,為兩位十六進制數(shù)(00-0fh)潮饱,由plc的d8121寄存器指定
*pc號:用于a系列melsecnet網(wǎng)絡(luò)中的plc,對fx2n均為ffh
*命令字符:分為位讀(br)诫给、位寫(bw)香拉、字讀(wr)、字寫(ww)
*等待時間:以10ms為單位中狂,以十六進制數(shù)表示凫碌,占一個字符(0-f)
*頭元件:為要讀、寫的開始元件號胃榕,如m0001盛险、d0000等。
*元件數(shù):為要讀勋又、寫的元件個數(shù)颅婴。
*返回數(shù)據(jù)、寫出數(shù)據(jù):為從plc返回的寄存器值或要寫到plc的數(shù)據(jù)值
由于fx2n與中央控制柜距離較遠葡料,故本系統(tǒng)中采用fx2n與485bd插件汗钳,pcm311模塊經(jīng)232/485轉(zhuǎn)換器與485bd相連,轉(zhuǎn)換器與485bd之間采用兩對雙絞線相連佃贞,全雙工方式通訊磺瓤,plc串行通訊參數(shù)在d8120中設(shè)定。
2.3 megabasic的語法簡介
×ザ怼(1) 串口操作:pcm模塊共有二個串口设连,它們均可在megabasic程序中被打開,與外部進行通訊丹叨,以下為常用的串口操作函數(shù)辨迷。
*串口的打開:open ,
如open #8洁乏,“com1”
*串口的關(guān)閉:close
如close #8
*串口通訊參數(shù)的設(shè)定:ioctl 袁暗,
(2) ioctl_string格式為:
baud(波特率)倍试,parity(校驗)讯屈,databits(數(shù)據(jù)位),stopbits(停止位)县习,flowctl(流控制方式)涮母,physical(物理協(xié)議如232/485/422),duplexmode(通訊模式躁愿,半雙工/全雙工)
如ioctl #8叛本,“19200,n,8来候,1跷叉,n,232”
∮痢(3) 從串口讀取數(shù)據(jù):inchr$(云挟,,转质,园欣,)
如restr=inchr$(ch%,10埠限,“”幔膝,0,timeout%)
∶蠖簟(4) 向串口發(fā)送數(shù)據(jù):print噪境,
如print #8,“hello world”
∩ト獭(5) megabasic程序?qū)lc寄存器的訪問:
對于pcm模塊所在的plc系統(tǒng)中的寄存器如%i,%q陶握,%r参挨,%m等,basic程序中并不可直接引用禁歧,而需通過使用特定的功能指令來訪問它們亮蜓。
a)訪問plc寄存器之前,先要使用syslink指令架独。
syslink挠囚,,[type]
local_name:basic程序內(nèi)部定義的變量
cpu_symbol:plc的寄存器名脖旱,外加雙引號(如“%r500”)
type:關(guān)聯(lián)數(shù)據(jù)的類型堪遂,如bool,byte萌庆,int16溶褪,uint,dint等
b) 讀践险、寫plc寄存器
sysread
syswrite
在syslink指令執(zhí)行后猿妈,即可使用上面兩個指令分別讀、寫basic變量所關(guān)聯(lián)的plc寄存器巍虫。
2.4 系統(tǒng)編程過程簡介
根據(jù)minit ii通訊協(xié)議及megabasic語言的基本語法彭则,在文本編輯器(如記事本)中寫好大致的程序,特別是對返回數(shù)據(jù)的解析編寫專門的函數(shù)來進行處理,以得到浮點數(shù)形式的電壓俯抖、電流输瓜、功率等數(shù)據(jù),其中重點要注意好對返回錯誤幀時的處理蚌成,還有采集不同數(shù)據(jù)時的協(xié)議上的差別前痘,這一部分程序?qū)懞煤螅胮cm模塊的com1通過logicmaster軟件導入pcm模塊秕刊,用com1監(jiān)視運行崎爽,用com2通訊,進行聯(lián)機調(diào)試腮德,根據(jù)調(diào)試情況加以修正完善摹撰,得到最終版本。
類似上述步驟枫技,根據(jù)fx2n的通訊協(xié)議行翘,寫好與fx2n通訊的程序,用com1監(jiān)視運行秧朝,用com2通訊领末,經(jīng)調(diào)試修正,得到最終版本噩振。
將兩個版本的程序合并痘涧,并將與fx2n通訊的端口改為com1,去掉程序中用于監(jiān)視運行的輸出語句(print)钻寿,再重新導入pcm模塊中纤壁,一個滿足系統(tǒng)要求的完整的通訊程序就這樣就寫成了。
3 結(jié)束語
用類似本系統(tǒng)中的pcm模塊完成通訊任務(wù)捺信,筆者認為其相對利用plc梯形圖程序進行通訊優(yōu)點很明顯酌媒。首先由于其使用的是與微機系統(tǒng)中的basic語言語法相同的高級語言,易學易懂迄靠,處理復雜的數(shù)據(jù)運算時得心應手秒咨,在復雜的有大量通訊任務(wù)的系統(tǒng)中有很重大的推廣價值;再者在系統(tǒng)調(diào)試時也有明顯優(yōu)勢,一個端口正在通訊時梨水,一個端口實時監(jiān)視程序的運行情況拭荤,并可以自然語言的形式輸出實時的調(diào)試信息,plc程序就不會有這么好的效果疫诽,那么結(jié)果是這種系統(tǒng)的開發(fā)周期必然大為縮短舅世。
plc系統(tǒng)中采用basic語言的協(xié)處理器,筆者認為這是plc應用中一個新的發(fā)展奇徒,對簡化編程雏亚,減輕工控系統(tǒng)開發(fā)者的開發(fā)壓力可起到較大的作用缨硝,據(jù)了解,很多plc廠商都有類似功能的模塊生產(chǎn)罢低,如三菱公司就推出了ad51h高速智能通信組件谎拴,使用ad51h basic語言,支持四個通信口和月,具備384k內(nèi)存呐品,大大提高了plc系統(tǒng)數(shù)據(jù)通信與收集方面的靈活性。
聲明:本網(wǎng)站所收集的部分公開資料來源于互聯(lián)網(wǎng)逸铆,轉(zhuǎn)載的目的在于傳遞更多信息及用于網(wǎng)絡(luò)分享垒汉,并不代表本站贊同其觀點和對其真實性負責,也不構(gòu)成任何其他建議苦钱。本站部分作品是由網(wǎng)友自主投稿和發(fā)布盛闻、編輯整理上傳,對此類作品本站僅提供交流平臺避晾,不為其版權(quán)負責悼晨。如果您發(fā)現(xiàn)網(wǎng)站上所用視頻、圖片啥匀、文字如涉及作品版權(quán)問題蛙梆,請第一時間告知,我們將根據(jù)您提供的證明材料確認版權(quán)并按國家標準支付稿酬或立即刪除內(nèi)容催首,以保證您的權(quán)益扁眯!聯(lián)系電話:010-58612588 或 Email:editor@mmsonline.com.cn。
- 暫無反饋
編輯推薦
- 2025新年特刊:打造新質(zhì)生產(chǎn)力胎汁,智啟未來新篇章
- 定義制造業(yè)未來的數(shù)控加工中心技術(shù)專題
- 航空航天及交通領(lǐng)域先進制造技術(shù)應用專題
- 解碼消費電子產(chǎn)品生產(chǎn)的數(shù)字化之路技術(shù)專題
- 精密智能機床纲愁,助力制造升級技術(shù)專題
- 汽車輕量化驅(qū)動下的零部件加工應用專題
- 高性能銑刀實現(xiàn)高精加工生產(chǎn)技術(shù)專題
- 航空航天發(fā)動機解決方案專題
- 高效齒輪加工生產(chǎn)技術(shù)方案專題
- 金屬加工液的性能不止?jié)櫥夹g(shù)應用專題