當前位置:機電之家首頁 >> PLC技術>> 國標規(guī)程 >> PLC操作規(guī)程 >> 西門子s7-1200與第三方設備自由口通信原理及步驟說明
西門子s7-1200與第三方設備自由口通信原理及步驟說明

西門子s7-1200 緊湊型plc在當前的市場中有著廣泛的應用,由于其性價比高,所以常被用作小型自動化控制設備的控制器,這也使得它經常與第三方的設備如掃描槍、打印機等設備進行通訊。因為沒有第三方的設備,這里就以超級終端為例介紹自由口通訊。

1.控制系統(tǒng)原理

1.jpg

2.硬件需求

s7-1200 plc目前有3種類型的cpu:

1)s7-1211c cpu。

2)s7-1212c cpu。

3)s7-1214c cpu。

這三種類型的cpu都可以連接三個串口通信模版。

本例中使用的plc硬件為:

1)pm1207電源 ( 6ep1 332-1sh71 )

2) s7-1214c ( 6es7 214 -1be30 -0xb0 )

3) cm1241 rs232 ( 6es7 241 -1ah30 -0xb0 )

3.軟件需求

1)編程軟件step7 basic v10.5 ( 6es7 822-0aa0-0ya0)

4.組態(tài)

我們通過下述的實際操作來介紹如何在step7 basic v10.5 中組態(tài)s7-1214c 和超級終端通信。

點擊桌面上的“totally integrated automation portal v10”圖標,打開如下圖:

2.jpg首先需要選擇“create new project”選項,然后在“project name:”里輸入ptp;在“path:”修改項目的存儲路徑為“c:\”;點擊“create”,這樣就創(chuàng)建了一個文件ptp的新項目。創(chuàng)建后的窗口如下圖所示:

3.jpg點擊門戶視圖左下角的“project view”切換到項目視圖下,如下圖:

4.jpg

打開后,在“devices”標簽下,點擊“add new device”,在彈出的菜單中輸入設備名“plc_1”并在設備列表里選擇cpu的類型。選擇后如下圖:

5.jpg插入cpu后,點擊cpu左邊的空槽,在右邊的“catalog ”里找到“communication”下的rs232模塊,拖拽或雙擊此模塊,這樣就把串口模塊插入到硬件配置里,接下來就需要配置此rs232模塊硬件接口參數,選擇rs232模塊,在其下方會出現該模塊的硬件屬性配置窗口, 在屬性窗口里有兩個選項,一個是“general”;一個是“rs232 interface”。在“general”里包括了此模塊的“項目信息”和“訂貨信息”;而在“rs232 interface”里包括“項目信息”、“端口的配置”、“發(fā)送信息的配置”、“接收信息的配置”和“硬件識別號”。在這里我們選擇“rs232 interface”,在“端口”配置的選項里,進行端口的參數配置,

波特率為:9600 ;

校驗方式:無 ;

數據位為:8 ;

停止位:1;

硬件流控制:無;

等待時間:1ms

設置參數如下圖:

6.jpg

此時確認一下“硬件識別號”為11。

此時,完成了硬件的組態(tài),接下來需要編寫串口通訊程序,在這里我們實現兩個功能:

a、 s7-1200 發(fā)送數據給超級終端;

b、 超級終端發(fā)送數據給s7-1200

對于第一個功能:s7-1200發(fā)送數據給超級終端,實際上是s7-1200是數據的發(fā)送方,超級終端是數據的接收方,對于s7-1200需要編寫發(fā)送程序;而對于超級終端來說,只要打開超級終端程序,配置硬件接口參數與前面s7-1200的端口參數一只即可。

下面的步驟將具體介紹此功能實現的步驟:

①、在plc中編寫發(fā)送程序。在項目管理視圖下雙擊“device”下的程序塊下的main(ob1),打開ob1,在主程序中調用send_ptp功能塊如下圖所示:(注:send_ptp在指令庫下的擴展指令中通訊指令下)

11.jpg要對send_ptp賦值參數,首先需要創(chuàng)建send_ptp的背景數據塊和發(fā)送緩沖數據塊 ,雙擊“devices”——>; “plc_1”——>;“program block ”——“add new block”,在彈出的串口命名db_send_ptp,選擇db塊,在type后選擇“send_ptp(sfb113)”

12.jpg插入背景db后,再插入發(fā)送緩沖db塊,重復上面的步驟,只是在選擇db類型為“bbbbbb db”,并去掉“symbolic access only”選項勾(這樣可以對該db塊進行直接地址訪問),并取名該db塊為db_send_buff。建好這兩個db塊后,雙擊打開db_send_buff預先定義好要發(fā)送的數據,如下圖所示:

99.jpg

定義完發(fā)送緩沖區(qū)后,接下來就可以對send_ptp賦值參數,賦值參數后如下圖:

13.jpg

在上面的編程塊里需要注意的是,在指定發(fā)送緩沖區(qū)時。字符的開始地址是從第二個字節(jié),而不是零字節(jié)開始,即是p#db2.dbx2.0 byte10 而不是p#db2.dbx0.0 byte10,原因是由于s7-1200對字符串的存放的格式造成的,s7-1200對字符串的前兩個字節(jié)的定義第一字節(jié)是最大的字符長度,第二個字節(jié)是實際的字符長度。接下來才是存放實際字符。如下圖:

56.jpg

上面就完成了程序的編寫,對項目進行編譯;右擊plc_1項目在彈出的菜單里選擇“complies all”選項,這樣就對硬件與軟件進行編譯,如下圖:

57.jpg編譯且沒有錯誤后就可以下載程序到plc中,同樣右擊plc_1項目,在彈出的菜單選擇“download to device”。

②、用串口交叉線連接s7-1200的串口與計算機的串口,打開計算機的超級終端程序,并設置硬件端口參數如下圖:

58.jpg③、打開ob1功能塊在線監(jiān)控程序,在變量監(jiān)控表里強制m0.0為1,觸發(fā)數據的發(fā)送,此時在超級終端就會接收到發(fā)送的數據,如下圖:

59.jpg

對于第二個功能:超級終端發(fā)送數據給s7-1200,實際上是s7-1200是數據的接收方,超級終端是數據的發(fā)送方,對于s7-1200需要編寫接收程序;而對于超級終端來說,只要打開超級終端程序,配置硬件接口參數與前面s7-1200的端口參數一致,在界面上輸入發(fā)送內容即可。

下面的步驟將具體介紹此功能實現的步驟:

①、在plc中編寫發(fā)送程序。在項目管理視圖下雙擊“device”下的程序塊下的main(ob1),打開ob1,在主程序中調用rcv_ptp功能塊如下圖所示:(注:rcv_ptp在指令庫下的擴展指令中通訊指令下)

60.jpg要對rcv_ptp賦值參數,首先需要創(chuàng)建rcv_ptp的背景數據塊和發(fā)送緩沖數據塊 ,雙擊“devices”——>; “plc_1”——>;“program block ”——“add new block”,在彈出的串口命名db_rcv_ptp,選擇db塊,在type后選擇“rcv_ptp(sfb114)”

61.jpg插入背景db后,再插入接收緩沖db塊,重復上面的步驟,只是在選擇db類型為“bbbbbb db”,并去掉“symbolic access only”選項勾(這樣可以對該db塊進行直接地址訪問),并取名該db塊為db_rcv_buff。建好這兩個db塊后,雙擊打開db_rcv_buff定義接收緩沖區(qū)數據的類型,如下圖所示:

62.jpg

定義完接收緩沖區(qū)后,接下來就可以對rcv_ptp賦值參數,賦值參數后如下圖:

63.jpg在上面的編程塊里需要注意的是,在指定接收緩沖區(qū)時。字符的開始地址是從第二個字節(jié),而不是零字節(jié)開始,即是p#db2.dbx2.0 byte10 而不是p#db2.dbx0.0 byte10,原因是由于s7-1200對字符串的存放的格式造成的,s7-1200對字符串的前兩個字節(jié)的定義第一字節(jié)是最大的字符長度,第二個字節(jié)是實際的字符長度。接下來才是存放實際字符。如下圖:

64.jpg上面就完成了程序的編寫,對項目進行編譯;右擊plc_1項目在彈出的菜單里選擇“complies all”選項,這樣就對硬件與軟件進行編譯,如下圖:

65.jpg

編譯且沒有錯誤后就可以下載程序到plc中,同樣右擊plc_1項目,在彈出的菜單選擇“download to device”。

②、用串口交叉線連接s7-1200的串口與計算機的串口,打開計算機的超級終端程序,并設置硬件端口參數如下圖:

66.jpg在桌面上新建文本文件,打開此文本文件在里面輸入“gfdcba”,如下圖:

67.jpg③、打開變量監(jiān)控表,強制m0.0,使能接收。然后, 在超級終端里,選擇菜單“transfer”下的“send text file”,在打開的窗口里找到桌面 上的文本文件。

68.jpg打開db_rcv_buff數據塊,在線查看接收到的數據,如下圖:

69.jpg通過上面的例子實現了簡單的應用,在實際的應用過程中,需要按第三方設備的協(xié)議進行編寫s7-1200的程序。

作者:未知 點擊:1744次 [打印] [關閉] [返回頂部]
本文標簽:西門子s7-1200與第三方設備自由口通信原理及步驟說明
* 由于無法獲得聯系方式等原因,本網使用的文字及圖片的作品報酬未能及時支付,在此深表歉意,請《西門子s7-1200與第三方設備自由口通信原理及步驟說明》相關權利人與機電之家網取得聯系。
電子樣本

SN系列樣冊
:鞏經理
:13915946763
:南京塞姆泵業(yè)有限公司
個人求購

曾經理 【求購】  定制酒店香...  2025-12-12
張瑜 【求購】  防靜電橡膠...  2025-12-12
劉強 【求購】  保溫板  2025-12-12
曹先生 【求購】  鎂合金  2025-12-12
趙經理 【求購】  防火密封膠  2025-12-12
A 【求購】  鐵路接觸網...  2025-12-11
 【求購】  西門子ET...  2025-12-11
唐多 【求購】  DCS系統(tǒng)...  2025-12-11
VIP公司推薦