铁甲网首页 铁甲论坛 基于CAN总线的平地机自动找平系统设计

发帖

评论

基于CAN总线的平地机自动找平系统设计

chaos 2009-12-28

2983 10

平地机是一种平整场地、路面的机械,作业时其铲刀相对于地面的位置决定工作质量,即路面的平整度。铲刀安装在一个可水平回转、垂直摆动和横向伸缩的机架上,通过控制液压油缸的动作,控制铲刀升降、回转、倾斜、引出,以及铲土角度变换。由于操作复杂,要求操作员具有娴熟的操作技术,根据平地机行驶状况不断调整铲刀,使路面平整。因此该作业过程对操作员技术要求特别高,而且劳动强度较大。为了提高作业效率和和施工精度,这里提出一种基于CAN总线的平地机自动找平系统设计。

  2 自动找平系统总体设计

  2.1 CAN总线简介

  CAN(Controller Area Network)总线即控制器局域网,是应用最广泛的现场总线之一,主要用于监控各种过程设备。CAN总线作为一种多主方式的串行通讯总线,其基本设计规范要求高位速率和高抗电磁干扰性,而且能够监测产生的任何错误,具有成本低、总线利用率高、数据传输距离远(长达10 km)、数据传输速率高(高达1 Mb/s)、可靠的错误处理和检错机制以及发送的信息遭到破坏后可自动重发等特性;CAN总线作为一种技术先进、可靠性高、功能完善与成本合理的远程网络通讯控制方式,已广泛应用于各个自动化控制系统。因此,CAN总线具有不可比拟的优越性。

  2.2 系统总体结构

  自动找平系统可使平地机按照操作员预先设定的纵坡和横坡值进行自动控制,从而使平地机自动操作,保证平地机按照设定值精确平整路面。该控制系统包括横坡、纵坡传感器、比例阀组、操作界面以及控制器,如图1所示。







  其中横坡、纵坡传感器测量铲刀的位置参数信息、比例阀组控制铲刀油缸、操作界面用于设定系统参数、施丁参数及显示铲刀实时位置参数信息,而控制器则用于接收传感器采集的实时信息。

  传感器及操作界面通过CAN总线与控制器相连,控制器的信号输出端与比例阀组的信号输入端相连,比例阀组与平地机的液压系统相连。

  2.3 系统工作腺理

  采用纵坡传感器和横坡传感器分别测量铲刀的纵坡、横坡值,将测量到的实时信息通过CAN总线传送至控制器。控制器将其与保存在系统中的设定值相比较,再将相应的PWM信号输出到比例阀组。比例阀组控制铲刀油缸进行相应升降,从而保证系统按照设定的横坡值及纵坡值精确施工。

  3 系统硬件设计

  3.1 系统组成原理及接口电路

  基于CAN总线的单片机平地机自动找平系统的组成原理如图2所示,其中硬件设计的关键是单片机与总线之间的接口设计,具体接口电路设计如图3所示。









  数据采集点中的单片机通过输入模块采集模拟量和开关量,并对其处理,传输至CAN控制器的发送缓冲区,然后启动CAN控制器发送命令,此时CAN控制器将自动向总线发送数据,无需单片机干预。若系统中有多个CAN控制器同时向总线发送数据,则CAN控制器通过信息帧中的标识符进行仲裁,标识符数值最小的CAN控制器优先使用总线。当控制器执行节点中的CAN控制器监测到总线上有数据时,其自动接收总线上的数据,并将该数据存入接收缓冲区,并向单片机发送接收中断,启动单片机中断接收程序,从CAN控制器的接收缓冲区读取数据,并对其处理后通过输出模块输出,从而控制被控对象。

  3.2 液晶显示接口电路设计

  液晶显示接口模块用于显示平地机作业过程中工作状态:设定系统控制参数;提交控制命令,其接口电路如图4所示。该液晶显示模块有4个按键输入信号,分别是A/M键、设定键、上升键和下降键。A/M键设置控制器工作状态,手动、自动切换。设定键设定系统参数和施工参数,例如横坡值、纵坡值、灵敏度及控制范围等。上升、下降键在自动模式下配合设定值调节系统的各项参数,而在手动模式下这两个按键直接控制铲刀的升降。







  4 系统软件设计

  4.1 CAN控制器软件设计

  图5为CAN控制器的软件流程,其中系统初始化包括程序缓冲初始化、CAN控制器初始化、中断初始化、SOC外围I/O配置及SOC晶振配置等;判断冷热启动是防止在接收到有效发送请求帧后检测发送方式或发送请求丢失;判断是否接收是为配合主控制多传感器分时接收控制。单片机接收来自总线的横坡、纵坡监测值后,设置PWM脉宽,并输出方波。







  4.2 系统通信软件设计

  系统通信软件设计主要包括CAN初始化、数据的发送及接收3部分。初始化主要包括设置工作方式、接收滤波方式、接收屏蔽寄存器和接收代码寄存器、波特率参数和中断允许寄存器等。在初始化这些寄存器之前,必须确保系统进入复位状态。图6为系统通信软件流程。







  发送子程序负责节点报文的发送。发送时,只需将待发送的一帧报文送入SJA1000发送缓冲区,然后启动SJA1000发送即可。在向SJA1000发送缓冲区发送报文之前,必须先判断发送缓冲区是否为空。

  接收子程序负责节点子程序的接收和其他情况处理。在处理报文时,同时要处理一些情况,如总线关闭、错误报警等。单片机响应接收中断后读取SJA1000接收缓冲区数据并保存,再清空SJA1000接收缓冲器。

  4.3 系统控制策略

  由于平地机的平地精度与其行驶速度、发动机转速、负载力等诸多因素有关,因此难以建立精确的数学模型。为了对平地机实施实时控制,最好采用一种简便、快速且无需被控系统并具有精确的数学模型的控制方法。例如:模糊控制不要求被控对象有精确的数学模型,但单独使用模糊控制不易消除稳态误差,采用模糊控制与PID控制相结合,利用模糊控制实时修正PID参数,则可提高系统的控制精度和鲁棒性,并具有较好的实用性。

  5 结束语

  本文设计的平地机自动找平系统可使平地机按照操作员预先设定的纵坡及横坡值进行自动控制,从而实现平地机的自动操作,保证平地机按照设定值进行精确平整。该系统具有精度高、操作简单、效率高、节省材料和投资等优点。采用CAN总线通信方式使整个系统的结构更紧凑,系统更加可靠,更具有实用性,且易于系统及功能扩展。
图片
全部评论

已展示全部评论