当前位置:首页 > 工业控制 > 电路设计项目集锦
[导读]这个项目的目的是创建一个系统,给速度,加速度和运动的电机精确控制。虽然步进电机可以提供高扭矩,并且与输入高度同步(因此控制它的微控制器可以跟踪它们的当前位置),但它们在运行时效率不高,这将严重影响电池的使用时间。此外,如果由于某种原因,步进电机熄火了,控制器无法知道它没有移动,但它会记录下来,就好像它已经移动了,这将使整个系统陷入混乱(想象一下,一台3D打印机因为卡住而跳过了一步,整个打印过程将从发生的事件开始变得混乱)。出于这个原因,我实现了一个系统,可以用反馈控制直流电机,以跟踪电机所做的事情,而不管PWM周期的数量,失速等。

背景与理论

这个项目的目的是创建一个系统,给速度,加速度和运动的电机精确控制。虽然步进电机可以提供高扭矩,并且与输入高度同步(因此控制它的微控制器可以跟踪它们的当前位置),但它们在运行时效率不高,这将严重影响电池的使用时间。此外,如果由于某种原因,步进电机熄火了,控制器无法知道它没有移动,但它会记录下来,就好像它已经移动了,这将使整个系统陷入混乱(想象一下,一台3D打印机因为卡住而跳过了一步,整个打印过程将从发生的事件开始变得混乱)。出于这个原因,我实现了一个系统,可以用反馈控制直流电机,以跟踪电机所做的事情,而不管PWM周期的数量,失速等。这要求电机具有正交编码器(对于此模拟/电源板,电机必须为12V-24V), LM629精密电机控制器和用于设置LM629 ic的微控制器。例如,有了这个系统,移动机器人就可以享受马达的对称速度。

LM629内部是如何工作的

LM629是一款微控制器外设,在单个设备中集成了采样数据运动控制系统的所有功能。使用LM629使设计快速精确的运动控制系统的复杂任务变得更加容易。LM629实现了一个位置解码器、一个求和结、一个数字PID环路补偿滤波器和一个轨迹轮廓发生器。LM629提供一个7位PWM信号和一个符号位,提供一个符号幅度输出端口。在运行时,主机微控制器将加速度、速度和目标位置值下载到轨迹生成器中。在每个样本间隔,这些值被用来计算新的需求或“设定点”位置,这些位置被馈送到求和结。电机的实际位置由光增量编码器的输出信号确定。内部解码器将实际位置发送到求和结的另一个输入,并从“需求”位置中减去,形成控制回路补偿器的误差信号输入,该补偿器是一个PID滤波器。

由主微控制器发送到LM629的轨迹曲线以速度与时间的关系绘制。这些被认为是速度剖面的原因是每个样本间隔都计算所需的位置。对于匀速,这些期望的位置增量将是相同的每个样本间隔,对于加速和减速,期望的位置增量将分别增加和减少每个样本间隔。目标位置是速度剖面的积分。

主微控制器通过并行通信与LM629通信。LM629有三个内部寄存器:状态、高位和低位字节。这些由RD, WR和PS线(活动低)和使用状态字节的忙位控制。通过将RD和PS调低来读取状态字节,第0位是忙位。通过将WR和PS调低来编写命令。PS高时,WR低,将数据写入LM629, RD低,从LM629读取数据。数据传输是一个按最高到最低有效字节顺序写入的双字节操作。以上描述假设CS很低。

用户命令类型:初始化、过滤控制命令、轨迹控制命令、中断控制命令和数据报告命令。

LM629与其主机之间的通信流通过使用状态字节中的忙位0位来控制。在发出命令和数据或读取数据之前,主机必须检查忙位是否为逻辑0。这包括具有多个数据字的命令的数据字节对之间。

准备

为了实现一个基于LM629电机控制器的系统,我创建了两个pcb。一个PCB容纳数字元件,如PIC18F46K22和lm629。所有的数字和钻文件都包括在内,以便通过JLCPCB订购pcb。我还包括了材料清单和示意图,可以用来把这些放在一起。数字端可以很容易地构建在面包板和前置板上,但模拟/电源板存在一些挑战,因为H-Bridge的封装与前面提到的介质上的2.54mm间距不一致。此外,数字隔离器采用表面安装形式。

如果您决定在没有隔离器和不同的h桥的情况下重新创建此项目,则可以在前置板和面包板上进行一些修改。

该板上的微控制器分别向每个LM629发送命令,系数和轨迹。这里只显示了两个,因为目前使用它们的项目只包含两个电机,可以再增加两个来控制总共4个电机LM629。LM629发送PWM和信号通过h桥的2x10引脚连接器发送到模拟板(第二板)。通过相同的连接器,正交编码器信号被lm629接收。

在模拟/功率电源板上,来自数字板的信号通过数字隔离器连接到h桥。使用数字隔离器可以实现两个系统之间的通信,而不需要有一个共同点。电动机产生大量的电气噪声,这些电压的下降和尖峰会导致数字元件(如微控制器、微处理器或其他具有低电气噪声阈值的数字系统)发生故障,这就是为什么该电动机控制器方案设计使用数字隔离器。

模拟/电源板通过上面提到的2x10连接器接收信号幅度信号,以及5V和数字地为正交编码器和隔离器的数字端供电。

为了实现完全隔离,必须使用两种不同的电源,在我的项目中,我使用了两个单独的电池。

编译微控制器的代码

要为MCU编译代码,请遵循以下步骤:

•下载上面提到的存储库

•将ZIP文件的内容解压缩到路径名不包含太多字符的地方,例如C:驱动器的根目录

•打开MPLABX(如果必须安装,请确保也安装了XC8编译器)

•在工具栏上,单击File-> Open Project

•导航到解压zip文件内容的位置

•打开文件夹,点击项目,点击“打开项目”

•一旦项目打开,您可以浏览源代码并根据您的需要修改它。

•在工具栏上转到Production->Clean and Build Project

编译器应该生成一个"。十六进制”文件。可以用来对单片机进行编程。

单片机编程

要对微控制器进行编程,请确保微控制器以5V通电,并且Pickit 3编程器连接到“编程器”头引脚。

•在工具栏中,转到生产->制作和程序设备

•将弹出一个MPLABX警告窗口,提醒您确保连接的芯片与项目中选择的芯片相同,并且电压为推荐的电压。单击OK。

结论

这个项目可以适应任何需要高精度电机控制的项目,步进电机不是一个选择。它还使用现成的部件来完成此目的,因此已经完成了大部分测试和调试。如果解决方案是在另一个MCU的软件中实现PID或在FPGA的硬件中实现PID,则仍然需要进行大量的测试和调试。

我编写的库很容易移植到其他体系结构中。

本文编译自hackster.io

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭