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

发布者:oplkjjj最新更新时间:2014-11-21 来源: ofweek关键字:CAN总线  数控机床  网络化 手机看文章 扫描二维码
随时随地手机看文章

  目前,国内数控加工多为分散加工,采用传统的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结构化程序设计方案,具有较好的模块性和可移植性,对不同系统功能或应用环境,可方便进行编程重组。[page]

  3.1 系统初始化程序

  初始化程序主要完成初始化设置CAN 控制寄存器(CANOCN) 、位定时寄存器(B ITREG) ,初始化发送报文对象和接收报文对象。其中,位定时寄存器的设置较复杂,使用8MHz外部晶振, CAN通信速率为500 k / s,得到B ITREG的初始值为0x2301。对象初始化、发送和接收初始化完成后启动CAN处理机制(对B ITREG和CAN0CN初始化) 。下面为初始化程序结构:

  void start2CAN ( void)
  {
  SFPRAGE =CAN02 PAGE; / /指向CAN0页面
  CAN0CN I = 0x41; / /置位CCE和Init开始初始化
  CAN0ADR =B ITREG; / /指向位定时寄存器进行配置
  CAN0DAT = 0x2301; / /位率为500 k / s
  CAN0CN I = 0x06; / /允许全局中断,置位IE和SIE
  CAN0CN& = ~0x41; / /清CCE和IN IT位启动CAN状态机制
  }

  3.2 发送程序

  CAN报文发送由CAN控制器自动完成,只需根据接收的远程帧识别符将对应数据转移到发送缓冲寄存器,将此报文对象编码写入命令请求寄存器启动发送即可。使用定时更新发送报文对象中的数据,数据的发送由控制器硬件自动完成,当其收到一个远程帧时,就将相同识别符的数据帧发送出去。发送程序结构如下:

  void send2message ( charMsgNum)
  {
  uchar j;
  SFRPAGE =CAN02PAGE; / /指向CAN0页面
  CAN0ADR = IF1CMDMSK; / /向IF1命令屏蔽寄存器写入命令
  CAN0DAT = 0x0083; / /位率为500 k / s
  CAN0ADR = IF1ARB2; / /指向IF1仲裁寄存器2
  CAN0DATH = 0x80;
  CAN0ADR = IF1DATA1; / /指向数据场首字节
  for( i = 0; i < 4; i ++ )
  {CAN0DATH = can2 temp [ i ] ; } / /将4 Byte数据写入发送Buffer
  CAN0ADR = IF1CMDRQST;
  CAN0DATL =MsgNum; / /写入报文对象编号,数据发送到对应报文对象
  }

  3.3 接收程序

  CAN报文的接收与发送一样,由CAN控制器自动完成,接收程序只需从接收缓存器中读取接收的数据,再进行相应处理即可。基本方法与发送程序一致,只是接收程序采用中断方式。此应用中,主要接收上位机对机床编号的选择,参数设置和NC控制程序以及相反流程的机床状态信息等。接收程序结构如下:

  void receive2data ( void)
  {
  SFRPAGE =CAN02 PAGE; / /指向CAN0页面
  CAN0ADR = IF2CMDMSK; / /向IF2命令屏蔽寄存器写命令
  CAN0DATH = 0x00;
  CAN0DATL = 0x3F; / /位率为500 k / s
  CAN0ADR = IF2CMDRQST; / /将报文对象编号写入命令请求寄存器,对应接收
  CAN0DATL =MsgNum; / /得到数据就从报文RAM移到数据Buffer中
  CAN0ADR = IF2DATA1; / /指向数据场首字节
  for( i = 0; i < 4; i ++ )
   { CAN2RX[ i] =CAN0DAT; } / /读取4Byte数据
  }

  3.4 上位机服务器软件

  上位机服务器软件主要功能有NC程序文件数据管理,数控机床的编号管理,数据发送,通信接点及下位机状态监测,下位机数据的上传等,软件功能结构图见图5。软件的规模较大,属于典型的C \\S(客户\\服务器)模式软件。采用Delphi7. 0进行开发。利用Delphi下安装SPCOMM控件实现串口通信。由于涉及到文件管理,需要管理多个文件,按加工顺序传输,需要建立数据库系统。采用MicrosoftOffice Access数据库软件建立数据库管理系统。

图5 上位机软件结构

4 设计实验结果

  实验机床为CAK6136V /750型数控机床3台;实验环境为该校工程训练中心机加工车间强干扰工业环境,并在实验过程中启动电火花加工机床、线切割机床等强干扰源。实验中,上位机分别向3 台数控机床发送4 Byte测试数据,机床接收后立即向上位机返回所接收数据,系统验证数据正确后继续发送数据,直到数据出错或通信次数达到预设循环时停止发送。实验中CAN总线波特率设置为500 k / s,通信线缆长为15 m,进行了多次长时间测试,取其中1次实验数据分析见表1。

表1 实验数据分析

  测试时间600 s,发送数据1 704 061次,计算得出上位机和单台机床交换一次数据的时间为01352 1 ms,考虑到计时误差及通信等待时间,系统和3台机床通信一次约需11056 3 ms,系统响应满足数控加工要求。由于通信节点电路及电源电路都设计了特殊的抗干扰措施,并得益于CAN总线的高可靠特性,实验实现了快速响应下极低的数据传输错误率。

  然后,在上位机编辑一段加工一个圆台的NC代码,发送至3台数控机床,控制3台机床并行加工,完成的工件刀痕排列细腻一致,扭曲较小,极少有弯折现象,表明加工速度比较稳定;同时3台机床加工出的工件经测量一致性很好。

  实验结果表明:采用CAN总线的DNC通信系统,传输距离远,抗干扰能力强,实时性好。

5 结束语

  基于CAN Bus的低成本, 高可靠性的DNC通信系统可将普通数控机床与计算机网络连接起来, 使异地CAD /CAM系统生成的NC代码可以直接远程控制数控机床进行加工, 同时允许多台机床并行工作, 并具有一定的故障监测功能, 实现机床NC代码的可重用性, 从根本上提高了数控机床的加工效率。 

关键字:CAN总线  数控机床  网络化 引用地址:CAN总线实现数控机床的网络化

上一篇:以太网在工业控制中的应用综述
下一篇:数控系统之现场总线控制技术

推荐阅读最新更新时间:2024-05-02 23:19

基于GSM、GPS及CAN总线的列车行程测量系统的研究
  引言   随着铁路运输向高速度、高密度方向发展,安全工作将更加重要。一旦发生事故,不仅中断行车、打乱正常运行秩序,在经济上造成严重的损失,而且还会在社会上产生不良影响。为保证列车快速、安全、舒适、高效地在高速线上运行,对铁路列车进行及时的检修是非常重要的。列车检修周期主要以列车行驶的里程为参考,所以及时准确地记录列车的行驶里程是保证列车安全运行的关键。以往对列车各车厢行驶里程的记录是采用人工记录计算机存储的方式,有时由于工作人员的疏忽,就可能造成记录表丢失或漏记现象,这样就会使列车的实际行驶里程与记录的行驶里程不符,从而使列车不能得到及时地检修,为列车的安全运行造成了隐患。因此,研制一个能够自动记录列车行驶里程的网络系统是至关重
[嵌入式]
CAN总线学习笔记 | CAN盒测试STM32的CAN中断接收CAN总线学习笔记 | CAN盒测试STM32的CAN中断接收
CAN基础知识介绍文中介绍了CAN协议相关的基础知识,以及STM32F4芯片的CAN控制器相关知识,下面将通过实例,利用STM32CubeMX图形化配置工具,并配合CAN盒,来实现CAN通讯的中断收发测试 1. STM32CubeMX配置 ⏩ CAN是挂载在APB1总线上,设置PCLK1时钟频率到最大45MHz ⏩ 激活CAN1,配置位时序参数,其他基本参数以及工作模式(此处设置为Normal普通模式) CAN波特率的计算公式:只需要知道BS1和BS2的设置,以及APB1的时钟频率,就可以方便的计算出波特率。比如设置TS1=8、TS2=6和BRP=6,在APB1频率为45Mhz的条件下,即可得到CAN通信的波特率=45
[单片机]
基于CAN总线和DSP的双层数据采集系统的设计
1 引言   CAN(Controller Area Network)即控制器区域网,CAN总线是由德国BOSCH公司为实现汽车测量和执行部件之间的数据通讯而设计的、支持分布式控制及实时控制的串行通讯网络。CAN BUS现场总线已由ISO/TC22 技术委员会批准为国际标准IOS11898(通讯速率小于1Mbps)和ISO11519(通讯速率小于125kbps)。CAN总线开始主要应用于自动化电子领域的汽车发动机部件、传感器、抗滑系统等应用中,但随着CAN的应用普及,CAN总线的实时性以及抗干扰能力强等优点也逐步为航天领域所认可。   本文将对CAN总线在航天领域应用情况进行介绍,并在CAN总线和DSP技术研究的基础上,设计了
[嵌入式]
模块化、网络化的门禁控制器更符合现代企业的安全管理
   赵建邦/中国区营销总监     门禁控制器是门禁系统的硬件核心,其质量与性能直接影响着整个门禁系统的稳定性。作为门禁系统的核心数据处理和存储部分,门禁控制器在整个门禁系统中承担包括设置卡片的读卡权限与进出权限、监控出入口的状态、记录门禁事件以及与其他系统如报警、消防系统进行联动的重要功能。     随着门禁系统在企业的安全管理中扮演越来越重要的作用,传统的机械式门锁管理已经不能适应现代企业的安全管理,其需求表现如下:     提高安全性:对指定区域进行分级、分时段的通行权限管理,限制相关人员随意进入重要区域,根据职员的职位和工作性质确定其通行级别和允许通行的时段,对一些重要区域的管理比如银行金库、地铁控制室
[安防电子]
基于ARM芯片的网络化电能表设计
引言 目前,测量仪表正向网络化方向发展,每一个单独的嵌入式仪表都将成为Internet上的一个节点。本系统在ARM+RTOS的方式下实现了电子式电能表的网络化,硬件平台以ARM核微控制器LPC2104为核心,软件系统则是在uC/OS-II操作系统下开发的。 系统硬件设计 LPC2104是Philips公司推出的一款以ARM7TDMI-S为核心的32位微控制器。LPC2104内部集成了很多功能,包括128k字节的高速Flash存储器、双UART、多个32位定时器,以及SPI、I2C串行接口和RTC等。其中UART1带有完全的调制解调器接口,可以用于网络产品。 CS5460是Cirrus Logic公司的单相功率/电能计量芯
[单片机]
基于CAN总线的车灯控制系统设计方案
摘要: 给出了一种基于CAN 总线的车灯控制系统设计方案, 介绍了车灯控制系统的硬件设计和软件设计, 对系统的整体结构、硬件配置、软件功能分别作了详细说明。试验表明, 该系统结构简单、性能可靠, 具有广阔的应用前景。 0 引言   CAN( Contr oller Area Netw or k) 是德国博世公司在20 世纪80 年代初为汽车业开发的一种车载专用串行数据通信总线, 满足SAE ( Society o f Automo bileEng ineer) 对C 类高速车载网络( ≤1Mb/ s) 的要求, 适合动力传动和底盘电子系统的信息传输与控制, 因此也适合一般车载电子系统的信息传输与控制。   与传统技术相
[汽车电子]
基于<font color='red'>CAN总线</font>的车灯控制系统设计方案
基于CAN/RS485双层网络的远程抄表系统设计
1. 引言 目前我国普遍采用户用计量仪表即水表、电表、燃气表、热表(四表)安装在用户室内, 抄表人员走家串户,手工抄表采集数据,然后结算的计量收费方式。为了有效解决入户抄表收费存在的诸多弊端, 我国从90年代初开始研制全电子式电能表,并且取得了一定的成果。目前已研制出多种远程抄表系统,常用的有用基于电力线载波的抄表系统,基于RS-485总线的抄表系统等。 基于电力线载波的抄表系统,减少了系统由于布线带来的成本,但是由于信号和强电在同一根线上传输,传输过程中不可避免地存在强电场的干扰,信号的可靠性受到影响,而且随着传输距离的增大,信号的衰减较快,影响了抄表数据的可靠性;基于RS-485的抄表系统是较为理想的一种远程抄表系
[工业控制]
基于ARM的CAN总线智能节点的设计
摘要:CAN总线是一种应用广泛的实时性现场总线,提出了基于具有ARM7TDMI内核的32位微控制器的CAN总线智能节点设计方案。详细介绍了ARM控制(LPC2294)的特点、智能节点的结构以及系统软件设计,同时结合现场实际使用给出了硬件抗干扰措施。 关键词:CAN总线 ARM 嵌入式控制器 CAN(Controller Area Network)即控制器局域网,CAN总线是国际上应用最广泛的现场总线之一。它最早是由德国Bosch公司推出的,CAN通信协议是一种用于汽车内部测量与执行部件之间的数据通信协议。 作为一种技术先进、可靠性高、功能完善、成本合理的远程网络通讯控制方式,CAN总线已被广泛应用于各个自动化控制系统中。例如
[嵌入式]
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved