步进电机实验报告(1)
步进电机控制实验报告

计算机控制技术课程实验之二步进电机控制实验内容1.掌握KeilC51软件与Protues软件联合仿真调试的方法;2.掌握步进电机的工作原理及控制方法;3.掌握步进电机控制的不同编程方法。
实验原理一、步进电机步进电机的工作就是步进转动,其功用是将脉冲电信号变换为相应的角位移或是直线位移,就是给一个脉冲信号,电动机转动一个角度或是前进一步。
步进电机的角位移量与脉冲数成正比,它的转速与脉冲频率(f)成正比,在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,即给电机加一个脉冲信号,电机则转过一个步距角。
如下所示的步进电机为一四相步进电机,采用单极性直流电源供电。
只要对步进电机的各相绕组按合适的时序通电,就能使步进电机步进转动。
图1是该四相反应式步进电机工作原理示意图。
图1-1 四相步进电机步进示意图开始时,开关SB接通电源,SA、SC、SD断开,B相磁极和转子0、3号齿对齐,同时,转子的1、4号齿就和C、D相绕组磁极产生错齿,2、5号齿就和D、A相绕组磁极产生错齿。
当开关SC接通电源,SB、SA、SD断开时,由于C相绕组的磁力线和1、4号齿之间磁力线的作用,使转子转动,1、4号齿和C相绕组的磁极对齐。
而0、3号齿和A、B相绕组产生错齿,2、5号齿就和A、D相绕组磁极产生错齿。
依次类推,A、B、C、D 四相绕组轮流供电,则转子会沿着A、B、C、D方向转动。
单四拍、双四拍与八拍工作方式的电源通电时序与波形分别如图1-2所示:图1-2 步进电机工作时序波形图实验内容1.用Proteus设计一四相六线步进电视控制电路。
要求利用P1口作步进电机的控制端口,通过达林顿阵列ULN2003A驱动步进电机。
2.编写程序,实现步进电机的正反转控制。
正反转时间分别持续10S时间,如此循环。
3.设计一可调速步进电机控制电路。
P3.0~P3.2分别接案件K1~K3,其中K1为正反转控制按键,K2为加速按键,K3为减速按键,要求速度7档(1~7)可调,加减速各设3档,复位时位于4档,要求每档速度变化明显。
步进电动机实验报告

一、实验目的1. 了解步进电动机的工作原理和驱动方式。
2. 掌握步进电动机的驱动电路设计方法。
3. 熟悉步进电动机的控制程序编写和调试方法。
4. 掌握步进电动机的速度和方向控制方法。
二、实验器材1. 步进电动机一台2. 步进驱动器一台3. 单片机实验板一块4. 电源模块一块5. 连接线若干6. 示波器一台7. 电脑一台三、实验原理步进电动机是一种将电脉冲信号转换为角位移或线位移的电机,其特点是输出角位移与输入脉冲数成正比,转速与脉冲频率成正比。
步进电动机的驱动电路主要由驱动器和控制电路组成。
驱动器负责将单片机输出的脉冲信号转换为步进电动机所需的驱动信号,而控制电路则负责生成步进电动机所需的脉冲信号。
四、实验步骤1. 步进电动机驱动电路设计(1)根据步进电动机的型号和规格,选择合适的驱动器。
(2)设计驱动电路原理图,包括驱动器、单片机、电源模块等。
(3)焊接驱动电路,并检查无误。
2. 步进电动机控制程序编写(1)编写步进电动机控制程序,包括初始化、脉冲生成、速度和方向控制等模块。
(2)通过示波器观察脉冲信号的波形,确保脉冲信号符合步进电动机的要求。
(3)调试程序,确保步进电动机能够按照预期运行。
3. 步进电动机速度和方向控制(1)通过调整脉冲频率控制步进电动机的转速。
(2)通过改变脉冲信号的顺序控制步进电动机的转动方向。
(3)观察步进电动机在不同速度和方向下的运行情况,分析控制效果。
五、实验结果与分析1. 步进电动机驱动电路设计成功,步进电动机能够按照预期运行。
2. 步进电动机控制程序编写成功,能够实现速度和方向控制。
3. 通过调整脉冲频率,步进电动机的转速在0-300转/分钟范围内可调。
4. 通过改变脉冲信号的顺序,步进电动机的转动方向可在正转和反转之间切换。
5. 实验结果表明,步进电动机的速度和方向控制方法可行,控制效果良好。
六、实验总结本次实验成功地实现了步进电动机的驱动电路设计、控制程序编写和速度、方向控制。
步进电机控制实训报告

一、实训背景随着科技的飞速发展,步进电机在工业自动化、精密定位、医疗设备等领域得到了广泛的应用。
为了深入了解步进电机的原理和应用,提高自身的动手实践能力,我们进行了步进电机控制实训。
二、实训目标1. 理解步进电机的原理和工作方式。
2. 掌握步进电机的驱动方法和控制方法。
3. 学会使用单片机对步进电机进行编程和控制。
4. 提高团队协作能力和问题解决能力。
三、实训内容1. 步进电机原理步进电机是一种将电脉冲信号转换为角位移或线位移的执行元件。
其特点是响应速度快、定位精度高、控制简单。
步进电机每输入一个脉冲信号,就转动一个固定的角度,称为步距角。
步距角的大小取决于电机的结构,常见的步距角有1.8度、0.9度等。
2. 步进电机驱动步进电机的驱动通常采用步进电机驱动器。
驱动器将单片机输出的脉冲信号转换为驱动步进电机的电流信号,实现对步进电机的控制。
常见的驱动器有L298、A4988等。
3. 单片机控制本实训采用AT89C51单片机作为控制核心。
通过编写程序,控制单片机输出脉冲信号,实现对步进电机的正转、反转、停止、速度等控制。
4. 实训步骤(1)搭建步进电机驱动电路,连接单片机、步进电机、按键等外围设备。
(2)编写程序,实现以下功能:- 正转、反转控制;- 速度控制;- 停止控制;- 按键控制。
(3)使用Proteus仿真软件进行程序调试,验证程序的正确性。
(4)将程序烧录到单片机中,进行实际硬件测试。
四、实训结果与分析1. 正转、反转控制通过编写程序,实现了对步进电机的正转和反转控制。
在Proteus仿真软件中,可以观察到步进电机按照设定的方向转动。
2. 速度控制通过调整脉冲信号的频率,实现了对步进电机转速的控制。
在Proteus仿真软件中,可以观察到步进电机的转速随脉冲频率的变化而变化。
3. 停止控制通过编写程序,实现了对步进电机的停止控制。
在Proteus仿真软件中,可以观察到步进电机在停止信号后立即停止转动。
步进电机控制实验报告

步进电机控制实验报告开课学院及实验室:学院年级、专业、班姓名学号实验课程名称计算机控制技术成绩实验项目名称步进电机控制实验指导老师一、实验目的1.了解步进电机的工作原理。
2.掌握步进电机的驱动及编程方法。
二、实验原理步进电机是一种电脉冲转化为角位移的执行机构。
当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度(称为“步距角”),它的旋转是以固定的角度一步一步运行的。
可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的。
通过设定脉冲数来使步进电机转过一定的角度。
步进电机多为永磁感应式,有两相、四相、六相等多种,实验所用电机为四相八拍式。
三、使用仪器、材料1.TPCC-III计算机控制技术实验箱一台。
2. 数字式万用表一个。
3.微型计算机一台(安装“DICE计算机控制实验软件”)。
四、实验步骤本实验使用的AD35-02M型四相八拍电机,电压为DC12V,其励磁线圈及励磁顺序如下图3-1。
图3-1 励磁线圈及励磁顺序图3-2 实验接线图表3-1 8255B口输出电平在各步中的情况步骤1:按图3-2接线:步骤2:在汇编程序编辑界面输入程序,将宏汇编程序经过汇编,连接后形成.EXE文件。
打开调试窗口,复位,待出现“Welcome to you!”,装入系统,输入命令“G=2000↙”。
EXP3.ASM汇编程序如下:STACK SEGMENT STACKDW 256 DUP(?)STACK ENDSDATA SEGMENTTABLE DB 01H,03H,02H,06H,04H,0CH,08H,09H ;Step of motorDATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART: MOV AX,DATAMOV DS,AXMAIN: MOV AL,80H ;Initiate 8255 B(OUT)OUT 63H,ALA1: MOV BX,OFFSET TABLEMOV CX,0008H ; Number of stepA2: MOV AL,[BX] ; 8255 outOUT 61H,AL。
最新步进电机实验报告

最新步进电机实验报告实验目的:本实验旨在探究步进电机的工作原理、特性及其在控制系统中的应用。
通过实际操作和测试,加深对步进电机控制技术的理解,并掌握其基本的使用和编程方法。
实验设备和材料:1. 步进电机一套(包括驱动器)2. 微控制器开发板(如Arduino或Raspberry Pi)3. 电源适配器4. 连接线若干5. 电脑及相关编程软件6. 测量工具(如转速计、示波器等)实验步骤:1. 准备实验器材,确保所有设备完好无损。
2. 按照说明书连接步进电机和驱动器,并将驱动器与微控制器开发板相连。
3. 连接电源适配器,为系统供电。
4. 在电脑上编写控制步进电机的程序,设置不同的转速和步数。
5. 将编写好的程序上传到微控制器开发板。
6. 开始实验,观察并记录步进电机的运行情况,包括转速、步数和扭矩等。
7. 使用测量工具对步进电机的性能进行定量分析。
8. 调整程序参数,重复步骤5至7,以探究不同参数对步进电机性能的影响。
9. 实验结束后,断开所有连接,妥善保管实验器材。
实验结果:通过本次实验,我们观察到步进电机在不同控制参数下的表现。
实验数据显示,增加脉冲频率会导致步进电机转速提高,但超过一定频率后,电机会出现失步现象。
扭矩测试表明,随着负载的增加,电机的转速会相应下降。
此外,我们还发现,通过调整微控制器的电流设置,可以在一定程度上优化电机的性能。
结论:步进电机作为一种精密控制电机,在控制系统中有着广泛的应用。
通过本次实验,我们不仅验证了步进电机的基本工作原理,还了解到了影响其性能的关键因素。
实验结果对于未来步进电机的优化设计和应用具有重要的参考价值。
步进电机控制实验报告

步进电机控制实验报告一、实验要求利用P0输出脉冲序列,74LS244输入开关量,开关K2-K8控制步进电机转换(分6挡),K0、K1控制步进电机转向。
必须要K2-K8中一开关和K0、K1中一开关同时为‘1’时步进电机才启动,其他情况步进电机不工作。
步进电机驱动原理是通过对它每线圈中的电流的顺序切换来使电机作步进式旋转。
驱动电路又脉冲信号来控制,所以调节脉冲信号的频率便可改变步进电机的转速。
微电脑控制步进电机最合适。
二、试验目的1、了解步进电机控制的基本原理。
2、掌握控制步进电机转动编程方法。
三、步进电机工作原理步进电机是将给定的电脉冲信号转变为角位移或线位移的开环控制元件。
给定一个电脉冲信号,步进电机转子就转过相应的角度,这个角度就称作该步进电机的步距角。
目前常用步进电机的步距角大多为1.8度(俗称一步)或0.9度(俗称半步)。
以步距角为0.9度的进步电机来说,当我们给步进电机一个电脉冲信号,步进电机就转过0.9度;给两个脉冲信号,步进电机就转过1.8度。
以此类推,连续给定脉冲信号,步进电机就可以连续运转。
由于电脉冲信号与步进电机转角存在的这种线性关系,使得步进电机在速度控制、位置控制等方面得到了广泛的应用。
步进电机的使用至少需要三个方面的配合,一是电脉冲信号发生器,它按照给定的设置重复为步进电机输送电脉冲信号,目前这种信号大多数由可编程控制器或单片机来完成;二是驱动器(信号放大器),它除了对电脉冲信号进行放大、驱动步进电机转动以外,还可以通过它改善步进电机的使用性能,事实上它在步进电机系统中起着重要的作用,一般一种步进电机可以根据不同的工况具有多种驱动器;三是步进电机,它有多种控制原理和型号,现在常用的有反应式、感应子式、混合式等。
步进电机的速度控制是通过输入的脉冲频率快慢实现的。
当发生脉冲的频率减小时,步进电机的速度就下降;当频率增加时,速度就加快。
还可以通过频率的改变而提高步进电机的速度或位置精度。
步进电机调速实验报告
步进电机调速实验报告步进电机调速实验报告引言:步进电机是一种常见的电机类型,具有精准定位、高可靠性和简单控制等优点,广泛应用于机械自动化领域。
本实验旨在通过调整步进电机的驱动信号频率,探究步进电机的调速性能。
实验目的:1. 了解步进电机的工作原理和调速控制方法;2. 掌握步进电机调速实验的基本操作;3. 分析步进电机调速性能,并探讨其影响因素。
实验装置:1. 步进电机驱动器:用于控制步进电机的转速和方向;2. 步进电机:作为实验的被测对象;3. 信号发生器:用于产生步进电机的驱动信号。
实验步骤:1. 搭建实验装置:将步进电机与驱动器连接,连接信号发生器与驱动器;2. 设置实验参数:根据实验要求,设置信号发生器的频率范围和步进电机的分辨率;3. 开始实验:逐步增加信号发生器的频率,观察步进电机的转速变化;4. 记录数据:记录不同频率下步进电机的转速,并绘制转速-频率曲线;5. 分析结果:根据实验数据,分析步进电机的调速性能,并探讨其影响因素。
实验结果:根据实验数据,绘制了步进电机的转速-频率曲线。
曲线呈现出一定的线性关系,即随着频率的增加,步进电机的转速也相应增加。
然而,在一定频率范围内,转速的增加逐渐趋于平缓,表明步进电机存在一定的最大转速限制。
此外,实验中还观察到步进电机在低频率下容易发生失步现象,即无法按照预定的步进角度运动。
讨论与分析:步进电机的调速性能受多种因素影响,其中包括步进电机的类型、驱动器的性能、负载情况等。
在本实验中,步进电机的转速受到信号发生器频率的限制,过高或过低的频率都会导致转速的下降。
此外,步进电机的失步现象可能是由于驱动器输出信号不稳定或负载过大造成的。
结论:通过本实验,我们了解了步进电机的工作原理和调速控制方法,并掌握了步进电机调速实验的基本操作。
实验结果显示,步进电机的转速与驱动信号频率呈线性关系,但存在一定的最大转速限制。
此外,步进电机在低频率下容易发生失步现象。
步进电机实验报告
步进电机实验报告北京⼯业⼤学电⼦课程设计报告(数电部分)题⽬:步进电机⼀、设计题⽬步进电机控制电路⼆、设计任务和设计要求1.设计任务:本课题要求设计⼀个步进电机的控制电路,该电路能对步进电机的运⾏状态进⾏控制。
2.设计技术指标及设计要求:基本要求:(1).能控制步进电机正转和反转及运⾏速度,并由LED显⽰运⾏状态。
(步进电机⼯作⽅式可为单四拍或双四拍)。
A.单四拍⽅式,通电顺序为A—B—C—D—AB.双四拍⽅式,通电顺序为AB—BC—CD—DA—AB(2).测量步进电机的步距⾓。
(通过实测步进电机旋转⼀周所需要的脉冲数,推算出步进电机的步距⾓)。
扩展要求:设计步进电机的⼯作⽅式为四相⼋拍。
C.四相⼋拍⽅式,通电顺序为A—AB—B—BC—C—CD—D—DA—A(4).参考元器件:步进电机,发光⼆极管,续流⼆极管IN4004,复合三极管TIP122;5Ω(1W)电阻,其它电容、电阻若⼲。
三、设计框架⾸先我们先设计⼀个脉冲发⽣电路,我们选择⽤ne555设计这个脉冲发⽣电路,⽤于提供我们整个电路的时钟信号,然后将这个时钟置于74ls161芯⽚的时钟端,使161处于计数状态,然后161会在输出端产⽣0000到1111的序列,这⾥我们只⽤前三个端⼝,然后经过⼀定的组合将这三个端⼝接到74ls138译码器的输⼊端⼝,使译码器处于⼯作状态然后列真值表,确定A、B、C、D四相的逻辑表达式,并按照表达式进⾏组合,最后将A、B、C、D四相分别连接驱动电路,接上电机。
我们⾸先形成⼀个脉冲发⽣电路,如图所⽰:这个脉冲电路⽤于提供整个电路的时钟信号。
由于我们还要实现步进电机的变速,有此电路的频率公式f=1/[ln2(R1+2R2)C] 和q=(R1+R2)/(R1+2R2),可知,我们只需改变R1的电阻⼤⼩即可。
这样会对时钟频率产⽣影响,从⽽改变电机的转速。
接下来是环形脉冲分配电路。
⾸先我们写出我们需要的真值表,然后计算出逻辑表达式,最后根据逻辑表达式进⾏电路的连接。
【实验】步进电机实验报告
【关键字】实验论文题目:步进电机的控制课程名称:计算机控制技术学院信息工程学院专业班级应用电子技术(2)班学号08姓名卢广彬任课教师黄国宏6 日实验名称:步进电机的控制实验目的:1、复习步进电机的工作原理,进一步加强对步进电机的应用方面的学习;2、了解芯片ULN2003A的工作原理,并利用单片机或者微机等对芯片加予控制;3、学会灵活编写单片机的控制及应用程序,进一步熟悉单片机的工作方式;4、学会用单片机及一外围设备组建具有独特功能的自动控制系统。
实验原理:ULN是一个具有16个引脚驱动芯片,其作用是将输入的较小电流放大,以便可以驱动一般的I/O无法驱动的较大功率的外围设备。
下面将叙述ULN的内部结构、芯片引脚功能、与单片机的连接方法及简单的应用。
一、ULN2003管脚排列如下图所示:ULN2003的内部结构和功能ULN是集成达林顿管IC,内部还集成了一个消线圈反电动势的二极管,可用来驱动继电器。
它是双列16脚封装,NPN晶体管矩阵,最大驱动电压=50V,电流=500mA,输入电压=5V,适用于TTL COMS,由达林顿管组成驱动电路。
ULN是集成达林顿管IC,内部还集成了一个消线圈反电动势的二极管,它的输出端允许通过电流为200mA,饱和压降VCE 约1V左右,耐压BVCEO 约为36V。
用户输出口的外接负载可根据以上参数估算。
采用集电极开路输出,输出电流大,故可直接驱动继电器或固体继电器,也可直接驱动高压灯泡。
通常单片机驱动ULN时,上拉2K的电阻较为合适,同时,COM引脚应该悬空或接电源。
ULN是一个非门电路,包含7个单元,但独每个单元驱动电流最大可达350mA.资料的最后有引用电路,9脚可以悬空。
比如1脚输入,16脚输出,你的负载接在VCC与16脚之间,不用9脚。
ULN的作用:ULN是大电流驱动阵列,多用于单片机、智能仪表、PLC、数字量输出卡等控制电路中。
可直接驱动继电器等负载。
输入5VTTL电平,输出可达500mA/50V。
步进电机实验报告
实验步骤:(1)建立分频模块和按键控制模块:利用计数器二进制数对DE 2—70实验板上输入的时钟进行分频,分频之后的频率大概在100Hz到200Hz之间,以保证步进电机能启动起来,不丢转。
module FreDiv(CLK,CLKOUT,EN,RST,KeyS);input CLK,RST,KeyS,EN;output CLKOUT;parameter N=32000000,M=48000 ; // 计数器二进制位数integer temp1=0,temp2=96000;always @(posedge CLK)beginif (!RST)beginif (temp1>=temp2-1)temp1<=0;else temp1<=temp1+1;endendalways @(posedge KeyS)beginif (KeyS & EN)beginif(temp2==N-1)temp2<=N/2;else temp2<=temp2+1000;endif (KeyS & ~EN)beginif(temp2==0)temp2<=N/2;else temp2<=temp2-1000;endendassign CLKOUT=(temp1<M)?1:0;endmoduleendmodule其中分频模块的模块图如下:分频模块电路仿真效果图如下:(2)定义一个Motor模块来实现步进电机的正反转及实现复位功能module Motor(Out, Clk, Dir,Enable, Rst);input Clk, Dir, Enable, Rst;output[3:0]Out;reg[3:0] Out; reg[2:0] state;always @(posedge Clk or negedge Rst)begin if ( !Rst) //低电平复位,初始化设置beginOut<= 4'b0;state<= 3'b0;endelsebegin if(Enable == 1'b1)if (Dir == 1'b1) state = state + 3'b001 ; //正转else if (Dir == 1'b0) state = state-3'b001 ; //反转case (state)3'b000 : Out = 4'b0001 ;3'b001 : Out = 4'b0011 ;3'b010 : Out = 4'b0010 ;3'b011 : Out = 4'b0110 ;3'b100 : Out = 4'b0100 ;3'b101 : Out = 4'b1100 ;3'b110 : Out = 4'b1000 ;3'b111 : Out = 4'b1001 ;endcaseend endendmodule其电路模块图如下:电路仿真图如下:(3)步进电机顶层模块:对以上的电路模块进行综合,设定好各个模块的变量,输入输出引脚及模块的输入输出引脚。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
步进电机控制实验一、实验目的步进电机作为一种数字控制电机,可以准确的控制角度和距离应用非常广泛,本实验利用SPCE061A单片机通过自己编写程序实现步进电机的控制使我们加深对步进电机的了解,同时学会使用步进电机的驱动芯片WZM-2H042M。
另外要求我们掌握单片机控制步进电机的硬件接口电路,以及熟悉步进电机的工作特性。
二、实验内容根据步进电机驱动电路,使用单片机驱动步进电机,控制步进电机正转、反转操作。
三、实验要求按实验内容编写程序,并在实验仪上调试和验证。
四、实验说明1.步进电动机有三线式、五线式、六线式三种,但其控制方式均相同,必须以脉冲电流来驱动。
若每旋转一圈以20个励磁信号来计算,则每个励磁信号前进18度,其旋转角度与脉冲数成正比,正、反转可由脉冲顺序来控制。
2.步进电动机的励磁方式可分为全部励磁及半步励磁,其中全步励磁又有1相励磁及2相励磁之分,而半步励磁又称1-2相励磁。
图为步进电动机的控制等效电路,适应控制A、B、/A、/B的励磁信号,即可控制步进电动机的转动。
每输出一个脉冲信号,步进电动机只走一步。
因此,依序不断送出脉冲信号,即可步进电动机连续转动。
a.1相励磁法:在每一瞬间只有一个线圈导通。
消耗电力小,精确度良好,但转矩小,振动较大,每送一励磁信号可走18度。
若欲以1相励磁法控制步进电动机正转,其励磁顺序如图所示。
若励磁信号反向传送,则步进电动机反转。
励磁顺序: A→B→C→D→AA B C DSTEP1 1 0 0 02 0 1 0 03 0 0 1 04 0 0 0 1b.2相励磁法:在每一瞬间会有二个线圈同时导通。
因其转矩大,振动小,故为目前使用最多的励磁方式,每送一励磁信号可走18度。
若以2相励磁法控制步进电动机正转,其励磁顺序如图所示。
若励磁信号反向传送,则步进电动机反转。
励磁顺序: AB→BC→CD→DA→ABSTEP A B C D1 1 1 0 02 0 1 1 03 0 0 1 14 1 0 0 1c.1-2相励磁法:为1相与2相轮流交替导通。
因分辨率提高,且运转平滑,每送一励磁信号可走9度,故亦广泛被采用。
若以1相励磁法控制步进电动机正转,其励磁顺序如图所示。
若励磁信号反向传送,则步进电动机反转。
励磁顺序: A→AB→B→BC→C→CD→D→DA→ASTEP A B C D1 1 0 0 02 1 1 0 03 0 0 1 04 0 1 1 05 0 0 1 06 0 0 1 17 0 0 0 18 1 0 0 13.电动机的负载转矩与速度成反比,速度愈快负载转矩愈小,当速度快至其极限时,步进电动机即不再运转。
所以在每走一步后,程序必须延时一段时间。
4.步进电机电路原理如下图通过对凌阳十六位单片机的编程控制I0A口的输出通过驱动电路实现对步进电机的控制。
改变输出脉冲的频率可以改变步进电机的转速,通过控制发送脉冲的个数实现位置的精确定位。
图2-1 步进电机电路本实验中我们通过中断控制使得步进电机下一运行状态和上一状态相反,比较容易的实现了电机的正反转。
部分程序:void IRQ3(void)__attribute__((ISR));void IRQ3(void){i=*P_IOA_Data;if(*P_INT_Ctrl&0x0100)*P_IOA_Data=(i^=0x0002);*P_INT_Clear=0x0100;}五、实验步骤根据步进电机电路接线,在使用步进电机驱动模块之前仔细阅读使用手册以防止接线不当烧毁驱动器。
在PC机上调试程序确定无误后下载到单片机中驱动步进电机运行。
#include"SPCE061A.h"main(){unsigned int i,j;*P_IOA_Dir=0xffff;*P_IOA_Attrib=0xffff;*P_IOA_Data=0x0001;*P_IOB_Dir=0x0000;//上拉电阻*P_IOB_Attrib=0x0300;*P_IOB_Data=0x000c;*P_INT_Ctrl=0x0300;asm("INT IRQ");while(1){i=*P_IOA_Data;j=100;while(j--);*P_IOA_Data=(i^=0x0001);*P_Watchdog_Clear=0x0001;}}unsigned int i;void IRQ3(void)__attribute__((ISR)); void IRQ3(void){i=*P_IOA_Data;if(*P_INT_Ctrl&0x0100)*P_IOA_Data=(i^=0x0002);*P_INT_Clear=0x0100;}六.拓展修改程序重新下载实现位置的精确控制。
程序流程图:直流电机测速与控制一、实验目的通过凌阳十六位单片机控制直流电机的驱动实验掌握芯片L298N开始初始化 有键按下按键1按键2按键3按键4转角1转角2 转角3 转角4 显示相应NYNNNYYYY的使用,以及通过通过软件编程改变输出波形的占空比实现直流电机的调速,增强我们的动手能力,为以后的大模块设计打下基础。
二、实验内容根据老师提供以及我们自己搜索的直流电机驱动、测速电路的资料通过使用单片机驱动直流电机,测量直流电机的转速,控制直流电机稳定运行在要求的某一范围内。
三、实验要求按实验内容编写一个程序,并在实验仪上调试和验证。
四、实验说明使用栅格圆盘和光电门组成测速系统。
当直流电机通过传动部分带动栅格圆盘旋转时,测速光电门获得一系列脉冲信号。
这些脉冲信号通过单片机两个定时/计数器配合使用,一个计数,一个定时。
计算出单位时间内的脉冲数m,经过单位换算,就可以算得直流电机旋转的速度。
直流电机转速计算公式:n=60·m/(N1·T·N)(rpm)其中:n为直流电机转速,N为栅格数,N1为T0中断次数,m为计数器T1在规定时间内测得的脉冲数,T为定时器T0定时器溢出时间。
使用外接显示电路,可把电机的转速显示出来电机测速模型如下,将栅格圆盘变化通过光电发射器和接收器以及外围转换电路的作用送给单片机通过数学运算得到单片的的转速。
具体测速模型如下直流电机转速调节:某些场合往往要求直流电机的转速在一定范围内可调节,例如,电车、机床等,调节范围根据负载的要求而定。
调速可以有三种方法:(1)改变电机两端电压;(2)改变磁通;(3)在电枢回路中,串联调节电阻。
本实验采用第一种方法:通过改变施加于电机两端的电压大小达到调节直流电机转速的目的。
部分操作程序while(1){ *P_TimerA_Ctrl=0x0230; //8/16*P_Watchdog_Clear=0x0001;} //中速}void IRQ3(void)__attribute__((ISR));void IRQ3(void){if(*P_INT_Ctrl&0x0100){while(*P_IOB_Data^0x000c) //高速{ *P_TimerA_Ctrl=0x03b0; //14/16*P_Watchdog_Clear=0x0001;}*P_INT_Clear=0x0100;}else if(*P_INT_Ctrl&0x0200){while(*P_IOB_Data^0x000c) //低速{ *P_TimerA_Ctrl=0x0070; //1/16*P_Watchdog_Clear=0x0001;}*P_INT_Clear=0x0200;}}修改P_TimerB_Ctrl与P_TimerA_Ctrl配合实现正转反转,程序类似,不加赘述。
五、实验步骤1) 连接电路如图,2)启动PC机,打开unSP IDE 2.0.02软件,加载程序,编译,下载,运行。
3)通过程序控制直流电机旋转,实现软件调速,通过数码管显示电机转速。
电路接线图附录:操作程序:#include"SPCE061A.h"main(){*P_IOA_Dir=0xffff;*P_IOA_Attrib=0xffff;*P_IOA_Data=0x0003;*P_IOB_Dir=0x0300;*P_IOB_Attrib=0x0300;*P_IOB_Data=0x000c;*P_INT_Ctrl=0x0300;asm("INT IRQ");while(1){ *P_TimerA_Ctrl=0x0230; //8/16*P_Watchdog_Clear=0x0001;} //中速}void IRQ3(void)__attribute__((ISR));void IRQ3(void){if(*P_INT_Ctrl&0x0100){while(*P_IOB_Data^0x000c) //高速{ *P_TimerA_Ctrl=0x03b0; //14/16*P_Watchdog_Clear=0x0001;}*P_INT_Clear=0x0100;}else if(*P_INT_Ctrl&0x0200){while(*P_IOB_Data^0x000c) //低速{ *P_TimerA_Ctrl=0x0070; //1/16*P_Watchdog_Clear=0x0001;}*P_INT_Clear=0x0200;}}电路图:。