日韩欧美视频第二区,秋霞成人午夜鲁丝一区二区三区,美女日批视频在线观看,av在线不卡免费

電子開發(fā)網(wǎng)

電子開發(fā)網(wǎng)電子設(shè)計 | 電子開發(fā)網(wǎng)Rss 2.0 會員中心 會員注冊
搜索: 您現(xiàn)在的位置: 電子開發(fā)網(wǎng) >> 電子開發(fā) >> 梯形圖實例 >> 正文

深度剖析西門子PLC的開放式TCP通信梯形圖 TCP通訊

作者:佚名    文章來源:本站原創(chuàng)    點擊數(shù):    更新時間:2022/10/22

對于自控或電氣工程師來說,西門子PLC是每個人都非常熟悉的一款PLC品牌;而對于上位機開發(fā)工程師來說,Socket通信或TCP/IP協(xié)議也是必須要掌握的一種通信方式。剛好手頭有一款西門子的200Smart PLC,可以利用它來跟大家聊聊Socket通信的那些事兒。

相比較而言,西門子PLC對Socket通信的支持性是很不錯的。如果你在使用西門子軟件或者逛西門子論壇時,發(fā)現(xiàn)一個詞叫做Open User Communication或開放式通信,沒錯,那其實就是我們說的Socket通信方式。關(guān)于這一點,我們可以從以下兩張圖中看出,分別為S7-200Smart編程軟件Micro/Win Smart V2.5及博途TIA V15.1編程軟件中關(guān)于通信庫的部分截圖:

 

 

我們可以看到無論是西門子的中高端PLC還是低端PLC,都是支持開放式TCP/UDP通信的,既然都支持,我們來看下如何實現(xiàn)。

眾所周知,對于Socket通信來說,是可以支持TCP、UDP等多種通信方式,但是今天在這里,我們主要針對TCP這種通信方式。除此以外,大家都知道,Socket會存在服務(wù)器和客戶端的說法,也就意味著,同樣是使用Socket通信,我們?nèi)匀恍枰_定到底PLC是作為服務(wù)器還是作為客戶端,因為不管對于PLC編程或者上位機開發(fā)來說,這兩種方式都是完全不同的,下面做具體介紹。

一、PLC作為TCP服務(wù)器的實戰(zhàn)應(yīng)用 

(1)PLC編程

1.1   創(chuàng)建一個TCPServer的子程序,拖拽一個TCP_CONNECT的庫指令,對于該指令的每個引腳對應(yīng)的含義,大家可以按下F1直接獲取在線幫助,程序段1編寫如下圖所示: 

 

1.2  拖拽一個TCP_SEND的庫指令,對于該指令的每個引腳填寫,ConnID為1,Req為觸發(fā)條件,必須為沿信號,這里為了方便,直接使用1秒的脈沖信號,DataLen及DataPtr為發(fā)送的起始字節(jié)指針及發(fā)送的字節(jié)長度,程序段2如下圖所示:

 

1.3  拖拽一個TCP_RECV的庫指令,對于該指令的每個引腳填寫,ConnID統(tǒng)一為1,MaxLen為接收的最大程度,DataPtr表示接收字節(jié)存放的起始位置,程序段3如下圖所示:

 

1.4  最后需要編譯,編譯會提示需要給庫分配地址,點擊文件下的存儲器,給該庫分配地址即可,然后在MAIN主程序中調(diào)用TCPServer這個子程序,并下載到PLC中,PLC編程部分結(jié)束。

 

(2)TCP調(diào)試助手測試

如果PLC程序編寫沒問題,打開一個網(wǎng)絡(luò)調(diào)試助手,輸入對應(yīng)的IP地址及端口號,即可連接上服務(wù)器。

連接服務(wù)器后,PLC端會自動每隔一秒發(fā)送200個字節(jié)數(shù)據(jù)過來,這200個字節(jié)即對應(yīng)VB100-VB299的值。

 

(3)上位機客戶端軟件開發(fā)

 

通過與編程軟件的狀態(tài)圖表進(jìn)行對照,可以實時讀取PLC數(shù)據(jù),并隨時設(shè)置相應(yīng)的數(shù)值。

 

二、PLC作為TCP客戶端的實戰(zhàn)應(yīng)用 

(1) PLC編程

1.1   創(chuàng)建一個TCPClient的子程序,拖拽一個TCP_CONNECT的庫指令,與服務(wù)器程序不同的是,這里需要把Active設(shè)置為ON,同時IP地址和端口號需要根據(jù)上位機實際情況填寫,程序段1編寫如下圖所示:

 

1.2   拖拽一個TCP_SEND的庫指令,對于該指令的每個引腳填寫,ConnID為2,Req為觸發(fā)條件,必須為沿信號,這里為了方便,直接使用1秒的脈沖信號,DataLen及DataPtr為發(fā)送的起始字節(jié)指針及發(fā)送的字節(jié)長度,程序段2如下圖所示:

 

1.3  拖拽一個TCP_RECV的庫指令,對于該指令的每個引腳填寫,ConnID統(tǒng)一為2,MaxLen為接收的最大程度,DataPtr表示接收字節(jié)存放的起始位置,程序段3如下圖所示:

 

1.4   最后需要編譯,如果已經(jīng)編寫過服務(wù)器程序,這里就不需要分配地址了,直接在MAIN主程序中調(diào)用TCPClient這個子程序,并下載到PLC中,PLC編程部分結(jié)束。

(2)TCP調(diào)試助手測試

如果PLC程序編寫沒問題,打開一個網(wǎng)絡(luò)調(diào)試助手,設(shè)置模式為TCP Server,輸入端口號為2000,即可開啟服務(wù)器。

服務(wù)器開啟后,PLC端會自動連接服務(wù)器,并且每隔一秒發(fā)送100個字節(jié)數(shù)據(jù)過來,這100個字節(jié)即對應(yīng)VB500-VB599的值。

 

(3) 上位機服務(wù)器軟件開發(fā)

 

通過與狀態(tài)圖表進(jìn)行對比,驗證可以正常讀取和寫入PLC數(shù)據(jù)。

三、整體總結(jié)

后續(xù)通過進(jìn)一步測試,驗證PLC可以同時作為服務(wù)器和客戶端與上位機進(jìn)行通信。

本次主要針對西門子PLC的開放式TCP通信作了較為詳細(xì)地闡述,由于篇幅有限,無法將上位機部分的具體編程代碼進(jìn)行分析。

Tags:西門子PLC,TCP,通訊,梯形圖  
責(zé)任編輯:admin
相關(guān)文章列表
西門子S7-200 SMART 模擬量概述及自建庫文件,西門子PLC子程序創(chuàng)
西門子PLC編程常用基礎(chǔ)邏輯
一文學(xué)會設(shè)備運行時間累計程序編寫, 從零基礎(chǔ)到精通,收藏這篇就
S7-1200PLC入門初學(xué),需先熟悉PLC硬件結(jié)構(gòu)!S7-1200PLC硬件結(jié)構(gòu)
TIA Portal博途軟件和S7-1200PLC介紹
西門子200SMART PLC編程通過指針輕松實現(xiàn)多個數(shù)據(jù)排列
西門子S7-200SMART PLC如何實現(xiàn)星三角降壓啟動多次調(diào)用?子程序編
西門子PLC子程序?qū)嵗琒7-200 SMART PLC帶參數(shù)子程序應(yīng)用實例
詳解步進(jìn)電機與PLC的接線,西門子、三菱等PLC接線(總結(jié)篇)PLC和
西門子PLC編程實例  4個基本控制電路設(shè)計方法
S7-200smart 恒溫PID控制_STEP7中PID設(shè)置溫度自動控制編程
西門子plc傳送帶操作控制,傳輸帶控制
西門子PLC實現(xiàn)汽車涂裝前處理生產(chǎn)線中的磷化槽液位控制
|分享| S7-200SMART常用指令(二)
S7-200SMART PLC 模擬量輸入案例,AM06模擬量擴展模塊和SIT_R指令
|實用|一文讓你讀懂使用中斷功能  ATCH和DTCH和RETI、DISI
神級匯總,西門子PLC中斷指令及例程 ATCH和ENI
STEP7【步驟詳解】西門子 PLC PID組態(tài)設(shè)置及PID常見問題解答
西門子plc怎么產(chǎn)生PWM信號,脈沖輸出向?qū)WM輸出向?qū)?/a>
西門子200SMART與眾辰變頻器的MODBUS通信實例40001和十六進(jìn)制的轉(zhuǎn)
請文明參與討論,禁止漫罵攻擊,不要惡意評論、違禁詞語。 昵稱:
1分 2分 3分 4分 5分

還可以輸入 200 個字
[ 查看全部 ] 網(wǎng)友評論
推薦文章
最新推薦
關(guān)于我們 - 聯(lián)系我們 - 廣告服務(wù) - 友情鏈接 - 網(wǎng)站地圖 - 版權(quán)聲明 - 在線幫助 - 文章列表
返回頂部
刷新頁面
下到頁底
晶體管查詢
主站蜘蛛池模板: 禹州市| 乌什县| 锡林郭勒盟| 许昌县| 福海县| 平罗县| 阳信县| 溆浦县| 邛崃市| 秭归县| 梁山县| 杭州市| 玉屏| 鄂伦春自治旗| 巴塘县| 寿宁县| 尼玛县| 临清市| 天柱县| 延寿县| 呼玛县| 雷波县| 尚义县| 高密市| 阿克苏市| 临江市| 桂阳县| 通道| 芷江| 广灵县| 湟源县| 镇坪县| 南宫市| 涞水县| 临夏市| 祥云县| 巴南区| 那坡县| 桐城市| 临漳县| 贵溪市|