STM32用IO口控制步进电机的简单程序

STM32用IO口控制步进电机的简单程序

STM32用IO口控制步进电机的简单程序

练习IO口库函数操作。//相序uint16_tphasecw[4]

={0x2000,0x0001,0x0004,0x0008};//D-C-B-

Auint16_tphaseccw[4]={0x0008,0x0004,0x0001,0x2000};//A-B-C-D

//步进电机相关IO口初始化

//IN4:PC13//IN3:PC0//IN2:PC2//IN1:PC3voidMoto_Init(void){GPIO_InitTypeDefG PIO_InitStructure;RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC,ENABL E);//GPIOCLOCKENABLEGPIO_InitStructure.GPIO_Pin=GPIO_Pin_13;GPIO_Ini tStructure.GPIO_Mode=GPIO_Mode_Out_PP;//推挽输出

GPIO_InitStructure.GPIO_Speed=GPIO_Speed_50MHz;//50MHz速率

GPIO_Init(GPIOC,&GPIO_InitStructure);GPIO_ResetBits(GPIOC,GPIO_Pin_13);// 输出低电平

GPIO_InitStructure.GPIO_Pin=GPIO_Pin_0;GPIO_Init(GPIOC,&GPIO_InitStructur e);GPIO_ResetBits(GPIOC,GPIO_Pin_0);GPIO_InitStructure.GPIO_Pin=GPIO_Pin _2;GPIO_Init(GPIOC,&GPIO_InitStructure);GPIO_ResetBits(GPIOC,GPIO_Pin_2); GPIO_InitStructure.GPIO_Pin=GPIO_Pin_3;GPIO_Init(GPIOC,&GPIO_InitStructur e);GPIO_ResetBits(GPIOC,GPIO_Pin_3);}

//电机正转voidMotorcw(void){uint8_ti;for(i=0;i记得使能IO口时钟。

tips:感谢大家的阅读,本文由我司收集整编。仅供参阅!

步进电动机控制方法

<<技能大赛自动线的安装与调试>>项目二等奖 心得二 心得二:步进电机的控制方法 我带队参加《2008年全国职业院校技能大赛自动线的安装与调试》项目,我院选手和其他院校的三位选手组成了天津代表队,我院选手所在队获得了《2008年全国职业院校技能大赛自动线的安装与调试》项目二等奖,为天津市代表队争得了荣誉,也为我院争得了荣誉。以下是我这个作为教练参加大赛的心得二:步进电机的控制方法 《2008年全国职业院校技能大赛自动线的安装与调试》项目的主要内容包括如气动控制技术、机械技术(机械传动、机械连接等)、传感器应用技术、PLC控制和组网、步进电机位置控制和变频器技术等。但其中最为重要的就是PLC方面的知识,而PLC中最重要就是组网和步进电机的位置控制。 一、 S7-200 PLC 的脉冲输出功能 1、概述 S7-200 有两个置PTO/PWM 发生器,用以建立高速脉冲串(PTO)或脉宽调节(PWM)信号波形。 当组态一个输出为PTO 操作时,生成一个50%占空比脉冲串用于步进电机或伺服电 机的速度和位置的开环控制。置PTO 功能提供了脉冲串输出,脉冲周期和数量可由用户控制。但应用程序必须通过PLC内置I/O 提供方向和限位控制。 为了简化用户应用程序中位控功能的使用,STEP7--Micro/WIN 提供的位控向导可以帮助您在几分钟内全部完成PWM,PTO 或位控模块的组态。向导可以生成位置指令,用户可以用这些指令在其应用程序中为速度和位置提供动态控制。 2、开环位控用于步进电机或伺服电机的基本信息 借助位控向导组态PTO 输出时,需要用户提供一些基本信息,逐项介绍如下: ⑴最大速度(MAX_SPEED)和启动/停止速度(SS_SPEED) 图1是这2 个概念的示意图。 MAX_SPEED 是允许的操作速度的最大值,它应在电机力矩能力的范围。驱动负载所需的力矩由摩擦力、惯性以及加速/减速时间决定。

PLC控制步进电机的实例(图与程序)

PLC控制步进电机的实例(图与程序) ·采用绝对位置控制指令(DRVA),大致阐述FX1S控制步进电机的方法。由于水平有限,本实例采用非专业述语论述,请勿引用。 ·FX系列PLC单元能同时输出两组100KHZ脉冲,是低成本控制伺服与步进电机的较好选择! ·PLS+,PLS-为步进驱动器的脉冲信号端子,DIR+,DIR-为步进驱动器的方向信号端子。 ·所谓绝对位置控制(DRVA),就是指定要走到距离原点的位置,原点位置数据存放于32位寄存器D8140里。当机械位于我们设定的原点位置时用程序把D8140的值清零,也就确定了原点的位置。 ·实例动作方式:X0闭合动作到A点停止,X1闭合动作到B点停止,接线图与动作位置示例如左图(距离用脉冲数表示)。 ·程序如下图:(此程序只为说明用,实用需改善。) ·说明: ·在原点时将D8140的值清零(本程序中没有做此功能) ·32位寄存器D8140是存放Y0的输出脉冲数,正转时增加,反转时减少。当正转动作到A点时,D8140的值是3000。此时闭合X1,机械反转动作到B点,也就是-3000的位置。D8140的值就是-3000。 ·当机械从A点向B点动作过程中,X1断开(如在C点断开)则D8140的值就是200,此时再闭合X0,机械正转动作到A点停止。 ·当机械停在A点时,再闭合X0,因为机械已经在距离原点3000的位置上,故而机械没有动作!

·把程序中的绝对位置指令(DRVA)换成相对位置指令(DRVI): ·当机械在B点时(假设此时D8140的值是-3000)闭合X0,则机械正转3000个脉冲停止,也就是停在了原点。D8140的值为0 ·当机械在B点时(假设此时D8140的值是-3000)闭合X1,则机械反转3000个脉冲停止,也就是停在了左边距离B点3000的位置(图中未画出),D8140的值为-6000。 ·一般两相步进电机驱动器端子示意图: ·FREE+,FREE-:脱机信号,步进电机的没有脉冲信号输入时具有自锁功能,也就是锁住转子不动。而当有脱机信号时解除自锁功能,转子处于自由状态并且不响应步进脉冲。 ·V+,GND:为驱动器直流电源端子,也有交流供电类型。 ·A+,A-,B+,B-分别接步进电机的两相线圈。

步进电机控制速度的方法

步进电机只能够由数字信号控制运行的,当脉冲提供给驱动器时,在过于短的时间里,控制系统发出的脉冲数太多,也就是脉冲频率过高,将导致步进电机堵转。要解决这个问题,必须采用加减速的办法。就是说,在步进电机起步时,要给逐渐升高的脉冲频率,减速时的脉冲频率需要逐渐减低。这就是我们常说的“加减速”方法。 步进电机转速度是根据输入的脉冲信号的变化来改变的,从理论上讲,给驱动器一个脉冲,步进电机就旋转一个步距角(细分时为一个细分步距角)。实际上,如果脉冲信号变化太快,步进电机由于内部的反向电动势的阻尼作用,转子与定子之间的磁反应将跟随不上电信号的变化,将导致堵转和丢步。 所以步进电机在高速启动时,需要采用脉冲频率升速的方法,在停止时也要有降速过程,以保证实现步进电机精密定位控制。加速和减速的原理是一样的。以加速实例加以说明:加速过程是由基础频率(低于步进电机的直接起动最高频率)与跳变频率(逐渐加快的频率)组成加速曲线(降速过程反之)。跳变频率是指步进电机在基础频率上逐渐提高的频率,此频率不能太大,否则会产生堵转和丢步。 步电机系统解决方案

加减速曲线一般为指数曲线或经过修调的指数曲线,当然也可采用直线或正弦曲线等。使用单片机或者PLC,都能够实现加减速控制。对于不同负载、不同转速,需要选择合适的基础频率与跳变频率,才能够达到最佳控制效果。指数曲线,在软件编程中,先算好时间常数存贮在计算机存贮器内,工作时指向选取。通常,完成步进电机的加减速时间为300ms以上。如果使用过于短的加减速时间,对绝大多数步进电机来说,就会难以实现步进电机的高速旋转。 深圳市维科特机电有限公司成立于2005年,是步进电机产品的销售、系统集成和应用方案提供商。我们和全球产品性价比高的生产厂家合作,结合本公司专家团队多年的客户服务经验,给客户提供有市场竞争力的步进电机系统解决方案。我们的主要产品有信浓(SHINANO KENSHI)混合式步进电机、日本脉冲(NPM)永磁式步进电机、减速步进电机、带刹车步进电机、直线步进电机、空心轴步进电机、防水步进电机以及步进驱动器、减振垫、制振环、电机引线、拖链线、齿轮、同步轮、手轮等专业配套产品。我们还供应德国TRINAMIC驱动芯片和日本NPM运动控制芯片。根据客户配套需要,我们还可以 步电机系统解决方案

步进电机的简单电路控制

课程设计说明书 课程设计名称:数字电路课程设计 课程设计题目:步进电机简单的控制电路 学院名称:南昌航空大学信息工程学院 专业:班级: 学号:姓名: 评分:教师: 2013 年 9 月 9 日 数字电路课程设计任务书 20 13-20 14 学年第 1 学期第 2 周- 4 周

注:1、此表一组一表二份,课程设计小组组长一份;任课教师授课时自带一份备查。 2、课程设计结束后与“课程设计小结”、“学生成绩单”一并交院教务存档。

步进电机是一种原理为利用电子电路的电脉冲信号转变为角位移或线位移的感应电机。通过简单的数字电路来控制它的转速并可以利用数码管来计算其转动的圈数,便可以实现电机的正反向转动,并且在数码管上精确的显示出它转动的圈数,从而广泛应用于实际生活当中。其中涉及到计算机,数字电路,电机,机械,完成了简单的自动化控制流程,将所学知识应用于工程中,增加实践动手能力。 关键词:分频、时序控制、脉冲计数

前言 (1) 第一章设计内容及要求 (1) 第二章系统的组成及工作原理 (2) 第三章单元电路设计 (2) 3.1多谐振荡器 (2) 3.2 步进电机信号控制电路 (3) 3.3转速的测量及显示电路 (4) 第四章调试 (5) 4.1电路排板及制作 (5) 4.2电路的调试 (5) 第五章总结 (6) 附录1:设计原理图 (7) 附录2:PCB电路图 (8) 附录3: 元件清单 (9)

前言 步进电机最早出现于上世纪,源于资本主义的造船工业,是一种可以自由转动的电磁铁,其工作原理和如今的反应式电机差不多,是依靠磁导来产生电磁矩,从而实现转动。 到了80年代之后,微型计算机逐步的应用于工业与生活中,使得步进电机的控制更加的灵活多样,最主要的是利用分立元件或者小型的集成电路来控制,但是对元件的需求量很大,调试也很复杂,出现问题需要花大量的精力来调试,因此,通过计算机软件来控制步进电机是必然的趋势,以提高工作效率。 现在的步进电机主要是由数字电路组成,也是利用集成电路来控制电路,但是大大的提高了其精度,更好的满足工业发展的需要。目前用到最多的是混合式步进电机,并具有很好的发展前景。 步进电机按照工作原理可分为永磁式、磁阻式和永磁感应子式三种。 今后步进电机将会有以下四个方面的发展,为减小其占用的空间从而会往小型方向发展,以更加的适用于工业制造当中;为增加力矩,从而会将圆形改为方形,以提高其工作效率;为体现其优越的控制性能,从而会偏向于一体化设计,以实现电子自动化控制,更加灵活方便;为降低其成本,增加其性能,从而会向三相和五相的方向发展,以充分实现其优越性能。 步进电机以其显着的特点,在电子数字化时代将发挥重大作用,将广泛应用于数控车床、机器人、航空工业和电子领域中,可完成工作量大,任务复杂、精度高的制造业以及代替人类完成不利于身体健康的工业中,为生活带来更多的便利。 第一章设计内容及要求 基本要求:1、利用proteus软件设计步进电机的工作原理图,并进行仿真。 2、调试及实现。 (1)实现步进电机根据输入的脉冲旋转的相应圈数。 (2)可以实现复位,正反转控制,由4个LED代替4个线圈。 (3)实现步进电机的加速、减速功能。

步进电机的控制程序

mega16的,16和32管脚兼容,只不过flash大小不一样,不过中断向量号也不一样,你看下自己改改。时钟频率:内部RC 1M 芯片:ULN2003 键值:0 小角度快正转。1 小角度快倒。2 大角度快转。3 大角度快倒。4 小角度正慢转。5 小角度倒慢转。6 大角度正慢转。7 大角度倒慢转。********************************************************************/ #include #include #define uchar unsigned char #define uint unsigned int uchar a=0,b=0; uchar KEY_num=0xe1; unsigned int m=9000; const uchar f1[]={0x02,0x06,0x04,0x0c,0x08,0x09,0x01,0x03}; //正转时序3.75度 const uchar f2[]={0x04,0x06,0x02,0x03,0x01,0x09,0x08,0x0c}; //倒转时序3.75度 const uchar f3[]={0x01,0x02,0x04,0x08}; //正转时序7.5度 const uchar f4[]={0x01,0x08,0x04,0x02}; //倒转时序7.5度 void delay(int k) //延时 { int i; for(i=0;i

步进电机驱动及控制专业技术解答

步进电机驱动及控制技术解答 1.步进电机为什么要配步进电机驱动器才能工作? 步进电机作为一种控制精密位移及大范围调速专用的电机, 它的旋转是以自身固有的步距角角(转子与定子的机械结构所决定)一步一步运行的, 其特点是每旋转一步,步距角始终不变,能够保持精密准确的位置。所以无论旋转多少次,始终没有积累误差。由于控制方法简单,成本低廉,广泛应用于各种开环控制。步进电机的运行需要有脉冲分配的功率型电子装置进行驱动, 这就是步进电机驱动器。它接收控制系统发出的脉冲信号,按照步进电机的结构特点,顺序分配脉冲,实现控制角位移、旋转速度、旋转方向、制动加载状态、自由状态。控制系统每发一个脉冲信号, 通过驱动器就能够驱动步进电机旋转一个步距角。步进电机的转速与脉冲信号的频率成正比。角位移量与脉冲个数相关。步进电机停止旋转时,能够产生两种状态:制动加载能够产生最大或部分保持转矩(通常称为刹车保持,无需电磁制动或机械制动)及转子处于自由状态(能够被外部推力带动轻松旋转)。步进电机驱动器必须与步进电机的型号相匹配。否则将会损坏步进电机及驱动器。 2.什么是驱动器的细分?运行拍数与步距角是什么关系? “细分”是针对“步距角”而言的。没有细分状态,控制系统每发一个步进脉冲信号,步进电机就按照整步旋转一个特定的角度。步进电机的参数,都会给出一个步距角的值。如110BYG250A型电机给出的值为0.9°/1.8°(表示半步工作时为0.9°、整步工作时为1.8°),这是步进电机固有步距角。通过步进电机驱动器设置的细分状态,步进电机将会按照细分的步距角旋转位移角度,从而实现更为精密的定位。以110BYG250A电机为例,列表说明: 可以看出,细分数就是指电机运行时的真正步距角是固有步距角(整步)的几分指一。例如,驱动器工作在10细分状态时,其步距角只有步进电机固有步距角的十分之一。当驱动器工作在不细分的整步状态时,控制系统每发一个步进脉冲,步进电机旋转1.8°;而用细分驱动器工作在10细分状态时,电机只转动了0.18°。其实,细分就是步进电机按照微小的步距角旋转,也就是常说的微步距控制。当然,不同的场合,有不同的控制要求。并不是说,驱动步进电机必须要求细分。有些步进电机的步距角设计为3.6°、7.5°、15°、36°、180°,就是为了加大步距角,以适应特殊的工况条件。细分功能,只由驱动器采用精确控制步进电机的相电流方法,与步进电机的步距角无关,而与步进电机实际工作状态相关。 运行拍数与驱动器细分的关系是:运行拍数指步进电机运行时每转一个齿距所需的脉冲数。例如:110BYG250A电机有50个齿,如果运行拍数设置为160,那么步进电机旋转

步进电机控制方法

第四节 步进电机的控制与驱动 步进电机的控制与驱动流程如图4-11所示。主要包括脉冲信号发生器、环形脉冲分配器和功率驱动电路三大部分。 步进脉冲 方向电平 图4-11 步进电机的控制驱动流程 二、步进电机的脉冲分配 环形分配器是步进电机驱动系统中的一个重要组成部分,环形分配器通常分为硬环分和软环分两种。硬环分由数字逻辑电路构成,一般放在驱动器的内部,硬环分的优点是分配脉冲速度快,不占用CPU的时间,缺点是不易实现变拍驱动,增加的硬件电路降低了驱动器的可靠性;软环分由控制系统用软件编程来实现,易于实现变拍驱动,节省了硬件电路,提高了系统的可靠性。 1.采用硬环分时的脉冲分配 采用硬环分时,步进电机的通电节拍由硬件电路来决定,编制软件时可以不考虑。控制器与硬环分电路的连接只需两根信号线:一根方向线,一根脉冲线(或者一根正转脉冲线,一根反转脉冲线)。假定控制器为AT89S52单片机,晶振频率为12MHz,如图4-18:P1.0输出方向信号,P1.1输出脉冲信号。 则控制电机走步的程序如下: (1)电机正转100步 MOV 0FH,#100D ;准备走100步 CONT1: SETB P1.0 ;正转时P1.0=1 CLR P1.1 ;发步进脉冲的下降沿(设驱动器对于脉冲的下降沿有效) NOP ;延时(延时的目的是让驱动电路的光耦充分导通) NOP ;延时(根据驱动器的需要,调整延时) SETB P1.1 ;发步进脉冲的上升沿 MOV 0EH,#4EH ;两脉冲之间延时20000μs(决定电机的转速) MOV 0DH,#20H ;20000的HEX码为4E20 CALL DELAY ;调用延时子程序 DJNZ 0FH,CONT1 ;循环次数减1后,若不为0则继续,循环100次 RET (2)电机反转100步 MOV 0FH,#100D ;准备走100步 CONT2: CLR P1.0 ;反转时P1.0=0 CLR P1.1 ;发步进脉冲的下降沿(设驱动器对于脉冲的下降沿有效) NOP ;延时(延时的目的是让驱动电路的光耦充分导通) NOP ;延时(根据驱动器的需要,调整延时) SETB P1.1 ;发步进脉冲的上升沿

利用单片机实现对步进电机的简单控制

龙源期刊网 https://www.360docs.net/doc/c715877197.html, 利用单片机实现对步进电机的简单控制 作者:吴云 来源:《计算机光盘软件与应用》2013年第08期 摘要:本文主要介绍了利用LY-51SV2.3开发板实现对步进电机的简单控制,以实现步进电机的正反转、加减速以及开始停止等功能。通过对步进电机的控制,使人们对开发板的应用以及如何编写C语言程序有更深层次的理解。通过本文的介绍,也为下一步更好的利用开发板控制步进电机打下一个基础。 关键词:单片机;步进电机;语言 中图分类号:TP368.1 目前,单片机应用得到了非常广泛的应用,几乎涉及到了社会生活中的各个领域,对于与计算机相关专业的单片机的知识有一个简单的学习了解是必要的,而对于初学者或者教学人员利用开发板进行学习是有效的途径。开发板是学习和实践的最好产品,因为有配套测试好的软件和硬件,这样用户就不必操心组建开发系统的过程。只需要专心研究程序。开发板只不过是个工具,利用这个工具,可以使我们更快的了解并掌握需要的知识。 1设计思路 本次单片机使用STC89C51,通过开发板的5个按键K1-K5分别实现对步进电机的加减速、正反转与停止的控制,在实现正反转的过程中分别由Led指示灯进行指示,并在数码管上显示当前速度的大小值,其最大值不超过18,在整个按键过程中是由键盘扫描函数来控制, 速度的大小值是由显示函数在数码管上显示出来。 2端口、函数与变量定义 #defineKeyPortP3//由P3口连接控制按钮 #defineDataPortP0//定义数据端口程序中遇到DataPort则用P0替换 sbitLATCH1=P2^2;//定义锁存使能端口段锁存 sbitLATCH2=P2^3;//位锁存 sbitA1=P1^0;//定义步进电机连接端口 sbitB1=P1^1;sbitC1=P1^2;sbitD1=P1^3;sbitled=P1^5;sbitled1=P1^7;

步进电机驱动器控制信号接口说明

. .. 步进电机驱动器控制信号接口说明 驱动器是把计算机控制系统提供的弱电信号放大为步进电机能够接受的强电流信号,控制系统提供给驱动器的信号主要有以下三路: 1.步进脉冲信号CP:这是最重要的一路信号,因为步进电机驱动器的原理就是要把控制系统发出的脉冲信号转化为步进电机的角位移, 或者说:驱动器每接受一个脉冲信号CP,就驱动步进电机旋转一步距角, CP的频率和步进电机的转速成正比, CP的脉冲个数决定了步进电机旋转的角度。这样,控制系统通过脉冲信号CP就可以达到电机调速和定位的目的。 2.方向电平信号 DIR:此信号决定电机的旋转方向。比如说,此信号为高电平时电机为顺时针旋转,此信号为低电平时电机则为反方 向逆时针旋转。此种换向方式,我们称之为单脉冲方式。另外,还有一种双脉冲换向方式:驱动器接受两路脉冲信号(标注为CW和CCW),当其中一路(如CW)有脉冲信号时,电机正向运行,当另一路(如CCW)有脉冲信号时,电机反向运行。用户使用何种方式,由拨位开关设定。 3.使能信号EN:此信号在不连接时默认为有效状态,这时驱动器正常工作。当此信号回路导通时,驱动器停止工作,这时电机处于无力矩状态(等同于本公司SH系列驱动器的FREE信号),此信号为选用信号。 为了使控制系统和驱动器能够正常的通信,避免相互干扰,我们在驱动器内部采用光耦器件对输入信号进行隔离,三路信号的内部接口电路相同,常用的连接方式为①共阳方式:把CP+、DIR+和EN+接在一起作为共阳端接外部系统的+5V,脉冲信号接入CP-端,方向信号接入DIR-端,使能信号接入EN-端;②共阴方式:把CP-、DIR-和EN-接在一起作为共阴端接外部系统的GND,脉冲信号接入CP+端,方向信号接入DIR+端,使能信号接入EN+端;③差动方式:直接连接。 驱动器输入信号内部接口示意图 如果驱动器输入信号为电压信号,要求:3.6V≤高电平≤5.5V; -5.5V≤低电平≤0.3V,最常用的为TTL电平。 如果驱动器输入信号为电流信号,要求:7mA≤高电流≤18mA; -18mA≤低电流≤0.2mA。 不管是电压信号还是电流信号,最终转化为光耦器件的输入电流以达到信号传输的目的(参考上图),如果电压信号的幅值超出以上要求的范围须在外部另加限流电阻R,保证给驱动器内部光耦提供7-18mA的驱动电流,参见下图和下表。 步进电机的运行是由脉冲信号控制的,步进电机在脉冲信号的有效沿到来的时刻移动一个步距角,本系列驱动器的有效沿是指:脉冲信号电流“由小到大”的时刻,或者说脉冲电平“由低到高”的时刻,或者说是驱动器内部光耦“由截止到打开”的时刻。 脉冲信号的频率要求不大于200KHz; 脉冲信号的宽度要求不小于2μS。 脉冲信号的驱动电流要求为7-18mA 电机换向时,一定要在电机降速停止后再换向。换向信号要求在前一个方向的最后一个脉冲有效沿结束至少5μS以上才能改变换向信号,且不滞后下一个脉冲信号的有效沿。 如果使用双脉冲CW/CCW方式,则要求下一个方向的第一个脉冲(如CCW)在前一个方向的最后一个脉冲(CW)有效沿后至少5μs才能有效。

步进电机的控制1

指导教师评定成绩: 审定成绩: 重庆邮电大学 自动化学院 自动控制原理课程设计报告 设计题目: 单位(二级学院):自动化学院 学生姓名: 专业:自动化 班级: 学号: 指导教师: 设计时间:2010 年 6 月 重庆邮电大学自动化学院制

目录 目录 (2) 一、设计题目 (3) 1题目内容 (3) 2实现目标 (3) 3设计要求 (3) 4 设计安排 (3) 二、设计报告正文 (3) 1步进电机的概论 (4) 2步进电机的驱动控制系统 (6) 3系统设计思路 (10) 4步进电机的控制电路 (13) 三、设计总结 (15) 四、参考文献 (16)

一、设计题目 1题目内容 基于51单片机的步进电机调速设计 2实现目标 1)具有与PC机串口通信的功能; 2)具有与数码管显示或者LED指示灯显示状态(数码管显示的速度并不代表电 机实际速度,只是一个感性的认识) 3设计要求 1)绘制原理图,PCB; 2)完成单片机所有代码编写; 3)设计PC机简易显示界面; 4设计安排 三个人一组,为期一周,小组成员合作,共同完成设计要求。 二、设计报告正文 摘要:步进电机是一种将电脉冲转换成相应角位移或者线位移的电磁机械装置。在非超载的情况下,电机的转速,停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,即给电机加一个脉冲信号,电机则转过一个步距角。它具有快速启停能力,在电机的负荷不超过它能提供的动态转矩时,可以通过输入脉冲来控制它在一瞬间的启动或者停止。由于其精确性以及其良好的性能在实际当中得到了广泛的应用。 本文首先介绍了步进电机的分类、技术指标、步进电机的工作原理以及步进电机

STM32F107+ULN2003+步进电机

STM32F107+ULN2003+步进电机,主要是步进电机部分,只写了正转,控制转速靠延时函数delayl(),反转的话还要写一个函数,将那把个数倒过来送过去,先送9,最后送8. int main(void) { /*!< At this stage the microcontroller clock setting is already configured, this is done through SystemInit() function which is called from startup file (startup_stm32f10x_xx.s) before to branch to application main. To reconfigure the default setting of SystemInit() function, refer to system_stm32f10x.c file */ uint32_t Times = 0; uint8_t ucStr[80] = {0}; uint32_t num = 0; /* 3?ê??ˉ°???LED??ê?μ? */ SZ_STM32_LEDInit(LED1); SZ_STM32_LEDInit(LED2); SZ_STM32_LEDInit(LED3); SZ_STM32_LEDInit(LED4); SZ_STM32_SysTickInit(1000); SZ_STM32_COMInit(COM1, 115200); COTR_Init(); /* Infinite loop ?÷?-?· */ while (1) { /* LED1??ê?μ?×′ì?è?·′ */ LED1OBB = !LED1OBB; */ Zhengzhuan(); } } /*********μ??ú**********************/ void delayl(unsigned int dl) { unsigned int i,y; for(i = 0; i < 5000; i++)

步进电机工作原理、驱动控制系统与选型

步进电机工作原理、驱动控制系统与选型 一、感应子式步进电机工作原理 (一)反应式步进电机原理 由于反应式步进电机工作原理比较简单。下面先叙述三相反应式步进电机原理。 1、结构: 电机转子均匀分布着很多小齿,定子齿有三个励磁绕阻,其几何轴线依次分别与转子齿轴线错开。0、1/3て、2/3て,(相邻两转子齿轴线间的距离为齿距以て表示),即A与齿1相对齐,B与齿2向右错开1/3て,C与齿3向右错开2/3て,A'与齿5相对齐,(A'就是A,齿5就是齿1)下面是定转子的展开图: 2、旋转: 如A相通电,B,C相不通电时,由于磁场作用,齿1与A对齐,(转子不受任何力以下均同)。 如B相通电,A,C相不通电时,齿2应与B对齐,此时转子向右移过1/3て,此时齿3与C偏移为1/3て,齿4与A偏移(て-1/3て)=2/3て。 如C相通电,A,B相不通电,齿3应与C对齐,此时转子又向右移过1/3て,此时齿4与A偏移为1/3て对齐。 如A相通电,B,C相不通电,齿4与A对齐,转子又向右移过1/3て。 这样经过A、B、C、A分别通电状态,齿4(即齿1前一齿)移到A 相,电机转子向右转过一个齿距,如果不断地按A,B,C,A……通电,

电机就每步(每脉冲)1/3て,向右旋转。如按A,C,B,A……通电,电机就反转。 由此可见:电机的位置和速度由导电次数(脉冲数)和频率成一一对应关系。而方向由导电顺序决定。 不过,出于对力矩、平稳、噪音及减少角度等方面考虑。往往采用A-AB-B-BC-C-CA-A这种导电状态,这样将原来每步1/3て改变为1/6て。甚至于通过二相电流不同的组合,使其1/3て变为1/12て,1/24て,这就是电机细分驱动的基本理论依据。 不难推出:电机定子上有m相励磁绕阻,其轴线分别与转子齿轴线偏移1/m,2/m……(m-1)/m,1。并且导电按一定的相序电机就能正反转被控制——这是步进电机旋转的物理条件。只要符合这一条件我们理论上可以制造任何相的步进电机,出于成本等多方面考虑,市场上一般以二、三、四、五相为多。 3、力矩: 电机一旦通电,在定转子间将产生磁场(磁通量Ф)当转子与定子错开一定角度产生力 F与(dФ/dθ)成正比 其磁通量Ф=Br*S ;Br为磁密;S为导磁面积; F与L*D*Br成正比;L为铁芯有效长度;D为转子直径;Br=N·I/RN·I为励磁绕阻安匝数(电流乘匝数)R为磁阻。 力矩=力*半径力矩与电机有效体积*安匝数*磁密成正比(只考虑线性状态) 因此,电机有效体积越大,励磁安匝数越大,定转子间气隙越小,电机力矩越大,反之亦然。 (二)感应子式步进电机

步进电机控制入门资料(经典) (1)

更多电子资料请登录赛微电子网https://www.360docs.net/doc/c715877197.html, 步进电机原理 作者:Dan Simon,电子与计算机工程系,克里夫兰州立大学 步进电机也叫步进器,它利用电磁学原理,将电能转换为机械能,人们早在20世纪20年代就开始使用这种电机。随着嵌入式系统(例如打印机、磁盘驱动器、玩具、雨刷、震动寻呼机、机械手臂和录像机等)的日益流行,步进电机的使用也开始暴增。不论在工业、军事、医疗、汽车还是娱乐业中,只要需要把某件物体从一个位置移动到另一个位置,步进电机就一定能派上用场。步进电机有许多种形状和尺寸,但不论形状和尺寸如何,它们都可以归为两类:可变磁阻步进电机和永磁步进电机。本文重点讨论更为简单也更常用的永磁步进电机。 步进电机的构造 (图一,具有双齿槽和单绕组的定子) 如图1所示,步进电机是由一组缠绕在电机固定部件--定子齿槽上的线圈驱动的。通常情况下,一根绕成圈状的金属丝叫做螺线管,而在电机中,绕在齿上的金属丝则叫做绕组、线圈、或相。如果线圈中电流的流向如图1所示,并且我们从电机顶部向下看齿槽的顶部,那么电流在绕两个齿槽按逆时针流向流动。根据安培定律和右手准则,这样的电流会产生一个北极向上的磁场。 现在假设我们构造一个定子上缠绕有两个绕组的电机,内置一个能够绕中心任意转动的永久磁铁,这个可旋转部分叫做转子。图2给出了一种简单的电机,叫做双相双极电机,因为其定子上有两个绕组,而且其转子有两个磁极。如果我们按图2a所示方向给绕组1输送电流,而绕组2中没有电流流过,那么电机转子的南极就会自然地按图中所示,指向定子磁场的北极 (图2:双相双极电机) 然后我们切断绕组1中的电流,按照图2b所示方向给绕组2输送电流,于是定子磁场会指向左侧,从而使得转子旋转,其南极也指向左侧。

步进电机控制及其汇编程序

综合实践报告之第二次大作业 题目:步进电机控制设计 说明:在工业电气自动化工程中,步进电机是一种常用的控制设备,它以脉冲信号控制电机的转速,在数控机床、仪器仪表、计算机外围设备以及其它自动设备中有广泛的应用。 步进电机是指一步步走的电动机,所谓“步”指转动角度,每步都会使电机转过一个固定的角度。步进电机有不同的种类,但其控制方法均相同,均以脉冲信号进行驱动,很适合使用单片机来进行控制。 本次大作业要求设计一个步进电机的控制部分。 已知: 采用2相制5线步进电机,其结构如下图所示,线圈中心抽头X1与X2连接在一起; B 相X1A 相 2相步进电机 步进电机采用1相激磁法,即在每一个瞬间只有一个线圈导通,其它线圈休息; 单片机与步进电机之间可采用ULN2003类的驱动IC ; 要求: 查找资料,设计出步进电机的硬件连接电路图; 给出控制软件流程图; 用汇编语言写出控制软件的代码。 提示:本作业对电机的转动方向不做要求,在实际应用中,改变线圈激磁的顺序可以改变步进电机的转动方向,每送一次激磁信号后应经过一小段时间延时,让步进电机有足够的时间建立激励磁场及转动。可以使用单片机的~端口输出控制信号,经驱动IC 传至步进电机。

电路图设计说明 此控制电路选用AT89S51型单片机作为驱动时序的输出控制器,其输出作为两相四线步进电机的时序信号,经过驱动芯片ULN2003放大后输入到两相四线步进电机的输入端口;单片机作为控制指令的输入按键K1-K3的输入端口,K1为电机正转按键,K2为电机正转按键,K3为电机停止按键,这三个按键均为高电平输入有效,按一下K1电机正转,按一下K2电机反转转,按一下K3电机停止。其硬件电路如图一: 控制程序流程图

步进电机控制驱动电路设计.

实习名称:电子设计制作与工艺实习 学生姓名:周文生 学号:201216020134 专业班级:T-1201 指导教师:李文圣 完成时间: 2014年6月13日 报告成绩:

步进电机控制驱动电路设计 摘要: 本设计在根据已有模电、物电知识的基础上,用具有置位,清零功能的JK 触发器74LS76作为主要器件来设计环行分配器,来对555定时器产生的脉冲进行分配,通过功率放大电路来对步进电机进行驱动,并且产生的脉冲的频率可以控制,从而来控制步进电机的速度,环形分配器中具有复位的功能,在对于异常情况可以按复位键来重新工作。 关键字:555定时器脉冲源环行分配器功率放大电路 一、方案论证与比较: (一)脉冲源的方案论证及选择: 方案一:采用555定时器产生脉冲,它工作频率易于改变从而可以控制步进电机的速度并且工作可靠,简单易行。 C2 10uF 图一 555定时器产生的方法 方案二:采用晶振电路来实现,晶振的频率较大,不利于电机的工作,易失步,我们可以利用分频的方法使晶振的频率变小,可以使电机工作稳定,但分频电路较复杂,并且晶振起振需要一定的条件,不好实现。

X1 1kohm 1kohm 图二晶振产生脉冲源电路 综上所述,我们采用方案一来设计脉冲源。 (二)环形分配器的设计: 方案一:采用74ls194通过送入不同的初值来进行移位依此产生正确的值使步进电机进行转动。但此方案的操作较复杂,需要每次工作时都要进行置位,正反转的操作较复杂,这里很早的将此方案放弃。 方案二:使用单独的JK 触发器来分别实现单独的功能。 图三双三拍正转 图四单三拍正转

图五三相六拍正转 利用单独的做,电路图较简单,单具体操作时不方便,并且不利于工程设计。块分的较零散,无法统一。 方案三:利用JK触发器的自己运动时序特性设计,利用卡诺图来进行画简。 图六单,双三拍的电路图 单,双三拍的正,反转主要由键s1,s2的四种状态来决定四种情况的选择。

三相步进电机原理与控制方法资料

本模块由45BC340C型步进电机及其驱动电路组成。 (一)步进电机: 一般电动机都是连续旋转,而步进电动却是一步一步转动的,故叫步进电动机。每输入一个脉冲信号,该电动机就转过一定的角度(有的步进电动机可以直接输出线位移,称为直线电动机)。因此步进电动机是一种把脉冲变为角度位移(或直线位移)的执行元件。 步进电动机的转子为多极分布,定子上嵌有多相星形连接的控制绕组,由专门电源输入电脉冲信号,每输入一个脉冲信号,步进电动机的转子就前进一步。由于输入的是脉冲信号,输出的角位移是断续的,所以又称为脉冲电动机。 随着数字控制系统的发展,步进电动机的应用将逐渐扩大。 步进电动机的种类很多,按结构可分为反应式和激励式两种;按相数分则可分为单相、两相和多相三种。 图1 反应式步进电动机的结构示意图 图1是反应式步进电动机结构示意图,它的定子具有均匀分布的六个磁极,磁极上绕有绕组。两个相对的磁极组成一组,联法如图所示。 模块中用到的45BC340型步进电机为三相反应式步进电机,下面介绍它单三拍、六拍及双三拍通电方式的基本原理。 1、单三拍通电方式的基本原理 设A相首先通电(B、C两相不通电),产生A-A′轴线方向的磁通,并通过转子形成闭合回路。这时A、A′极就成为电磁铁的N、S极。在磁场的作用下,转子总是力图转到磁阻最小的位置,也就是要转到转子的齿对齐A、A′极的位置(图2a);接着B相通电(A、C 两相不通电),转了便顺时针方向转过30°,它的齿和C、C′极对齐(图2c)。不难理解,当脉冲信号一个一个发来时,如果按A→C→B→A→…的顺序通电,则电机转子便逆时针方向转动。这种通电方式称为单三拍方式。 图2 单三拍通电方式时转子的位置

基于STM32和L6208的步进电机控制系统

基于STM32和L6208的步进电机控制系统 摘要:本文介绍了步进电机的基本工作原理及控制方法,通过对ARM公司的STM32F103XX处理器Cortex-M3和ST公司步进电机驱动芯片L6208性能和驱动原理的深入分析,阐述了一种新型驱动步进电机的控制系统。本控制系统能够实时、准确、可靠地控制两相两极的步进电机。 关键词:STM32、L6208、步进电机 Abstract:This paper introduced the basic work principle and control methods, By introducing the performance of STM32F103XX and thorough analyzing the drive principle of DMOS driver for bipolar steeper motor L6208, I expounded a new control system for driving steeper motor. This control system can control bipolar stepper motor real-time, well and truly and reliably. Key words: STM32, L6208, stepper motor 第1章引言 本系统采用STM32F103XX微控制器驱动双极性步进电机的方法,执行整步和半步模式来控制步进电机。用户可以选择:操作模式(整步/半步);电机旋转方式(顺时针/逆时针);当前控制模式(快速/慢速)。这种方法使用中密度STM32F103XX微控制器和全集成两相步进电机驱动L6208,这是性价比最高和最简单的方式获得最小的CPU负载。Cortex-M3是专门在微控制系统和无线网络等对功耗和成本敏感的嵌入式应用领域实现高系统性能而设计的,它大大简化了编程的复杂性,集高性能、低功耗、低成本于一体。 本设计的主要特点: 1、不需反馈器件,比其他运动控制系统成本低。 2、尤其在低速扭转力和强稳定性方面具有优势。 3、低功耗,高性能并且灵活,可用于机器人控制,机械工具转弯处,影像和其它精准 的轴位置控制环境。 4、高性能的STM32F103XX微控制器驱动步进电机依赖于控制器的低计算环境。 第2章方案比较与论证 总体系统框图如图1所示:

基于单片机的步进电机驱动控制

基于单片机的步进电机驱动控制 一、步进电机概述 1.步进电机的定义 步进电机指的是以数字脉冲信号作为电机线或教位移的控制信号,并以数字脉冲频率对电机的转速进行控制的动力控制系统。 在负载正常范围的情况下,步进电机的运行状态只和数字脉冲发生器提供的信号的频率和脉冲占空比有关,一般情况下,电机的状态不受负载的影响。电机的运行角度只和每次所给予的脉冲信号强度有关,而电机的运行速度也只和脉冲信号的频率有直接关 系。这种采用弱点控制强电的控制方式使得步进电机在速度、位移等控制领域有着普通电机不能比拟的优势。 2.驱动控制系统框图 步进电机控制系统有着精确控制、运行稳定的特性,这一其他电机不能比拟的优势使得步进电机得到了广泛的应用。而一般对步进电机控制系统的驱动必须要包含脉冲信 号发生部分,功放部分和驱动控制部分等几个模块电路,我们根据这些通过的模块电路,可将步进电机控制系统的通用框图绘制如下: 在上图的步进电机驱动控制系统方框图中,控制步进电机运行状态的脉冲信号一 般由集成芯片产生,可以是单片机、等智能芯片,也可以是一般的数字电路集成芯片。信号分配环节则要根据步进电机的型号来选择,如四相步进电机有四相四拍和四相 八拍种信号分配的方式;两相步进电机有两相四拍和八拍等脉冲加载形式。功放部分 在驱动环节上显得尤为重要。动态平均电流是步进电机转矩大小的决定因素,前提条件 是电机的速度。电机力矩与平均电流成正比,驱动系统对电机的反电势消弱越多,则平 均电流就越大。 我们一般可以用恒压和恒压串电阻的方法来驱动,或者在条件允许的情况下我们可以用高低压驱动、恒流和细分数等方法来驱动实际的应用过程种,多采用数字集成驱 动芯片作为步进电机的驱动手段。 二、现阶段国内外步进电机驱动的常用方式 1.变频器控制方式 使用变频器对步进电机进行驱动控制时,可以很好的解决步进电机在启动和停止时 容易失步的问题,提高了系统的控制精度。但是变频器的应用成本较高,结构和操作也 比较复杂,无形中提高步进电机的控制难度。 2.PLC控制方式 使用ABB、西门子、欧姆龙等国际知名生产制造商研发的系列产品可以 实现对步进电机的理想化控制,但是基于核心的步进电机控制系统成本高昂,且 难以实现精确控制,在本系统中不太适合。 3.单片机控制方式 随着嵌入式系统在工业控制领域中的广泛应用,以单片机特别是系列单片机 作为控制核心的步进电机控制电路在生产生活领域得到了普及,单片机有着大规模数字

步进电机速度控制系统设计

目录 1 总体方案的确定 (1) 1.1 对步进电机的分析 (1) 1.2 电机的控制方案 (2) 1.3 控制算法的方案 (3) 1.4 串口通讯的模拟 (3) 2 硬件的设计与实现 (4) 2.1 微处理器的选择 (4) 2.2 控制电路的实现 (4) 2.3 键盘和显示电路 (6) 3 软件的设计与实现 (6) 3.1 控制信号输入程序 (7) 3.2 步进电机控制程序设计 (8) 3.3 程序分析及说明 (9) 4 系统的仿真与调试 (10) 4.1 程序的调试 (11) 4.2 串口通信的调试 (11) 4.3 调试结果及分析 (11) 5 设计总结 (13) 参考文献 (14) 附录 (15)

步进电机速度控制系统设计报告 1 总体方案的确定 系统以单片机为核心,接收并分析来自键盘或串口的控制指令,经过CPU 的逻辑计算输出控制信息,让步进电机按要求转动。由于步进电机是开环元件,系统不需反馈环节,但也同时要求控制信号足够精确。此外,为实现单片机与电机之间信号对接,需要加入步进电机驱动单元。 1.1 对步进电机的分析 步进电机又叫脉冲电机,它是一种将电脉冲信号转化为角位移的机电式数模转换器。在开环数字程序控制系统中,输出控制部分常采用步进电机作为驱动元件。步进电机控制线路接收计算机发来的指令脉冲,控制步进电机做相应的转动,步进电机驱动数控系统的工作台或刀具。很明显,指令脉冲的总数就决定了数控系统的工作台或刀具的总位移量,指令脉冲的频率决定了移动的速度。因此,指令脉冲能否被可靠地执行,基本上取决于步进电机的性能。 步进电机的工作就是步进转动。在一般的步进电机工作中,其电源都是采用单极性的直流电源。要是步进电机转动,就必须对步进电机定子的各相绕组以适当的时序进行通电。当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度(即步进角)。通过控制脉冲个数即可以控制角位移量,从而达到准确定位的目的;同时通过控制脉冲频率来控制电机转动的速度和加速度,即可达到调速的目的。本设计是用单片机输出可调脉冲作为单片机的控制信号,通过改写脉冲频率调节单片机转速。 常见的步进电机分三种:永磁式(PM),反应式(VR)和混合式(HB),永磁式步进一般为两相,转矩和体积较小;反应式步进一般为三相,可实现大转矩输出,但噪声和振动都很大。混合式步进是指混合了永磁式和反应式的优点,它又分为两相和五相,应用最为广泛。单片机管脚输出电压一般不足以驱动步进电机转动,所以需要在单片机和步进电机之间加入驱动电路。

相关文档
最新文档