時間:2018-04-17 10:59:55來源:網絡轉載
在上一篇文章中,我們提到了有關于自由口通信的一些基礎知識,給大家解釋了什么叫通信協議,什么叫信息幀或消息報文,起始符/結束符與起始位/停止位之間的關系。那么今天就跟大家聊聊西門子S7200系列的自由口通信功能及程序的設計。
自由口通信模式(FreeportMode)是S7-200系列PLC的一個很有特色的功能,借助自由口通信,用戶可以自己使用(XMT和RCV)對端口進行操作,可以是S7-200系列PLC與任何通信協議已知且具有串口的智能設備和控制器實現通信,如打印機,變頻器,智能儀表等。
S7-200CPU上的通信口在電氣上是標準的RS-485半雙工串行通信(所謂半雙工通信即發送和接收不能同時進行,所以在設計程序的時候,發送完后才能接收,接收完后才能發送)此串行字符通信的格式可以包括:
(1)一個起始位
(2)7位或是8位字符(數據字節)
(3)一個奇/偶校驗位,或者沒有校驗位
(4)一個停止位
(5)波特率:1200、2400、4800、9600、19200、38400、57600或112500bps的波特率
滿足以上條件的通信的格式,都可以使用自由口通信的方式去完成信息的交換。
若需要使用PLC通過自由口的方式發生數據出去,必須完成以下幾個內容:
(1)通信格式的設置,用于規定通信雙方的通信格式
(2)PLC需要通過XMT指令發送的數據,可以根據通信協議提供的信息幀格式去準備,
(3)信息發送完成的判斷,用戶只有根據信息是否發送完成后,才可以進行信息的接收程序的設計或是決定下一次的發送。
以上一篇文章中提到的儀表的通信協議為例:
(1)設置要PLC的中的通信格式字。
通信格式字的設置對于PLC來講有特殊的系統存儲器來進行存儲,在200系列PLC中通過SMB30(port0口)SMB130(Port1口)來進行存儲,設置通信格式字是必須配合從站設備來進行設置,如下所示為儀表提供的參數設置
在這里面,若選擇9600的波特率,一位停止位、8個數據、無校驗的方式,(注意:不能設置為2個停止位,因PLC自由口通信時不支持2個停止位)。則PLC中通信格式字可設置為16#09.通信格式字按照下圖所示進行設置:
(2)根據通信協議準備需要通過XMT指令發送出去的數據:
假設需要讀取儀表中的過程值,需要根據通信協議的格式,然后準備好相應的數據:
XMT指令格式:
注:T表示的是指令中TBL的地址,如如所示:T表示VB0,所以T+0表示VB0,T+1,表示VB1依次下去。port表示的是PLC的端口號。
可以通過在數據塊中定義好你需要發送的數據:
(3)信息發送完成的判斷
判斷信息是否發送完成可以通過兩種方式進行判斷,
一種使用發送完成中斷的方式去判斷
port0和port1有對應發送完成中斷事件,可以通過發送完成中斷事件來判斷信息是否發送完成。PORT0和PORT1兩個端口分別分配了兩個中斷事件用來表示信息發送完成。對于PORT0口來說分配中斷事件9,對于PORT1口來說分配中斷事件26
也可以通過系統存儲位來進行判斷.
通過特殊完成標志位來進行判斷,可以通過對發送完成標志位SM4.5(port0)或SM4.6(port1)的監控來判斷數據是否發送完成。SM4.5=1表示端口0處于空閑狀態,SM4.5=0表示端口0處于傳送狀態。
標簽:
中國傳動網版權與免責聲明:凡本網注明[來源:中國傳動網]的所有文字、圖片、音視和視頻文件,版權均為中國傳動網(www.siyutn.com)獨家所有。如需轉載請與0755-82949061聯系。任何媒體、網站或個人轉載使用時須注明來源“中國傳動網”,違反者本網將追究其法律責任。
本網轉載并注明其他來源的稿件,均來自互聯網或業內投稿人士,版權屬于原版權人。轉載請保留稿件來源及作者,禁止擅自篡改,違者自負版權法律責任。
產品新聞
更多>2025-06-16
2025-06-09
2025-06-06
2025-05-19
2025-04-30
2025-04-11