CPLD与绝对式编码器高速通信在高精度高速伺服单元中的应用
发布时间:2008/5/28 0:00:00 访问次数:559
摘要:本文论述高精高速伺服单元中的cpld与高精度的绝对式编码器之间如何实现高速通信。
关键词:cpld;绝对式编码器;通信
引言
目前国内数控机床中的伺服电机一般都是配套增量式编码器,而增量式编码器的精度并不太高且输出的是并行信号,欲提高其精度就必然要增大编码器的设计难度和增多并行信号的输出,这样就不利于伺服单元与编码器的长距离通信。而采用绝对式编码器,除了其精度比增量式编码器高几倍以外,其信号的输入输出都采用高速串行通信,节省了通信线路便于长距离的通信。在编码器的另一端,采用cpld与绝对式编码器进行高速串行通信,cpld再把收到的编码器信息转变为并行数据转送给伺服单元中的dsp进行运算控制。本文将给出cpld与绝对式编码器高速串行通信的软硬件设计方案。
硬件设计
硬件主要由电源、cpld及其外围电路和绝对式编码器接口电路三个模块组成。
电源模块
电源模块由开关电源电路和dc/dc电源芯片组成,如图1所示。
图1 电源结构框图
图中的开关电源将220v交流电网电压转变成+5v,+15v,-15v,开关电源可滤除电网中存在的各种干扰,并且开关电源中的变压器将220vac与输出的+5v,+15v,-15v隔离开,内部电路还采用了tl431调节开关管的导通脉冲宽度,因此开关电源的抗干扰、安全性、稳定性及稳压程度都比较好。
tps7333是dc/dc芯片,它将+5v的直流电压转变成+3.3v稳定直流电压供给cpld使用,tps7333转换效率、可靠性和稳压性都比较好,它在输入电压为+3.77v~+10v的电压范围内都能转换出+3.3v,使cpld不受输入电压过高导致其烧坏。
cpld及其外围电路模块
cpld及其外围电路模块主要由cpld、cpld编程下载接口电路(jtag接口)、dsp接口电路、有源晶振、电平转换电路和adm485及其外围电路(负责与编码器通信的接口电路)组成(图2)。
图2 硬件整体结构框图
本设计cpld采用altera公司的epm570t144c5,此芯片属于altera公司的max ii,max ii相对max i成本更加低, 功耗更加小,而器件的宏单元数更加多,且器件延时控制在6ns以内,具有很高的性价比。epm570t144c5有570个宏单元数,芯片的引脚数目为144个,其中可用的i/o口有116个,因此此芯片的资源已经足够用。cpld主要负责与绝对式编码器的高速串行通信,并受控于dsp的命令把接收到编码器数据和其他信息并行的转送给dsp。
jtag接口主要用于下载可执行文件到cpld,在pc机安装altera公司的开发环境—quartus ii,并在此开发环境中将编写好的vhdl程序进行编译,保证编译不出错并且保证功能已实现后,连接好下载电缆到jtag接口,通过quartus ii提供的编程下载工具,对cpld电路板进行下载。
dsp接口就是由8根数据线、3根地址线和1根控制线组成的,8根数据线负责转送编码器数据及其其他信息,3根地址线负责转送dsp命令,在cpld终端进行译码,cpld根据译码得出的命令将编码器数据或其他信息通过8根数据线转送dsp,控制线主要是完成cpld与dsp同步控制。
20m有源晶振主要是为cpld提供基准时钟,在时钟信号的驱动下,供cpld产生2.5mb/s的波特率与编码器进行通信,和产生10mhz时钟供一些逻辑控制信号使用,此晶振提供20mhz的时钟频率,需要电源提供3.3v的直流电压。
电平转换电路主要负责将3.3v电压转换成5v或将5v电压转换成3.3v,因为cpld的核和i/o口需要的供电电压都是3.3v,而adm485和绝对式编码器所需要的供电电压和i/o口驱动电压都为5v,所以需要用电平转换芯片lvc4245a将3.3v转换成5v电压或将5v转换成3.3v。
adm485及其外围电路是cpld与绝对式编码器高速通信的硬件衔接。adm485工作电压为5v,其最大通信速率为5mb/s,采用2个adm485芯片进行对接通信可提高通信线路上的抗干扰能力,最长的转输距离可达1.2km。其外围电路如图3所示,虚线的右半部属于绝对式编码器的外部电路,上拉和下拉电阻都是1k欧姆,限流电阻则是220ω,adm485的sdat是数据输出引脚,adm485的srq是数据输入引脚,adm485的de是外部控制引脚,该脚受cpld控制,由于rs-485通信协议属于半双工,所以adm485只能处在发送数据或接收数据的状态,当adm485的de为高电平时,adm485处于数据输出状态(即cpld接收数据),当adm485的de为低电平时,adm485处于数据输入状态(即cpld发送数据)。
图3 绝对式编码器接口电路
绝对式编码器接口模块
绝对式编码器接口模块是指绝对式编码器内部的电源及信号输入输出接口电
摘要:本文论述高精高速伺服单元中的cpld与高精度的绝对式编码器之间如何实现高速通信。
关键词:cpld;绝对式编码器;通信
引言
目前国内数控机床中的伺服电机一般都是配套增量式编码器,而增量式编码器的精度并不太高且输出的是并行信号,欲提高其精度就必然要增大编码器的设计难度和增多并行信号的输出,这样就不利于伺服单元与编码器的长距离通信。而采用绝对式编码器,除了其精度比增量式编码器高几倍以外,其信号的输入输出都采用高速串行通信,节省了通信线路便于长距离的通信。在编码器的另一端,采用cpld与绝对式编码器进行高速串行通信,cpld再把收到的编码器信息转变为并行数据转送给伺服单元中的dsp进行运算控制。本文将给出cpld与绝对式编码器高速串行通信的软硬件设计方案。
硬件设计
硬件主要由电源、cpld及其外围电路和绝对式编码器接口电路三个模块组成。
电源模块
电源模块由开关电源电路和dc/dc电源芯片组成,如图1所示。
图1 电源结构框图
图中的开关电源将220v交流电网电压转变成+5v,+15v,-15v,开关电源可滤除电网中存在的各种干扰,并且开关电源中的变压器将220vac与输出的+5v,+15v,-15v隔离开,内部电路还采用了tl431调节开关管的导通脉冲宽度,因此开关电源的抗干扰、安全性、稳定性及稳压程度都比较好。
tps7333是dc/dc芯片,它将+5v的直流电压转变成+3.3v稳定直流电压供给cpld使用,tps7333转换效率、可靠性和稳压性都比较好,它在输入电压为+3.77v~+10v的电压范围内都能转换出+3.3v,使cpld不受输入电压过高导致其烧坏。
cpld及其外围电路模块
cpld及其外围电路模块主要由cpld、cpld编程下载接口电路(jtag接口)、dsp接口电路、有源晶振、电平转换电路和adm485及其外围电路(负责与编码器通信的接口电路)组成(图2)。
图2 硬件整体结构框图
本设计cpld采用altera公司的epm570t144c5,此芯片属于altera公司的max ii,max ii相对max i成本更加低, 功耗更加小,而器件的宏单元数更加多,且器件延时控制在6ns以内,具有很高的性价比。epm570t144c5有570个宏单元数,芯片的引脚数目为144个,其中可用的i/o口有116个,因此此芯片的资源已经足够用。cpld主要负责与绝对式编码器的高速串行通信,并受控于dsp的命令把接收到编码器数据和其他信息并行的转送给dsp。
jtag接口主要用于下载可执行文件到cpld,在pc机安装altera公司的开发环境—quartus ii,并在此开发环境中将编写好的vhdl程序进行编译,保证编译不出错并且保证功能已实现后,连接好下载电缆到jtag接口,通过quartus ii提供的编程下载工具,对cpld电路板进行下载。
dsp接口就是由8根数据线、3根地址线和1根控制线组成的,8根数据线负责转送编码器数据及其其他信息,3根地址线负责转送dsp命令,在cpld终端进行译码,cpld根据译码得出的命令将编码器数据或其他信息通过8根数据线转送dsp,控制线主要是完成cpld与dsp同步控制。
20m有源晶振主要是为cpld提供基准时钟,在时钟信号的驱动下,供cpld产生2.5mb/s的波特率与编码器进行通信,和产生10mhz时钟供一些逻辑控制信号使用,此晶振提供20mhz的时钟频率,需要电源提供3.3v的直流电压。
电平转换电路主要负责将3.3v电压转换成5v或将5v电压转换成3.3v,因为cpld的核和i/o口需要的供电电压都是3.3v,而adm485和绝对式编码器所需要的供电电压和i/o口驱动电压都为5v,所以需要用电平转换芯片lvc4245a将3.3v转换成5v电压或将5v转换成3.3v。
adm485及其外围电路是cpld与绝对式编码器高速通信的硬件衔接。adm485工作电压为5v,其最大通信速率为5mb/s,采用2个adm485芯片进行对接通信可提高通信线路上的抗干扰能力,最长的转输距离可达1.2km。其外围电路如图3所示,虚线的右半部属于绝对式编码器的外部电路,上拉和下拉电阻都是1k欧姆,限流电阻则是220ω,adm485的sdat是数据输出引脚,adm485的srq是数据输入引脚,adm485的de是外部控制引脚,该脚受cpld控制,由于rs-485通信协议属于半双工,所以adm485只能处在发送数据或接收数据的状态,当adm485的de为高电平时,adm485处于数据输出状态(即cpld接收数据),当adm485的de为低电平时,adm485处于数据输入状态(即cpld发送数据)。
图3 绝对式编码器接口电路
绝对式编码器接口模块
绝对式编码器接口模块是指绝对式编码器内部的电源及信号输入输出接口电