亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于CAN 總線的礦用傳感器遠(yuǎn)程在線升級(jí)功能設(shè)計(jì)

        2020-08-21 08:02:12宋益東
        煤礦安全 2020年8期
        關(guān)鍵詞:標(biāo)識(shí)符固件分站

        宋益東

        (1.煤科集團(tuán)沈陽研究院有限公司,遼寧 撫順113122;2.煤礦安全技術(shù)國家重點(diǎn)實(shí)驗(yàn)室,遼寧 撫順113122)

        礦用傳感器是煤礦安全監(jiān)控系統(tǒng)中最末端的感知設(shè)備,是監(jiān)控系統(tǒng)中所有的數(shù)據(jù)來源。目前煤礦在用模擬量傳感器均為數(shù)字化智能傳感器[1-2],隨著煤礦開采自動(dòng)化程度的提高,不可避免的涉及到傳感器固件程序升級(jí)問題。傳統(tǒng)的方式是傳感器部分或全部從井下拿到地面,固件升級(jí)后再返到井下進(jìn)行安裝。礦用傳感器使用量非常大,并且在井下分布比較分散且大部分在采掘工作面,距離地面中心站較遠(yuǎn),采用傳統(tǒng)的方式效率比較低,并且更換甲烷等傳感器需要切斷工作面的動(dòng)力電,給煤礦的安全生產(chǎn)帶來影響,所以在線升級(jí)[3]固件程序是一個(gè)很好的解決方案,在煤礦機(jī)電設(shè)備檢修的間隙,通過井下工業(yè)環(huán)網(wǎng)將需要升級(jí)的固件程序下發(fā)到監(jiān)控分站,由監(jiān)控分站通過總線[4-6]發(fā)送到傳感器,從而實(shí)現(xiàn)煤礦井下傳感器的在線升級(jí)。

        1 礦用傳感器在線遠(yuǎn)程升級(jí)組成結(jié)構(gòu)

        1.1 系統(tǒng)組成

        系統(tǒng)主要由地面中心站服務(wù)器、環(huán)網(wǎng)交換機(jī)、礦用監(jiān)控分站、礦用傳感器及執(zhí)行器等組成。中心站服務(wù)器與礦用分站通過以太網(wǎng)光纖網(wǎng)絡(luò)連接,礦用分站和礦用傳感器之間通過CAN 總線連接,升級(jí)固件程序通過中心站通過以太網(wǎng)下載到礦用分站中,礦用分站通過CAN 總線傳輸給礦用傳感器,系統(tǒng)組成結(jié)構(gòu)圖如圖1。

        圖1 系統(tǒng)組成結(jié)構(gòu)圖Fig.1 System composition structure

        1.2 礦用傳感器

        礦用傳感器主要由STM32F103Rx[7]處理器、穩(wěn)壓電源電路、晶振電路、復(fù)位電路、CAN 總線通信電路、ADC 轉(zhuǎn)換外圍電路、紅外遙控電路及LEC 顯示電路組成。礦用傳感器結(jié)構(gòu)如圖2,STM32F103 為Cortex-M3[8]內(nèi)核,具有成本低、功耗低、高性能、實(shí)時(shí)性好等特點(diǎn)。片上資源比較豐富,包括1 路CAN 通信接口,5 個(gè)USART 接口、JTAG 調(diào)試口,4 個(gè)16 位定時(shí)器、3 路ADC 通道等;片內(nèi)具有256KB 的Flash和48KB 的SRAM。

        圖2 傳感器組成結(jié)構(gòu)圖Fig.2 Sensor structure diagram

        3 在線升級(jí)技術(shù)

        在線升級(jí)是指MCU 中運(yùn)行的固件程序在運(yùn)行過程中對(duì)實(shí)現(xiàn)對(duì)片內(nèi)代碼存儲(chǔ)Flash 的擦除、編程,新的固件程序通過CAN 總線通訊接口下載到MCU的Flash 中,IAP[9-10]技術(shù)可以對(duì)存儲(chǔ)固件程序的Flash 區(qū)域進(jìn)行重新燒寫然后利用IAP 功能實(shí)現(xiàn)在線更新礦用傳感器固件。因此,利用IAP 技術(shù)可以方便地通過CAN 總線通信口對(duì)礦用傳感器中的固件程序進(jìn)行遠(yuǎn)程更新升級(jí)。和傳統(tǒng)方式相比,基于IAP 技術(shù)的固件升級(jí)不需要到井下替換傳感器,不需要打開外殼,不需要使用下載器等。

        3.1 Flash 存儲(chǔ)器分區(qū)及在線升級(jí)過程

        STM32F103RCT6 的片內(nèi)Flash 寫保護(hù)以扇區(qū)為單位,每扇區(qū)4 KB,根據(jù)Flash 容量不同,頁大小分為1 KB 和2 KB,本文用處理器頁大小為2 KB 。也就是對(duì)FLASH 的編程寫入以2 KB 為單位,本設(shè)計(jì)傳輸協(xié)議制定也以此為單位進(jìn)行數(shù)據(jù)傳輸。處理器片內(nèi)256 K 的Flash 劃分為3 個(gè)區(qū)域:第1 區(qū)域用來存儲(chǔ)Bootloader 程序,包括Flash 操作相關(guān)程序、中斷向量,硬件驅(qū)動(dòng)、通信協(xié)議驅(qū)動(dòng)等;第2 區(qū)域用來存儲(chǔ)正常運(yùn)行的固件程序;第3 區(qū)域存儲(chǔ)固件升級(jí)程序,片上FLASH 存儲(chǔ)器分區(qū)如圖3。根據(jù)礦用傳感器固件大小進(jìn)行容量劃分,礦用傳感器固件為28 KB,相對(duì)于256 K 的Flash 有很大的預(yù)留空間,每一區(qū)域中間可以預(yù)留一定的空白區(qū)域,防止區(qū)域程序重疊。通過修改STM32F103 的Bootloader 程序或工程的鏈接腳本可以修改程序存儲(chǔ)的起始地址。

        圖3 片上Flash 存儲(chǔ)器分區(qū)Fig.3 Flash memory partition on a chip

        礦用傳感器在出廠時(shí)是將Bootloader 配置程序燒寫到Flash 的第1 部分,并對(duì)該區(qū)域進(jìn)行讀寫保護(hù),防止升級(jí)過程中的誤操作把Bootloader 程序擦除。第1 區(qū)域引導(dǎo)程序只能通過下載器編程;第2 區(qū)域的固件應(yīng)用程序通過在線方式編程或下載器編程;第3 區(qū)域升級(jí)更新程序通過IAP 在線方式編程。當(dāng)?shù)V用傳感器需要進(jìn)行固件升級(jí)時(shí),用戶固件程序跳轉(zhuǎn)到Bootloader 程序,Bootloader 程序不需要對(duì)舊版本的用戶固件程序進(jìn)行擦除,直接將新版本的用戶固件程序通過CAN 總線接口下載到第3 區(qū)域的Flash 中,通過將中斷向量表從新映射,使Bootloader程序跳轉(zhuǎn)到第3 區(qū)域進(jìn)行運(yùn)行,從而完成固件程序的更新。

        3.2 CAN 總線傳輸協(xié)議及效驗(yàn)機(jī)制

        CAN 總線協(xié)議[5]分為遠(yuǎn)程幀和數(shù)據(jù)幀,遠(yuǎn)程幀多用于命令傳遞,數(shù)據(jù)幀用于數(shù)據(jù)傳輸,數(shù)據(jù)幀格式分為標(biāo)準(zhǔn)幀格式和擴(kuò)展幀格式,標(biāo)準(zhǔn)幀為11 位標(biāo)識(shí)符,擴(kuò)展幀為29 位標(biāo)識(shí)符,設(shè)計(jì)礦用傳感器CAN總線通信協(xié)議以CAN2.0A 標(biāo)準(zhǔn)幀為主,對(duì)CAN2.0A幀結(jié)構(gòu)進(jìn)行了從新劃分,對(duì)仲裁段的標(biāo)識(shí)符和數(shù)據(jù)段中的數(shù)據(jù)場(chǎng)進(jìn)行了從新劃分。CAN2.0A 鏈路層標(biāo)準(zhǔn)幀數(shù)據(jù)結(jié)構(gòu)包括幀起始、仲裁段、控制端、數(shù)據(jù)段、CRC 校驗(yàn)段、ACK 應(yīng)答段和幀結(jié)束。

        CAN 總線在線升級(jí)的關(guān)鍵是要設(shè)計(jì)CAN 總線應(yīng)用層協(xié)議,通信協(xié)議設(shè)計(jì)的重點(diǎn)是CAN 標(biāo)識(shí)符的分配與設(shè)計(jì),所設(shè)計(jì)的應(yīng)用層協(xié)議將CAN 協(xié)議中的11bit 標(biāo)識(shí)符區(qū)域劃分為3 個(gè)部分, 標(biāo)識(shí)符區(qū)域劃分表見表1。

        表1 標(biāo)識(shí)符區(qū)域劃分表Table 1 Identifier area division table

        在礦用傳感器升級(jí)協(xié)議中,ID10-ID6 這8 位填充接收數(shù)據(jù)傳感器地址;ID3-ID1 這3 位為命令類型碼;ID0 為幀類型占用1 位,單幀數(shù)據(jù)用0 表示,多幀數(shù)據(jù)用1 表示。單幀數(shù)據(jù)主要應(yīng)用于升級(jí)命令類,包括:數(shù)據(jù)包、升級(jí)申請(qǐng),信息應(yīng)答,錯(cuò)誤應(yīng)答等;多幀數(shù)據(jù)每幀數(shù)據(jù)的第1 個(gè)字節(jié)為幀序,第2 個(gè)字節(jié)以后為升級(jí)固件數(shù)據(jù),構(gòu)固件程序升級(jí)數(shù)據(jù)格式見表2。每個(gè)數(shù)據(jù)包為固定的1 024 字節(jié)數(shù)據(jù),當(dāng)接收完2 包數(shù)據(jù)后進(jìn)行FLASH 寫入操作,這是因?yàn)槔肐AP 技術(shù)進(jìn)行擦除或者寫入時(shí),每次對(duì)片上FLASH 編程的字節(jié)數(shù)為固定的2 048 字節(jié)。

        4 在線升級(jí)程序流程

        礦用傳感器在線升級(jí)流程如圖4。

        在正常執(zhí)行應(yīng)用程序的過程中,當(dāng)接收到礦用分站固件升級(jí)指令后,程序跳轉(zhuǎn)到Bootloader 執(zhí)行IAP 程序,當(dāng)?shù)V用分站接收到返回指令后,逐幀發(fā)送有效數(shù)據(jù)到礦用傳感器,傳感器每接收1 幀升級(jí)數(shù)據(jù)都會(huì)檢驗(yàn)其目標(biāo)地址合法性、數(shù)據(jù)完整性等信息,對(duì)于有效的升級(jí)固件數(shù)據(jù),系統(tǒng)將按照目標(biāo)地址寫入SRAM 的待寫入?yún)^(qū)。當(dāng)接收2 包固件數(shù)據(jù)為2 048 字節(jié)后,為了節(jié)省SRAM 資源占用,將1 頁2 KB 數(shù)據(jù)寫入FLASH,待寫入成功后,返回寫入成功信息給礦用分站,分站繼續(xù)發(fā)送固件數(shù)據(jù),一直到所以固件程序發(fā)送完成。待更新代碼全部寫入備份區(qū)后,通過更新中斷向量表從新映射,實(shí)現(xiàn)程序指針跳轉(zhuǎn)到新的固件main 函數(shù)執(zhí)行,實(shí)現(xiàn)程序的平穩(wěn)過度。在接收數(shù)據(jù)的過程中如果有錯(cuò)誤指令信息,分站則重新發(fā)送出現(xiàn)錯(cuò)誤的數(shù)據(jù)幀。

        表2 固件程序升級(jí)數(shù)據(jù)格式Table 2 Firmware program upgrade data format

        圖4 在線升級(jí)流程圖Fig.4 Online upgrade flow chart

        如果在升級(jí)過程中傳感器掉電、通信中斷或者通信超時(shí)等造成在線升級(jí)失敗時(shí),礦用傳感器會(huì)繼續(xù)執(zhí)行第2 區(qū)域固件程序,仍然能按照原有用戶程序繼續(xù)正常運(yùn)行。

        5 結(jié) 語

        結(jié)合全數(shù)字化監(jiān)控系統(tǒng)現(xiàn)有網(wǎng)絡(luò)結(jié)構(gòu),工業(yè)以太網(wǎng)+總線的方式,設(shè)計(jì)了基于CAN 總線的礦用傳感器遠(yuǎn)程在線升級(jí)功能,制定了CAN 總線應(yīng)用層通信協(xié)議。利用以太網(wǎng)網(wǎng)絡(luò)節(jié)點(diǎn)上的礦用分站,使得礦用傳感器的固件更新更加高效方便,降低設(shè)備維護(hù)成本,提高了系統(tǒng)的穩(wěn)定性。通過將處理器片上FLASH 合理分區(qū)及固件程序數(shù)據(jù)分塊傳輸?shù)确绞剑瑢?shí)現(xiàn)了即使升級(jí)出現(xiàn)錯(cuò)誤時(shí)也能保證傳感器的穩(wěn)定運(yùn)行。實(shí)驗(yàn)測(cè)試證明,該技術(shù)方案具有較好的可行性、穩(wěn)定性和可靠性,可以廣泛地應(yīng)用于CAN 總線式嵌入式固件程序升級(jí)。

        猜你喜歡
        標(biāo)識(shí)符固件分站
        淺析5G V2X 通信應(yīng)用現(xiàn)狀及其側(cè)鏈路標(biāo)識(shí)符更新技術(shù)
        基于底層虛擬機(jī)的標(biāo)識(shí)符混淆方法
        佩雷茲獲賽季個(gè)人首個(gè)分站冠軍——2022 F1摩納哥大獎(jiǎng)賽
        世界汽車(2022年6期)2022-07-13 04:25:40
        基于區(qū)塊鏈的持久標(biāo)識(shí)符系統(tǒng)①
        數(shù)字美術(shù)館“數(shù)字對(duì)象唯一標(biāo)識(shí)符系統(tǒng)”建設(shè)需求淺議
        基于固件的遠(yuǎn)程身份認(rèn)證
        圓月前的戰(zhàn)役 2015長(zhǎng)城潤滑油CTCC 中國房車錦標(biāo)賽第六分站
        車迷(2015年11期)2015-08-23 11:48:28
        提取ROM固件中的APP
        電腦愛好者(2015年7期)2015-04-09 08:54:02
        出診量指標(biāo)對(duì)院前急救業(yè)務(wù)的指導(dǎo)作用
        一種通過USB接口的可靠固件升級(jí)技術(shù)
        美女草逼视频免费播放| 国产精品天天狠天天看| 国产精品久久无码不卡黑寡妇| 看全色黄大色大片免费久久久| 国产av一卡二卡日韩av| 亚洲av无码国产精品永久一区| 亚洲人成网站在线观看播放| 精品国产你懂的在线观看| 日韩精品一区二区三区人妻在线| 国产专区一线二线三线码| 大学生被内谢粉嫩无套| 国产呦系列视频网站在线观看| 国产成人精品一区二区不卡| 2019最新中文字幕在线观看| 亚洲碰碰人人av熟女天堂| 蜜桃视频中文在线观看| 久久精品亚洲熟女av麻豆| 国产精品久久国产精品99 | 久久精品国产亚洲av麻豆图片| 欧美性猛交xxxx乱大交丰满| 亚洲av中文aⅴ无码av不卡| 精品亚洲国产日韩av一二三四区| 亚洲精品久久7777777| 日本a级特黄特黄刺激大片 | 精品国产一区二区三区九一色 | 国产男女无遮挡猛进猛出| 天天狠狠综合精品视频一二三区| 亚洲国产精品色一区二区| 欧美精品无码一区二区三区| 精品日韩欧美一区二区在线播放 | 国产一区二区黄色的网站| 中文字幕日韩人妻不卡一区| 亚洲一区综合精品狠狠爱| 久久精品一区二区三区夜夜| 无套熟女av呻吟在线观看| 国产在线观看免费观看| 久久久精品2019免费观看| 91久久偷偷做嫩模影院| 国内露脸少妇精品视频| 思思99热| 亚洲av专区一区二区|