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

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

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

西門子S7-200PLC多地址指針方案的實(shí)現(xiàn)方法

電子設(shè)計 ? 來源:網(wǎng)絡(luò)整理 ? 作者:佚名 ? 2019-11-14 08:00 ? 次閱讀

1 、引言

西門子S7-200PLC由于其體積小,可靠性高,通訊功能強(qiáng)大等特點(diǎn),在工業(yè)控制領(lǐng)域得到廣泛的應(yīng)用,使用S7-200PLC高性價比的自由口通訊協(xié)議實(shí)現(xiàn)人機(jī)界面靈活方便。目前S7-200PLC接收計算機(jī)指令數(shù)據(jù)主要有兩種方法:第一種方法是使用PLC自帶的RCV指令來接收計算機(jī)數(shù)據(jù);第二種方法采用PLC提供的“接收字符中斷”方式,將SMB2(自由口接收字符緩沖區(qū))定義指針,使用指針接收數(shù)據(jù)。

使用“RCV“指令接收數(shù)據(jù)的方法雖然簡單,但在接收大量數(shù)據(jù)的時候每次都要依次接收,大大降低了數(shù)據(jù)傳輸效率。在本實(shí)驗室的一套機(jī)電一體化控制系統(tǒng)中,人機(jī)界面設(shè)計要求是:界面可以向PLC寫入QB0、QB1、QB2、傳感器采樣周期、一個判斷指令、AQ0、AQ1等不同指令數(shù)據(jù)。若一次上位機(jī)寫指令僅僅是控制QB0.3的啟動,為了寫入QB0則需要將9 B的數(shù)據(jù)全部發(fā)送,由于PLC內(nèi)接收數(shù)據(jù)是用“RCV”指令,必須將9 B的數(shù)據(jù)依次存儲,這樣會造成數(shù)據(jù)傳輸線路中的時間過長產(chǎn)生延時,降低數(shù)據(jù)傳輸?shù)男?,甚至?dǎo)致誤碼出現(xiàn),顯然這種使用“RCV”接收大量數(shù)據(jù)的方法不太適合。

使用PLC提供的“接收字符中斷”方式,將SMB2(自由口接收字符緩沖區(qū))定義指針,使用指針接收數(shù)據(jù)。此方法若僅僅定義一個指針,其效果和“RCV”指令是一樣的。但此方法由于其使用起來比較靈活,故本文設(shè)計了一種多地址指針接收數(shù)據(jù)的方法,即在計算機(jī)向PLC寫入數(shù)據(jù)時,僅寫入指針判別的代號和對應(yīng)數(shù)據(jù)就可完成上位機(jī)對下位機(jī)的寫指令,不同的代號對應(yīng)不同的地址,與以往使用“RCV”指令相比,有效地減少了寫指令的數(shù)據(jù),提高了通訊效率。本文在設(shè)計PLC與上位機(jī)的串口通訊中設(shè)計了此種方案,尚未見其他同類文章使用。

2 、指針判別

在PLC與計算機(jī)的自由口通訊中,為消除“RCV”或單指針接收計算機(jī)數(shù)據(jù)帶來的大數(shù)據(jù)流,本文在計算機(jī)每次向PLC發(fā)送指令時,第一個字節(jié)總是模式的代號,從第二個字節(jié)開始才是指令數(shù)據(jù)的內(nèi)容。在PLC接收數(shù)據(jù)時,第一個數(shù)據(jù)進(jìn)入“自由口接收字符緩沖區(qū)”SMB2時,PLC通過“選擇指針”最先接收的是指針判別的代號,通過接收代號的數(shù)值比較來判斷該指令數(shù)據(jù)對應(yīng)的是哪種數(shù)據(jù),判斷完成后定義一個地址指針接收并存儲這種數(shù)據(jù)的內(nèi)容。不同的指針判別代號對應(yīng)不同的地址指針,因此計算機(jī)每次寫入PLC指令時發(fā)送的指令數(shù)據(jù)都是由兩部分構(gòu)成:第一部分為指針判別代號,第二部分為指令數(shù)據(jù)的內(nèi)容。指針判別過程是PLC內(nèi)接收到判別代號后進(jìn)行數(shù)值比較。指針判別的意義就是通過一個總指針接收模式代號,用不同模式代號再定義多個指針完成不同種類的指令數(shù)據(jù)的接收與存儲。

西門子S7-200PLC多地址指針方案的實(shí)現(xiàn)方法

3 、具體應(yīng)用方案

在設(shè)計本實(shí)驗室的一套電液伺服控制系統(tǒng)中,上位機(jī)的人機(jī)界面使用VB 6.0編程,下位機(jī)的通訊模式為自由口通訊。人機(jī)界面設(shè)計要求:界面可以向PLC寫入QB0、QB1、QB2、傳感器采樣周期、AQW0、AQW2等不同指令數(shù)據(jù),PLC在定時中斷內(nèi)使用XMT指令周期地向上位機(jī)發(fā)送變量存儲器VB1~VB21中的待監(jiān)視數(shù)據(jù)(包含PLC中的數(shù)字量與模擬量)。由于在設(shè)計中上位機(jī)寫入PLC指令數(shù)據(jù)種類較多,其中包括定時中斷的時間設(shè)置、狀態(tài)位值的寫入、模擬量擴(kuò)展模塊的輸出等,故本文的模式選擇可以將種類不同的指令數(shù)據(jù)用多個指針接收并存儲。表1是本設(shè)計PLC程序的部分地址分配表,以便結(jié)合PLC程序來說明多地址指針方案的具體實(shí)現(xiàn)方法。

SBR_0子程序初始化:

網(wǎng)絡(luò)1:在子程序中定義中斷事件。

西門子S7-200PLC多地址指針方案的實(shí)現(xiàn)方法

西門子S7-200PLC多地址指針方案的實(shí)現(xiàn)方法

INT_0接收字符中斷事件中采用指針判別:

網(wǎng)絡(luò)1:指針代號接收存儲于VB22。

西門子S7-200PLC多地址指針方案的實(shí)現(xiàn)方法

網(wǎng)絡(luò)2:啟動指針1,接收數(shù)據(jù)寫入VB24,用于啟動/停止XMT(0啟動,1停止)。

西門子S7-200PLC多地址指針方案的實(shí)現(xiàn)方法

網(wǎng)絡(luò)3:啟動指針2,接收數(shù)據(jù)寫VB26,VB27,VB28,用于寫入QB0,QB1,QB2。

西門子S7-200PLC多地址指針方案的實(shí)現(xiàn)方法

網(wǎng)絡(luò)4:啟動指針3,接收數(shù)據(jù)為寫入定時中斷的時間設(shè)置SMB34。

西門子S7-200PLC多地址指針方案的實(shí)現(xiàn)方法

網(wǎng)絡(luò)5:啟動指針4,接收數(shù)據(jù)賦值給PLC模擬量輸出AQW0。

西門子S7-200PLC多地址指針方案的實(shí)現(xiàn)方法

網(wǎng)絡(luò)6:啟動指針5,接收數(shù)據(jù)賦值給PLC模擬量輸出AQW2。

西門子S7-200PLC多地址指針方案的實(shí)現(xiàn)方法

INT_1定時中斷事件中PLC發(fā)送監(jiān)視數(shù)據(jù):

網(wǎng)絡(luò)1:通過VB24接收的數(shù)據(jù)控制XMT的“啟/停”動作,進(jìn)而控制PLC向計算機(jī)發(fā)送數(shù)據(jù)。

西門子S7-200PLC多地址指針方案的實(shí)現(xiàn)方法

4 、注意要點(diǎn)

由于在本設(shè)計中PLC每次接收數(shù)據(jù),第一個字節(jié)“指針代號”進(jìn)入SMB2時,在一次中斷事件內(nèi),指針代號的數(shù)值也存儲在每個指針對應(yīng)的第一個存儲地址中,因此每個指針接收數(shù)據(jù)時從第2個字節(jié)起才是指令數(shù)據(jù)的信息內(nèi)容,第一個字節(jié)都是對應(yīng)該指針的代號,否則會出現(xiàn)數(shù)據(jù)傳輸錯誤。在PLC程序設(shè)計時需要為每個指針預(yù)留第一個存儲地址來存儲該指針的代號。

故上位機(jī)每次向PLC寫指令時,第一個數(shù)據(jù)內(nèi)容是指針代號,通過上位機(jī)程序中直接賦值即可實(shí)現(xiàn);從第2個數(shù)據(jù)開始為上位機(jī)的控制指令。

5、結(jié) 語

本設(shè)計方案已在實(shí)驗室機(jī)電一體化控制系統(tǒng)的人機(jī)界面中成功地應(yīng)用。系統(tǒng)運(yùn)行穩(wěn)定,大大減少了與上位機(jī)操作指令無關(guān)的數(shù)據(jù)傳輸,可精確高效地將上位機(jī)指令數(shù)據(jù)寫入目標(biāo)地址,有效解決了串口通訊中出現(xiàn)因大量數(shù)據(jù)傳輸而造成的延時。

責(zé)任編輯:gt


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

    關(guān)注

    5001

    文章

    12946

    瀏覽量

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

    關(guān)注

    93

    文章

    2958

    瀏覽量

    114827
  • 計算機(jī)
    +關(guān)注

    關(guān)注

    19

    文章

    7168

    瀏覽量

    87149
收藏 人收藏

    評論

    相關(guān)推薦

    S7-200西門子PLC視頻教程大全

    以下是西門子S7-200PLC視頻教程,全文共有36個視頻。詳細(xì)介紹了西門子S7-200PL的各種概念,基礎(chǔ)的知識,及各案例的講解。 1、S7-20
    發(fā)表于 09-26 09:15 ?12w次閱讀

    西門子S7-200PLC西門子變頻器MM440通訊程序?qū)嵗?/a>

    西門子S7-200PLC西門子變頻器MM440通訊程序?qū)嵗?/div>
    的頭像 發(fā)表于 05-04 09:54 ?4513次閱讀
    <b class='flag-5'>西門子</b><b class='flag-5'>S7-200PLC</b>與<b class='flag-5'>西門子</b>變頻器MM440通訊程序?qū)嵗? />    </a>
</div>                            <div   id=

    西門子S7-200PLC介紹

    本書主要介紹了西門子公司小型可編程序控制器S7-200 PLC的軟硬件功能,以實(shí)用、易用為主線,涉及S7-200的方方面面;同時編者也將其多年寶貴的應(yīng)用經(jīng)驗貫穿內(nèi)容始終,使讀者能夠有所
    發(fā)表于 10-09 11:49 ?0次下載
    <b class='flag-5'>西門子</b><b class='flag-5'>S7-200PLC</b>介紹

    西門子S7-200 PLC應(yīng)用100例

    西門子S7-200 PLC應(yīng)用100例》主要以西門子S7-200 PLC為主體,按基礎(chǔ)知識、擴(kuò)
    發(fā)表于 09-17 10:02 ?690次下載
    <b class='flag-5'>西門子</b><b class='flag-5'>S7-200</b> <b class='flag-5'>PLC</b>應(yīng)用100例

    西門子S7-200PLC編程與應(yīng)用視頻教程觀看地址

    其實(shí)打開 一個播放地址,其他集的視頻全部都會羅列出來; 西門子S7-200編程與應(yīng)用初級第一部分(1) http://ipd.pps.tv/play_37IS2W.html?wok=H85CI9
    發(fā)表于 09-17 15:31 ?308次下載

    西門子S7-200使用教程

    西門子S7-200 PLC仿真軟件超詳細(xì)使用教程西門子S7-200使用教程
    發(fā)表于 05-06 16:43 ?0次下載

    西門子PLC S7-200常見的71個故障匯總及解決辦法

    本文介紹了西門子PLC S7-200系列PLC的基本硬件組成與它的優(yōu)點(diǎn),最后介紹了71個西門子PLC
    的頭像 發(fā)表于 04-18 15:42 ?6.2w次閱讀
    <b class='flag-5'>西門子</b><b class='flag-5'>PLC</b> <b class='flag-5'>S7-200</b>常見的71個故障匯總及解決辦法

    圖解西門子S7-200PLC應(yīng)用88例圖解

    本文主要介紹了西門子S7-200PLC應(yīng)用88例.
    發(fā)表于 06-26 08:00 ?128次下載
    圖解<b class='flag-5'>西門子</b><b class='flag-5'>S7-200PLC</b>應(yīng)用88例圖解

    PLC與上位機(jī)的地址指針接收數(shù)據(jù)的實(shí)現(xiàn)方法

      西門子S7-200PLC由于其體積小,可靠性高,通訊功能強(qiáng)大等特點(diǎn),在工業(yè)控制領(lǐng)域得到廣泛的應(yīng)用,使用S7-200PLC高性價比的自由口通訊協(xié)議實(shí)現(xiàn)人機(jī)界面靈活方便。目前
    的頭像 發(fā)表于 06-21 08:10 ?5997次閱讀
    <b class='flag-5'>PLC</b>與上位機(jī)的<b class='flag-5'>多</b><b class='flag-5'>地址</b><b class='flag-5'>指針</b>接收數(shù)據(jù)的<b class='flag-5'>實(shí)現(xiàn)</b><b class='flag-5'>方法</b>

    如何把西門子S7-200PLC連接到EMCP物聯(lián)網(wǎng)云平臺

    前言:西門子S7-200PLC廣泛應(yīng)于工業(yè)控制領(lǐng)域,是一款性能高,運(yùn)行穩(wěn)定的控制器。此次我們要把西門子S7-200PLC連接到EMCP物聯(lián)網(wǎng)云平臺(簡稱EMCP),
    發(fā)表于 04-15 11:54 ?2608次閱讀

    西門子S7-200PLC與臺達(dá)VFD-M系列變頻器通訊

    西門子S7-200PLC與臺達(dá)VFD-M系列變頻器通訊說明。
    發(fā)表于 04-23 09:13 ?82次下載

    西門子S7-200PLC通訊技術(shù)培訓(xùn)

    西門子S7-200PLC通訊技術(shù)培訓(xùn)資料下載。
    發(fā)表于 04-30 10:36 ?73次下載

    西門子S7-200PLC通過modbus驅(qū)動連接到EMCP

    前言:西門子 S7-200PLC 廣泛應(yīng)于工業(yè)控制領(lǐng)域,是一款性能高,運(yùn)行穩(wěn)定的控制器。此次我們要把 西門子S7-200PLC 通過 modbus 驅(qū)動連接到 EMCP 物聯(lián)網(wǎng)云平
    發(fā)表于 06-23 14:58 ?1273次閱讀

    西門子S7-200PLC入門及介紹

    西門子200CPU或者Smart200的CPU都是將一個微處理器,一個集成電源和數(shù)字量IO組成一個封裝的盒子,從而構(gòu)成一個功能強(qiáng)大的微型PLC,也就是
    發(fā)表于 04-19 11:29 ?6次下載
    <b class='flag-5'>西門子</b><b class='flag-5'>S7-200PLC</b>入門及介紹

    S7協(xié)議讀取西門子S7-200 Smart PLC數(shù)據(jù)

    西門子S7-200 Smart PLC因其穩(wěn)定性和易用性而廣泛應(yīng)用。通過使用S7協(xié)議,可以實(shí)現(xiàn)PLC
    的頭像 發(fā)表于 07-11 11:55 ?2860次閱讀
    <b class='flag-5'>S7</b>協(xié)議讀取<b class='flag-5'>西門子</b><b class='flag-5'>S7-200</b> Smart <b class='flag-5'>PLC</b>數(shù)據(jù)