91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

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

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

S7-1200串口通信編程

機器人及PLC自動化應(yīng)用 ? 來源:機器人及PLC自動化應(yīng)用 ? 作者:機器人及PLC自動化 ? 2022-07-21 10:48 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

串口通信編程

指令概述

S7-1200有兩套點對點通信指令,如圖1所示。

173b24f4-0834-11ed-ba43-dac502259ad0.png

圖1 指令列表

上述兩套指令集區(qū)別如下表:

指令集 適用范圍
PtP Communication S7-1200中央機架 CPU版本>=V4.1.1,CM1241版本>=V2.1, TIA PORTAL 版本>=V13SP1,CB1241沒有版本要求
分布式IO CPU版本>=V4.1.1,ET200SP/ET200MP分布式IO的串口模塊
點到點 S7-1200中央機架 CPU、TIA PORTAL、CM1241、CB1241 均沒有版本限制

建議使用PtP Communication指令集的指令,因為指令和S7-1500兼容,并且指令版本一直在更新,點到點指令集不再更新,建議只用于老項目升級。

指令說明

對于如圖2中的指令,這些是用于在線修改串口模塊硬件組態(tài)的指令,例如在線修改波特率,在線修改接收條件。一般不需要使用,具體使用可以參見TIA PORTAL幫助或者S7-1200系統(tǒng)手冊。

17b2b9f6-0834-11ed-ba43-dac502259ad0.png

圖2 組態(tài)指令

對于如圖3中的指令,這些是用于硬流控操作的指令,通過信號設(shè)置激活相關(guān)的接收發(fā)送。除非使用硬流控,否則不需要使用,具體使用可以參見TIA PORTAL幫助或者S7-1200系統(tǒng)手冊。

17cc4e0c-0834-11ed-ba43-dac502259ad0.png

圖3 流控指令

對于如圖4中的指令,這些是用于實現(xiàn)一些擴展功能的指令,例如與第三方設(shè)備非標(biāo)準(zhǔn)MODBUS通信,伙伴不需要CRC校驗,可以使用該指令禁用MODBUS CRC。一般不需要使用,具體使用可以參見TIA PORTAL幫助或者S7-1200系統(tǒng)手冊。

185b4616-0834-11ed-ba43-dac502259ad0.png

圖4 擴展功能

對于如圖5中的指令,這些是用于清除通信模塊接收緩沖區(qū)的指令。

18704a5c-0834-11ed-ba43-dac502259ad0.png

圖5 清除緩沖區(qū)

對于一般情況下的自由口通信,都是只使用如圖6中的發(fā)送接收指令。

18870d64-0834-11ed-ba43-dac502259ad0.png

圖6 發(fā)送接收

18fdd32c-0834-11ed-ba43-dac502259ad0.png

圖7 發(fā)送指令

Send_P2P SEND_PTP
EN 使能,建議常接通
REQ 發(fā)送觸發(fā)信號,使用沿觸發(fā)
PORT 串口硬件模塊標(biāo)識符,可以在PLC變量表中找到,如圖9所示
BUFFER 發(fā)送區(qū),一般使用P#指針形式,String類型或者WString類型,字符數(shù)組等,如果使用String類型或者WString類型,則伙伴方收到時不會看到字符串前面的最大長度和實際長度,也就是說相當(dāng)于發(fā)送的是字符數(shù)組。
LENGTH 實際發(fā)送的字節(jié)數(shù),如果為0,則是全部發(fā)送
PCTRL - 沒有意義
DONE 將數(shù)據(jù)發(fā)送至通信模塊發(fā)送緩沖區(qū)完成,將有一個掃描周期置位
ERROR 發(fā)送錯誤,將有一個掃描周期置位
STATUS 通常顯示狀態(tài)代碼,錯誤時會在ERROR為1的周期顯示錯誤信息(16#8xxx)

191049ee-0834-11ed-ba43-dac502259ad0.png

圖8 接收指令

Receive_P2P RCV_PTP
EN 為True時,如果通信模塊接收緩沖區(qū)有數(shù)據(jù),則將其傳送至BUFFER 使能,建議常接通
EN_R - 為True時,如果通信模塊接收緩沖區(qū)有數(shù)據(jù),則將其傳送至BUFFER
PORT 串口硬件模塊標(biāo)識符,可以在PLC變量表中找到,如圖9所示
BUFFER 接收區(qū),一般使用P#指針形式,String類型或者WString類型,字符數(shù)組等,如果使用String類型或者WString類型,則即使伙伴方發(fā)送的是字符數(shù)組,指令也會為字符數(shù)組添加最大長度和實際長度成為字符串。
NDR 將通信模塊接收緩沖區(qū)的數(shù)據(jù)接收至BUFFER完成,將有一個掃描周期置位

如果EN_R為True時,則將通信模塊接收緩沖區(qū)的數(shù)據(jù)接收至BUFFER完成,將有一個掃描周期置位
如果EN_R為False,則通信模塊接收緩沖區(qū)有數(shù)據(jù)時NDR將始終為True

ERROR 指令錯誤,將有一個掃描周期置位
STATUS 通常顯示狀態(tài)代碼,錯誤時會在ERROR為1的周期顯示錯誤信息(16#8xxx)
LENGTH 在接收完成時,將有一個掃描周期顯示接收到的字節(jié)數(shù)

1929449e-0834-11ed-ba43-dac502259ad0.jpg如果通信模塊接收緩沖區(qū)包含有n次接收到的數(shù)據(jù),則需要Receive_P2P EN/RCV_PTP EN_R n個掃描周期為True才能接收至BUFFER完成。

一般建議Receive_P2P EN/RCV_PTP EN_R常通或者接通一段時間而不是使用沿觸發(fā),這樣通信模塊接收緩沖區(qū)一旦接收到新數(shù)據(jù),就可以立即接收至BUFFER。如果可能,可以把接收指令放在循環(huán)OB內(nèi)盡可能快的調(diào)用。

199ffec2-0834-11ed-ba43-dac502259ad0.png

圖9 系統(tǒng)常量

①在CPU中選擇PLC變量表>默認(rèn)變量表

②選擇系統(tǒng)常量

③找到相關(guān)串口模塊,建議直接將模塊名稱復(fù)制到PORT處

發(fā)送指令、發(fā)送完成位、發(fā)送錯誤位、發(fā)送錯誤代碼

下面分為點對點指令與PtP Communication 指令分別介紹

19bf150a-0834-11ed-ba43-dac502259ad0.png

圖10 點到點發(fā)送相關(guān)指令

19cb2e4e-0834-11ed-ba43-dac502259ad0.png

圖10 PtP Communication 發(fā)送相關(guān)指令

程序段1:觸發(fā)發(fā)送

程序段2:發(fā)送完成位觸發(fā)一個全局變量自加一,每完成一次該變量加一個數(shù),可以通過這種方法檢測是否發(fā)送完成

程序段3:發(fā)送錯誤位觸發(fā)一個MOVE指令,當(dāng)發(fā)送錯誤到來時,通過這種方法將STATUS的變量移動到一個全Word類型全局變量,發(fā)送錯誤代碼將保存到該變量中

接收指令、接收完成位、接收錯誤位、接收錯誤代碼、接收長度

下面分為點對點指令與PtP Communication 指令分別介紹

1a5993be-0834-11ed-ba43-dac502259ad0.png

圖12 點到點接收相關(guān)指令

1a755f04-0834-11ed-ba43-dac502259ad0.png

圖13 PtP Communication 接收相關(guān)指令

程序段4:觸發(fā)接收

程序段5:接收完成位觸發(fā)一個全局變量自加一,每完成一次該變量加一個數(shù),可以通過這種方法檢測是否接收完成,同時將長度變量通過一個MOVE指令移動到一個UInt類型全局變量,接收長度將保存到該變量中

程序段6:接收錯誤位觸發(fā)一個MOVE指令,接收送錯誤到來時,通過這種方法將STATUS的變量移動到一個Word類型全局變量,接收錯誤代碼將保存到該變量中

輪詢編程

通信任務(wù):

1號站S7-1200使用CB1241,利用點對點指令發(fā)送接收。

2號站S7-1200使用ET200SP分布式IO的CMPTP模塊,利用PtP Communication 指令發(fā)送接收。

1號站發(fā)送字符串'西門子',2號站發(fā)送字符串'博大精深'。

1929449e-0834-11ed-ba43-dac502259ad0.jpg注:例子中1號站先發(fā)送,2號站先接收,實際取決于需要,對于PLC來說,先發(fā)送還是先接收都是可以的。

例子中使用系統(tǒng)存儲器FirstScan,激活方式如圖14所示。

1af6ce7c-0834-11ed-ba43-dac502259ad0.png

圖14 設(shè)置系統(tǒng)存儲器

①進(jìn)入CPU的設(shè)備視圖

②在屬性>常規(guī)下選中系統(tǒng)和時鐘存儲器

③激活啟用系統(tǒng)存儲器字節(jié),默認(rèn)MB1

④即為FirstScan變量,默認(rèn)M1.0

圖15為1號站輪詢:

1b30852c-0834-11ed-ba43-dac502259ad0.png

圖15 1號站輪詢

①使用系統(tǒng)存儲器“FirstScan”激活第一次的發(fā)送

②發(fā)送DONE位置位接收請求,復(fù)位發(fā)送請求

③觸發(fā)接收

④接收NDR位置位發(fā)送請求,復(fù)位接收請求

⑤觸發(fā)下一次的發(fā)送

圖16為2號站輪詢:

1b5e912e-0834-11ed-ba43-dac502259ad0.png

圖16 2號站輪詢

①使用系統(tǒng)存儲器“FirstScan”激活第一次的接收

②接收NDR位的上升沿置位接收請求,復(fù)位發(fā)送請求

③觸發(fā)發(fā)送

④發(fā)送DONE位置位接收請求,復(fù)位發(fā)送請求

⑤觸發(fā)下一次的接收

通信結(jié)果

1b8dc8d6-0834-11ed-ba43-dac502259ad0.png

圖17 通信結(jié)果

常見問題

1baf3944-0834-11ed-ba43-dac502259ad0.jpg如何處理對于字符串、字符數(shù)組等的發(fā)送接收?

考慮到PLC通常與第三方進(jìn)行自由口通信,而通信內(nèi)容通常是字符串,但是西門子的SIMATIC String或者WString是包含最大長度與實際長度的,而第三方的字符串對于西門子來說是Char數(shù)組或者WChar數(shù)組。

基于此點對點及PtP Communication 指令集均對字符串、字符數(shù)組的發(fā)送接收進(jìn)行了優(yōu)化,即:

第三方伙伴發(fā)送字符數(shù)組,PLC的接收指令BUFFER類型為字符數(shù)組,則接收成字符數(shù)組,BUFFER類型為字符串,則接收成字符串,接收指令自動將字符串的最大長度和實際長度補齊。

第三方伙伴接收字符數(shù)組,PLC的發(fā)送指令BUFFER類型為字符數(shù)組,則發(fā)送字符數(shù)組,BUFFER類型為字符串,同樣發(fā)送字符數(shù)組,發(fā)送指令自動將字符串的最大長度和實際長度去掉。

簡單的說PLC會按照字符數(shù)組的形式收發(fā),發(fā)送或者接收BUFFER如果是字符串,則會進(jìn)行相應(yīng)的轉(zhuǎn)換。以上面輪詢?yōu)槔?,參見圖18圖19。

1bc396e6-0834-11ed-ba43-dac502259ad0.png

圖18 修改2號站的發(fā)送接收區(qū)的String類型改為Char數(shù)組

1bda98dc-0834-11ed-ba43-dac502259ad0.png

圖19 收發(fā)結(jié)果

可以得知,1號站發(fā)送字符串‘123’,2號站接收到字符數(shù)組,每個字符分別是'1'、'2'、'3'。2號站發(fā)送字符數(shù)組,每個字符分別是'a'、'b'、'c',1號站接收到字符串為'abc'。


審核編輯 :李倩


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

    關(guān)注

    90

    文章

    3716

    瀏覽量

    97203
  • 串口通信
    +關(guān)注

    關(guān)注

    34

    文章

    1662

    瀏覽量

    58002
  • S7-1200
    +關(guān)注

    關(guān)注

    11

    文章

    335

    瀏覽量

    19569

原文標(biāo)題:串口通信編程

文章出處:【微信號:gh_a8b121171b08,微信公眾號:機器人及PLC自動化應(yīng)用】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

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

掃碼添加小助手

加入工程師交流群

    評論

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

    西門子S7-1200S7-1500 PLC系列模擬量傳感器怎么接線

    西門子S7-1200S7-1500PLC系列模擬量傳感器怎么接線,現(xiàn)場看到的4線制,3線制,2線制模擬量傳感器接線。
    的頭像 發(fā)表于 03-06 13:57 ?108次閱讀
    西門子<b class='flag-5'>S7-1200</b>和<b class='flag-5'>S7</b>-1500 PLC系列模擬量傳感器怎么接線

    使用PLCSIM Advanced V8仿真測試S7-1200 G2的Modbus TCP通信

    今天試一下用 PLCSIM Advanced V8 仿真測試 S7-1200 G2 的 Modbus TCP 通信。
    的頭像 發(fā)表于 02-02 17:09 ?881次閱讀
    使用PLCSIM Advanced V8仿真測試<b class='flag-5'>S7-1200</b> G2的Modbus TCP<b class='flag-5'>通信</b>

    西門子S7-1200 PLC與SINAMICS V90伺服驅(qū)動器PROFINET通信控制實例

    S7-1200系列PLC可以通過PROFINET與V90 PN型伺服驅(qū)動器組合進(jìn)行速度控制,S7-1200 PLC負(fù)責(zé)發(fā)送控制命令和速度給定,并讀取V90伺服驅(qū)動器狀態(tài)和實際轉(zhuǎn)速;V90伺服驅(qū)動器
    的頭像 發(fā)表于 11-12 14:20 ?4483次閱讀
    西門子<b class='flag-5'>S7-1200</b> PLC與SINAMICS V90伺服驅(qū)動器PROFINET<b class='flag-5'>通信</b>控制實例

    西門子S7-1200 MODBUS RTU通訊溫度控制器和變頻器教程

    該觸摸屏和S7-1200PLC進(jìn)行以太網(wǎng)通訊,方便S7-1200的DB塊在觸摸屏做出對兩個從站相關(guān)的設(shè)定,熟悉S7-1200的串行通訊功能。
    的頭像 發(fā)表于 10-30 11:30 ?2347次閱讀
    西門子<b class='flag-5'>S7-1200</b> MODBUS RTU通訊溫度控制器和變頻器教程

    天拓四方分享:什么事S7-1200 G2++?

    SIMATIC S7-1200 G2++ 已重磅發(fā)布,現(xiàn)已全面開放訂貨渠道!天拓四方作為西門子緊密合作伙伴,庫存儲備豐富,能快速響應(yīng)您的需求。 什么是 S7-1200 G2++? 西門子始終關(guān)注
    的頭像 發(fā)表于 09-05 17:17 ?1313次閱讀

    plc以太網(wǎng)通訊模塊實現(xiàn):S7-200與S7-1200借PPI助力農(nóng)業(yè)自動化發(fā)展

    原料攪拌、溫度監(jiān)測等基礎(chǔ)環(huán)節(jié),但其沒有網(wǎng),僅依靠串口進(jìn)行數(shù)據(jù)傳輸,而新引入的S7-1200則承擔(dān)著生產(chǎn)線整體協(xié)調(diào)、數(shù)據(jù)匯總分析的重要任務(wù),二者的通訊需求十分迫切。此時, 捷米特ETH-S
    的頭像 發(fā)表于 08-14 09:41 ?540次閱讀
    plc以太網(wǎng)通訊模塊實現(xiàn):<b class='flag-5'>S7</b>-200與<b class='flag-5'>S7-1200</b>借PPI助力農(nóng)業(yè)自動化發(fā)展

    西門子S7-200與S7-1200通過PPI以太網(wǎng)模塊通訊,賦能汽車制造行業(yè)發(fā)展

    通訊接口局限于RS485等串口形式,完全不具備以太網(wǎng)接口,這給與自帶以太網(wǎng)接口的S7-1200實現(xiàn)通訊帶來了巨大阻礙。兩者不僅物理接口類型迥異,通訊協(xié)議也存在本質(zhì)差異:S7-200依賴PPI協(xié)議進(jìn)行
    的頭像 發(fā)表于 08-12 14:35 ?810次閱讀
    西門子<b class='flag-5'>S7</b>-200與<b class='flag-5'>S7-1200</b>通過PPI以太網(wǎng)模塊通訊,賦能汽車制造行業(yè)發(fā)展

    依托 PPI 以太網(wǎng)模塊,西門子 S7-200 與 S7-1200 通訊助推食品行業(yè)前行

    沒有網(wǎng),僅依靠串口進(jìn)行數(shù)據(jù)傳輸,而新引入的S7-1200則承擔(dān)著生產(chǎn)線整體協(xié)調(diào)、數(shù)據(jù)匯總分析的重要任務(wù),二者的通訊需求十分迫切。此時, 捷米特ETH-S7200-JM02 Plus
    的頭像 發(fā)表于 08-12 10:27 ?604次閱讀
    依托 PPI 以太網(wǎng)模塊,西門子 <b class='flag-5'>S7</b>-200 與 <b class='flag-5'>S7-1200</b> 通訊助推食品行業(yè)前行

    臺灣偉斯掃碼槍與西門子S7-1200 PLC通信方案:RS232轉(zhuǎn)Profinet網(wǎng)關(guān)配置詳解

    在工業(yè)自動化領(lǐng)域,設(shè)備之間的高效通信是生產(chǎn)線順暢運行的基石。當(dāng)臺灣偉斯的掃碼槍需要與西門子S7-1200 PLC協(xié)同工作時,由于兩者采用的通信協(xié)議不同——掃碼槍通常使用RS232串口
    的頭像 發(fā)表于 08-06 14:51 ?1076次閱讀
    臺灣偉斯掃碼槍與西門子<b class='flag-5'>S7-1200</b> PLC<b class='flag-5'>通信</b>方案:RS232轉(zhuǎn)Profinet網(wǎng)關(guān)配置詳解

    老舊S7-300煥新生:MPI轉(zhuǎn)網(wǎng)一網(wǎng)打盡S7-1200、觸摸屏、ModbusRTU變頻

    S7-1200 PLC進(jìn)行實時數(shù)據(jù)交互(溫度、壓力、故障代碼) 采集驅(qū)動輥道電機的英威騰CHF100A變頻器數(shù)據(jù)(頻率、電流、狀態(tài)) 絕不中斷原觸摸屏監(jiān)控操作 項目痛點 ? S7-300無以太網(wǎng),無法
    的頭像 發(fā)表于 08-02 17:09 ?983次閱讀

    依托PPI以太網(wǎng)模塊,西門子S7-200與S7-1200通訊助力食品加工行業(yè)進(jìn)步

    通訊接口局限于RS485等串口形式,完全不具備以太網(wǎng)接口,這給與自帶以太網(wǎng)接口的S7-1200實現(xiàn)通訊帶來了巨大阻礙。兩者不僅物理接口類型迥異,通訊協(xié)議也存在本質(zhì)差異:S7-200依賴PPI協(xié)議進(jìn)行
    的頭像 發(fā)表于 07-21 09:38 ?843次閱讀
    依托PPI以太網(wǎng)模塊,西門子<b class='flag-5'>S7</b>-200與<b class='flag-5'>S7-1200</b>通訊助力食品加工行業(yè)進(jìn)步

    西門子PLC(S7-1200/1500/300/400)的數(shù)據(jù)采集與監(jiān)控方案

    西門子PLC S7-1200、S7-1500、S7-300/400型號設(shè)備,常用協(xié)議:PPI(Process Communication Interface)、PLC與上位機、HMI數(shù)據(jù)交換
    的頭像 發(fā)表于 07-04 10:13 ?1434次閱讀

    西門子S7-1200 G2的7大亮點及最新功能

    西門子S7-1200 G2是新發(fā)布的新一代可編程邏輯控制器(PLC),作為S7-1200系列的升級版,它在硬件設(shè)計、性能、運動控制、通信能力和安全功能等方面進(jìn)行了顯著改進(jìn),適用于中小型
    的頭像 發(fā)表于 07-03 17:04 ?3637次閱讀
     西門子<b class='flag-5'>S7-1200</b> G2的<b class='flag-5'>7</b>大亮點及最新功能

    S7-200Smart與S7-1200通過Modbus協(xié)議對接到上位機

    在自動化生產(chǎn)車間中,分布多臺PLC自動化設(shè)備,如包裝機(S7-200Smart)、灌裝產(chǎn)線(S7-1200)需要用上位機軟件集中控制。這些設(shè)備距離在幾米到幾十米不等。通常會考慮有線或者無線通信,選擇
    的頭像 發(fā)表于 06-10 14:30 ?1002次閱讀
    <b class='flag-5'>S7</b>-200Smart與<b class='flag-5'>S7-1200</b>通過Modbus協(xié)議對接到上位機

    S7-1200與歐姆龍智能儀表Modbus通信案例

    Modbus 通信是一種應(yīng)用廣泛的通信協(xié)議 ,在變頻器、智能儀表或是其他的一些智能設(shè)備上應(yīng)用的一種通用通信協(xié)議,本文以S7-1200系列PLC作為Modbus主站,以歐姆龍E5EZ的智
    的頭像 發(fā)表于 03-27 17:25 ?2241次閱讀
    <b class='flag-5'>S7-1200</b>與歐姆龍智能儀表Modbus<b class='flag-5'>通信</b>案例