一种基于STM32和FPGA的数字舵机控制器制造技术

技术编号:13714359 阅读:68 留言:0更新日期:2016-09-16 23:47
本实用新型专利技术提供一种基于STM32和FPGA的数字舵机控制器,包括传感器组、STM32主控制模块、FPGA模块和功率放大模块;其中传感器组包括用于获取舵机的转速信号的绝对值光电编码器和用于获取舵机的角位移和角速度的旋转变压器;绝对值光电编码器的输出端通过AD转换模块与STM32主控制模块的输入端连接,旋转变压器的输出端通过信号解调模块与FPGA模块连接;STM32主控制模块与FPGA模块连接,FPGA模块的输出端通过功率放大模块与舵机的驱动模块连接。本实用新型专利技术利用STM32主控制模块和FPGA模块进行分工,STM32主控制模块减少引入的干扰,进而增强该装置的抗干扰性;FPGA模块作为协同处理;最后经过具有高速光耦隔离功能的功率放大模块后送给舵机,提高电路的集成度和抗干扰性。

【技术实现步骤摘要】

本技术涉及轮船舵机控制领域,具体涉及一种基于STM32和FPGA的数字舵机控制器
技术介绍
随着计算机技术和自动控制的发展,舵机作为控制系统中的执行机构,被越来越多的应用于各个领域中。特别是近年来嵌入式控制技术和集成化电路的发展,使得舵机的实际应用范围越来越广。在实际应用中,舵机的控制也由简单的控制发展到对速度和位置的精确控制。为了降低使用成本,提高执行机构的工作效率,消除干扰信号对舵机控制的影响来实现更精确的控制,成为近年来研究的热点。
技术实现思路
本技术要解决的技术问题是:提供一种基于STM32和FPGA的数字舵机控制器,能够消除干扰信号对舵机控制的影响来实现更精确的控制。本技术为解决上述技术问题所采取的技术方案为:一种基于STM32和FPGA的数字舵机控制器,其特征在于:它包括传感器组、STM32主控制模块、FPGA模块和功率放大模块;其中,所述的传感器组包括用于获取舵机的转速信号的绝对值光电编码器和用于获取舵机的角位移和角速度的旋转变压器;绝对值光电编码器的输出端通过AD转换模块与所述的STM32主控制模块的输入端连接,旋转变压器的输出端通过信号解调模块与所述的FPGA模块连接;所述的STM32主控制模块与FPGA模块连接,FPGA模块的输出端通过功率放大模块与舵机的驱动模块连接。按上述方案,所述的STM32主控制模块通过RS484总线与上位机通信。按上述方案,所述的STM32主控制模块还连接有显示器。按上述方案,它还包括电源模块,电源模块直接与所述的功率放大模块连接供电,电源模块通过DC/DC降压隔离模块分别与所述的STM32主控制模块、FPGA模块连接供电。本技术的有益效果为:利用STM32主控制模块和FPGA模块进行分工,STM32主控制模块作为主控,用于处理控制信息,不必占用过多的CPU资源去直接控制电机,减少由此引入的干扰,进而增强该装置的抗干扰性;FPGA模块作为协同处理,根据STM32发送来的控制命令生成相应的A、B相的脉冲;最后经过具有高速光耦隔离功能的功率放大模块后,送给舵机使其按照要求动作,这样提高电路的集成度和抗干扰性。附图说明图1为本技术一实施例的结构示意图。图2为STM32和FPGA 的接线图。图3为FPGA内部的加减速模块硬件框图。具体实施方式下面结合具体实例和附图对本技术做进一步说明。本技术提供一种基于STM32和FPGA的数字舵机控制器,如图1和图2所示,包括传感器组、STM32主控制模块、FPGA模块和功率放大模块;其中,所述的传感器组包括用于获取舵机的转速信号的绝对值光电编码器和用于获取舵机的角位移和角速度的旋转变压器;绝对值光电编码器的输出端通过AD转换模块与所述的STM32主控制模块的输入端连接,旋转变压器的输出端通过信号解调模块与所述的FPGA模块连接;所述的STM32主控制模块与FPGA模块连接,FPGA模块的输出端通过功率放大模块与舵机的驱动模块连接。优选的,所述的STM32主控制模块通过RS484总线与上位机通信。上位机通过RS485模块向STM32主控制模块发出控制命令,RS485采用平衡驱动器和差分接收器的组合,抗噪声干扰性好,同时通讯距离和速度也得到提高。优选的,所述的STM32主控制模块还连接有显示器,本实施例为LCD,能实时显示上位机发出的控制命令和舵角位置、转动速度等数据。进一步优选的,它还包括电源模块,电源模块直接与所述的功率放大模块连接供电,电源模块通过DC/DC降压隔离模块分别与所述的STM32主控制模块、FPGA模块连接供电,避免电源与其直接接触,完全的电气隔离能提高工作可靠性。本技术利用了STM32主控制模块和FPGA模块进行分工,STM32主控制模块作为主控,用于处理控制信息,不必占用过多的CPU资源去直接控制电机,减少由此引入的干扰,进而增强该装置的抗干扰性;FPGA模块作为协同处理,根据STM32发送来的控制命令生成相应的A、B相的脉冲。为了在电机启动时,避免电机在运行的过程中产生冲击、超程、失步和振荡等现象, 也为了使执行机构能够平稳和准确的定位,在电机从开机到停机期间增加加减速的过程,使其平滑的过渡,避免速度的突变给电机带来损伤,这就需要利用FPGA内部的加减速模块,其具体结构如图3所示,其能调整脉冲输出的个数和频率,调整步进电机加减速运动;绝对值光电编码器采集舵角位置数据,经A/D转换模块反馈到STM32主控制模块,使得STM32主控制模块根据算法及时控制舵机转动,减小误差。本技术采用STM32+FPGA架构,STM32主控制模块利用其高速数据处理能力,根据预设控制算法实现舵机闭环控制,FPGA模块为协同处理模块,具有高速、高同步、纯硬件的特点以及灵活的逻辑可控性,可以很好的实现单轴任意频率脉冲的生成,控制舵机平滑启停,本技术具有舵机控制电路结构简洁、成本低、设备工作效率高、抗干扰强等优点,能实现精确控制步进电机的目的。本实施例中,舵机由步进电机组成,舵机工作时,上位机通过RS485向STM32主控制模块发出控制命令和接收来自STM32主控制模块的舵角数据,STM32主控制模块就收到控制命令后,根据预设的算法给FPGA模块送入控制信号;FPGA模块接收命令后,在内部加减速模块作用下,脉冲输出模块输出脉冲信号,经过功率放大模块后驱动执行机构(步进电机);旋转变压器此时不断反馈步进电机转子的模拟量,在旋转变压器信号解调模块的解调作用下将数字量送到FPGA模块,FPGA模块由此判断步进电机有无过冲、失步等现象,实现精确控制步进电机;与此同时绝对值光电编码器将舵角数据反馈到STM32主控制模块,并依据预设的PID算法对误差进一步修正,控制执行机构达到预期目标;此过程中LCD实时显示控制命令、舵机角度、速度等信息,实现人机交互。本实施例中,FPGA模块产生的脉冲信号,需要经过功率放大模块才能送给步进电机,在FPGA模块与功率放大模块之间加入高速光耦隔离电路,有效防止电机上的干扰信号对FPGA的干扰,从而提高系统的抗干扰能力。以上实施例仅用于说明本技术的设计思想和特点,其目的在于使本领域内的技术人员能够了解本技术的内容并据以实施,本技术的保护范围不限于上述实施例。所以,凡依据本技术所揭示的原理、设计思路所作的等同变化或修饰,均在本技术的保护范围之内。本文档来自技高网...

【技术保护点】
一种基于STM32和FPGA的数字舵机控制器,其特征在于:它包括传感器组、STM32主控制模块、FPGA模块和功率放大模块;其中,所述的传感器组包括用于获取舵机的转速信号的绝对值光电编码器和用于获取舵机的角位移和角速度的旋转变压器;绝对值光电编码器的输出端通过AD转换模块与所述的STM32主控制模块的输入端连接,旋转变压器的输出端通过信号解调模块与所述的FPGA模块连接;所述的STM32主控制模块与FPGA模块连接,FPGA模块的输出端通过功率放大模块与舵机的驱动模块连接。

【技术特征摘要】
1.一种基于STM32和FPGA的数字舵机控制器,其特征在于:它包括传感器组、STM32主控制模块、FPGA模块和功率放大模块;其中,所述的传感器组包括用于获取舵机的转速信号的绝对值光电编码器和用于获取舵机的角位移和角速度的旋转变压器;绝对值光电编码器的输出端通过AD转换模块与所述的STM32主控制模块的输入端连接,旋转变压器的输出端通过信号解调模块与所述的FPGA模块连接;所述的STM32主控制模块与FPGA模块连接,FPGA模块的输出端通过功率放大模块与舵机的驱动模块连接。2...

【专利技术属性】
技术研发人员:李浩周鹏安蒙强郑仲星
申请(专利权)人:武汉理工大学
类型:新型
国别省市:湖北;42

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

1