0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

步进电机的定位原理、方案及程序设计内容简介

1X4o_GKB1508 2017-11-27 09:58 次阅读

三菱PLC步进电机驱动器的接线图

步进电机是一种将电脉冲转化为角位移的执行机构。当步进驱动器接收到一个脉冲信号时就驱动步进电机按设定的方向转动一个固定的角度(称为“步距角”),其旋转以固定的角度运行。可以通过控制脉冲个数来控制角位移量以达到准确定位的目的;同时也可以通过控制脉冲频率来控制电机转动的速度和加速度而达到调速的目的。步进电机作为一种控制用的特种电机,因其没有积累误差(精度为100%)而广泛应用于各种开环控制。

定位原理及方案

步进电机加减速控制原理

步进电机驱动执行机构从一个位置向另一个位置移动时,要经历升速、恒速和减速过程。当步进电机的运行频率低于其本身起动频率时,可以用运行频率直接起动并 以此频率运行,需要停止时,可从运行频率直接降到零速。

当步进电机运行频率fb>fa(有载起动时的起动频率)时,若直接用fb频率起动会造成步进 电机失步甚至堵转。同样在fb频率下突然停止时,由于惯性作用,步进电机会发生过冲,影响定位精度。如果非常缓慢的升降速,步进电机虽然不会产生失步和过 冲现象,但影响了执行机构的工作效率。

所以对步进电机加减速要保证在不失步和过冲前提下,用最快的速度(或最短的时间)移动到指定位置。

步进电机常用的升降频控制方法有2种:直线升降频和指数曲线升降频。指数曲线法具有较强的跟踪能力,但当速度变化较大时平衡性差。直线法平稳性好,适用于速度变化较大的快速定位方式。以恒定的加速度升降,规律简练,用软件实现比较简单,本文即采用此方法。

定位方案

要保证系统的定位精度,脉冲当量即步进电机转一个步距角所移动的距离不能太大,而且步进电机的升降速要缓慢,以防止产生失步或过冲现象。但这两个因素合在 一起带来了一个突出问题:定位时间太长,影响执行机构的工作效率。

因此要获得高的定位速度,同时又要保证定位精度,可以把整个定位过程划分为两个阶段:粗定位阶段和精定位阶段。

粗定位阶段,采用较大的脉冲当量,如0.1mm/步或1mm/步,甚至更高。

精定位阶段,为了保证定位精度,换用较小的脉冲当量, 如0.01mm/步。虽然脉冲当量变小,但由于精定位行程很短(可定为全行程的五十分之一左右),并不会影响到定位速度。为了实现此目的,机械方面可通过 采用不同变速机构实现。

工业机床控制在工业自动化控制中占有重要位置,定位钻孔是常用工步。设刀具或工作台欲从A点移至C点,已知AC=200mm,把AC划分为AB与BC两 段,AB=196mm,BC=4mm,AB段为粗定位行程,采用0.1mm/步的脉冲当量依据直线升降频规律快速移动,BC段为精定位行程,采用 0.01mm/步的脉冲当量,以B点的低频恒速运动完成精确定位。在粗定位结束进入精定位的同时,PLC自动实现变速机构的更换。

定位程序设计内容梗概

PLC脉冲输出指令

目前较为先进的PLC不仅具有满足顺序控制要求的基本逻辑指令,而且还提供了丰富的功能指令。Siemens S7-200系列PLC的PLUS指令在Q0.0和Q0.1输出PTO或PWM高速脉冲,最大输出频率为20KHz。脉冲串(PTO)提供方波输出 (50%占空比),用户控制周期和脉冲数。脉冲宽度可调制(PWM)酮能提供连续、变占空比输出,用户控制周期和脉冲宽度。

本文采用PTO的多段管线工作 方式实现粗定位,PTO的单段管线方式实现精定位。

上述例子中,假定电机的起动和结束频率是2KHz,最大脉冲频率是10KHz。在粗定位过程中,用200个脉冲完成升频加速,400个脉冲完成降频减速。使用PLC的PTO多段管线脉冲输出时,用下面的公式计算升降频过程中的脉冲增量值。

给定段的周期增量=(ECT—ICT)/Q

式中:ECT=该段结束周期时间,ICT=该段初始周期时间。利用这个公式,加速部分(第1段)周期增量为2,减速部分(第3段)周期增量为1。因第2段是恒速部分,故周期增量为0。如果PTO的包络表从VB500开始存放,则表1为上例的包络表值。

源程序

主程序LD SM0.1 //首次扫描为1R Q0.0,1 //复位映像寄存器位CALL 0 //调用子程序0,初始化粗定位相关参数LD M0.0 //粗定位完成R Q0.0,1CALL 1 //调用子程序1,初始化精定位相关参数//子程序0,粗定位LD SM0.0

MOVB 16#A0,SMB67 //设定控制字:允许PTO操作,选择ms增量,选择多段操作MOVW 500,SMW168 //指定包络表起始地址为V500MOVB 3,VB500 //设定包络表段数是3MOVW 500,VW501 //设定第一段初始周期为500msMOVW -2,VD503 //设定第一段周期增量为-2msMOVD 200,VD505 //设定第一段脉冲个数为200MOVW 100,VW509 //设定第二段初始周期为100msMOVW 0,VD511 //设定第二段周期增量为0msMOVD 1360,VD513 //设定第二段脉冲个数为1360MOVW 100,VW517 //设定第三段初始周期为100msMOVW 1,VD519 //设定第三段周期增量为1msMOVD 400,VD521 //设定第三段脉冲个数为400ATCH 2,19 //定义中断程序2处理PTO完成中断ENI //允许中断PLS 0 //启动PTO操作子程序1,精定位LD SM0.0 //首次扫描为1MOVB 16#8D,SMB67 //允许PTO功能,选择ms增量,设定脉冲数和周期MOVW 500,SMW68 //设定精定位周期为500msMOVD 400,SMD72 //设定脉冲个数为400ATCH 3,19 //定义中断程序3处理PTO完成中断ENI //允许中断PLS 0 //启动PTO操作//中断程序2LD SM0.0 //一直为1= M0.0 //启动精定位//中断程序3LD SM0.0 //一直为1= M0.1 //实现其他功能

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • plc
    plc
    +关注

    关注

    5008

    文章

    13149

    浏览量

    461975
  • 步进电机
    +关注

    关注

    150

    文章

    3095

    浏览量

    147327

原文标题:PLC对步进电机进行定位控制程序

文章出处:【微信号:GKB1508,微信公众号:工控帮】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    单片机驱动步进电机程序设计

    单片机驱动步进电机程序设计
    发表于 08-03 17:27

    单片机驱动步进电机程序设计

    单片机驱动步进电机程序设计
    发表于 08-19 22:37

    步进电机相关知识简介

    步进电机简介步进电机是将电脉冲信号转变为角位移或线位移的开环控制元步进
    发表于 07-07 07:00

    C语言测控系统程序设计步进电机控制

    C语言测控系统程序设计步进电机控制实验报告学生姓名:XXX 学号:XXXXXXXXX实验的目的:1.掌握计算机并行接口的工作原理与使用方法。2.了解步近电机的工作原理与
    发表于 09-10 06:21

    NFC读取卡片UID内容简介

    目录内容简介第一节主界面第二节时间设置第三节打电话第四节发短信第五节播放音乐第六节拍照第七节查看照片第八节读取步伐卡路里第九节测心率第十节测温度第十一节NFC读取卡片UID内容简介本文档主要介绍
    发表于 12-07 11:58

    点对点通信内容简介

    点对点通信内容简介代码分析全部代码全部头文件内容简介申明:下面用到的方法为basicrf封装好的,在网上下载好之后,之间include导入即可通过ZIGBBE自组网,将俩个ZIGBBE盒进行连接
    发表于 01-24 06:19

    使用步进电机精确定位

    使用步进电机精确定位(使用 S7-200、EM 253 POSITION 和 FM STEPDRIVE)小型自动化解决方案
    发表于 01-09 10:20 58次下载

    DDC及EDID内容简介_TPV SPORTS

    DDC及EDID内容简介_TPV SPORTSDDC及EDID 的定义1.DDC: Display Data Channel (显示数据通道)----指主机与显示设备的通讯方式。基于End-user 的即插即用功能的需求,VESA 定义了DDC 标准。
    发表于 06-12 07:47 82次下载

    步进电机简介

    步进电机简介 1.什么是步进电机? 步进电机是一
    发表于 05-24 09:36 1729次阅读

    基于Linux的步进电机驱动程序设计

    介绍了Linux驱动程序的实现机制,在分析步进电机和驱动程序接口的基础上,给出了一个在嵌入式Linux平台上编写步进
    发表于 06-15 14:22 5978次阅读
    基于Linux的<b class='flag-5'>步进</b><b class='flag-5'>电机</b>驱动<b class='flag-5'>程序设计</b>

    单片机驱动步进电机程序设计

    单片机驱动步进电机程序设计,有需要的下来看看
    发表于 04-25 10:10 52次下载

    基于ARM9和Linux的步进电机四轴驱动程序设计_李杰

    基于ARM9和Linux的步进电机四轴驱动程序设计_李杰
    发表于 03-19 11:31 4次下载

    步进电机定位控制系统的VHDL程序与仿真资料免费下载

    本文档的主要内容详细介绍的是步进电机定位控制系统的VHDL程序与仿真资料免费下载。
    发表于 01-20 14:26 15次下载

    C51控制步进电机程序设计

    C51控制步进电机程序设计说明。
    发表于 03-30 09:59 39次下载
    C51控制<b class='flag-5'>步进</b><b class='flag-5'>电机</b><b class='flag-5'>程序设计</b>

    步进电机驱动实验(89C51 + KEIL + Proteus)

    2.1 方案设计2.2 程序设计第3章 实验结果第1章 实验目的本章节主要对步进电机驱动实验的目的进行介绍,主要从实验内容和实验原理进行展开
    发表于 11-20 16:06 29次下载
    <b class='flag-5'>步进</b><b class='flag-5'>电机</b>驱动实验(89C51 + KEIL + Proteus)