91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

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

3天內不再提示

關于PLC編程該選擇那種IEC 61131-3編程語言最適合

jf_f8pIz0xS ? 來源:控制工程網(wǎng) ? 作者:Gary L. Pratt ? 2021-04-14 15:23 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

編程邏輯控制器PLC)有很多編程語言可供選擇。有種說法,標準的偉大之處在于有很多選擇!盡管這很諷刺,但在IEC 61131-3編程語言中,有多種語言標準可供選擇確實是一個優(yōu)勢。

在參加我的培訓班時,很多學生抱著這樣一種心態(tài):選擇最適合自己的語言,然后專門學習該語言。上課伊始,他們經(jīng)常會問我會推薦適用哪種語言?;蛘?,“最好的語言是哪個?”

圖1:IEC 61131-3編程語言提供了適合特定需求的語言。

我沒有回答,問他們一個問題:“在阿拉伯數(shù)字中,哪個數(shù)字最好?”或“英語中,哪個詞最好?” 再比如:辦公室軟件中,哪個工具最好?是文檔編輯器、演示文稿編輯器,還是電子表格編輯器?雖然可以使用文檔編輯器創(chuàng)建演示文稿和電子表格,但這是正確的方法嗎?

圖2:該圖比較了在Codesys中實現(xiàn)復雜布爾邏輯的不同語言。

使用一種工具實現(xiàn)多種目的,需要學習各種技巧,這是否值得付出?僅學習該工具對工作有用的主要功能,是不是更有效?與辦公軟件一樣,為應用選擇最佳編程語言是最有效的,可以避免很多麻煩。當使用的IEC 61131-3編程語言能夠充分發(fā)揮其語言的優(yōu)勢時,PLC的編程和維護功能就會得到加強。

梯形圖編程

梯形圖(LD)編程的歷史,可以追溯到大約100年前的繼電器梯形邏輯(RLL),它主要用于描述電氣元件系統(tǒng)(如繼電器、計時器和電動機)。在自動化時代初期PLC逐步替換繼電器和計時器時,創(chuàng)建一種用戶熟悉并與被替換的工具相似的編程語言非常重要。

不幸的是,控制器變得越來越強大,能夠實現(xiàn)的功能也已經(jīng)遠遠超過繼電器和計時器,LD語言被用于各種新的場景,而這并不是LD所擅長的,因此效果也不是特別理想。

圖3:該圖顯示了順序功能圖的編程組件。

PLC供應商提供新的、更適合PLC和可編程自動化控制器(PAC)應用的語言的速度比較緩慢,使這種情況進一步惡化。對于源自北美的控制器而言尤其如此,這可以解釋在全球范圍內,LD持久受歡迎的程度為什么會有所差異。

LD編程的優(yōu)勢是什么?為什么它能持久受歡迎?關鍵就是圖形化。而通常來說工程師是更傾向于圖形化思維的。

起初,大多數(shù)LD編程的替代方法都是基于文本的語言,這些語言與工程師的圖形化思維不會產生共鳴,其結果就是不愿從LD轉向其它語言。幸運的是,這種情況正在發(fā)生變化。

LD仍然是一門偉大的語言,它的初衷是執(zhí)行復雜的布爾邏輯。在這個領域內,LD邏輯易于設計且易于調試。要確定為什么結果與預期不符,有多容易?在LD語言中,只需要觀察藍色實心觸點的路徑在何處中斷就可以快速獲得答案。

順序功能圖編程

順序功能圖(SFC)是一種圖形語言,非常適合表示狀態(tài)機(state machine),并且像LD語言一樣,它吸引了工程師的圖形化思維天性。

圖4:基于Codesys連續(xù)功能圖語言,展示了一個基于塊的編程設計示例。

狀態(tài)機的歷史可以追溯到很多年前,但是直到最近才被用于工業(yè)編程。狀態(tài)機是表示系統(tǒng)行為的一種非常強大的方法,可用于表達行為取決于過去歷史記錄的系統(tǒng)邏輯,例如:

1.設置線圈或復位線圈;

2.封裝邏輯(布爾反饋);

3.由代碼設置的內部標志,用于決定未來的行為。

實際上,即使是簡單的TON On-Timer和R-Trig one-shot都是狀態(tài)機。它們的下一個行為取決于先前的輸入和行為。與其它編碼技術相比,狀態(tài)機具有許多優(yōu)勢:

1.它們易于設計,因為它清楚地描述了系統(tǒng)可能的狀態(tài),系統(tǒng)如何在這些狀態(tài)之間轉換,系統(tǒng)在這些狀態(tài)下應采取的行動。

2.在運行時,可以很容易地確定系統(tǒng)處于什么狀態(tài),在該狀態(tài)下正在做什么,以及在什么條件下系統(tǒng)會切換到下一個狀態(tài)(或者過程中出了什么問題,導致無法切換到下一個狀態(tài))。

3.促進構思周密且組織良好的設計。這樣可以確保所有可能的事件都已得到妥善處理(就不會有人半夜三更把你從床上叫起來,去修復無法正確處理異常工況的代碼)。

4.易于確定是否已經(jīng)測試了所有可能事件。只需打印出SFC,并在執(zhí)檢查時劃掉每個狀態(tài)和切換條件即可。完成所有工作后,測試就完成了(程序員的置信度為100%)。

如何實現(xiàn)狀態(tài)機?

幾乎任何語言都可以實現(xiàn)狀態(tài)機,但它們都需要特定的編碼技術,包括步(step)、轉換(transition)、分支/跳轉(branch/jump)和動作(action)。

步描述了系統(tǒng)可以駐留的狀態(tài);轉換指示系統(tǒng)何時應從上一步轉移至下一步;分支和跳轉指示下一步應該是什么;動作指定在該步期間(進入或退出該步)應執(zhí)行的操作。

由于其圖形化屬性和工作的專業(yè)性,SFC語言是狀態(tài)機最自然的選擇。對于那些需求異常復雜或要求特別靈活的系統(tǒng),狀態(tài)機也可以用基于文本的語言來實現(xiàn)。對于只能使用LD的企業(yè),狀態(tài)機甚至可以在LD中實現(xiàn),方法是為每個狀態(tài)使用一個線圈,轉移邏輯為每個線圈通電/斷電,將系統(tǒng)從一個狀態(tài)轉移到下一個狀態(tài),以及利用使用狀態(tài)線圈的獨立邏輯來執(zhí)行動作。

一些供應商還可以用統(tǒng)一建模語言(UML)來實現(xiàn)狀態(tài)圖,作為SFC的更強大、更靈活的替代方法,但這需要更長的學習曲線,而且在工業(yè)控制領域中的接受度有限。

對于狀態(tài)機,語言的選擇是次要的,所用技術的選擇更重要。在SFC中,該語言強制使用狀態(tài)機技術。在其它語言中,使用的技術取決于工程師制定的規(guī)則。

圖5:結構引腳可以減少不必要的細節(jié)和混亂,從而增強了圖表的可讀性。

功能塊圖編程

功能塊圖(FBD)是一種圖形語言,符合工程師的圖形化思維。來自Codesys(以前被稱為3S-Smart Software Solutions)的集成開發(fā)環(huán)境提供了兩種FBD,即傳統(tǒng)的IEC 61131-3 FBD和類似但更靈活的連續(xù)功能塊圖(CFC),CFC還沒有正式成為IEC 61131-3的一部分。CFC是FBD的超集,具有兩大優(yōu)勢:

1.基于塊的功能編程(執(zhí)行布爾和數(shù)學運算);

2.分層設計(調用其它功能和功能塊)。

·基于塊的編程

基于塊的設計由預定義功能組件組成,這些組件連接在一起執(zhí)行布爾邏輯、數(shù)學計算或二者兼而有之。當輸出是輸入的函數(shù)時(換句話說,當沒有狀態(tài)變量,例如布爾反饋、設置/復位線圈或標志時),CFC塊編程非常出色。當同時使用無狀態(tài)功能和基于狀態(tài)的功能時,請結合使用CFC和SFC。

因為連接性是用功能塊之間的線來表示的,所以很容易理解信息流以及信息是如何沿著其路徑進行修改的。如果功能開始變得復雜,則應將其分為較小的、更易于管理的子塊。如果塊之間存在大量連接,則可以將這些線連接至數(shù)據(jù)結構類型的引腳。

結構引腳(structure pin)具有3個優(yōu)點:

1.在層次化結構設計中,每個層次都消除了不必要的細節(jié),更清晰易于理解;

2.保持較小的功能塊,可以在一頁上查看整個信息流;

3.允許信息流向上游和下游,以進一步減少不必要的細節(jié)。

對于以前采用LD實施基于塊或分層功能的PLC程序員來講,CFC提供了一種更為簡潔和靈活的方法。CFC的開發(fā)速度更快,而且對于將來負責維護或改進代碼的工程師來說,也更容易理解。

·分層設計

分層設計是一種從很多簡單的構建塊層層設計的實踐。與傳統(tǒng)的扁平化設計相比,分層設計具有許多優(yōu)點:

1.定制;

2.創(chuàng)建;

3.測試與完善;

4.理解和維護;

5.易于復用。

構建塊技術支持并鼓勵在層次結構的每個級別上,展現(xiàn)同等程度的細節(jié),這就使塊技術更易于設計和理解。這樣,在較高層次的設計中,不必因為展現(xiàn)細節(jié)而被弄得雜亂無章,這些細節(jié)只在較低層的設計中很重要。在層次結構的每個級別上,分層CFC設計應都具有統(tǒng)一的細節(jié)展示。

使用LD作為構建塊語言的傳統(tǒng)方法會存在2個弊端:

1.信息的低密度導致LD設計可能會分布到數(shù)10頁上,很難或不可能看到和理解全局;

2.不同層次的細節(jié)混雜在同一層次上會十分混亂,這使設計難以理解和維護。

而使用結構化文本的CFC分層設計可以解決這兩個問題,同時保持了LD的圖形特性。這是個兩全其美的解決方案。

分層設計是面向對象的工業(yè)編程(OOIP)的關鍵功能。在部署和配置用戶自定義的功能塊以后,CFC編程開始與分布式控制系統(tǒng)DCS)的編程/組態(tài)有點類似,但使用IEC 61131-3程序員可以控制底層的塊。如果某個塊需要較小的改進,程序員就可以執(zhí)行此操作,而無需費時費力的請DCS供應商介入。

完整的分層PLC設計,可以看作是一棵由分層CFC構成主干和分支的樹?;趬K的CFC、SFC、LD和ST填充樹葉所處位置的詳細功能設計。IEC 61131-3語言共同構成了一個團隊,該團隊比其各個部分的功能更強大。

結構化文本編程

盡管LD、SFC和FBD/CFC語言可以出色的完成其任務,但有些運算并不適合使用圖形化語言。

一些支持使用結構化文本(ST)語言編程的運算包括:

1.迭代運算,例如For、While和Repeat;

2.復雜條件和選擇,例如IF-THEN和CASE;

3.位運算,例如按位與、移位、旋轉;

4.文本字符串運算;

5.具有特殊要求或特別復雜的狀態(tài)機;

6.純粹的面向對象編程(調用方法,設置屬性等)。

有許多很好的教程,可指導工程師從其它基于文本的語言過渡到ST。對于那些完全不熟悉基于文本的語言的人來說,Visual Basic教程是一個很好的起點。盡管結構化文本基于Pascal編程語言,但它與VB有非常相似,因此可以參考應用更廣泛的VB教程。

圖6:此處的分層設計是在連續(xù)功能圖編程中實現(xiàn)的。

使用最合適的語言編程

要創(chuàng)建有效的工業(yè)控制程序,掌握合適的編程語言并知道如何有效使用這些語言非常重要。有很多語言可供PLC選擇,IEC 61131-3編程語言標準也提供了多種選擇。充分利用每種語言的優(yōu)勢效率會更高,而不是學習一種語言的各種技巧和變通方法來使其適用于所有應用。程序員應為應用選擇最佳語言。

“為了創(chuàng)建有效的工業(yè)控制程序,掌握合適的語言,并知道如何有效使用這些語言非常重要。”
編輯:lyn

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

    關注

    2

    文章

    236

    瀏覽量

    30377
  • PLC編程
    +關注

    關注

    47

    文章

    248

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    PLC標準IEC61499 vs IEC61131:自動化工程師必須搞懂的核心區(qū)別

    PLC 控制的嗎?到底有什么差別?” 今天用工程師能看懂、也能給客戶講清楚的方式,帶你快速梳理這兩個標準的真實區(qū)別。 IEC 61131:傳統(tǒng) PLC 的標準 → 程序以“周期掃描方
    的頭像 發(fā)表于 01-13 17:00 ?795次閱讀
    <b class='flag-5'>PLC</b>標準<b class='flag-5'>IEC</b>61499 vs <b class='flag-5'>IEC61131</b>:自動化工程師必須搞懂的核心區(qū)別

    Beremiz 開源 PLC 從安裝到運行全流程實操指南

    一、產品概述 Beremiz是一款開源的PLC(可編程邏輯控制器)開發(fā)軟件,專為工業(yè)自動化控制系統(tǒng)的編程和調試而設計。它支持IEC 61131-3
    的頭像 發(fā)表于 01-05 16:42 ?448次閱讀
    Beremiz 開源 <b class='flag-5'>PLC</b> 從安裝到運行全流程實操指南

    為什么單片機還在用C語言編程?

    ,只是C語言最適合單片機編程的高級語言。 一、單片機編程的特點 1.對單片機編程來說,我
    發(fā)表于 11-28 07:37

    C語言編程技巧

    一個成員是一個未知大小的數(shù)組,適用于動態(tài)分配內存并關聯(lián)一個可變長度的數(shù)組。? ?3、匿名結構體和聯(lián)合體?:C語言允許在結構體或聯(lián)合體中定義不帶標簽的內部結構體或聯(lián)合體,簡化代碼結構。 ?4
    發(fā)表于 11-27 06:46

    一文了解Mojo編程語言

    Mojo 是一種由 Modular AI 公司開發(fā)的編程語言,旨在將 Python 的易用性與 C 語言的高性能相結合,特別適合人工智能(AI)、高性能計算(HPC)和系統(tǒng)級
    發(fā)表于 11-07 05:59

    CoDeSys3基礎編程及應用指南

    電子發(fā)燒友網(wǎng)站提供《CoDeSys3基礎編程及應用指南.pdf》資料免費下載
    發(fā)表于 09-23 17:45 ?1次下載

    信捷XS STUDIO編程軟件V2.3.2版本的全新功能

    XS Studio(V2.3.2)編程軟件,是面向XS系列的編程組態(tài)軟件,集成了PLC編程、可視化HMI、安全PLC、控制器實時核、現(xiàn)場總線
    的頭像 發(fā)表于 09-20 14:19 ?2006次閱讀
    信捷XS STUDIO<b class='flag-5'>編程</b>軟件V2.3.2版本的全新功能

    如何選擇適合的可編程交流電源?

    選擇一款合適的可編程交流電源,需要綜合考慮測試需求、功能特性、品牌信譽和售后服務。源儀電子憑借其高性能的產品和完善的售后服務,能夠為用戶提供可靠的測試解決方案。無論是在新能源設備測試、工業(yè)制造還是科研實驗室,源儀電子的程控交流電源都能滿足用戶的需求,助力用戶提升測試效率和
    的頭像 發(fā)表于 08-29 10:02 ?662次閱讀
    如何<b class='flag-5'>選擇</b><b class='flag-5'>適合</b>的可<b class='flag-5'>編程</b>交流電源?

    梯形圖語言補充編程說明書

    電子發(fā)燒友網(wǎng)站提供《梯形圖語言補充編程說明書.pdf》資料免費下載
    發(fā)表于 07-09 14:14 ?3次下載

    Rockchip RV1106系列規(guī)格差異詳解:如何選擇最適合您的AI視覺處理器?

    ,RV1106系列的各型號究竟有哪些差異?如何根據(jù)需求選擇最適合的型號?本文將為您詳細解析。RV1106共有以下型號RV1106G2、RV1106G3、RV1106BG1、
    的頭像 發(fā)表于 06-16 09:37 ?5107次閱讀
    Rockchip RV1106系列規(guī)格差異詳解:如何<b class='flag-5'>選擇</b><b class='flag-5'>最適合</b>您的AI視覺處理器?

    嵌入式開發(fā),如何選擇適合的系統(tǒng)?

    在嵌入式ARM開發(fā)中,面對多種操作系統(tǒng)的選擇,如何做出最適合項目的決策?本文將為您梳理常見系統(tǒng)的特性,幫助您快速了解它們的優(yōu)缺點,以便更好地選擇適合的系統(tǒng)。引言在嵌入式ARM開發(fā)中,
    的頭像 發(fā)表于 05-20 11:32 ?1153次閱讀
    嵌入式開發(fā),如何<b class='flag-5'>選擇</b><b class='flag-5'>適合</b>的系統(tǒng)?

    從初學到進階:樹莓派上最適合你的代碼編輯器推薦!

    安裝樹莓派操作系統(tǒng)后,你就可以使用Python、Scratch、Java、C/C++等受Linux支持的多種編程語言進行編程了。其中,Python是樹莓派上最受歡迎的編程
    的頭像 發(fā)表于 05-15 16:20 ?1204次閱讀
    從初學到進階:樹莓派上<b class='flag-5'>最適合</b>你的代碼編輯器推薦!

    單片機c語言編程實例大全

    單片機c語言編程實例大全_18
    發(fā)表于 04-30 16:11 ?7次下載

    如何選擇最適合的固定式測斜儀?五大要點解析

    在土木工程監(jiān)測領域,固定式測斜儀如同工程安全的"智能聽診器",YS-1A系列憑借其卓越性能已成為眾多工程項目的首選。但面對不同型號和參數(shù),如何挑選最適合的設備?掌握這五大選擇
    的頭像 發(fā)表于 03-28 10:04 ?668次閱讀
    如何<b class='flag-5'>選擇</b><b class='flag-5'>最適合</b>的固定式測斜儀?五大要點解析

    低抖動可編程 VCXO:FCom FVC 系列的核心優(yōu)勢與應用

    本篇文章將深入解析?FCom 低抖動可編程 VCXO?的特點、常用頻率及其在光纖通信、5G 基站、數(shù)據(jù)中心、以太網(wǎng)、汽車電子、工業(yè)自動化、廣播電視等應用中的作用,幫助工程師和采購人員選擇最適合的高性能 VCXO 方案。
    的頭像 發(fā)表于 03-13 08:00 ?1264次閱讀
    低抖動可<b class='flag-5'>編程</b> VCXO:FCom FVC 系列的核心優(yōu)勢與應用