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

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

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

3天內不再提示

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

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

掃碼添加小助手

加入工程師交流群

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

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

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

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

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

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

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

特點一:定義僅在塊內有效,在接口參數中不出現(xiàn)。塊內定以的輸入參數有3個,但僅在塊內有效,在接口參數僅出現(xiàn)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個,但僅在塊內有效,在接口參數僅出現(xiàn)Buffer輸入參數

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

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

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

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

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

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 故障信息號被用來發(fā)出

,pMeldAbb := pMeldAbb.BZ

,MeldDB:= WORD_TO_INT(pMeldDBNR.DBNR)

,AenderungsID := AenderungsID

,Integritaet:= Integritaet

,Neustart:= Neustart

); // VOID

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

責任編輯:lq

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

    關注

    11

    文章

    1867

    瀏覽量

    32952
  • 數據類型
    +關注

    關注

    0

    文章

    237

    瀏覽量

    13863
  • SCL
    SCL
    +關注

    關注

    1

    文章

    243

    瀏覽量

    17511

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

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

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    步進電機控制指令詳解

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

    NVME控制器設計之指令控制

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

    CPU的各種指令和執(zhí)行流程

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

    RISC-V基礎指令詳解

    RISC-V中定義了六種指令類型,其中包括 R型指令 : 用于寄存器與寄存器之間算數運算的指令 I型指令 : 用于寄存器和立即數算術運算和讀存儲器操作的
    發(fā)表于 12-29 18:47

    Erp指令能效

    ErP指令EC244/2009、EC245/2009、EU1194/2012和能效標簽指令EU874/2012已經實行多年,歐盟委員會在近3年通過參照不斷改進的照明產品技術、環(huán)境和經濟因素以及實際
    的頭像 發(fā)表于 11-20 23:57 ?541次閱讀
    Erp<b class='flag-5'>指令</b>能效

    匯川INOVANCE 中型PLC指令手冊

    匯川INOVANCE 中型PLC指令手冊
    發(fā)表于 11-19 13:45 ?6次下載

    plc基本指令的應用有哪些

    PLC(可編程邏輯控制器)的基本指令是PLC編程語言的基本元素,用于描述PLC如何根據輸入信號的狀態(tài)控制輸出信號的變化,從而實現(xiàn)對機械設備的控制。PLC的基本指令涵蓋了邏輯運算、定時控制、計數
    的頭像 發(fā)表于 10-21 17:16 ?2643次閱讀

    處理器指令的獲取過程

    微處理器指令的獲取是計算機執(zhí)行程序過程中的關鍵環(huán)節(jié),它決定了微處理器如何對數據和指令進行處理。以下將詳細闡述微處理器指令的獲取過程,包括指令的來源、存儲位置、讀取方式以及相關的硬件和軟
    的頭像 發(fā)表于 10-05 15:16 ?937次閱讀

    微處理器執(zhí)行指令的基本過程

    微處理器,作為現(xiàn)代計算機的核心部件,負責執(zhí)行存儲在內存中的指令,完成各種計算和控制任務。指令的執(zhí)行過程不僅體現(xiàn)了微處理器的設計思想和架構特點,還直接影響到計算機的性能和效率。
    的頭像 發(fā)表于 10-05 15:07 ?1898次閱讀

    微處理器的指令集和指令系統(tǒng)有什么不同

    微處理器的指令集和指令系統(tǒng)是兩個緊密相關但又有所區(qū)別的概念,它們在微處理器的設計和運行中扮演著不同的角色。以下是對這兩個概念的詳細解析,旨在深入探討它們之間的不同點。
    的頭像 發(fā)表于 10-05 14:57 ?1061次閱讀

    PLC指令的簡要說明

    PLC(可編程邏輯控制器)的指令雖然因不同的制造商和型號而有所差異,但有一些指令是相對比較通用的。
    的頭像 發(fā)表于 09-18 14:15 ?1387次閱讀

    復雜指令集和精簡指令集有什么區(qū)別

    復雜指令集(CISC,Complex Instruction Set Computer)和精簡指令集(RISC,Reduced Instruction Set Computer)是微處理器設計中
    的頭像 發(fā)表于 08-22 11:00 ?5584次閱讀

    西門子移位指令怎么用在順序控制

    西門子的PLC(可編程邏輯控制器)廣泛應用于工業(yè)自動化領域,其指令集豐富,能夠滿足各種控制需求。在順序控制中,移位指令是一種非常有用的指令,可以實現(xiàn)數據的移動和處理。 移位指令概述 移
    的頭像 發(fā)表于 08-16 17:08 ?1985次閱讀

    三菱 FX 系列PLC的基本邏輯指令(2)

    ?置位與復位指令(SET/RST) ?(1)SET(置位指令) 它的作用是使被操作的目標元件置位并保持。 ?(2)RST(復位指令) 使被操作的目標元件復位并保持清零狀態(tài)。SET、RST指令
    的頭像 發(fā)表于 08-05 09:06 ?1311次閱讀

    如何快速生成Modbus指令?教程來啦

    一適用型號該筆記適用于標準Modbus協(xié)議產品(MA01系列、ME31系列、M31系列、ME15-AXAX8080)。二功能簡介功能說明:Modbus指令快速生成教程旨在幫助用戶快速生成Modbus
    的頭像 發(fā)表于 06-28 08:21 ?1759次閱讀
    如何快速生成Modbus<b class='flag-5'>指令</b>?教程來啦