CAN总线控制技术及其在洗扫车上的模块化应用
2018-11-28陈增志
陈增志
福建龙马环卫装备股份有限公司环境产业研究院 福建龙岩 364000
1 前言
2 当前洗扫车控制系统存在问题
随着环卫机械的不断发展、其谱系的不断完善,因底盘、副发动机、扫盘结构等不同,可组合成多种型号的洗扫车,原根据不同洗扫车独立设计的控制系统方案已难以满足产品的模块化、标准化设计需求。目前洗扫车控制系统主要存在以下3个问题:
a. 目前洗扫车控制系统有多种形式的操作面板、控制箱,如操作面板与控制箱分开独立设计的天锦底盘车型,操作面板与控制箱集成设计并安装于副座的解放底盘等,这导致了洗扫车的电控箱难以进行标准模块化设计。
b. 目前洗扫车控制系统的人机操作不太理想,人机交互方式并不是很友好,面板与驾驶室内饰不协调,用户在操作上装作业装置时需格外集中注意力。
c. 受限于当前控制系统的输入输出点数,目前控制系统采用控制器控制的功能主要为9种洗扫作业模式,其余控制功能均采用直接开关或继电器控制。对于直接控制的控制信息不便于智慧环卫系统终端模块的采集与监控,且会导致控制系统难以实现模块化管理与设计。
为解决上述存在的问题,本文详细介绍了总线控制系统的组成、功能特点及其通讯协议的设计,并提出基于CAN总线控制技术的洗扫车模块化控制系统。
3 总线控制系统的组成
基于CAN总线的环卫机械控制系统将各功能模块设计成相对独立的总线模块,各模块间采用CAN总线连接通信,通信协议采用标准化的企业标准或国际标准等(如J1939)。具体如图1所示,总线控制系统由主控制器、显示屏、分布式IO、传感器模块及其他功能节点等组成。其中,主控制器模块负责总线系统各模块信息体的集成与主逻辑处理;显示屏模块则主要提供控制系统的人性化操作,用于显示控制系统当前的主要工况状态;传感器模块负责感知系统各作业状态参数;分布式I/O模块负责接收主控制器的指令,并驱动相应的电磁阀或执行元件等;其余总线节点为挂接在总线网络上的其他总线功能模块,用于采集或接收系统的各类控制信息参数,如CAN操作面板模块、发动机ECU模块、无线终端模块等。环卫机械智能控制系统网络拓扑及系统组成如图1所示[2]。
图1 基于CAN总线的环卫机械智能控制系统网络拓扑及系统组成
4 总线通讯协议的设计
CAN通信协议主要描述设备之间基于CAN通信的应用程序信息传递方式[3]。对于环卫控制系统来说,CAN总线控制器的通信层已经定义了包括物理层和数据链路层在内的最下面两层。但没有指定或规定应用层,用户可以自行定义应用层协议,可根据环卫控制系统的实际需求分配与使用CAN报文中的ID标识符、8字节数据。目前常用的国际标准应用层协议有CANopen、J1939等,当前环卫装备控制系统的总线控制节点一般不多,可以根据自身特点及应用需求,设计出高效的应用层标准化协议,如对于电控发动机的控制采用J1939协议,对于上装专用装置的控制则采用企业自定义的标准化协议。具体的协议可从以下几个方面着手设计编制。
4.1 报文标识符的分配
报文标识符的分配,即总线数据信息分类并分配报文ID号时,低地址ID号在总线网络物理层中的优先级更高,适用于响应要求高或关键的信息帧,如总线网络中需要实时控制或反馈信号的发动机油门控制信号、故障信息及各专用作业装置机构的到位信号等;高地址ID号在总线网络物理层中的优先级较低,适用于只监测而不参与实时信号控制的信息帧,如车辆静态信息或发动机水温、油压、油耗等状态信息。
4.2 报文的循环发送与查询发送
为保证关键控制信息的实时性,有参与控制的重要或关键信息帧需采取定时循环广播发送方式,如发动机转速控制TSC1报文、安全动作控制报文;而对于软硬件版本号、车辆配置信息的查询等临时数据服务的信息则主要采用请求发送方式,即进行特定请求、应答信息帧的定义,当某个节点需要某个需请求的信息时,往总线网络中发送请求信息帧,目标节点收到请求节点的参数查询请求帧后,将包含请求参数的反馈信息帧发送回该总线回路中。
米多有些担心鲍泽。他觉得鲍泽可能患上了精神分裂症,而且越来越严重。他突然想起什么,把手伸进了笔筒里,随即心里“咯噔”一跳——录音笔不见了。
4.3 总线“心跳”机制设计
当某一个或部分总线节点退出总线网络后,总线网络中其他节点相应的接收数据缓冲区的数据作复位处理,对于涉及安全方面的信息帧还需进行相应的逻辑互锁设计,以有效防止数据丢失不一致造成非期望事件或安全事故的发生。因此,一般总线网络系统的各通信节点都会把某一特定的信息帧中的某一个位设计成代表该节点是否在线的“心跳”信息,各总线节点正常上线工作时会固定周期发送“心跳”信息帧,“心跳位”在每个发送周期高低电平变化一次。这样,如果在超过发送周期的一定时间内某个节点的“心跳”信息位处于恒定值不变,则可以判断该节点已退出总线网络,进而通过故障预警机制在人机界面中进行显示或提示,方便线路故障的排除,同时其余节点按预先设计的总线掉线机制做出相应的事件处理。
5 CAN总线在洗扫车模块化控制系统中的实际应用
CAN总线及其相关技术给洗扫车控制带来了一个崭新的历程,CAN总线使系统设计变得更加灵活化,信息的传输质量更好,在CAN总线技术在洗扫车模块化控制应用中有巨大的优势。下面以洗扫车为例,介绍CAN总线系统在洗扫车模块化电控系统中的应用。
5.1 洗扫车模块化控制系统方案及系统框图
洗扫车模块化控制系统方案框图如图2所示。具体地,综合考虑到不同底盘、不同副发动机、不同扫盘结构对控制系统的功能需求不大一样,洗扫车模块化控制系统拟选用7英寸8按键显示屏CR9453及CAN总线面板作为主要的人机设备,洗扫车主要动作通过操作7英寸显示屏即可完成,主操作设备与控制器之间采用CAN总线连接通信。控制器采用易福门CR0200控制器,其有32路输入,48路输出,共80个I/O口,可直接控制上装所有的电磁阀组、用电设备,并预留有一定的输入输出口,方便控制系统功能的扩展,所有洗扫车控制应用需求可在此平台上进行开发,兼容其主要特殊配置,方便控制系统后期的维护升级。
图2 洗扫车模块化控制系统框图
5.2 系统控制原理的设计
考虑到不同底盘、不同副发动机、不同扫盘结构对电控系统的要求不一样,如同为东风天锦底盘、副发动机同是采用某公司生产的QSB5.9-CM2880发动机,只是扫盘结构不一样:一种采用四盘扫,另一种采用两扫盘,这都将导致电磁阀组、电控箱、操作面板功能的布局、线束等部件不能通用。为了实现洗扫车控制系统模块化设计,需设计出通用化的控制原理,控制器输入输出点数必须满足所有16 t以上洗扫车的控制功能需要,同时得预留一定的输入输出口,方便控制系统功能的扩展和升级,实现不同副发动机及电气单发系统的可选择配置。兼容两盘扫和四盘扫洗扫车的控制原理,生产时可以根据实际需要选择相应的副发动机和扫盘结构(两盘扫、四盘扫)原理要求进行装配生产。将常用的选装配置功能(后喷雾、前滚扫、警灯等)进行系统集成设计,可提高后续的设计效率。
5.3 CAN总线网络、协议的设计
利用CAN总线技术合理搭建洗扫车控制系统的CAN拓扑网络,实现洗扫车显示屏、控制器、CAN总线面板、副发动机、底盘及无线终端模块之间的数据交换与通讯,形成洗扫车模块化信息管理交互系统。控制器、显示屏、CAN总线面板有大量数据需交互通信,如显示屏要采集并显示控制系统的所有信息,并处理传输合适的控制指令给控制器或其他控制执行模块。同时控制器接收大量来自显示屏、CAN面板、传感器等的操作指令或输入信号,并根据整车的控制功能逻辑输出给电磁阀组或用电设备,进而达到洗扫车的智能化、便捷式控制。因此,各种不同控制类型模块的逻辑控制与通讯既相互独立又互为一体,系统子部件间的联系关系错综复杂,需对各子部件的功能或角色进行合理分配,通过合理的设计CAN总线网络、通信协议,才能更好地实现各类型洗扫车的多种控制功能需求。
合理设计显示屏、控制器及CAN总线面板相互间的企业标准化CAN通讯协议,包括各子系统间通讯地址的定义,各数据ID及数据内容的定义,各数据位的定义,数据内容的发送与接收格式的定义等,以方便与后续跟随车辆功能的升级进行扩展、变更,并达到兼容早期版本的效果。因通信协议会直接涉及到软件的运行效率及扩展性能、无线终端模块数据采集的便利性,需统筹整车的控制器、显示屏、CAN面板、副发动机、底盘、无线终端模块等所有系统子部件间的通信数据,然后对这些数据统计分类,最后按一定的规律分配通信地址,在保证通信地址不冲突的前提下又具有足够的扩展空间。
5.4 人机界面的设计
显示屏需实现所有洗扫车的常用控制功能,将9种洗扫模式、扫盘转速、扫盘喷水、一键油门调速等功能汇聚在同一个界面上完成,实现洗扫、清洗、扫路等作业的一键式操作。低压清洗作业、常用选装动作、高压清洗动作采用同一界面,方便不同车型功能的管理、扩展以及程序的更新维护。出厂设置界面需设计不同车型选择项,根据不同车型的不同配置,选择切换为不同的控制程序控制。利用人机工程学在7英寸8按键显示屏上合理有效地实现副发动机状态的监控、系统I/O口状态的监控、清扫作业的操作、料箱后门的操作、清洗作业的操作、系统报警的提示、系统参数的查询、系统线路的调试(开路或短路)排查维修、辅助作业的操作、用户参数的设置及出厂参数的设置等。另外,在设计显示屏界面时,需考虑到显示屏界面对于不同底盘、副发动机及扫盘结构等的兼容性,通过软件逻辑编程、界面的嵌套,实现不同底盘、副发动机及扫盘结构的控制程序的选择和切换。如图3以显示屏的人机主界面为例,主界面显示了洗扫车的当前作业状态信息、报警信息及副发动机转速、水温、油压等,同时可通过主界面进入各子界面及子界面嵌套界面。
5.5 软件架构的设计
软件架构的设计,包括程序层级设计、各功能块的分配、关键逻辑流程的优化设计、软件通用性设计。因软件架构的设计会直接影响到软件后续的可维护性及功能扩展,需综合考虑各方面的因素,如原软件系统架构的优缺点、已解决或未解决的BUG、在模块化设计时的局限性等,在修复原软件架构缺陷的同时还需考虑到未来洗扫车可能会新增哪些类型的功能,以便预留好合适的软硬件接口进行扩展。
图3 人机主界面
6 结语
智能化、信息化是环卫机械装备的发展方向, 将先进的现场总线技术应用其中必将使装备智能化、信息化更易实现。本文设计的基于CAN总线的环卫车控制系统,结合环卫设备的具体控制需求,以洗扫车模块化控制系统为例,具有功能完善、通用性好、使用方便等特点,并且技术架构先进,让环卫设备的所有操作变得更加简单、高效,符合环卫设备控制系统逐步走向智能化控制的总体发展方向。通过多系列环卫车型(如洗扫车、扫路车、垃圾车)的应用实践表明,系统工作可靠,实时性好,功能拓展方便,具有良好的推广应用前景。
本文基于CAN总线控制技术,通过对不同类型底盘、副发动机、扫盘结构组合成多种洗扫车的电气控制系统进行整合,并形成一套模块化控制系统方案,统型归类所有类型洗扫车的软件,设计出一套通用化的控制系统软件,在显示屏人机界面即可选择相应的底盘型号、副发动机型号、扫盘类型或选装配置等,实现不同类型洗扫车控制系统不同电磁阀组、传感器、工作指示灯、警灯等执行元件的控制。将CAN总线技术应用于环卫设备控制系统,可提高系统的智能信息化程度,提升环卫设备的综合性能,并通过与相关环卫设备控制系统的配套,经济效益明显,可大幅度提高公司产品的核心竞争力。