• 
    

    
    

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

      一種支持?jǐn)帱c(diǎn)續(xù)傳的UV LED固化系統(tǒng)升級(jí)方法的研究

      2016-03-17 01:56:17朱正偉周謝益宋文浩黃曉竹

      朱正偉, 張 南, 錢 露, 周謝益, 宋文浩, 黃曉竹

      (常州大學(xué) 信息科學(xué)與工程學(xué)院,江蘇 常州 213164)

      ?

      一種支持?jǐn)帱c(diǎn)續(xù)傳的UV LED固化系統(tǒng)升級(jí)方法的研究

      朱正偉, 張南, 錢露, 周謝益, 宋文浩, 黃曉竹

      (常州大學(xué) 信息科學(xué)與工程學(xué)院,江蘇 常州213164)

      摘要:針對(duì)UV LED固化系統(tǒng)行業(yè)存在的調(diào)試、升級(jí)頻繁導(dǎo)致的維護(hù)及人員成本突出的問題,提出了一種支持?jǐn)帱c(diǎn)續(xù)傳的UV LED固化系統(tǒng)遠(yuǎn)程升級(jí)方法;利用基于STM32系統(tǒng)的IAP技術(shù)配合改良的遠(yuǎn)程升級(jí)程序代替?zhèn)鹘y(tǒng)J-LINK的調(diào)試燒寫,節(jié)約了調(diào)試人員奔赴現(xiàn)場(chǎng)調(diào)試的時(shí)間和成本;由于遠(yuǎn)程傳輸必然有一定的誤碼率,而利用斷點(diǎn)續(xù)傳技術(shù)可以大幅縮減使用GPRS等作為遠(yuǎn)程傳輸模塊時(shí)的流量消耗;考慮到固化系統(tǒng)的安全性,提出利用分包計(jì)算CRC和設(shè)置備用程序存儲(chǔ)區(qū)域的方法加強(qiáng)了升級(jí)系統(tǒng)的可靠性;實(shí)驗(yàn)結(jié)果驗(yàn)證了該方法應(yīng)用于UV LED固化系統(tǒng)遠(yuǎn)程調(diào)試升級(jí)的可行性及安全性,并且可以大幅縮減遠(yuǎn)程通信的流量,這在一定程度上提高了升級(jí)系統(tǒng)的安全性。

      關(guān)鍵詞:斷點(diǎn)續(xù)傳;遠(yuǎn)程升級(jí);STM32;IAP;UV LED

      0引言

      近年來,印刷固化工藝正發(fā)生顛覆性的變化。UV LED(ultraviolet light emitting diode) 固化技術(shù)的出現(xiàn)引起了一場(chǎng)轟動(dòng),并開始廣泛的應(yīng)用到各個(gè)行業(yè)中[1]。市場(chǎng)對(duì)固化設(shè)備的功能、控制要求是變化多樣的。面對(duì)這些要求,大部分廠商依靠建立龐大的售后服務(wù)網(wǎng)絡(luò)來完成固化設(shè)備的程序調(diào)試和升級(jí)。這種方法大幅增加了人員、經(jīng)濟(jì)、時(shí)間等成本。而對(duì)于一些旗艦機(jī)型,雖配備有遠(yuǎn)程升級(jí)的功能,但其使用的傳統(tǒng)IAP升級(jí)方式在無線傳輸過程中不可避免的會(huì)產(chǎn)生誤碼現(xiàn)象,而在升級(jí)過程中一旦發(fā)生錯(cuò)誤就會(huì)導(dǎo)致升級(jí)中斷,再次請(qǐng)求升級(jí)的時(shí)中還會(huì)產(chǎn)生大量的GPRS流量[2]。就目前的GPRS工業(yè)流量卡的價(jià)格而言,這是一筆很大的經(jīng)濟(jì)損失。并且這樣的中斷也容易造成APP程序區(qū)域遭到破壞,大大降低了光固化系統(tǒng)的穩(wěn)定性,產(chǎn)生更大的損失。針對(duì)這樣的現(xiàn)狀,本文提出了一種支持?jǐn)帱c(diǎn)續(xù)傳的UV LED固化系統(tǒng)升級(jí)方法。

      該方法以STM32F10ZET6系列單片機(jī)作為平臺(tái),闡述UV LED固化系統(tǒng)的遠(yuǎn)程升級(jí)程序及其斷點(diǎn)續(xù)傳的優(yōu)化方案。方案利用多數(shù)工業(yè)單片機(jī)都具有的IAP(在線編程)功能,在Bootloader中置入升級(jí)程序[3]。方案不僅解決了大型光固化系統(tǒng)一經(jīng)售出,維護(hù)和程序升級(jí)耗時(shí)耗力的難題,還引入了斷點(diǎn)續(xù)傳的概念,大幅降低了遠(yuǎn)程升級(jí)過程中GPRS流量的使用。且斷點(diǎn)續(xù)傳的程序方案較傳統(tǒng)的升級(jí)方案相比,在單片機(jī)FLASH區(qū)域劃出一塊備份程序區(qū)域,將運(yùn)行程序與新程序在FLASH中隔離開來,提高了整個(gè)升級(jí)系統(tǒng)的穩(wěn)定性。

      1遠(yuǎn)程升級(jí)原理

      1.1IAP原理

      IAP(in application programming),即在線編程,允許用戶程序在運(yùn)行過程中對(duì)內(nèi)部Flash的指定區(qū)域進(jìn)行再次燒寫,燒寫完成后復(fù)位芯片。由Bootloader引導(dǎo),使新燒寫的程序運(yùn)行[4]。其目的是為了在產(chǎn)品銷售后,可通過遠(yuǎn)程模塊對(duì)產(chǎn)品的程序進(jìn)行遠(yuǎn)程調(diào)試或者升級(jí)。

      1.2一般遠(yuǎn)程升級(jí)方案

      程序在單片機(jī)中是以二進(jìn)制文件的形式儲(chǔ)存在單片機(jī)內(nèi)部的Flash空間中。單片機(jī)上電復(fù)位后,從中斷向量表起始地址進(jìn)入Bootloader區(qū),由Bootloader程序控制程序指針跳轉(zhuǎn)到User APP區(qū)域。一般的在線編程原理是在用戶程序的運(yùn)行過程中,接收到升級(jí)指令,程序指針重新指回Bootloader中IAP程序,控制擦除當(dāng)前程序所在的Flash區(qū)域,將接收到的新的APP數(shù)據(jù)寫入到該Flash區(qū)域,完成后程序復(fù)位,經(jīng)Bootloader的引導(dǎo),使新的APP得以運(yùn)行[5]。通常情況下,這樣的升級(jí)過程是沒有問題的。但在實(shí)踐中,這樣的升級(jí)方法存在兩個(gè)重要的缺陷:

      圖2 硬件框圖

      1)一旦升級(jí)過程中出現(xiàn)無法預(yù)料的中斷,則會(huì)導(dǎo)致整個(gè)APP區(qū)域遭到破壞,使得程序無法正常運(yùn)行。即使再次升級(jí)成功,也會(huì)浪費(fèi)很長(zhǎng)的時(shí)間。這是工業(yè)生產(chǎn)中所不允許的。

      2)遠(yuǎn)程數(shù)據(jù)傳輸過程中,會(huì)存在不可避免的誤碼現(xiàn)象。普通的IAP升級(jí)方案沒有考慮數(shù)據(jù)傳輸過程中的誤碼和傳輸中斷等現(xiàn)象的存在,一旦升級(jí)過程中碰到這樣的問題,會(huì)導(dǎo)致APP區(qū)域出現(xiàn)無法預(yù)估的錯(cuò)誤,這樣的錯(cuò)誤在工業(yè)應(yīng)用中會(huì)導(dǎo)致非常嚴(yán)重的問題。一些經(jīng)過優(yōu)化的IAP升級(jí)方法會(huì)采用一些校驗(yàn)算法,在傳輸結(jié)束會(huì)對(duì)整個(gè)APP程序進(jìn)行校驗(yàn)。這些經(jīng)過改良的升級(jí)方法雖然可以一定程度上保護(hù)系統(tǒng)的穩(wěn)定,但再次的重復(fù)升級(jí)會(huì)導(dǎo)致大量的GPRS流量的浪費(fèi),浪費(fèi)了時(shí)間,也增加了成本。

      1.3優(yōu)化遠(yuǎn)程升級(jí)方案

      引入斷點(diǎn)續(xù)傳的概念對(duì)升級(jí)方案進(jìn)行優(yōu)化,可以很好地解決上述一般的遠(yuǎn)程升級(jí)方案的不足。如圖1所示,該方法主要是在原有升級(jí)方案的基礎(chǔ)上重新對(duì)片內(nèi)Flash區(qū)域進(jìn)行劃分。除了IAP必備的Bootloader區(qū)和UserAPP區(qū),另外劃分出升級(jí)參數(shù)保存區(qū)和APP備份區(qū)。升級(jí)數(shù)據(jù)是以包的形式存在的,每個(gè)經(jīng)過校驗(yàn)的數(shù)據(jù)包會(huì)在該數(shù)據(jù)包傳輸完成后寫入APP備份區(qū),而升級(jí)過程中的狀態(tài)及數(shù)據(jù)包的參數(shù)則會(huì)實(shí)時(shí)地保存進(jìn)升級(jí)參數(shù)保存區(qū)[6]。這樣在傳輸過程中,即使發(fā)生意外中斷或者傳輸錯(cuò)誤,APP備份區(qū)的數(shù)據(jù)不可能影響到UserAPP區(qū),因此也不可能對(duì)程序的正常運(yùn)行產(chǎn)生影響[7]。而參數(shù)保存區(qū)中的參數(shù)結(jié)構(gòu)體,會(huì)保存發(fā)生錯(cuò)誤前的升級(jí)狀態(tài)及數(shù)據(jù)包的信息,再次升級(jí)時(shí)經(jīng)過簡(jiǎn)單的校驗(yàn),就會(huì)從繼續(xù)請(qǐng)求斷點(diǎn)發(fā)生時(shí)的數(shù)據(jù)包,而不是再請(qǐng)求傳輸整個(gè)數(shù)據(jù)包。

      圖1 兩種方案Flash規(guī)劃圖

      2系統(tǒng)分析

      2.1系統(tǒng)總體框架

      升級(jí)系統(tǒng)由上位機(jī)、無線設(shè)備及終端設(shè)備組成。如圖2所示,作為終端設(shè)備的UV LED固化設(shè)備,主要包含以下4個(gè)模塊:處理器模塊、通訊模塊、光源驅(qū)動(dòng)模塊以及交互模塊。處理器模塊使用Cortex-M3架構(gòu)的STM32F103ZET6芯片。利用基于BootLoader的IAP結(jié)合上位機(jī)或可選的通信模塊來完成UV LED固化系統(tǒng)遠(yuǎn)程升級(jí)。上位機(jī)通過RS485總線與無線設(shè)備連接,UV LED固化設(shè)備中的STM32芯片和無線模塊通過RS485總線相連。當(dāng)需要升級(jí)程序時(shí),上位機(jī)通過485總線接口給無線模塊傳輸指令,無線設(shè)備收到指令后通過無線網(wǎng)絡(luò)傳輸給UV LED固化設(shè)備的與主控芯片STM32對(duì)接的通信模塊。STM32芯片接收到來自上位機(jī)的升級(jí)指令后開始響應(yīng)上位機(jī)的一系列升級(jí)指令和程序傳輸,最終完成程序的升級(jí)。

      2.2使用STM32F103ZET6芯片的可行性分析

      STM32F103ZET6是一款基于 Cortex-M3核心的處理器。擁有512K 片內(nèi)FLASH及64K片內(nèi)RAM。其512K的FLASH存儲(chǔ)容量可以滿足遠(yuǎn)程升級(jí)中建立斷點(diǎn)續(xù)傳所必須的備份儲(chǔ)存容量要求,且其片內(nèi)FLASH 支持在線編程(IAP)。通訊接口方面,STM32F103ZET6擁有SPI、I2S 、I2C、USART、USB OTG、 CAN、SDIO等接口,幾乎可以滿足所有的遠(yuǎn)程通信需求,為在線升級(jí)提供了豐富的接口選擇。就遠(yuǎn)程升級(jí)的可行性而言,常見微處理器中都包含BootLoader。STM32F103ZET6微處理器支持IAP技術(shù)的首要前提是,它是基于可重復(fù)編程閃存的微處理器。此外STM32微處理器擁有在數(shù)量上、種類上都非常豐富的外設(shè)通信接口,因此在STM32上實(shí)現(xiàn)基于BootLoader的IAP、完成遠(yuǎn)程升級(jí)是完全可行的。

      2.3方案流程

      該方案流程如圖3所示。

      圖3 流程圖

      3方案設(shè)計(jì)

      3.1上位機(jī)與UV LED固化系統(tǒng)升級(jí)交互的設(shè)計(jì)

      升級(jí)程序啟動(dòng)后,上位機(jī)與終端的交互流程如下:

      1)啟動(dòng)上位機(jī),通過UART轉(zhuǎn)GPRS無線模塊建立與終端的數(shù)據(jù)連接;

      2)獲取終端軟件版本號(hào),判斷是否需要升級(jí),若需要?jiǎng)t啟動(dòng)升級(jí);

      3)上位機(jī)請(qǐng)求建立升級(jí)過程,終端記錄升級(jí)標(biāo)志到FLASH的參數(shù)保存區(qū),程序跳轉(zhuǎn)到Bootloader;

      4)終端執(zhí)行FLASH擦除程序,擦除升級(jí)備份區(qū)的文件,并將結(jié)果返回給上位機(jī);

      5)若擦除成功,終端向上位機(jī)請(qǐng)求引導(dǎo)幀,根據(jù)參數(shù)保存區(qū)中保存的上次升級(jí)信息,判斷本次升級(jí)為全新升級(jí),若是則執(zhí)行6),若需要斷點(diǎn)續(xù)傳,則由上位機(jī)根據(jù)上次升級(jí)信息繼續(xù)傳輸數(shù)據(jù)包;

      6)引導(dǎo)幀發(fā)送完畢后,開始按序號(hào)傳輸數(shù)據(jù)幀;每幀數(shù)據(jù)內(nèi)都包含本幀的校驗(yàn)信息,若校驗(yàn)失敗,重新請(qǐng)求本幀數(shù)據(jù),嘗試3次后仍錯(cuò)誤則退出升級(jí)。

      7)所有數(shù)據(jù)幀傳輸完成后,終端請(qǐng)求文件校驗(yàn)幀,同時(shí)終端會(huì)對(duì)已接受到的文件進(jìn)行校驗(yàn),生成校驗(yàn)碼,與上位機(jī)傳輸?shù)男r?yàn)碼做匹配,若成功則執(zhí)行8),失敗則放棄本次升級(jí)。

      8)由上位機(jī)控制關(guān)閉GPRS連接,終端置升級(jí)成功標(biāo)志到參數(shù)保存區(qū),MCU復(fù)位;

      9)Bootloader判斷是否有升級(jí)成功的標(biāo)志,若有則加載新的程序,若無則運(yùn)行源程序;

      10)上位機(jī)獲取終端程序版本號(hào),若更新正確則判斷本次升級(jí)成功。

      3.2Bootloader的設(shè)計(jì)

      Bootload程序是MCU上電后首先運(yùn)行的程序,下載時(shí)需要在Keil的Options選項(xiàng)中設(shè)置IROM1的起始地址為0x08000000。Bootload在完成軟硬件初始化后,讀出存儲(chǔ)在FLASH的參數(shù)保存區(qū)中的由用戶程序標(biāo)記的升級(jí)標(biāo)志。若標(biāo)志位為0x50,則說明沒有升級(jí)需要,執(zhí)行程序跳轉(zhuǎn)指令,運(yùn)行用戶程序。若標(biāo)記為0x05,則調(diào)用升級(jí)程序,引導(dǎo)完成升級(jí)后的MCU復(fù)位,由Bootloader引導(dǎo)運(yùn)行新程序。其中,難點(diǎn)在于跳轉(zhuǎn)程序與FLASH的編程。

      在完成跳轉(zhuǎn)程序時(shí),有兩個(gè)注意點(diǎn):1)在設(shè)置好跳轉(zhuǎn)地址之前,需要調(diào)用庫函數(shù) DisableAllNVIC(),關(guān)閉所有的中斷,防止在跳轉(zhuǎn)過程中出現(xiàn)中斷,導(dǎo)致無法預(yù)估的結(jié)果;2)在跳轉(zhuǎn)之前,不僅需要設(shè)置跳轉(zhuǎn)的地址,還需要根據(jù)用戶程序的首地址初始化用戶程序的堆棧,這里使用庫函數(shù)__set_MSP(*(__IO uint32_t*) ARR)來實(shí)現(xiàn)。

      FLASH編程的設(shè)計(jì)有4個(gè)注意點(diǎn):1)在對(duì)FLASH編程之前,需要關(guān)閉所有中斷,通過調(diào)用__disable_irq()函數(shù)來實(shí)現(xiàn);2)寫入FLASH之前,需要調(diào)用庫函數(shù)FLASH_Unlock()來關(guān)閉MCU的FLASH寫保護(hù);3)對(duì)MCU的FLASH擦除是塊擦除,最小擦除單位為2K,因此分區(qū)的大小需要是2K的倍數(shù),否則會(huì)導(dǎo)致擦除失敗,調(diào)用的是庫函數(shù)Flash_SectorErase(); 4)對(duì)FLASH寫入的最小單位是字,是32位的,不滿32位的要補(bǔ)充,調(diào)用的庫函數(shù)是FLASH_ProgramWord()。

      3.3斷點(diǎn)續(xù)傳機(jī)制

      斷點(diǎn)續(xù)傳機(jī)制,指的就是從上一次傳輸中斷的節(jié)點(diǎn)處繼續(xù)數(shù)據(jù)的傳輸。該機(jī)制可以避免在升級(jí)中出現(xiàn)意外中斷導(dǎo)致的升級(jí)終止,大大提高了升級(jí)效率,減少了傳輸時(shí)的流量。要完成這一功能,就需要中斷系統(tǒng)記錄中斷節(jié)點(diǎn)的位置。因此要求傳輸方將程序固件分幀傳輸,并對(duì)每幀按序編號(hào)。根據(jù)分幀按序傳輸?shù)囊?,本方案設(shè)計(jì)了引導(dǎo)幀和數(shù)據(jù)幀。引導(dǎo)幀負(fù)責(zé)告知固件的分幀信息,數(shù)據(jù)幀除傳輸數(shù)據(jù)外,還需要向終端告知當(dāng)前的數(shù)據(jù)幀編號(hào)以及校驗(yàn)信息。終端在每一幀接受完畢后,都會(huì)將當(dāng)前的數(shù)據(jù)狀態(tài)保存進(jìn)Flash中的參數(shù)保存區(qū)。升級(jí)恢復(fù)后,Bootloader引導(dǎo)讀出Flash參數(shù)保存區(qū)的升級(jí)標(biāo)志、配置參數(shù)以及上次中斷處的數(shù)據(jù)幀序號(hào),從而保證升級(jí)過程的繼續(xù)完成。

      3.3.1引導(dǎo)幀的設(shè)計(jì)

      表1 引導(dǎo)幀成員說明

      引導(dǎo)幀主要由幀頭、功能號(hào)、寄存器地址、文件總幀數(shù)、文件大小、校驗(yàn)碼、幀尾組成。其中幀頭、功能號(hào)、寄存器地址、校驗(yàn)碼和幀尾為通信幀的固定格式。幀頭和幀尾分別是0x5A和0xA5;功能號(hào)主要用于區(qū)分該幀的讀寫狀態(tài);寄存器地址用作MCU判斷當(dāng)前幀的對(duì)應(yīng)操作;校驗(yàn)碼對(duì)本幀的所有數(shù)據(jù)做16位MODELBUS協(xié)議的CRC校驗(yàn),得到2 Bit的十六進(jìn)制碼。文件總幀數(shù)是上位機(jī)解析升級(jí)文件后得到的總數(shù),每幀最多包含1 Kbyte的數(shù)據(jù),文件末尾剩余數(shù)據(jù)(不足1 Kbyte)按1 Kbyte算,不足的byte用0xFF填充。文件大小為文件的總byte數(shù)。

      3.3.2數(shù)據(jù)幀的設(shè)計(jì)

      表2 數(shù)據(jù)幀成員說明

      除固定格式的數(shù)據(jù)外,數(shù)據(jù)幀主要參數(shù)為序號(hào)、本幀文件長(zhǎng)度、文件數(shù)據(jù)等。序號(hào)為本幀的編號(hào),這個(gè)編號(hào)在終端接收后會(huì)保存到升級(jí)狀態(tài)的結(jié)構(gòu)體中,是實(shí)現(xiàn)斷點(diǎn)續(xù)傳的關(guān)鍵;本幀文件長(zhǎng)度則是本幀中屬于程序數(shù)據(jù)的大小,一般為1 Kbyte,在文件的末尾不滿1 Kbyte的部分指示該幀的有效數(shù)據(jù)大??;文件數(shù)據(jù)是升級(jí)程序文件的有效二進(jìn)制數(shù)據(jù)。

      3.4UV LED綜合控制系統(tǒng)上位機(jī)的設(shè)計(jì)

      Visual Basic提供大量API接口和控件,具有模塊化和開發(fā)速度快等特點(diǎn),故采用Visual Basic語言進(jìn)行上位機(jī)編寫。上位機(jī)具有UV LED固化機(jī)監(jiān)控、自動(dòng)設(shè)置串口、解析分包升級(jí)文件、生成CRC校驗(yàn)碼、按數(shù)據(jù)幀格式發(fā)送升級(jí)文件、讀取版本號(hào)等功能。當(dāng)需要升級(jí)時(shí),將無線傳輸設(shè)備的RS232接口連接到電腦,上位機(jī)會(huì)自動(dòng)識(shí)別端口號(hào),打開在線升級(jí)程序文件后開始一鍵升級(jí),先發(fā)送引導(dǎo)幀再發(fā)送數(shù)據(jù)幀,發(fā)送的狀態(tài)及下位機(jī)的應(yīng)答都會(huì)實(shí)時(shí)呈現(xiàn)在狀態(tài)框中。升級(jí)成功后,上位機(jī)會(huì)自動(dòng)讀取一次當(dāng)前下位機(jī)的版本號(hào),以進(jìn)一步校驗(yàn)升級(jí)是否成功。上位機(jī)界面如圖4所示。

      圖4 上位機(jī)運(yùn)行圖

      4實(shí)驗(yàn)結(jié)果與分析

      本系統(tǒng)實(shí)現(xiàn)了支持?jǐn)帱c(diǎn)續(xù)傳的系統(tǒng)遠(yuǎn)程升級(jí)的過程。下面根據(jù)采用和未采用斷點(diǎn)續(xù)傳機(jī)制等兩種方式對(duì)比進(jìn)行測(cè)試。測(cè)試所使用的平臺(tái)是帶有GPRS模塊的UV LED系統(tǒng)控制板和裝有上位機(jī)軟件和SIM900 通信模塊的PC機(jī)(CPU主頻為四核2.5 GHz,內(nèi)存為4 GB,Win7系統(tǒng))。測(cè)試升級(jí)文件類型為.bin,大小為33 832Byte,測(cè)試次數(shù)為50次。為了減少測(cè)試的誤差,本測(cè)試設(shè)計(jì)使用上位機(jī)軟件計(jì)時(shí),按下升級(jí)按鈕開始計(jì)時(shí)間、流量,PC接收到下位機(jī)回送升級(jí)成功標(biāo)志停止計(jì)時(shí)間、流量;計(jì)時(shí)停止后,將時(shí)間值傳送給上位機(jī)(使用VB平臺(tái)制作)保存。整個(gè)升級(jí)過程均采用軟件計(jì)時(shí),減少人工計(jì)時(shí)的誤差。

      表3 兩種方案的測(cè)試數(shù)據(jù)

      由表3可以看出,在正常環(huán)境下,是否采用斷點(diǎn)續(xù)傳機(jī)制,對(duì)升級(jí)的時(shí)間及流量消耗幾乎沒有影響。但當(dāng)傳輸環(huán)境越來越惡劣,斷點(diǎn)續(xù)傳機(jī)制就會(huì)發(fā)揮較大的作用。應(yīng)用最廣泛的工業(yè)環(huán)境下,此時(shí)的干擾主要是工業(yè)的惡劣電磁環(huán)境以及線纜超長(zhǎng)而導(dǎo)致的傳輸問題,在50次的實(shí)驗(yàn)中,經(jīng)常會(huì)發(fā)生數(shù)據(jù)誤碼,在普通的升級(jí)機(jī)制下,一旦出現(xiàn)錯(cuò)誤就重新請(qǐng)求升級(jí),這樣雖然防范了數(shù)據(jù)誤碼導(dǎo)致的系統(tǒng)嚴(yán)重錯(cuò)誤,但是會(huì)大大提高升級(jí)時(shí)間和GPRS流量,且升級(jí)包越大,誤碼越多。

      而引入了斷點(diǎn)續(xù)傳機(jī)制的升級(jí)方案,一旦傳輸出現(xiàn)錯(cuò)誤(或數(shù)據(jù)校驗(yàn)失敗),則會(huì)記錄當(dāng)前數(shù)據(jù)幀的序號(hào)并重新請(qǐng)求該幀數(shù)據(jù),大大減少了升級(jí)的時(shí)間及寶貴的流量消耗,并有效減少對(duì)FLASH的反復(fù)擦寫,提高了機(jī)器壽命。

      選取UV LED固話系統(tǒng)最常應(yīng)用的工業(yè)環(huán)境下,50次測(cè)試所得到兩種方案的流量消耗對(duì)比如圖5所示。其中采用斷點(diǎn)續(xù)傳機(jī)制的流量消耗幾乎接近正常環(huán)境下的流量消耗,且非常穩(wěn)定。而未采用斷點(diǎn)續(xù)傳機(jī)制的方案,則會(huì)由于每次測(cè)試出現(xiàn)的誤碼次數(shù)與時(shí)間節(jié)點(diǎn)的不同,而導(dǎo)致每次升級(jí)所消耗的流量有很大的浮動(dòng)。

      圖5 兩種方案的數(shù)據(jù)對(duì)比圖

      5結(jié)束語

      由于固化行業(yè)的特殊性,技術(shù)人員需要經(jīng)常根據(jù)不同的流水線調(diào)試固化設(shè)備的程序。本文提出了性能可靠的遠(yuǎn)程升級(jí)方案,不再需要技術(shù)人員奔赴各個(gè)工業(yè)現(xiàn)場(chǎng)進(jìn)行程序的調(diào)試和升級(jí),極大程度上減少了維護(hù)成本和調(diào)試周期,帶來經(jīng)濟(jì)和時(shí)間的利益。本文通過實(shí)際應(yīng)用證明支持?jǐn)帱c(diǎn)續(xù)傳的UV LED固化系統(tǒng)升級(jí)方法經(jīng)濟(jì)效益明顯且安全可靠,并對(duì)類似的工業(yè)嵌入式系統(tǒng)的程序升級(jí)具有一定的通用的意義。

      參考文獻(xiàn):

      [1] 孫文博. UV-LED 點(diǎn)光源照射器驅(qū)動(dòng)電源的研究[D]. 成都:電子科技大學(xué), 2012.

      [2] 張萌. 基于 ISP/IAP 和 CAN 總線的遠(yuǎn)程升級(jí)系統(tǒng)研制[D]. 青島:中國(guó)海洋大學(xué), 2013.

      [3] 姜曉梅, 李祥和, 任朝榮, 等. 基于 ARM 的 IAP 在線及遠(yuǎn)程升級(jí)技術(shù)[J]. 計(jì)算機(jī)應(yīng)用, 2008, 28(2): 519-521.

      [4] 周天兵, 劉國(guó)忠. 單片機(jī)程序遠(yuǎn)程升級(jí)技術(shù)[J]. 儀表技術(shù), 2011, 9: 010.

      [5] 唐湘, 孫益強(qiáng), 秦霆鎬. 酒店客房控制系統(tǒng)固件遠(yuǎn)程升級(jí)的設(shè)計(jì)與實(shí)現(xiàn)[J]. 儀表技術(shù), 2015, 1: 012.

      [6] 陳艷, 劉宏立, 劉述鋼. 一種電力線載波路由遠(yuǎn)程升級(jí)方法[J]. 計(jì)算機(jī)科學(xué), 2013, 40(10): 87-91.

      [7] 常賽. 基于專用物聯(lián)網(wǎng)的遠(yuǎn)程更新技術(shù)研究與應(yīng)用[D]. 蘇州:蘇州大學(xué), 2011.

      Research on Method of Upgrade UV LED Curing System Supported Resume Broken Downloads

      Zhu Zhengwei,Zhang Nan,Qian Lu,Zhou Xieyi,Song Wenhao,Huang Xiaozhu

      (College of Information Science and Engingeering, Changzhou University, Changzhou213164,China)

      Abstract:UV LED curing system for the industry, there is troublesome issues, such as: commissioning, upgrade and maintenance and personnel costs frequently lead to propose a support resuming of UV LED curing system upgrade. The use of technology-based STM32 IAP system with improved remote upgrade program to replace traditional J-LINK debug programming, commissioning personnel rushed to save the time and cost of on-site commissioning. Because the remote transmission must have a certain error rate, significantly reduced the use of HTTP to use technology such as GPRS remote transmission module as traffic consumption; take into account the safety of the cured system, proposed the use of subcontractors and set an alternate program to calculate CRC store a regional approach to strengthen the reliability of the system upgrade. Experimental results show the method is applied to UV LED curing system for remote debugging upgrade the feasibility and safety, and that this method can significantly reduce the flow of telecommunications, and to some extent, improve the security upgrade of the system.

      Keywords:resume broken downloads; remote upgrade; STM32; IAP; UV LED

      文章編號(hào):1671-4598(2016)02-0209-04

      DOI:10.16526/j.cnki.11-4762/tp.2016.02.058

      中圖分類號(hào):TP391; TP309

      文獻(xiàn)標(biāo)識(shí)碼:A

      作者簡(jiǎn)介:朱正偉(1963-),男,博士,教授,主要從事嵌入式方向的研究。

      收稿日期:2015-08-17;修回日期:2015-09-23。

      基金名稱:國(guó)家中小企業(yè)創(chuàng)新基金項(xiàng)目(09C26223203878)。

      县级市| 桐城市| 罗山县| 黄大仙区| 陆川县| 重庆市| 象州县| 陆川县| 湖州市| 阿坝县| 古交市| 沐川县| 高阳县| 正安县| 佛冈县| 阳高县| 资阳市| 望江县| 辽源市| 岑溪市| 荔波县| 浦北县| 嘉兴市| 扶绥县| 罗平县| 永定县| 渝中区| 泾阳县| 交城县| 浦县| 酒泉市| 华安县| 罗江县| 榆中县| 阿城市| 霍州市| 改则县| 呼图壁县| 湘潭县| 威海市| 邹城市|