微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 浅谈CNC动态卡在总线方式下的实现

浅谈CNC动态卡在总线方式下的实现

时间:09-21 来源:互联网 点击:

总线的设计上采用了plx公司的产品pci9052,这是一种高性能的pci总线控制器,专门为开发pci板卡而设计的一种pci总线控制器,图1是放开式数控系统总体结构框图。

  2.3 微处理芯片

  动态控制器板卡上有一个高速dsp芯片作为运动控制模块的控制器,该设计选择it公司生产的tms320lf2407作为动态控制卡的控制芯片,由于tms320xx系列dsp芯片是专门为控制电机设计的一款高性能低价位的产品,同时作为控制电机的伺服控制系统也是采用的这款dsp芯片作为伺服控制器,所以具有良好的通讯和系统兼容性能,tms3201lf2407内部还有一个can控制器模块,这样就不需要另外选择一个can控制器,简化了电路设计,同时提高了系统性能。

  由于dsp芯片和pc机都是控制器,他们对存储器编址是不同的,为了统一编码,在pci控制器和dsp之间要加一个双口ram来连接2个控制器。idt7024是idt公司生产的一款双口ram,他和普遍的ram不同之处是它有2个地址4单元,1个存储单元,对于pc机来说他就对对应于一段内存单元,对于dsp来说他可以对应于一段片外存储单元,这样就解决了dsp和pc机之间的通信问题,本设计采用的是通用pc机加实时控制单元的递阶式结构。采用放开式数控系统上pc机的windows环境形成良好的人机界面,利用pc机的资源优势,放开式结构平台(动态控制器)可以集成不同开发商提供的软件并适合连网需要,且具有与硬件无关的特性,设备层高速度、高可靠性,标准化的数字通讯,可满足用户个性化要求且保证高性能、低成本。

  3 系统硬件设计原理

  基于can总线动态控制卡的硬件结构如图2所示,从个人pc机中传入的参数如:加工参数,插补轨迹以及一些状态信息,通过pci总线传到pci控制器pci9052的高速缓存fifo中,pci9052作为总线主设备将pc机传来的信息经过缓存最终存储到双口ramidt7024内,由于双口ram映射为pc机的一部分内存地址,所以pc机就像操作内存一样将信息存储到双口ram,等待dsp的读取,dsp定时从双口ram中读取pc机传来的各种控制信息,dsp的主要功能是根据pc机送来得插补信息,通过插补算法形成伺服控制模块能够接受的动态信息,通过can总线将运动信息传递到伺服控制器,通过伺服控制器来驱动伺服电机运动,从而控制数控机床的运动。

  在设计中由于pci9052,idt7024都是5v元件,tms2320lf2407属于3.3v器件,同时pci插槽提供5v电源模块,所以电路只使用了电压转换电路将5v信号转变为3.3v信号,如图2,由于dsp内嵌can控制器,所以外部只需要一个pcac82520t-can收发器就可以直接挂在can总线上进行通讯。

  4 数控系统的软件设计

  放开式cac系统解决软件公用的最主要措施是采用通用的操作系统,本系统设计pci动态控制卡可以在windows90/2000/xp中文操作系统下正常工作,软件框图如图3所示。

  为了使系统达到控制要求,需要解决如下几个关键问题:

  (1)保证系统相应的实时性

  系统对外界信息以足够快的速度进行处理,并在一定的时间内作出响应,本控制系统是利用windows中断保证实时响应;

  (2)协调的进行多任务调度

  cnc系统具有多种不同优先级任务,要求系统软件能合理,有序地调度这些任务的运行,多任务意味着多个任务能并行运行,调度的关键在于按照一定的优先权,事件发生的顺序合理的切换各任务的状态;

  (3)提供任务通信机制

  由于cnc系统中各任务并否是孤立的,任务之间要完成信息交换和资源共享,cnc系统的通信形式有两种,互斥和同步,互斥是针对不可共享资源的访问问题,如大多数外部设备和共享的可读写数据区,同步是指任务之间的协同工作,任务之间的相对速度有不可预见性,必须由任务通信机制达到同步;

  (4)提供定时和延时

  定时和延时功能一般由时钟提供,cnc系统大部分任务都是依据定时或延迟条件来激活。

  5 驱动程序

  5.1 获取系统分配的配置资源

  对于即插即用型设备,系统都是动态分配系统资源的,如何获取系统分配给这些内存单元的地址是vxd驱动程序需要解决的首要问题。在pci的配制周期机制中,主桥路提供了两个寄存器用于对配置空间的操作,第一个是配置空间基地址寄存器canfig-address,双字地址是cf8h,第二个是配置空间数据缓冲寄存器config-data,地址是cfch,对配置空间的操作是通过输入一个值到设备的config-data寄存器,在此之后如果对config-data寄存器进行读写操作,pci控制器就会将config-address寄存器中的值转换成pci总线上所需要的配置周期。

  5.2 vxd与应用程序的通讯

  vxd运行在系统ring0级,处理系统底层设备,应用程序利用其提供的接口服务来处理硬件,windows允许vxd和应用程序之间进行双向通信。

在w

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

网站地图

Top