一种控制步进电机减速位移恒定的方法、存储介质及设备

文档序号:651751 发布日期:2021-04-23 浏览:16次 >En<

阅读说明:本技术 一种控制步进电机减速位移恒定的方法、存储介质及设备 (Method, storage medium and equipment for controlling constant deceleration displacement of stepping motor ) 是由 沈坤 张婉 曹桂平 于 2020-12-14 设计创作,主要内容包括:本发明的一种控制步进电机减速位移恒定的方法、存储介质及设备,计算步进电机每一步的脉冲频率,并向步进电机驱动器发送脉冲,使电机从任意速度减速到停止都能保持同样的位移。其中所发送的脉冲频率确定方法为由于在不同的速度下通过控制减速度就可以控制最终的位移,对于步进电机,向驱动器发送一个脉冲步进电机就会转动一个固定的角度,转动一个固定的角度就会使传送带前进固定的距离,所以机械结构和配套的步进电机及驱动器会确定脉冲当量,由于控制步进电机最终是通过发送脉冲来实现,所以再进行一个单位转换即可。本发明涉及的算法效率高,对处理器性能没有高要求。同时可降低机械结构设计难度且可以节省成本。(The invention discloses a method, a storage medium and equipment for controlling the constant deceleration displacement of a stepping motor. The transmitted pulse frequency determining method is that the final displacement can be controlled by controlling the deceleration under different speeds, for a stepping motor, a pulse stepping motor is transmitted to a driver to rotate by a fixed angle, and the transmission belt can advance by a fixed distance by rotating by the fixed angle, so that the mechanical structure, the matched stepping motor and the driver can determine the pulse equivalent, and as the control of the stepping motor is finally realized by transmitting pulses, one unit conversion can be carried out. The algorithm related by the invention has high efficiency and has no high requirement on the performance of the processor. Meanwhile, the design difficulty of a mechanical structure can be reduced, and the cost can be saved.)

一种控制步进电机减速位移恒定的方法、存储介质及设备

技术领域

本发明涉及电机控制技术领域,具体涉及一种控制步进电机减速位移恒定的方法、存储介质及设备。

背景技术

在贴片机中,有一个传送模块,该模块的作用是传入将被贴片的PCB板和传出已完成贴片的PCB板,所以该模块分为了三个部分:进板区、贴片区和出板区。顾名思义,PCB板将停留在贴片区的指定位置等待完成贴片动作。在目前的传送模块中是以如图1所示的方式完成PCB板的到位控制:未贴装的PCB板进入贴装区后保持原来的高速匀速运动(300mm/s),一旦通过了停止传感器的位置就会触发减速和挡销升起,最终以原来5%的速度撞击挡销并停在挡销处。

显然,如果能使速度降到0的同时在误差允许范围内精准地停到指定位置,那么就可以去除挡销。这样一来,成本和结构设计的难度都有所下降。而且,单侧挡销还存在一个隐患,在PCB板尺寸较大时,由于传送轨道和板边存在间隙,撞击挡销难免会以撞击点为中心产生旋转,这种情况下的贴装精度难以保证。为了对上述情况做出改进,本发明提出了一种保证步进电机位移恒定的方法,使PCB板以任意速度通过传感器都能准确停止在指定位置。

发明内容

本发明提出的一种控制步进电机减速位移恒定的方法、存储介质及设备,可解决上述技术问题,使PCB板以任意速度通过传感器都能准确停止在指定位置。

为实现上述目的,本发明采用了以下技术方案:

一种控制步进电机减速位移恒定的方法,包括以下步骤:

计算步进电机每一步的脉冲频率,并向步进电机驱动器发送脉冲;

其中,脉冲频率的计算步骤如下:

假设传感器与挡销的距离为l mm,PCB板经过传感器时的速度为v mm/s,传感器检测到PCB板到电机开始执行减速动作的时延为Δt,则实际用于减速过程的距离为(l-v·Δt)mm;

根据匀减速直线运动的规律得到减速度:

由机械结构和配套的步进电机及驱动器确定的脉冲当量k pulse/mm已知,则有如下推导:

减速距离转换为步进电机脉冲数为k(l-v·Δt)pulses;

减速度以步进电机脉冲数的单位表示为kapulses/s2

减速开始的起始速度以步进电机脉冲数的单位表示为kvpulses/s,即脉冲频率;

那么对于步进电机每一步的脉冲频率,如下:

另一方面,本发明还公开一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如上述方法的步骤。

第三方面,本发明还公开一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行上述方法的步骤。

由上述技术方案可知,本发明的控制步进电机减速位移恒定的方法通过计算步进电机每一步的脉冲频率,并向步进电机驱动器发送脉冲,使电机从任意速度减速到停止都能保持同样的位移。其中所发送的脉冲频率确定步骤为由于不同的速度下通过控制减速度就可以控制最终的位移,对于步进电机,向驱动器发送一个脉冲步进电机就会转动一个固定的角度,转动一个固定的角度就会使传送带前进固定的距离,所以机械结构和配套的步进电机及驱动器会确定脉冲当量,由于控制步进电机最终是通过发送脉冲来实现,最后再进行一个单位转换即可。本发明涉及的算法效率高,对处理器性能没有高要求。同时可降低机械结构设计难度且可以节省成本。

附图说明

图1是贴片机的传送结构正视及俯视示意图;

图2是本发明的结构框图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。

本实施例所述的控制步进电机减速位移恒定的方法,包括以下步骤:

计算步进电机每一步的脉冲频率,并向步进电机驱动器发送脉冲;

其中,脉冲频率的计算步骤如下:

假设传感器与挡销的距离为l mm,PCB板经过传感器时的速度为v mm/s,传感器检测到PCB板到电机开始执行减速动作的时延为Δt,则真正用于减速过程的距离为(l-v·Δt)mm。根据匀减速直线运动的规律很容易得到减速度:

由机械结构和配套的步进电机及驱动器确定的脉冲当量k pulse/mm已知,则有如下推导:

减速距离转换为步进电机脉冲数为k(l-v·Δt)pulses;

减速度以步进电机脉冲数的单位表示为kapulses/s2

减速开始的起始速度以步进电机脉冲数的单位表示为kvpulses/s,即脉冲频率;

那么对于步进电机每一步的脉冲频率,有如下的递推关系:

至此,保证步进电机位移恒定的理论主体已经得到,实现该方法的硬件方案大体思路为:主控部分由MCU加FPGA(或单独一颗性能足够的MCU)实现,二者通过SPI(或其他通讯总线)连接。其中MCU负责计算每一步的脉冲频率,将结果给到FPGA,FPGA负责按照给定的频率向步进电机驱动器发送脉冲。

上述脉冲频率的计算步骤可进一步解释为:

已知条件为传感器与挡销的距离为l mm,PCB板经过传感器时的速度为v mm/s,传感器检测到PCB板到电机开始执行减速动作的时延为Δt和由机械结构和配套的步进电机及驱动器确定的脉冲当量k pulse/mm。对步进电机的控制就是通过向其配套的驱动器发送脉冲来完成的,脉冲频率越快,转速就越快,那么保证减速位移恒定首先是一个减速过程,所以需要给步进电机驱动器发送频率越来越低的脉冲直到不发送脉冲(频率为0),那么如何确定这个越来越低的频率到底是多少呢?又如何保证位移恒定呢?

在上述条件下真正的减速距离为(l-v·Δt)mm,因为传感器检测到PCB板到电机开始执行减速动作的时延为Δt,所以电机真正减速之前还以v mm/s的速度走过了v·Δtmm。

由物理学知识可知,对于匀减速直线运动,起始速度v、加速度a和位移x之间存在一个等量关系v2=2ax,将已知条件--PCB板经过传感器时的速度v mm/s和第一个推导出来的条件--真正的减速距离(l-v·Δt)mm代入该等式,就可以推导出第二个条件--减速过程的加速度(减速度):

到这里位置,上面的第二个问题得到了回答,在不同的速度下通过控制减速度就可以控制最终的位移。对于步进电机,向驱动器发送一个脉冲步进电机就会转动一个固定的角度,转动一个固定的角度就会使传送带前进固定的距离,所以机械结构和配套的步进电机及驱动器会确定脉冲当量k pulse/mm。由于控制步进电机最终是通过发送脉冲来实现,所以要进行一个单位转换:

减速距离转换为步进电机脉冲数为k(l-v·Δt)pulses;

减速度以步进电机脉冲数的单位表示为ka pulses/s2

减速开始的起始速度以步进电机脉冲数的单位表示为kv pulses/s,即脉冲频率;

由物理学知识可知,对于匀减速直线运动,任意时刻t的速度vt与起始速度v存在一个等量关系vt=v-at,进行一个单位转换可以得到ft=kvt=kv-ka·t,考察一下减速阶段的第一个脉冲频率(记初始速度v对应的频率kv=f0),脉冲的频率和时间间隔存在一个等量关系f·t=1,因此

合并起来就是上面那个递推关系式。

下面给出一个实例,MCU为STM32F103ZEH6,FPGA为EP4C55F484,二者通过SPI连接,MCU通过RS485串口连接上位机或上层控制板,FPGA输出差分脉冲信号给步进驱动器。由于该控制板是3.3V电平,而电机驱动器最低需要5V信号,因此存在电平转换IC。如果选择5V逻辑的主控IC,就不需要电平转换IC。由于驱动器需要差分信号输入,因此存在单端转差分IC,如果驱动器不需要差分信号控制,就不需要单端转差分IC。

如图2所示,完整的工作流程如下所述:

当PCB板传送到传感器位置时,传感器被激活,上层板接收到传感器发出的信号(当然传感器信号也可以直接接入控制板)后通过RS485串口向控制板发送减速停止的命令。控制板MCU接收到命令之后解析执行,根据减速距离(已知参数,直接固化在程序里)和当前速度(已知参数,在上位机或上层板设置)计算出减速度,然后递推计算每一步的速度即FPGA要发送的脉冲频率,再根据FPGA的计数器频率(已知参数,由FPGA程序设置)计算出FPGA的分频数,每计算一步就通过SPI将计算结果发送给FPGA。FPGA这边需要建立一个缓冲区,用来缓存由MCU发送而来的分频数,以避免MCU发送数据的速率快于FPGA生成脉冲的速率。FPGA在接收到第一个数据后会立即进入脉冲生成程序,在生成脉冲的过程中接收到的数都会存入缓冲区,然后将根据缓冲区中的数依次生成脉冲直到所有数都已被处理,最终不再生成脉冲,从而达到了电机匀减速到停下且保持位移恒定的控制目的。

另一方面,本发明还公开一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如上述方法的步骤。

第三方面,本发明还公开一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行上述方法的步骤。

本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

8页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种电动汽车永磁轮毂电机能量复合控制器的构造方法

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!