关 闭

新闻中心

EEPW首页 > 工控自动化 > 设计应用 > 基于CAN总线的分布式控制器设计和实现

基于CAN总线的分布式控制器设计和实现

作者:时间:2009-10-26来源:网络收藏
近年来大学生的科技创新活动越来越丰富,而为每个机电系统专门的不仅耗时,而且难以满足系统的稳定性要求,这样就有必要提供一种开放式的控制系统平台,让学生可以在这个平台上进行二次开发。参考文献[1]中等提出了一种TCP/IP和CORBA的机电,其构架复杂,功能完全,十分适合工业使用,而对于在校生的需求,需要提供一种原理清晰,构架明朗的开放式开发系统,本文所述系统就是这个原则。学生可以根据不同的设计要求选择相应的硬件和软件模块,自由组合,经过一些程序编写就可以完成高可靠性控制系统构架。

机电系统执行部件包括电机、舵机、液压缸、液压马达等,传感部分有接触和非接触的接近传感器(光电传感器)、图像传感器(CCD、辨色传感器)、声音传感器(麦克风)等,如果采用集中式的设计方式,不仅提高了对设计者的要求,而且难以适应控制要求不断变化的情况。软件设计方面,集中式的硬件设计会使得软件构架十分繁琐,无法多人协同工作,维护困难。控制系统硬件安装方面,集中式的硬件构架很可能增加线束方面的困难。综上所述,采用的设计可以减小设计风险,提高设计效率,增加系统柔性。

本文引用地址:http://www.eepw.com.cn/article/163511.htm

控制系统分为三部分:信号输入部分、中央处理部分和信号输出驱动部分。信号输入部分包括数字信号输入和模拟信号输入,信号输出驱动部分根据不同的驱动部件设计相应的驱动电路。学生常用的执行部件包括直流伺服电机、直流电机、气动控制阀等,后两者同属于一种控制模式,故驱动部分主要为直流伺服驱动和阀驱动。因此控制模块可以分为:信号输入模块、主控模块、直流伺服电机驱动模块、气动阀驱动模块等。

信号输入模块主要是传感器信号的输入和编码,分为数字信号输入和模拟信号输入;主控模块是信息的处理、决策和人机交互的平台,包括键盘输入和LCD输出;直流伺服电机控制驱动模块,采用LM629作为电机控制芯片,通过H桥驱动完成直流电机的PID控制;阀驱动模块用于气动阀的开启、关闭以及直流电机的驱动,故同样通过H桥驱动模式。各个模块之间采用构架(如图1)。控制芯片采用P89C58X2,用KeilC和CSOS系统进行算法设计,系统硬件和软件构架清晰,具有良好的扩展性。

1 硬件电路构架

1.1 直流伺服电机控制

P89C58X2与LM629之间采用方式连接,即单片机的P0口通过上拉电阻之后接LM629的数据输入位,HI连接单片机的外部中断口,编码盘输入A、B和IN口分别连接上拉电阻之后接电机的编码盘,而LM629的输出口PWM MAG和PWM SIG分别连接H桥电机驱动的PWM和DIR、编码盘和LM629,H桥与LM629之间均采用高速光隔6N137隔离,如图2。

在单板上集成两块LM629,能使结构更紧凑,算法更简单,通过软件可以方便地设定LM629工作在速度模式或者位移模式。

1.2 硬件设计

总线是一种具有国际标准的性价比较高的现场总线,其最高传输速度可达1Mb/s,最远传输距离可达10km,性能稳定,十分适合可靠性要求高的系统。

本系统CAN总线控制芯片采用飞利浦公司的SJA1000,其支持CAN2.0B的标准协议,并且芯片可以工作在BasicCAN和PeliCAN两种模式下。总线收发器采用飞利浦公司的TJA1050,它符合ISO11898标准,CAN和通信线路的物理连接,提高CAN总线的驱动能力和可靠性。

SJA1000和P89C58X2之间同样采用总线方式连接,连接方法同LM629,而SJA1000和TJA1050之间连接如下:SJA1000的TX0连接TJA1050的TXD,RX0连接RXD,RX1接Vref输出,SJA1000的TX1下拉电阻接地,TJA1050的CANL和CANH就是CAN总线输出。当多节点连接时,CANL和CANH之间需要加1~2个阻值为120Ω的端接电阻,能有效防止通讯总线上产生的信号反射(如图3)。在软件设计中,通过修改SJA1000的寄存器使CAN工作在PeliCAN、单滤波器、正常模式和扩展帧模式下。

伺服电机相关文章:伺服电机工作原理


pid控制器相关文章:pid控制器原理



上一页 1 2 3 下一页

评论


相关推荐

技术专区

关闭