實時系統(tǒng)的作用
對于機器人、高端制造業(yè)、醫(yī)療和過程控制(石油、天然氣和電力)業(yè)務來說,實時處理非常重要。這些行業(yè)依賴實時數(shù)據(jù)處理以不斷提高安全性、效率和可靠性。而確保這些行業(yè)的實時處理數(shù)據(jù)的一個關鍵因素是,系統(tǒng)要能夠?qū)崟r調(diào)度工作任務, 優(yōu)先響應、管理和執(zhí)行實時工作任務。
例如,現(xiàn)代汽車制造商依靠機器人在生產(chǎn)線上的協(xié)同工作來組裝汽車。機器人傳遞零件、鉆孔、焊接,或執(zhí)行安全檢查,都需要精確和連續(xù)地處理。在這些應用中,實時系統(tǒng)不僅必須在已經(jīng)設定的、可預測的時間范圍內(nèi)處理數(shù)據(jù),還必須確保關鍵任務(如安全相關任務)在不太關鍵的任務之前完成。
那么,如何確保數(shù)據(jù)按照設定的時間和方式處理呢?
答案是運用實時系統(tǒng)。
實時系統(tǒng)一般會提供以下功能:
ProCon NoTime:實時.NET執(zhí)行環(huán)境
ProCon NoTime是基于實時系統(tǒng)的.NET執(zhí)行環(huán)境,與Windows共同或獨立運行在一般工業(yè)計算機上。安裝ProCon NoTime之后,工程師可以用Visual Studio基于以往的習慣開發(fā)基于.NET語言(如C#,VB.NET等)的實時程序。
1.開箱即用
基于目前市場常見的實時系統(tǒng),在開發(fā)時都需要面對不少問題:內(nèi)存管理、與現(xiàn)有開發(fā)工具的兼容性、實時系統(tǒng)SDK學習,以及后續(xù)穩(wěn)定性和可維護性挑戰(zhàn)。
而通過NoTime,工程師只需要將原本運行在Windows上的.NET機器控制程序,通過調(diào)用LoadNoTimeAPP接口等簡易操作,就可放到實時系統(tǒng)中運行,這樣工作重心就能轉(zhuǎn)移到設備運控及邏輯程序本身,無需擔心實時性的實現(xiàn)了。
同樣的程序運行在NoTime和Windows中會有顯著的不同,以下我們通過一些簡單的實驗來展示。
2.實時的用戶程序響應
這是一個經(jīng)常出現(xiàn)的現(xiàn)象,一個外部信號進入控制系統(tǒng),用戶希望收到信號之后立刻進行一些計算和判斷,然后進行某種形式的輸出。這類問題常見于各類視覺檢測應用中。
物品運動的速度是200mm/s,假設收到外部信號后,需要進行1萬次浮點數(shù)運算,計算完成之后伺服電機急停。我們把相同的程序分別運行在Windows和NoTime環(huán)境中。(詳見視頻)
通過圖中的曲線可以看到Windows和NoTime兩種環(huán)境中的區(qū)別。
由于Windows并不是硬實時操作系統(tǒng),而NoTime 125μs高精度線程可以精確地執(zhí)行用戶程序,所以這個結(jié)果是符合預期的。但是與傳統(tǒng)的實時系統(tǒng)不同,NoTime用戶并不需要其他額外的實時系統(tǒng)開發(fā)成本和SDK購買成本,直接使用標準的C#語言就可以獲得硬實時系統(tǒng)的效果。
這個實驗中用到了ProCon YKCAT2— —是基于windows和NoTime的運動控制庫,我們將在后續(xù)介紹。
3.實時通訊
不同于“虛擬機”,或者Windows設備驅(qū)動類實時系統(tǒng),NoTime基于完整的實時操作系統(tǒng),可以完全地管理PC的其他硬件。因此我們可以實現(xiàn)實時的PC與PC或PC與PLC的通訊。
相同的代碼,基于NoTime的Socket通訊,比基于Windows的更加穩(wěn)定和敏捷。
對于貼合綁定、檢測設備和疊片設備等來說,穩(wěn)定的PC通訊可以顯著縮短設備的CT,提高穩(wěn)定性。
4.藍屏機器控制
因為NoTime與Windows安全隔離,所以即使Windows因為病毒,兼容性等原因藍屏,NoTime依然可以穩(wěn)定運行,使設備始終處于受控狀態(tài)??梢岳^續(xù)執(zhí)行關鍵的保護和安全任務,避免人員或產(chǎn)品的損失。(詳見視頻)
5.NoTime高精度線程:與PLC一樣的確定性,但是算力更強
基于PC的控制系統(tǒng)算力一般較強,但是一般認為計算周期的穩(wěn)定性要遜于PLC?;贜oTime 125μs高精度線程,用戶程序在125μs周期內(nèi)精確地執(zhí)行。每個周期可以執(zhí)行約1.3萬次浮點數(shù)運算(基于i5-8500,單核心)這樣就兼具了算力與運算周期穩(wěn)定的優(yōu)勢。
我們采集了每125μs的浮點數(shù)計算量,其中Windows管理intel i5-8500的5個核心,NoTime管理intel i5-8500的1個核心。如下圖可以看到兩者的對比:Windows響應用戶程序的算力并不穩(wěn)定,有些周期只能計算數(shù)十次或沒有算力資源,這類情況需要等待Windows分配算力,造成用戶程序的卡頓。
以上,就是NoTime— —基于實時系統(tǒng)的.NET 執(zhí)行平臺。通過NoTime,軟件工程師可以幾乎無門檻地進入實時世界,同時繼續(xù)享用X86系統(tǒng)的高算力優(yōu)勢。
審核編輯:湯梓紅
-
機器人
+關注
關注
213文章
30240瀏覽量
217690 -
WINDOWS
+關注
關注
4文章
3622瀏覽量
92627 -
操作系統(tǒng)
+關注
關注
37文章
7256瀏覽量
127809 -
實時系統(tǒng)
+關注
關注
0文章
38瀏覽量
14782
原文標題:ProCon NoTime:開箱即用的實時.NET執(zhí)行環(huán)境
文章出處:【微信號:控制工程中文版,微信公眾號:控制工程中文版】歡迎添加關注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
Windows CE .NET 4.2 產(chǎn)品概述
STN32開發(fā)板應用詳解——基于倉儲環(huán)境監(jiān)控系統(tǒng)
基于倉儲環(huán)境監(jiān)控系統(tǒng)——詳解stm32開發(fā)板應用
程序的翻譯環(huán)境和執(zhí)行環(huán)境有何不同
基于NET的挖掘機實時監(jiān)測系統(tǒng)設計與實現(xiàn)
ARM程序的執(zhí)行過程詳解
單片機執(zhí)行指令過程詳解

YKCAT2如何搭建NoTime基本程序框架
介紹NoTime模式下的高精度線程
軟著陸技術在半導體和3C組裝設備中的應用

評論