微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 基于ARM+FPGA的运动控制器设计与实现

基于ARM+FPGA的运动控制器设计与实现

时间:01-04 来源:互联网 点击:

统的输出。当两者的误差范围不超过某一个限度时,在FPGA中对实时的脉冲发送速率进行调节;当两者的误差超过某一个设定的范围时,FPGA 向ARM 发送一个中断请求。当某个轴接收到减速信号SD 或者极限到位信号EL 时,在FPGA 内部经过同样一个中断发生器模块向ARM 发送一个中断。ARM 接收到中断信号后,开启运动控制进程,对PID 控制参数进行整定,计算控制量。

图3 单轴控制模块设计

  3.2 驱动程序接口设计

  在系统设计中,两片FPGA 作为ARM 的外设,挂在ARM 的外设地址空间。当ARM 要访问FPGA时,首先要在ARM 中运行包含FPGA 所在地址空间地址的指令,而后ARM 的片选线选中FPGA,FPGA检测到自己被选中,从而开始检测地址总线上传来的ARM 指令所包含的地址数据。根据从ARM 地址线传来的地址总线上的数据,FPGA 读取从ARM 数据总线上传来的数据总线上的数据,而后开始进行相应的动作,从而完成一次控制任务。寄存器是本运动控制系统的基本组成部分之一,ARM 对FPGA 的控制就是通过配置在FPGA 内部的寄存器来实现的。完成配置的FPGA 整体结构如图4 所示。

图4 FPGA 内部结构图

  4 控制算法设计与仿真

  4.1 单神经元自适应PID 控制器设计

  单神经元自适应PID 控制器的结构如图5 所示。

图5 单神经元自适应PID 控制器

  图5 中,神经元的3 个状态变量分别为:

单神经元自适应控制器是通过对加权系数的调整来实现自适应、自学习功能,权系数的调整是根据有监督的Hebb 学习规则实现的。

  控制器的输出为:

  其中:

  式(5)中,w'i为加权系数,可在线修正。加权值的在线学习则采用规范化的学习算法,公式为式(6):

  式(7)中ηi(i = I、P、D ), ηI 、ηP 、ηD 分别为积分、比例、微分的学习速率。

  4.2 算法仿真

  仿真系统的参数:比例、积分、微分的学习速率分别为 ηP =0.40 , ηI =0.35 , ηD =0.40 ,系统初始误差量值设置为1,仿真曲线如图6 所示。从仿真结果可以看出,系统PID 控制参数随系统的运行在线整定,经整定的PID 参数对系统进行控制,系统的误差最终趋于0。

图6 单神经元PID 控制误差曲线

  5 运行结果

  5.1 系统位移调试结果

  为了测试运动控制系统的位置控制效果,在电机空载时进行了100 次试验,图7 所示为在实验室中测定的电机空载时的位移测试结果曲线图,各试验数据均是取100 次实验数据的平均值。图7 为各实验数据的曲线拟合图。从图中可以看出,电机空载时脉冲发生器和脉冲计数器的误差曲线经历了一个积累的过程,当误差超过设定值0.18%时单神经元自适应PID控制器开始在线整定PID 控制参数,整定结果使系统的误差趋于0。

图7 系统位移调试结果

  5.2 系统速度调试结果。

  为了测量系统的速度响应结果,系统使用M/T法[7]对速度数据进行测量,M/T 法的计算公式如式(8)所示:

  式(8)中f 为基准时钟频率;P 为光电编码器每转一周产生的脉冲个数;M1 和M2 分别是在相同的时间内对编码器脉冲和基准时钟脉冲进行计数的计数值。

  在电机空载时进行了100 次试验,图8 所示为在实验室中测定的电机空载时的速度测试结果,各个参数值均是取100 次实验数据的平均值。图8 中设定速度值对应程序运行时在脉冲发生器中设定的分频系数,驱动器显示电机转速对应设定速度时对应的误差,使用M/T 测得的转速对应读取速度时对应的误差。

图8 电机空载时速度测试结果

  6 结论

  采用嵌入式方案设计的运动控制系统不管在体积、成本还是功能方面,较原有的工控机+板卡的结构均有较大的优势。该系统突破了原有的工业CT 运动控制系统本身固有的一些缺点,采用嵌入式的ARM+FPGA 解决方案进行设计,控制系统内部采用基于单神经元自适应PID 控制器进行设计。系统运行结果证明方案的可行性。为今后进一步研发拥有自主知识产权的基于嵌入式系统的多轴智能运动控制器做了基础性的探索工作。

参考文献:

[1].AT91RM9200 datasheethttp://www.dzsc.com/datasheet/AT91RM9200+_143939.html.
[2].EP1C6Q240C8 datasheethttp://www.dzsc.com/datasheet/EP1C6Q240C8+_1135222.html.
[3].M1 datasheethttp://www.dzsc.com/datasheet/M1+_2039447.html.
[4].M2 datasheethttp://www.dzsc.com/datasheet/M2+_2039448.html.

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

网站地图

Top