微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > CAN总线实现数控机床的网络化

CAN总线实现数控机床的网络化

时间:12-20 来源:互联网 点击:

  目前,国内数控加工多为分散加工,采用传统的NC代码输入方式,网络化程度低,已无法满足生产需求。国内外也研究了多种数控机床联网通信方案,但在成本和性能上难以做到均衡。

  CAD与CAM技术的成熟使CAD/CAM系统可以直接生成控制机床加工的数控NC代码,从而利用DNC实现车间自动化生产。采用CAN总线组网通信,连接分散的数控机床,可以用较低的成本实现DNC直接数字控制。通过该系统驱动多台数控机床并行加工,可实现数控加工行业的网络化、高效化和自动化,具有广泛的应用前景。

1 方案设计

图1 DNC网络系统组成结构

  图1为数控机床DNC网络结构。各计算机工作站位于CAD/CAM部门,通过局域网互联,其中一台计算机作为主控服采用C8051F040微控制器为核心设计通信节点电路。C8051F040是混合信号SOC型8位MCU,兼容8051系列指令务器,负责数控机床的管理和控制。各工作站设计生成的NC程序通过局域网发送到服务器,再经CAN总线传输至机床,控制相应机床加工;各机床上存储的NC程序及机床状态监控信息也可通过相反的路径上传至有关计算机进行处理。服务器与通信节点间以及机床与通信节点间为近距离传输,为简化结构,采用通用标准RS232接口通信。

2 硬件电路设计

  硬件电路设计主要是通信节点电路设计。实际上是一个CAN /RS232接口电路。此电路有两个通信接口:一个是CAN总线接口,连接CAN总线;另一个是RS232接口,连接数控机床或工控机的RS232接口。

  采用C8051F040 微控制器为核心设计通信节点电路。C8051F040是混合信号SOC型8位MCU,兼容8051系列指令集,采用流水线处理结构,平均指令速率达5 M IPS,集成4 KBRAM、64 K Flash ROM、CAN控制器、UART串口,非常适合该电路要求,几乎无需扩展外围芯片,可节省大量硬件开销。C8051F040内部的CAN控制器符合Bosch规范2. 0A (基本CAN)和2. 0B (全功能CAN) ,方便了CAN 网络通信设计。CAN控制器包含1 个CAN 核、消息RAM (独立于C8051 的RAM) 、1个消息处理状态机及控制寄存器。CAN控制器可以工作在高达1M bit/ s速率,有32个消息对象,每个消息对象有其标识掩码,用于过滤接收到的消息。输入数据、消息对象和标识掩码存储在CAN消息RAM中。与数据发送和接收过滤有关的所有协议处理均由CAN控制器完成,不需C8051 MCU干预,这使用于CAN通信的CPU带宽最小。

  C8051通过特殊功能控制器(SFR)配置CAN控制器,读取接收的数据,写入要发送的数据。CAN控制器结构图见图2。

图2 CAN控制器结构

  CAN总线完成下位机各部分间的通信以及各下位机与上位机之间的通信。由于C8051F040集成的CAN控制器只是个协议控制器,不能提供物理层驱动,应用时需外加CAN总线收发器,采用PCA82C250收发器作为CAN控制器和物理总线间的接口芯片,它可以增强总线驱动能力,提高总线差动发送和接收能力,从而增加通信距离并扩充节点数量。

  RS - 232 驱动芯片采用MAX232,实现RS - 232 电平和TTL电平之间的转换。C8051F040内部驻有CAN通信协议,主要负责对CAN接口芯片的初始化和控制,完成CAN总线协议和RS - 232通信协议的转换和数据传输。通信节点的结构框图如图3所示。

图3 通信节点的硬件框图

  为增强抗干扰能力,采用了高速光电耦合器6N137 隔离C8051F040MCU和PCA82C250的通信端口,实现总线上节点间的电气隔离,增强了稳定性和安全性。在工业现场恶劣环境下,不仅通信线路需隔离,供电也必须隔离,否则光耦两侧的噪声信号将通过电源线耦合。文中采用专门为通信接口设计的隔离电源器件MAX253。其输出端连接有中心抽头的隔离变压器原边, 变压器副边即可提供隔离侧电源, 功率可达1 W.MAX253的SD控制端可连接MCU作为选通信号,空闲时进入待机状态降低功耗。电源原理图如图4所示。

图4 隔离电源

3 软件设计

  软件设计包括2部分内容:下位机CAN通信软件和上位机服务器软件。CAN 通信软件主要有两方面功能: 一是对C8051F040内部CAN控制器的相关寄存器进行初始化配置,包括协议寄存器,消息对象接口寄存器,消息处理器寄存器等;二是控制收发缓冲区的读写,完成数据交换。

  处理器将上位机送来的控制指令或NC程序,通过写入内部的CAN数据寄存器来传送给下位机数控机床,又可读取机床写入寄存器的数据发送给控制服务器。因此, CAN通信软件主要包括系统初始化程序、发送程序、接收程序等。采用C结构化程序设计方案,具有较好的模块性和可移植性,对不同系统功能或应用环境,可方便进行编程重组。

  3.1 系统初始化程序

初始化程序主要完成初始化设置CAN 控制寄存器(CANOCN) 、位定时寄存器(B ITREG) ,初始化发送报文对象和接收报文对象。其中,位定时寄存器的设置较

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top