无码人妻精品一区二区三区9厂-国产精品人人做人人爽人人添-在线永久免费观看黄网站-国产精品久久久久一区二区三区

首頁 新聞 工控搜 論壇 廠商論壇 產品 方案 廠商 人才 文摘 下載 展覽
中華工控網首頁
  P L C | 變頻器與傳動 | 傳感器 | 現場檢測儀表 | 工控軟件 | 人機界面 | 運動控制
  D C S | 工業以太網 | 現場總線 | 顯示調節儀表 | 數據采集 | 數傳測控 | 工業安全
  電 源 | 嵌入式系統 | PC based | 機柜箱體殼體 | 低壓電器 | 機器視覺
一種S7-300與S7-200自由口無線通信實現方法
收藏本文     查看收藏
1        項目簡介
濱州市污水處理廠占地100萬立方米。采用德國BIOLAK污水處理工藝,日處理水規模為10萬立方米。項目使用四套S7-300和兩套S7-200建成分布式控制系統,完成整個污水處理的控制、數據采集功能,本文僅敘述了項目的一部分——S7-300和S7-200通信內容。
S7-200PLC作為小型PLC,以其功能強、性價比高在工控領域中被廣泛應用。在S7-200與S7-300或WINCC通信時,通常需要安裝EM277或CP243-1模塊,成本升高,使得S7-200性價比優勢大打折扣。自由口通信是S7-200的突出特點之一,本文介紹了一種經濟靈活的通信方法,其可行性、可靠性在實際工程中得到驗證。圖1為濱州污水處理廠監控中心。
  圖1 濱州污水處理廠監控中心
            圖1 濱州污水處理廠監控中心
 
2        工程應用中的硬件及網絡結構
濱州污水處理廠自動化監控系統中,兩刮泥橋上各有一臺S7-200PLC,每臺PLC控制8臺吸泥泵及刮泥橋的正反向運動。S7-200PLC的柜子安裝在刮泥橋上,處于不停地來回運動中,不適合進行有線通信,采取了無線數傳電臺方式。
S7-200CPU上的通信口是基于RS485的,通過一個RS485/232轉換器將S7-200連接到電臺;在脫水機房的S7-300上掛一串口通信模塊CP340,并連接到數傳電臺,通過編程便可以實現S7-300與S7-200間的通信;監控室的上位機以MPI總線方式與S7-300通信,便可間接監控S7-200。系統網絡結構如圖2
 圖2 通信結構圖
 2 通信結構圖
3        通信功能的實現
通信程序要實現S7-300向一個S7-200站發送7個字節的數據,然后接收并存儲該S7-200返回的6個字節數據。S7-300發送的7個字節中,第1個字節是地址信息,第2、3、4字節是吸泥泵及刮泥橋控制數據信息,第5、6字節是1、2字節和3、4字節異或值,作為校驗判斷信息,第7位字節數據信息無意義,僅僅是為了觸發一次S7-200的字符接收中斷程序;S7-200向S7-300發送的6個字節中,第1個字節是S7-200的站地址信息,第2、3、4字節是吸泥泵及刮泥橋狀態數據信息,第5、6字節為校驗信息。
3.1        S7-300端通信程序
在自由口模式下,無論S7-200還是S7-300,通信協議完全由程序控制。CP340通過調用FB2 P_RCV來接收數據,調用FB3 P_SEND來發送數據。發送功能塊FB3 P_SEND的參數REQ上升沿初始化發送請求,參數DB_NO指定發送數據塊編號,參數DBB_NO是發送數據在參數DB_NO指定數據塊中起始字節,LEN指定傳輸數據的字節長度;接收功能塊FB2 P_RCV參數EN_R允許讀數據,參數DB_NO指定接收數據塊編號,參數DBB_NO是接收數據在參數DB_NO指定數據塊中起始字節。
S7-300采用輪循方式與兩S7-200通信,即第一秒內向1號站發送數據,然后接收1號站返回的數據(S7-200在接收到S7-300發送的數據后會立刻向S7-300發送數據);第二秒內向2號站發送數據,然后接收2號站返回的數據,不停地循環通信。S7-300通信程序流程如圖3。
 圖3 S7-300通信程序流程圖
3 S7-300通信程序流程圖
   S7-300通信程序詳細介紹
AN   M     30.0
L    S5T#2S
SD   T     1
A    M     30.0
R    T     1
L    T     1
T    MW    40
NOP  0
A    T     1
=    M     30.0
//設一2秒定時器,定時時間到自動進行下一次定時,當前值存入MW40
A(
L     MW    40
L     102
>I
)
A(
L     MW40
L     200
<I
)
=     M30.1
// 定時器第一秒鐘內,即102<MW40<200,M30.1為1
A(   
  L     MW    40
  L     2
   >I   
   )    
  A(   
     L     MW    40
     L     100
     <I   
     )    
 =   M     30.2
//定時器第二秒鐘內M30.2為1
A    (   
      A     M     30.1
      JNB   _001
      L     0
      T     MW    34
      SET  
      SAVE 
      CLR  
_001: A     BR
      )    
      JNB   _002
      L     0
      T     MW    36
_002: NOP   0
// M30.1為1時,即定時器第一秒內,使MW34=0、MW36=0,作為起始字節值
A    (   
      A     M     30.2
      JNB   _003
      L     8
      T     MW    34
      SET  
      SAVE 
      CLR  
_003: A     BR
      )    
      JNB   _004
      L     8
      T     MW    36
_004: NOP   0
// M30.2為1時,即定時器第二秒內,使MW34=8、MW36=8,作為起始字節值
O     M     30.1
O     M     30.2
=     M     33.0
A     M     33.0
=     L     20.0
  BLD   103
  CALL  "P_SEND" , DB19
  REQ   :=L20.0
  R     :=
  LADDR :=320
  DB_NO :=2
  DBB_NO:=MW34
  LEN   :=7
  DONE  :=M50.1
  ERROR :=M50.2
  STATUS:=MW52
  NOP   0
// 調用發送指令,當M30.1為1時(其上升沿初始化發送請求),即定時器第一秒內發送DB2.DBB0起始的7個字節,第一個字節為1站地址;當M30.2為1時(其上升沿初始化發送請求),即定時器第2秒內發送DB2.DBB8起始的7個字節,第一個字節為2站地址
  A     M     33.0
  =     L     20.0
  BLD   103
  CALL  "P_RCV" , DB20
  EN_R  :=L20.0
  R     :=
  LADDR :=320
  DB_NO :=22
  DBB_NO:=MW36
  NDR   :=M60.1
  ERROR :=M60.2
  LEN   :=MW62
  STATUS:=MW64
  NOP   0
// 調用接收指令,當M30.1為1時(允許讀數據),即定時器第一秒內接收1號S7-200站回傳的6字節數據,存入DB22數據塊中,起始字節為DB22.DBB0;當M30.2為1時,即定時器第2秒內接收2號S7-200站回傳的6字節數據,存入DB22數據塊中,起始字節為DB22.DBB8
3.2  S7-200端通信程序
    S7-200 PLC程序分為主程序、子程序和中斷程序,主程序完成控制和子程序調用功能,子程序完成通信口初始化功能,中斷程序完成數據的接收和發送功能。發送數據采用發送指令XMT,接收數據采用逐字節接收方法,通信口接收每個字節都會暫存到特殊存儲器SMB2中,并且產生中斷,利用中斷程序控制數據的接收。由于S7-200CPU的通信是建立在RS-485半雙工通信硬件的基礎上,接收和發送不能同時進行。通信中斷程序要做到:接收指令不結束,就不能執行發送指令。
反映S7-200CPU工作方式的模式開關當前位置的特殊存儲器位為SM0.7,它控制自由端口模式的進入。當模式開關處于TERM位置時,SM0.7為0;當模式開關處于RUN位置時,SM0.7為1。SMB30是自由口模式控制字節,用來設定校驗方式、通信協議、波特率等通信參數(其各個位含義參閱相關手冊),中斷事件號8為端口0接收字符中斷,中斷事件號9為端口0發送完成中斷。
當SM0.7為1時,調用子程序SBR_0設置SMB30,允許進行自由口通信;SM0.7為0時,調用子程序SBR_1重新設置SMB30,停止自由口通信,恢復PPI通信,便于用Micro/WIN軟件對CPU運行狀態進行監視。S7-200通信程序流程如圖4
 圖4 S7-200通信程序流程圖
4 S7-200通信程序流程圖
 
S7-200通信程序詳細介紹(1號站)
 
主程序MAIN(只給出與通信有關程序)
LD     SM0.1
MOVB   1, VB1
//設置站地址
LD     SM0.7
EU
O      SM0.1
CALL   SBR_0
//首次運行或模式開關從TERM打到ON時定義通信口為自由口
LD     SM0.7
ED
CALL   SBR_1
//模式開關從ON撥到TERM時定義通信口為PPI從站
  子程序SBR_0
LD     SM0.0
MOVB   16#09, SMB30
ENI
ATCH   INT_11, 8
//定義通信口0為自由口模式,9.6K波特率,無校驗,8位數據位,連接接收字符中斷為中斷程序INT_11
  子程序SBR_1
LD     SM0.0
MOVB   16#C0, SMB30
DTCH   8
DTCH   9
//恢復普通PPI通信設置
中斷程序INT_11
LD     SM0.0
AB=    SMB2, VB1
MOVW   +5, VW200
MOVD   &VB640, VD688
ATCH   INT_12, 8
//若站地址正確,連接接收字符中斷到中斷程序INT_12,并使VW200=5來計數,在INT_12中連續接收五個字節;若站地址錯誤,則繼續由INT_11接收字節數據,要在S7-300中程序中將其余六個字節的高位進行設計,避免出現為內容1或2地址信息的字節,即使傳輸過程中因外界干擾,其余六個字節出現為1或2的假地址情況,程序也會在接下來1~2個接收過程中,因INT_13中斷程序中的校驗指令作用,得到錯誤校驗值,而恢復到正常接收狀態。
中斷程序INT_12
LD     SM0.0
MOVB   SMB2, *VD688
INCD   VD688
DECW   VW200
//接收5個字節
LD     SM1.0
MOVB   1, VB639
MOVW   VW639, VW700
XORW   VW641, VW700
ATCH   INT_13, 8
//通過異或指令進行數據校驗,連接接收字符中斷到中斷程序INT_13,即由第七個字節觸發中斷程序INT_13
中斷程序INT_13
LD     SM0.0
DTCH   8
//中斷分離
LDW=   VW700, VW643
MOVD   VD640, VD400  //校驗正確,將控制信息數據存到VB400~VB402
MOVB   6, VB600
MOVB   VB1, VB601
BMB    VB100, VB602, 5
ATCH   INT_14, 9
XMT    VB600, 0
//校驗正確,使能發送,發送6字節數據VB601~VB606,連接發送指令結束到中斷程序INT_14
LDW<>  VW700, VW643
ATCH   INT_11, 8
//校驗不正確,連接接收字符中斷到中斷程序INT_11,進行新一次接收
中斷程序INT_14
LD     SM0.0
DTCH   9
ATCH   INT_11, 8
//發送結束則連接接收字符中斷到中斷程序INT_11,進行新一次接收
 
4        電臺選型和故障判斷
數傳電臺選擇了深圳友訊達科技發展公司的FC-201/B,該數傳電臺以其價格合理、運行穩定在國內得到廣泛應用。通過友訊達提供的電臺軟件pfc5對電臺進行參數設置,在S7-200兩個站處將電臺參數設置為:發射頻率453.00,接收頻率465.00,空中速率1200bps,工作模式為透明模式,串口波特率9600bps,串口校驗和設為無;在S7-300站處將電臺的參數中發射頻率設為465.00,接收頻率設為453.00,與S7-200站處電臺收發頻率對應,其余參數一致。
FC-201/B數傳電臺有一個發送和接收指示燈,當發送數據時為紅燈,接收數據時為綠燈。根據此燈可以方便的判斷通訊是否正常,正常情況下,S7-300輪循方式與兩S7-200通信,即第一秒內向1號站發送數據,然后接收1號站返回的數據(S7-200在接收到S7-300發送的數據后會立刻向S7-300發送數據);第二秒內向2號站發送數據,然后接收2號站返回的數據,不停地循環通信。S7-300站處電臺通訊指示燈紅閃一下,接著綠閃一下,處在不停的紅-綠-紅-綠循環狀態。而S7-200站在接收S7-300發送的數據時,要經過地址數據字節判斷,確認地址為本站,并且對接收數據進行校驗,確定接收數據無誤才回傳S7-300數據,但是只要S7-300發送數據,S7-200就接收數據,即使是發送給另一個S7-200站的數據。所以在無外界干擾,數據發送沒有校驗錯誤的情況下,S7-200站處的電臺通訊燈是綠閃兩下,紅閃一下,處在不停的綠-綠-紅循環狀態,即接收兩次數據,發送一次數據。如果通訊出現故障,根據通訊燈的閃爍狀態,便可很容易查出通訊故障所在。
 
5  結束語
上位機WINCC通過訪問S7-300的數據塊DB2和DB22,就可以實現對兩個S7-200PLC站的監控。自本系統投入運行以來,運行穩定可靠,收到用戶好評。本通信方案經濟、靈活,程序可移植性強,對于類似項目具有很高的借鑒意義。
 

 

狀 態: 離線

公司簡介
產品目錄
供應信息

公司名稱: 西門子(中國)有限公司工廠自動化傳感器
聯 系 人: 楊同錄
電  話: 010-64765428
傳  真: 010-64764813
地  址: 北京朝陽區望京中環南路7號西門子傳感器與通訊部
郵  編: 100102
主  頁:
 
該廠商相關解決方案:
LG200 導波雷達物位計測量液體界面的應用
西門子S7-200 PLC在均勻化著色電源中的應用
西門子S7-300軟冗余系統在垃圾處理自控系統中的應用
西門子信息化電能管理系統
事件順序記錄(SOE)1ms在PCS7中的實現
S7-200 PLC在汽車轉向泵自動裝配線中的應用
西門子SIMATIC產品在焦爐自動配煤控制系統中的應用
S7-300在銅加工行業φ2150盤拉機控制系統中的應用
S7-200在玻璃行業平鋼化控制系統中的應用
西門子雷達液位計在儲罐的應用的探討
SIWAREX FTA電子稱重模塊在全自動配料控制中的應用
更多方案...
立即發送詢問信息在線聯系該解決方案廠商:
用戶名: 密碼: 免費注冊為中華工控網會員
請留下您的有效聯系方式,以方便我們及時與您聯絡

關于我們 | 聯系我們 | 廣告服務 | 本站動態 | 友情鏈接 | 法律聲明 | 不良信息舉報
工控網客服熱線:0755-86369299
版權所有 中華工控網 Copyright©2022 Gkong.com, All Rights Reserved