概述
如今,越來越多的應(yīng)用,特別是在工業(yè)自動(dòng)化、醫(yī)療技術(shù)、數(shù)據(jù)采集和測(cè)量技術(shù)等領(lǐng)域,都需要確定性的實(shí)時(shí)行為。acontis實(shí)時(shí)加速器技術(shù)(RtaccWin)使您能夠在Windows下運(yùn)行具有確定性的硬實(shí)時(shí)功能應(yīng)用程序。這是通過專門為實(shí)時(shí)應(yīng)用程序保留一個(gè)或多個(gè)CPU來實(shí)現(xiàn)的,設(shè)置 Windows 適當(dāng)?shù)?a target="_blank">參數(shù)化并利用 acontis 內(nèi)核驅(qū)動(dòng)程序進(jìn)行精確定時(shí)和直接硬件訪問。
01
軟件架構(gòu)
基于Windows IoT Enterprise的PC可以從acontis的RtaccWin軟件中受益,以保證在1毫秒的周期時(shí)間中運(yùn)行穩(wěn)定的實(shí)時(shí)應(yīng)用程序。原則上,還可以實(shí)現(xiàn)更快的周期時(shí)間。為了實(shí)現(xiàn)這一點(diǎn),至少保留一個(gè)CPU專門用于實(shí)時(shí)應(yīng)用程序,而其他CPU則于標(biāo)準(zhǔn)的Windows應(yīng)用程序。
RtaccWin 包括一個(gè)Windows系統(tǒng)驅(qū)動(dòng)程序,可為整個(gè)應(yīng)用程序提供精確且可調(diào)節(jié)的時(shí)鐘。為了確保確定性行為,標(biāo)準(zhǔn)Windows驅(qū)動(dòng)程序通常不用于實(shí)時(shí)應(yīng)用程序。相反,RtaccWin中的內(nèi)核驅(qū)動(dòng)程序允許從 Windows 用戶模式直接訪問硬件,例如網(wǎng)卡、現(xiàn)場(chǎng)總線卡等,從而降低抖動(dòng)、顯著降低CPU利用率并具有確定性行為。還允許在不使用Windows網(wǎng)絡(luò)堆棧的情況下發(fā)送和接收以太網(wǎng)幀,并且在并行使用其他網(wǎng)絡(luò)接口時(shí)不會(huì)產(chǎn)生不利影響。
02
配置工具:RtaccWinConfig
軟件配置工具 RtaccWinConfig用于為實(shí)時(shí)應(yīng)用程序準(zhǔn)備Windows系統(tǒng)。首先,它至少隔離了一個(gè)CPU,這也意味著常規(guī) Windows進(jìn)程和服務(wù)不會(huì)再使用該CPU。這樣,隔離的CPU就能專門用于實(shí)時(shí)應(yīng)用程序。
RtaccWinConfig工具的另一個(gè)功能是為實(shí)時(shí)應(yīng)用程序分配硬件。這意味著常規(guī)的 Windows 驅(qū)動(dòng)程序已經(jīng)卸載,可以從 Windows 用戶空間訪問硬件。acontis內(nèi)核驅(qū)動(dòng)程序可以快速、直接地訪問已分配硬件的所有內(nèi)存區(qū)域。
03
軟件開發(fā)
開發(fā)實(shí)時(shí)應(yīng)用程序的過程類似于標(biāo)準(zhǔn)Windows應(yīng)用程序開發(fā)的過程。以下是要遵循的步驟:
1、使用RtaccWinConfig工具設(shè)置系統(tǒng)
2、為實(shí)時(shí)任務(wù)創(chuàng)建一個(gè)或多個(gè)線程
3、將這些線程分配給先前隔離的CPU
4、為線程分配一個(gè)非常高的優(yōu)先級(jí),使它們成為“實(shí)時(shí)線程”
5、可選擇通過acontis Windows系統(tǒng)驅(qū)動(dòng)程序生成一個(gè)穩(wěn)定而精確的時(shí)鐘
一個(gè)Windows 進(jìn)程可以包括“非實(shí)時(shí)線程”和“實(shí)時(shí)線程”。這兩種線程類型都可以訪問全局變量并使用標(biāo)準(zhǔn)同步機(jī)制,如事件、關(guān)鍵部分、互斥鎖和信號(hào)量。常用的 Win32 API 也可在“實(shí)時(shí)線程”中使用。您可以在整個(gè)開發(fā)過程中使用Microsoft Visual Studio的全部功能。在調(diào)試模式下,所有線程都可以訪問所有資源。當(dāng)然,您也可以在沒有實(shí)時(shí)行為的情況下逐步執(zhí)行“實(shí)時(shí)線程”。
04
性能
一個(gè)穩(wěn)定、精確、低抖動(dòng)的時(shí)鐘對(duì)于實(shí)時(shí)應(yīng)用是至關(guān)重要的,特別是對(duì)于每毫秒執(zhí)行一次的控制循環(huán)。理想情況下,應(yīng)用程序應(yīng)該每1000微秒精確觸發(fā)一次,但在實(shí)踐中可能會(huì)出現(xiàn)偏差,導(dǎo)致間隔或長(zhǎng)或短。在使用acontis 實(shí)時(shí)加速器技術(shù)時(shí),這些偏差(也稱為抖動(dòng))可以在 Windows 下顯著減少。
RtaccWinConfig 軟件工具可以測(cè)量具有特定周期時(shí)間的隔離CPU性能。最大和最小偏差值可以用圖形顯示。允許的最大抖動(dòng)取決于應(yīng)用程序,在通常情況下,可以接受高達(dá)周期時(shí)間10%的偏差。例如,周期時(shí)間為1000微秒時(shí),最小值應(yīng)不小于900微秒,最大值不應(yīng)大于1100微秒。
如果沒有實(shí)時(shí)加速器技術(shù),周期時(shí)間可能會(huì)大幅波動(dòng)。8小時(shí)后,在運(yùn)行Windows IoT的Minis Forum U820(i5-8279U CPU)上進(jìn)行了測(cè)試,并大量加載Passmark老化測(cè)試,結(jié)果顯示有明顯的波動(dòng)。
啟用實(shí)時(shí)加速器技術(shù)可以保證時(shí)鐘的精確度同時(shí)誤差最小,在8小時(shí)后的同一系統(tǒng)上進(jìn)行的測(cè)試證明了這一點(diǎn)。
05
特征
1、微秒級(jí)的快速響應(yīng)時(shí)間
2、硬實(shí)時(shí)與實(shí)時(shí)加速器技術(shù)使用CPU隔離
3、在一個(gè)獨(dú)立的CPU的一個(gè)進(jìn)程中實(shí)現(xiàn)實(shí)時(shí)功能和標(biāo)準(zhǔn)功能
4、RtaccTimer驅(qū)動(dòng)程序生成精確,穩(wěn)定的時(shí)鐘
5、RtaccDevice驅(qū)動(dòng)程序,可以直接訪問硬件無需內(nèi)核驅(qū)動(dòng)程序
6、 合適的配置工具RtaccWinConfig
06
優(yōu)勢(shì)
1、實(shí)時(shí)應(yīng)用程序可以像普通的Windows應(yīng)用程序一樣開發(fā)
2、標(biāo)準(zhǔn)Win32 API也可用于實(shí)時(shí)線程中
3、支持Microsoft Visual Studio。方便開發(fā)和調(diào)試整個(gè)實(shí)時(shí)應(yīng)用程序。
4、通過變量進(jìn)行簡(jiǎn)單的數(shù)據(jù)交換。不需要在應(yīng)用程序的實(shí)時(shí)和非實(shí)時(shí)部分之間進(jìn)行復(fù)雜的通信。
5、操作簡(jiǎn)單,培訓(xùn)工作量低
系統(tǒng)要求
? Windows 10 IoT 企業(yè)版或 Windows 11 IoT 企業(yè)版
? 四核CPU
北京盟通科技有限公司成立于2013年,是工業(yè)自動(dòng)化領(lǐng)域的高新技術(shù)企業(yè)。公司專注于實(shí)時(shí)現(xiàn)場(chǎng)總線技術(shù)及工業(yè)通訊技術(shù)的研發(fā)、推廣及技術(shù)支持服務(wù)。依托于核心團(tuán)隊(duì)多年的海外和行業(yè)經(jīng)驗(yàn),盟通科技與歐洲多家自動(dòng)化領(lǐng)域的佼佼者達(dá)成戰(zhàn)略合作關(guān)系,為客戶提供EtherCAT主站協(xié)議棧、OPC UA SDK軟件開發(fā)包、CANopen協(xié)議棧、FSoE協(xié)議軟件、CAN總線硬件、DINA安全模塊、艾默生Connext軟件等工業(yè)協(xié)議的標(biāo)準(zhǔn)和定制化產(chǎn)品。
-
軟件開發(fā)
+關(guān)注
關(guān)注
0文章
612瀏覽量
27353 -
加速器
+關(guān)注
關(guān)注
2文章
796瀏覽量
37838 -
WINDOWS
+關(guān)注
關(guān)注
3文章
3541瀏覽量
88622 -
實(shí)時(shí)操作系統(tǒng)
+關(guān)注
關(guān)注
1文章
197瀏覽量
30753
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論