廈門ABB低壓電器設(shè)備有限公司 謝麗芬
模擬器,它是運(yùn)行于計(jì)算機(jī)的軟件程序,能夠模擬硬件設(shè)備的功能和指令系統(tǒng)。用模擬設(shè)備去替代物理設(shè)備已經(jīng)廣泛應(yīng)用于設(shè)計(jì),開(kāi)發(fā),測(cè)試和調(diào)試當(dāng)中。文獻(xiàn)[1]中,針對(duì)計(jì)算機(jī)的子系統(tǒng)提出一套模擬器,能夠模擬計(jì)算機(jī)數(shù)據(jù)交換的隨機(jī)過(guò)程,也能仿真計(jì)算機(jī)處理器和外圍設(shè)備的操作,很好的展現(xiàn)因內(nèi)存訪問(wèn)引起的問(wèn)題。隨著手機(jī)App的盛行,手機(jī)模擬器也已被廣泛應(yīng)用于App的開(kāi)發(fā)和測(cè)試當(dāng)中,一方面可以方便開(kāi)發(fā)者輕松搭建開(kāi)發(fā)環(huán)境,另一方面方便測(cè)試人員進(jìn)行一些自動(dòng)化測(cè)試和兼容性測(cè)試,同時(shí)也節(jié)約了購(gòu)機(jī)成本。
ABB作為全球電氣和自動(dòng)化技術(shù)的領(lǐng)導(dǎo)企業(yè),可為各類電氣系統(tǒng)、電子及機(jī)電設(shè)備等提供連接、保護(hù)、測(cè)量與控制等全套的電氣產(chǎn)品解決方案。例如,SCADA系統(tǒng)的開(kāi)發(fā)和應(yīng)用,SCADA系統(tǒng)采用總線方式(RS485,以太網(wǎng))與現(xiàn)場(chǎng)設(shè)備通信,進(jìn)行數(shù)據(jù)采集和處理??蛻艨梢酝ㄟ^(guò)HMI直則觀查看被監(jiān)控設(shè)備的狀態(tài)、測(cè)量量等,并且對(duì)現(xiàn)場(chǎng)的設(shè)備進(jìn)行操控。
隨著云技術(shù)與物聯(lián)網(wǎng)的發(fā)展,ABB還推出了自己的數(shù)字化服務(wù)平臺(tái)ABB Ability。其中低壓智能網(wǎng)關(guān)的研發(fā)與設(shè)計(jì),通過(guò)采集RS485或以太網(wǎng)等連接的現(xiàn)場(chǎng)設(shè)備的測(cè)量數(shù)據(jù),上傳至云平臺(tái),為用戶提供了隨時(shí)隨地監(jiān)視,管理,預(yù)測(cè)和控制等服務(wù)。
不論是SCADA還是智能網(wǎng)關(guān)的研發(fā),其軟件測(cè)試過(guò)程,需要連接現(xiàn)場(chǎng)設(shè)備來(lái)搭建測(cè)試環(huán)境。對(duì)于軟件性能測(cè)試的案例,例如測(cè)試智能網(wǎng)關(guān)與近百臺(tái)電氣設(shè)備的通信能力,如果全部連接真實(shí)設(shè)備,顯然工程量太大,成本太高。因此選擇開(kāi)發(fā)一款模擬器來(lái)代替真實(shí)設(shè)備,已成迫切需求。ABB 針對(duì)內(nèi)部測(cè)試需求,自主開(kāi)發(fā)了一套低壓電氣設(shè)備模擬器。它能夠模擬ABB開(kāi)發(fā)的Modbus RTU和Modbus TCP類型的低壓開(kāi)關(guān)設(shè)備,測(cè)量設(shè)備等。
ABB 電氣設(shè)備,如各類型的開(kāi)關(guān),測(cè)量設(shè)備,以及開(kāi)發(fā)的SCADA和低壓智能網(wǎng)關(guān)等都支持標(biāo)準(zhǔn)的Modbus,模擬器也是采用Modbus總線協(xié)議。
模擬器,其軟件設(shè)計(jì)是根據(jù)真實(shí)設(shè)備的控制器進(jìn)行設(shè)計(jì)的,例如各開(kāi)關(guān)設(shè)備測(cè)量量的名稱,對(duì)應(yīng)寄存器的地址,數(shù)據(jù)類型,支持的Modbus功能碼等。但是對(duì)于一部分的數(shù)據(jù)則給予隨機(jī)值來(lái)模擬,例如設(shè)備電流,電壓的測(cè)量數(shù)值。
模擬器支持手動(dòng)配置需要模擬的設(shè)備,并保存對(duì)應(yīng)的配置文件。用戶可以通過(guò)串口配置所需要模擬的Modbus RTU類型的設(shè)備,也可以通過(guò)配置設(shè)備局域網(wǎng)IP地址(非占用真實(shí)網(wǎng)絡(luò)的IP)模擬Modbus TCP類型的設(shè)備。
ABB低壓智能網(wǎng)關(guān)有兩路RS-485硬件接口,可以組建兩組Modbus RTU 現(xiàn)場(chǎng)設(shè)備網(wǎng)絡(luò)[2]。同時(shí)有兩個(gè)網(wǎng)口,其中基于Modbus TCP 通信的現(xiàn)場(chǎng)設(shè)備需要與運(yùn)行桌面應(yīng)用程序的電腦運(yùn)行于網(wǎng)口2的網(wǎng)絡(luò)中,而網(wǎng)口1負(fù)責(zé)將采集到的數(shù)據(jù)上傳至云端。
智能網(wǎng)關(guān)支持同時(shí)與Modbus RTU和Modbus TCP現(xiàn)場(chǎng)設(shè)備通信。本測(cè)試案例是配置80臺(tái)設(shè)備與智能網(wǎng)關(guān)通信,測(cè)試網(wǎng)關(guān)在高負(fù)載情況下的通信能力,測(cè)試環(huán)境如圖1所示。其中準(zhǔn)備3臺(tái)Modbus RTU 真實(shí)設(shè)備接到RS-485串口1,3臺(tái)Modbus TCP 真實(shí)設(shè)備接到網(wǎng)口2所在的局域網(wǎng)中,其余74臺(tái)設(shè)備用模擬器模擬。將真實(shí)設(shè)備和模擬設(shè)備并存于測(cè)試中,能讓測(cè)試環(huán)境更真實(shí)更簡(jiǎn)單。模擬器可同時(shí)模擬Modbus TCP和RTU類型的設(shè)備,其中Modbus RTU設(shè)備可以通過(guò)一個(gè)USB 轉(zhuǎn)串口設(shè)備進(jìn)行配置模擬并連接于智能網(wǎng)關(guān)RS-485串口2,Modbus TCP 設(shè)備可以配置與網(wǎng)口2所在局域網(wǎng)不沖突的IP進(jìn)行模擬。模擬器可以靈活選型Modbus RTU 和Modbus TCP 類型的設(shè)備,但每次完成新的配置和運(yùn)行后,運(yùn)行桌面應(yīng)用程序的電腦也要通過(guò)相關(guān)應(yīng)用程序?qū)χ悄芫W(wǎng)關(guān)做一次新的配置,確保智能網(wǎng)關(guān)是與當(dāng)下環(huán)境的80臺(tái)設(shè)備進(jìn)行通信。
1.模擬器能夠按配置的Modbus TCP/Modbus RTU類型,模擬真實(shí)設(shè)備的通信行為,實(shí)現(xiàn)通信能力壓力測(cè)試的目的。
2.測(cè)試環(huán)境搭建簡(jiǎn)單靈活,大大縮短了軟件測(cè)試周期。
3.用模擬設(shè)備代替硬件設(shè)備,節(jié)約了真實(shí)設(shè)備資源,大大節(jié)約了測(cè)試成本。
1.模擬器所模擬的現(xiàn)場(chǎng)設(shè)備的測(cè)量量,如電流,電壓并非真實(shí)的數(shù)值,無(wú)實(shí)際意義。
2.模擬器非真實(shí)設(shè)備,不適用于需要對(duì)設(shè)備進(jìn)行操作或控制作出響應(yīng)的場(chǎng)合。
為了開(kāi)發(fā)高質(zhì)量的軟件產(chǎn)品,軟件測(cè)試在整個(gè)軟件開(kāi)發(fā)過(guò)程起到關(guān)鍵的作用。本文首先針對(duì)ABB軟件開(kāi)發(fā)的背景,提出了模擬器在軟件測(cè)試中的需求。其次簡(jiǎn)單描述了模擬器的設(shè)計(jì)。最后通過(guò)一個(gè)ABB低壓智能網(wǎng)關(guān)性能測(cè)試案例闡述了模擬器在軟件測(cè)試方面的應(yīng)用并分析了優(yōu)缺點(diǎn)。模擬器因其靈活性和便捷性等優(yōu)點(diǎn),其應(yīng)用會(huì)越來(lái)越廣泛。