基于fpga的多轴控制器用于多路电机运动
0 2022-12-23

介绍了一种基于fpga的多轴控制器,控制器主要由arm7(LPC2214)和fpga(EP2C5T144C8)及其外围电路组成,用于同时控制多路电机的运动。利用Verilog HDL硬件描述语言在fpga中实现了电机控制逻辑,主要包括脉冲控制信号产生、加减速控制、编码器反馈信号的辨向和细分、绝对位移记录、限位信号保护逻辑等。论文中给出了fpga内部一些核心逻辑单元的实现,并利用QuartusⅡ、Modelsim SE软件对关键逻辑及时序进行了仿真。实际使用表明该控制器可以很好控制多轴电机的运动,并且能够实现高精度地位置控制。

随着电机广泛地应用于数字控制系统中,对电机控制的实时性和精度上的要求越来越高。如何灵活、有效地控制电机的运行成为研究的主要方向。文中采用现场可编程逻辑门阵列(Field Programmable Gate Array,fpga),通过Verilog语言编程来实现电机的控制。利用fpga设计具有硬件设计软件化、高度集成化、高工作频率等优点。fpga最大的特点就是灵活,实现你想实现的任何数字电路,可以定制各种电路,减少受制于专用芯片的束缚,真正为自己的产品量身定做。在设计的过程中可以灵活的更改设计,而且它强大的逻辑资源和寄存器资源可以让你轻松的去发挥设计理念。其并行执行,硬件实现的方式可以应对设计中大量的高速电子线路设计需求。

1 多轴控制器主要功能

多轴控制器与上位机、电机驱动器等配合使用,图1为采用多轴控制器组成的控制系统总体示意图。控制器接收上位机发送的控制指令,分析处理并产生相应的方向信号、脉冲信号给驱动器,从而达到控制电机运行的目的。为了提高系统的控制精度,将电机的编码器信号作为反馈信号输入给控制器(内部实现自动辨向及四细分)。在各轴运动过程中,专用控制器对电机运行的绝对位移进行记录,并且可以实时地将各轴的绝对位置信息上传给上位机。另外在电机运行的过程中,为了保证电机运行的安全性,控制器还采用了限位信号反馈实现全硬件保护措施。

基于ARM和FPGA的多路电机控制方案

2 多轴控制器组成

专用控制器由arm(LPC2214)、fpga(EP2C5T144C8)、驱动器接口电路、编码器接口电路、限位检测电路和电源电路等组成,如图2为一个八轴电机控制器的硬件组成图。arm通过串口实现与上位机之间的通信,解析从上位机获得的控制指令,并通过fpga产生相应输出信号给驱动器接口,驱动器接口外接驱动器。编码器信号作为位置反馈信号同编码器接口相连,形成位置环反馈。限位信号作为安全检测信号同限位检测接口相连,为整个系统添加一道安全保障。

基于ARM和FPGA的多路电机控制方案

3 fpga控制逻辑

专用控制器在完成整个控制的过程中,arm只负责指令解析、控制指令发送、实时数据上传等任务,fpga才是多轴专用控制器的核心。通过Verilog HDL语言在fpga内部实现了加减速曲线、编码器信号辩向及四细分、绝对位移记录等功能。图3为电机控制的整体输入、输出信号图,通过片选信号CS、读有效信号rd_enable、写有效图信号wr_enable进行电机通道选择。图4给出了1#通道控制的fpga内部逻辑示意图,下面将逐一对各主要模块进行详细介绍。

基于ARM和FPGA的多路电机控制方案基于ARM和FPGA的多路电机控制方案

1)加减速曲线模块

为了更有效、更理想地控制电机的运行,在fpga内部设计了加减速曲线模块。文中采用了一种近似指数加减速曲线的方法,如图5为近似指数加速曲线,减速曲线与之对称。速度等距分布,那么在该速度级上保持的时间不一样场。为了简化,用速度级数N与一个常数C的乘积去模拟并且保持的时间用不熟来代替。因此,速度每升一级,电机都要在该速度级上走NC步(其中N为该速度级数)。

基于ARM和FPGA的多路电机控制方案

建立两个名为rom_pos、rom_div的ROM模块,如图6所示,rom_pos为脉冲个数存储器,rom_div为分频值存储器。通过相同的地址线将两个存储器连接起来,使一个地址对应一组脉冲个数和分频值。

fpga获得方向信号、脉冲(距离)信号、目标分频值之后.如果电机运行过程中不需要加减速,直接以目标分频值控制脉冲信号的发送即可。如果需要执行加减速,则fpga内部要调用加减速模块。根据地址线获取一组数据,即脉冲个数pul_cnt和分频值div_num,以div_num大小的分频值发送pul_cnt个脉冲,然后再按照下一组数据值发送脉冲,直到分频值达到目标分频值为止,减速过程与加速过程对称。当电机按照脉冲(距离)信号运行到一半行程的时候,如果分频值还未达到目标分频值,此时就要进行强制减速。

编写仿真程序,使两个存储器地址线相同,对存储器地址address做加1运算,从而可一次性读取两个存储器所对应存储单元的数据。利用Modulesim仿真工具对加减速模块进行功能仿真,仿真结果如图7所示,访问一个存储器地址就对应着一组脉冲个数和分频值的输出。

基于ARM和FPGA的多路电机控制方案

2)编码器反馈辨向及四细分

编码器反馈信号由A、B、Z三相信号组成。A、B两相信号相位相差90度,一个周期内A、B相信号会出现4种不同的组合状态,根据这一特征可以对编码器信号进行辩相和四细分处理。Z相信号为编码器零位信号,当编码器旋转一圈,Z相就会有信号输出。
在QuartusⅡ编译环境下成功编译之后,调用Modulesim仿真软件,编写仿真程序,使之产生全局时钟、复位信号、相位差为90度的A、B相信号和Z相信号。如图8所示,给出了该多轴控制器中所采用的编码器信号辩相及四细分的功能仿真图。

3)绝对位移记录

多轴专用控制器可以将电机运行的绝对位移实时地上传给上位机,这一功能的实现就有赖于fpga中的绝对位移记录部分的逻辑功能。在fpga内部设置一个绝对位移寄存器,用来对编码器反馈信号(辨向四细分之后)进行计数运算。当编码器信号的一个脉冲到来时,根据辩向后的方向信号做不同的运算处理。方向为正则绝对位移寄存器的值就进行加1运算,否则进行减1运算,从而达到对绝对位移进行记录的目的。并且arm可以随时读取该绝对位移寄存器的值,然后将其值上传给上位机,从而完成实时上传电机运行位置信息的功能。编写仿真程序对绝对位移寄存器进行功能仿真,结果如图9所示。

4 结束语

该方案成功已应用于某6轴Stewart平台运动控制中,在实现了0.1μm的运动定位精度的同时,运动机构得到了很好的保护,多次实验及实际使用中,该专用控制器运行安全可靠。 

声明: 本文转载自其它媒体或授权刊载,目的在于信息传递,并不代表本站赞同其观点和对其真实性负责,如有新闻稿件和图片作品的内容、版权以及其它问题的,请联系我们及时删除。(联系我们,邮箱:evan.li@aspencore.com )
0
评论
  • 相关技术文库
  • FPGA
  • 可编程
  • PLC
  • verilog
  • FPGA数字图像处理基础(二)——灰度直方图统计(Verilog)

    图像灰度直方图统计是数字图像处理的基础操作,通过统计图像灰度值提取简单的图像特征,并对复杂的图像处理方法提供统计数据参考。本文简要介绍图像灰度直方图的概念与作用,详细阐述图像灰度值统计方法与Verilog实现

    12小时前
  • FPGA数字图像处理基础(一)——色彩空间转换(Verilog)

    不同图像处理方法通常采用不同的图像色彩空间,图像色彩空间转换是图像处理算法的基础。本文简要介绍常见的图像色彩空间,详细阐述RGB、YCbCr色彩空间与灰度图像转化的算法与Verilog实现

    12小时前
  • FPGA数字图像显示原理与实现(Verilog)

    HDMI和VGA视频接口广泛应用于各种显示设备,掌握图像显示时序是FPGA数字图像处理的基础

    12小时前
  • 详解IIC协议(Verilog实现)

    IIC集成电路总线(Inter Intergrated Circuit)基础知识、协议标准和Verilog实现

    12小时前
  • 详解UART协议(Verilog实现)

    UART通用异步收发传输器(Universal Asynchronous Receiver/Transmitter)基础知识、协议标准和Verilog实现

    12小时前
  • 一种简易数字存储示波器的设计方案

    1引言与传统模拟示波器相比.数字存储示波器不仅具有可存储波形、体积小、功耗低,使用方便等优点,而且还具有强大的信号实时处理分析功能。在电子测量领域,数字存储示波

    前天
  • 基于FPGA的数字分频器设计方法

    作者:赵厉,张志国,唐芳福1.概述随着集成电路技术的快速发展,半导体存储、微处理器等相关技术的发展得到了飞速发展。FPGA以其可靠性强、运行快、并行性等特点在电

    03-29
  • SPI 总线四种工作方式

    SPI总线是Motorola公司推出的三线同步接口,同步串行3线方式进行通信:一条时钟线SCK,一条数据输入线MOSI,一条数据输出线MISO;用于CPU与各种

    03-28
  • 采用EP2C5T144C8 FPGA实现PS/2接口的设计方法

    引言当前嵌入式系统技术已得到了广泛应用,但传统嵌入式系统的人机接口多采用小键盘操作的文本菜单方式,用户操作较为不便。本设计利用FPGA实现对PS/2接口鼠标的控

    03-27
  • 实现一维与二维信号显示的VGA的接口时序和系统设计

    引言随着电子技术的发展,VGA(视频图形阵列)接口出现在很多嵌入式平台上,用于图像信息的实时显示等。在某些情况下,设计者希望通过普通的显示器或投影仪观测FPGA

    03-27
  • 实时时钟RTC设计推荐方案

    一、什么是RTC实时时钟(Real_TimeClock)简称为RTC,主要为各种电子系统提供时间基准。通常把集成于芯片内部的RTC称为片内RTC,在芯片外扩展的

    03-27
  • 基5FFT的verilog代码实现及仿真

    本文根据算法推导完成FPGA代码的实现基仿真

    03-27
下载排行榜
更多
广告