System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本專利技術涉及代碼庫管理,具體地,涉及一種plc編譯器中基于包管理的調用庫系統及方法。
技術介紹
1、可編程邏輯控制器(以下簡稱plc),一種用于自動化控制的數字邏輯控制器,在工業生產環境下接收、發送多種類型數字或模擬信號,完成過程控制和伺服控制。plc軟件編譯系統由運行系統和開發系統組成。在運行系統中使用庫模塊,可以大幅度提升用戶的開發效率、提高代碼的復用性。庫有兩大類:系統庫和用戶庫,下文分別詳細介紹。
2、系統庫,plc運行系統為用戶提供打包好的系統庫文件,在編譯的鏈接階段與用戶程序合并成可執行文件。任何用戶可以直接調用系統庫標準功能函數和功能塊,這些共同組成plc內置的指令系統。在程序編譯時,這些庫的實現代碼并不包含在項目程序文件中;而是等到鏈接階段,運行時系統加載用戶程序后,對庫中的功能函數和功能塊進行鏈接,系統庫才被復制到用戶程序中調用。
3、用戶庫,實際上是將用戶自定義的算法或者功能進行封裝,以壓縮包形式呈現;在使用時先導入庫包,系統會解析文件,提供其中的功能接口便于用戶使用。系統庫提供給所有使用該版本plc的用戶,而用戶庫的流轉僅限于創作者的發布和分享。
4、在plc應用領域,暫未發現技術相關的專利及公知檢索。在其他計算機
,有以下兩篇與本專利技術相關的現有專利和一篇論文:
5、專利文獻cn117270952a公開了一種智慧醫療場景下新型代碼庫管理方法,包括以下步驟:使用turbo插件創建turborepo環境,選擇pnpm作為包管理器,等待turborepo
6、專利文獻cn117270896a公開了一種應用程序自動識別安裝方法、系統、裝置及存儲介質,屬于計算機
所述方法包括:上傳安裝引導器的安裝包、應用程序安裝包和通信配置文件;訪問服務端的安裝包管理界面,識別當前終端的架構信息,根據架構信息確定安裝引導器下載鏈接;利用安裝引導器下載鏈接下載安裝引導器程序包和相應的通信配置文件,并運行安裝引導器;獲取當前終端的操作系統信息,利用通信配置文件下載當前終端對應的應用程序安裝包;監控應用安裝包的安裝進程;安裝完成后,與業務服務端建立通信。該專利結合配置文件獲取對應的安裝包,實現程序的識別、下載、安裝,具有安裝包管理的功能。但該專利需要管理和安裝的應用程序來源并沒有說明和限制;該專利技術基于客戶端/服務端架構,通過安裝引導器獲取cpu架構、操作系統、存儲介質等信息,根據特定url通過瀏覽器訪問服務端的安裝包管理界面,由服務端解析訪問請求參數;而沒有在配置上區分多種底層硬件和庫的版本。該專利技術與業務緊密結合,實現在不同終端環境下應用程序的自動識別、下載和安裝,具有監控應用安裝包安裝進程的功能;而沒有將用戶的算法或者功能進行封裝,在plc編程項目中不能即引即用。
7、朱沛林.app包管理與監控系統的設計與實現[d].南京大學,2020.doi:10.27235/d.cnki.gnj?iu.2020.002938.該論文是一個離線資源管理工具,可以實現版本管理、資源監控、資源包文件的打包、上傳、部署流程。該論文設計了從前端到后端的完整系統,從前端獲取用戶數據,后端通過node.js平臺實現包的訪問和數據交換。而不是僅針對于包管理這一個模塊,設計出一種與后端編譯相關的包管理方式。該論文將包管理和數據信息展示在網頁前端,通過各種組件實現了數據可視化;而不是通過庫管理器和側邊欄的系統庫指令表為用戶提供服務,編譯結果表示包的調用結果。
技術實現思路
1、針對現有技術中的缺陷,本專利技術的目的是提供一種plc編譯器中基于包管理的調用庫系統及方法。
2、根據本專利技術提供的一種plc編譯器中基于包管理的調用庫系統,包括:
3、系統庫模塊:為系統內置庫函數,當用戶引用系統內置庫函數,plc系統將該系統內置庫函數的庫包拷貝到項目目錄下,進行系統庫的分發,為用戶庫提供底層支持;
4、用戶庫模塊:根據系統庫提供的接口實現功能,為用戶自定義庫函數,成功編譯發布后,其他用戶導入后使用。
5、優選地,系統庫和用戶庫都是以庫包的形式進行:
6、對系統庫,每當用戶引用某庫函數,plc系統將該函數的庫包拷貝到項目目錄下,為系統庫的分發,新增系統庫分發新的庫包給用戶;
7、對于用戶庫,庫包被發布導出,被其他不同plc服務器的主機用戶使用,為用戶庫的流轉。
8、優選地,在所述系統庫模塊中:
9、在plc系統開發階段,由開發人員將常用指令打包成庫文件,常用指令參見國標iec?61131指令列表,包括邏輯運算指令、數據處理指令、定時器和計數器指令;
10、當開發階段用戶引用了某庫函數,將該相關的三種描述或配置文件按統一的目錄組織結構壓縮打包復制到項目目錄下;
11、選擇庫文件:打開plc程序,在側邊欄選擇需要引入的庫函數;
12、加載庫文件:將選擇的庫函數拖拽到編程區,從已有的項目復制到庫;
13、編碼時,用戶調用庫中的功能或者功能塊,調用過程為:按照提示傳入指定類型和數量的參數;
14、編譯時,plc編譯器將用戶庫解包,產生接口的三種描述文件,接口屬性配置文件以.func為后綴,接口聲明文件以.itf為后綴,接口運行文件以.out為后綴;解包將項目目錄中該函數的文件解壓,恢復統一的目錄結構;
15、鏈接時,plc編譯器根據接口的類型進行內聯和組裝的操作,與用戶程序內聯成一個文件或組裝為能夠執行的文件集;在鏈接階段,編譯器讀取接口屬性配置文件,根據接口類型選擇不同的鏈接方式。
16、優選地,在所述用戶庫模塊中:
17、庫的制作:新建庫項目,添加程序單元,用戶根據自己的需求,使用plc編程語言撰寫該用戶庫函數或功能塊算法的實現,完成包的制作;
18、庫的打包:添加用戶庫,編譯成功后自動安裝到本地,發布后安裝到遠程項目服務器上;
19、使用用戶庫:其他用戶通過用戶庫管理模塊的安裝功能,將遠程目錄下的用戶庫文件,安裝到本機或項目服務器中,用戶調用該用戶庫中的功能函數或者功能塊;
20、編譯時,plc編譯器將用戶庫文件解包,產生三種描述文件,接口屬性配置文件以.func為后綴,接口聲明文件以.itf為后綴,接口運行文件以.out為后綴;
...
【技術保護點】
1.一種PLC編譯器中基于包管理的調用庫系統,其特征在于,包括:
2.根據權利要求1所述的PLC編譯器中基于包管理的調用庫系統,其特征在于:
3.根據權利要求1所述的PLC編譯器中基于包管理的調用庫系統,其特征在于,在所述系統庫模塊中:
4.根據權利要求1所述的PLC編譯器中基于包管理的調用庫系統,其特征在于,在所述用戶庫模塊中:
5.根據權利要求1所述的PLC編譯器中基于包管理的調用庫系統,其特征在于:
6.一種PLC編譯器中基于包管理的調用庫方法,其特征在于,包括:
7.根據權利要求6所述的PLC編譯器中基于包管理的調用庫方法,其特征在于:
8.根據權利要求6所述的PLC編譯器中基于包管理的調用庫方法,其特征在于,在所述系統庫模塊中:
9.根據權利要求6所述的PLC編譯器中基于包管理的調用庫方法,其特征在于,在所述用戶庫模塊中:
10.根據權利要求6所述的PLC編譯器中基于包管理的調用庫方法,其特征在于:
【技術特征摘要】
1.一種plc編譯器中基于包管理的調用庫系統,其特征在于,包括:
2.根據權利要求1所述的plc編譯器中基于包管理的調用庫系統,其特征在于:
3.根據權利要求1所述的plc編譯器中基于包管理的調用庫系統,其特征在于,在所述系統庫模塊中:
4.根據權利要求1所述的plc編譯器中基于包管理的調用庫系統,其特征在于,在所述用戶庫模塊中:
5.根據權利要求1所述的plc編譯器中基于包管理的調用庫系統,其特征在于:
...【專利技術屬性】
技術研發人員:戴雪莉,何桂龍,張徑,柯增相,
申請(專利權)人:上海寶信軟件股份有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。