一种智能仪表远程烧录系统的制作方法

文档序号:17924597发布日期:2019-06-15 00:19阅读:293来源:国知局
一种智能仪表远程烧录系统的制作方法

本发明涉及工程机械车辆终端系统,具体为一种智能仪表远程烧录系统。



背景技术:

车载终端设备的功能会随着用户需求的变化而改变,尤其是工程机械车载终端所处的环境较为恶劣,车载终端分布较广,遍及全国各地。使用设备上预留的通信口进行烧录需要耗费极大地人力物力财力,升级维护较为困难同时也增加了极大地成本,而且如果采用不够合理的远程烧录流程,烧录过程中出现异常将导致终端设备无法正常运行,进而严重影响人们的正常工作和生活,因此远程烧录功能在接下来的车载设备升级维护中将扮演越来越重要的角色,同时对于远程烧录的安全性以及稳定性的要求也将越来越高。在烧录的过程中尽量不影响人们的正常工作和生活,更不能出现远程烧录失败导致车载设备甚至是其他设备不能正常运行的情况。

在目前的工程机械中,较少具备远程烧录功能或远程烧录功能不完善,对烧录时可能存在的异常中断情况处理不全,将导致烧录失败进而影响设备的正常运行。安全可靠是工程机械设备越来越重要因素。

《工程机械车载监控终端软件远程升级的实现》,[期刊论文]《电子技术应用》-2015年第4卷第5期-林晓松,陈惠滨,林少芬,江小霞;该方案也运行于车载终端的bootloader程序,通过cdma无线网络接收平台发送的数据,完成对应用程序flash区域的更新写入,但该方案中未对可能出现的误操作以及烧录过程中的异常断线进行处理,烧录中断将导致设备无法正常运行,恶劣条件下将严重影响生产和生活。

《车载终端远程升级系统的设计与实现》,[期刊论文]《工业控制计算机》-2014年第27卷第1期-吴静,叶桦,孙晓洁;该方案在烧录时将旧程序放置于备份区域,将远程烧录程序下载到外部flash区域,写入到外部区域需要外部存储设备的支持,同时写入到外部区域再从外部区域复制到内部flash中存在一定的误写风险,烧录失败是再将备份区域的旧程序复制到userapp,该方案在工序上较为繁琐,也存在一定的风险。

如图1所示,智能仪表运行区执行程序,通过gprs连接至云端平台,云端平台加载智能仪表更新程序,在智能仪表与云端平台握手后,平台下发程序更新包到智能仪表中,智能仪表接收到程序更新包并校验后,将程序更新包存储到智能仪表备份区,在远程烧录完成后,mcu复位进入到智能仪表引导区,将运行区程序擦除,将备份区程序复制到运行区,在复制成功后从运行区启动。若在程序更新过程中出现异常,则更新失败,不会将智能仪表运行区程序擦除,仪表能够继续执行运行区程序,智能仪表能正常运行。在远程烧录过程中由于网络状况,可能存在网络状况差导致网络断开的情况;在进入远程烧录模式后车载终端设备异常断电或sim卡流量用尽导致无法连接网络;在远程烧录过程中由于网络原因导致异常断开,可手动重启智能仪表,智能仪表仍在远程烧录模式中,等待再次连接网络,网络连接成功后再次进行远程烧录操作,若烧录过程中因sim流量用尽后关闭或其他原因导致无法再次连接网络,智能仪表会进行网络连接超时判断,在限定时间内未连接网络,智能仪表主动退出烧录模式,退出后继续执行运行区的程序。

因此,改进现有的智能仪表远程烧录系统,是一个值得研究的问题。



技术实现要素:

为了克服上述现有技术中存在的不足,本发明提供了一种智能仪表远程烧录系统。

本发明的目的是这样实现的:

一种智能仪表远程烧录系统,上电mcu进行各模块初始化,初始化完成后判断是否在远程烧录状态,在远程烧录状态判断烧录是否完成,若未完成则进入联网,若在限定的时间内联网不成功,则退出远程烧录状态,mcu执行原始程序,若在限定时间内联网成功,则进行握手操作,握手成功后云端平台下发更新程序,智能仪表接收到数据并校验后,将数据存储在备份区域,在更新完成后将备份区域的数据复制到运行区域,复制成后从运行区域执行新程序,将在更新时出现异常则手动重启,再次尝试连接。

(1)人为触发远程烧录:是指手动操作使仪表,使其由正常状态变化为远程烧录状态的过程。

(2)系统初始化:在硬件上电或是系统复位后会进行系统初始化,外设配置以及变量初始化。

(3)远程烧录标志:远程烧录标志用于判断是否处于远程烧录状态,非远程烧录状态程序会跳转至运行区执行程序,远程烧录状态则不会立即执行运行区程序。

(4)远程烧录状态:用于判断程序是否下载完成,置位说明程序下载完成复制时出错,需要从备份区复制到运行区,而无需再次下载程序再复制。

(5)进入联网:远程烧录时需将仪表在规定的时间内连接至指定的烧录平台,若长时间无法连接至烧录平台则判断为联网失败,此时仪表会清除远程烧录标志退出远程烧录模式,跳转至运行区执行程序。

(6)握手:在成功连接至烧录平台后,仪表会向平台发送握手信号,平台在接收到握手信号后向仪表发送握手成功回复进行确认,若在限定的时间内未发送握手成功回复则默认为非法进程,此时仪表会清除远程烧录标志退出远程烧录模式,跳转至运行区执行程序。

(7)擦除备份区域,程序写入备份区域:仪表在接收到握手成功回复后进入程序更新状态,仪表会将备份区域的数据清除,同时接收烧录平台下发的程序数据,并将接收到的程序数据依次写入到备份区的指定地址,数据接收完成后平台会下发烧录完成标志,表明此次程序数据传输完成。

(8)程序写入成功判断:由于在烧录过程中存在断电或断网的异常情况,造成远程烧录程序未能完整写入成功。此时需手动上电进行重新烧录,或是等待退出远程烧录模式。

(9)程序写入成功后会清除远程烧录标志,同时将备份区存储的远程烧录程序数据复制到运行区指定区域。

(10)程序拷贝完成判断:在将备份区域数据复制到运行区时,需要一定时间,为保证复制成功,避免可能出现的异常断电等情况,需进行复制成功判断,在复制成功后将远程烧录状态标志清零。若程序复制时出现断电,则在重新上电后直接将备份区程序复制到运行区。

(11)跳转到运行区:在将备份区域程序复制到运行区后,运行区的程序即为远程更新的程序,此时跳转至该区域执行,即可执行程序,远程烧录完成。

积极有益效果:本发明远程烧录时将云端平台数据存储在备份区域,未操作运行区域数据,在烧录异常时可从运行区域继续运行原始程序,在烧录完成后,将备份区域的数据复制到运行区域,再从运行区域执行新程序,可以在很大程度上避免烧录时出现的异常,保证智能仪表能够正常运行。

附图说明

图1为现有烧录系统框图;

图2为本发明的烧录系统流程图;

图3为本发明的远程烧录系统流程框图。

具体实施方式

下面结合附图,对本发明做进一步的说明:

如图2所示,一种智能仪表远程烧录系统,上电mcu进行各模块初始化,初始化完成后判断是否在远程烧录状态,在远程烧录状态判断烧录是否完成,若未完成则进入联网,若在限定的时间内联网不成功,则退出远程烧录状态,mcu执行原始程序,若在限定时间内联网成功,则进行握手操作,握手成功后云端平台下发更新程序,智能仪表接收到数据并校验后,将数据存储在备份区域,在更新完成后将备份区域的数据复制到运行区域,复制成后从运行区域执行新程序,将在更新时出现异常则手动重启,再次尝试连接。

(1)人为触发远程烧录:是指手动操作使仪表,使其由正常状态变化为远程烧录状态的过程。

(2)系统初始化:在硬件上电或是系统复位后会进行系统初始化,外设配置以及变量初始化。

(3)远程烧录标志:远程烧录标志用于判断是否处于远程烧录状态,非远程烧录状态程序会跳转至运行区执行程序,远程烧录状态则不会立即执行运行区程序。

(4)远程烧录状态:用于判断程序是否下载完成,置位说明程序下载完成复制时出错,需要从备份区复制到运行区,而无需再次下载程序再复制。

(5)进入联网:远程烧录时需将仪表在规定的时间内连接至指定的烧录平台,若长时间无法连接至烧录平台则判断为联网失败,此时仪表会清除远程烧录标志退出远程烧录模式,跳转至运行区执行程序。

(6)握手:在成功连接至烧录平台后,仪表会向平台发送握手信号,平台在接收到握手信号后向仪表发送握手成功回复进行确认,若在限定的时间内未发送握手成功回复则默认为非法进程,此时仪表会清除远程烧录标志退出远程烧录模式,跳转至运行区执行程序。

(7)擦除备份区域,程序写入备份区域:仪表在接收到握手成功回复后进入程序更新状态,仪表会将备份区域的数据清除,同时接收烧录平台下发的程序数据,并将接收到的程序数据依次写入到备份区的指定地址,数据接收完成后平台会下发烧录完成标志,表明此次程序数据传输完成。

(8)程序写入成功判断:由于在烧录过程中存在断电或断网的异常情况,造成远程烧录程序未能完整写入成功。此时需手动上电进行重新烧录,或是等待退出远程烧录模式。(9)程序写入成功后会清除远程烧录标志,同时将备份区存储的远程烧录程序数据复制到运行区指定区域。

(10)程序拷贝完成判断:在将备份区域数据复制到运行区时,需要一定时间,为保证复制成功,避免可能出现的异常断电等情况,需进行复制成功判断,在复制成功后将远程烧录状态标志清零。若程序复制时出现断电,则在重新上电后直接将备份区程序复制到运行区。

(11)跳转到运行区:在将备份区域程序复制到运行区后,运行区的程序即为远程更新的程序,此时跳转至该区域执行,即可执行程序,远程烧录完成;

程序初始化:是mcu开始初始化变量及外设,为程序必须基本步骤;

超时判断:为避免智能仪表一直处于远程烧录状态在进行的跳出判断。

如图3所示,mcu进入远程烧录状态,进行数据存储时先将备份区域擦除,在将数据存储在备份区域;程序接收完整后,擦除运行区域,将备份区域数据复制到运行区,再从运行区执行新程序;程序接收不完整或异常中断,重启后跳转到旧程序可正常执行;

开机时进行各个模块的初始化,mcu读取远程烧录状态信息,并判断是否处于远程烧录状态;

当不处于远程烧录状态时mcu从运行区启动执行程序;当处于远程烧录状态时将进行联网,连接至云端平台;连接上云端平台后将进行握手操作,握手成功后平台下发远程更新数据包;智能仪表接收到远程更新数据包后进行校验,校验成功再进行存储;远程烧录异常中断需进行重启操作,再次进行远程烧录操作;远程烧录状态时在限定时间内未成功连接将清除远程烧录状态标志,程序跳转到运行区执行;远程烧录成功后清除远程烧录状态标志,程序跳转到运行区执行新程序;

本发明远程烧录时将云端平台数据存储在备份区域,未操作运行区域数据,在烧录异常时可从运行区域继续运行原始程序,在烧录完成后,将备份区域的数据复制到运行区域,再从运行区域执行新程序,可以在很大程度上避免烧录时出现的异常,保证智能仪表能够正常运行。

对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1