一种基于嵌入式系统和FPGA的转台伺服控制系统及方法技术方案

技术编号:31617979 阅读:22 留言:0更新日期:2021-12-29 18:52
本发明专利技术公开了一种基于嵌入式系统和FPGA的转台伺服控制系统及方法,本发明专利技术伺服控制系统为以DSP为核心控制器的嵌入式系统,同时结合FPGA作为控制系统的计算核心,DSP主要用于上位机通讯和转台实时轨迹生成,FPGA用于伺服运算,为实现快速、高精度的转台伺服控制提供了基础;本发明专利技术伺服控制方法,根据DSP获得的转台运动轨迹指令,采用FPGA进行伺服控制运算,能够有效减小伺服控制运算的周期,提升转台的动态控制性能。动态控制性能。动态控制性能。

【技术实现步骤摘要】
一种基于嵌入式系统和FPGA的转台伺服控制系统及方法


[0001]本专利技术属于转台伺服控制领域,涉及一种基于嵌入式系统和FPGA的转台伺服控制系统及方法。

技术介绍

[0002]转台是一种重要的测试仿真设备,可以实现从单自由度到多自由度的位置、速度、加速度的精密运动控制,可以提供精确的空间定位、精密的运动测试基准;可以复现载体姿态、模拟目标运动、目标跟踪等机动载荷运动环境;广泛用于惯性器件及系统的性能测试、评价标定,以及实现车辆、舰船、飞行器等各类运动载体与目标的复杂运动仿真与模拟。因此,对转台的实时性和动态性能提出了较高要求。
[0003]由于转台要求快速执行伺服运动的特点,一般的转台都是采用嵌入式或实时操作系统。但随着对转台功能要求的不断提高,控制算法越来越复杂,导致转台控制软件中伺服运算的计算量越来越大;对转台性能要求的提升使得转台控制软件要求执行的并行任务增多。单纯采用嵌入式系统以无法完成多任务编排。采用实时系统虽可实现多任务并行处理功能,但多数系统中采用硬件定时器产生一个周期为ms级的系统时钟,伺服运算周期很难做到ms级以下,转台的动态控制性能难以得到提升,且随着武器型号国产化要求的日趋严格,进口的实时操作系统不能满足自主可控要求。

技术实现思路

[0004]本专利技术的目的在于克服上述缺陷,提供一种基于嵌入式系统和FPGA的转台伺服控制系统及方法,本专利技术伺服控制系统为以DSP为核心控制器的嵌入式系统,同时结合FPGA作为控制系统的计算核心,DSP主要用于上位机通讯和转台实时轨迹生成,FPGA用于伺服运算,为实现快速、高精度的转台伺服控制提供了基础;本专利技术伺服控制方法,根据DSP获得的转台运动轨迹指令,采用FPGA进行伺服控制运算,能够有效减小伺服控制运算的周期,提升转台的动态控制性能。
[0005]为实现上述专利技术目的,本专利技术提供如下技术方案:
[0006]一种基于嵌入式系统和FPGA的转台伺服控制系统,包括DSP模块和FPGA模块;
[0007]DSP模块包括运动轨迹实时生成模块和通讯模块,通讯模块接收上位机指令并输出至运动轨迹实时生成模块,运动轨迹实时生成模块接收由通讯模块输入的上位机指令,根据上位机指令生成运动轨迹指令组并输出至FPGA模块中的FIFO读写模块;
[0008]FPGA模块包括FIFO读写模块,伺服运算模块,电机控制量生成模块和反馈位置读取模块;FIFO读写模块接收由运动轨迹实时生成模块输入的运动轨迹指令组并按先入先出的顺序进行存储,反馈位置读取模块循环读取转台实际位置反馈信号并输出至伺服运算模块,伺服运算模块读取FIFO读写模块中的运动轨迹指令组,并接收由反馈位置读取模块输入的转台实际位置反馈信号,根据运动轨迹指令组和转台实际位置反馈信号进行伺服控制运算,将伺服运算结果输出至电机控制量生成模块,电机控制量生成模块接收由伺服运算
模块输入的伺服运算结果,将伺服运算结果转换为转台控制信号并发送至转台。
[0009]进一步的,所述FPGA模块还包括I/O状态监控模块,所述I/O状态监控模块用于监控转台的I/O状态,并将相应信号反馈至电机控制量生成模块或上位机。
[0010]一种基于嵌入式系统和FPGA的转台伺服控制方法,采用上述一种基于嵌入式系统和FPGA的转台伺服控制系统实现,包括以下步骤:
[0011]步骤(1)通讯模块循环接收上位机指令并输出至运动轨迹实时生成模块;
[0012]步骤(2)运动轨迹实时生成模块接收由通讯模块输入的上位机指令,根据上位机指令生成运动轨迹指令组并输出至FIFO读写模块;所述运动轨迹指令组包括N个子运动轨迹指令;
[0013]步骤(3)FIFO读写模块接收由运动轨迹实时生成模块输入的运动轨迹指令组并按先入先出的顺序进行存储;
[0014]反馈位置读取模块读取转台实际位置反馈信号并输出至伺服运算模块;
[0015]步骤(4)伺服运算模块读取FIFO读写模块中的一个子运动轨迹指令,并接收由反馈位置读取模块输入的转台实际位置反馈信号,根据子运动轨迹指令和转台实际位置反馈信号进行伺服控制运算,将伺服运算结果输出至电机控制量生成模块;
[0016]步骤(5)电机控制量生成模块接收由伺服运算模块输入的伺服运算结果将伺服运算结果转换为转台控制信号并发送至转台。
[0017]步骤(6)循环进行步骤(4)和(5),直至N个子运动轨迹指令读取完成。
[0018]进一步的,所述步骤(2)中,运动轨迹指令组的生成方法为,运动轨迹实时生成模块接收由通讯模块输入的上位机指令,根据上位机指令在本循环周期生成初始实时运动轨迹指令,将本循环周期的初始实时运动轨迹指令与上一循环周期的初始实时运动轨迹指令进行等间隔线性插值,得到包括N个子运动轨迹指令的运动轨迹指令组,所述N为大于等于2的正整数。
[0019]进一步的,所述步骤(1)中,通讯模块接收上位机指令的循环周期大于步骤中运动轨迹实时生成模块的循环周期T。
[0020]进一步的,所述步骤(2)中,运动轨迹实时生成模块的循环周期T大于生成N个子运动轨迹指令所需的时间。
[0021]进一步的,所述步骤(4)的循环周期为T/N,其中T为运动轨迹实时生成模块的循环周期T。
[0022]进一步的,FPGA中生成循环周期为T/N的时钟信号,作为伺服运算模块的控制时钟,其循环周期为T/N≥伺服运算模块根据一个子运动轨迹指令和转台实际位置反馈信号进行伺服控制运算所需的时间。
[0023]进一步的,所述步骤(1)和步骤(2)中的上位机指令包括转台运动模式,以及位置和速率指令信息。
[0024]进一步的,所述运动轨迹实时生成模块生成的N个子运动轨迹指令按照生成顺序通过并行总线传递至FIFO读写模块并进行存储;所述伺服运算模块读取子运动轨迹指令时,FIFO读写模块按照先入先出的原则将子运动轨迹指令输出至伺服运算模块。
[0025]进一步的,DSP模块还包括捕获单元;所述伺服运算模块生成循环周期为T的时钟信号输出给DSP模块,DSP所述捕获单元捕获所述时钟信号,并作为运动轨迹实时生成模块
的控制时钟;所述运动轨迹实时生成模块的控制时钟生成的初始时刻超前伺服运算模块的控制时钟生成的初始时刻T/2N的时间。
[0026]进一步的,所述伺服运算模块个数与转台轴数相同,所述伺服运算模块将运动轨迹指令组中的每个子运动轨迹指令实时分解为多个单轴运动指令后进行并行伺服控制运算。
[0027]进一步的,所述运动轨迹实时生成模块具有最高中断优先级。
[0028]本专利技术与现有技术相比具有如下有益效果:
[0029](1)本专利技术一种基于嵌入式系统和FPGA的转台伺服控制系统,为以DSP为核心控制器的嵌入式系统,同时结合FPGA作为控制系统的计算核心,DSP主要用于上位机通讯和转台实时轨迹生成,FPGA用于伺服运算,为实现快速、高精度的转台伺服控制提供了基础;
[0030](2)本发本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于嵌入式系统和FPGA的转台伺服控制系统,其特征在于,包括DSP模块(100)和FPGA模块(200);DSP模块(100)包括运动轨迹实时生成模块(110)和通讯模块(120),通讯模块(120)接收上位机指令并输出至运动轨迹实时生成模块(110),运动轨迹实时生成模块(110)接收由通讯模块(120)输入的上位机指令,根据上位机指令生成运动轨迹指令组并输出至FPGA模块中的FIFO读写模块(210);FPGA模块(200)包括FIFO读写模块(210),伺服运算模块(220),电机控制量生成模块(230)和反馈位置读取模块(250);FIFO读写模块(210)接收由运动轨迹实时生成模块(110)输入的运动轨迹指令组并按先入先出的顺序进行存储,反馈位置读取模块(250)循环读取转台实际位置反馈信号并输出至伺服运算模块(220),伺服运算模块(220)读取FIFO读写模块(210)中的运动轨迹指令组,并接收由反馈位置读取模块(250)输入的转台实际位置反馈信号,根据运动轨迹指令组和转台实际位置反馈信号进行伺服控制运算,将伺服运算结果输出至电机控制量生成模块(230),电机控制量生成模块(230)接收由伺服运算模块(220)输入的伺服运算结果,将伺服运算结果转换为转台控制信号并发送至转台。2.根据权利要求1所述的一种基于嵌入式系统和FPGA的转台伺服控制系统,其特征在于,所述FPGA模块(200)还包括I/O状态监控模块(240),所述I/O状态监控模块(240)用于监控转台的I/O状态,并将相应信号反馈至电机控制量生成模块(230)或上位机。3.一种基于嵌入式系统和FPGA的转台伺服控制方法,其特征在于,采用权利要求1或2所述的一种基于嵌入式系统和FPGA的转台伺服控制系统实现,包括以下步骤:步骤(1)通讯模块(120)循环接收上位机指令并输出至运动轨迹实时生成模块(110);步骤(2)运动轨迹实时生成模块(110)接收由通讯模块(120)输入的上位机指令,根据上位机指令生成运动轨迹指令组并输出至FIFO读写模块(210);所述运动轨迹指令组包括N个子运动轨迹指令;步骤(3)FIFO读写模块(210)接收由运动轨迹实时生成模块(110)输入的运动轨迹指令组并按先入先出的顺序进行存储;反馈位置读取模块(250)读取转台实际位置反馈信号并输出至伺服运算模块(220);步骤(4)伺服运算模块(220)读取FIFO读写模块(210)中的一个子运动轨迹指令,并接收由反馈位置读取模块(250)输入的转台实际位置反馈信号,根据子运动轨迹指令和转台实际位置反馈信号进行伺服控制运算,将伺服运算结果输出至电机控制量生成模块(230);步骤(5)电机控制量生成模块(230)接收由伺服运算模块(220)输入的伺服运算结果将伺服运算结果转换为转台控制信号并发送至转台。步骤(6)循环进行步骤(4)和(5),直至N个子运动轨迹指令读取完成。4.根据权利要求3所述的一种基于嵌入式系统和FPGA的转台伺服...

【专利技术属性】
技术研发人员:王媛媛赵庆彭演宾赵睿达王胜利
申请(专利权)人:北京航天控制仪器研究所
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1