基于CAN 总线的矿用传感器远程在线升级功能设计_宋益东.pdf

返回 相似 举报
基于CAN 总线的矿用传感器远程在线升级功能设计_宋益东.pdf_第1页
第1页 / 共4页
基于CAN 总线的矿用传感器远程在线升级功能设计_宋益东.pdf_第2页
第2页 / 共4页
基于CAN 总线的矿用传感器远程在线升级功能设计_宋益东.pdf_第3页
第3页 / 共4页
基于CAN 总线的矿用传感器远程在线升级功能设计_宋益东.pdf_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述:
第 51 卷第 8 期 2020 年 8 月 Safety in Coal Mines Vol.51No.8 Aug. 2020 基于 CAN 总线的矿用传感器远程在线升级 功能设计 宋益东 1,2 (1.煤科集团沈阳研究院有限公司, 辽宁 抚顺 113122; 2.煤矿安全技术国家重点实验室, 辽宁 抚顺 113122) 摘要针对目前煤矿井下矿用传感器现场程序升级困难问题,设计了一种基于 CAN 总线和 IAP 功能的程序远程更新方法, 摆脱了嵌入式软件升级对编程器的依赖。通过对 STM32F103 微 处理器的 Flash 编程方法和程序启动引导方式进行设计,实现了煤矿井下矿用传感器的在线升 级。介绍了整体实现框架、 升级程序结构以及流程, 详细阐述了 IAP 程序更新原理。通过现场应 用验证可实现矿用总线传感器程序在线更新。 关键词 监控系统; CAN 总线; 矿用传感器; 在线升级; 在应用中编程 中图分类号 TD676文献标志码 B文章编号 1003-496X (2020 ) 08-0120-04 Design of Remote Online Upgrade Function of Mine Sensor Based on CAN Bus SONG Yidong1,2 (1.China Coal Technology and Engineering Group Shenyang Research Institute, Fushun 113122, China;2.State Key Laboratory of Coal Mine Safety Technology, Fushun 113122, China) Abstract In view of the difficulties in the field program upgrade of mine sensors in underground coal mines, a remote program update based on CAN bus and IAP function is designed to get rid of the dependence of embedded software upgrade on the programmer. By designing the Flash programming and program starting and guiding mode of STM32F103 microprocessor, the on-line upgrade of mine sensors in underground coal mine is realized. This paper introduces the overall implementation framework, upgrades program structure and process, and elaborates the IAP program update principle. The mine bus sensor program can be updated online by field application verification. Key words monitoring system; CAN bus; mine sensor; online upgrade; in-application programming 矿用传感器是煤矿安全监控系统中最末端的感 知设备,是监控系统中所有的数据来源。目前煤矿 在用模拟量传感器均为数字化智能传感器[1-2], 随着 煤矿开采自动化程度的提高,不可避免的涉及到传 感器固件程序升级问题。传统的方式是传感器部分 或全部从井下拿到地面,固件升级后再返到井下进 行安装。矿用传感器使用量非常大,并且在井下分 布比较分散且大部分在采掘工作面,距离地面中心 站较远,采用传统的方式效率比较低,并且更换甲 烷等传感器需要切断工作面的动力电,给煤矿的安 全生产带来影响, 所以在线升级[3]固件程序是一个 很好的解决方案,在煤矿机电设备检修的间隙, 通 过井下工业环网将需要升级的固件程序下发到监控 分站, 由监控分站通过总线[4-6]发送到传感器, 从而 实现煤矿井下传感器的在线升级。 1矿用传感器在线远程升级组成结构 1.1系统组成 系统主要由地面中心站服务器、 环网交换机、 矿 DOI10.13347/ki.mkaq.2020.08.025 宋益东.基于 CAN 总线的矿用传感器远程在线升级功能设计 [J] .煤矿安全, 2020, 51 (8) 120-123. SONG Yidong. Design of Remote Online Upgrade Function of Mine Sensor Based on CAN Bus [J] . Safety in Coal Mines, 2020, 51 (8) 120-123.移动扫码阅读 基 金 项 目 煤 科 集 团 沈 阳 研 究 院 创 新 引 导 资 助 项 目 (SYYD- 20CK- 004) 120 ChaoXing 第 51 卷第 8 期 2020 年 8 月 Safety in Coal Mines Vol.51No.8 Aug. 2020 图 2传感器组成结构图 Fig.2Sensor structure diagram 图 3片上 Flash 存储器分区 Fig.3Flash memory partition on a chip 用监控分站、矿用传感器及执行器等组成。中心站 服务器与矿用分站通过以太网光纤网络连接,矿用 分站和矿用传感器之间通过 CAN 总线连接, 升级固 件程序通过中心站通过以太网下载到矿用分站中, 矿用分站通过 CAN 总线传输给矿用传感器, 系统组 成结构图如图 1。 1.2矿用传感器 矿用传感器主要由 STM32F103Rx[7]处理器、 稳 压电源电路、 晶振电路、 复位电路、 CAN 总线通信电 路、 ADC 转换外围电路、红外遥控电路及 LEC 显示 电路组成。矿用传感器结构如图 2, STM32F103 为 Cortex-M3[8]内核, 具有成本低、 功耗低、 高性能、 实时 性好等特点。片上资源比较丰富, 包括 1 路 CAN 通 信接口, 5 个 USART 接口、 JTAG 调试口, 4 个 16 位 定时器、 3 路 ADC 通道等;片内具有 256KB 的 Flash 和 48KB 的 SRAM。 3在线升级技术 在线升级是指 MCU 中运行的固件程序在运行 过程中对实现对片内代码存储 Flash 的擦除、编程, 新的固件程序通过 CAN 总线通讯接口下载到 MCU 的 Flash 中, IAP [9-10] 技术可以对存储固件程序的 Flash 区域进行重新烧写然后利用 IAP 功能实现在 线更新矿用传感器固件。因此,利用 IAP 技术可以 方便地通过 CAN 总线通信口对矿用传感器中的固 件程序进行远程更新升级。和传统方式相比,基于 IAP 技术的固件升级不需要到井下替换传感器, 不 需要打开外壳, 不需要使用下载器等。 3.1Flash 存储器分区及在线升级过程 STM32F103RCT6 的片内 Flash 写保护以扇区为 单位, 每扇区 4 KB, 根据 Flash 容量不同, 页大小分 为 1 KB 和 2 KB, 本文用处理器页大小为 2 KB 。也 就是对 FLASH 的编程写入以 2 KB 为单位,本设计 传输协议制定也以此为单位进行数据传输。处理器 片内 256 K 的 Flash 划分为 3 个区域第 1 区域用 来存储 Bootloader 程序,包括 Flash 操作相关程序、 中断向量, 硬件驱动、 通信协议驱动等; 第 2 区域用 来存储正常运行的固件程序;第 3 区域存储固件升 级程序, 片上 FLASH 存储器分区如图 3。根据矿用 传感器固件大小进行容量划分,矿用传感器固件为 28 KB,相对于 256 K 的 Flash 有很大的预留空间, 每一区域中间可以预留一定的空白区域,防止区域 程序重叠。通过修改 STM32F103 的 Bootloader 程序 或工程的链接脚本可以修改程序存储的起始地址。 矿用传感器在出厂时是将 Bootloader 配置程序 烧写到 Flash 的第 1 部分,并对该区域进行读写保 护,防止升级过程中的误操作把 Bootloader 程序擦 除。 第 1 区域引导程序只能通过下载器编程; 第 2 区 域的固件应用程序通过在线方式编程或下载器编 程; 第 3 区域升级更新程序通过 IAP 在线方式编程。 当矿用传感器需要进行固件升级时,用户固件程序 图 1系统组成结构图 Fig.1System composition structure 121 ChaoXing 第 51 卷第 8 期 2020 年 8 月 Safety in Coal Mines Vol.51No.8 Aug. 2020 图 4在线升级流程图 Fig.4Online upgrade flow chart 跳转到 Bootloader 程序, Bootloader 程序不需要对旧 版本的用户固件程序进行擦除,直接将新版本的用 户固件程序通过 CAN 总线接口下载到第 3 区域的 Flash 中, 通过将中断向量表从新映射, 使 Bootloader 程序跳转到第 3 区域进行运行,从而完成固件程序 的更新。 3.2CAN 总线传输协议及效验机制 CAN 总线协议[5]分为远程帧和数据帧, 远程帧 多用于命令传递,数据帧用于数据传输,数据帧格 式分为标准帧格式和扩展帧格式, 标准帧为 11 位标 识符, 扩展帧为 29 位标识符, 设计矿用传感器 CAN 总线通信协议以 CAN2.0A 标准帧为主, 对 CAN2.0A 帧结构进行了从新划分,对仲裁段的标识符和数据 段中的数据场进行了从新划分。CAN2.0A 链路层标 准帧数据结构包括帧起始、仲裁段、控制端、数据 段、 CRC 校验段、 ACK 应答段和帧结束。 CAN 总线在线升级的关键是要设计 CAN 总线 应用层协议, 通信协议设计的重点是 CAN 标识符的 分配与设计, 所设计的应用层协议将 CAN 协议中的 11bit 标识符区域划分为 3 个部分, 标识符区域划分 表见表 1。 在矿用传感器升级协议中, ID10-ID6 这 8 位填 充接收数据传感器地址; ID3-ID1 这 3 位为命令类 型码; ID0 为帧类型占用 1 位,单帧数据用 0 表示, 多帧数据用 1 表示。单帧数据主要应用于升级命令 类, 包括 数据包、 升级申请, 信息应答, 错误应答 等; 多帧数据每帧数据的第 1 个字节为帧序, 第 2 个 字节以后为升级固件数据,构固件程序升级数据格 式见表 2。每个数据包为固定的 1 024 字节数据, 当 接收完 2 包数据后进行 FLASH 写入操作, 这是因为 利用 IAP 技术进行擦除或者写入时,每次对片上 FLASH 编程的字节数为固定的 2 048 字节。 4在线升级程序流程 矿用传感器在线升级流程如图 4。 在正常执行应用程序的过程中,当接收到矿用 分站固件升级指令后,程序跳转到 Bootloader 执行 IAP 程序, 当矿用分站接收到返回指令后, 逐帧发送 有效数据到矿用传感器,传感器每接收 1 帧升级数 据都会检验其目标地址合法性、数据完整性等信 息,对于有效的升级固件数据,系统将按照目标地 址写入 SRAM 的待写入区。 当接收 2 包固件数据为 2 048 字节后, 为了节省 SRAM 资源占用, 将 1 页 2 KB 数据写入 FLASH,待写入成功后, 返回写入成功 信息给矿用分站, 分站继续发送固件数据, 一直到所 以固件程序发送完成。待更新代码全部写入备份区 后, 通过更新中断向量表从新映射, 实现程序指针跳 转到新的固件 main 函数执行,实现程序的平稳过 度。在接收数据的过程中如果有错误指令信息, 分 站则重新发送出现错误的数据帧。 如果在升级过程中传感器掉电、通信中断或者 通信超时等造成在线升级失败时,矿用传感器会继 续执行第 2 区域固件程序,仍然能按照原有用户程 序继续正常运行。 5结语 结合全数字化监控系统现有网络结构,工业以 表 1标识符区域划分表 Table 1Identifier area division table ID10~ID4 (8 bit ) ID3~ID1 (3 bit ) ID0 (1 bit ) 传感器地址命令类型帧类型 0 单帧 1 多帧 表 2固件程序升级数据格式 Table 2Firmware program upgrade data at 1 byte2 byte3 byte4 byte5 byte6 byte7 byte8 byte 帧序 帧序 数据 数据 数据 数据 数据 数据 数据 数据 数据 数据 数据 数据 数据 数据 122 ChaoXing 第 51 卷第 8 期 2020 年 8 月 Safety in Coal Mines Vol.51No.8 Aug. 2020 测记录系统 5 个组成部分对矿用气相色谱仪进行了 详细阐述。随着技术的提高,矿用气相色谱仪的配 置也得到不断的提升, 其分析精度、 分离效率、 重现 性均有提高,矿用气相色谱仪的分析时间已经由最 早的 15 min 缩短至现在的 7 min,而国外企业生产 的快速分析气相色谱仪已经可以实现 2 min 内分析 完成 1 个样品。国家对煤矿安全生产的重视程度越 来越高,在煤矿通风防灭火、瓦斯灾害治理等方面 均离不开矿用气相色谱仪的使用,因此了解矿用气 相色谱仪的主要构成及各组成部分的功能,并能够 解决在日常使用遇到的各种问题,对促进煤矿的安 全生产工作具有非常重要的作用。 参考文献 [1] 郭冰.气相色谱仪及其应用 [J] .石油化工自动化, 2007 (5) 88-89. [2] 张鹏飞.气相色谱仪在通风防灭火上的应用 [J] .矿业 装备, 2018 (2) 42-43. [3] 武日锋.气相色谱仪在煤矿中的应用 [J] .山东煤炭科 技, 2013 (5) 78-80. [4] 朱海军.新型便携式气相色谱仪在矿山救援中的应用 [J] .煤炭科学技术, 2013 (7) 155-156. [5] 张军杰.矿用气相色谱仪气路系统的优化 [J] .煤矿安 全, 2016, 47 (5) 111-114. [6] 张军杰.Agilent 3000A 微型气相色谱仪在矿井气体分 析中的应用 [J] .工矿自动化, 2010 (6) 106-108. [7] 苏垒, 靳斌, 毛秀芳, 等.热导检测器精密恒流源的设 计与实现 [J] .微型机与应用, 2011, 30 (14) 17-18. [8] 张云, 陶芊.常规氢火焰离子化检测器用于便携式气 相色谱仪可行性的讨论 [J] .化工自动化及仪表, 2017 (2) 147-151. [9] 张军杰, 李长录, 于文海, 等.煤矿束管监测系统的应 用 [J] .煤矿安全, 2010, 41 (6) 84-86. [10] 房文杰, 李长录.矿用束管监测系统工作站的分析比 较与发展趋势 [J] .工矿自动化, 2012 (4) 55-57. 作者简介 房文杰 (1981) , 女, 辽宁抚顺人, 工程师, 硕士, 2012 年毕业于煤炭科学研究总院,从事煤矿安全技 术方面的管理和科研工作。 (收稿日期 2020-01-10; 责任编辑 李力欣) (上接第 119 页) 太网总线的方式,设计了基于 CAN 总线的矿用传 感器远程在线升级功能, 制定了 CAN 总线应用层通 信协议。利用以太网网络节点上的矿用分站,使得 矿用传感器的固件更新更加高效方便,降低设备维 护成本,提高了系统的稳定性。通过将处理器片上 FLASH 合理分区及固件程序数据分块传输等方式, 实现了即使升级出现错误时也能保证传感器的稳定 运行。实验测试证明,该技术方案具有较好的可行 性、 稳定性和可靠性, 可以广泛地应用于 CAN 总线 式嵌入式固件程序升级。 参考文献 [1] 煤安监函[2016] 5 号煤矿安全监控系统升级改造技 术方案 [A] . [2] AQ 62012019 煤矿安全监控系统通用技术要求 [S] . [3] 李光学, 郭燕红, 李超, 等.基于 STM32 的高可靠 IAP 在线烧写设计 [J] .电子测量技术, 2018, 41 (17) 105. [4] 张涛, 薛鹏骞, 蒋静坪.基于 CAN 总线的煤矿安全监 测监控系统的设计 [J] .煤炭科学技术, 2007, 35 (6) 46-48. [5] 王邦继, 刘庆想, 李相强, 等.CAN 总线应用层协议的 研究与实现 [J] .计算机工程与应用, 2011, 47 (20) 14-16. [6] 王建斌, 江冰.基于 CAN 总线节点的远程在线升级系 统设计 [J] .单片机与嵌入式系统应用, 2015 (7) 26. [7] 彭刚, 徐庆江, 张崇金, 等.基于 STM32 单片机的 RS485 总线分布式数据采集系统设计 [J] .伺服控制, 2011 (2) 64-67. [8] 朱传宏, 沈严, 颜云松, 等.基于 Cortex-M3 的引导程 序分析与设计 [J] .计算机与数字工程, 2012, 40 (10) 58-59. [9] 李兴鹤, 蔡亮, 宋吉波, 等.STM32 用户基于 IAP 的程 序更新技术 [J] .单片机与嵌入式系统应用, 2012, 12 (1) 74-75. [10] 康燕萍, 程小辉, 黄鹏.基于 STM32 系列电子产品的 IAP 研究 [J] .现代电子技术, 2017, 40 (22) 142-144. 作者简介 宋益东 (1978) , 山东梁山人, 本科, 2003 年毕业于黑龙江科技学院,煤科集团沈阳研究院有限公司 测控技术研究院副院长,主要从事煤矿安全监控系统、 仪 器仪表科研、 产品开发和生产工作。 (收稿日期 2020-06-04; 责任编辑 李力欣) 123 ChaoXing
展开阅读全文

资源标签

最新标签

长按识别或保存二维码,关注学链未来公众号

copyright@ 2019-2020“矿业文库”网

矿业文库合伙人QQ群 30735420