• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      一種基于TMS320F28377D型微控制單元的低成本控制器軟件方案設(shè)計(jì)

      2022-07-08 13:30:02付建國
      控制與信息技術(shù) 2022年3期
      關(guān)鍵詞:內(nèi)核以太網(wǎng)數(shù)據(jù)包

      付建國,李 益,李 程,周 斌

      (中車株洲電力機(jī)車研究所有限公司,湖南 株洲 412001)

      0 引言

      工業(yè)實(shí)時(shí)控制器作為工業(yè)設(shè)備的大腦,承擔(dān)著設(shè)備實(shí)時(shí)控制、系統(tǒng)IO、對(duì)外通信等功能。隨著當(dāng)前工業(yè)設(shè)備市場競爭日趨白熱化,對(duì)控制器功能多樣性及成本管控提出了越來越大的挑戰(zhàn)。

      為實(shí)現(xiàn)設(shè)備在功能密度提升的同時(shí)滿足成本下降的需求,本文提出并設(shè)計(jì)了一種基于TMS320F28377D型微控制單元(microcontroller unit,MCU)的控制系統(tǒng)的平臺(tái)架構(gòu)。TMS320F28377D(簡稱“F28377D”)為TI公司生產(chǎn)的單MCU雙核芯片,其中一個(gè)內(nèi)核完成傳感器信號(hào)采集、PWM脈沖生成、故障快速保護(hù)與電機(jī)算法控制等任務(wù),另一個(gè)內(nèi)核實(shí)現(xiàn)邏輯程序控制、故障數(shù)據(jù)記錄、程序遠(yuǎn)程加載、波形監(jiān)視等功能。這種基于F28377D的單芯片平臺(tái)架構(gòu)不僅滿足了工業(yè)實(shí)時(shí)控制器的功能需求,而且極大地簡化了系統(tǒng)的數(shù)據(jù)流并降低了產(chǎn)品成本,同時(shí)也減輕了平臺(tái)的維護(hù)壓力[1]。

      1 系統(tǒng)平臺(tái)架構(gòu)設(shè)計(jì)

      本控制器采用單芯片F(xiàn)28377D架構(gòu),其硬件關(guān)聯(lián)關(guān)系如圖1所示。F28377D采用I2C總線通信,實(shí)現(xiàn)對(duì)時(shí)鐘芯片和溫濕度芯片的訪問;采用串行外設(shè)接口(serial peripheral interface,SPI)總線通信,實(shí)現(xiàn)對(duì)旋變解碼芯片、NOR Flash芯片以及集成以太網(wǎng)芯片的訪問,進(jìn)而實(shí)現(xiàn)以太網(wǎng)通信功能;利用片內(nèi)AD采樣模塊實(shí)現(xiàn)對(duì)電壓、電流等信號(hào)的采集;利用片內(nèi)PWM模塊生成PWM脈沖,進(jìn)而實(shí)現(xiàn)電機(jī)控制。

      1.1 主控芯片簡介

      主控芯片采用F28377D,其是一款功能強(qiáng)大的32位浮點(diǎn)微控制器(MCU),專門針對(duì)高級(jí)閉環(huán)控制應(yīng)用而設(shè)計(jì)。F28377D支持新型雙核架構(gòu),顯著提升了系統(tǒng)性能;雙實(shí)時(shí)控制子系統(tǒng)基于TI的32位C28x浮點(diǎn)CPU,每個(gè)內(nèi)核可提供200 MHz的信號(hào)處理能力。F28377D包含2個(gè)外部存儲(chǔ)器接口(EMIF)、2個(gè)CAN模塊、3個(gè)高速(最高50 MHz)SPI端口、4個(gè)串行通信接口、2個(gè)I2C接口、4個(gè)模數(shù)轉(zhuǎn)換器(最多支持12路16位AD采樣或者24路12位AD采樣)、24路具有增強(qiáng)功能的脈寬調(diào)制器通道以及8個(gè)比較器子系統(tǒng),可在未滿足電流限制條件的情況下保護(hù)功率器件。

      1.2 總體方案設(shè)計(jì)

      基于F28377D的控制系統(tǒng)軟件架構(gòu)主要分為底層軟件和應(yīng)用軟件,它們分別被存放在片內(nèi)FLASH存儲(chǔ)器的兩個(gè)扇區(qū)。底層軟件主要負(fù)責(zé)更新應(yīng)用軟件,應(yīng)用軟件主要實(shí)現(xiàn)實(shí)時(shí)控制功能??刂破魃想姇r(shí),首先運(yùn)行底層軟件并判斷是否需要跳轉(zhuǎn)到應(yīng)用軟件;應(yīng)用軟件運(yùn)行后,根據(jù)需求可下發(fā)指令跳轉(zhuǎn)回底層軟件進(jìn)行應(yīng)用軟件的更新。應(yīng)用軟件的架構(gòu)如圖2所示。其中,內(nèi)核CPU1負(fù)責(zé)邏輯程序控制、故障記錄并結(jié)合硬件TCP/IP協(xié)議棧芯片(W5500)實(shí)現(xiàn)以太網(wǎng)通信,進(jìn)而實(shí)現(xiàn)參數(shù)分離、波形監(jiān)視等功能。內(nèi)核CPU2通過片上AD采樣模塊實(shí)現(xiàn)對(duì)電機(jī)控制側(cè)和電網(wǎng)控制側(cè)模擬信號(hào)以及模塊溫度信號(hào)的采集;同時(shí)利用采集到的模擬信號(hào)生成相應(yīng)的PWM脈沖,實(shí)現(xiàn)電機(jī)算法控制;另外,根據(jù)故障反饋信號(hào)封鎖PWM脈沖,實(shí)現(xiàn)故障保護(hù)。CPU1和CPU2通過內(nèi)部共享RAM,實(shí)現(xiàn)雙核之間的數(shù)據(jù)交互。

      1.3 平臺(tái)優(yōu)勢(shì)

      在工業(yè)領(lǐng)域,成本是產(chǎn)品競爭的關(guān)鍵,針對(duì)這一特點(diǎn),本文提出的低成本控制平臺(tái)相較于傳統(tǒng)平臺(tái)有如下優(yōu)勢(shì):

      (1)在傳統(tǒng)平臺(tái)中,實(shí)時(shí)控制由DSP執(zhí)行,邏輯控制由ARM處理器執(zhí)行;本文所設(shè)計(jì)的平臺(tái)則將實(shí)時(shí)控制及邏輯控制功能融合于單片MCU中,使得成本大幅降低[2]。

      (2)在傳統(tǒng)平臺(tái)中,實(shí)時(shí)保護(hù)由FPGA完成;而本平臺(tái)以F28377D作為專用MCU,在芯片內(nèi)部集成了基于模擬量比較器的實(shí)時(shí)硬件保護(hù)電路,構(gòu)建了實(shí)時(shí)保護(hù)體系。

      (3)在傳統(tǒng)平臺(tái)中,用操作系統(tǒng)的文件服務(wù)記錄故障文件;本平臺(tái)建立了一套全新的文件管理機(jī)制,在無操作系統(tǒng)情況下可以實(shí)現(xiàn)文件管理。

      (4)在傳統(tǒng)平臺(tái)中,用操作系統(tǒng)的內(nèi)存服務(wù)管理波形監(jiān)視數(shù)據(jù);本平臺(tái)提出了一種高效內(nèi)存管理方法,可提升內(nèi)存利用率,實(shí)現(xiàn)數(shù)據(jù)的高效管理。

      (5)傳統(tǒng)平臺(tái)設(shè)計(jì)需要操作系統(tǒng)工程師、實(shí)時(shí)控制軟件工程師、底層驅(qū)動(dòng)開發(fā)工程師3人全部參與;而本平臺(tái)實(shí)現(xiàn)所有功能一體化,只需底層驅(qū)動(dòng)開發(fā)工程師1人參與即可,實(shí)現(xiàn)了資源集約型平臺(tái)開發(fā)。

      本平臺(tái)在成本大幅降低的同時(shí),完全保留了既有“CPU+FPGA”架構(gòu)平臺(tái)的所有功能特征,性價(jià)比高,優(yōu)勢(shì)明顯,滿足低成本實(shí)時(shí)控制系統(tǒng)需求。

      2 功能單元設(shè)計(jì)

      本節(jié)重點(diǎn)介紹該控制平臺(tái)軟件架構(gòu)重要功能的實(shí)現(xiàn)方法,主要包含系統(tǒng)同步采樣、以太網(wǎng)通信、波形監(jiān)視、故障記錄以及程序遠(yuǎn)程加載等。

      2.1 系統(tǒng)同步采樣

      工業(yè)實(shí)時(shí)控制器是一個(gè)高實(shí)時(shí)性的數(shù)字控制系統(tǒng),在實(shí)際的控制過程中,采樣位置和控制輸出的精確性直接影響著控制系統(tǒng)的控制精度和系統(tǒng)的響應(yīng)速度,最終影響算法的控制效果。

      在當(dāng)前常見的“DSP+FPGA”架構(gòu)控制器中,DSP的主循環(huán)控制在DSP芯片時(shí)鐘驅(qū)動(dòng)下周期性運(yùn)行,而數(shù)據(jù)采樣則在可編程器件的內(nèi)部時(shí)鐘驅(qū)動(dòng)下按照固定周期完成數(shù)據(jù)采樣,兩者屬于異步時(shí)鐘系統(tǒng)。采樣數(shù)據(jù)在傳遞給DSP的過程中引入了由于異步時(shí)鐘關(guān)系引起的抖動(dòng)偏移,造成DSP接收數(shù)據(jù)采樣時(shí)刻的不確定性,從而影響控制響應(yīng)過程。在這樣的異步架構(gòu)下,DSP的控制結(jié)果輸出也同樣存在這樣的問題,其引入的數(shù)據(jù)抖動(dòng)對(duì)系統(tǒng)的快速響應(yīng)和收斂會(huì)造成一定影響。

      為保證傳感器采樣與控制算法間的固定相位關(guān)系,本方案基于F28377D內(nèi)部集成的ADC電路,構(gòu)建了一套同步采樣方案,即在載波過零點(diǎn)t0時(shí)刻和周期值點(diǎn)t1時(shí)刻兩個(gè)時(shí)刻同時(shí)觸發(fā)AD采樣并且產(chǎn)生中斷運(yùn)行控制算法,t2時(shí)刻和t3時(shí)刻分別為AD采樣完成時(shí)刻,且(t2-t0)等于(t3-t1)。該方案可以保證采樣轉(zhuǎn)換完成時(shí)刻與主循環(huán)周期的固定相位關(guān)系,從而有效控制采樣偏移抖動(dòng)帶來的控制振蕩。其同步控制系統(tǒng)時(shí)序如圖3所示。

      2.2 以太網(wǎng)通信

      以太網(wǎng)通信作為當(dāng)前運(yùn)用最為普遍的通信方式,已成為工業(yè)設(shè)備調(diào)試及信息交互不可或缺的手段。傳統(tǒng)以太網(wǎng)協(xié)議棧軟件體積較大,需要具備大容量內(nèi)存的CPU及操作系統(tǒng)來實(shí)現(xiàn)。

      為滿足小型MCU處理器系統(tǒng)對(duì)外以太網(wǎng)通信的需求,本平臺(tái)采用“F28377D+硬件協(xié)議棧芯片W5500”的方式來實(shí)現(xiàn)以太網(wǎng)通信,其內(nèi)部數(shù)據(jù)流為F28377D內(nèi)核CPU1與W5500進(jìn)行SPI通信傳輸?shù)臄?shù)據(jù),W5500與客戶端計(jì)算機(jī)之間按照特定的TCP/IP協(xié)議進(jìn)行用戶數(shù)據(jù)報(bào)協(xié)議(user datagram protocol,UDP)通信來傳輸數(shù)據(jù),其數(shù)據(jù)流如圖4所示[3-4]。相較現(xiàn)有的“ARM+以太網(wǎng)物理層芯片”方案,本文所提方案可降低開發(fā)難度、減輕工作量、提高系統(tǒng)集成度、使系統(tǒng)運(yùn)行更加穩(wěn)定;且以太網(wǎng)通信模塊的應(yīng)用為波形監(jiān)視、故障記錄、程序遠(yuǎn)程加載等功能的設(shè)計(jì)提供了基礎(chǔ)[5]。

      圖4 以太網(wǎng)通信數(shù)據(jù)流Fig.4 Ethernet communication data flow diagram

      2.3 波形監(jiān)視

      為了在產(chǎn)品開發(fā)過程中調(diào)試,本平臺(tái)利用已開發(fā)的以太網(wǎng)通信方案,設(shè)計(jì)并開發(fā)了波形監(jiān)視功能?;驹頌椋篊PU2將待監(jiān)視數(shù)據(jù)存儲(chǔ)到片內(nèi)RAM存儲(chǔ)器中;CPU1讀取RAM中待監(jiān)視的數(shù)據(jù),其通過W5500發(fā)送給上位機(jī)軟件并以波形的形式顯示出來[6]。

      根據(jù)應(yīng)用的需求,波形監(jiān)視方案設(shè)計(jì)要點(diǎn)如下:

      (1)CPU2配置16個(gè)待監(jiān)視變量。

      (2)為防止出現(xiàn)數(shù)據(jù)丟失現(xiàn)象,在CPU2片內(nèi)RAM中配置2個(gè)緩存區(qū)間,每個(gè)緩存區(qū)間大小為160個(gè)字(緩存10次),以實(shí)現(xiàn)乒乓緩存。

      (3)為防止CPU1重復(fù)接收數(shù)據(jù),在CPU1讀取待監(jiān)視數(shù)據(jù)程序里定義了防止重復(fù)讀取標(biāo)志位。

      波形監(jiān)視流程如圖5所示。圖中,Buffer1是用來表示緩存區(qū)間1和緩存區(qū)間2緩存數(shù)據(jù)滿標(biāo)志位。該標(biāo)志位只能由CPU2對(duì)其進(jìn)行寫操作,CPU1只能對(duì)其進(jìn)行讀操作。標(biāo)志位為1,表示緩存區(qū)間1存滿數(shù)據(jù);標(biāo)志位為0,表示緩存區(qū)間2存滿數(shù)據(jù)。Buffer_cnt為緩存次數(shù)變量,每個(gè)緩存區(qū)緩存10次。Flag為防止重復(fù)讀取標(biāo)志位,標(biāo)志位為0,表示緩存區(qū)間1數(shù)據(jù)未被讀取;標(biāo)志位為1,表示緩存區(qū)間2數(shù)據(jù)未被讀取。該標(biāo)志位只能由CPU1對(duì)其進(jìn)行寫操作,CPU2只能對(duì)其進(jìn)行讀操作。

      圖5 波形監(jiān)視流程Fig.5 Waveform monitoring flow diagram

      圖5中,藍(lán)色虛線框內(nèi)為CPU2將待監(jiān)視數(shù)據(jù)存儲(chǔ)到片內(nèi)RAM的流程;紅色虛線框內(nèi)為CPU1將RAM里的待監(jiān)視數(shù)據(jù)讀取出來,并采用以太網(wǎng)通信方式發(fā)送給上位機(jī)軟件后以波形的形式顯示出來的流程。

      本方案對(duì)波形監(jiān)視中可能出現(xiàn)丟失數(shù)據(jù)和重復(fù)接收數(shù)據(jù)的情況做了相應(yīng)的處理。首先,數(shù)據(jù)丟失和重復(fù)接收是由于CPU2存滿一個(gè)緩存區(qū)間所用的時(shí)間(T2)與CPU1讀取一個(gè)緩存區(qū)間所用的時(shí)間(T1)不匹配而導(dǎo)致的。如果T1>T2,則會(huì)出現(xiàn)數(shù)據(jù)丟失情況,此時(shí)可通過增加每個(gè)緩存區(qū)間的緩存次數(shù)來解決該問題,即增大每個(gè)緩存區(qū)間的存儲(chǔ)容量;如果T1<T2,則會(huì)出現(xiàn)重復(fù)接收數(shù)據(jù)的情況,此時(shí)通過判斷Flag的值并做相應(yīng)處理來解決該問題。

      2.4 故障記錄

      為了提升產(chǎn)品的質(zhì)量,故障記錄在工業(yè)傳動(dòng)產(chǎn)品應(yīng)用過程中是不可或缺的。本平臺(tái)故障記錄的基本原理為:F28377D內(nèi)核CPU1接收故障反饋信息,再將此故障信息傳輸給CPU2;若沒有故障發(fā)生,CPU2將在環(huán)形緩存區(qū)更新并存儲(chǔ)故障前數(shù)據(jù);若有故障發(fā)生,CPU2將在環(huán)形緩存區(qū)更新、存儲(chǔ)故障后數(shù)據(jù)并在存儲(chǔ)完后告知CPU1,CPU1將禁止CPU2更新環(huán)形緩存區(qū)內(nèi)數(shù)據(jù),同時(shí),將環(huán)形緩存區(qū)內(nèi)數(shù)據(jù)存儲(chǔ)到NOR flash存儲(chǔ)器,待CPU1完成故障信息存儲(chǔ)再通知CPU2更新環(huán)形緩存區(qū)內(nèi)數(shù)據(jù)[7]。

      根據(jù)應(yīng)用的需求,故障記錄方案設(shè)計(jì)要點(diǎn)如下:

      (1)在SDRAM內(nèi)配置環(huán)形緩存區(qū),大小為120 000個(gè)字節(jié),即60 000個(gè)字。存儲(chǔ)20個(gè)16位的變量,每個(gè)變量故障前存儲(chǔ)2 000個(gè)點(diǎn),即存儲(chǔ)空間為2 000個(gè)字;故障后存儲(chǔ)1 000個(gè)點(diǎn),即1 000個(gè)字。

      (2)在NOR Flash內(nèi)配置環(huán)形緩存區(qū),分為41塊。每塊大小為128 KB,存儲(chǔ)一條故障記錄數(shù)據(jù),擦除下一數(shù)據(jù)塊用來存儲(chǔ)40條故障記錄數(shù)據(jù)。

      (3)若無故障,環(huán)形緩存區(qū)持續(xù)更新、存儲(chǔ)故障前數(shù)據(jù);若發(fā)生故障,環(huán)形緩存區(qū)更新存儲(chǔ)故障后數(shù)據(jù)(共計(jì)1 000個(gè)點(diǎn))。

      (4)禁止更新環(huán)形緩存區(qū)內(nèi)數(shù)據(jù),并將環(huán)形緩存區(qū)內(nèi)數(shù)據(jù)存儲(chǔ)到NOR Flash存儲(chǔ)器中。

      根據(jù)應(yīng)用需求,故障記錄模塊需要保存最新的40條故障記錄數(shù)據(jù)。由于本平臺(tái)沒有相應(yīng)操作系統(tǒng)來對(duì)文件進(jìn)行管理,這就要求平臺(tái)能夠記住上一次故障記錄數(shù)據(jù)存放在NOR Flash內(nèi)的位置。本平臺(tái)采用的防掉電連續(xù)存儲(chǔ)方案如下:

      (1)在NOR Flash內(nèi)配置一個(gè)環(huán)形緩存區(qū),將其均分為41塊區(qū)域,依次為扇區(qū)1,......,扇區(qū)41,每塊大小為128 KB。

      (2)依次讀?。◤牡?到第41扇區(qū))41個(gè)扇區(qū)的第1個(gè)字節(jié),若第1個(gè)字節(jié)為0xFF,則表示該扇區(qū)沒有存儲(chǔ)數(shù)據(jù),并將此次故障記錄數(shù)據(jù)存儲(chǔ)到該扇區(qū)。

      (3)擦除步驟(2)中存儲(chǔ)故障記錄數(shù)據(jù)扇區(qū)的下一個(gè)扇區(qū)。

      故障記錄流程如圖6所示。圖中,紅色虛線框內(nèi)流程為CPU2核內(nèi)執(zhí)行的將故障記錄數(shù)據(jù)存儲(chǔ)到SDRAM的過程;藍(lán)色虛線框內(nèi)除去紅色虛線框內(nèi)流程外,其他流程為CPU1核內(nèi)執(zhí)行的將故障記錄數(shù)據(jù)從SDRAM存儲(chǔ)到NOR Flash的過程;綠色虛線框內(nèi)流程為防掉電連續(xù)存儲(chǔ)方案。

      圖6 故障記錄流程Fig.6 Fault record flow diagram

      圖6中,CPU1_FLAG=0,表示沒有故障發(fā)生;CPU1_FLAG=1,表示有故障發(fā)生;CPU1_FLAG=2,表示有故障發(fā)生且CPU2已經(jīng)將故障記錄數(shù)據(jù)存儲(chǔ)到SDRAM的環(huán)形緩沖區(qū),此時(shí)CPU1正在將環(huán)形緩沖區(qū)中的數(shù)據(jù)存儲(chǔ)到NOR Flash,并且禁止CPU2向SDRAM的環(huán)形緩沖區(qū)存儲(chǔ)數(shù)據(jù)。CPU2_FLAG=0,表示沒有故障發(fā)生,此時(shí)正在向環(huán)形緩沖區(qū)更新故障前數(shù)據(jù);CPU2_FLAG=1,表示有故障發(fā)生,此時(shí)CPU2正在向環(huán)形緩沖區(qū)存儲(chǔ)故障后數(shù)據(jù);CPU2_FLAG=2,表示有故障發(fā)生且CPU2已經(jīng)將故障記錄數(shù)據(jù)存儲(chǔ)到SDRAM的環(huán)形緩沖區(qū),此時(shí)正在等待CPU1將環(huán)形緩沖區(qū)中的數(shù)據(jù)存儲(chǔ)到NOR Flash。CPU1_FLAG只允許CPU1對(duì)其進(jìn)行寫操作,CPU2只能對(duì)其進(jìn)行讀操作;CPU2_FLAG只允許CPU2對(duì)其進(jìn)行寫操作,CPU1只能對(duì)其進(jìn)行讀操作。

      2.5 程序遠(yuǎn)程加載

      現(xiàn)有的MCU應(yīng)用程序更新的主要過程為:利用仿真器通過MCU的聯(lián)合測試工作組(joint test action group,JTAG)接口將應(yīng)用程序下載到MCU內(nèi)部閃存中,以對(duì)應(yīng)用程序進(jìn)行升級(jí)[8-9]。然而該種更新方式需要拆開控制器才能將仿真器連接到MCU,可操作性不強(qiáng)。另外,控制器若是從主電路取電,在升級(jí)過程中則可能存在安全隱患,也容易出現(xiàn)應(yīng)用程序更新失敗的情況,從而使得程序升級(jí)工作效率偏低[10-11]。因此,本文提出了一種基于以太網(wǎng)通信的可靠、穩(wěn)定、高效的MCU應(yīng)用程序升級(jí)方法。

      本文使用的F28377D芯片包括兩個(gè)內(nèi)核,每個(gè)內(nèi)核都有其獨(dú)立的片內(nèi)RAM和片內(nèi)Flash,供每個(gè)內(nèi)核自身使用[12]。每個(gè)內(nèi)核的片內(nèi)Flash分為兩個(gè)區(qū)間,分別存儲(chǔ)其對(duì)應(yīng)的Boot程序和應(yīng)用程序[13]。內(nèi)核CPU1可與上位機(jī)進(jìn)行以太網(wǎng)通信,通過上位機(jī)實(shí)現(xiàn)將應(yīng)用程序裝載到片內(nèi)FLASH中存儲(chǔ)應(yīng)用程序的區(qū)間[14]。F28377D程序遠(yuǎn)程更新主要分為以下幾個(gè)步驟:

      (1)上位機(jī)通過以太網(wǎng)向F28377D發(fā)出更新請(qǐng)求。

      (2)F28377D控制其內(nèi)核CPU1和內(nèi)核CPU2處于應(yīng)用程序更新狀態(tài)。

      (3)上位機(jī)通過以太網(wǎng)將升級(jí)程序發(fā)送給內(nèi)核CPU1和/或內(nèi)核CPU2。

      (4)MCU根據(jù)接收到的升級(jí)程序?qū)?duì)應(yīng)的應(yīng)用程序進(jìn)行升級(jí)。

      F28377D的內(nèi)核CPU1更新程序詳細(xì)步驟如下:

      (1)上位機(jī)將升級(jí)程序分為多頁數(shù)據(jù)包,并依次將每頁數(shù)據(jù)包發(fā)送給內(nèi)核CPU1。

      (2)內(nèi)核CPU1依次對(duì)數(shù)據(jù)包進(jìn)行頁校驗(yàn)。若頁校驗(yàn)通過,則將該頁數(shù)據(jù)包存儲(chǔ)到內(nèi)核CPU1中;否則上位機(jī)重新發(fā)送對(duì)應(yīng)頁數(shù)據(jù)包。若同一頁數(shù)據(jù)包頁校驗(yàn)3次均不通過,則停止升級(jí)。

      (3)當(dāng)升級(jí)程序的所有頁數(shù)據(jù)包均被存儲(chǔ)于內(nèi)核CPU1中時(shí),內(nèi)核CPU1對(duì)接收到的升級(jí)程序進(jìn)行程序校驗(yàn);若程序校驗(yàn)通過,則上位機(jī)提示升級(jí)程序成功,否則提示升級(jí)程序失敗。

      F28377D的內(nèi)核CPU2更新程序詳細(xì)步驟如下:

      (1)上位機(jī)將升級(jí)程序分為多頁數(shù)據(jù)包,并依次將每頁數(shù)據(jù)包發(fā)送給內(nèi)核CPU1。

      (2)內(nèi)核CPU1將接收到的數(shù)據(jù)包依次發(fā)送給內(nèi)核CPU2。

      (3)內(nèi)核CPU2對(duì)讀取的數(shù)據(jù)包進(jìn)行頁校驗(yàn)。若頁校驗(yàn)通過,則將該頁數(shù)據(jù)包存儲(chǔ)到內(nèi)核CPU2中;否則上位機(jī)重新發(fā)送對(duì)應(yīng)頁數(shù)據(jù)包。若同一頁數(shù)據(jù)包頁校驗(yàn)3次均不通過,則停止升級(jí)。

      (4)當(dāng)升級(jí)程序的所有頁數(shù)據(jù)包均存儲(chǔ)于內(nèi)核CPU2中時(shí),內(nèi)核CPU2對(duì)接收到的升級(jí)程序進(jìn)行程序校驗(yàn);若程序校驗(yàn)通過,則上位機(jī)提示升級(jí)程序成功,否則提示升級(jí)程序失敗。

      3 結(jié)語

      基于目前工業(yè)實(shí)時(shí)控制器平臺(tái)架構(gòu)復(fù)雜、成本高等問題,本文提出并設(shè)計(jì)了基于F28377D的控制系統(tǒng)軟件平臺(tái)方案。該方案不僅滿足了工業(yè)實(shí)時(shí)控制器的功能需求,同時(shí)改變了傳統(tǒng)平臺(tái)的開發(fā)方式,實(shí)現(xiàn)了平臺(tái)的集約型開發(fā),原有平臺(tái)開發(fā)需要3人,每人開發(fā)用時(shí)2個(gè)月,本方案設(shè)計(jì)平臺(tái)只需1人開發(fā),開發(fā)用時(shí)3個(gè)月,縮短了平臺(tái)開發(fā)周期;另外,原有平臺(tái)需要“ARM+FPGA+DSP”3塊芯片,而本方案只需要單片F(xiàn)2837TD芯片,簡化了平臺(tái)數(shù)據(jù)流,控制器降本約30%。該平臺(tái)在空調(diào)螺桿機(jī)變頻器產(chǎn)品上批量裝機(jī)應(yīng)用數(shù)千套,連續(xù)穩(wěn)定無故障運(yùn)行一年以上,驗(yàn)證了該平臺(tái)的可靠性。

      為了滿足工業(yè)實(shí)時(shí)控制器日益增加的應(yīng)用需求,后續(xù)本平臺(tái)可以利用其內(nèi)部協(xié)處理器,將故障診斷及旋變軟解碼等功能布局在協(xié)處理器內(nèi),以實(shí)現(xiàn)單芯片4核控制。

      猜你喜歡
      內(nèi)核以太網(wǎng)數(shù)據(jù)包
      萬物皆可IP的時(shí)代,我們當(dāng)夯實(shí)的IP內(nèi)核是什么?
      強(qiáng)化『高新』內(nèi)核 打造農(nóng)業(yè)『硅谷』
      基于1500以太網(wǎng)養(yǎng)豬場的智能飼喂控制系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
      基于嵌入式Linux內(nèi)核的自恢復(fù)設(shè)計(jì)
      Linux內(nèi)核mmap保護(hù)機(jī)制研究
      SmartSniff
      談實(shí)時(shí)以太網(wǎng)EtherCAT技術(shù)在變電站自動(dòng)化中的應(yīng)用
      電子制作(2017年24期)2017-02-02 07:14:44
      一種90W高功率以太網(wǎng)供電系統(tǒng)的設(shè)計(jì)
      淺談EPON與工業(yè)以太網(wǎng)在貴遵高速公路中的應(yīng)用
      基于Libpcap的網(wǎng)絡(luò)數(shù)據(jù)包捕獲器的設(shè)計(jì)與實(shí)現(xiàn)
      巫山县| 扎兰屯市| 秦皇岛市| 潜山县| 孟津县| 青田县| 镇平县| 宜宾县| 麟游县| 唐海县| 永和县| 兴和县| 昌平区| 平山县| 涡阳县| 乌海市| 禄丰县| 大方县| 汶上县| 北宁市| 赤城县| 西和县| 饶平县| 义乌市| 三江| 蓬安县| 宾川县| 平和县| 房山区| 海盐县| 延边| 登封市| 平乡县| 隆昌县| 依兰县| 得荣县| 梁平县| 泽州县| 缙云县| 界首市| 拉萨市|