• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      淺析基于TIA Portal Openness的程序自動(dòng)生成

      2020-12-29 09:02:12
      機(jī)電信息 2020年35期
      關(guān)鍵詞:編程啟動(dòng)程序

      張 超

      (機(jī)械工業(yè)第九設(shè)計(jì)研究院有限公司,吉林長(zhǎng)春130011)

      0 引言

      在當(dāng)前經(jīng)濟(jì)形勢(shì)下,各工程公司都在尋求方法提高項(xiàng)目質(zhì)量,降低人工成本。標(biāo)準(zhǔn)化無(wú)疑是其中最有效的一種方法,對(duì)于工業(yè)自動(dòng)化領(lǐng)域,應(yīng)用成熟穩(wěn)定的類(lèi)庫(kù)可以大幅降低時(shí)間成本,提高程序設(shè)計(jì)質(zhì)量。當(dāng)然標(biāo)準(zhǔn)程序庫(kù)應(yīng)用只是第一步,如果能夠基于標(biāo)準(zhǔn)程序庫(kù)實(shí)現(xiàn)PLC程序自動(dòng)生成,完成大部分的初始工作無(wú)疑又會(huì)大大節(jié)省項(xiàng)目時(shí)間。TIA Portal中的Openness就是這樣一個(gè)利器,為編程人員提供了自動(dòng)生成程序的通道,替代手工編程完成大部分基礎(chǔ)工作。

      1 TIA Portal Openness簡(jiǎn)介

      TIA Openness是TIA Portal平臺(tái)上的一個(gè)組件。在TIA Portal中,可通過(guò)STEP 7和WinCC的API接口將TIA Portal集成到用戶(hù)開(kāi)發(fā)系統(tǒng)中,并自動(dòng)完成各種工程組態(tài)任務(wù),可使用外部開(kāi)發(fā)系統(tǒng)編寫(xiě)用戶(hù)應(yīng)用程序,如使用代碼生成器生成PLC程序塊和HMI畫(huà)面。Openness的功能范圍如圖1所示。

      圖1 Openness的功能范圍

      簡(jiǎn)單來(lái)說(shuō),Openness是第三方軟件與TIA Portal之間的通信接口,通過(guò)高級(jí)語(yǔ)言,如C#使用API接口,達(dá)到對(duì)TIA Portal工程進(jìn)行控制和操作的目的。

      TIA Portal Openness軟件主要功能如下:

      (1)啟動(dòng)、連接和斷開(kāi)TIA Portal;

      (2)打開(kāi)和備份程序;

      (3)導(dǎo)入和導(dǎo)出PLC BLOCK;

      (4)在XML格式下修改PLC BLOCK;

      (5)編譯程序;

      (6)在EXCEL格式下讀取BOE表中的信息;

      (7)自動(dòng)生成PLC程序。

      2 程序自動(dòng)生成開(kāi)發(fā)內(nèi)容

      程序自動(dòng)生成是通過(guò)C#高級(jí)語(yǔ)言編程的API接口,把形式化描述的系統(tǒng)需求表格轉(zhuǎn)化為PLC程序塊的XML文件,導(dǎo)入西門(mén)子博途軟件生成工程項(xiàng)目程序。

      程序自動(dòng)生成平臺(tái)使用Microsoft Visual Studio開(kāi)發(fā),開(kāi)發(fā)語(yǔ)言為C#,開(kāi)發(fā)軟件通過(guò)外部的BOE表(EXCEL格式),用固定的格式加入特定參數(shù)后,通過(guò)Openness軟件,自動(dòng)生成一個(gè)相應(yīng)的項(xiàng)目啟動(dòng)程序,該啟動(dòng)程序包含了BOE表內(nèi)的設(shè)備清單對(duì)應(yīng)的程序塊及特殊參數(shù)的修改。

      程序自動(dòng)生成開(kāi)發(fā)平臺(tái)主要完成以下內(nèi)容:

      (1)建立工廠自動(dòng)化設(shè)備邏輯控制標(biāo)準(zhǔn)程序庫(kù);

      (2)運(yùn)用C#高級(jí)語(yǔ)言編寫(xiě)處理設(shè)備調(diào)用關(guān)系的XML文件;

      (3)開(kāi)發(fā)用戶(hù)界面或EXCEL人機(jī)交互對(duì)話(huà)框,用于工程任務(wù)參數(shù)配置。

      此平臺(tái)能夠幫助工程人員完成系統(tǒng)底層的、重復(fù)性功能塊的自動(dòng)生成,減少軟件編程中枯燥且重復(fù)的編制工作,使得編程人員將更多時(shí)間用于系統(tǒng)架構(gòu)研究、優(yōu)化系統(tǒng)模式等方面,從而提高軟件系統(tǒng)穩(wěn)定性、可擴(kuò)展性以及可維護(hù)性和生產(chǎn)效率,縮短項(xiàng)目開(kāi)發(fā)時(shí)間,節(jié)約開(kāi)發(fā)成本,降低項(xiàng)目開(kāi)發(fā)風(fēng)險(xiǎn)。

      3 程序自動(dòng)生成開(kāi)發(fā)步驟

      一般情況下,每個(gè)企業(yè)內(nèi)部都會(huì)建立自己的自動(dòng)化控制軟件設(shè)計(jì)標(biāo)準(zhǔn),形成一個(gè)標(biāo)準(zhǔn)項(xiàng)目程序模板和庫(kù)文件,里面提供了一些常用的設(shè)備組件,比如輸送系統(tǒng)的滾床、移行機(jī)、升降機(jī)和工藝系統(tǒng)的風(fēng)機(jī)、水泵、執(zhí)行機(jī)構(gòu)等,在編程時(shí)首先需要將這些組件拖到對(duì)應(yīng)的單元,然后連接變量,完成單體設(shè)備的控制,最后在Graph或者其他順控程序中訪問(wèn)這些組件的自動(dòng)控制接口即可完成大部分項(xiàng)目工作。如果能夠?qū)崿F(xiàn)自動(dòng)對(duì)組件的調(diào)用和參數(shù)賦值,至少可以在此基礎(chǔ)上又節(jié)省50%的編程工作量。

      程序自動(dòng)生成功能是在標(biāo)準(zhǔn)程序模板基礎(chǔ)上進(jìn)行,通用程序塊已包含在模板程序和庫(kù)文件中,不需要進(jìn)行修改,只需要將每類(lèi)設(shè)備的標(biāo)準(zhǔn)程序塊自動(dòng)生成為實(shí)際設(shè)備程序即可。因此,程序自動(dòng)生成分為以下幾個(gè)步驟,如圖2所示。

      (1)在TIA Portal軟件下建立每類(lèi)設(shè)備程序庫(kù)文件;

      (2)基于程序庫(kù)文件,使用TIA Portal Openness用戶(hù)應(yīng)用程序創(chuàng)建一個(gè)新的啟動(dòng)項(xiàng)目;

      (3)根據(jù)工程項(xiàng)目設(shè)備配置BOE 表,使用TIA Portal Openness 導(dǎo) 出 FC、FB、DB 和 ProDiag Alarm 等 PLC 程 序 塊 為XML文件;

      (4)通過(guò)高級(jí)語(yǔ)言C#編程處理修改XML文件,導(dǎo)入到啟動(dòng)項(xiàng)目中;

      (5)導(dǎo)入啟動(dòng)項(xiàng)目后,TIA Portal Openness會(huì)根據(jù)BOE配置表,建立系統(tǒng)中每個(gè)設(shè)備對(duì)應(yīng)的程序邏輯功能塊;

      (6)每個(gè)設(shè)備所屬的控制區(qū)調(diào)用功能塊也會(huì)添加調(diào)用該設(shè)備的功能塊;(7)TIA Portal Openness會(huì)刪除模板程序文件夾;(8)生成的啟動(dòng)項(xiàng)目中已經(jīng)包含了所需要的模式區(qū)域/工藝設(shè)備相關(guān)的PLC代碼;

      (9)TIA Portal Openness對(duì)生成的啟動(dòng)項(xiàng)目進(jìn)行編譯和保存。

      圖2 程序自動(dòng)生成步驟

      4 程序自動(dòng)生成平臺(tái)使用說(shuō)明

      人機(jī)交互界面窗口信息如圖3所示。

      圖3 人機(jī)交互界面窗口信息

      首先,運(yùn)行PLC自動(dòng)生成應(yīng)用程序,開(kāi)啟如下界面,包含程序版本信息、TIA Portal Openness版本信息和服務(wù)工程項(xiàng)目信息等。

      然后,在WinForm窗體中有3個(gè)選項(xiàng)卡,在項(xiàng)目信息下填寫(xiě)項(xiàng)目名稱(chēng)和IO地址,程序自動(dòng)生成過(guò)程中,Openness會(huì)將程序模板的項(xiàng)目名稱(chēng)和CPU名稱(chēng)都改為所填寫(xiě)信息,并將在現(xiàn)場(chǎng)總線網(wǎng)絡(luò)中的CPU IP地址改為所填地址。

      在基本設(shè)定選項(xiàng)卡中,在模板工程路徑瀏覽中加載程序模板項(xiàng)目,在新工程文件夾下指定生成項(xiàng)目存放路徑,在BOE表導(dǎo)入項(xiàng)目設(shè)備清單和邏輯關(guān)系表格。

      在BOE選項(xiàng)卡中,可以看到基本設(shè)定中導(dǎo)入項(xiàng)目設(shè)備清單和邏輯關(guān)系的表的具體內(nèi)容。

      最后,點(diǎn)擊“生成”按鈕,自動(dòng)生成平臺(tái)會(huì)根據(jù)BOE表設(shè)備清單和邏輯關(guān)系生成啟動(dòng)項(xiàng)目程序,并且在右側(cè)的狀態(tài)欄會(huì)實(shí)時(shí)提示生成進(jìn)度。如果程序生成過(guò)程中出錯(cuò),可以參考狀態(tài)欄的信息和博途程序生成的內(nèi)容來(lái)分析故障原因。程序自動(dòng)生成提示信息如圖4所示。

      圖4 程序自動(dòng)生成提示信息

      5 結(jié)語(yǔ)

      PLC程序自動(dòng)生成是傳統(tǒng)工廠向數(shù)字化工廠轉(zhuǎn)變的一個(gè)重要途徑,程序的全集成自動(dòng)化生成為項(xiàng)目的快速、高效實(shí)施提供了最佳的應(yīng)用實(shí)踐平臺(tái)。

      (1)它可以減少很多重復(fù)工作,如程序塊配置、IO表配置、網(wǎng)絡(luò)配置、硬件組態(tài)和HMI畫(huà)面配置等,編程工具會(huì)根據(jù)定義好的規(guī)則自動(dòng)生成上述內(nèi)容。

      (2)使用博途平臺(tái)的Openness自動(dòng)生成,雖然首次開(kāi)發(fā)軟件周期相對(duì)同一項(xiàng)目傳統(tǒng)的編程所用時(shí)間預(yù)計(jì)多一倍,但是重復(fù)執(zhí)行的項(xiàng)目所用時(shí)間要比傳統(tǒng)方法節(jié)省50%時(shí)間,同時(shí)降低人力成本的投入。

      (3)所有程序是基于同一個(gè)標(biāo)準(zhǔn)程序庫(kù)進(jìn)行參數(shù)化自動(dòng)生成,降低了因手工填寫(xiě)造成的出錯(cuò)率,同時(shí)因程序統(tǒng)一性高,系統(tǒng)穩(wěn)定性不依賴(lài)于調(diào)試人員的能力,后期程序的維護(hù)成本也大大降低。

      (4)由于程序參數(shù)化生成對(duì)軟件設(shè)計(jì)人員的要求較低,對(duì)于新入職的人員也可以快速上手編程,能夠很快適應(yīng)編程工作。另外,由于軟件標(biāo)準(zhǔn)化程度較高,會(huì)縮短調(diào)試人員輪換或程序移交的時(shí)間,提高整體軟件設(shè)計(jì)水平。

      使用程序自動(dòng)生成功能的目的是替代簡(jiǎn)單的編程基礎(chǔ)工作,然后再根據(jù)工藝需求手工完成順控、閉環(huán)調(diào)節(jié)等工作就可以滿(mǎn)足大部分的項(xiàng)目需求,可顯著提高工程效率。未來(lái)實(shí)體經(jīng)濟(jì)飛速發(fā)展,項(xiàng)目質(zhì)量要求越來(lái)越高、工期越來(lái)越短,工程公司開(kāi)發(fā)PLC程序自動(dòng)生成平臺(tái)勢(shì)在必行。

      猜你喜歡
      編程啟動(dòng)程序
      我家有只編程貓
      我家有只編程貓
      我家有只編程貓
      我家有只編程貓
      試論我國(guó)未決羈押程序的立法完善
      霧霾來(lái)襲 限產(chǎn)再次啟動(dòng)
      “程序猿”的生活什么樣
      安發(fā)生物啟動(dòng)2017
      英國(guó)與歐盟正式啟動(dòng)“離婚”程序程序
      創(chuàng)衛(wèi)暗訪程序有待改進(jìn)
      宁安市| 双牌县| 阿拉善右旗| 名山县| 抚顺市| 汝州市| 蛟河市| 丹巴县| 肇州县| 陵川县| 乃东县| 卢氏县| 浑源县| 龙山县| 芜湖市| 河西区| 和平区| 长葛市| 湘乡市| 庆云县| 双流县| 石棉县| 双峰县| 克什克腾旗| 仪征市| 西平县| 阿勒泰市| 英山县| 砀山县| 清水河县| 汤原县| 灌阳县| 额敏县| 南通市| 黔西| 平泉县| 崇信县| 德令哈市| 伊春市| 临澧县| 保康县|