news 2026/4/22 20:10:53

基于STM32闭环步进电机控制系统设计

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
基于STM32闭环步进电机控制系统设计

(1) 掌握基于 PROTEUS 和 KEIL 的仿真调试方法。
(2) 掌握 uCOS-II 的移植,并采用多任务编程、调试。
(3) 熟悉电机的工作原理和功能,并掌握电机的应用和驱动方法。
1.2 内容

(1) 基本功能:本任务通过输出脉冲控制步进电机的停止、运动、方向。使用 两个按键分别控制步进电机的正转和反转,再次按下这两个按键,步进电机停止, 同时 LCD 显示电机状态信息。
(2) 扩展功能:加入一个转速阈值设置功能,由电位器充当阈值设置器,可设 置目标转速并使电机接近设置的转速。

第 2 章 系统硬件设计

2.1 总体框架设计

图 2-1 硬件框架图

本次任务实践的硬件架构设计如图 2-1 所示。按照设计任务的要求,本次设 计采用的主控芯片为 STM32F103,整体硬件设计以该芯片为中心,由按键输入模 块、LCD 显示模块、电机模块等组成。
2.2 硬件电路设计

(1) 参考 LCD1602 液晶显示屏的芯片资料,在 LCD 显示屏的电路连接中,将 VDD 以及 VSS、VEE 接到电源以及地上。之后再将它的3 个信号控制引脚 RS、RW、 E 以及 8 个数据传输引脚 DO-D7 分别连接到 STM32 的相应引脚上。
(2) 按键输入模块采用两个独立按键,分别连接 STM32 的 PB6、PB7 引脚,公 共端接地。
(3) 电机模块使用直流无刷电机,并采用 L293D 和 IRF540 MOS 管驱动。
(4) 用所谓“六步换向法”,根据转子当前的位置,按照一定的顺序给定子绕 组通电使 BLDC 电机转动。如图 2-2 所示。
永磁体 N-S 交替交换,使位置传感器产生相位差 120°的 H3、H2、H1 方波, 从而产生有效的六状态编码信号:010、011、001、101、100、110,通过逻辑组 件处理产生 V6-V1 导通、V5-V6 导通、V4-V5 导通、V3-V4 导通、V2-V3 导通、V1-V2 导通,也就是说将直流母线电压依次加在 U ->V、w ->V、W ->U、V->U、V->W、
U ->W 上,这样转子每转过一对 N-S 极,V1、V2、V3、V4、V5、V6 各功率管即按 固定组合成六种状态的依次导通。

图 2-2 BLDC 控制框图

图 2-3 120°HAll 换相控制图
对于典型的三相带传感器的 BLDC 电机,有 6 个不同的工作区间,每个区间 中有特定的两相绕组通电。通过检测霍尔传感器,可以得到一个 3 位编码,编码 值的范围从 1 到 6。每个编码值代表转子当前所处的区间。从而提供了需要对哪 些绕组通电的信息。因此程序可以使用简单的查表操作来确定要对哪两对特定的 绕组通电以使转子转动。注意状态"0 和 7"对于霍尔效应传感器而言是无效状态。 软件应该检查出这些值并相应地禁止 PWM。
(5) Proteus 的无刷直流电机模型带有 3 个霍尔传感器,霍尔传感器的输出信 号两相间相差 120 度。与此对应的是电机转子每旋转一周霍尔传感器就能输出
6 种编码状态,如图 2-4 所示。 从图可见,霍尔传感器输 出状态变化一次,就 意味着电机转子转过了 60 度。 据此,可以根据单位时间 T 内捕获的霍尔传感 器输出变化的个数 n 计算出电机的转速 V=60n/T。 根据这一原理,通过控制器 的输入捕获功能 IC 获取到其中 一相霍尔传感器输出信号的周期,就可以比较准 精确地测量到电机的转速。

图 2-4 霍尔位置传感器输出信号波形

图 2-5 硬件原理图

第 4 章 调试过程及结果

图 4-1 仿真过程中

图 4-2 反转时的调速过程 仿真过程中可以看到定时器 PWM 输出之间的切换以及脉宽的变化。

图 4-3 接近稳定时

图 4-4 稳定后增大转速

文章底部可以获取博主的联系方式,获取源码、查看详细的视频演示,或者了解其他版本的信息。
所有项目都经过了严格的测试和完善。对于本系统,我们提供全方位的支持,包括修改时间和标题,以及完整的安装、部署、运行和调试服务,确保系统能在你的电脑上顺利运行。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/22 20:08:58

本地机器vs云端训练:lora-scripts适用场景权衡

本地机器 vs 云端训练:LoRA 脚本的适用场景权衡 在生成式 AI 快速普及的今天,个性化模型微调已不再是科研机构的专属能力。越来越多的开发者、创作者甚至中小企业希望基于大模型定制专属风格或行为——比如让 Stable Diffusion 学会画某位艺术家的独特笔…

作者头像 李华
网站建设 2026/4/22 20:10:16

结合lora-scripts与AutoML理念实现超参数自动搜索

结合 LoRA-Scripts 与 AutoML 实现超参数自动搜索 在生成式 AI 应用日益普及的今天,越来越多开发者和创作者希望基于 Stable Diffusion 或大语言模型(LLM)定制专属模型——无论是训练一个具有个人画风的图像生成器,还是打造一个懂…

作者头像 李华
网站建设 2026/4/22 20:10:11

C++高性能分布式容错架构实践(金融级可靠性秘诀)

第一章:C高性能分布式容错架构概述在构建大规模、高并发的现代系统时,C因其卓越的性能和底层控制能力,成为实现高性能分布式系统的首选语言之一。结合现代分布式计算模型与容错机制,C能够支撑金融交易、实时通信、工业自动化等对延…

作者头像 李华
网站建设 2026/4/17 19:43:40

【分布式系统稳定性保障】:C++工程师必须掌握的7种容错模式

第一章:C分布式系统容错机制概述在构建高性能、高可用的分布式系统时,容错能力是保障服务稳定运行的核心要素。C因其高效性与底层控制能力,广泛应用于对性能敏感的分布式基础设施中,如消息队列、存储引擎和微服务框架。容错机制的…

作者头像 李华
网站建设 2026/4/19 17:04:48

C#调用Python接口运行lora-scripts脚本的可行性分析

C#调用Python接口运行lora-scripts脚本的可行性分析 在生成式AI迅速普及的今天,越来越多企业希望将LoRA微调这类前沿技术集成到现有的业务系统中。然而现实是:大多数AI训练工具基于Python生态构建,而大量企业级应用(尤其是桌面端和…

作者头像 李华
网站建设 2026/4/22 10:59:00

C++内核级性能调优实战:掌握这3个技巧,程序效率提升10倍

第一章:C内核性能优化概述在高性能计算、实时系统和资源受限环境中,C因其对底层硬件的直接控制能力和高效的执行性能,成为内核级开发的首选语言。然而,编写高效的C代码不仅依赖语言本身的特性,更需要开发者深入理解编译…

作者头像 李华