基于STM32控制L6470H驱动器的多轴步进电机控制系统的制作方法

文档序号:13424810阅读:2567来源:国知局
基于STM32控制L6470H驱动器的多轴步进电机控制系统的制作方法

本发明涉及全自动分析仪技术领域,具体的说是基于stm32控制l6470h驱动器的多轴步进电机控制系统。



背景技术:

步进电机多用于自动化控制的仪器,在全自动化学发光免疫分析仪中往往会使用到多个步进电机,比如使用于三维机械臂、侦测模组、旋转模组、移液模组、混匀模组等。而为了提高步进电机的定位及运动控制的精度需要另外使用高细分的步进电机驱动器,并且需要在每段行程的首末段各安装位置传感器进行配合使用。目前控制多轴步进电机的主要方法:单片机通过通讯接口与三轴步进电机控制器通信连接,三轴步进电机控制器输出控制端通过光电耦合器与步进电机驱动器输入控制端连接,三轴步进电机控制器采样信号输入端与光电位移传感器采样信号输出端连接,光电位移传感器的采样信号输出端连接有过压保护模块;步进电机驱动器输出控制端与步进电机输入控制端连接,步进电机驱动器的控制信号输入端与自动半流模块的信号输出端连接。以此来控制三轴步进电机的转动;上述现有技术的缺陷如下:

1、上述方案中,从单片机发送运行指令,需要三轴步进电机驱动器tmc429-l1作为信号中转站,转换信号后再通过光电隔离,接着再将信号传送至步进电机驱动器,最后才传输到步进电机。这样整个电路会变得复杂,且信号的传输速率及传输质量得不到保证。

2、上述方案中三轴步进电机驱动器tmc429-l1最多可以控制三个步进电机,通常全自动化学发光免疫分析仪需要数十个步进电机,上述方案将不能够很好的满足。

3、上述方案中步进电机驱动器细分数有限,较难实现高精度定位功能。

4、上述方案中驱动控制系统硬件电路结构比较复杂,驱动控制系统的可靠性、安全性、控制精度得不到保证。

5、上述方案中当前电机运行状态无法得到有效监控,缺乏控制系统实时性。



技术实现要素:

为了解决上述全自动分析仪存在的技术问题,本发明提供基于stm32控制l6470h驱动器的多轴步进电机控制系统,通过单片机直接发送运动控制命令给步进电机驱动器,步进电机驱动器将速度、加减速度、方向、行程等控制命令进行芯片内部数字内核处理后传送给步进电机带动负载;在同一根spi通讯信号线上,在信号的传输速率及传输质量不受影响的情况下。通过步进电机驱动器来控制更多步进电机(多达8个);实现高精度、精准可靠定位功能需求;简化驱动控制系统的硬件结构,提高控制系统的可靠性、安全性和控制精度。

本发明解决其技术问题所采用的技术方案是:

基于stm32控制l6470h驱动器的多轴步进电机控制系统,包括上位机(arm控制系统)、stm32系列微控制器、电源供应器、l6470h步进电机驱动器、位置传感器,所述stm32系列微控制器通过spi接口与五个(或多达8个)l6470h步进电机驱动器进行通信连接,片选信号通过gpio输入至步进电机驱动器中,位置sensor将外部检测到的位置信号输入至步进电机驱动器中;当片选信号1被选中时,x轴l6470h步进电机驱动器可以随时接受控制命令且x轴步进电机处于待启动状态,x轴电机被选中后,在初始化启动运行时会根据控制命令自动去寻找位置sensor1完成精准的原点定位,所述电源供应器向各功能模块提供所需电源电压。

进一步地,多轴步进电机控制系统由多个步进电机驱动芯片l6470h(目前是5个)构成,所述片选信号采用的stm32系列微控制器的普通gpio引脚,五个电机则有五个片选信号,由软件来配置具体哪个片选信号有效,也就是哪个电机将被启动;状态监测及故障信号提示通过flag和busy引脚将步进电机驱动芯片l6470h的运行状态及故障信号提示实时的传输给stm32系列微控制器,从而方便进行下一步的控制处理;所述位置sensor采用对射型光电开关,通过位置sensor可实现精准的原点定位;通过步进电机驱动芯片的out1a、out2a、out1b、oiut2b四个引脚输出接至步进电机的a、b相绕组,电机通过输出轴分别拖动x轴机械臂、y轴机械臂、z轴机械臂、侦测模组旋转、侦测模组上盖。

进一步地,所述stm32系列微控制器将步进电机1(motor1)运动的加速度、速度、减速度、运行步数等参数通过spi接口发送至u1步进电机驱动器l6470h芯片,cs1是片选端(选择信号端)、sck是同步时钟信号端、sdi是主设备数据输出端、sdo是主设备数据输入端;所述步进电机驱动器l6470h芯片接收到上述参数后通过l6470h数字内核处理把加速度、速度、减速度转化为脉冲频率,将运行步数转化为实际运行距离,经数字内核处理后将信号传输至h桥从而驱动步进电机1,每一个步进电机驱动器分别接片选信号,当片选信号1被选中时,x轴l6470h步进电机驱动器可以随时接受控制命令且x轴步进电机处于待启动状态;当上述参数设置完毕后,使用程序控制使得电机主动去寻找位置sensoer1,当寻找到位置sensoer1时,l6470h芯片的sw引脚从外部得到低电平,此时步进电机处于原点位置,从原点位置开始进行复杂的运动命令使得步进电机1(motor1)输出轴通过同步带拖动x轴机械臂,x轴机械臂准确移动到加样区、取液区、检测区等。motor2、motor3、motor4、motor5的工作原理以此类推。

进一步地,基于stm32控制l6470h驱动器的多轴步进电机控制系统的控制系统软件流程为首先系统进行stm32系列微控制器初始化参数设置,在通过spi通信协议对l6470h的参数设置,实现l6470h驱动步进电机运转,对三维机械臂及侦测模组的运动进行过程控制,完成多轴步进电机控制系统的自动化控制;开始时,stm32系列微控制器初始化,其内部寄存器进行配置,确定stm32系列微控制器当前的工作状态,完成之后,通过stm32系列微控制器对l6470h进行配置,在电机运动的一开始通过位置sensor使得每一轴回归到原点位置,之后再进行复杂的运动控制命令,从而提高全自动化学发光免疫分析仪的移动、加样、侦测旋转的可靠性及定位精准度。

相对于现有技术,本发明的有益效果是:

1、本方案实施中,基于stm32控制l6470h驱动器的多轴步进电机控制系统在spi通讯速率不受影响的情况下,在一条spi通信线上最多可以带动8个步进电机。实现全自动化学发光免疫分析仪三维机械臂的移动、定位及侦测模组上盖转动。

2、本案设计中使用到的l6470h内部一共有25个可用寄存器,每一个寄存器对应某种控制功能或状态位,其中包括过流、过压、欠压、过热、失步等警告,外部不再需要做保护及检测电路。

3、本案设计中使用到的l6470h最高可以设置128细分操作,大大提高了步进电机的脉冲分辨率,减小或消除了震荡、噪声和转矩波动,同时力矩也会有所增加。

4、本案设计中,可以节省更多的stm32系列微控制器引脚开销,内部的数字内核可以节省stm32系列微控制器系统资源。

5、在多轴步进电机的驱动控制系统中,简化了驱动控制系统的硬件结构,提高了驱动控制系统的可靠性、安全性和控制精度。

6、利用usb通讯技术实现了多轴运动控制系统与上位机计算机之间的实时数据通讯,提高了整个控制系统实时性和可扩展性。

附图说明

下面结合附图和实施例对本发明进一步说明。

图1是本发明的控制系统整体结构示意图;

图2是本发明的控制系统工作原理示意图;

图3是本发明的步进电机驱动器控制流程示意图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

如图1-图3所示,图1是本发明的控制系统整体结构示意图,图2是本发明的控制系统工作原理示意图,图3是本发明的步进电机驱动器控制流程示意图。

作为本发明一个较佳的实施例,本发明所述的基于stm32控制l6470h驱动器的多轴步进电机控制系统,包括上位机(arm控制系统)、stm32系列微控制器、电源供应器、l6470h步进电机驱动器、位置传感器,所述stm32系列微控制器通过spi接口与五个(或多达8个)l6470h步进电机驱动器进行通信连接,片选信号通过gpio输入至步进电机驱动器中,位置sensor将外部检测到的位置信号输入至步进电机驱动器中;当片选信号1被选中时,x轴l6470h步进电机驱动器可以随时接受控制命令且x轴步进电机处于待启动状态,x轴电机被选中后,在初始化启动运行时会根据控制命令自动去寻找位置sensor1完成精准的原点定位,所述电源供应器向各功能模块提供所需电源电压。

进一步地,多轴步进电机控制系统由多个步进电机驱动芯片l6470h(目前是5个)构成,所述片选信号采用的stm32系列微控制器的普通gpio引脚,五个电机则有五个片选信号,由软件来配置具体哪个片选信号有效,也就是哪个电机将被启动;状态监测及故障信号提示通过flag和busy引脚将步进电机驱动芯片l6470h的运行状态及故障信号提示实时的传输给stm32系列微控制器,从而方便进行下一步的控制处理;所述位置sensor采用对射型光电开关,通过位置sensor可实现精准的原点定位;通过步进电机驱动芯片的out1a、out2a、out1b、oiut2b四个引脚输出接至步进电机的a、b相绕组,电机通过输出轴分别拖动x轴机械臂、y轴机械臂、z轴机械臂、侦测模组旋转、侦测模组上盖。

进一步地,所述stm32系列微控制器将步进电机1(motor1)运动的加速度、速度、减速度、运行步数等参数通过spi接口发送至u1步进电机驱动器l6470h芯片,cs1是片选端(选择信号端)、sck是同步时钟信号端、sdi是主设备数据输出端、sdo是主设备数据输入端;所述步进电机驱动器l6470h芯片接收到上述参数后通过l6470h数字内核处理把加速度、速度、减速度转化为脉冲频率,将运行步数转化为实际运行距离,经数字内核处理后将信号传输至h桥从而驱动步进电机1,每一个步进电机驱动器分别接片选信号,当片选信号1被选中时,x轴l6470h步进电机驱动器可以随时接受控制命令且x轴步进电机处于待启动状态;当上述参数设置完毕后,使用程序控制使得电机主动去寻找位置sensoer1,当寻找到位置sensoer1时,l6470h芯片的sw引脚从外部得到低电平,此时步进电机处于原点位置,从原点位置开始进行复杂的运动命令使得步进电机1(motor1)输出轴通过同步带拖动x轴机械臂,x轴机械臂准确移动到加样区、取液区、检测区等。motor2、motor3、motor4、motor5的工作原理以此类推。

进一步地,基于stm32控制l6470h驱动器的多轴步进电机控制系统的控制系统软件流程为首先系统进行stm32系列微控制器初始化参数设置,在通过spi通信协议对l6470h的参数设置,实现l6470h驱动步进电机运转,对三维机械臂及侦测模组的运动进行过程控制,完成多轴步进电机控制系统的自动化控制。

本发明在工作时,stm32系列微控制器初始化,其内部寄存器进行配置,确定stm32系列微控制器当前的工作状态,完成之后,通过stm32系列微控制器对l6470h进行配置,在电机运动的一开始通过位置sensor使得每一轴回归到原点位置,之后再进行复杂的运动控制命令。具体工作流程如下:

第一步:x轴机械臂移动携带着y轴机械臂及z轴机械臂移动到到tip头整盒区,y轴机械臂移动到预取tip头上方,z轴机械臂高度下降取tip头。

第二步:z轴机械臂上升到安全高度区域,x轴机械臂移动携带着y轴机械臂及z轴机械臂移动到样本区上方,z轴机械臂高度下降取样本,开始吸液。

第三步:z轴机械臂上升到安全高度区域,x轴机械臂移动携带着y轴机械臂及z轴机械臂移动到加样区,z轴机械臂下降,开始吐液。

第四步:z轴机械臂上升到安全高度区域,x轴机械臂移动携带着y轴机械臂及z轴机械臂移动到试剂区,z轴机械臂高度下降取试剂,开始吸液。

第五步:z轴机械臂上升到安全高度区域,x轴机械臂移动携带着y轴机械臂及z轴机械臂移动到加样区,z轴机械臂下降,开始吐液。

通过上述的工作过程可提高全自动化学发光免疫分析仪的移动、加样、侦测旋转的可靠性及定位精准度。

以上显示和描述了本发明的基本原理、主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等效物界定。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1