1 引言
由于can总线的系统集成特点,基于汽车车身控制系统的can总线技术应用范围已经远远超越汽车控制领域,扩展到了机械工业、家用电器及传感器等各种其它测控领域,被国际公认为是重要的的工业现场总线。作为运动控制对象,步进电动机作为一种将离散的电脉冲信号转化成角位移的机械执行装置,具有结构简单、成本低、定位精度高和无误差累积等优点,已被广泛应用于各种自动控制系统中。随着微型计算机和微电子技术的发展,步进电机的这一性能必将得到更为广泛的应用。因此对于can总线的步进电动机控制研究具有十分明显的现实意义。
2 系统总体设计方案
该系统可由一台pc机作为命令发送主机,通过bus-can接口转换模块接入can总线,各节点是有单片机控制的具有can总线数据收发功能的模块,来控制步进电机驱动器及电机终端。在pc机的应用层根据事先规定的格式把数据由usb接口发送给基于usb总线的通用设备接口芯片ch372的usb-can接口转换模块上的单片机,单片机处理之后,再把数据传送到连接着各个步进电机驱动器的节点的can总线上,各个节点的控制模块根据接收到的数据信息进行处理,实现对步进电机的速度、正反转及行程控制。图1为本设计的系统方案图。
图1 系统总体方案图
3 硬件设计方案
系统的硬件包括usb-can接口模块和can节点接收模块电路的设计。
3.1 usb-can接口模块电路的设计
bus-can接口模块主要是由51单片机、ch372、sja1000及82c250组成,主机通过ch372把数据发送到单片机,单片机再把数据通过sja1000发送到can总线上。图2中给出了从pc机的usb口到can总线的主要元件及其连接。图2及图3中的vdd、vcc均为+5v直流电源,ch372有支持两种电源,+5v和+3.3v,本设计中使用的是+5v,可以直接从usb口获得,简化了电路设计。与单片机连接的ch372和sja1000通过片选信号实现互不干涉的读写过程,完成各自的任务。
图2 usb-can接口转换模块原理图
can控制要实现其功能,必须具有外围扩展接口,构成完整的can通信系统,本设计选用pca82c250器件作为can控制器的sja1000和物理总线间的接口,提供总线的差动发送和接收能力,处理来自canh和canh线的信号,并将处理后的信号传至控制单元的can接收区。为了保护芯片并提高抗干扰能力,在控制器sja1000和82c250之间加入高速光电隔离器6n137。can总线网络两端要接120欧姆的匹配电阻,可大大的提高通信的抗干扰性和可靠性。
3.2 can节点模块电路的设计
can节点模块的can接口部分与usb-can接口转换模块的can接口部分的电路设计是一样的,如图3所示。单片机把接收到的数据处理之后,从p1.0、p1.1表现出来,分别输出电机转动方向信号和频率及个数一定的pwm脉冲信号提供给电机驱动器,实现电机的控制。为了提高抗干扰能力,加光电隔离器tlp5621,因为输出的数字信号频率不是很高,tlp5621的转换时间已满足要求。为了电机运行的安全性,可在电机负载周围合适的位置设置两个机械急停按钮,负载发生故障时按下按钮,通知单片机停止pwm输出,实现电机故障急停。
图3 can节点模块电路原理图