欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

用于對可編程控制裝置編程和配置的方法和設(shè)備的制作方法

文檔序號:6294320閱讀:186來源:國知局
用于對可編程控制裝置編程和配置的方法和設(shè)備的制作方法
【專利摘要】本發(fā)明涉及用于借助位于編程工具(B)中的配置工具(K)對可編程控制裝置(D)編程和配置的方法和用于執(zhí)行所述方法的設(shè)備,其中,除用IEC61131語言的模塊(80)以外,至少一個另外的模塊(C)集成在所述配置工具(K)中,借助所述至少一個另外的模塊,在使用C代碼編輯器(3A)的情況下用高級語言執(zhí)行可編程控制裝置(D)的編程,并且由所述另外的模塊(C)提供IEC61131代碼與高級語言代碼之間的接口的定義以及所述高級語言代碼的配置。
【專利說明】用于對可編程控制裝置編程和配置的方法和設(shè)備
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及根據(jù)權(quán)利要求1所述的用于對可編程(speicherprogrammierbar)控制裝置編程和配置的方法。此外,本發(fā)明涉及用于執(zhí)行所述方法的設(shè)備或者系統(tǒng)。本發(fā)明尤其可用于將智能現(xiàn)場設(shè)備集成在控制系統(tǒng)或自動化系統(tǒng)中、在過程自動化或機器控制中用于控制技術(shù)過程和/或設(shè)備構(gòu)件。
【背景技術(shù)】
[0002]此外,用于對可編程控制器(SPS)編程和配置的基礎(chǔ)是根據(jù)國際標準IEC61131-3的設(shè)備無關(guān)的編程系統(tǒng)連同在那描述的編程語言。許多用于可編程控制器的編程環(huán)境也允許使用高級語言如BASIC、Java和C或C/C++/C #。
[0003]可編程控制器的編程和配置借助基于PC的編程工具或編程設(shè)備(也稱作工程工具)實現(xiàn)為單獨程序指令的序列,其中,各技術(shù)或功能上相關(guān)聯(lián)的程序指令構(gòu)成程序組件,也稱作功能塊。
[0004]完整的SPS程序通常包含多個這樣的程序組件。這些組件可以在先前提到的SPS應(yīng)用相關(guān)的編程語言中如作為指令表、作為梯形圖、作為邏輯圖、作為功能圖、作為過程語言或結(jié)構(gòu)化的文本經(jīng)由編程工具中輸入。為了創(chuàng)建、翻譯、校驗SPS代碼并且將SPS代碼下載到自動化系統(tǒng)的設(shè)備中,存在基于PC的工具。
[0005]一種用于輸入用高級語言"C〃的程序指令的方法例如在EP 860 758 Al中描述。在那示出編程設(shè)備的輸入設(shè)備,所述輸入設(shè)備經(jīng)由第一數(shù)據(jù)線與轉(zhuǎn)換裝置相連接并且經(jīng)由第二數(shù)據(jù)線連接到高級語言編譯器上,所述高級語言編譯器將程序指令翻譯成由可編程控制器可讀或者可處理的代碼。
[0006]在公司“Bernecker+Rainer工業(yè)電子有限公司-B&R自動化工作室”的產(chǎn)品頁“集成 IEC 61131-3 語言、CFC 和 ANSI_C〃(請參閱 www.br-automation.com/cps/rde/xchg/br-productcatalogue/hs.xsl/products_151728 ENG HTML, htm)描述了:編程語言 ANSI C允許用戶調(diào)用來自另外的IEC語言的功能塊和訪問地址(全局訪問變量)。
[0007]此外,存在解決方案,其中,將不同的源文件語言,例如IEC61131、C/C++/C #、Basic或Java翻譯成中間代碼,并且然后根據(jù)所使用的設(shè)備的廠商特定的目標平臺、借助附加的軟件構(gòu)件倒譯中間代碼。該解決方案例如由菲尼克斯通訊集團(Phoenix ContactGruppe)的公司KW軟件使用并且在圖1中示例性地示出。
[0008]另一種解決方案涉及根據(jù)IEC61131的可編程控制器的運行時間系統(tǒng)。在此,C代碼函數(shù)僅僅能夠借助在IEC61131-3中所述的程序調(diào)用變量。不提供存取系統(tǒng)資源(如輸入和/或輸出)或連接到可編程控制器上的設(shè)備的存儲器。

【發(fā)明內(nèi)容】

[0009]本發(fā)明所基于的任務(wù)是,說明一種方法和設(shè)備,借助所述方法和設(shè)備尤其通過以下方式簡化可編程控制裝置的編程和配置:用高級語言(例如C代碼)創(chuàng)建的程序指令在連接到所述可編程控制器上的設(shè)備上與根據(jù)IEC 61131-3創(chuàng)建的程序指令并行地運行,由此可執(zhí)行直接存取系統(tǒng)資源(如輸入和/或輸出)或連接到可編程控制器的設(shè)備的存儲器。對于用戶可能的是,用聞級語目以及用IEC61131語目來編輯代碼。
[0010]根據(jù)本發(fā)明,該任務(wù)借助在權(quán)利要求1中所說明的特征解決。根據(jù)本發(fā)明的錨定元件(Verankerungselement)的有利的擴展方案、改進在其他權(quán)利要求和說明書中說明。
[0011]根據(jù)本發(fā)明的用于對可編程控制裝置編程和配置的方法從位于編程工具中的配置工具出發(fā),其中,除用IEC61131語言的模塊以外,至少一個另外的模塊集成在配置工具中,借助所述至少一個另外的模塊、在使用C代碼編輯器的情況下用高級語言執(zhí)行可編程控制裝置的編程。根據(jù)本發(fā)明,借助所述另外的模塊提供IEC61131代碼與高級語言代碼之間的接口的定義以及高級語言代碼的配置。
[0012]為了借助位于編程工具中的配置工具執(zhí)行根據(jù)本發(fā)明的用于對可編程控制裝置編程和配置的方法,根據(jù)本發(fā)明地在配置工具中集成附加模塊(也稱作插件),其產(chǎn)生和插入用高級語言、優(yōu)選是C代碼的庫函數(shù)用于對控制裝置編程,由此能夠通過簡單的方式執(zhí)行用高級語言創(chuàng)建的程序指令的創(chuàng)建并且將其集成到自動化系統(tǒng)的設(shè)備中。
[0013]根據(jù)本發(fā)明,在附加模塊中集成高級語言編輯器、庫管理和IEC 61131接口(2A)。
[0014]庫管理用于建立和管理用戶定義的庫。在庫管理中,具有能夠用高級語言(例如C代碼)執(zhí)行的運行程序模塊的庫與相應(yīng)的編譯器選項一起首先被配置為C代碼插件標簽配置。
[0015]隨后,用高級語言的IEC61131接口中將庫項目中的、能夠連接到可編程控制器上的硬件設(shè)備的包括其輸入、輸出和/或局部變量在內(nèi)的映射配置為C代碼插件標簽IEC61131 接口。
[0016]根據(jù)另一種方法過程,在附加模塊中編輯和存儲插件標簽配置和插件標簽IEC61131 接口。
[0017]在應(yīng)用模塊中,現(xiàn)在對于用戶不可見地在使用編譯器和附加的庫特定的頭文件的情況下從中產(chǎn)生應(yīng)用庫,并且所產(chǎn)生的應(yīng)用庫對于用戶不可見地添加到所述可編程控制器的保存在編程工具中的目標項目代碼中。隨后,在編程工具中用相應(yīng)的高級語言為要在可編程控制器上執(zhí)行的目標項目產(chǎn)生C代碼以及實現(xiàn)包含在其中的程序組織單元實例——也稱作程序組織單元(POU)實例,并且從編程工具將所述程序組織單元實例與用于IEC61131-3應(yīng)用的POU —起傳輸?shù)娇删幊炭刂破髦小?br> [0018]目前,用于IEC和C代碼的運行時間環(huán)境被分成兩個運行時間系統(tǒng),在它們之間僅復(fù)雜的數(shù)據(jù)交換是可能。
[0019]根據(jù)本發(fā)明,在C代碼下創(chuàng)建的程序指令的過程在根據(jù)IEC 61131標準的被稱作外殼(Shell)的殼或套下進行,使得對于用戶或用戶僅僅該殼可見,而非在后臺運行的C代碼對于用戶可見。因此,對系統(tǒng)資源的訪問僅僅需要經(jīng)由現(xiàn)有的IEC 61131接口。因此,C代碼過程的運行時間環(huán)境顯得如在IEC-61131環(huán)境下程序指令的過程那樣。
[0020]根據(jù)本發(fā)明,可以以有利的方式采用根據(jù)IEC-61131標準的程序過程的現(xiàn)有的經(jīng)校驗和證明的接口,并因此可以放棄基于新的C代碼接口的成本密集的開發(fā)。
[0021]先前描述的根據(jù)本發(fā)明的方法通過有利的方式允許程序員在IEC61131項目內(nèi)使用自身的C代碼程序或者程序指令一下面僅僅僅稱為C代碼。在此,之前用C代碼創(chuàng)建的程序指令在連接到可編程控制裝置上的設(shè)備上與IEC 61131-3程序指令并行地運行。因此可執(zhí)行直接存取系統(tǒng)資源(如輸入和/或輸出)或連接到可編程控制器上的設(shè)備的存儲器。
[0022]如開始已經(jīng)提到的,本發(fā)明還涉及一種用于對可編程控制裝置編程和配置的設(shè)備或者系統(tǒng)。
[0023]用于對可編程控制裝置編程和配置的設(shè)備包括位于編程工具中的配置工具,在所述配置工具中除用IEC61131語言的模塊(80)以外,集成了至少一個另外的模塊,借助所述至少一個另外的模塊,在使用C代碼編輯器的情況下用高級語言能夠執(zhí)行可編程控制裝置的編程,并且其允許IEC61131代碼與高級語言代碼之間的接口的定義以及高級語言代碼的配置。
[0024]根據(jù)本發(fā)明,在控制器開發(fā)系統(tǒng)的配置工具中集成附加模塊,其中插入用高級語言、優(yōu)選C代碼的所產(chǎn)生的庫函數(shù)用于對控制裝置的編程,由此,能夠通過簡單的方式執(zhí)行用高級語言創(chuàng)建的程序指令的創(chuàng)建和并且將其集成到自動化系統(tǒng)的設(shè)備中。
[0025]為此,附加模塊包括:
-高級語言編輯器,例如C代碼編輯器,
-庫管理,在庫管理中,具有能夠用高級語言(例如C代碼)執(zhí)行的運行程序模塊的庫與相應(yīng)的編譯器選項一起被確定或配置為標簽配置的高級語言附加程序,并且用于建立和管理用戶定義的庫;
-用高級語言——例如C代碼的IEC61131接口,所述IEC61131接口在庫項目中包括其輸入、輸出和/或局部變量在內(nèi)地映射能夠連接到控制器上的硬件設(shè)備。該接口也稱作C代碼附加程序標簽IEC61131接口。
[0026]此外,本發(fā)明的新穎性還基于:基于PC的配置工具為用戶提供用于組合根據(jù)IEC61131-3和C的不同的編程語言的選擇可能性。為此,選擇單元或接口被設(shè)置用于在在使用高級語言如C代碼的情況下編程或在基于IEC 61131-3的編程語言的情況下編程之間選擇。
[0027]編程工具除具有根據(jù)IEC 6113-3編程的第一應(yīng)用模塊或接口以外,具有用于用編程語言“C”編程的第二應(yīng)用模塊或接口,其中,借助選擇單元設(shè)置在在使用高級語言例如C代碼的情況下編程或在基于IEC 61131-3的編程語言的情況下編程之間的切換。
【專利附圖】

【附圖說明】
[0028]按照根據(jù)本發(fā)明的錨定元件的在以下附圖中所示的實施例,詳細解釋和描述本發(fā)明以及根據(jù)本發(fā)明的錨定元件的有利的擴展方案、改進和其他優(yōu)點。
[0029]示出:
圖1示出用于借助根據(jù)現(xiàn)有技術(shù)的編程工具對可編程控制器編程的一種示例性的解決方案;
圖2示出根據(jù)本發(fā)明的用于對可編程控制器編程的方法的示例性的實施例;
圖3、4示例性地示出使用來自于庫的應(yīng)用模塊作為源代碼,將所述源代碼在工程工具中翻譯成二進制格式,或所述源代碼作為僅僅被嵌入的預(yù)編譯的的二進制格式存在;
圖5示出借助編程工具的C代碼集成的系統(tǒng)結(jié)構(gòu)的示例性的實施方式;
圖6示出用于傳輸所創(chuàng)建的具有C代碼POU的應(yīng)用庫的一種示例性的方法過程; 圖7示出C代碼庫,所述C代碼庫被添加到可編程控制器的目標項目代碼中。
【具體實施方式】
[0030]圖1中示出根據(jù)現(xiàn)有技術(shù)的、用于可編程控制單元或控制器的、具有基于相應(yīng)的編程語言的不同編程接口 10的編程環(huán)境,程序員用所述編程語言寫相應(yīng)的用于開發(fā)和執(zhí)行用戶程序的軟件。第一編程接口 11被設(shè)置用于根據(jù)IEC61131-3標準編程。第二編程接口 12構(gòu)成由微軟公司提供的用于不同的高級語言一例如C、C++、C#的集成開發(fā)環(huán)境,所述集成開發(fā)環(huán)境稱作Visual Studio。借此,程序員可以開發(fā)經(jīng)典的Windows程序或動態(tài)的用于互聯(lián)網(wǎng)/內(nèi)聯(lián)網(wǎng)的網(wǎng)頁或者網(wǎng)絡(luò)服務(wù),其中,主要注意力集中在創(chuàng)建用于.NET框架(由微軟開發(fā)的基于公共語言運行時間的軟件平臺I)的應(yīng)用。
[0031]第二編程接口 12與保存在軟件平臺I上的稱作“通用中間語言(CIL)”的同時標準化的中間語言或者中間代碼20 —起起作用,所述中間語言或者中間代碼翻譯并且已經(jīng)簡化再現(xiàn)所創(chuàng)建的程序。
[0032]在執(zhí)行計算機30—也稱作目標計算機或目標平臺上,中間代碼20由運行時間系統(tǒng)(虛擬執(zhí)行系統(tǒng))30翻譯成系統(tǒng)自身的程序代碼、通常是機器代碼,以便因此能夠在可編程控制器中執(zhí)行在CIL 20中現(xiàn)有的程序。
[0033]到系統(tǒng)自身程序代碼的翻譯在此不是直接地進行,而是首先在第一步驟中產(chǎn)生CIL代碼20,所述CIL代碼將相應(yīng)的程序命令說明為字節(jié)值的序列。CIL代碼20在執(zhí)行計算機30上在運行時間系統(tǒng)中翻譯成本機機器代碼并被執(zhí)行。
[0034]第三編程接口 13被設(shè)置為用于生成CIL代碼20的所謂的用戶配置工具。
[0035]圖2示出根據(jù)本發(fā)明的用于在使用根據(jù)本發(fā)明設(shè)置的附加模塊A的情況下、按照具有步驟I至8的方法過程的、借助位于編程工具B中的配置工具K對可編程控制器D編程和配置的方法的特征,所述附加模塊也稱作插件。
[0036]附加模塊A包括C代碼編輯器3A、庫管理1A、用C代碼的IEC 61131-2A接口 2A,在所述庫管理中,具有能夠用C代碼執(zhí)行的程序模塊的庫與相應(yīng)的編譯器選項一起作為C代碼附加程序、標簽配置確定或者配置,所述IEC 61131-2A接口在庫項目中包括其輸入、輸出和/或局部變量在內(nèi)地映射能夠連接到控制器上的硬件設(shè)備。該接口也稱作C代碼附加程序標簽IEC61131接口。
[0037]在第一步驟I中,在庫管理IA中首先將具有能夠用C代碼執(zhí)行的運行程序模塊的庫與相應(yīng)的編譯器選項一起作為C代碼插件標簽配置配置。
[0038]在第二步驟2中,用C語言的IEC61131接口 2A配置為在庫項目中包括其輸入、輸出和/或局部變量在內(nèi)將能夠連接到可編程控制器(D)上的硬件設(shè)備映射為C代碼插件標簽IEC61131接口,并且在第三步驟中相應(yīng)地編輯和存儲在附加模塊A中的插件標簽配置和插件標簽IEC61131接口。
[0039]在第四步驟4中,在用C代碼編程的應(yīng)用模塊中為編程工具B提供外部創(chuàng)建的應(yīng)用庫43,所述應(yīng)用庫在后臺——也就是說對于用戶不可見地——從現(xiàn)有源代碼44在編譯器42中翻譯為C代碼,其中,使用附加的庫特定的頭文件41。
[0040]隨后在第五步驟5中,將外部創(chuàng)建的應(yīng)用庫43添加到可編程控制器D的目標項目代碼(PLC目標項目代碼),所述目標項目代碼保存在編程工具B中。該方法步驟也在后臺運行。
[0041]在下一步驟6中,在編程工具B中,為待在可編程控制器上執(zhí)行的程序(下面也稱作目標項目)產(chǎn)生C代碼,并且實現(xiàn)包含在其中的程序組織單元實例,程序的實例、功能塊和函數(shù)屬于所述程序組織單元實例。
[0042]現(xiàn)在,在另一步驟7中,目標項目由編程工具B加載到可編程控制器D上,由此C代碼二進制程序的庫一也稱作“C代碼庫二進制”,被嵌入并且被加載到控制器D上。
[0043]在最后的可選步驟8中,可執(zhí)行的二進制代碼(C代碼庫二進制)由可編程控制器D的運行時間系統(tǒng)重定位,并且所有外部的應(yīng)用程序接口引用(API引用)在此解開和綁定。為了存取保存在可編程控制器上的固件中實現(xiàn)的附加功能,C代碼POU可以調(diào)用固件API(應(yīng)用編程接口)。
[0044]因為固件被封裝在C代碼頭文件41中,所以有利地,可編程控制器的用戶只需要看見用C代碼保存的函數(shù)、功能組件和程序,而不需要各個專門的固件的編程知識。
[0045]此外提出,基于PC的編程工具B有接口,所述接口允許程序員在用高級語言編程與用IEC 61131編程之間進行選擇。
[0046]借助根據(jù)本發(fā)明的方法,不僅可以將新功能(應(yīng)用模塊E)而且可以將庫中現(xiàn)有的功能作為C代碼或用IEC 611131-3語言實現(xiàn),并將其組合地用到目標應(yīng)用中。
[0047]根據(jù)本發(fā)明的方法的有利的擴展方案基于,編程工具B提供外部庫P0U,所述外部庫POU能夠用C代碼實現(xiàn)。所使用的配置器支持C代碼庫的插件、IEC1131-3接口規(guī)范、C代碼編輯器和編譯器集成,所述編譯器集成包括編譯器錯誤的顯示和/或在SPS的目標項目中的從外部提供的庫的集成。
[0048]在本發(fā)明的另一個擴展方案中,用于C代碼的系統(tǒng)功能不是映射為來自系統(tǒng)庫的其他應(yīng)用模塊,而是映射為被分組到功能區(qū)中的固件FW API的應(yīng)用程序接口(也稱作應(yīng)用編程接口(API))。
[0049]圖3和4示例性地示出來自系統(tǒng)庫94和應(yīng)用庫43的應(yīng)用模塊9作為源代碼的使用,所述源代碼翻譯(編譯)成工程工具B中的二進制格式或作為僅僅被嵌入的預(yù)編譯的二進制格式存在。
[0050]圖5示出用于借助集成在編程工具B中的、用于產(chǎn)生PLC項目的配置的第一編程接口 I和第二編程接口 12進行C代碼集成的可編程控制單元的系統(tǒng)結(jié)構(gòu)。第一編程接口11被設(shè)置用于根據(jù)IEC61131-3標準編程,并且第二編程接口被設(shè)置用于用高級語言、優(yōu)選是C代碼編程。
[0051]在可編程控制單元可操作之前,為此設(shè)置的硬件設(shè)備40 (其經(jīng)由通信耦合器和現(xiàn)場總線70與控制器30連接)、尤其是智能現(xiàn)場設(shè)備在編程工具B中映射為SPS項目或控制器項目的組成部分,其中,在控制器項目中存儲關(guān)于這些硬件設(shè)備40的輸入/輸出地址的信息并且使得其對于用戶程序可訪問。為了可尋址系統(tǒng)的硬件設(shè)備40的輸入和輸出,首先配置硬件設(shè)備40的輸入/輸出單元和控制裝置,并且將PLC項目的配置(也稱作控制器配置)創(chuàng)建為SPS項目或控制器項目的組成部分。
[0052]借助編程接口 10配置的項目經(jīng)由以太網(wǎng)總線50傳輸?shù)娇删幊炭刂破鞯目刂破?0中并且從那經(jīng)由現(xiàn)場總線70傳輸?shù)浆F(xiàn)場設(shè)備40中,操作單元60也可連接到所述以太網(wǎng)總線上。[0053]為了創(chuàng)建和配置項目,在編程工具B中將應(yīng)用模塊80設(shè)置為可編程控制裝置中的運行時間環(huán)境,在所述應(yīng)用模塊中集成有全局變量81、應(yīng)用程序接口 82、IEC61131-3應(yīng)用83和基于C代碼的應(yīng)用84,其被設(shè)置用于傳輸?shù)娇刂破?0中。
[0054]IEC61131-3應(yīng)用83被組織在與其共同作用的POU單元90中的POU中,例如作為專門功能塊圖(FBD)、結(jié)構(gòu)化文本(ST)、梯形圖(LD)、指令表(IL)和/或功能圖(SFC,CFC)。在POU單元90中,除用于IEC61131-3應(yīng)用83的POU以外,實現(xiàn)基于C代碼的應(yīng)用84,如FBD、ST、LD、IL、SFC、CFC。因此,根據(jù)本發(fā)明,這些應(yīng)用由用IEC61131-3語言編程的和用C代碼編程的應(yīng)用模塊83、84 —起組成。
[0055]硬件設(shè)備40的所有輸入和/或輸出被映射為全局變量81,并且所有POU 83、84共享全局變量81,從而C代碼應(yīng)用84具有經(jīng)由POU單元90的接口對輸入和/或輸出的完全的存取。
[0056]根據(jù)本發(fā)明,用于C代碼的系統(tǒng)功能(例如實時功能,寫文件和讀文件、存儲器管理,浮點運算、實時功能和實時時鐘)不是被映射為來自系統(tǒng)庫的其他應(yīng)用模塊,而是作為分組到功能區(qū)中的固件FW API的應(yīng)用程序接口(API)。
[0057]為了在C代碼應(yīng)用84中實現(xiàn)POU單元90,需要所產(chǎn)生的應(yīng)用庫43。保存在應(yīng)用庫43中的庫元素一如函數(shù)、功能塊和程序根據(jù)IEC61131-3運行時間系統(tǒng)通過POU單元90的POU接口確定。在此POU接口定義至其他P0U、輸入和輸出和至更高級的操作單元的連接點,其映射為局部變量,例如類型輸入IN,輸出OUT和/或輸入輸出IN_0UT的變量。
[0058]通過有利的方式,每一個根據(jù)IEC61131-3和用C代碼創(chuàng)建的局部POU變量經(jīng)由PC訪問一例如操作單元60或經(jīng)由通過互聯(lián)網(wǎng)的表示可訪問和可尋址。
[0059]變量和任務(wù)、應(yīng)用模塊組成的PLC項目的整個配置與IEC61131-3應(yīng)用83和基于C代碼的應(yīng)用84 —起被加載到控制器30中,所述應(yīng)用模塊引用其他應(yīng)用模塊。
[0060]因為至系統(tǒng)資源的訪問僅僅經(jīng)由現(xiàn)有IEC61131接口實現(xiàn),C代碼過程的運行時間環(huán)境顯得如在IEC 61131環(huán)境下程序指令的過程一樣。不需要將C代碼應(yīng)用84單獨下載到控制器30中。
[0061]用于傳輸所創(chuàng)建的具有C代碼POU的應(yīng)用庫43的示例性的方法過程在圖6中示出。用于創(chuàng)建應(yīng)用庫43的附加模塊A在此未示出。
[0062]在第一方法步驟11中,在可編程控制器的工程工具B中的功能塊包括其所有輸入和輸出以及所有內(nèi)部變量或者局部變量在內(nèi)地在庫項目中被確定為C代碼插件標簽IEC61131接口并且?guī)祉椖勘淮鎯υ诠こ坦ぞ連中。在第二方法步驟12中,在后臺由工程工具B將C代碼插件標簽IEC61131接口導(dǎo)出到頭文件41和C代碼源文件或者C代碼源文件框架(C文件模板)中。
[0063]在第三方法步驟13中,在使用先前在頭文件41和C代碼源文件中確定的C代碼插件標簽IEC61131接口的情況下,用C代碼對功能塊編程,并且在第四方法步驟14中,借助編譯器42將現(xiàn)有C源代碼44翻譯成相應(yīng)的二進制代碼。
[0064]隨后,在下一方法步驟15中,在目標項目Z中打開應(yīng)用庫43,并且在另一方法步驟16中,在目標項目Z中產(chǎn)生功能塊實例。
[0065]在下面的步驟17中,PLC目標項目Z對于用戶不可見地被加載到控制器30中,應(yīng)用83、84被彼此連接并且C代碼庫二進制被下載。C代碼庫對于應(yīng)用模塊包含接口描述91并且或者包含運行時間函數(shù)的源代碼92或者僅僅包含運行時間函數(shù)的可執(zhí)行的二進制代碼(二進制)93。這例如在圖3中示出。
[0066]在最后的方法步驟18中,可以由可編程控制器D的運行時間系統(tǒng)嵌入可執(zhí)行的二進制代碼(C代碼庫二進制)并且解開或者重定位對FW API的引用。這例如在圖4中示出。
[0067]圖7示出C代碼庫,在使用C代碼源文件44的情況下,借助POU 90用C代碼執(zhí)行C代碼庫。
[0068]在步驟25中,所創(chuàng)建的應(yīng)用庫43被添加到可編程控制器D的目標項目代碼(PLC目標項目代碼)Z中。在下一步驟26中,在編程工具B中為待在可編程控制器上執(zhí)行的目標項目產(chǎn)生C代碼,并且實現(xiàn)包含在其中的應(yīng)用模塊實例。
[0069]現(xiàn)在,在另一步驟28中,目標項目由編程工具B加載到可編程控制器D上。
[0070]通過有利的方式,在不需要源代碼文件44的情況下,具有應(yīng)用模塊、接口定義和根據(jù)C代碼產(chǎn)生的二進制代碼的應(yīng)用庫43可以在其他項目中再使用。
[0071]現(xiàn)在起,所有POU可以用語言C代碼或根據(jù)IEC61131-3實現(xiàn)并且共享全局變量81。因此,對系統(tǒng)資源如連接到可編程控制器上的設(shè)備的輸入和/或輸出或存儲器的直接存取可供使用,并且盡管用高級語言例如C代碼實現(xiàn)編程,但編程世界對于用戶而言僅僅顯得作為IEC 61131-3編程系統(tǒng)。
[0072]通過所使用的高級語言C代碼,在使用系統(tǒng)庫94的情況下也能夠調(diào)用相應(yīng)的固件應(yīng)用程序接口(API ),包含頭文件41的系統(tǒng)庫94的功能也可供C代碼編程使用。
[0073]參考標記列表 I軟件平臺
10編程接口
11第一編程接口、第一應(yīng)用模塊 12第二編程接口、第二應(yīng)用模塊 13第三編程接口
20中間語言、中間代碼、通用中間語言
30執(zhí)行計算機、目標平臺
40現(xiàn)場設(shè)備
41頭文件
42編譯器
43應(yīng)用庫
44源代碼
50以太網(wǎng)總線
60操作單元
70現(xiàn)場總線
80應(yīng)用模塊
81全局變量
82API應(yīng)用程序接口
83IEC61131-3 應(yīng)用 84基于C代碼的應(yīng)用90 POU單元91接口描述
92運行時間函數(shù)的源代碼
93運行時間函數(shù)的可執(zhí)行的二進制代碼
94系統(tǒng)庫
A附加模塊、插件
IA庫管理
2A IEC 61131 接口
3A C代碼編輯器
B編程工具、工程工具
C具有C代碼實現(xiàn)的應(yīng)用模塊
D可編程控制器
K配置工具
Z目標項目
【權(quán)利要求】
1.一種用于借助位于編程工具(B)中的配置工具(K)對可編程控制裝置(D)編程和配置的方法,其中,除用IEC61131語言的模塊(80)以外,至少一個另外的模塊(C)集成在所述配置工具(K)中,借助所述至少一個另外的模塊,在使用C代碼編輯器(3A)的情況下用高級語言執(zhí)行所述可編程控制裝置(D)的編程,并且由所述另外的模塊(C)提供IEC61131代碼與高級語言代碼之間的接口的定義以及所述高級語言代碼的配置。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,為了配置所述高級語言代碼設(shè)置庫管理(IA),在所述庫管理中在使用高級語言的情況下建立和管理用戶定義的庫,在用所述高級語言的IEC 61131-3接口(2A)中在庫項目中配置能夠連接到所述可編程控制器(D)上的硬件的映射,在使用所述高級語言編輯器(3A)的情況下編輯所建立的庫和所述庫項目,在具有C代碼實現(xiàn)的應(yīng)用模塊(C)中,對于用戶不可見地在使用編譯器(42)和附加的庫特定的頭文件(41)的情況下從中產(chǎn)生應(yīng)用庫(43),并且所產(chǎn)生的應(yīng)用庫(43)對于所述用戶不可見地添加到所述可編程控制器(D)的保存在所述編程工具(B)中的目標項目代碼中。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,在所述編程工具(B)中用相應(yīng)的高級語言為要在所述可編程控制器(D)上執(zhí)行的目標項目產(chǎn)生所述代碼,實現(xiàn)包含在其中的POU實例,并且將所述POU實例從所述編程工具(B)與用于IEC61131-3應(yīng)用的POU —起加載到所述可編程控制器(D)中。
4.根據(jù)權(quán)利要求2或3所述的方法,其特征在于,用所述高級語言創(chuàng)建的庫由所述可編程控制器(D)的運行時間系統(tǒng)重定位,并且外部的應(yīng)用程序接口(API)在此解開。
5.根據(jù)權(quán)利要求2至4中任一項所述的方法,其特征在于,除用于所述IEC61131-3應(yīng)用(83)的POU以外,實現(xiàn)基于C代碼的應(yīng)用(84)。
6.根據(jù)以上權(quán)利要求中任一項所述的方法,其特征在于,使用C或C/C++/C#作為高級語言。
7.根據(jù)以上權(quán)利要求中任一項所述的方法,其特征在于,借助設(shè)置在所述編程工具(B)中的接口,選擇和/或組合用所述高級語言的編程或根據(jù)所述IEC 61131-3編程系統(tǒng)的編程。
8.一種用于借助位于編程工具(B)中的配置工具(K)對可編程控制裝置(D)編程和配置的設(shè)備,其中,除用IEC61131語言的模塊(80)以外,至少一個另外的模塊(C)集成在所述配置工具(K)中,借助所述至少一個另外的模塊,在使用C代碼編輯器(3A)的情況下能夠用高級語言執(zhí)行所述可編程控制裝置(D)的編程,并且其允許IEC61131代碼與高級語言代碼之間的接口的定義以及所述高級語言代碼的配置。
9.根據(jù)權(quán)利要求8所述的設(shè)備,其特征在于,為了配置所述高級語言代碼設(shè)置庫管理(1A),其中,所述庫管理(IA)在使用高級語言的情況下建立和管理用戶定義的庫,所述IEC61131-3接口在庫項目中將能夠連接到控制器上的硬件設(shè)備映射為用所述高級語言的C代碼插件標簽IEC61131接口,所述附加模塊(A)存儲借助所述高級語言編輯器(3A)可編輯的插件標簽配置和可編輯的IEC61131接口,在具有C代碼實現(xiàn)的應(yīng)用模塊(C)中保存編譯器(42)和附加的庫特定的頭文件(41),并且在使用所述編譯器(43)和附加的庫特定的頭文件(41)的情況下能夠由此產(chǎn)生應(yīng)用庫(43),并且所產(chǎn)生的應(yīng)用庫(43)能夠添加到所述可編程控制器(D)的保存在所述編程工具(B)中的目標項目代碼中。
10.根據(jù)權(quán)利要求9所述的設(shè)備,其特征在于,所述編程工具(B)用相應(yīng)的高級語言為要在所述可編程控制器(D)上執(zhí)行的目標項目產(chǎn)生所述代碼,實現(xiàn)包含在其中的POU實例,并且將所述POU實例與用于IEC61131-3應(yīng)用的POU —起從所述編程工具(B)加載到所述可編程控制器(D)中。
11.根據(jù)權(quán)利要求9或10所述的設(shè)備,其特征在于,在POU單元(90)中,除用于所述IEC61131-3應(yīng)用(83)的POU以外,實現(xiàn)基于C代碼的應(yīng)用(84)。
12.根據(jù)權(quán)利要求8至11中任一項所述的設(shè)備,其特征在于,使用的高級語言為C或C/C++/C#。
13.根據(jù)權(quán)利要求8至12中任一項所述的設(shè)備,其特征在于,所述編程工具(B)除具有用于根據(jù)IEC 6113-3編程的第一應(yīng)用模塊(11)以外,具有用于用編程語言“C”編程的第二應(yīng)用模塊(12),其中,借助選擇單元能夠執(zhí)行在使用高級語言的情況下編程或在基于IEC 61131-3的編程語言的情況下編程之間的切換。
【文檔編號】G05B19/05GK103814333SQ201280033518
【公開日】2014年5月21日 申請日期:2012年7月5日 優(yōu)先權(quán)日:2011年7月6日
【發(fā)明者】A.弗羅貝格爾, B.布萊, C.邁爾, H.施塔布, T.賴辛格 申請人:Abb股份公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
库尔勒市| 建水县| 西青区| 方城县| 景泰县| 庄河市| 民县| 莱西市| 延安市| 正蓝旗| 大名县| 平原县| 那坡县| 铜梁县| 庐江县| 襄樊市| 汉川市| 融水| 普格县| 绥芬河市| 沁源县| 彭阳县| 邵武市| 潼南县| 韶关市| 科尔| 偏关县| 喀喇沁旗| 土默特右旗| 会理县| 邹平县| 农安县| 巴中市| 伊吾县| 浮梁县| 武宣县| 隆回县| 贵南县| 上栗县| 吉水县| 富平县|