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

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

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

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

博途中SCL的賦值運(yùn)算

機(jī)器人及PLC自動(dòng)化應(yīng)用 ? 來(lái)源:機(jī)器人及PLC自動(dòng)化應(yīng)用 ? 2023-06-19 10:57 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

定義

可通過(guò)賦值運(yùn)算,可以將一個(gè)表達(dá)式的值分配給一個(gè)變量。賦值表達(dá)式的左側(cè)為變量,右側(cè)為表達(dá)式的值。

函數(shù)名稱也可以作為表達(dá)式。賦值運(yùn)算將調(diào)用該函數(shù),并返回其函數(shù)值,賦給左側(cè)的變量。

賦值運(yùn)算的數(shù)據(jù)類型取決于左邊變量的數(shù)據(jù)類型。右邊表達(dá)式的數(shù)據(jù)類型必須與該數(shù)據(jù)類型一致。

可通過(guò)以下方式編程賦值運(yùn)算:

單賦值運(yùn)算

執(zhí)行單賦值運(yùn)算時(shí),僅將一個(gè)表達(dá)式或變量分配給單個(gè)變量:

示例:a := b;

多賦值運(yùn)算

執(zhí)行多賦值運(yùn)算時(shí),一個(gè)指令中可執(zhí)行多個(gè)賦值運(yùn)算。

示例:a := b := c;

此時(shí),將執(zhí)行以下操作:

b := c;

a := b;

組合賦值運(yùn)算

執(zhí)行組合賦值運(yùn)算時(shí),可在賦值運(yùn)算中組合使用操作符“+”、“-”、“*”和“/”:

示例:a += b;

此時(shí),將執(zhí)行以下操作:

a := a + b;

也可多次組合賦值運(yùn)算:

a += b += c *= d;

此時(shí),將按以下順序執(zhí)行賦值運(yùn)算:

c := c * d;

b := b + c;

a := a + b;

STRUCT 數(shù)據(jù)類型或 PLC 數(shù)據(jù)類型的賦值運(yùn)算

如果結(jié)構(gòu)相同而且結(jié)構(gòu)中成員的數(shù)據(jù)類型和名稱也相同,則可以將整個(gè)結(jié)構(gòu)分配給另一個(gè)結(jié)構(gòu)。

可以為單個(gè)結(jié)構(gòu)元素分配一個(gè)變量、一個(gè)表達(dá)式或另一個(gè)結(jié)構(gòu)元素。

ARRAY 數(shù)據(jù)類型的賦值運(yùn)算

如果兩者的 ARRAY 元素?cái)?shù)據(jù)類型以及 ARRAY 限值都匹配,則可以將整個(gè) ARRAY 分配給另一個(gè) ARRAY。

可以為單個(gè) ARRAY 元素分配一個(gè)變量、一個(gè)表達(dá)式或另一個(gè) ARRAY 元素。

STRING 數(shù)據(jù)類型的賦值運(yùn)算

可將整個(gè) STRING 賦值給另一個(gè) STRING。

可以為單個(gè) STRING 元素分配另一個(gè) STRING 元素。

WSTRING 數(shù)據(jù)類型的賦值 (S7-1200/1500)

可將整個(gè) WSTRING 賦值給另一個(gè) WSTRING。

可以為單個(gè) WSTRING 元素分配另一個(gè) WSTRING 元素。

ANY 數(shù)據(jù)類型的賦值運(yùn)算

只能將 ANY 數(shù)據(jù)類型的變量賦值給以下對(duì)象:

同樣為 ANY 數(shù)據(jù)類型的 FB 的輸入?yún)?shù)或臨時(shí)本地?cái)?shù)據(jù)。

同樣為 ANY 數(shù)據(jù)類型的 FC 的臨時(shí)本地?cái)?shù)據(jù)。

請(qǐng)注意,使用 ANY 指針時(shí),只能指向“標(biāo)準(zhǔn)”訪問(wèn)模式的存儲(chǔ)區(qū)。

POINTER 數(shù)據(jù)類型的賦值運(yùn)算

在 SCL 的賦值運(yùn)算中不能使用 POINTER。

示例

下表舉例說(shuō)明了單賦值運(yùn)算的操作:

SCL
"MyTag1" := "MyTag2"; (* 變量賦值 *)
"MyTag1" := "MyTag2" * "MyTag3"; (* 表達(dá)式賦值 *)
"MyTag" := "MyFC"(); (* 調(diào)用一個(gè)函數(shù),并將函數(shù)值賦給 "MyTag" 變量 *)
#MyStruct.MyStructElement := "MyTag"; (* 將一個(gè)變量賦值給一個(gè)結(jié)構(gòu)元素 *)
#MyArray[2] := "MyTag"; (* 將一個(gè)變量賦值給一個(gè) ARRAY 元素 *)
"MyTag" := #MyArray[1,4]; (* 將一個(gè) ARRAY 元素賦值給一個(gè)變量 *)
#MyString[2] := #MyOtherString[5]; (* 將一個(gè) STRING 元素賦給另一個(gè) STRING 元素 *)

下表舉例說(shuō)明了多賦值運(yùn)算的操作:

SCL
"MyTag1" := "MyTag2" := "MyTag3"; (* 變量賦值 *)
"MyTag1" := "MyTag2" := "MyTag3" * "MyTag4"; (* 表達(dá)式賦值 *)
"MyTag1" := "MyTag2" := "MyTag3 := "MyFC"(); (* 調(diào)用一個(gè)函數(shù),并將函數(shù)值賦值給變量 "MyTag1"、"MyTag1" 和 "MyTag1" *)
#MyStruct.MyStructElement1 := #MyStruct.MyStructElement2 := "MyTag"; (* 將一個(gè)變量賦值給兩個(gè)結(jié)構(gòu)元素 *)
#MyArray[2] := #MyArray[32] := "MyTag"; (* 將一個(gè)變量賦值給兩個(gè)數(shù)組元素 *)
"MyTag1" := "MyTag2" := #MyArray[1,4]; (* 將一個(gè)數(shù)組元素賦值給兩個(gè)變量 *)
#MyString[2] := #MyString[3]:= #MyOtherString[5]; (* 將一個(gè) STRING 元素賦值給兩個(gè) STRING 元素 *)

下表舉例說(shuō)明了組合賦值運(yùn)算的操作:

SCL
"MyTag1" += "MyTag2"; (* "MyTag1" 和 "MyTag2" 相加,并將相加的結(jié)果賦值給 "MyTag1"。*)
"MyTag1" -= "MyTag2" += "MyTag3"; (* "MyTag2" 和 "MyTag3" 相加。將相加的結(jié)果賦值給操作數(shù)“"MyTag2"”,再?gòu)?"MyTag1" 中減去該值。計(jì)算結(jié)果將賦值給 "MyTag1"。*)
#MyArray[2] += #MyArray[32] += "MyTag"; (* 數(shù)組元素 "MyArray[32]" 加上 "MyTag"。計(jì)算結(jié)果將賦值給 "MyArray[32]"。這個(gè)數(shù)組中的各個(gè)元素將相加,然后將結(jié)果分配給數(shù)組元素 "MyArray[2]"。在該運(yùn)算中,相應(yīng)的數(shù)據(jù)類型必需兼容。*)
#MyStruct.MyStructElement1 /= #MyStruct.MyStructElement2 *= "MyTag"; (* 結(jié)構(gòu)化元素 "MyStructElement2" 乘以 "MyTag"。計(jì)算結(jié)果將賦值給 "MyStructElement2"。之后,將結(jié)構(gòu)化元素 "MyStructElement1" 除以 "MyStructElement2",并將計(jì)算結(jié)果賦值給 "MyStructElement1"。在該運(yùn)算中,相應(yīng)的數(shù)據(jù)類型必需兼容。*)

審核編輯:湯梓紅

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

    關(guān)注

    3

    文章

    4381

    瀏覽量

    64914
  • 運(yùn)算
    +關(guān)注

    關(guān)注

    0

    文章

    132

    瀏覽量

    26210
  • SCL
    SCL
    +關(guān)注

    關(guān)注

    1

    文章

    243

    瀏覽量

    17559

原文標(biāo)題:博途:SCL的賦值運(yùn)算

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

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    C語(yǔ)言中賦值運(yùn)算符詳解

    在C語(yǔ)言中,賦值運(yùn)算符用于將一個(gè)值賦給變量。
    發(fā)表于 08-18 16:38 ?2621次閱讀
    C語(yǔ)言中<b class='flag-5'>賦值</b><b class='flag-5'>運(yùn)算</b>符詳解

    SCL語(yǔ)言FOR循環(huán)的用法及典型案例

    SCL
    YS YYDS
    發(fā)布于 :2023年06月25日 00:06:13

    C51中的復(fù)合賦值運(yùn)算符的相關(guān)資料分享

    / C51中的復(fù)合賦值運(yùn)算符 /變量 復(fù)合運(yùn)算符 表達(dá)式先把變量與后邊的表達(dá)式進(jìn)行某種運(yùn)算,然后將運(yùn)算的結(jié)果賦給前面的變量。+= 加法
    發(fā)表于 12-07 08:09

    VerilogHDL語(yǔ)言:清阻塞賦值和非阻塞賦值

    對(duì)于VerilogHDL語(yǔ)言中,經(jīng)常在always模塊中,面臨兩種賦值方式:阻塞賦值和非阻塞賦值。對(duì)于初學(xué)者,往往非常迷惑這兩種賦值方式的用法,本章節(jié)主要介紹這兩種文章的用法。其實(shí),有
    發(fā)表于 11-19 15:48 ?1389次閱讀

    西門子SCL編程:滾動(dòng)數(shù)據(jù)記錄

    責(zé)任編輯:xj 原文標(biāo)題:SCL編程實(shí)例:滾動(dòng)數(shù)據(jù)記錄 文章出處:【微信公眾號(hào):PLC技術(shù)圈】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。 ?
    的頭像 發(fā)表于 12-28 09:16 ?4382次閱讀
    西門子<b class='flag-5'>博</b>途<b class='flag-5'>SCL</b>編程:滾動(dòng)數(shù)據(jù)記錄

    簡(jiǎn)述阻塞賦值和非阻塞賦值的可綜合性

    ,所以基于的C的術(shù)語(yǔ)和概念出現(xiàn)在EDA中,原本是一個(gè)“誤打誤撞”,但歷史造成的現(xiàn)實(shí)則是:必須理解和正確掌握它們的用法。 軟件中阻塞進(jìn)程,是指調(diào)用返回之前,應(yīng)用進(jìn)程一直等待: 為了保證應(yīng)用進(jìn)程的效率,不至于被子程序的運(yùn)算過(guò)程“掛起”。非阻塞進(jìn)程得到應(yīng)用: 在非阻塞賦值進(jìn)程中
    的頭像 發(fā)表于 05-12 09:45 ?3020次閱讀
    簡(jiǎn)述阻塞<b class='flag-5'>賦值</b>和非阻塞<b class='flag-5'>賦值</b>的可綜合性

    【單片機(jī)自學(xué)筆記】(8):c51中的復(fù)合賦值運(yùn)算符,開(kāi)發(fā)版上的數(shù)碼管、74HC245、74HC138的使用方法,結(jié)構(gòu)體數(shù)組

    / C51中的復(fù)合賦值運(yùn)算符 /變量 復(fù)合運(yùn)算符 表達(dá)式先把變量與后邊的表達(dá)式進(jìn)行某種運(yùn)算,然后將運(yùn)算的結(jié)果賦給前面的變量。+= 加法
    發(fā)表于 11-24 10:36 ?0次下載
    【單片機(jī)自學(xué)筆記】(8):c51中的復(fù)合<b class='flag-5'>賦值</b><b class='flag-5'>運(yùn)算</b>符,開(kāi)發(fā)版上的數(shù)碼管、74HC245、74HC138的使用方法,結(jié)構(gòu)體數(shù)組

    如何通過(guò)SCL來(lái)實(shí)現(xiàn)編程

    SCL作為IEC61131-3編程語(yǔ)言的一種,由于其高級(jí)語(yǔ)言的特性,特別適合復(fù)雜運(yùn)算、復(fù)雜數(shù)學(xué)函數(shù)應(yīng)用的場(chǎng)合。本文以FactoryIO軟件中的物料分揀案例作為硬件基礎(chǔ),介紹如何通過(guò)SCL來(lái)實(shí)現(xiàn)編程。
    的頭像 發(fā)表于 10-26 16:12 ?2952次閱讀

    西門子途S7-1200使用SCL語(yǔ)言實(shí)現(xiàn)雙重循環(huán)

    在TIA Portal(圖)軟件中,利用SCL語(yǔ)言實(shí)現(xiàn)如下算法。
    的頭像 發(fā)表于 03-03 09:13 ?7406次閱讀

    Python變量和簡(jiǎn)單賦值語(yǔ)句

    。 比如: a = 3 變量賦值內(nèi)存變化情況: 運(yùn)行過(guò)程中,解釋器先運(yùn)行右邊的表達(dá)式,生成一個(gè)代表表達(dá)式運(yùn)算結(jié)果的對(duì)象; 然后,將這個(gè)對(duì)象地址賦值給左邊的變量, 如下圖所示: 如果直接調(diào)用未
    的頭像 發(fā)表于 03-05 17:11 ?1884次閱讀
    Python變量和簡(jiǎn)單<b class='flag-5'>賦值</b>語(yǔ)句

    SCL中的 EN/ENO 機(jī)制概述

    SCL 中的 EN/ENO 機(jī)制概述 在 SCL 程序段中,可以通過(guò)賦值來(lái)改變 ENO。為此,請(qǐng)寫入“ENO:=TRUE”或“ENO:=FALSE”,或使用 BOOL 數(shù)據(jù)類型的變量。當(dāng)激活“自動(dòng)置
    的頭像 發(fā)表于 08-23 10:08 ?3593次閱讀

    阻塞賦值與非阻塞賦值

    ”=“阻塞賦值與”
    的頭像 發(fā)表于 09-12 09:06 ?1432次閱讀
    阻塞<b class='flag-5'>賦值</b>與非阻塞<b class='flag-5'>賦值</b>

    SIMATIC S7-1500 PLC S7-SCL賦值詳解

    通過(guò)賦值,一個(gè)變量接受另一個(gè)變量或者表達(dá)式的值。在賦值運(yùn)算符“;=”左邊的是變量,該變量接受右邊的地址或者表達(dá)式的值。
    的頭像 發(fā)表于 11-29 09:24 ?5334次閱讀

    西門子SCL練習(xí)1:使用FC計(jì)算平均值

    西門子SCL練習(xí)1:使用FC計(jì)算平均值
    的頭像 發(fā)表于 01-02 10:25 ?3687次閱讀
    西門子<b class='flag-5'>博</b>圖<b class='flag-5'>SCL</b>練習(xí)1:使用FC計(jì)算平均值

    西門子途中的LAD、FBD與SCL編程

    選擇要在其后插入新程序段的程序段。 在快捷菜單中,選擇命令“插入 STL 程序段”(Insert STL network) 或“插入 SCL 程序段” (Insert SCL network)。
    發(fā)表于 01-16 09:33 ?4131次閱讀
    西門子<b class='flag-5'>博</b><b class='flag-5'>途中</b>的LAD、FBD與<b class='flag-5'>SCL</b>編程