步进电机实验报告
基于stm32单片机的步进电机实验报告

基于stm32单片机的步进电机实验报告步进电机是一种将电脑控制信号转换为机械运动的设备,常用于打印机、数码相机和汽车电子等领域。
本实验使用STM32单片机控制步进电机,主要目的是通过编程实现步进电机的旋转控制。
首先,我们需要了解步进电机的基本原理。
步进电机是一种能够按照一定步长精确旋转的电机。
它由定子和转子两部分组成,通过改变定子和转子的电流,使转子按照一定的角度进行旋转。
在本实验中,我们选择了一种四相八拍步进电机。
该电机有四个相位,即A、B、C、D相。
每个相位都有两个状态:正常(HIGH)和反向(LOW)。
通过改变相位的状态,可以控制步进电机的旋转。
我们使用STM32单片机作为控制器,通过编程实现对步进电机的控制。
首先,我们需要配置STM32的GPIO口为输出模式。
然后,编写程序通过改变GPIO口的状态来控制步进电机的旋转。
具体来说,我们将A、B、C、D相分别连接到STM32的四个GPIO口,设置为输出模式。
然后,通过改变GPIO口输出的电平状态,可以控制相位的状态。
为了方便控制,我们可以定义一个数组,将表示不同状态的四个元素存储起来。
通过循环控制数组中的元素,可以实现步进电机的旋转。
在实验中,我们通过实时改变数组中元素的值,可以实现不同的旋转效果。
例如,我们可以将数组逐个循环左移或右移,实现步进电机的正转或反转。
在实验过程中,我们可以观察步进电机的旋转情况,并根据需要对程序进行修改和优化。
可以通过改变步进电机的旋转速度或步进角度,来实现更加精确的控制。
总结起来,通过本次实验,我们了解了步进电机的基本原理,并通过STM32单片机控制步进电机的旋转。
通过编写程序改变GPIO口的状态,我们可以实现步进电机的正转、反转和精确控制。
这对于理解和应用步进电机技术具有重要意义。
单片机步进电机控制实验报告

单片机步进电机控制实验报告单片机步进电机控制实验报告引言:步进电机是一种常用的电动机,具有结构简单、体积小、转速稳定等优点,广泛应用于工业自动化、机械设备等领域。
本实验旨在通过单片机控制步进电机,实现电机的正转、反转、加速、减速等功能。
通过实验,深入了解步进电机的工作原理和控制方法,提高对单片机的编程能力。
一、实验目的本实验的主要目的是掌握步进电机的工作原理,了解单片机控制步进电机的方法和步骤,并通过实验验证控制效果。
二、实验器材1. 步进电机:XX型号,XXV,XXA2. 单片机开发板:XX型号3. 驱动电路:包括电源、驱动芯片等三、实验原理步进电机是一种特殊的电动机,其转子通过电磁螺线管的工作原理实现转动。
步进电机的转子分为若干个极对,每个极对上都有一个螺线管,通过对这些螺线管施加电流,可以使转子转动。
单片机通过控制螺线管的电流,实现步进电机的控制。
四、实验步骤1. 连接电路:根据实验器材提供的电路图,将步进电机与单片机开发板相连接。
2. 编写程序:使用C语言编写单片机控制步进电机的程序。
程序中需要包括电机正转、反转、加速、减速等功能的实现。
3. 上传程序:将编写好的程序通过编程器上传到单片机开发板上。
4. 实验验证:通过按下开发板上的按键,观察步进电机的运动情况,验证程序的正确性。
五、实验结果与分析经过实验验证,编写的程序能够准确控制步进电机的运动。
按下不同的按键,电机可以实现正转、反转、加速、减速等功能。
通过调整程序中的参数,可以实现不同速度的控制效果。
实验结果表明,单片机控制步进电机具有较高的精确性和可靠性。
六、实验总结通过本次实验,我深入了解了步进电机的工作原理和控制方法,掌握了单片机控制步进电机的编程技巧。
实验中遇到了一些问题,如电路连接不正确、程序逻辑错误等,但通过仔细分析和排除,最终解决了这些问题。
通过实验,我不仅提高了对步进电机的理论认识,还锻炼了自己的动手实践能力和问题解决能力。
步进电机控制实训报告(3篇)

第1篇一、实训目的本次实训旨在通过实际操作,使学生掌握步进电机的原理、驱动方式及其在控制系统中的应用。
通过实训,培养学生动手能力、分析问题和解决问题的能力,提高学生对步进电机控制系统的理解。
二、实训时间2023年X月X日至2023年X月X日三、实训地点XX大学电气工程与自动化学院实验室四、实训内容1. 步进电机基本原理及驱动方式2. 步进电机驱动电路设计与搭建3. 步进电机控制系统编程与调试4. 步进电机应用案例分析五、实训过程(一)步进电机基本原理及驱动方式1. 步进电机原理:步进电机是一种将电脉冲信号转换为角位移或直线位移的电动机。
其特点是转速、转向可控,定位精度高,广泛应用于各种自动化控制系统中。
2. 步进电机驱动方式:步进电机驱动方式主要有以下几种:- 相绕组驱动:将步进电机绕组分为A、B、C三相,通过控制三相绕组的通断来实现步进电机的旋转。
- 单相驱动:只控制一个绕组,通过改变绕组中的电流方向来实现步进电机的旋转。
- 双相驱动:控制两个绕组,通过改变两个绕组中的电流方向来实现步进电机的旋转。
(二)步进电机驱动电路设计与搭建1. 驱动电路设计:根据步进电机型号和驱动方式,选择合适的驱动芯片,如A4988、DRV8825等。
设计驱动电路时,需要考虑以下因素:- 驱动芯片的选型:根据步进电机的工作电压、电流、转速等参数选择合适的驱动芯片。
- 电流限制电阻的选型:根据驱动芯片的电流限制能力,选择合适的电流限制电阻。
- 控制电路的设计:设计控制电路,实现步进电机的转速、转向控制。
2. 驱动电路搭建:根据电路设计图纸,搭建步进电机驱动电路。
主要包括以下步骤:- 搭建电源电路:为驱动芯片和步进电机提供稳定的电源。
- 搭建驱动芯片电路:连接驱动芯片与步进电机绕组。
- 搭建控制电路:连接控制电路与驱动芯片,实现步进电机的转速、转向控制。
(三)步进电机控制系统编程与调试1. 控制系统编程:根据实际需求,选择合适的编程语言和开发环境,编写步进电机控制系统程序。
步进电机实验报告

Arduino步进电机实验报告步进电机是将电脉冲信号转变为角位移或线位移的开环控制电机,是现代数字程序控制系统中的主要执行元件,应用极为广泛。
在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度,称为“步距角”,它的旋转是以固定的角度一步一步运行的。
可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的;同时可以通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的。
实验目的:(1)了解步进电动机工作原理。
(2)熟悉步进电机驱动器使用方法。
(3)掌握步进电动机转向控制编程。
实验要求:(1)简要说明步进电动机工作原理。
(2)熟记步进电机驱动器的使用方法。
(3)完成步进电动机转速转向控制编程与实现。
(4)提交经调试通过的程序一份并附实验报告一份。
实验准备:1.Arduino UNO R3开发板Arduino是一块基于开放原始代码的Simple i/o平台,并且具有开发语言和开发环境都很简单、易理解的特点。
让您可以快速使用Arduino做出有趣的东西。
它是一个能够用来感应和控制现实物理世界的一套工具。
它由一个基于单片机并且开放源码的硬件平台,和一套为Arduino板编写程序的开发环境组成。
Arduino可以用来开发交互产品,比如它可以读取大量的开关和传感器信号,并且可以控制各式各样的电灯、电机和其他物理设备。
Arduino项目可以是单独的,也可以在运行时和你电脑中运行的程序(例如:Flash,Processing,MaxMSP)进行通讯。
2.ULN2003芯片ULN2003 是高耐压、大电流复合晶体管阵列,由七个硅NPN 复合晶体管组成。
可以用来驱动步进电机。
因本次使用的步进电机功率很小,所以可以直接使用一个ULN2003芯片进行驱动,如果是大功率的步进电机,是需要对应的驱动板的。
步进电机调速实验报告

步进电机调速实验报告步进电机调速实验报告引言:步进电机是一种常见的电机类型,具有精准定位、高可靠性和简单控制等优点,广泛应用于机械自动化领域。
本实验旨在通过调整步进电机的驱动信号频率,探究步进电机的调速性能。
实验目的:1. 了解步进电机的工作原理和调速控制方法;2. 掌握步进电机调速实验的基本操作;3. 分析步进电机调速性能,并探讨其影响因素。
实验装置:1. 步进电机驱动器:用于控制步进电机的转速和方向;2. 步进电机:作为实验的被测对象;3. 信号发生器:用于产生步进电机的驱动信号。
实验步骤:1. 搭建实验装置:将步进电机与驱动器连接,连接信号发生器与驱动器;2. 设置实验参数:根据实验要求,设置信号发生器的频率范围和步进电机的分辨率;3. 开始实验:逐步增加信号发生器的频率,观察步进电机的转速变化;4. 记录数据:记录不同频率下步进电机的转速,并绘制转速-频率曲线;5. 分析结果:根据实验数据,分析步进电机的调速性能,并探讨其影响因素。
实验结果:根据实验数据,绘制了步进电机的转速-频率曲线。
曲线呈现出一定的线性关系,即随着频率的增加,步进电机的转速也相应增加。
然而,在一定频率范围内,转速的增加逐渐趋于平缓,表明步进电机存在一定的最大转速限制。
此外,实验中还观察到步进电机在低频率下容易发生失步现象,即无法按照预定的步进角度运动。
讨论与分析:步进电机的调速性能受多种因素影响,其中包括步进电机的类型、驱动器的性能、负载情况等。
在本实验中,步进电机的转速受到信号发生器频率的限制,过高或过低的频率都会导致转速的下降。
此外,步进电机的失步现象可能是由于驱动器输出信号不稳定或负载过大造成的。
结论:通过本实验,我们了解了步进电机的工作原理和调速控制方法,并掌握了步进电机调速实验的基本操作。
实验结果显示,步进电机的转速与驱动信号频率呈线性关系,但存在一定的最大转速限制。
此外,步进电机在低频率下容易发生失步现象。
步进电机实验报告总结

步进电机实验报告总结步进电机是一种常用于控制和运动控制系统中的驱动器。
它具有结构简单、动力学响应快、精度高、可靠性强等特点,广泛应用于各个领域。
本次实验主要是为了深入了解步进电机及其控制方式,学会使用单片机对步进电机进行控制,同时也对实现步进电机运动控制系统提供了帮助。
在实验中,我们通过单片机控制步进电机实现了旋转和脉冲控制等功能,同时也了解了步进电机的原理和控制方式。
我们了解了步进电机的结构、特点和分类。
步进电机的主要结构包括定子和转子两部分,其中转子部分由磁极和励磁线圈组成。
步进电机的特点主要包括定位精度高、运动平稳、可靠性强等。
根据控制方式的不同,步进电机主要分为全步进电机和半步进电机两种类型。
接着,我们学习了步进电机的原理和驱动方式。
步进电机的驱动方式主要包括正弦驱动和方波驱动两种,而本次实验中采用的是方波驱动方式,它的原理是通过交替施加两相的脉冲信号来控制步进电机的运动。
在掌握了步进电机的原理和驱动方式后,我们开始了实验的具体操作。
通过搭建实验电路板,我们成功地控制了步进电机的转动,并通过单片机进行控制实现了旋转和脉冲控制。
在实验过程中,我们还发现了一些问题并进行了相应的调试,最终成功实现了步进电机的控制。
本次实验让我深入了解了步进电机的原理和控制方式,掌握了单片机控制步进电机的方法,也在实践中加深了对步进电机的认识。
在今后的研究和应用中,这些知识和技能将为我提供有力的支持。
在实验中我们也发现了一些需要注意的问题。
在连接电路时需要谨慎操作,避免因连接不正确而损坏实验设备。
在实验中由于步进电机的转动受到许多因素的影响,例如电源电压、步进电机电流、步进电机的转载等,因此在实验中需要对这些因素进行合理的控制和调节,以达到预期的效果。
我们还需要注意调试步进电机的速度和步长,使之达到合适的运动状态。
除了单片机控制步进电机的实验,我们还可以在实际应用中利用步进电机进行定位和运动控制。
例如在数控机床的控制系统中,步进电机可以用于驱动刀架的升降和移动,实现精密的切削操作。
微机步进电机实验报告
一、实验目的1. 了解步进电机的工作原理,掌握其控制方式和调速方法。
2. 学习使用微机对步进电机进行控制,提高微机应用能力。
3. 培养实验操作和数据分析能力。
二、实验设备及器件1. 微机一台2. 步进电机驱动器一台3. 步进电机一台4. 电源一个5. 连接导线若干三、实验原理步进电机是一种将电脉冲信号转换为角位移或线位移的电机,具有定位精度高、响应速度快、控制简单等优点。
步进电机的工作原理是利用电机的磁极与定子磁极之间的磁力相互作用,通过控制脉冲信号的输入,使电机产生相应的角位移。
步进电机的控制方式主要有以下几种:1. 单拍控制:每输入一个脉冲信号,电机转动一个步距角。
2. 双拍控制:每输入两个脉冲信号,电机转动一个步距角。
3. 四拍控制:每输入四个脉冲信号,电机转动一个步距角。
步进电机的调速方法主要有以下几种:1. 脉冲频率调速:通过改变脉冲信号的频率,实现电机转速的调节。
2. 脉冲宽度调速:通过改变脉冲信号的宽度,实现电机转速的调节。
3. 脉冲分配调速:通过改变脉冲信号的分配方式,实现电机转速的调节。
四、实验步骤1. 将步进电机驱动器连接到微机,确保连接正确。
2. 将步进电机连接到驱动器,确保连接牢固。
3. 将电源连接到驱动器,确保电源电压符合要求。
4. 编写程序,实现步进电机的控制功能。
5. 调试程序,观察步进电机的转动情况。
6. 分析实验结果,总结实验经验。
五、实验程序以下是一个简单的步进电机控制程序,实现单拍控制方式:```c#include <reg51.h>#define STEP_PIN P2 // 定义步进电机控制端口void delay(unsigned int ms) {unsigned int i, j;for (i = 0; i < ms; i++)for (j = 0; j < 123; j++);}void main() {while (1) {STEP_PIN = 0x01; // 输入第一个脉冲信号delay(100); // 延时STEP_PIN = 0x00; // 清除脉冲信号delay(100); // 延时}}```六、实验结果与分析1. 在实验过程中,通过改变脉冲信号的频率,实现了步进电机的调速。
步进电机控制实验报告
步进电机控制实验报告步进电机控制实验报告引言步进电机是一种常见的电机类型,具有精准的位置控制和可靠的运动控制能力。
在本次实验中,我们将学习如何使用Arduino控制步进电机,并通过实际操作来验证控制的可行性和有效性。
一、实验目的本次实验的主要目的是掌握步进电机的控制原理和方法,了解步进电机的特点以及其在实际应用中的作用。
通过实验,我们将学习如何使用Arduino来控制步进电机的旋转方向和步进角度,并能够实现精确的位置控制。
二、实验器材1. Arduino开发板2. 步进电机3. 驱动模块4. 连接线三、实验步骤1. 连接步进电机和驱动模块:将步进电机的相线连接到驱动模块的对应接口上,并将驱动模块与Arduino开发板连接。
2. 编写控制程序:在Arduino开发环境中,编写控制步进电机的程序。
首先,定义步进电机的旋转方向和步进角度,然后利用Arduino的输出引脚控制驱动模块,从而控制步进电机的旋转。
3. 上传程序并测试:将编写好的程序上传到Arduino开发板上,并将步进电机连接到电源。
通过控制程序中的参数,观察步进电机的旋转方向和步进角度,验证控制的准确性和可行性。
四、实验结果与分析经过实验,我们成功地控制了步进电机的旋转方向和步进角度。
通过改变控制程序中的参数,我们可以实现步进电机的正转、反转和停止等操作。
实验结果表明,步进电机的控制精度较高,可以实现精确的位置控制。
五、实验总结通过本次实验,我们深入了解了步进电机的控制原理和方法,并通过实际操作验证了控制的可行性和有效性。
步进电机作为一种常见的电机类型,在工业自动化和机器人领域有着广泛的应用。
掌握步进电机的控制技术,对于我们今后的学习和工作具有重要的意义。
六、实验心得本次实验让我对步进电机的控制有了更深入的了解。
通过编写控制程序,我学会了如何利用Arduino来控制步进电机的旋转方向和步进角度。
实验过程中,我遇到了一些问题,例如如何正确连接步进电机和驱动模块,以及如何调试控制程序等。
步进电机控制实验实验报告及程序
实验九步进电机控制实验姓名专业通信工程学号成绩一、实验目的1.掌握keil C51软件与proteus软件联合仿真调试的方法;2.掌握步进电机的工作原理及控制方法;3.掌握步进电机控制的不同编程方法;二、实验仪器与设备1.微机1台2.keil C51集成开发环境3.Proteus仿真软件三、实验内容1.用Proteus设计一四相六线步进电机控制电路。
要求利用P1口作步进电机的控制端口,通过达林顿阵列ULN2003A驱动步进电机。
基本参考电路见后面附图。
2.编写程序,实现步进电机的正反转控制。
正反转时间分别持续10S时间,如此循环。
3.设计一可调速步进电机控制电路。
P3.2~P3.5分别接按键k1~k4,其中k1为正反转控制按键,k2为加速按键,k3为减速按键,k4为启动/停止按键,要求速度7档(1~7)可调,加减速各设3档,复位时位于4档,要求每档速度变化明显。
该步进电机控制电路在以上电路的基础上自行修改。
四、实验原理1.步进电机控制原理:1)步进电机是利用电磁铁的作用原理,步进电机是将电脉冲信号转变为角位移或线位移的开环控制元件。
每来一个电脉冲,步进电机转动一定角度,带动机械移动一小段距离。
特点A.来一个脉冲,转一个步距角。
B.控制脉冲频率,可控制电机转速。
C.改变脉冲顺序,可改变转动方向。
2)以反应式步进电机为例说明步进电机的结构和工作原理。
三相反应式步进电动机的原理结构图如下,定子内圆周均匀分布着六个磁极,磁极上有励磁绕组,每两个相对的绕组组成一相。
转子有四个齿。
给A相绕组通电时,转子位置如图(a),转子齿偏离定子齿一个角度。
由于励磁磁通力图沿磁阻最小路径通过,因此对转子产生电磁吸力,迫使转子齿转动,当转子转到与定子齿对齐位置时(图b),因转子只受径向力而无切线力,故转矩为零,转子被锁定在这个位置上。
由此可见:错齿是助使步进电机旋转的根本原因。
3)三相反应式步进电动机的控制原理①三相单三拍:A 相→ B 相→ C 相→ A 相②三相六拍:A→AB →B →BC →C → CA→ A③三相双三拍:AB →BC →CA→AB4)步距角计算公式:θ—步距角 Z r—转子齿数 m —每个通电循环周期的拍数2、ULN2003A:七达林顿阵列ULN2003A是集成达林顿管反相驱动电路,内部还集成了一个消线圈反电动势的二极管,可用来驱动电机、继电器等功率器件。
基于stm32单片机的步进电机实验报告
基于stm32单片机的步进电机实验报告基于STM32单片机的步进电机实验报告一、引言步进电机是一种特殊的电机,其转子能够以离散的步长进行旋转。
在许多自动化控制系统中,步进电机被广泛应用于精密定位、打印机、机床等领域。
本实验旨在利用STM32单片机控制步进电机的运转,实现准确的位置控制。
二、实验原理步进电机的运转原理是通过控制电流来驱动电机的转子旋转。
常见的步进电机有两相和四相两种,本实验使用的是四相步进电机。
步进电机的控制方式主要有两种:全步进和半步进。
1. 全步进控制方式全步进控制方式是通过依次给定步进电机的四个相位施加电压,使得电机转子以固定的步长旋转。
具体控制方式如下:- 给定一个相位的电流,使得该相位的线圈产生磁场,使得转子对齿极的磁场产生吸引力,使得转子顺时针或逆时针旋转一定的角度;- 施加下一个相位的电流,使得转子继续旋转一定的角度;- 通过依次改变相位的电流,控制转子的旋转方向和步长。
2. 半步进控制方式半步进控制方式是在全步进的基础上,通过改变相位的电流大小,使得转子旋转的步长变为全步进的一半。
具体控制方式如下:- 给定一个相位的电流,使得该相位的线圈产生磁场,使得转子对齿极的磁场产生吸引力,使得转子顺时针或逆时针旋转一定的角度;- 施加下一个相位的电流,使得转子继续旋转一定的角度,但步长变为全步进的一半;- 通过改变相位的电流大小,控制转子的旋转方向和步长。
三、实验器材与步骤1. 实验器材:- STM32单片机开发板- 步进电机- 驱动电路- 电源2. 实验步骤:(1) 将STM32单片机开发板和驱动电路连接起来,确保连接正确无误。
(2) 编写STM32单片机的控制程序,通过控制引脚输出高低电平,实现步进电机的控制。
(3) 将步进电机连接到驱动电路上。
(4) 将电源接入驱动电路,确保电源稳定。
(5) 运行STM32单片机的控制程序,观察步进电机的运转情况。
四、实验结果与分析经过实验,我们成功地利用STM32单片机控制步进电机的运转。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Arduino步进电机实验报告
步进电机是将电脉冲信号转变为角位移或线位移的开环控制电机,是现代数字程序
控制系统中的主要执行元件,应用极为广泛。在非超载的情况下,电机的转速、停止的
位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,当步进驱动器接收到
一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度,称为“步距角”,
它的旋转是以固定的角度一步一步运行的。可以通过控制脉冲个数来控制角位移量,从
而达到准确定位的目的;同时可以通过控制脉冲频率来控制电机转动的速度和加速度,
从而达到调速的目的。
实验目的
:
(1)了解步进电动机工作原理。???
(2)熟悉步进电机驱动器使用方法。
(3)掌握步进电动机转向控制编程。
实验要求:
(1)简要说明步进电动机工作原理。?
(2)熟记步进电机驱动器的使用方法。?
(3)完成步进电动机转速转向控制编程与实现。?
(4)提交经调试通过的程序一份并附实验报告一份。
实验准备:
1. Arduino?UNO?R3开发板
Arduino是一块基于开放原始代码的Simple?i/o平台,并且具有开发语言和开发环
境都很简单、易理解的特点。让您可以快速使用Arduino做出有趣的东西。它是一个能
够用来感应和控制现实物理世界的一套工具。它由一个基于单片机并且开放源码的硬件
平台,和一套为Arduino板编写程序?的开发环境组成。Arduino可以用来开发交互产品,
比如它可以读取大量的开关和传感器信号,并且可以控制各式各样的电灯、电机和其他
物理设备。Arduino项目可以是单独的,也可以在运行时和你电脑中运行的程序(例如:
Flash,Processing,MaxMSP)进行通讯。
2. ULN2003芯片
ULN2003 是高耐压、大电流复合晶体管阵列,由七个硅NPN 复合晶体管组成。可以
用来驱动步进电机。
因本次使用的步进电机功率很小,所以可以直接使用一个ULN2003芯片进行驱动,
如果是大功率的步进电机,是需要对应的驱动板的。
3. 五线四相步进电机
步进电机是将电脉冲信号转变为角位移或线位移的开环控制元步进电机件。在非超
载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载
变化的影响,当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动
一个固定的角度,称为“步距角”,它的旋转是以固定的角度一步一步运行的。可以通
过控制脉冲个数来控制角位移量,从而达到准确定位的目的;同时可以通过控制脉冲频
率来控制电机转动的速度和加速度,从而达到调速的目的。
注意图中5条线的颜色:蓝、粉、黄、橙、红,这个顺序很重要。
4. 电位器
电位器是具有三个引出端、阻值可按某种变化规律调节的电阻元件。电位器通常由
电阻体和可移动的电刷组成。当电刷沿电阻体移动时,在输出端即获得与位移量成一定
关系的电阻值或电压。
实验原理?:
通常电机的转子为永磁体,当电流流过定子绕组时,定子绕组产生一矢量磁场。该
磁场会带动转子旋转一角度,使得转子的一对磁场方向与定子的磁场方向一致。当定子
的矢量磁场旋转一个角度。转子也随着该磁场转一个角度。每输入一个电脉冲,电动机
转动一个角度前进一步。它输出的角位移与输入的脉冲数成正比、转速与脉冲频率成正
比。改变绕组通电的顺序,电机就会反转。所以可用控制脉冲数量、频率及电动机各相
绕组的通电顺序来控制步进电机的转动。
工业使用的步进电机与本次实验使用的不同,下面图式两种不同款式的工业用步进
电机:
使用步进电机前一定要仔细查看说明书,确认是四相还是两相,各个线怎样连接,
本次实验使用的步进电机是四相的,不同颜色的线定义如下图:
下面是电机的端口结构图,1,3为一组,2,4为一组,5号是共用的VCC。
ULN2003结构图如下:
硬件连接图如下:
实验内容:?
1.准备好实验所需材料。?
2.把Arduino、步进电机、驱动器、可调电源连接好。?
3.编写控制程序。?
4.把下载线连接到电脑上进行下载。
5.试验完成后整理好自己的材料。
实验结果与分析:
实验整体结果图如下:
可以观察到当转动电位器时,步进电机会随着转动。当电位器停止转动时,步进电
机也随之停止转动。并且二者转动的方向一致。
步进电机是一种将电脉冲转化为角位移的执行机构。通俗一点讲:当步进驱动器接
收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度(及步进角)。
你可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的;同时你也可以通
过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的。在本实验中转
动电位器就相当给步进电机加了一个脉冲信号。
实验小结:
通过此次的Arduino实验我们了解到步进电机是一种感应电机,它的工作原理是利
用电子电路,将直流电变成分时供电的,多相时序控制电流,用这种电流为步进电机供
电,步进电机才能正常工作,驱动器就是为步进电机分时供电的,多相时序控制器。本
实验中由电位器的旋转变化来控制其步进电机的电压变化,让其得到相应的脉冲信号来
控制电机的转动。同时还可以通过控制脉冲频率来控制电机转动的速度和加速度,从而
达到调速的目的。
同时通过查阅资料我们也知道了如今虽然步进电机已被广泛地应用,但步进电机并
不能像普通的直流电机,交流电机在常规下使用。它必须由双环形脉冲信号、功率驱动
电路等组成控制系统方可使用。因此用好步进电机却非易事,它涉及到机械、电机、电
子及计算机等许多专业知识。步进电机作为执行元件,是机电一体化的关键产品之一,
广泛应用在各种自动化控制系统中。随着微电子和计算机技术的发展,步进电机的需求
量与日俱增,在各个国民经济领域都有应用。
在这次实验过后不仅锻炼了我们的动手能力,同时实验的成功也为我们即将走上工
作岗位增加了信心。最后感谢老师能给我们这一次好的锻炼机会。
实验所用程序:
/*
* 步进电机跟随电位器旋转
* (或者其他传感器)使用0号模拟口输入
* 使用arduino IDE自带的Stepper.h库文件
*/
#include
// 这里设置步进电机旋转一圈是多少步
#define STEPS 100
// attached to设置步进电机的步数和引脚
Stepper stepper(STEPS, 8, 9, 10, 11);
// 定义变量用来存储历史读数
int previous = 0;
void setup()
{
// 设置电机每分钟的转速为90步
stepper.setSpeed(90);
}
void loop()
{
// 获取传感器读数
int val = analogRead(0);
// 移动步数为当前读数减去历史读数
stepper.step(val - previous);
// 保存历史读数
previous = val;
}