新聞中心

EEPW首頁(yè) > 手機(jī)與無(wú)線通信 > 設(shè)計(jì)應(yīng)用 > 利用編程口實(shí)現(xiàn)三菱PLC遠(yuǎn)距離通訊的方法

利用編程口實(shí)現(xiàn)三菱PLC遠(yuǎn)距離通訊的方法

作者: 時(shí)間:2011-06-17 來(lái)源:網(wǎng)絡(luò) 收藏

 MITSUBISHI 公司生產(chǎn)的可序控制器,由于該產(chǎn)品體積小,結(jié)構(gòu)緊湊,性能可靠,易,系列全(根據(jù)被控對(duì)象的復(fù)雜程度,選用相應(yīng)容量的)等優(yōu)點(diǎn),而被廣泛應(yīng)用于各種場(chǎng)合和生產(chǎn)過(guò)程的現(xiàn)地控制中,可開(kāi)關(guān)量采集、輸出,模擬量采集和輸出等功能。在實(shí)際應(yīng)用中,有時(shí)往往需要遠(yuǎn)方控制和監(jiān)視,因此的長(zhǎng)距離問(wèn)題具有實(shí)用性。這里介紹兩種PLC。

本文引用地址:http://m.butianyuan.cn/article/156165.htm

  我們先來(lái)分析一下PLC的特性。

一、FX2系列PLC接口的物理特性

  PLC裝置上帶有一個(gè)25針RS-422口,該口主要用于對(duì)PLC進(jìn)行編程和調(diào)試。接口如示:

圖1

  端口信號(hào)定義如下:
  RXD:接收數(shù)據(jù)(Received Data)
  TXD: 發(fā)送數(shù)據(jù) Transmitted Data)
  DTR: 數(shù)據(jù)終端準(zhǔn)備就緒(Data Terminal Ready)
  DSR:數(shù)據(jù)裝置就緒(Data Set Ready)
  PWE: PLC數(shù)據(jù)接收允許

  在用PC機(jī)或便攜機(jī)對(duì)PLC進(jìn)行編程和調(diào)試時(shí),必須用一根專(zhuān)用通信電纜與之通信,當(dāng)編程調(diào)試結(jié)束后,該口即處于閑置狀態(tài)。要想PLC長(zhǎng)距離數(shù)據(jù)通訊,一種是采用PLC通訊擴(kuò)展模件,這要增加額外的開(kāi)銷(xiāo),另一種就是其自身的編程口,也能達(dá)到同樣的效果,同時(shí)可節(jié)省開(kāi)銷(xiāo)。出于保密等某種因素,PLC編程電纜的接口電路部分用強(qiáng)力膠密封,用戶(hù)無(wú)法查看。通過(guò)對(duì)其接口的分析和試驗(yàn),找到了用四線制方式實(shí)現(xiàn)PLC通訊的連接方法,即用PLC的4個(gè)引腳RXD(R+、R-)、TXD(T+、T-)經(jīng)長(zhǎng)線與PC側(cè)的長(zhǎng)線收發(fā)器相連接,通過(guò)長(zhǎng)線收發(fā)器把信號(hào)轉(zhuǎn)換為RS-232后與PC的串口相連。其接口如圖2如示。

  應(yīng)當(dāng)指出的是為了使PLC始終處于“數(shù)據(jù)裝置就緒”狀態(tài),我們?nèi)藶閷?腳和7腳短接,同樣為了使PLC能接受主機(jī)的命令,也將21腳和20腳短接。

  在實(shí)際應(yīng)用中,PC機(jī)通常要與若干個(gè)PLC通訊,單個(gè)串口是實(shí)現(xiàn)不了的,此時(shí)需擴(kuò)展端口來(lái)實(shí)現(xiàn)。選用MOXA Intellio C218 Turbo 系列串口卡帶Opt8F連接盒可實(shí)現(xiàn)與8個(gè)PLC相連。

  Opt8F 是一個(gè)8串口RS-422、DB25孔式連接盒,帶光電隔離 。信號(hào)定義: TxD+(3)/-(16), RxD+(2)/-(14), GND(7) ,具備LED可監(jiān)看每個(gè)串口的TxD, RxD ;含1.5m DB62轉(zhuǎn)DB62接頭的電纜線,光電隔離最大可達(dá)500V ,數(shù)據(jù)傳輸速率: 50 bps ~ 115.2 Kbps。
硬件連接如圖所示:

  如果PLC超過(guò)8個(gè),可再擴(kuò)展一塊C218卡。

  這里,也可以選用MOXA系列C168卡,不過(guò)它的8串口是RS-232口,需外加長(zhǎng)線收發(fā)器將 RS-422轉(zhuǎn)為RS-232后才能連到8串口上,連接方式同圖-2。

  MITSUBISHI PLC是公司生產(chǎn)的可編程序控制器,由于該產(chǎn)品體積小,結(jié)構(gòu)緊湊,性能可靠,易編程,系列全(根據(jù)被控對(duì)象的復(fù)雜程度,選用相應(yīng)容量的PLC)等優(yōu)點(diǎn),而被廣泛應(yīng)用于各種場(chǎng)合和生產(chǎn)過(guò)程的現(xiàn)地控制中,可實(shí)現(xiàn)開(kāi)關(guān)量采集、輸出,模擬量采集和輸出等功能。在實(shí)際應(yīng)用中,有時(shí)往往需要實(shí)現(xiàn)遠(yuǎn)方控制和監(jiān)視,因此PLC的長(zhǎng)距離通訊問(wèn)題具有實(shí)用性。這里介紹兩種PLC通訊方法。

  我們先來(lái)分析一下PLC的特性。

一、FX2系列PLC通訊接口的物理特性

  PLC裝置上帶有一個(gè)25針RS-422編程口,該口主要用于對(duì)PLC進(jìn)行編程和調(diào)試。接口如示:

圖1

  端口信號(hào)定義如下:
  RXD:接收數(shù)據(jù)(Received Data)
  TXD: 發(fā)送數(shù)據(jù) Transmitted Data)
  DTR: 數(shù)據(jù)終端準(zhǔn)備就緒(Data Terminal Ready)
  DSR:數(shù)據(jù)裝置就緒(Data Set Ready)
  PWE: PLC數(shù)據(jù)接收允許

  在用PC機(jī)或便攜機(jī)對(duì)PLC進(jìn)行編程和調(diào)試時(shí),必須用一根專(zhuān)用通信電纜與之通信,當(dāng)編程調(diào)試結(jié)束后,該口即處于閑置狀態(tài)。要想實(shí)現(xiàn)PLC長(zhǎng)距離數(shù)據(jù)通訊,一種方法是采用PLC通訊擴(kuò)展模件,這要增加額外的開(kāi)銷(xiāo),另一種方法就是其自身的編程口,也能達(dá)到同樣的效果,同時(shí)可節(jié)省開(kāi)銷(xiāo)。出于保密等某種因素,PLC編程電纜的接口電路部分用強(qiáng)力膠密封,用戶(hù)無(wú)法查看。通過(guò)對(duì)其接口的分析和試驗(yàn),找到了用四線制方式實(shí)現(xiàn)PLC通訊的連接方法,即用PLC的4個(gè)引腳RXD(R+、R-)、TXD(T+、T-)經(jīng)長(zhǎng)線與PC側(cè)的長(zhǎng)線收發(fā)器相連接,通過(guò)長(zhǎng)線收發(fā)器把信號(hào)轉(zhuǎn)換為RS-232后與PC的串口相連。其接口如圖2如示。

  應(yīng)當(dāng)指出的是為了使PLC始終處于“數(shù)據(jù)裝置就緒”狀態(tài),我們?nèi)藶閷?腳和7腳短接,同樣為了使PLC能接受主機(jī)的命令,也將21腳和20腳短接。

  在實(shí)際應(yīng)用中,PC機(jī)通常要與若干個(gè)PLC通訊,單個(gè)串口是實(shí)現(xiàn)不了的,此時(shí)需擴(kuò)展端口來(lái)實(shí)現(xiàn)。選用MOXA Intellio C218 Turbo 系列串口卡帶Opt8F連接盒可實(shí)現(xiàn)與8個(gè)PLC相連。

  Opt8F 是一個(gè)8串口RS-422、DB25孔式連接盒,帶光電隔離 。信號(hào)定義: TxD+(3)/-(16), RxD+(2)/-(14), GND(7) ,具備LED可監(jiān)看每個(gè)串口的TxD, RxD ;含1.5m DB62轉(zhuǎn)DB62接頭的電纜線,光電隔離最大可達(dá)500V ,數(shù)據(jù)傳輸速率: 50 bps ~ 115.2 Kbps。
硬件連接如圖所示:

  如果PLC超過(guò)8個(gè),可再擴(kuò)展一塊C218卡。

  這里,也可以選用MOXA系列C168卡,不過(guò)它的8串口是RS-232口,需外加長(zhǎng)線收發(fā)器將 RS-422轉(zhuǎn)為RS-232后才能連到8串口上,連接方式同圖-2。

二、 PLC 通訊機(jī)制

  1.PLC通訊口參數(shù)

  波特率:9600比特/秒
  校驗(yàn)方式:偶校驗(yàn)
  停止位:1位
  校驗(yàn)位:1位
  傳輸方式:異步7位字符方式

  2.PLC數(shù)據(jù)幀格式

  PLC有三種通用寄存器:D寄存器、X寄存器、Y寄存器。D寄存器為數(shù)據(jù)寄存器,可存放雙字節(jié)整數(shù),X寄存器為輸入位寄存器,字長(zhǎng)8位,每一位對(duì)應(yīng)一個(gè)開(kāi)關(guān)量輸入點(diǎn);Y寄存器為8位輸出寄存器,字長(zhǎng)8位,每一位對(duì)應(yīng)一個(gè)開(kāi)關(guān)量輸出點(diǎn);通過(guò)這三種寄存器,即可進(jìn)行模擬量、開(kāi)關(guān)量的采集,以及開(kāi)出控制。

  PLC的通訊是完全被動(dòng)的半雙工通訊,要實(shí)現(xiàn)PLC數(shù)據(jù)的遠(yuǎn)傳,首先要了解三種寄存器讀寫(xiě)數(shù)據(jù)的幀格式,按照這個(gè)格式通過(guò)上位機(jī)對(duì)它發(fā)讀或?qū)懨睿ㄔ谲浖幸话阌脭?shù)組來(lái)存放該命令報(bào)文),PLC根據(jù)命令的性質(zhì)作出響應(yīng)。歸納起來(lái)只有兩種:寄存器讀和寫(xiě)命令。其幀格式如下:

  讀命令幀格式:

  寫(xiě)命令幀格式:

 ?。ㄗⅲ哼@里的高位指一個(gè)字節(jié)的高半字節(jié),即高四位;低位指低半字節(jié),以下同)

  STX:報(bào)文起始標(biāo)志
  EXT:報(bào)文結(jié)束標(biāo)志。

  被讀的寄存器的組地址為4位ASCII碼,可從PLC手冊(cè)中查到。一次最多讀出64個(gè)字節(jié)。

  通訊開(kāi)始時(shí),主機(jī)首先向PLC發(fā)查詢(xún)代碼ENQ(05H),如果PLC正常接收,則PLC回送確認(rèn)代碼ACK(06H)作為應(yīng)答,表示通訊建立,可以對(duì)PLC進(jìn)行讀、寫(xiě)命令。如果PLC不能識(shí)別命令,則返回NAK(15H)。應(yīng)當(dāng)注意的是PLC的響應(yīng)有一定的延時(shí)(3秒以?xún)?nèi)),在收到命令后,PLC要在執(zhí)行完下一周期END指令后方才響應(yīng),因此主機(jī)在軟件上應(yīng)考慮延時(shí)讀數(shù)和三次重發(fā)。

  PLC響應(yīng)后的數(shù)據(jù)格式:

  校驗(yàn)和的計(jì)算,以D寄存器的讀報(bào)文為例

  讀D123寄存器,地址為10F6H,讀4個(gè)字節(jié):

  校驗(yàn)和是報(bào)文內(nèi)CMD和ETX中間(包括CMD和ETX)各字節(jié)之和,上面報(bào)文校驗(yàn)和=30H+31H+30H+46H+36H+30H+34H+03H= 174H,取后兩位74H,即為校驗(yàn)和,用ASCII碼表示就是:37H和34H。

  例如D寄存器中的數(shù)據(jù)為D123:1234H , D124:ABCDH,則PLC響應(yīng)后,向PC發(fā)送數(shù)據(jù)報(bào)文為:

3、軟件

  PC機(jī)COM1端口初始化程序(與PLC端口參數(shù)一致)
  ........
  outputb(0x3fb,0x80); /*通訊線控制寄存器控制字,訪問(wèn)波特率除數(shù)鎖存器*/
  outpoutb(0x3f8,0x0c); /*除數(shù)鎖存器控制字低位,定波特率*/
  outportb(0x3f9,0x00); /*除數(shù)鎖存器控制字高位,定波特率*/
  outportb(0x3fb,0x1a); /*通訊線控制寄存器控制字,定數(shù)據(jù)格式*/
  outportb(0x3fc,0x03); /*MODEM控制寄存器控制字*/
  ......
  port_test:
  outportb(0x3f8,ENQ);
  do {
  in=inportb(0x3fd);
  }while(!in0x01);
  in=inportb(0x3f8);

  if(in==NAK)
  {
  printf(Error NAK!rn);
  goto port_test
  }
  if(in!=ACK)
  {printf(NOT RECEIVED ACK!rn);
  goto port_test;
  }
  .......

  8串口方式的端口初始化程序:
  .........
  stat=sio_reset();
  stat=sio_open(port);
  stat=sio_ioctl(port,B9600,P_EVEN|BIT-7|STOP_1);
  port_test:
  stat=sio_putch(port,0x05);
  in=sio_getch(port);
  if(in!=0x06) goto port_tes
  ..........

三、結(jié)束語(yǔ)

  以上的軟硬件方案已在漫灣電廠壩區(qū)閘門(mén)的數(shù)據(jù)采集和控制中得到應(yīng)用,實(shí)現(xiàn)了單臺(tái)工控機(jī)與10余臺(tái)PLC的通訊,并與監(jiān)控系統(tǒng)相連,實(shí)現(xiàn)了壩區(qū)閘門(mén)的遠(yuǎn)方監(jiān)視和控制,數(shù)據(jù)通信可靠

數(shù)字通信相關(guān)文章:數(shù)字通信原理


通信相關(guān)文章:通信原理




評(píng)論


相關(guān)推薦

技術(shù)專(zhuān)區(qū)

關(guān)閉