[摘  要]
    文章詳細介紹了PLC控制中一種新穎、高效的通信方式——通信協議宏的原理和實現方法,并將該方法成功地應用于港口門機的電氣傳動部分的改造,取得了令人滿意的效果,最后對通信協議宏實際應用中一些應注意馮問題予以總結。
[關鍵詞]
    變頻調速器&n">

      技術頻道

      PLC控制中通信協議宏的應用

      [摘 要]
      文章詳細介紹了PLC控制中一種新穎、高效的通信方式——通信協議宏的原理和實現方法,并將該方法成功地應用于港口門機的電氣傳動部分的改造,取得了令人滿意的效果,最后對通信協議宏實際應用中一些應注意馮問題予以總結。
      [關鍵詞]
      變頻調速器 可編程邏輯控制器 通信協議宏
      1 引言
      隨著微機控制技術、電力電子技術和電氣傳動技術的飛速發展,交流變頻調速技術正以其優異的控制性能日益為工業界所接受,而可編程邏輯控制器(PLC)作為一種高可靠性的控制部件,也正以前所未有的速度在工業自動化領域迅速普及。在我國傳統的鋼鐵冶金、交通運輸、機械化工等各產業中,存在著大量的以繼電器、接觸器和直流調速為主的電氣傳動系統,這些系統存在硬件線路復雜、可靠性低、能耗大、生產維修量大等許多缺點,因此如何將PLC與交流變頻調速技術相結合,對傳統產業進行改造,是企業界正著力解決的問題。本文就某港務局與浙江大學合作,對其下屬的煤運碼頭門機電氣傳動部分的改造進行了介紹。原有的門機傳動部分分為3塊,即門機抓斗的3個自由度,起升、變幅和旋轉,均采用交流繞線式電機進串電阻調速,根據以往運行情況,主要缺點在于:能耗大,運行時機械、電氣沖擊大,故障頻繁,維修任務繁重等,故決定將系統改造為PLC控制的交流變頻調速系統。
      2 系統構成
      根據系統特點和生產工藝要求,選用適合小型應用場合的OMRON-C200HE型PLC,變頻器采用英國CT公司的高性能通用變頻器,為了顯示系統工作情況及故障情況,系統還包括一塊OMRON-NT620S型觸摸屏。遵循以前的生產操作習慣,仍采用手柄操作,觸摸屏僅用來顯示相關信息,為系統維修提供支持。整個系統中PLC是控制核心——根據操作指令和內部邏輯向變頻器發送指令,從變頻器讀回各種信息,并將這些信息送給觸摸屏顯示等。C200HE是OMRON系列PLC中較新的型號,具有很強的通信功能,而CT系列變頻器也具有可選的通信模塊。為了充分利用PLC和變頻器的功能,最大限度地減少硬件連線,系統采用PLC與變頻器之間以串行通信方式進行控制,硬件上采用適合工業場合的RS485連接,整個系統結構如圖1 所示。


      由于系統生產工藝并不復雜,所以如何實現PLC與變頻器之間的通信是整個工作的重點。C200HE型PLC除了通常用于RS232通信方式的TXD,RXD指令外,還提供了一種新穎、高效的通信方式,PMCR指令——通信協議宏功能。這種通信方式不僅適用于RS232通信方式,也適用于抗干擾能力強,傳輸距離遠的RS485方式,而且其最大優點在于允許用戶定義單獨的數據傳送序列和傳送信息,用戶可以用OMRON通信協議宏支持軟件很容易地修改通信序列,從而大大簡化編程,增加編程的靈活性,本文將對此進詳細的討論。
      3 PLC控制中通信協議宏的實現
      3.1 OMRON 通信協議宏
      通信協議宏功能是把同連接在RS232或RS422/485通用組件等各種通信機器之間的數據送收信息順序,通過通信協議宏支持軟件,讓用戶自由編制,以PMCR指令就能夠實現的用戶原始通信協議。
      要實現通信協議宏功能,必須有相應的硬件支持,即通信單元,C200HE包括COM01 ~ COM066種可選單元,其中COM04 ~ COM06支持通信協議宏功能。對于本文的工作,需要一個RS485的通信端口去控制變頻器,所以選擇COM06單元,其A口(RS485)與CT變頻器通信。B口(RS232)與觸摸屏進行通信,在選定連接好硬件之后,就可以進行通信協議宏的工作了。首先必須對通信單元作設定,根據變頻器的設定,使用ASCII協議,數據通信連接 :1位起始位,7位數據位,1位停止位,偶校驗,RS485兩線制,波特率為9600,故對COM06要將切換開關SW1調整到“2”側,終端電阻開關SW2設定為ON。另外,PLC的數據區DM6555、DM6556要設置成支持協議宏,并且通信連接的格式要與變頻器設定一致,在設置完成之后,可以編寫協議。用通信協議支持軟件可以建立多達1000個通信序列,即000 ~ 999,每個通信序列最多由16步組成,通信序列每一步的結構及各參數的含義如表1 所示。

      參數

      功能

      參數設置

      Repeat

      設置重復步的次數

      常數,IR/SR,LR,HR,ARDMEM區域

      Command

      設置通信命令

      發送,接收或發送與接收

      Retry

      設置在執行發送和接收命令發生錯誤時,重新執行次數

      0 ~ 9

      Send Wait

      設置在發送期間等候發送數據的時間

      單位0.01,0.1s1s1min

      Send Message

      設置用于接收命令或發送和接收命令的發送數據

      識別碼,地址,長度,數據,錯誤檢查碼和終止符

      Receive Message

      設置用于接收命令或接收和發送命令的期望接受數據

      識別碼,地址,長度,數據,錯誤檢查碼和終止符

      Array

      設置用于接收命令或接收和發送命令的期望接受數據(最多15種類型),并按數據類型調整處理

      識別碼,地址,長度,數據,錯誤檢查碼,終止符和下一步處理

      Response

      設置是否寫接收數據

      /

      Next

      設置當前步順利結束時轉往的下一步

      ENDGOTONEXTABORT

      Error

      設置當前步出現錯誤時轉往的下一步

      END,GOTO,NEXT,ABORT


      在通行序列各項參數的設置中,Send message和Receive Message是最重要的,因為它們不僅決定發送和接受信息的具體內容,而且其格式的設置要與具體的控制對象的通信協議相結合來確定,下文將對此進行詳細討論。
      3.2 CT變頻器的通信協議
      根據系統要求,給每臺Unidrive變頻器配備了CT公司提供的UD-71插入式通信模塊,該模塊內含1片32位RISC處理芯片,對外提供RS232和RS485兩個完全光隔的通信接口,可以方便地將變頻器連如RS485網絡。Unidrive變頻器與上位機之間的通信采用的命令和數據都是字符串,它具有特定的通信協議,該協議由CT公司提供,包括兩大類命令,即讀數據命令和寫數據命令,這兩類命令的格式介紹如下。
      3.2.1 寫命令
      當上位機(PLC)想設定網絡上某一臺變頻器的某一個參數時,上位機就發送下列格式的命令:

      控制

      地址

      控制

      參數

      數據

      控制

      校驗

      EOT

      GA GA UA UA

      STX

      M1 M 2 P1 P2

      D1……DN

      ETX

      BCC

      EOT——復位碼,STX——命令開始碼,ETX——命令結束碼,GA——組號,UA——單元號,M1、M2——參數號,P1、P2——參數在組內的序號,D1…DN——參數的值(D1為符號位),BCC——塊校驗和。
      由于寫命令可直接改變電機的運行狀態,為防止發生意外,寫命令的格式要求很嚴格,變頻器地址、參數、數據缺一不可。如果該命令能被變頻器識別,則變頻器返回ACK(成功),否則NAK(不成功)。
      例1 要將第1組的第2個變頻器的參數“1.15”寫為“1”,則傳送的信息如下。

      控制

      地址

      控制

      參數

      數據

      控制

      校驗

      EOT
      ( 04 )

      31 31 32 32

      STX ( 02 )

      30 32 32 35

      + ( 2B ) 31

      ETX
      ( 03 )

      BCC
      ( 3C )


      3.2.2 讀命令
      當上位機(PLC)想讀取網絡上某一臺變頻器的某一個參數時,上位機就發送下列格式的命令。

      控制

      地址

      參數

      控制

      EOT

      GA GA UA UA

      M1 M 2 P1 P2

      ENQ


      如果該命令能被變頻器識別,則變頻器將返回如下結構的信息。如果該命令能被變頻器識別,則變頻器將返回如下結構的信息。

      控制

      參數

      數據

      控制

      校驗

      STX

      M1 M2 P1 P2

      D1……DN

      ETX

      BCC


      上述格式中的符號ENQ為查詢碼,其余符號含義與寫命令相同。
      例2 要讀取第1組第2個變頻器的有功電值“4.02”參數,則傳送的信息如下。

      控制

      地址

      參數

      控制

      EOT ( 04 )

      31 31 32 32

      30 34 30 32

      ENQ ( 05 )


      返回信息為

      控制

      參數

      數據

      控制

      校驗

      STX ( 02 )

      30 34 30 32

      XXXXX

      ETX ( 03 )

      BCC


      這里值得一提的是BCC校驗和,為保證由變頻器出入的信息在傳輸的過程中的準確無誤,數據響應以塊校驗和數BCC字符結尾。BCC實際上是該命令中從STX控制碼之后開始的所有字符的ASCII碼的異或弛,若運算結果小于32,則加上20H,最終以ASCII碼對應的字符加到讀寫指令中,上位機可以用該值來校驗前面收到的數據的準確性。因此,例1中的BCC值為3C。
      3.3 通信協議宏在本系統控制中的實現
      前文已述及,在通信協議宏的編制中,發送信息和接收信息是最重要的,而發送信息和接收信息的編制是根據PLC通信協議宏的格式要求,以CT變頻器的通信協議為基礎來進行的。對變頻器的控制,不管是寫命令,還是讀命令,都包括發送和接收兩個信息(Send Message/Receive Message)。對于寫命令,發送的信息是某個變頻器的某個參數,接收的信息僅是1個位,即通信成功與否(ACK/NAK);對于讀命令,發送的信息是某個變頻器的某個參數,接受的信息是該參數的相關內容。因此,寫命令和讀命令的通信協議序列中,都包括發送信息和接收信息,即協議中Command參數應設為Send&Receive,確定通信協議序列之后,就可以編制具體的發送信息和接收信息。
      Send Message和Receive Message結構如下
      *Message Name Header(h) Terminator(t) Check Code(c) Length(l) Address(a) Data(d)其中(h)、(t)、(c)表示信息可開始位、結束位、校驗位,它們是由通信控制設備的協議所決定的,當設置(t)時,(l)自動附加,(a)是指信息送往目標的標志符,(d)用于設置信息內容。這里結合PMCR指令,對Address(a)和Data(d)作進一步解釋。通信協議宏在程序中是以PMCR指令來實現的,它的格式如下。
      PMCR
      C
      S
      D
      其中C為控制字,第1位用于指定端口,1:A口,2:B口,后3位表示通信序列,S表示發送數據首字,D表示接收數據首字。
      下面以本系統為例來說明通信協議宏的實現過程。
      要用PLC將其控制的3臺變頻器的參數讀回來,必須先將地址號和參數號發給相應的變頻器,變頻器識別后,再將返回的信息寫到PLC指定的區域內。
      實現過程分兩步,第一步編寫通信協議,關鍵的問題在于Send Messang和Receive Message中Address和Data的編寫。首先需設置它們的屬性——讀(R)或寫(W),對本例而言,Send Message中發送的地址號和參數號是從PLC的DM區中讀出后發送的,所以其屬性設為R;而Receive Message中接收到的信息是要寫入DM區的,所以其屬性設為W。設置了屬性,就可以進行第2步:從指定字中讀寫地址或數據。有幾種方法可以指定該字,一種通用的方法是用包括變量N的一階方程用于地址或數據的引入,每當通信序列步中指定的重復計數器重復一步時,變量N加1,使用帶N變量的方程計算地址或數據可實現地址和數據的動態傳輸。
      根據CT變頻器通信協議,讀變頻器參數信息時,每次先發送長度為8個字節的地址號和參數號,返回的信息長度不定,不妨每16個字節存放1條信息,數據長度由(t)確定后自動附加,Data中以通配符*表示。
      由此編制Send message和Receive message如下。

      *Message Name

      Header

      Terminator

      CheckCode Length

      Address

      Data

      Send1

      EOT

      ENQ

      (R(8N), 4)

      (h)+(a)+(R
      (8N+4), 4)+(t)

      Recv1

      STX

      EXT

      (W(16N), 4)

      (h)+(a)+(W(16N),*)+(t)


      以上面的通信協議(序列號設為1),假設發送信息存在DM300開始的單元,接收信息存入DM800開始的單元內,則用下面的一條PMCR指令就可連續讀取3臺變頻器的指定參數。
      PMCR
      #1001
      DM0300
      DM0800

      4 總結
      通信協議宏,可以用一條指令實現遵循同一個協議的多條信息傳送,大大簡化了編程,增加了編程的靈活性,這一功能被成功地應用于本系統中,不僅提高了程序的運行效果,而且在實際運行中取得了令人滿意的效果。目前該系統已在現場正常工作了兩個多月,整個系統的維修量和耗電量都大為降低。實踐證明,通信協議宏在系統中的應用是成功、有效的。
      在本系統的調試中,筆者體會到在使用通信協議宏時,一些細節的問題必須予以充分的考慮,否則,就不能充分發揮通信協議宏的功能,甚至會造成通信失敗,這里列舉幾個調試中遇到的問題。
      (1)在程序中,有多條PMCR指令時,盡量使用@PMCR——上升沿有效指令,否則可能引起各條指令之間的沖突,從而造成通信失敗。
      (2)當通信失敗時,通信忙位28908(內部繼電器)始終保持ON,必須在程序中有相應的復位手段,例如當28908保持ON超過一定時間時,可置通信復位繼電器28911為ON,使通信復位。
      (3)通信復位時,雖然可恢復通信,但此時,往往會失去通信所需的上升沿條件,必須在復位的同時,補發一個上升沿,可采用28911的常開觸點予以解決。
      總之,通信協議宏作為一種新穎的PLC通信手段,與傳統的方法相比,具有簡單、高效的優點。但實際應用中必須在理解基本原理的基礎上,充分考慮各種情況,才能真正發揮通信協議宏的優勢。


      文章版權歸西部工控xbgk所有,未經許可不得轉載。

      主站蜘蛛池模板: 中文字幕乱码亚洲精品一区| 亚洲.国产.欧美一区二区三区| 国模精品一区二区三区视频| 亚洲av无码一区二区三区乱子伦 | 精品国产伦一区二区三区在线观看 | 日韩十八禁一区二区久久| 亚洲人AV永久一区二区三区久久| 国产自产对白一区| 亚洲一区二区三区写真| 91久久精一区二区三区大全| 精品女同一区二区三区在线 | 国产一区在线mmai| 亚洲一区二区三区高清| 国产成人精品日本亚洲专一区 | 中文字幕VA一区二区三区 | 国产一区二区三区小说| 精品一区二区三区AV天堂| 久久精品免费一区二区喷潮 | 国产亚洲情侣一区二区无码AV| 韩国一区二区三区视频| 国产精品日韩欧美一区二区三区 | 免费看无码自慰一区二区| 日韩av片无码一区二区不卡电影| 亚洲天堂一区二区三区| 日韩在线一区视频| 国产大秀视频一区二区三区| 亚洲一区无码中文字幕| 国产在线精品一区二区在线观看| 国产在线精品一区二区高清不卡| 国产午夜精品一区二区三区不卡| AV怡红院一区二区三区| 亚洲老妈激情一区二区三区| 久久久久久综合一区中文字幕| 亚洲AV成人一区二区三区观看 | 制服丝袜一区在线| 亚洲高清一区二区三区电影| AV天堂午夜精品一区二区三区| 免费观看日本污污ww网站一区| 日韩动漫av在线播放一区| 日韩AV无码一区二区三区不卡毛片 | 中文字幕精品亚洲无线码一区应用|