您的位置:控制工程论坛网论坛 » PLC与PAC » PLC在步进电机控制中的应用

wilton_gao

wilton_gao   |   当前状态:离线

总积分:123  2024年可用积分:0

注册时间: 2008-01-16

最后登录时间: 2009-09-29

空间 发短消息加为好友

PLC在步进电机控制中的应用

wilton_gao  发表于 2008/9/11 9:24:55      1248 查看 4 回复  [上一主题]  [下一主题]

手机阅读

0 前言
    PLC是一种以微处理器为基础,综合了现代计算机技术、自动化技术和通信技术发展起来的一种通用的工业自动化装置。由于它具有体积小、功能强、程序设计简单,以及维护方便等优点,特别是PLC适应恶劣的工业环境的能力和高可靠性,使其应用越来越广泛。但是由于我国的PLC技术教育落后,许多高校毕业生,甚至一些现场工程技术人员对PLC的知识也相当缺乏[1]。

    步进电机是工业自动化过程当中经常用到的一种控制传动机构,它是通过接受输入脉冲,然后每个脉冲转动一定的步距(角度)来完成对执行机构的控制传动的。使用PLC可以通过特殊功能存储器(SM)或者增加EM253位控模块来控制步进电机,但是使用SM需要熟悉每一位的意义,而且编程烦琐。如果为PLC增加功能扩展模块,无疑会增加产品成本。鉴于这些原因并结合本人的实践经验,本文利用STEP 7-Micro/WIN 位置控制向导来实现应用PLC控制步进电机的运动功能。

1 操作步骤[2]
    使用STEP 7——Micro/WIN位置控制向导,为线性脉冲串输出(PTO)操作组态一个内置输出。启动位置控制向导,可以点击浏览条中的向导图标,然后双击PTO/PWM图标,或者选择菜单命令工具→位置控制向导。
(1)在位置控制向导对话框中选择“配置S7-200 PLC内置PTO/PWM操作”。
(2)选择Q0.0或Q0.1,组态作为PTO的输出。
(3)从下拉对话框中选择“线性脉冲串输出(PTO)”。
(4)若想监视PTO产生的脉冲数目,点击复选框选择使用高速计数器。
(5)在对应的编辑框中输入最高电机速度(MAX_SPEED)和电机的启动/停止速度(SS_SPEED)的数值。
(6)在对应的编辑框中输入加速和减速时间。
(7)在移动包络定义界面,点击新包络按钮允许定义包络,并选择所需的操作模式。
a)对于相对位置包络:
输入目标速度和脉冲数。然后,可以点击“绘制包络”按钮,查看移动的图形描述。
若需要多个步,点击“新步”按钮并按要求输入步信息。
b)对于单速连续转动:
在编辑框中输入目标速度的数值。
若想终止单速连续转动,点击子程序编程复选框,并输入停止事件后的移动脉冲数。
(8)根据移动的需要,可以定义多个包络和多个步。
(9)选择完成结束向导。

1楼 0 0 回复
  • wilton_gao

    wilton_gao   |   当前状态:离线

    总积分:123  2024年可用积分:0

    注册时间: 2008-01-16

    最后登录时间: 2009-09-29

    空间 发短消息加为好友

    wilton_gao   发表于 2008/8/8 15:45:07

    2 应用实例
        本例通过PLC控制步进电机在车轮自动超声探伤中的应用,进一步说明利用STEP 7-Micro/WIN 位置控制向导来实现利用PLC控制步进电机的具体操作过程。


        车轮自动超声探伤系统是利用车轮在探伤架上的转动,通过超声波来实现对车轮内部缺陷的检测,其中车轮的转动是由步进电机通过减速箱来实现驱动的。整个系统机械部分的运动由下位机(PLC)来控制,如图1。



     
    图1 机械系统运动原理       图2 上位机与下位机的通信


        为了保证探伤的准确性,一般需要两组探头同时检测分别对车轮的踏面以及内侧面。当这两组探头分别接触到车轮的踏面和内侧面后,PLC会收到这两组探头的行程开关发出的探头到位信号,此时由下位机向上位机(工控机)上传“准备好”信号。在上位机收到“准备好”信号后,可以向下位机发送“探伤开始”的信号了,下位机收到该信号后,立即向步进电机发送脉冲,车轮开始转动,探伤工作开始了,如图2所示,其中上位机与下位机是采用自由口方式进行通信的。


        在这个过程中,利用位置控制向导对步进电机的配置非常重要,合理的配置能够增加探伤系统的灵敏度,不合理的配置会增加探伤工作的困难,甚至有可能烧坏电机。


        在该应用中,配置向导的前四个操作步骤中一般采用默认设置即可。在操作步骤(5)中,MAX_SPEED的设置应该在电机力矩的最大范围内,驱动负载所需的力矩由摩擦力、惯性以及加速/减速时间决定,在这里设为400。对SS_SPEED的设置不能太大,太大就会造成电机失步,但是如果太小就会在电机启动时产生颤抖或者振动,在此设为100。具体应用要根据不同的电机使用说明书来设置。最低电机速度(MIN_SPEED)系统默认等于SS_SPEED。

    2楼 回复本楼

    引用 wilton_gao 2008/8/8 15:45:07 发表于2楼的内容

  • wilton_gao

    wilton_gao   |   当前状态:离线

    总积分:123  2024年可用积分:0

    注册时间: 2008-01-16

    最后登录时间: 2009-09-29

    空间 发短消息加为好友

    wilton_gao   发表于 2008/8/8 15:45:41

    在步骤(6)中可以设置加速时间(ACCEL_TIME)和减速时间(DECEL_TIME),如图4所示。在该系统中,探伤主要是在电机匀速转动时工作的,所以加速与减速时间越小越有利于探伤工作,但是时间太小会影响步进电机的使用寿命,在此加速时间设为1000,减速时间设为500。
     


    图4 加速时间和减速时间


        在步骤(7)中,由于步进电机本身存在加速与减速时间,所以我们选择建立相对位置包络。并且探伤系统不需要中间变速度,所以只需要输入希望的步0信息。在该系统中,我们希望的目标速度为150(介于MAX_SPEED和MIN_SPEED之间)。假设α为步进电机一步转过的角度,θ为步进电机总共需要转的角度,ψ为步进电机需要的总脉冲数,φ为车轮总共转过的角度,n为减速箱的传动比,于是计算包络总位移(即步进电机需要的总脉冲数)的公式为
    ψ=θ/α=nφ/α            (1)


        由于步进电机存在开始时加速和结束时减速两个无法克服的过程,所以在这两个过程中可能存在漏探或误探,于是在探伤过程中规定,车轮至少应转1.25圈,即450°。在该系统中,n=60,α=0.72°(即每转细分数为500步),因此由公式(1)可以推出ψ=37500。绘制的包络如图5所示。



    相对位置模式下的包络 
    图5 相对位置模式下的包络
    3楼 回复本楼

    引用 wilton_gao 2008/8/8 15:45:41 发表于3楼的内容

  • wilton_gao

    wilton_gao   |   当前状态:离线

    总积分:123  2024年可用积分:0

    注册时间: 2008-01-16

    最后登录时间: 2009-09-29

    空间 发短消息加为好友

    wilton_gao   发表于 2008/8/8 15:47:08

    然后选择一个大小合适且未使用的V存储区来保存配置和包络信息,最后向导会根据刚才的配置生成PTO0_CTRL、PTO0_MAN和PTO0_RUN三个项目组件,用户可以在自己编写的程序中调用这些组件。其中:PTO0_CTRL指令是用于在手动模式下初始化步进电机;PTO0_MAN指令是用于手动模式控制线性


    PTO,在手动模式中,可以使用不同的速度操作PTO,如图6;PTO0_RUN指令用于命令线性PTO操作执行在向导配置中指定的运动包络,如图7。
     


    PTO0
    图6 PTO0_MAN指令应用 


    PTO0
    图7 PTO0_RUN指令应用



     
         至此,利用位置控制向导对步进电机的配置已经完成。



    3 结论
        通过上面的例子可以看出,本文介绍的利用STEP 7-Micro/WIN 位置控制向导来实现PLC对步进电机的控制,操作简单,而且不用增加功能扩展模块,降低了产品成本,是非常值得在PLC应用中尝试的

    4楼 回复本楼

    引用 wilton_gao 2008/8/8 15:47:08 发表于4楼的内容

  • sspc_xw

    sspc_xw   |   当前状态:离线

    总积分:74  2024年可用积分:0

    注册时间: 2007-12-04

    最后登录时间: 2015-09-23

    空间 发短消息加为好友

    sspc_xw   发表于 2008/9/11 9:24:55

    5楼 回复本楼

    引用 sspc_xw 2008/9/11 9:24:55 发表于5楼的内容

总共 , 当前 /