国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

什么是“AT”指令,如何使用?

機器人及PLC自動化應用 ? 來源:機器人及PLC自動化應用 ? 作者:機器人及PLC自動化 ? 2021-04-09 15:25 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

什么是“AT”指令,如何使用?

AT指令是S7-SCL中特有的一個指令,初學者可能會忽略此指令,或者對其理解不夠深刻。AT指令在S7-SCL中有著非常重要的地位,很多應用程序都必須使用此指令。下面將對此指令進行詳細講解。

AT指令可以使用戶能夠以不同的數據類型來訪問一個已經聲明的變量。此指令類似于高級編程語言中的“繼承”概念。此指令有如下特點:

· 特點一:定義僅在塊內有效,在接口參數中不出現

· 特點二:在塊中可以使用其它數據類型的視圖

· 特點三:它只是讓另外一些變量繼承了某個變量的特性,僅僅數據類型是新的,其它特性相同。

下面將通過具體程序對以上三個特點進行說明,首先定義UDT100,UDT200,大小都為12個字節,但結構不同。UDT100包括一個DATE_AND_TIME數據類型(8個字節),還包括一個實數(4個字節);UDT200包括6個字(12個字節);在FC2定義輸入參數Buffer, Frame1,Frame2:

特點一:定義僅在塊內有效,在接口參數中不出現。塊內定以的輸入參數有3個,但僅在塊內有效,在接口參數僅出現Buffer輸入參數

c2e3e0ee-9417-11eb-8b86-12bb97331649.png

特點三:它只是讓Frame1繼承了Buffer的特性,僅僅數據類型是新的,其它特性相同。此處的UDT100長度應小于等于所繼承的Buffer大小,否則編譯錯誤

c2ec9734-9417-11eb-8b86-12bb97331649.png

注意:此處的UDT200長度應小于等于所繼承的Buffer大小,否則編譯錯誤

c306c46a-9417-11eb-8b86-12bb97331649.png

注意:UDT100,UDT200繼承了Buffer特性

在OB1中調用FC2,并將一個數組賦值給Buffer輸入參數

c31efbfc-9417-11eb-8b86-12bb97331649.png

特點一:塊內定以的輸入參數有3個,但僅在塊內有效,在接口參數僅出現Buffer輸入參數

c347a6f6-9417-11eb-8b86-12bb97331649.png

特點二:對于輸入參數Buffer得到的數據,可以按照Frame1,或Frame2的格式來尋址。例如可以將 Buffer 的前8 個字節認為是DATA_AND_TIME,送至臨時變量TEST_DT中

AT指令應用例子1:在STL中,用戶如果希望取得MB0的某一位的數值是非常容易的,例如第3位,直接尋址M0.2就可以了。而在S7-SCL中,由于其具備高級語言的特點,所以定義的變量的絕對地址一般是不顯現的。因此在STL中簡單的操作,在S7-SCL中卻復雜起來。但是通過使用AT指令即可解決這個問題。下圖中的例子中,當輸入的某個字節,其輸出依次為此字節的8個位。

c366d79c-9417-11eb-8b86-12bb97331649.png

AT指令應用例子2:在S7-SCL中,ANY數據類型的使用,經常會伴隨著AT指令的使用,下面的例子演示了如何拆分改寫ANY數據類型中的內容。程序執行結果相當于:

c3abf2c8-9417-11eb-8b86-12bb97331649.png

c3c3b3f4-9417-11eb-8b86-12bb97331649.png

AT指令在使用當中,還有如下注意事項:

· AT指令用于對某個變量進行其它數據類型的聲明時,必須放在此變量的聲明語句后面

· AT指令生成的變量不可以初始化

· AT指令用于對某個變量其它數據類型的聲明時,占用內存大小要小于等于此變量的長度

· AT指令用于對某個變量其它數據類型的聲明時,如下的組合是允許的:

c3f58ba4-9417-11eb-8b86-12bb97331649.png

(1)AT指令用于ANY類型在VAR_OUT中是不允許的

Elementary (基本數據類型包括) :BOOL, BYTE, WORD, DWORD, INT, DINT, DATE, TIME,

S5TIME, CHAR Complex (復雜數據類型包括) :ARRAY, STRUCT, DATE_AND_TIME, STRING

在VASS標準中的應用實例:

pMeldFeldAT TempPointerMsys: STRUCT 變量格式是結構

BYTE0:BYTE; // Byte 0

TYP :BYTE; //Byte 1 Daten/Parametertyp

ANZ :WORD; //Byte 2+3 Laenge der Variablen

DBNR :WORD; //Byte 4+5 DB-Nummer

BZ :DWORD;// Byte 6 故障信息號

END_STRUCT;

程序中

TempPointerMsys := Msys; 故障信息號給入變量

故障報警信息

c41efb56-9417-11eb-8b86-12bb97331649.png

MeldSend(AufrufNr := 1

,Anz_Meld:= 27

,pMeldFeld:= pMeldFeld.BZ 故障信息號被用來發出

,pMeldAbb := pMeldAbb.BZ

,MeldDB:= WORD_TO_INT(pMeldDBNR.DBNR)

,AenderungsID := AenderungsID

,Integritaet:= Integritaet

,Neustart:= Neustart

); // VOID

-------------------------------END--------------------------

責任編輯:lq

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 參數
    +關注

    關注

    11

    文章

    1869

    瀏覽量

    33947
  • 數據類型
    +關注

    關注

    0

    文章

    237

    瀏覽量

    14185
  • SCL
    SCL
    +關注

    關注

    1

    文章

    244

    瀏覽量

    18019

原文標題:SCL_什么是“AT”指令,如何使用?及其在VASS標準中的應用

文章出處:【微信號:gh_a8b121171b08,微信公眾號:機器人及PLC自動化應用】歡迎添加關注!文章轉載請注明出處。

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    運動相機RED認證指令介紹

    運動相機出口歐盟,帶無線功能(WiFi / 藍牙?/ 4G/5G)必須符合?CERED?指令;僅有線款無需 RED,需滿足?LVD 2014/35/EU?與?EMC 2014/30/EU。RED
    的頭像 發表于 02-26 14:55 ?84次閱讀
    運動相機RED認證<b class='flag-5'>指令</b>介紹

    A64指令集通關筆記:加載與存儲指令全解析

    作為嵌入式 ?Linux? 開發者, A64? 指令集是我們繞不開的基本功。最近我在復習這部分內容時,整理了一份帶思考題解答的筆記,希望能幫大家快速掌握核心要點。 ? 開篇:為什么必須啃下 A64
    的頭像 發表于 01-20 16:23 ?210次閱讀
    A64<b class='flag-5'>指令</b>集通關筆記:加載與存儲<b class='flag-5'>指令</b>全解析

    RISC-V高級指令融合如何實現性能密度躍升

    Synopsys ARC-V 處理器中的高級指令融合引入了一種新型機制,用于融合常見的 RISC-V 指令對,旨在提高處理器流水線效率,特別是針對資源受限的嵌入式處理器。通過融合來自不同功能單元的指令, 它將單發射、順序執行的處
    的頭像 發表于 12-29 11:22 ?325次閱讀
    RISC-V高級<b class='flag-5'>指令</b>融合如何實現性能密度躍升

    RDMA設計10:指令控制單元設計?

    指令控制單元負責控制數據傳輸及 DMA 數據讀寫。該單元簡化了數據傳輸及DMA 操作,使得用戶可以更簡便的控制數據傳輸事務。指令控制單元的功能由指令控制寄存器組和指令狀態寄存器組成。
    的頭像 發表于 12-23 09:24 ?304次閱讀
    RDMA設計10:<b class='flag-5'>指令</b>控制單元設計?

    歐盟CE-RED指令介紹

    歐盟CE-RED指令,全稱是RadioEquipmentDirective(無線電設備指令),指令編號為2014/53/EU,是歐盟針對所有帶無線發射功能設備制定的一項強制性法規。它是歐盟CE認證
    的頭像 發表于 11-05 14:01 ?718次閱讀
    歐盟CE-RED<b class='flag-5'>指令</b>介紹

    浮點數指令的添加——長指令寫回仲裁

    =在增加浮點數指令時,我們會遇到一些需要寫回寄存器的指令,此時就需要對原先的寫回功能模塊做更改。 寫回功能主要集中在這兩個模塊中 e203_exu_longpwbck.v長指令寫回仲裁
    發表于 10-24 07:09

    浮點數指令添加——長指令寫回仲裁

    浮點數指令添加——長指令寫回仲裁 在增加浮點數指令時,我們會遇到一些需要寫回寄存器的指令,此時就需要對原先的寫回功能模塊做更改。 寫回功能主要集中在這兩個模塊中
    發表于 10-24 06:07

    NICE指令的完整執行過程

    NICE指令的完整執行過程如下: 1、主處理器的譯碼單元提供EXU級譯碼得到指令的操作碼,以判斷其是否屬于默認的自定義指令組。 如果該指令屬于自定義
    發表于 10-23 07:25

    浮點指令擴展中16位指令的處理

    RISC-V支持16位壓縮格式,壓縮格式立即數位數更少,能使用的寄存器也比較少,有些指令只能用常用8個整數寄存器(x8-x15)或者(f8-f15)。16 位指令只對匯編器和鏈接器可見,并且是否以短
    發表于 10-20 11:02

    Linux環境下div指令、divu指令測試異常怎么解決?

    由于團隊修改了muldiv指令,需要測試div指令、divu指令是否功能正常: rv32um-p-div: 意外的,程序會產生自檢報錯(實際上這個報錯在原工程中也會出現),通過info我們可以看到
    發表于 10-20 06:07

    西門子SMART200脈沖指令資料

    西門子SMART200脈沖指令
    發表于 07-29 17:29 ?0次下載

    步進電機控制指令詳解

    這些指令主要是針對用 PLC 直接聯動伺服放大器,目的是可以不借助其他擴展設備(例如1GM 模塊)來進行簡單的點位控制, 使用這些指令時最好配合三菱的伺服放大器 (如 MR-J2)。然而,我們也可以用這些指令來控制步進電機的運行
    的頭像 發表于 06-12 10:33 ?1995次閱讀
    步進電機控制<b class='flag-5'>指令</b>詳解

    NVME控制器設計之指令控制

    指令控制模塊由一個指令信息緩存, 一個指令組裝狀態機和一個 ID 池組成。 指令信息緩存中存放著由系統控制模塊寫入的待處理指令信息;
    的頭像 發表于 04-24 10:22 ?827次閱讀
    NVME控制器設計之<b class='flag-5'>指令</b>控制

    普源示波器遠程控制SCPI指令的應用

    Commands for Programmable Instruments)指令作為標準化的控制語言,為普源示波器的遠程控制提供了強有力的支持。本文將深入探討普源示波器遠程控制SCPI指令的應用,包括其基本概念、常用指令、應用
    的頭像 發表于 04-22 15:55 ?1264次閱讀
    普源示波器遠程控制SCPI<b class='flag-5'>指令</b>的應用

    CPU的各種指令和執行流程

    在集成電路設計中,CPU的指令是指計算機中央處理單元(CPU)用來執行計算任務的基本操作指令集。這些指令是CPU能夠理解并執行的二進制代碼,它們在計算機內部由硬件控制并按順序執行,從而實現計算、控制
    的頭像 發表于 04-18 11:24 ?2629次閱讀