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