编码器_传感器_读卡器 -
首页 新闻公告 技术知识

亨士乐绝对值编码器在实现电机串行通信中的应用设计

编辑:Hengstler(亨士乐)编码器    发布时间:2022/3/4 16:29:37

摘要:亨士乐绝对值编码器不仅比增量式编码器精确数倍,而且其信号通过高速串行通信输入和输出,为远程通信节省了通信线路。在编码器的另一端,CPLD用于与绝对值编码器的高速串行通信。
亨士乐绝对值编码器在实现电机串行通信中的应用设计

目前,家用数控机床中的伺服电机一般都配备了增量式编码器,但增量式编码器的精度不是很高,输出是并行信号。为了提高其精度,有必要对编码器的设计进行改进,这很难提高并行信号的输出,不利于伺服单元与编码器之间的远程通信。亨士乐绝对值编码器不仅比增量式编码器精确数倍,而且其信号通过高速串行通信输入和输出,为远程通信节省了通信线路。在编码器的另一端,CPLD用于与绝对值编码器的高速串行通信。然后,CPLD将接收到的编码器信息转换为并行数据,并将其传输到伺服单元中的DSP进行操作控制。本文介绍了CPLD与绝对值编码器之间高速串行通信的软硬件设计方案。

硬件设计

硬件主要由三个模块组成:电源、CPLD及其外围电路和绝对编码器接口电路。

图2 硬件整体结构框图 - 德国Hengstler编码器
图1 电源结构框图

电源模块

基于EPM570T144C5和亨士乐绝对值编码器的串行电机通信应用设计

图中的开关电源将220V交流电源电压转换为+5V、+15V、-15V。开关电源可以滤除电网中的各种噪声,开关电源中的变压器将220VAC连接到输出+5V、+15V、-15V隔离,内部电路还使用TL431调节开关管线脉冲宽度,因此具有抗干扰、安全、,开关电源的稳定性和电压调节性更好。

TPS7333是一款DC/DC芯片,可将+5V直流电压转换为稳定的+3.3V直流电压,供CPLD使用。TPS7333具有更好的转换效率、可靠性和电压稳定性。它在10V的电压范围内具有+3.77V~+3.3V的单输入电压,因此CPLD不会因输入电压过高而烧毁。

CPLD及其外围电路模块

CPLD及其外围电路模块主要由CPLD、CPLD编程下载接口电路(JTAG接口)、DSP接口电路、有源晶体振荡器、电平转换电路、ADM485及其外围电路(负责与编码器通信的接口电路)组成(图2)。

图2 硬件整体结构框图 - 德国Hengstler编码器
图2 硬件整体结构框图

JTAG接口主要用于下载CPLD中的可执行文件,在PC机上安装Altera的开发环境QUARTUS II,并在此开发环境中编译编写的VHDL程序,以确保编译无错误且功能已实现。,将下载电缆连接到JTAG接口,并通过QUARTUS II提供的编程下载工具下载CPLD PCB。

DSP接口由8条数据线、3条地址线和1条控制线组成。8条数据线负责传输编码器数据和其他信息,3条地址线负责在CPLD终端传输DSP命令和解码,CPLD根据解码得到的指令,通过8条数据线向DSP传输编码数据或其他信息,控制线主要完成CPLD与DSP的同步控制。

20M有源晶体振荡器主要为CPLD提供参考时钟。在时钟信号的驱动下,CPLD产生2.5 Mb/s的波特率以与编码器通信,并为一些逻辑控制信号振荡器产生10 MHz时钟。20 MHz的时钟频率要求电源提供3.3 V的直流电压。

电平转换电路主要负责将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。使用两个ADM485芯片进行对接通信可以提高通信线路上的抗干扰能力,最长传输距离可达1.2km。其外围电路如图3所示。虚线的右半部分属于绝对值编码器的外部电路。上拉和下拉电阻器均为1千欧,限流电阻器为220Ω。ADM485的SDAT是数据输出引脚,ADM485的SRQ是数据输入引脚,ADM485的DE是外部控制引脚,该引脚由CPLD控制,因为RS-485通信协议是半双工的,所以当ADM485的DE高时,ADM485只能在ADM485时处于发送数据或接收数据的状态,ADM485处于数据输出状态(即CPLD正在接收数据)。当ADM485的DE低时,ADM485处于数据输入状态(即CPLD正在发送数据)。

图3 绝对式编码器接口电路 - 德国Hengstler编码器
图3 绝对式编码器接口电路

亨士乐绝对值编码器接口模块

绝对值编码器接口模块是指绝对值编码器内部的电源和信号输入输出接口电路。其电路与上述ADM485及其外围电路相同。它还使用了ADM485芯片和一些上拉和限流电阻器。如图3所示,虚线的左半部分表示绝对编码器的内部接口电路,该电路负责连接到外部ADM485(虚线的右半部分)。ADM485由内部控制芯片控制,当编码器接收到CPLD发送的命令时,控制芯片做出判断并发送相应的数据,并将ADM485的DE驱动到高电平,即使ADM485处于发送状态,数据也被发送,控制芯片将ADM485的DE控制在低电平。电平状态便于随时从CPLD获取命令。

软件设计

软件是指CPLD的VHDL程序,主要由六个子软件模块组成:分频器、接收DSP控制命令、CPLD逻辑控制、波特率发生器、接收和发送数据、串并转换和发送数据(图4)。

图4 软件整体结构框图 - 德国Hengstler编码器
图4 软件整体结构框图

分离模块

分频器模块主要将20MHz输入时钟频率分为10MHz和2.5MHz时钟频率,其中10MHz时钟主要用于CPLD逻辑控制模块,2.5MHz时钟主要用于确定波特率发生器模块。

接收DSP控制命令模块

接收DSP控制命令的模块实时采集DSP发送的控制信号,并对控制信号进行实时解码。解码完成后,它立即被传输到CPLD逻辑控制模块。

CPLD逻辑控制模块

CPLD逻辑控制模块是所有CPLD软件的核心。接收到解码数据后,它立即执行逻辑控制操作,并快速控制接收和发送数据模块,以及串行到并行转换和发送数据模块。

波特率发生器模块

波特率发生器模块主要为接收和发送数据模块提供2.5 Mb/s的波特率。

收发数据模块

收发数据模块是整个CPLD软件的重要组成部分。它主要负责与绝对编码器的高速通信。由于其通信方式为异步串行通信,其波特率、通信数据格式和RS-485通信协议必须与绝对值编码器相同。

串行到并行转换和传输数据模块

串并转换和传输数据模块主要将接收到的编码器串行数据转换为并行数据,并将数据锁存在CPLD锁存器中。当CPLD逻辑控制模块控制传输数据时,它被锁存在CPLD中。锁存器中的数据与DSP并行发送,以便DSP执行算术控制。

后记

本设计完成了所有的硬件和软件设计。用亨士乐绝对值编码器读取电机转子位置数据仅需31ms,通信速率可达2.5Mb/s。将此设计与伺服驱动单元相结合,可驱动和控制电机转速高达6000rpm,控制电机转子的位置精度可高达1000mM。

Hengstler编码器授权代理 为您免费提供编码器技术支持,欢迎您的咨询。
微信二维码 - 
 德国Hengstler(亨士乐)授权代理

扫描二维码咨询

编码器 / 机器视觉 / 运动控制
20000+企业的共同选择

Baidu
map