基于pci 和usb总线的开放式运动控制器开发.doc
基于pci 和usb总线的开放式运动控制器开发,基于pci 和usb总线的开放式运动控制器开发 摘 要开放式数控系统已成为当今数控技术的发展方向,目前的开放式数控系统多以pc机为基础,配上各种开放式运动控制器。运动控制器的应用已走出机械加工行业,越来越多地应用于其它工业自动化设备控制,如机器人控制、电子机械、木工机械、纺织机械、印刷机械等诸多行业。基于pc总线的以d...
内容介绍
此文档由会员 wanghua273849 发布基于PCI 和USB总线的开放式运动控制器开发
摘 要
开放式数控系统已成为当今数控技术的发展方向,目前的开放式数控系统多以PC机为基础,配上各种开放式运动控制器。运动控制器的应用已走出机械加工行业,越来越多地应用于其它工业自动化设备控制,如机器人控制、电子机械、木工机械、纺织机械、印刷机械等诸多行业。
基于PC总线的以DSP和CPLD/FPGA作为核心处理器的开放式运动控制器将PC机的信息处理能力和开放式的特点与运动控制器的运动轨迹控制能力有机地结合在一起,具有信息处理能力强、开放程度高、运动轨迹控制准确、通用性好等优点,因此发展迅速。今后基于计算机标准总线的开放式运动控制器仍然是市场发展的主流。PCI总线解决了ISA总线的响应速度较慢的瓶颈,近几年,基于USB总线的设备也因其优点而得以迅速发展。
针对国内外开放式运动控制器存在的一些缺点,诸如国外产品价格太高、技术支持相对较差,国内产品不支持USB总线、存在一些技术上的不足等,本文以DSP芯片TMS320LF2407作为处理器,分别基于PCI和USB总线开发了多轴开放式运动控制器,并采用PCI 9052和ISP-1581作为接口芯片构建PC-DSP通讯电路,利用CPLD器件EPM7128构建两路QEP信号处理电路并辅助完成译码等功能,同时开发了接口卡负责完成控制卡与外部器件的互联并进行光电隔离和电平转换。
DSP除了完成与上位机的通讯,内部还嵌入了许多控制算法,包括基于前馈补偿的PID控制算法、参数曲线的自适应时间分割插补算法、直线/圆弧/NURBS插补算法等。同时,提供了丰富的动态链接库函数供用户调用,并在此基础上开发了测试软件。实验和仿真结果表明,系统设计合理,具有实时性好,跟随误差小,加工精确度高等优点。
关键词 开放式运动控制器;USB 2.0协议;PCI总线;NURBS插补;DSP
Development of Open-Type Motion Controller Based on PCI and USB Bus Abstract
The open-type numerical control system has become the development trend of NC technology nowadays, and the present NC systems are mainly based on PCs (personal computers) with various motion controllers. The application of motion controllers has extended out of the machine-processing field; more and more are applied in control of other industrial automation devices, such as robot control, electronic machinery, woodworking machinery, textile machinery, printing mechanism, and so on.
The open-type motion controller has developed rapidly, which uses DSP and CPLD/FPGA as core processors and combines the information-handling capacity and the open-type characteristic of PC with the controller’s motion path control ability, having many advantages such as strong information-handling capacity, good open-type characteristic, precise motion path, good versatility. From now on, the development of open-type motion controllers based on computer standard bus is still the market mainstream. The PCI bus solves the problem of low response velocity of ISA bus, and in recent years, equipments based on USB bus have also developed rapidly because of the merits of USB.
Aiming at the shortcomings of domestic and foreign open-type motion controllers, for example, the overseas product price is high, the technical support is relatively weak, and the domestic product does not support USB bus, existing some technical flaws. this thesis develops multi-axis motion controllers based on PCI bus and USB bus respectively with TMS320LF2407 as their processors. PCI 9052 and ISP-1581 chips are adopted to construct the PC-DSP communication channel; CPLD component EMP7128 is used to achieve the functions of two groups of QEP signal processing and address decoding; at the same time, the auxiliary I/O card is also developed to connect the controller and external components after photo-electricity isolation and level transformation.
Besides the communicating with PCs, the DSP has also been embedded many control algorithms, including the PID control algorithm with feed-forward compensation, the parameter curve auto-adapted time-division interpolation algorithm, the line/circle /NURBS interpolation algorithm, etc. A lot of dynamic link library functions are also provided for the users, and test software is developed with the functions. Experiment and simulation result indicates that the system is designed reasonably, with many advantages such as good real-time performance, little following error and high processing precision.
Key words open-type motion controller; USB 2.0 protocol; PCI bus; NURBS
interpolation; DSP
目 录
摘要 I
Abstract II
第1章 绪论 1
1.1 开放式运动控制技术概述 1
1.1.1 开放式数控系统 1
1.1.2 基于PC机的开放式运动控制器 2
1.2 开放式运动控制器研究现状、不足及发展趋势 4
1.2.1 运动控制器的分类 4
1.2.2 国内外开放式运动控制器的研究现状 5
1.2.3 目前基于PC的运动控制器存在的不足 6
1.2.4 基于PC的开放式运动控制器的发展趋势 7
1.3 课题来源及主要研究内容 8
第2章 伺服系统控制关键技术研究 9
2.1 运动系统的控制技术概述 9
2.2 伺服电机控制原理 9
2.2.1 交流伺服电机介绍 9
2.2.2 交流伺服电机的控制模式 10
2.2.3 伺服电机的PID调节方案 11
2.3 参数曲线的时间分割插补算法 14
2.3.1 时间分割插补原理 14
2.3.2 参数曲线自适应插补算法 14
2.4 NURBS插补原理 17
2.4.1 NURBS插补介绍 17
2.4.2 三次NURBS曲线的数学描述 17
2.4.3 NURBS曲线插值原理 19
2.5 本章小结 21
第3章 PCI和USB总线规范与操作 22
3.1 PCI总线 22
3.1.1 PCI总线的基本概念 22
3.1.2 PCI总线的特点 22
3.1.3 PCI局部总线信号定义 23
3.1.4 PCI总线协议基础 24
3.2 USB总线 27
3.2.1 USB的优点 27
3.2.2 USB系统的分层结构 27
3.2.3 USB数据通讯结构 29
3.2.4 USB的控制传输与中断传输 30
3.2.5 USB软件编程基础 33
3.3 本章小结 34
第4章 PC机与DSP通讯电路设计 35
4.1 运动控制器硬件电路总体设计方案 35
4.2 DSP 芯片TMS320LF2407介绍 36
4.3 PCI总线与DSP通讯电路设计 37
4.3.1 PCI总线接口电路实现方法 37
4.3.2 PCI总线接口芯片选择 38
4.3.3 PCI 9052的主要特点 38
4.3.4 PCI 9052的工作原理 39
4.3.5 E2PROM的配置 40
4.3.6 PCI-DSP通讯电路 41
4.4 USB总线与DSP通讯电路设计 43
4.4.1 USB接口芯片选择 43
4.4.2 ISP-1581的特性 43
4.4.3 ISP-1581的引脚介绍 44
4.4.4 ISP-1581相关寄存器简介 45
4.4.5 USB-DSP通讯电路设计 47
4.5 本章小结 48
第5章 运动控制器硬件电路设计 49
5.1 DSP辅助电路 49
5.1.1 JTAG测试接口电路 49
5.1.2 供电电路 50
5.1.3 时钟电路 50
5.2 存储器扩展电路 51
5.3 控制电压转换电路 51
5.4 CPLD处理电路 52
5.4.1 地址译码 53
5.4.2 正交编码脉冲处理及计数 53
5.4.3 中断逻辑 56
5.5 接口卡电路分析 56
5.5.1 差分信号处理电路 56
5.5.2 输入输出信号处理电路 57
5.6 运动控制器硬件开放性的实现 59
5.7 本章小结 59
第6章 运动控制器软件开发及调试 60
6.1 控制器软件开发概述 60
6.2 DSP底层程序开发 60
6.2.1 USB控制器的固件(Firmware)编程 61
6.2.2 DSP核心程序 64
6.3 设备驱动程序开发 69
6.4 动态链接库函数开发 70
6.4.1 动态链接库函数及其优点 70
6.4.2 动态链接库的设计 71
6.4.3 用DLL实现运动控制器的开放式功能 72
6.5 测试软件开发 73
6.6 本章小结 76
结论 77
参考文献 78
致谢 82