一種基于FlexRay總線的多機程序在線升級方法
【專利摘要】本發(fā)明公開了一種基于FlexRay總線的多機程序在線升級方法,傳統(tǒng)的工業(yè)控制領(lǐng)域中對設(shè)備進(jìn)行應(yīng)用程序升級的方法多為對每個單元進(jìn)行單獨地更新,本發(fā)明多機程序在線升級方法的硬件裝置只需通過一根USB轉(zhuǎn)FlexRay調(diào)試器將MCU單元(下位機)與PC機(上位機)相連便可進(jìn)行多機程序在線升級;本發(fā)明可同時更新多個單元(最多可達(dá)124個單元)的應(yīng)用程序,而且FlexRay總線傳輸速率可達(dá)到8Mbps,并且該多機程序在線升級過程無需專業(yè)人員的參與,便可根據(jù)簡單易懂的上位機界面進(jìn)行正確地操作,從而提高了工業(yè)控制系統(tǒng)的程序升級效率。
【專利說明】-種基于FIexRay總線的多機程序在線升級方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及的是工業(yè)控制領(lǐng)域,特指是一種基于FlexRay總線的工業(yè)控制系統(tǒng)多 機程序在線升級方法。
【背景技術(shù)】
[0002] 傳統(tǒng)的工業(yè)控制領(lǐng)域中對設(shè)備進(jìn)行應(yīng)用程序升級的方法多為對每個單元進(jìn)行單 獨地更新。因此在程序升級過程中須對每個單元都進(jìn)行大量相同的操作,導(dǎo)致大大地降低 了系統(tǒng)的升級效率。雖然近年來也出現(xiàn)了一些多機程序在線升級的方法,但它們大多基于 較低速且較老的總線而設(shè)計出,并且沒有易于操作的人機界面。因此這些程序在線升級的 方法或是因大量重復(fù)的工作,或是因較低的數(shù)據(jù)傳輸速率,又或是沒有直截了當(dāng)?shù)牟僮鹘?面而導(dǎo)致系統(tǒng)升級效率地大大降低。
【發(fā)明內(nèi)容】
[0003] 本發(fā)明的目的在于,提出一種新的工業(yè)控制系統(tǒng)多機程序在線升級的方法。旨在 提供一個簡潔明了易操作的上位機軟件,方便用戶操作;旨在提供一種多機程序升級裝置, 降低用戶負(fù)擔(dān);旨在提供一種高速程序升級系統(tǒng),提高系統(tǒng)升級效率。
[0004] 一種基于FlexRay總線的工業(yè)控制系統(tǒng)多機程序在線升級方法依賴于以下裝置: MCU單元(下位機)、USB轉(zhuǎn)FlexRay調(diào)試器、PC機(上位機);多個MCU單元(下位機)與 PC機(主機)通過USB轉(zhuǎn)FlexRay調(diào)試器相連; 步驟一:當(dāng)系統(tǒng)上電并初始化后,所有下位機單元進(jìn)入BOOTLOADER空間,并等待上位 機發(fā)送的握手命令; 步驟二:上位機通過時間觸發(fā)的方式向下位機發(fā)送握手命令,并等待接收下位機的應(yīng) 答信號。若有接收到至少一個應(yīng)答信號便繼續(xù)進(jìn)行程序更新工作,若未接收到任何應(yīng)答信 號便結(jié)束此次程序更新。
[0005] 步驟三:若下位機單元成功接收到了握手命令,則向上位機發(fā)送一個應(yīng)答信號。若 下位機單元沒有接收到握手命令則下位機單元直接跳轉(zhuǎn)進(jìn)入應(yīng)用程序空間; 步驟四:上位機通過時間觸發(fā)的方式發(fā)送接下去所要發(fā)送的數(shù)據(jù)幀的信息,待發(fā)完后 發(fā)送相對應(yīng)的數(shù)據(jù)幀; 步驟五:下位機單元接收數(shù)據(jù)幀的信息,待接收完后便接收相對應(yīng)的數(shù)據(jù)幀; 步驟六:下位機單元校驗所接收到的數(shù)據(jù)幀,若無誤便根據(jù)接收到的數(shù)據(jù)幀對應(yīng)用程 序空間進(jìn)行相應(yīng)的更新,否則結(jié)束程序; 步驟七:上位機判斷是否已經(jīng)發(fā)送完所有的數(shù)據(jù),若未發(fā)送完則重復(fù)步驟四?步驟七, 若已發(fā)送完則結(jié)束此次程序更新。
[0006] 本發(fā)明的有益效果是:可同時對多個下位機單元進(jìn)行程序在線升級(最大數(shù)量可 以到達(dá)124個從機單元),并且在總線掛接最大數(shù)量的下位機單元下通信速率可達(dá)8Mbps, 而且無需專業(yè)人員的參與便可根據(jù)簡單易懂的上位機界面進(jìn)行正確地操作,提高了工業(yè)控 制系統(tǒng)的程序升級效率。
【專利附圖】
【附圖說明】
[0007] 圖1 :系統(tǒng)硬件連接框圖。
[0008] 圖2:系統(tǒng)運行流程圖。
【具體實施方式】
[0009] 結(jié)合圖1說明本實施方式,本【具體實施方式】由多個MCU單元(下位機)通過USB 轉(zhuǎn)FlexRay調(diào)試器與PC機(上位機)相連; 結(jié)合圖2說明本實施方式,本【具體實施方式】: 步驟一:當(dāng)系統(tǒng)上電并初始化后,所有下位機單元進(jìn)入BOOTLOADER空間,并等待上位 機發(fā)送的握手命令; 步驟二:上位機通過時間觸發(fā)的方式向下位機發(fā)送握手命令,并等待接收下位機的應(yīng) 答信號。若有接收到至少一個應(yīng)答信號便繼續(xù)進(jìn)行程序更新工作,若未接收到任何應(yīng)答信 號便結(jié)束此次程序更新; 步驟三:若下位機單元成功接收到了握手命令,則向上位機發(fā)送一個應(yīng)答信號。若下位 機單元沒有接收到握手命令則下位機單元直接跳轉(zhuǎn)進(jìn)入應(yīng)用程序空間; 步驟四:上位機通過時間觸發(fā)的方式發(fā)送接下去所要發(fā)送的數(shù)據(jù)幀的信息,待發(fā)完后 便發(fā)送相對應(yīng)的數(shù)據(jù)幀; 步驟五:下位機單元接收數(shù)據(jù)幀的信息,待接收完后便接收相對應(yīng)的數(shù)據(jù)幀; 步驟六:下位機單元校驗所接收到的數(shù)據(jù)幀,若無誤便根據(jù)接收到的數(shù)據(jù)幀對應(yīng)用程 序空間進(jìn)行相應(yīng)的更新,否則結(jié)束程序; 步驟七:上位機判斷是否已經(jīng)發(fā)送完所有的數(shù)據(jù),若未發(fā)送完則重復(fù)步驟四?步驟七, 若已發(fā)送完則結(jié)束此次程序更新。
【權(quán)利要求】
1. 一種基于FlexRay總線的多機程序在線升級方法,其特征在于: 步驟一:當(dāng)系統(tǒng)上電并初始化后,所有下位機單元進(jìn)入BOOTLOADER空間,并等待上位 機發(fā)送的握手命令; 步驟二:上位機通過時間觸發(fā)的方式向下位機發(fā)送握手命令,并等待接收下位機的應(yīng) 答信號;若有接收到至少一個應(yīng)答信號便繼續(xù)進(jìn)行程序更新工作,若未接收到任何應(yīng)答信 號便結(jié)束此次程序更新; 步驟三:若下位機單元成功接收到了握手命令,則向上位機發(fā)送一個應(yīng)答信號;若下 位機單元沒有接收到握手命令則下位機單元直接跳轉(zhuǎn)進(jìn)入應(yīng)用程序空間; 步驟四:上位機通過時間觸發(fā)的方式發(fā)送接下去所要發(fā)送的數(shù)據(jù)幀的信息,待發(fā)完后 發(fā)送相對應(yīng)的數(shù)據(jù)幀; 步驟五:下位機單元接收數(shù)據(jù)幀的信息,待接收完后便接收相對應(yīng)的數(shù)據(jù)幀; 步驟六:下位機單元校驗所接收到的數(shù)據(jù)幀,若無誤便根據(jù)接收到的數(shù)據(jù)幀對應(yīng)用程 序空間進(jìn)行相應(yīng)的更新,否則結(jié)束程序; 步驟七:上位機判斷是否已經(jīng)發(fā)送完所有的數(shù)據(jù),若未發(fā)送完則重復(fù)步驟四?步驟七, 若已發(fā)送完則結(jié)束此次程序更新。
【文檔編號】G06F9/445GK104102508SQ201410309744
【公開日】2014年10月15日 申請日期:2014年7月1日 優(yōu)先權(quán)日:2014年7月1日
【發(fā)明者】高明煜, 葉旭君, 曾毓, 黃繼業(yè), 李蕓, 周偉偉 申請人:杭州電子科技大學(xué)