发明名称 一种臂架泵车智能控制装置的用户程序远程多点更新方法
摘要 本发明公开了一种臂架泵车智能控制装置的用户程序远程多点更新方法,基于臂架泵车中通过CAN总线连接了多台智能控制装置的控制系统,通过上位机连接这个控制系统中的任何一台智能控制装置将最新的用户程序同时或有选择的更新到该系统其它所有的智能控制装置中。本发明提供了一种简单、节约维护成本、使用方便、可靠性好、稳定性强的用户程序远程更新方法。
申请公布号 CN102799154A 申请公布日期 2012.11.28
申请号 CN201210258728.5 申请日期 2012.07.25
申请人 湖南先步信息股份有限公司 发明人 胡炎良;戴侃;邓君;陆坚
分类号 G05B19/418(2006.01)I;G06F9/445(2006.01)I 主分类号 G05B19/418(2006.01)I
代理机构 长沙市融智专利事务所 43114 代理人 黄美成
主权项 一种臂架泵车智能控制装置的用户程序远程多点更新方法,其特征在于,在臂架泵车中,多台智能控制装置通过CAN总线相连,上位机与其中一台智能控制装置通信连接;与上位机直接相连的智能控制装置记为第一智能控制装置;将每一个智能控制装置的RAM划分出了4个缓冲区,分别是缓冲区A,缓冲区B,缓冲区C和缓冲区D;缓冲区A用于数据信息的接收缓存,缓冲区B用于数据信息的发送缓存,缓冲区C用于确认信息的接收缓存,缓冲区D用于确认信息的发送缓存;用户程序远程多点更新方法的步骤如下:步骤1:从上位机接收串口报文:上位机向与上位机连接的智能控制装置发送串口报文,该智能控制装置接收到串口报文后,首先比较串口报文中的设备ID号是否与本智能控制装置的ID相同,如果相同,说明本串口报文是发送给本智能控制装置的,转步骤2;如果不同,转步骤3;步骤2:与上位机连接的智能控制装置的程序更新:通过报文中的数据类型标示符来判定接收到的报文是否是程序更新报文,如果是程序更新报文,则程序更新报文通过缓冲区A解析处理后获得用户程序更新数据,并将用户程序更新数据写入本智能控制装置的FLASH中,再进行本智能控制装置的用户程序更新;返回步骤1;如果不是程序更新报文,则不进行后续的程序更新步骤,并返回步骤1等待接收下一个串口报文;步骤3:更新其余分布的智能控制装置的用户程序:其余分布的智能控制装置是指不与上位机直接连接的智能控制装置;与上位机连接的智能控制装置将串口报文拆分成CAN报文组并存放于缓冲区B,再将CAN报文组中所有的CAN报文都通过CAN总线发送给该串口报文中的设备ID号对应的智能控制装置,该智能控制装置记为智能控制装置i;CAN报文组中的每一个CAN报文均有一个字节用于表示该CAN报文在CAN报文组中的序号;【在CAN报文组中的第一个报文(即开始报文中)的第三个字节来表示CAN报文组中的CAN报文的个数。】智能控制装置i每接收到CAN报文组中一个CAN报文后,首先判断该CAN报文是否是针对本智能控制装置信息的CAN报文,如果是则接收该CAN报文并将该CAN报文放置于缓冲区A,否则丢弃接收到的CAN报文;智能控制装置i在每接收一个CAN报文时记录该CAN报文序号,并根据记录的序号来确定是否有CAN报文丢失,如果有则根据序号 要求重传丢失的报文;当所有的CAN报文齐全,则按照该序号的顺序将CAN报文的数据依次存入缓冲区A中;缓冲区A再将CAN报文的数据写入FLASH中,以完成智能控制装置用户程序的更新;返回步骤1,直到每一个智能控制装置的程序或预定的所有智能控制装置都获得更新则停止程序更新过程;智能控制装置i完成程序更新后,通过缓冲区D回送一个确认报文组给与第一智能控制装置,第一智能控制装置将接收的确认报文组存放于缓冲区C,再通过缓冲区B将确认报文组返回给上位机,使得上位机获知各智能控制装置程序更新的状况。
地址 410116 湖南省长沙市湖南环保科技园兴业路18号