亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        遠(yuǎn)程實(shí)驗(yàn)室仿真與算法生成的一體化軟件設(shè)計(jì)

        2023-02-20 13:42:00夏志強(qiáng)胡文山劉國(guó)平雷忠誠(chéng)
        實(shí)驗(yàn)室研究與探索 2023年11期
        關(guān)鍵詞:框圖瀏覽器代碼

        夏志強(qiáng),胡文山,劉國(guó)平,周 洪,雷忠誠(chéng)

        (1.武漢大學(xué)電氣與自動(dòng)化學(xué)院,武漢 430072;2.南方科技大學(xué)電子與電氣工程系,廣東深圳 518055)

        0 引言

        實(shí)驗(yàn)教學(xué)是高校培養(yǎng)高質(zhì)量人才的重要組成部分[1-2]。傳統(tǒng)的線下實(shí)驗(yàn)存在實(shí)驗(yàn)場(chǎng)地有限、器材成本高、實(shí)驗(yàn)室開(kāi)放時(shí)間短等問(wèn)題[3-5],很難充分利用實(shí)驗(yàn)資源,從而影響實(shí)驗(yàn)教學(xué)效果?;ヂ?lián)網(wǎng)技術(shù)的發(fā)展,為實(shí)驗(yàn)教學(xué)帶來(lái)了解決方案,集網(wǎng)絡(luò)技術(shù)、通信技術(shù)和多媒體技術(shù)于一體的遠(yuǎn)程在線實(shí)驗(yàn)室可以克服線下實(shí)驗(yàn)室的諸多問(wèn)題,真正實(shí)現(xiàn)實(shí)驗(yàn)資源的充分利用和共享[6-7]。

        國(guó)內(nèi)外科研機(jī)構(gòu)研發(fā)了眾多虛擬仿真實(shí)驗(yàn)室[8-10]和遠(yuǎn)程控制實(shí)驗(yàn)室[11-13]。大多數(shù)遠(yuǎn)程控制實(shí)驗(yàn)室需要第三方軟件或系統(tǒng)(如Matlab、LabVIEW 等)的支持。Rubio等[14]設(shè)計(jì)的SLD(Sistema de Laboratorios a Distancia)允許用戶運(yùn)行Matlab/Simulink算法文件,或借助本地計(jì)算機(jī)上的Matlab 軟件修改算法。張治等[15]設(shè)計(jì)了基于RaspberryPi 的飛控系統(tǒng)半實(shí)物仿真平臺(tái),實(shí)現(xiàn)了基于Matlab/Simulink 軟件設(shè)計(jì)的飛控仿真模型在硬件平臺(tái)上的實(shí)時(shí)運(yùn)行。對(duì)于武漢大學(xué)設(shè)計(jì)的網(wǎng)絡(luò)化控制系統(tǒng)實(shí)驗(yàn)室(NCSLab)[16],前端瀏覽器為用戶提供自主算法設(shè)計(jì)服務(wù),服務(wù)器端則通過(guò)遠(yuǎn)程調(diào)用Matlab軟件的方式完成仿真或算法編譯。

        借助第三方軟件搭建遠(yuǎn)程控制實(shí)驗(yàn)室可以降低實(shí)驗(yàn)室開(kāi)發(fā)的難度,但存在依賴性強(qiáng)、靈活性差、效率低以及數(shù)據(jù)和隱私泄露問(wèn)題。針對(duì)以上問(wèn)題,在已有的NCSLab前端與實(shí)驗(yàn)設(shè)備的基礎(chǔ)上,本文設(shè)計(jì)了一款面向遠(yuǎn)程實(shí)驗(yàn)室仿真與算法生成的一體化軟件M2PLink(mathematics to practice link),可根據(jù)用戶自主設(shè)計(jì)的Web 端控制框圖進(jìn)行仿真實(shí)驗(yàn)或編譯生成可執(zhí)行性算法。

        1 NCSLab簡(jiǎn)介

        NCSLab誕生于2006 年,是為自動(dòng)化專業(yè)教學(xué)而研發(fā)的在線實(shí)驗(yàn)室,用戶可以隨時(shí)隨地通過(guò)瀏覽器訪問(wèn)并遠(yuǎn)程控制實(shí)驗(yàn)。

        1.1 NCSLab整體架構(gòu)

        基于B/S(browser/server)架構(gòu),NCSLab已形成了如圖1 所示的以前端瀏覽器、中央服務(wù)器集群、實(shí)驗(yàn)服務(wù)器和實(shí)驗(yàn)設(shè)備為主體的4 層結(jié)構(gòu)。

        圖1 NCSLab的4層架構(gòu)

        瀏覽器層主要提供算法設(shè)計(jì)和監(jiān)控組態(tài)服務(wù);中央服務(wù)器集群包括Nginx代理服務(wù)器、仿真/編譯服務(wù)器、超文本預(yù)處理器(PHP)、文件管理服務(wù)器以及MySQL服務(wù)器;實(shí)驗(yàn)服務(wù)器層由多臺(tái)管理實(shí)驗(yàn)設(shè)備的實(shí)驗(yàn)服務(wù)器和FFmpeg 服務(wù)器組成;實(shí)驗(yàn)設(shè)備層包含20類虛擬實(shí)驗(yàn)設(shè)備與6 類實(shí)體實(shí)驗(yàn)設(shè)備(實(shí)驗(yàn)設(shè)備參數(shù)包括電動(dòng)機(jī)轉(zhuǎn)速、電動(dòng)機(jī)角度、伺服位置、氣浮高度、風(fēng)扇轉(zhuǎn)速和水箱液位高度)。

        1.2 NCSLab設(shè)計(jì)思路

        作為混合類在線實(shí)驗(yàn)室,NCSLab不僅支持仿真實(shí)驗(yàn),還支持涵蓋在線算法設(shè)計(jì)、遠(yuǎn)程配置、遠(yuǎn)程監(jiān)控和實(shí)時(shí)控制功能的遠(yuǎn)程控制實(shí)驗(yàn),其設(shè)計(jì)思路如圖2所示。

        圖2 NCSLab設(shè)計(jì)思路

        在瀏覽器端為用戶提供自主算法設(shè)計(jì)界面(見(jiàn)圖2 中的自主算法設(shè)計(jì)界面),界面包含模塊庫(kù)、操作欄和設(shè)計(jì)區(qū)三部分。使用時(shí)以拖拽的形式將模塊從模塊庫(kù)拖入設(shè)計(jì)區(qū)并連線,完成算法框圖的設(shè)計(jì);點(diǎn)擊模塊和配置參數(shù)按鈕進(jìn)行參數(shù)的設(shè)置,再點(diǎn)擊開(kāi)始仿真或開(kāi)始編譯按鈕,前端將框圖算法以json 形式發(fā)送至后端。

        仿真/編譯服務(wù)器在接收到前端的請(qǐng)求后生成對(duì)應(yīng)的M文件并遠(yuǎn)程調(diào)用Matlab軟件,生成仿真結(jié)果或可執(zhí)行算法文件,過(guò)程如圖2 中現(xiàn)系統(tǒng)實(shí)現(xiàn)部分所示。

        進(jìn)行仿真實(shí)驗(yàn)時(shí),用戶可以在前端瀏覽器界面查看仿真結(jié)果;進(jìn)行遠(yuǎn)程控制實(shí)驗(yàn)時(shí),用戶通過(guò)實(shí)驗(yàn)服務(wù)器將可執(zhí)行算法下載至樹(shù)莓派控制器并開(kāi)始遠(yuǎn)程實(shí)驗(yàn),包含虛擬設(shè)備控制實(shí)驗(yàn)與實(shí)體設(shè)備控制實(shí)驗(yàn)2 種。

        此外,進(jìn)行遠(yuǎn)程控制實(shí)驗(yàn)時(shí)用戶可在瀏覽器端借助豐富的監(jiān)控組態(tài)界面進(jìn)行遠(yuǎn)程配置、遠(yuǎn)程監(jiān)視與實(shí)時(shí)控制操作,包括多種輸入組件(數(shù)字輸入、滑動(dòng)輸入)、多種輸出組件(曲線圖、數(shù)字顯示、三維模型和攝像頭)及操作按鈕。

        1.3 現(xiàn)系統(tǒng)不足與新系統(tǒng)構(gòu)思

        NCSLab設(shè)計(jì)思路中,自主算法設(shè)計(jì)功能是整個(gè)系統(tǒng)的重要組成部分,允許學(xué)生以模塊化的形式設(shè)計(jì)所學(xué)的各種控制算法,如比例-積分-微分(PID)控制、串級(jí)控制等,幫助學(xué)生加深對(duì)算法的理解,但在后端實(shí)現(xiàn)過(guò)程中需要遠(yuǎn)程調(diào)用第三方軟件Matlab。為了防范可能存在的禁用和數(shù)據(jù)泄露風(fēng)險(xiǎn),同時(shí)提高系統(tǒng)效率,對(duì)自主算法設(shè)計(jì)功能的后端實(shí)現(xiàn)進(jìn)行新構(gòu)思,即自主設(shè)計(jì)一款適配于NCSLab前端與硬件的仿真和算法生成一體化軟件,接收前端框圖算法的json 信息并生成仿真與編譯的可執(zhí)行文件,過(guò)程如圖2 中新系統(tǒng)構(gòu)思部分所示。

        2 M2PLink設(shè)計(jì)與實(shí)現(xiàn)

        新系統(tǒng)相較于現(xiàn)系統(tǒng),只要修改自主算法設(shè)計(jì)功能的后端實(shí)現(xiàn),其余部分均無(wú)須改動(dòng),包括前后端數(shù)據(jù)傳遞的形式。本節(jié)中在介紹后端輸入的基礎(chǔ)上,對(duì)M2PLink進(jìn)行設(shè)計(jì)。

        2.1 M2PLink輸入

        后端的輸入為框圖算法的json 信息,圖3 展示了框圖算法與json 信息的對(duì)應(yīng)關(guān)系。生成的json 信息中包含了用戶名稱、算法名稱、解算器參數(shù)、模塊信息和模塊間的連線信息。

        圖3 框圖算法與json信息對(duì)應(yīng)關(guān)系

        2.2 M2PLink架構(gòu)

        基于框圖算法的json 信息對(duì)M2PLink 進(jìn)行設(shè)計(jì),整體架構(gòu)可分為4 層,即解析層、處理層、輸出層和封裝層,如圖4 所示。

        圖4 M2PLink架構(gòu)

        (1)解析層。在接收到瀏覽器傳遞的框圖算法信息后系統(tǒng)開(kāi)始解析,即根據(jù)其中的模塊信息與連線信息創(chuàng)建出對(duì)應(yīng)的實(shí)例,為遍歷輸出鏈、檢測(cè)代數(shù)環(huán)和生成代碼做準(zhǔn)備。

        (2)處理層。中間處理操作包括解算器設(shè)置、輸出鏈建立和代數(shù)環(huán)檢測(cè)。設(shè)置解算器是為了在生成代碼時(shí)寫入對(duì)應(yīng)的解算算法,建立正確的輸出鏈?zhǔn)潜WC框圖算法運(yùn)行結(jié)果準(zhǔn)確的前提,代數(shù)環(huán)檢測(cè)則可以有效避免算法進(jìn)入死鎖狀態(tài)。

        (3)輸出層。主要負(fù)責(zé)代碼生成,生成的代碼包括仿真/編譯主程序、解算器代碼、算法功能代碼以及其他文件(視仿真或編譯條件而定)。

        (4)封裝層。仿真主要封裝核心代碼、步長(zhǎng)控制代碼和結(jié)果存儲(chǔ)代碼,編譯則需要封裝核心代碼、通信代碼、定時(shí)器代碼與硬件接口代碼,保障遠(yuǎn)程控制實(shí)驗(yàn)的正常進(jìn)行。最后,系統(tǒng)進(jìn)行編譯操作,生成可執(zhí)行性文件。

        2.3 解算器設(shè)計(jì)

        控制框圖算法中,除了較容易實(shí)現(xiàn)的四則運(yùn)算與邏輯運(yùn)算外,還包含了一類特殊的模塊(積分、傳遞函數(shù)和狀態(tài)空間),這類模塊的輸入與輸出存在微分關(guān)系,求解此類模塊的輸出等同于求解微分方程,因此可以根據(jù)不同的微分方程求解算法設(shè)計(jì)多種求解器,下面介紹常用的四階龍格-庫(kù)塔法。

        四階龍格-庫(kù)塔法在每個(gè)時(shí)間步長(zhǎng)內(nèi)執(zhí)行以下計(jì)算:

        式中:yi為當(dāng)前時(shí)間步長(zhǎng)的解值;yi+1為下一個(gè)時(shí)間步長(zhǎng)的解值;k1、k2、k3和k4為4 個(gè)中間值。k1、k2、k3、k4的計(jì)算式為:

        式中:ti為當(dāng)前時(shí)刻;h為步長(zhǎng);f(t,y)表示常微分方程的右側(cè),即導(dǎo)數(shù)。

        2.4 模塊化設(shè)計(jì)

        根據(jù)前端瀏覽器傳遞的json 信息及解算器設(shè)計(jì)思路可為模塊設(shè)計(jì)統(tǒng)一的模板(Block類)。

        每個(gè)模塊含有類型、模塊名、模塊id、模塊所處位置(用于判斷模塊是否在子系統(tǒng)中)、若干輸入端口、若干輸出端口、若干狀態(tài)等基本信息。每個(gè)模塊的特性是通過(guò)繼承Block 類并覆寫部分方法實(shí)現(xiàn)的,各方法的功能如表1 所示。

        表1 Block類中各方法的作用

        不同于其他模塊,在進(jìn)行實(shí)驗(yàn)設(shè)備(電動(dòng)機(jī)、風(fēng)扇等)模塊設(shè)計(jì)時(shí)需要區(qū)分仿真模型與實(shí)體模型。仿真模型是通過(guò)機(jī)理建?;蛳到y(tǒng)辨識(shí)得到的,一般為傳遞函數(shù),而實(shí)體模型中包含了硬件接口。

        圖5 展示了電動(dòng)機(jī)模塊的仿真與實(shí)體模型。仿真模型包含了限幅模塊、傳遞函數(shù)模塊與延時(shí)模塊,而在實(shí)體模型中,通過(guò)串口通信的方式發(fā)送控制信號(hào)和接收編碼器測(cè)得的電動(dòng)機(jī)轉(zhuǎn)速信號(hào)。

        圖5 電動(dòng)機(jī)的仿真與實(shí)體模型

        2.5 輸出鏈建立與代數(shù)環(huán)檢測(cè)

        2.5.1 輸出鏈建立

        控制框圖的輸出順序一般考慮以下幾個(gè)方面:

        (1)直聯(lián)饋通模塊的輸出與輸入有關(guān),因此輸出鏈中與直聯(lián)饋通模塊輸入端口相連的模塊要先于直聯(lián)饋通模塊出現(xiàn)。

        (2)多輸入模塊需要等所有的輸入更新完后再計(jì)算輸出。

        (3)子系統(tǒng)使得模塊處于不同層級(jí),一般而言,子系統(tǒng)中模塊的計(jì)算優(yōu)先級(jí)高于子系統(tǒng)之后的所有模塊。

        鑒于多層級(jí)遍歷流程較為復(fù)雜,首先采用虛化子系統(tǒng)的方式將多層級(jí)系統(tǒng)轉(zhuǎn)換為單層級(jí)系統(tǒng)。圖6 展示了一個(gè)2 層系統(tǒng)轉(zhuǎn)換為單層系統(tǒng)的過(guò)程。前端瀏覽器將算法信息發(fā)送至M2PLink 后,在解析連線信息前對(duì)子系統(tǒng)的連線信息進(jìn)行修改,即用①、③號(hào)連線分別替代原系統(tǒng)中的②、④號(hào)連線,同時(shí)忽略模塊所處的位置信息。這種方式實(shí)現(xiàn)了對(duì)子系統(tǒng)模塊的虛化,將子系統(tǒng)中的模塊置于了第1 層系統(tǒng)。

        圖6 子系統(tǒng)處理

        建立單層級(jí)系統(tǒng)輸出鏈遍歷流程,遍歷遵循以下規(guī)則:

        (1)從“起始”模塊沿輸入連線進(jìn)行遍歷,首次遍歷的“起始”模塊為示波器類模塊,非首次遍歷的“起始”模塊為本輪遍歷之前發(fā)現(xiàn)的非直聯(lián)模塊。

        (2)遍歷過(guò)程若發(fā)現(xiàn)多輸入模塊則按多輸入模塊的輸入端口號(hào)依次遍歷。

        (3)遍歷的停止條件為發(fā)現(xiàn)“終止”模塊,包括信號(hào)源類模塊、非直聯(lián)模塊和本次遍歷前“已遍歷”的模塊。

        (4)遍歷到“終止”模塊后,系統(tǒng)會(huì)從“終止”模塊起沿遍歷鏈方向添加模塊至輸出鏈。多輸入模塊需在所有輸入端口支鏈添加完再添加。

        圖7 展示了上述輸出鏈建立思路。由于算法中只存在傳遞函數(shù)這一個(gè)非直聯(lián)模塊,該算法只需進(jìn)行2次遍歷。

        圖7 輸出鏈建立思路

        1 次遍歷以示波器為“起始”模塊,并沿輸入連線進(jìn)行,直至遇到第1 個(gè)雙輸入乘積模塊。接著,系統(tǒng)先沿乘積模塊的1 號(hào)端口遍歷至正弦波模塊,再沿乘積模塊的2 號(hào)端口遍歷至傳遞函數(shù)模塊(非直聯(lián))。最后,從“終止”模塊起沿遍歷路徑添加模塊至輸出鏈,得到1次遍歷的模塊輸出順序,如圖7數(shù)字1~8所示。

        2 次遍歷以傳遞函數(shù)模塊為“起始”模塊,并沿輸入連線遍歷至雙輸入求和模塊。接著,系統(tǒng)先沿求和模塊的1 號(hào)端口遍歷至常數(shù)模塊,再沿求和模塊的2號(hào)端口遍歷至“已遍歷”的除法模塊。最后,從“終止”模塊起沿遍歷路徑添加模塊至輸出鏈(其中除法模塊和傳遞函數(shù)模塊在1 次遍歷中已添加,本次不添加),得到2 次遍歷的模塊輸出順序,如圖7 數(shù)字9~12所示。

        2.5.2 代數(shù)環(huán)檢測(cè)

        代數(shù)環(huán)檢測(cè)是與輸出鏈遍歷同時(shí)進(jìn)行的,在每次遍歷過(guò)程中系統(tǒng)會(huì)記錄本輪遍歷到的所有模塊,當(dāng)已遍歷的模塊再次出現(xiàn)時(shí),則說(shuō)明算法中存在代數(shù)環(huán)。

        2.6 代碼生成

        編譯代碼與仿真代碼生成流程相同,需要生成基于控制框圖信息的算法功能代碼和其他靜態(tài)代碼(不會(huì)因框圖信息變化而改變)兩部分,不同之處在于兩者生成的實(shí)驗(yàn)設(shè)備實(shí)例與靜態(tài)代碼文件,圖8(a)展示了編譯代碼的生成過(guò)程,圖8(b)展示了仿真與編譯代碼生成時(shí)的區(qū)別。

        圖8 代碼生成

        算法功能代碼主要包括各種數(shù)據(jù)結(jié)構(gòu)的定義、算法的初始化方法、輸出方法、微分方法、狀態(tài)更新方法等。各方法均由各模塊生成的代碼拼接而成,以輸出方法生成為例,基于建立的輸出鏈,系統(tǒng)會(huì)按順序調(diào)用每個(gè)模塊的輸出代碼并寫入模塊功能代碼的輸出方法中,最終生成整個(gè)算法的輸出方法,供解算器調(diào)用。

        存放于靜態(tài)文件庫(kù)中的文件主要包括仿真/編譯主程序、解算器代碼等,在生成代碼時(shí)只需將其拷貝進(jìn)用戶文件夾。此外,仿真的主程序與實(shí)物控制的主程序存在差別,仿真的最終任務(wù)是獲取示波器的輸入數(shù)據(jù)并傳輸給瀏覽器進(jìn)行繪圖,而在實(shí)物控制中需要調(diào)用通信代碼實(shí)現(xiàn)前端瀏覽器與樹(shù)莓派間的動(dòng)態(tài)交互。動(dòng)態(tài)交互的實(shí)現(xiàn)方式如圖9 所示。瀏覽器與實(shí)驗(yàn)服務(wù)器間采用超文本傳輸協(xié)議(HTTP)進(jìn)行通信,而實(shí)驗(yàn)服務(wù)器與樹(shù)莓派間使用的是傳輸控制協(xié)議(TCP),交互的2 種方式為狀態(tài)監(jiān)測(cè)與參數(shù)調(diào)試。

        圖9 瀏覽器與樹(shù)莓派間的動(dòng)態(tài)交互

        (1)狀態(tài)監(jiān)測(cè)。將算法下載至樹(shù)莓派,用戶在前端瀏覽器進(jìn)行信號(hào)或參數(shù)選擇后,實(shí)驗(yàn)服務(wù)器便會(huì)給樹(shù)莓派發(fā)送一條信號(hào)選擇消息,請(qǐng)求樹(shù)莓派將信號(hào)或參數(shù)信息上傳至前端瀏覽器界面;樹(shù)莓派在接到該消息后,便將對(duì)應(yīng)的信號(hào)或參數(shù)的最新數(shù)據(jù)打包,并通過(guò)實(shí)驗(yàn)執(zhí)行模塊放入實(shí)時(shí)數(shù)據(jù)池。最后,這些實(shí)驗(yàn)數(shù)據(jù)通過(guò)WebSocket實(shí)時(shí)發(fā)送給前端組態(tài)。

        (2)參數(shù)調(diào)試。用戶在前端瀏覽器進(jìn)行參數(shù)修改后,調(diào)試指令將由前端瀏覽器界面提交給實(shí)驗(yàn)服務(wù)器,數(shù)據(jù)交換模塊再將參數(shù)名稱和數(shù)值打包為參數(shù)設(shè)置指令并通過(guò)實(shí)驗(yàn)執(zhí)行模塊發(fā)送給樹(shù)莓派控制單元,最后樹(shù)莓派響應(yīng)該指令,完成控制參數(shù)修改。

        3 系統(tǒng)測(cè)試與應(yīng)用

        將M2PLink 部署在NCSLab 上,為了驗(yàn)證其計(jì)算的準(zhǔn)確性、算法生成功能及對(duì)系統(tǒng)效率提高的積極作用,本節(jié)中將進(jìn)行仿真實(shí)驗(yàn)、實(shí)體實(shí)驗(yàn)和效率測(cè)試實(shí)驗(yàn),并介紹其在教學(xué)上的應(yīng)用。

        3.1 仿真實(shí)驗(yàn)

        在NCSLab平臺(tái)搭建仿真框圖(見(jiàn)圖10),并分別使用M2PLink和Matlab 軟件進(jìn)行仿真實(shí)驗(yàn)。驗(yàn)證輸出鏈建立流程、子系統(tǒng)實(shí)現(xiàn)和四階龍格-庫(kù)塔法編程的正確性。實(shí)驗(yàn)中解算器使用的是四階龍格-庫(kù)塔法,仿真步長(zhǎng)為0.2 s,得到前2.0 s示波器輸出結(jié)果,如表2所示。比較2 份實(shí)驗(yàn)數(shù)據(jù),誤差不大于10-12,可認(rèn)為2 份實(shí)驗(yàn)數(shù)據(jù)相同。因此,輸出鏈遍歷過(guò)程、子系統(tǒng)設(shè)計(jì)和四階龍格-庫(kù)塔法編程均得到實(shí)現(xiàn)。

        表2 仿真實(shí)驗(yàn)示波器輸出結(jié)果

        圖10 用于測(cè)試的仿真框圖算法

        3.2 實(shí)體實(shí)驗(yàn)

        單容水箱液位控制系統(tǒng)是自動(dòng)化實(shí)驗(yàn)教學(xué)中的一種常見(jiàn)實(shí)驗(yàn)裝置,主要由水箱、執(zhí)行器、傳感器和控制器組成。系統(tǒng)以水箱為被控對(duì)象,水泵為執(zhí)行器,進(jìn)行實(shí)驗(yàn)時(shí)改變水箱液位的設(shè)定值,控制器通過(guò)調(diào)節(jié)水泵的供水量從而實(shí)現(xiàn)對(duì)液位的控制。

        為了驗(yàn)證系統(tǒng)的算法生成功能,在前端瀏覽器搭建水箱液位串級(jí)控制算法并使用M2PLink 生成可執(zhí)行算法文件,之后進(jìn)行實(shí)體實(shí)驗(yàn),如圖11 所示。串級(jí)控制算法中主、副控制器均采用比例-積分(PI)控制,主控制參數(shù)為液位高度,副控制參數(shù)為水泵的進(jìn)水速度。監(jiān)控組態(tài)界面顯示了液位穩(wěn)定于100 mL 后將設(shè)定值增加到120 mL的控制效果,實(shí)驗(yàn)結(jié)果符合預(yù)期,驗(yàn)證了M2PLink的編譯功能。

        圖11 水箱液位串級(jí)控制算法與監(jiān)控組態(tài)畫面

        3.3 系統(tǒng)效率測(cè)試

        新系統(tǒng)中,M2PLink 服務(wù)器與原系統(tǒng)的Matlab 服務(wù)器配置一致,如表3 所示。分別使用2 個(gè)服務(wù)器對(duì)水箱液位串級(jí)控制算法進(jìn)行仿真與編譯操作,兩者所耗時(shí)間如表4 所示。由于基于M2PLink的NCSLab 系統(tǒng)比基于Matlab 的NCSLab 系統(tǒng)少了遠(yuǎn)程調(diào)用操作,新系統(tǒng)的效率遠(yuǎn)高于原系統(tǒng)。水箱液位串級(jí)控制算法與監(jiān)控組態(tài)畫面如圖11 所示。

        表3 服務(wù)器參數(shù)數(shù)據(jù)

        表4 仿真/編譯時(shí)間

        3.4 教學(xué)應(yīng)用

        目前,M2PLink服務(wù)器已經(jīng)部署于網(wǎng)絡(luò)化控制系統(tǒng)實(shí)驗(yàn)室中并用于自動(dòng)化專業(yè)實(shí)驗(yàn)教學(xué)。在2023 年春季,武漢大學(xué)電氣與自動(dòng)化學(xué)院的82 名自動(dòng)化專業(yè)學(xué)生使用新系統(tǒng)進(jìn)行了電動(dòng)機(jī)轉(zhuǎn)速PID 控制、控制系統(tǒng)穩(wěn)定性分析和二階系統(tǒng)的瞬態(tài)響應(yīng)與穩(wěn)定性3 個(gè)實(shí)驗(yàn),學(xué)生們對(duì)M2PLink服務(wù)器反響強(qiáng)烈。相較于使用Matlab服務(wù)器的方式,新系統(tǒng)生成仿真結(jié)果與算法的效率得到了大幅提升,減少了等待時(shí)間。

        4 結(jié)語(yǔ)

        設(shè)計(jì)了一款面向遠(yuǎn)程實(shí)驗(yàn)室仿真與算法生成的一體化軟件(M2PLink),處理了代碼生成中的模塊化設(shè)計(jì)、輸出鏈建立、解算器設(shè)計(jì)等問(wèn)題,并通過(guò)仿真實(shí)驗(yàn)、實(shí)體實(shí)驗(yàn)和效率測(cè)試實(shí)驗(yàn)驗(yàn)證了M2PLink 計(jì)算的精確性、編譯功能的完整性及對(duì)提升系統(tǒng)效率的積極作用。本軟件的開(kāi)發(fā),旨在替代NCSLab 中的Matlab/Simulink以實(shí)現(xiàn)實(shí)驗(yàn)室平臺(tái)的自主可控,目前實(shí)現(xiàn)了仿真、算法生成等功能。

        猜你喜歡
        框圖瀏覽器代碼
        捷豹I-PACE純電動(dòng)汽車高壓蓄電池充電系統(tǒng)(三)
        反瀏覽器指紋追蹤
        電子制作(2019年10期)2019-06-17 11:45:14
        創(chuàng)世代碼
        創(chuàng)世代碼
        創(chuàng)世代碼
        創(chuàng)世代碼
        電路圖2017年凱迪拉克XT5
        算法框圖的補(bǔ)全
        環(huán)球?yàn)g覽器
        再見(jiàn),那些年我們嘲笑過(guò)的IE瀏覽器
        国产av在线观看91| 中文在线√天堂| 精品视频专区| 女同欲望一区二区三区| 国产自拍精品一区在线观看| 国产精品一区二区久久乐下载| 亚洲自偷自拍另类图片小说| 中文字幕国内一区二区| 日本a级特级黄色免费| 亚洲人成电影在线播放| 伊人22综合| 一区二区三区国产亚洲网站| 午夜视频国产在线观看| 欧美日韩精品| 国内最真实的xxxx人伦| 亚洲aⅴ无码成人网站国产app| 日韩欧美精品有码在线观看| 日本不卡视频一区二区三区| 亚洲乱色伦图片区小说 | 东北无码熟妇人妻AV在线| 日本护士一区二区三区高清热线 | 国产人妻精品一区二区三区不卡| 91精品啪在线看国产网站| 日韩亚洲在线观看视频| 国产日韩精品欧美一区喷水 | 思思99热| 中文字幕成人精品久久不卡91| 无套内内射视频网站| 欧美性xxxx狂欢老少配| 国产精品爽爽VA吃奶在线观看| 蜜桃视频在线观看网址| 免费人妻无码不卡中文字幕18禁| 无码人妻精品一区二区三18禁| 国产女同一区二区在线| 亚洲精品第四页中文字幕| 曰韩亚洲av人人夜夜澡人人爽| 亚洲中文字幕无线无码毛片| 麻豆国产成人av高清在线| 亚洲欧洲国产码专区在线观看| 国产av国片精品| 久久麻豆精亚洲av品国产精品|