欧美视频综合-欧美视频中文字幕-欧美视频在线观在线看-欧美视频在线观看网站-直接观看黄网站免费视频-正在播放久久

當前位置:機電之家首頁 >> PLC技術>> PLC手冊 >> PLC操作手冊 >> 以兩個s7-1200plc數據傳輸為例介紹s7通信
以兩個s7-1200plc數據傳輸為例介紹s7通信

s7-1200系列cpu本體上都集成以太網接口,其中cpu1211c、1212c和1214c都具有一個以太網rj45接口,而cpu 1215c、1217c提供了兩個以太網r45接口。s7-1200系類plc可以通過以太網接口直接或者通過交換機與其他設備進行通信。當一臺s7-1200plc需要其它plc或觸摸屏或變頻器通信時,這時只需要直接連接即可。當兩臺及以上的設備需要通信時,此時需要交換機進行網絡連接。以太網通信可以分為多種通信方法,比如s7通信、ouc通信、modbus-tcp通信和frofient io通信等。其中,s7通信是眾多通信方式中最簡單、最常用的一種通信方法。s7-1200plc選擇s7通信時,需要在博圖軟件本地(客服端)cpu調用put和get兩個指令,put指令的作用是寫入數據到伙伴(服務端)cpu中,get指令的作用是從伙伴(服務端)cpu中讀取數據。

put和get指令在指令工具欄中—“通信”—“s7通信”中,兩個指令具體含義如下:get從遠程(伙伴、服務端)cpu讀取數據,put向遠程(伙伴、服務端)cpu寫入數據。

1.jpg

使用get指令從遠程cpu中讀取數據,遠程cpu可處于run或stop模式下。使用put指令將數據寫入遠程cpu,遠程cpu可處于run或stop模式下。put和get指令各個引腳含義如下表所示。使用put指令時需要注意幾個問題:id在進行s7通信連接時會自動生成,為十六進制數,比如w#16#100。指向服務端cpu寫入區域的指針addr_x,如果寫入區域為數據塊,則該數據塊必須為標準訪問的數據塊,不支持優化的塊訪問。sd_x指向客戶端cpu上包含要發送數據的區域。通常情況下addr_x和sd_x均為指針形式。指針變量是用來存放內存地址的變量。在put/get指令中addr_x和sd_x寫法,比如p#m50.0 byte 5,其含義為指向以地址m50.0開始,長度為5個byte的存儲空間,即從mb50到mb54。比p#db1.dbx0.0 byte 10的含義為指向以數據塊db1中dbx0.0開始,長度為10個byte的存儲空間,即db1.dbb0到db1.dbb9。指向服務端cpu寫入區域的指針addr_x,如果寫入區域為數據塊,則該數據塊必須為標準訪問的數據塊,不支持優化的塊訪問。指向客戶端cpu發送區域的指針sd_x,本地數據區域可支持優化訪問或標準訪問。通信伙伴cpu為s7-1200//1500cpu系列,需要在伙伴cpu屬性的“防護與安全”—“連接機制”中激活“允許來自遠程對象的put/get通信訪問”。

使用get指令時需要注意幾個問題:id在進行s7通信連接時會自動生成,為十六進制數,比如w#16#100。指向服務端cpu寫入區域的指針addr_x,如果寫入區域為數據塊,則該數據塊必須為標準訪問的數據塊,不支持優化的塊訪問。指向客戶端cpu發送區域的指針rd_x,本地數據區域可支持優化訪問或標準訪問。服務端cpu為s7-1200/1500cpu系列,需要在伙伴cpu屬性的“防護與安全”→“連接機制”中激活“允許來自遠程對象的put/get通信訪問。

2.jpg

下面以兩個s7-1200 cpu1212c之間s7通信,傳遞數據為例,介紹s7通信的應用。

第一步,設備組態

在博圖軟件中新建項目,添加兩個s7-1200 cpu1212c設備組態。修改其以太網地址,將plc_1以太網地址修改為192.168.0.1,將plc_2以太網地址修改為192.168.0.2。在plc_1啟用時鐘存儲器字節。

第二步,s7組態連接。

3.jpg

打開網絡視圖,在網絡視圖中單擊“連接”按鈕,按鈕右側下拉選項中選擇“s7連接”,將plc_1與plc_2連接起來。

第三步,編寫程序

在plc_1主程序ob1中,調用“put”指令,并對其進行組態設置。在伙伴欄選擇

“plc_2[cpu 1212c dc/dc/dc]”,下方端口、子網、子網名稱、地址、連接id與連接名稱等均會自動生成相關內容。因plc_1為客戶端,應勾選“主動建立連接”。

4.jpg

put指令各個端口連接如下圖所示。圖中指令req選擇m0.5,m0.5是1hz的時鐘存儲器字節,由于req是上升沿有效,則實現功能為每秒完成一次從plc_1到plc_2數據傳輸。id是自動生成的。addr_1和sd_1所連接指針都為p#m100.0 byte 1,p#m100.0 byte 1的含義為指向從m100.0開始,長度為1個byte的空間,即mb100。下面程序段實現的功能為每秒將客戶端地址mb100中數據就傳遞到服務端地址mb100中。

5.jpg

在cpu 1的主程序ob1中,調用“get”指令,并對其進行組態設置。在伙伴欄選擇“plc_2[cpu 1212c dc/dc/dc]”,下方端口、子網、子網名稱、地址、連接id與連接名稱等均會自動生成相關內容。因plc_1為客戶端,應勾選“主動建立連接”。

6.jpg

get指令各個端口連接如下圖所示。圖中指令req選擇m0.5,m0.5是1hz的時鐘存儲器字節,由于req是上升沿有效,則實現功能為每秒完成一次從plc_1到plc_2數據傳輸。id是自動生成的。addr_1和sd_1所連接指針都為p#m10.0 byte 1,p#m10.0 byte 1的含義為指向從m10.0開始,長度為1個byte的空間,即mb10。下面程序段實現的功能為每秒讀取伙伴cpu地址mb10中數據存儲在本地cpu地址mb10中。

7.jpg

下面程序段實現的功能為,將mb20中數據傳遞給mb100。

8.jpg

上面三段程序都是在plc_1主程序中編寫,下面在plc_2主程序中編寫下面程序。實現的功能為,將mb30中數據傳遞給mb10。

9.jpg

第四步,下載組態和程序

兩個cpu的組態配置與編程均已完成,分別將其下載至對應的仿真plc中。將兩個cpu轉到在線模式并打開監控。在plc_1程序中將mb100設置為16#5,經過put指令,將plc_1中mb100存儲數據傳遞到plc_2中mb100,從下圖中可知,plc_2中mb100為16#5。

10.jpg

在plc_2程序中將mb10設置為,經過get指令,讀取plc_2中mb10存儲數據存儲到plc_1中mb10,從下圖中可知,plc_1中mb10為16#5。

11.jpg

通過上述分析可知,兩個plc之間成功完成s7通信連接,是put/get指令數據訪問成功的關鍵。建立s7連接成功后,就可以通過put指令發送數據給伙伴cpu,通過get指令獲取伙伴cpu的數據。

作者:未知 點擊:1766次 [打印] [關閉] [返回頂部]
本文標簽:以兩個s7-1200plc數據傳輸為例介紹s7通信
* 由于無法獲得聯系方式等原因,本網使用的文字及圖片的作品報酬未能及時支付,在此深表歉意,請《以兩個s7-1200plc數據傳輸為例介紹s7通信》相關權利人與機電之家網取得聯系。
電子樣本

中基斯頓擺線液壓馬達
:余翰林
:18857411608
:寧波中基斯頓液壓機械有限公司
個人求購

白經理 【求購】  黃原膠  2025-4-11
周青青 【求購】  放電檢測儀  2025-4-11
何女士 【求購】  保險柜  2025-4-11
王劍 【求購】  并聯機械手  2025-4-11
牛先生 【求購】  防爆空調  2025-4-11
王文婷 【求購】  ??稻W絡攝...  2025-4-10
鄒小雄 【求購】  5軸深孔鉆  2025-4-10
岑工 【求購】  防爆電柜  2025-4-10
VIP公司推薦