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

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

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

剖析西門子SCL語言for 循環(huán)事例

機器人及PLC自動化應(yīng)用 ? 來源:機器人及PLC自動化應(yīng)用 ? 作者:機器人及PLC自動化 ? 2021-05-13 10:59 ? 次閱讀

FOR語句在控制變量處于指定的值范圍內(nèi)時用來重復(fù)語句序列??刂谱兞勘仨毷荌NT或DINT類型的本地變量的標(biāo)識符。FOR循環(huán)的定義包括一個初始值和一個終止值的說明。兩個值必須與控制變量是同類型。

e749dad0-b33c-11eb-bf61-12bb97331649.png

FOR語句如下執(zhí)行:

在循環(huán)的開始。控制變量設(shè)置為初始值(初始化賦值),每次循環(huán)重復(fù),其增加(正增量)或減少(負增量)一個增量,直到達到終止值。

接著循環(huán)的每次運行,檢查條件(終止值達到)證實是否滿足。如果條件滿足,語句序列被執(zhí)行,否則跳過循環(huán)及其語句序列。

規(guī)則(Rules)

FOR語句的規(guī)則:

控制變量只能是INT或DINT數(shù)據(jù)類型。

能夠省去語句BY [增量]。如果不指定增量,則自動指定為+1。

初始賦值(Initial Assignment)

控制變量的初始值有下列語法。在賦值左邊的簡單變量必須是數(shù)據(jù)類型INT或DINT。

有效的初始賦值的例子:

FOR I := 1 TO 20
FOR I := 1 TO (START + J)

終止值和增量(Final Value and Increment)

能夠為終止值和所要求的增量寫一個基本表達式。此基本表達式有下列語法:

e789b61e-b33c-11eb-bf61-12bb97331649.png

能夠省去語句BY [increment]。如果沒指定增量,則自動指定為+1。

初始值、終止值和增量是表達式(見"表達式、運算符和地址")。當(dāng)FOR語句執(zhí)行時,起先對他們進行求值。

循環(huán)執(zhí)行后,不允許對終止值和增量值進行更改。

例子(Example)

FUNCTION_BLOCK FOR_EXA
VAR
INDEX : INT ;
IDWORD : ARRAY [1..50] OF STRING;
END_VAR
BEGIN
FOR INDEX := 1 TO 50 BY 2 DO
IF IDWORD [INDEX] = 'KEY' THEN
EXIT;
END_IF;
END_FOR;

實例: VASS標(biāo)準(zhǔn)中用確認(rèn)類型合格的語句:

e7ca8c20-b33c-11eb-bf61-12bb97331649.png

iTypAnz := WORD_TO_INT(pDB_STyp.Anz) / 12; 108/12=9

e7fcce42-b33c-11eb-bf61-12bb97331649.png

iRBSAnz := WORD_TO_INT(pDB_RBS.Anz) / 1666;6664/1666=4

IF (HAND OR Auto) AND NOT xUebern AND NOT FM_Reset AND xRBS_PZ_IO THEN

---如果在手動或者自動模式時沒有完成信號復(fù)位,有傳遞車型號正確時--

FOR iLauf := 1 TO iTypAnz BY 1 DO ---開始循環(huán)查9次找已有類型-

FOR i := 1 TO iRBSAnz BY 1 DO循環(huán)檢查給入數(shù)4位

IF tempDB_STyp.Typ[iLauf].arrText[i] = arrRBS[i]

OR tempDB_STyp.Typ[iLauf].arrText[i] = 'X' AND NOT cfg.X2

OR tempDB_STyp.Typ[iLauf].arrText[i] = '~' AND cfg.X2

THEN

如果在比較時有相等的,或者在比較位中有'X'或'~'時可以不比較,但是必須在cfg.X2上進行設(shè)置.那么車型號碼位合格被激活.

e849d80e-b33c-11eb-bf61-12bb97331649.png

arrSTyp_IO[i] := True;有一位車型號碼合格

ELSE 如果沒有相同的,或是滿足條件的就退出循環(huán)

EXIT; 退出循環(huán)

END_IF; 結(jié)束IF

END_FOR;

IF arrSTyp_IO[iRBSAnz] THEN如果有一位車型號碼合格,就轉(zhuǎn)存

_wData := tempDB_STyp.Typ[iLauf].Data;

EXIT;退出循環(huán)

END_IF;

END_FOR;結(jié)束循環(huán)

xSTyp_IO := arrSTyp_IO[iRBSAnz]; 發(fā)出車型號碼合格

xSTyp_NIO := NOT xSTyp_IO;發(fā)出車型號碼不合格

END_IF;

編輯:jq

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

    關(guān)注

    8

    文章

    7073

    瀏覽量

    89136
  • for
    for
    +關(guān)注

    關(guān)注

    0

    文章

    44

    瀏覽量

    15826
  • dint
    +關(guān)注

    關(guān)注

    0

    文章

    3

    瀏覽量

    1579

原文標(biāo)題:西門子SCL語言for 循環(huán)事例

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

收藏 人收藏

    評論

    相關(guān)推薦

    西門子plc200編程實例詳解

    S7-200系列包括多種不同型號的CPU模塊和擴展模塊,可以根據(jù)具體的應(yīng)用需求進行選擇和配置。其主要特點包括:高性能的CPU、豐富的指令集、強大的網(wǎng)絡(luò)通信功能以及易于使用的編程軟件等。 在編程方面,西門子PLC S7-200支持多種編程語言,包括梯形圖(LAD)、語句表
    的頭像 發(fā)表于 10-22 14:38 ?769次閱讀

    西門子中繼器的作用與原理

    西門子中繼器是西門子公司生產(chǎn)的一種通信設(shè)備,它在工業(yè)自動化和通信系統(tǒng)中扮演著重要的角色。中繼器的主要作用是放大和轉(zhuǎn)發(fā)信號,以確保信號在長距離傳輸過程中不會因為衰減而丟失或變得模糊不清。以下是關(guān)于
    的頭像 發(fā)表于 09-05 09:47 ?605次閱讀

    西門子PLC的復(fù)位操作

    西門子PLC(Programmable Logic Controller,可編程邏輯控制器)是一種廣泛應(yīng)用于工業(yè)自動化領(lǐng)域的控制設(shè)備。在實際應(yīng)用過程中,有時需要對PLC進行復(fù)位操作,以解決一些程序
    的頭像 發(fā)表于 08-16 17:46 ?3480次閱讀

    西門子總線協(xié)議有哪些

    西門子(Siemens)作為工業(yè)自動化領(lǐng)域的領(lǐng)先企業(yè),其總線協(xié)議在自動化系統(tǒng)中發(fā)揮著重要作用。西門子總線協(xié)議主要包括了多種類型,這些協(xié)議支持不同的應(yīng)用場景和通信需求。
    的頭像 發(fā)表于 08-05 16:09 ?1113次閱讀

    西門子完成對BuntPlanet的收購

    在數(shù)字化轉(zhuǎn)型的浪潮中,西門子再次邁出堅實步伐,近期成功完成了對西班牙科技創(chuàng)新企業(yè)BuntPlanet的收購整合,這一戰(zhàn)略舉措標(biāo)志著西門子在水行業(yè)的軟件產(chǎn)品組合迎來了前所未有的升級與豐富。此次并購
    的頭像 發(fā)表于 07-10 16:25 ?756次閱讀

    西門子PLC與IO模塊如何通訊

    在現(xiàn)代工業(yè)自動化控制系統(tǒng)中,西門子PLC(Programmable Logic Controller)以其卓越的性能和穩(wěn)定性贏得了廣泛應(yīng)用。而在西門子PLC系統(tǒng)中,IO模塊(Input/Output
    的頭像 發(fā)表于 06-19 10:46 ?2039次閱讀

    西門子PLC中OB塊的功能詳解

    西門子PLC(Programmable Logic Controller)作為工業(yè)自動化領(lǐng)域的核心設(shè)備,其內(nèi)部功能強大、應(yīng)用廣泛。在西門子PLC中,OB塊(Organization Block,組織
    的頭像 發(fā)表于 06-15 11:27 ?4864次閱讀

    西門子PLC的發(fā)展歷史

    西門子,作為全球知名的工業(yè)自動化和數(shù)字化企業(yè),其PLC(可編程邏輯控制器)產(chǎn)品的發(fā)展歷程是工業(yè)自動化領(lǐng)域的重要篇章。從早期的二進制控制器到如今的智能化、網(wǎng)絡(luò)化控制系統(tǒng),西門子PLC的發(fā)展歷程充滿了
    的頭像 發(fā)表于 06-15 11:26 ?1989次閱讀

    西門子PLC總線故障怎么解決

    在工業(yè)自動化領(lǐng)域,西門子PLC(Programmable Logic Controller,可編程邏輯控制器)以其高可靠性、強穩(wěn)定性和豐富的功能而備受青睞。然而,在實際應(yīng)用中,PLC總線故障時有發(fā)生
    的頭像 發(fā)表于 06-13 18:18 ?2440次閱讀

    西門子模塊型號都代表什么意思

    西門子(Siemens)是一家德國跨國公司,其產(chǎn)品涵蓋了工業(yè)自動化、能源、醫(yī)療、交通等多個領(lǐng)域。在工業(yè)自動化領(lǐng)域,西門子提供了各種模塊化產(chǎn)品,包括PLC(可編程邏輯控制器)、HMI(人機界面
    的頭像 發(fā)表于 06-11 16:20 ?5045次閱讀

    西門子plc模塊型號詳解

    西門子PLC(Programmable Logic Controller,可編程邏輯控制器)是工業(yè)自動化領(lǐng)域中非常重要的一種設(shè)備,其模塊化的設(shè)計使得其應(yīng)用范圍非常廣泛。本文將詳細介紹西門子PLC
    的頭像 發(fā)表于 06-11 16:18 ?6161次閱讀

    非夕科技與西門子達成戰(zhàn)略合作協(xié)議,正式加入西門子Xcelerator生態(tài)

    近日,F(xiàn)lexiv非夕科技與西門子達成戰(zhàn)略合作協(xié)議,正式加入西門子 Xcelerator 生態(tài),雙方將聯(lián)合打造面向多行業(yè)的自適應(yīng)機器人應(yīng)用解決方案。
    的頭像 發(fā)表于 05-24 14:49 ?801次閱讀

    西門子Xcelerator as a Service 擴展云解決方案 覆蓋整個產(chǎn)品生命周期

    · 西門子發(fā)布一系列新的 Xcelerator as a Service 解決方案,包括 NX X、Zel X、Opcenter X、Simcenter X 和 Teamcenter X
    的頭像 發(fā)表于 05-17 16:15 ?469次閱讀
    <b class='flag-5'>西門子</b>Xcelerator as a Service 擴展云解決方案 覆蓋整個產(chǎn)品生命周期

    西門子變頻器故障代碼 西門子變頻器參數(shù)說明

    西門子變頻器(Siemens Variable Frequency Drive)是一種主要用于控制電機運行速度和輸出功率的裝置。它根據(jù)需要調(diào)整輸入電壓和頻率,實現(xiàn)電機的精確控制和高效運行。然而,在
    的頭像 發(fā)表于 02-14 17:38 ?2w次閱讀

    西門子PLC和施耐德PLC區(qū)別

    西門子PLC系統(tǒng)的設(shè)計、建造工作量小,維護方便,容易改造,西門子PLC用存儲邏輯代替接線邏輯,大大減少了控制設(shè)備外部的接線,使控制系統(tǒng)設(shè)計及建造的周期大為縮短,同時維護也變得容易起來。
    發(fā)表于 01-17 10:14 ?2129次閱讀