一种基于stm32和fpga的数字舵机控制器的制造方法

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