一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

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

PLC技術(shù)圈 ? 來源:PLC技術(shù)圈 ? 作者:PLC技術(shù)圈 ? 2020-09-25 11:44 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

對(duì)于自控或電氣工程師來說,西門子PLC是每個(gè)人都非常熟悉的一款PLC品牌;而對(duì)于上位機(jī)開發(fā)工程師來說,Socket通信或TCP/IP協(xié)議也是必須要掌握的一種通信方式。

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

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

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

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

(1)PLC編程

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

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

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

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

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

如果PLC程序編寫沒問題,打開一個(gè)網(wǎng)絡(luò)調(diào)試助手,輸入對(duì)應(yīng)的IP地址及端口號(hào),即可連接上服務(wù)器。連接服務(wù)器后,PLC端會(huì)自動(dòng)每隔一秒發(fā)送200個(gè)字節(jié)數(shù)據(jù)過來,這200個(gè)字節(jié)即對(duì)應(yīng)VB100-VB299的值。

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

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

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

(1)PLC編程

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

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

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

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

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

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

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

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

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

原文標(biāo)題:深度剖析西門子PLC的開放式TCP通信

文章出處:【微信公眾號(hào):PLC技術(shù)圈】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

責(zé)任編輯:haq

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • plc
    plc
    +關(guān)注

    關(guān)注

    5037

    文章

    13921

    瀏覽量

    474666
  • 西門子
    +關(guān)注

    關(guān)注

    98

    文章

    3173

    瀏覽量

    118279
  • TCP
    TCP
    +關(guān)注

    關(guān)注

    8

    文章

    1402

    瀏覽量

    81059

原文標(biāo)題:深度剖析西門子PLC的開放式TCP通信

文章出處:【微信號(hào):xue_PLC,微信公眾號(hào):PLC技術(shù)圈】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    國外bgp服務(wù)器多少錢?# 服務(wù)器

    服務(wù)器
    jf_57681485
    發(fā)布于 :2025年04月24日 14:19:00

    新加坡服務(wù)器延遲大嗎?真相在這里#新加坡服務(wù)器 #服務(wù)器

    服務(wù)器
    jf_57681485
    發(fā)布于 :2025年04月18日 13:48:50

    esp8266作為tcp客戶端,服務(wù)器主動(dòng)斷開連接后,是會(huì)主動(dòng)重連嗎,如何設(shè)置不要主動(dòng)重連呢

    服務(wù)器在關(guān)閉了該tcp通道之后,使用wireshark抓取的包如下,這是在接受到斷開之后,又進(jìn)行重連了嗎?
    發(fā)表于 04-02 22:33

    存儲(chǔ)服務(wù)器怎么搭建?RAKsmart實(shí)戰(zhàn)指南

    搭建存儲(chǔ)服務(wù)器需兼顧硬件性能、數(shù)據(jù)冗余與安全訪問。以RAKsmart服務(wù)器為例,整體流程可分為五步:需求評(píng)估→硬件選型→RAID配置→系統(tǒng)部署→網(wǎng)絡(luò)設(shè)置。以下是小編對(duì)RAKsmart存儲(chǔ)服務(wù)器怎么搭建的
    的頭像 發(fā)表于 04-01 10:09 ?357次閱讀

    NTP校時(shí)服務(wù)器 時(shí)鐘同步服務(wù)器

    服務(wù)器
    jf_75250307
    發(fā)布于 :2025年03月19日 20:56:34

    DeepSeek企業(yè)級(jí)部署實(shí)戰(zhàn)指南:以Raksmart企業(yè)服務(wù)器為例

    隨著人工智能技術(shù)的快速發(fā)展,DeepSeek作為一款強(qiáng)大的AI工具,正在成為企業(yè)智能化轉(zhuǎn)型的重要驅(qū)動(dòng)力。本文將結(jié)合Raksmart企業(yè)服務(wù)器的實(shí)際案例,詳細(xì)解析DeepSeek的企業(yè)級(jí)部署流程、優(yōu)化
    的頭像 發(fā)表于 03-12 11:33 ?613次閱讀

    服務(wù)器還是服務(wù)器好用一些?

    服務(wù)器還是服務(wù)器好用一些?云服務(wù)器服務(wù)器各有優(yōu)勢(shì)。服務(wù)器作為獨(dú)立物理設(shè)備,適合需高性能、物理
    的頭像 發(fā)表于 12-26 10:08 ?505次閱讀

    獨(dú)立服務(wù)器與云服務(wù)器的區(qū)別

    隨著互聯(lián)網(wǎng)技術(shù)的飛速發(fā)展,企業(yè)對(duì)于服務(wù)器的需求日益增加,而服務(wù)器市場(chǎng)也隨之出現(xiàn)了多種類型的產(chǎn)品,其中最常見的是獨(dú)立服務(wù)器和云服務(wù)器。這兩種服務(wù)器
    的頭像 發(fā)表于 10-12 14:34 ?713次閱讀

    使用NS1串口服務(wù)器HTTP模式上傳服務(wù)器數(shù)據(jù)

    HTTP協(xié)議工作于客戶端-服務(wù)端架構(gòu)之上。瀏覽作為HTTP客戶端通過URL向HTTP服務(wù)端即Web服務(wù)器發(fā)送所有請(qǐng)求。Web
    的頭像 發(fā)表于 08-30 12:36 ?992次閱讀
    使用NS1串口<b class='flag-5'>服務(wù)器</b>HTTP模式上傳<b class='flag-5'>服務(wù)器</b>數(shù)據(jù)

    串口服務(wù)器TCP/IP協(xié)議棧是什么關(guān)系

    串口服務(wù)器TCP/IP協(xié)議棧之間存在著緊密而復(fù)雜的關(guān)系。這種關(guān)系主要體現(xiàn)在串口服務(wù)器如何利用TCP/IP協(xié)議棧來實(shí)現(xiàn)串口設(shè)備與網(wǎng)絡(luò)之間的數(shù)據(jù)通信。以下是對(duì)這種關(guān)系的詳細(xì)解析。
    的頭像 發(fā)表于 08-25 17:35 ?2132次閱讀

    ESP8266與IE相比,Chrome/Mozilla中的TCP服務(wù)器速度較慢是什么原因?

    我正在嘗試將 ESP8266-01 模塊用于一個(gè)項(xiàng)目。我將其用作TCP服務(wù)器。我注意到瀏覽 Chrome 和 Mozilla 的服務(wù)器響應(yīng)速度非常慢。但是,當(dāng)我使用IE瀏覽
    發(fā)表于 07-22 06:44

    請(qǐng)問ESP32 C3支不支持在STA模式且不作為TCP服務(wù)器時(shí),與多個(gè)IP地址建立TCP通訊?

    請(qǐng)問ESP32 C3支不支持在STA模式且不作為TCP服務(wù)器時(shí),與多個(gè)IP地址建立TCP通訊? 或者支不支持在AP+STA共存模式時(shí),與多個(gè)IP地址建立
    發(fā)表于 07-22 06:25

    TCP服務(wù)器發(fā)送數(shù)據(jù)丟失的原因?

    當(dāng)UART有數(shù)據(jù)后,Tcp服務(wù)器會(huì)獲取發(fā)送到TCP客戶端的數(shù)據(jù)。我們無法知道 UART 數(shù)據(jù)的數(shù)量,in.so porj Tcp 發(fā)送的數(shù)據(jù)將被發(fā)送到 erverone 數(shù)據(jù)。 1
    發(fā)表于 07-19 16:51