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

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

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

S7-1200使用AT覆蓋變量

機(jī)器人及PLC自動(dòng)化應(yīng)用 ? 來源:機(jī)器人及PLC自動(dòng)化應(yīng)用 ? 作者:機(jī)器人及PLC自動(dòng)化 ? 2022-03-11 11:10 ? 次閱讀

S7-1200 要訪問聲明變量?jī)?nèi)的數(shù)據(jù)區(qū)域,可以通過附加聲明來覆蓋所聲明的變量。這樣可以選擇對(duì)不同數(shù)據(jù)類型的已聲明變量進(jìn)行尋址,例如,可以使用 BOOL 的 ARRAY 對(duì) WORD 數(shù)據(jù)類型變量的各個(gè)位尋址。

下面介紹詳細(xì)的做法。

1. 如何創(chuàng)建 AT 覆蓋變量

創(chuàng)建一個(gè) S7-1200 的項(xiàng)目,在程序塊中新建一個(gè) FB 塊(或者 FC 塊),右擊 FB 塊進(jìn)入該塊的屬性中,將 FB 塊屬性中的“優(yōu)化的塊訪問”給去掉,如圖 1 所示。

808c707e-9382-11ec-952b-dac502259ad0.jpg

圖 1 創(chuàng)建非優(yōu)化的 FB 塊

雙擊進(jìn)入 FB 塊, 展開 FB 塊的“塊接口”,如圖 2 所示。

80a3a1ea-9382-11ec-952b-dac502259ad0.jpg

圖 2 展開 FB 塊的“塊接口”

在“塊接口”中,在 Input 添加一個(gè)變量,變量名為 A,數(shù)據(jù)類型為 int;接著在變量 A 下面一行,數(shù)據(jù)類型這一列,手動(dòng)輸入“AT”,如圖 3 所示。

80b39a96-9382-11ec-952b-dac502259ad0.jpg

圖 3 輸入“AT”

Input 中會(huì)生成一個(gè)新變量“Input_1”,數(shù)據(jù)類型是 int,將這個(gè)變量的數(shù)據(jù)類型修改成 Array,并編譯該 FB 塊,可以看到變量 A 和變量 Input_1 的偏移量都是 0.0,這表示變量 A 和變量 Input_1 是相同地址,只是以不同的數(shù)據(jù)類型顯示,如圖 4 所示。

80c6d278-9382-11ec-952b-dac502259ad0.jpg

圖 4 生成地址相同的新變量

以此方法新建 Output 的變量 B 和變量 Output_1,這樣就可以對(duì)變量 A 和變量 B 進(jìn)行位操作,如圖 5 所示。

80d7c1d2-9382-11ec-952b-dac502259ad0.jpg

圖 5 對(duì)變量進(jìn)行位操作

OB1 調(diào)用 FB 塊時(shí),F(xiàn)B 塊的管腳不會(huì)顯示變量 Input_1 和 Output_1,如圖 6 所示。

80edaa9c-9382-11ec-952b-dac502259ad0.jpg

圖 6 調(diào)用生成的 FB 塊

如 FB 塊選擇的是優(yōu)化的塊訪問,即:保留了 FB 塊屬性中的“優(yōu)化的塊訪問”的勾選項(xiàng),見圖 1;這時(shí),需要在“保持性”一列中選擇“在 IDB 中設(shè)置”,才能使用 AT 變量覆蓋,如圖 7 所示。

81002a1e-9382-11ec-952b-dac502259ad0.jpg

圖 7 FB 塊的優(yōu)化訪問處理

2. 注意事項(xiàng)和規(guī)則

注意事項(xiàng)

S7-1200/1500:在 FC 中使用 AT,對(duì)于 S7-1200/1500 中的FC,覆蓋變量和被覆蓋變量的數(shù)據(jù)長(zhǎng)度必須相同。如果無法通過程序?qū)崿F(xiàn),請(qǐng)檢查是否可以使用片段訪問來代替 AT 結(jié)構(gòu)。

規(guī)則

對(duì)于變量覆蓋可適用于以下通用規(guī)則:

1.在 STL、LAD、FBD、GRAPH 和 SCL 中,允許變量覆蓋。

2.可以在以下塊中覆蓋變量:

—在標(biāo)準(zhǔn)訪問的代碼中

—在可優(yōu)化訪問具有保留設(shè)置“在 IDB 中設(shè)置”的變量代碼塊中

3.覆蓋變量數(shù)據(jù)寬度必須小于等于被覆蓋變量的數(shù)據(jù)寬度。

4.不可以覆蓋 VARIANT 和 INSTANCE 數(shù)據(jù)類型的變量。

5.無法覆蓋庫中聲明為接口中參數(shù)的塊。

6.無法覆蓋接口中聲明為參數(shù)的結(jié)構(gòu)化 PLC 變量。

下列組合規(guī)則也適用,如下表所示。

81134662-9382-11ec-952b-dac502259ad0.jpg

審核編輯 :李倩

聲明:本文內(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)投訴
  • AT
    AT
    +關(guān)注

    關(guān)注

    2

    文章

    191

    瀏覽量

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

    關(guān)注

    11

    文章

    331

    瀏覽量

    17875

原文標(biāo)題:S7-1200 使用AT覆蓋變量

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

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    S7-1200如何通過附加聲明來覆蓋所聲明的變量

    S7-1200/1500:在 FC 中使用 AT,對(duì)于 S7-1200/1500 中的 FC,覆蓋變量和被覆蓋
    發(fā)表于 07-08 10:31 ?936次閱讀

    基于S7-1200的設(shè)備與網(wǎng)絡(luò)組態(tài)

    本文檔內(nèi)容介紹了基于S7-1200的設(shè)備與網(wǎng)絡(luò)組態(tài),以及S7-1200的概要及功能。
    發(fā)表于 09-25 18:14 ?28次下載
    基于<b class='flag-5'>S7-1200</b>的設(shè)備與網(wǎng)絡(luò)組態(tài)

    基于S7-1200的PLC的編程及擴(kuò)展

    S7-1200 系列是一款可編程邏輯控制器 (PLC, Programmable Logic Controller),可以控制各種自動(dòng)化應(yīng)用。S7-1200設(shè)計(jì)緊湊、成本低廉且具有功能強(qiáng)大的指令集
    發(fā)表于 09-25 18:39 ?24次下載

    WinCC V7.2與S7-1200的PLC通訊

    自WinCC V7.2版本起,軟件新增加了 SIMATIC S7-1200S7-1500 Channel通道,用于WinCC與 S7-1200/S7-1500 PLC之間的通信。此
    發(fā)表于 09-26 19:06 ?11次下載
    WinCC V7.2與<b class='flag-5'>S7-1200</b>的PLC通訊

    S7-1200運(yùn)動(dòng)控制的結(jié)構(gòu)及原理

    CPU S7-1200 兼具可編程邏輯控制器的功能和通過脈沖接口控制步進(jìn)電機(jī)和伺服電機(jī)運(yùn)行的運(yùn)動(dòng)控制功能。 運(yùn)動(dòng)控制功能負(fù)責(zé)對(duì)驅(qū)動(dòng)器進(jìn)行監(jiān)控。DC/DC/DC 型 CPU S7-1200 上配備有
    發(fā)表于 09-29 14:37 ?42次下載
    <b class='flag-5'>S7-1200</b>運(yùn)動(dòng)控制的結(jié)構(gòu)及原理

    s7-1200系統(tǒng)手冊(cè)

    S7-1200適用
    發(fā)表于 10-23 09:41 ?0次下載

    S7-1200入門手冊(cè)

    S7-1200適用
    發(fā)表于 10-23 09:34 ?0次下載

    s7-1200技術(shù)規(guī)范

    S7-1200適用
    發(fā)表于 10-23 09:29 ?0次下載

    S7-1200S7-1200進(jìn)行S7通信的詳細(xì)資料說明

    S7-1200 的 PROFINET 通信口可以做 S7 通信的服務(wù)器端或客戶端(CPU V2.0及以上版本)。S7-1200 僅支持 S7 單邊通信,僅需在客戶端單邊組態(tài)連接和編程,
    的頭像 發(fā)表于 08-17 10:51 ?2.9w次閱讀
    <b class='flag-5'>S7-1200</b>和<b class='flag-5'>S7-1200</b>進(jìn)行<b class='flag-5'>S7</b>通信的詳細(xì)資料說明

    S7-1200中UDT類型變量的使用方法

    今天給大家講解一下S7-1200中UDT類型變量的使用方法,PLC數(shù)據(jù)類型我們也叫做UDT數(shù)據(jù)類型,是由多個(gè)不同數(shù)據(jù)類型元素組成的數(shù)據(jù)結(jié)構(gòu),這其中的元素可以是STRUCT、數(shù)組等復(fù)雜數(shù)據(jù)類型等等。
    的頭像 發(fā)表于 04-18 11:58 ?3758次閱讀
    <b class='flag-5'>S7-1200</b>中UDT類型<b class='flag-5'>變量</b>的使用方法

    S7-1200 PWM功能簡(jiǎn)介

    S7-1200 PWM功能簡(jiǎn)介。
    發(fā)表于 04-23 14:38 ?43次下載

    S7-1200如何創(chuàng)建AT覆蓋變量

    創(chuàng)建一個(gè) S7-1200 的項(xiàng)目,在程序塊中新建一個(gè) FB 塊(或者 FC 塊),右擊 FB 塊進(jìn)入該塊的屬性中,將 FB 塊屬性中的“優(yōu)化的塊訪問”給去掉,如圖 1 所示。
    的頭像 發(fā)表于 06-30 11:02 ?1745次閱讀

    關(guān)于S7-1200S7-1500 PLC的通信

    WinCC V7.4SP1中針對(duì)S7-1200S7-1500通信,可以創(chuàng)建狀態(tài)變量和控制變量,用來顯示和控制S7-1200
    發(fā)表于 10-09 10:05 ?2143次閱讀

    S7-1200S7-300的選型區(qū)別

    在硬件擴(kuò)展方面,S7-300的主機(jī)架多支持八個(gè)擴(kuò)展模塊,而S7-1200支持?jǐn)U展多八個(gè)信號(hào)模塊和多三個(gè)通信模塊。以S7-300 CPU313C和S7-1200 CPU1214C為例,
    的頭像 發(fā)表于 05-04 15:18 ?1640次閱讀
    <b class='flag-5'>S7-1200</b>與<b class='flag-5'>S7</b>-300的選型區(qū)別

    S7-1200使用數(shù)組實(shí)現(xiàn)間接尋址的方法

    S7-1200 從 固件版本 V2.0 開始就支持?jǐn)?shù)組下標(biāo)使用變量的方式,這就意味著數(shù)組是最方便的間接尋址的方法,通過改變下標(biāo)變量實(shí)現(xiàn)各式各樣的功能。
    發(fā)表于 07-31 09:04 ?4005次閱讀
    <b class='flag-5'>S7-1200</b>使用數(shù)組實(shí)現(xiàn)間接尋址的方法