zoukankan      html  css  js  c++  java
  • PMAC运动程序例程(一)

    PMAC运动程序例程(一)

    日期:2015/06/10

    作者:Z.K.

    修订信息:2015/08/13修改1

    Example1

    &1                      选择坐标系1
    Close                   关闭所有的缓冲寄存器
    #1->X                   将1号电机分配给X轴
    OPEN PROG1              打开程序1的缓冲寄存器
    CLEAR                   清除缓冲寄存器的内容
    LINEAR                  选择混合线性插值运动模式,还可以选择CIRCLE圆弧运动
    ABS                     绝对运动(给定位置),INC表示相对运动	
    TA500                   设置500ms的加速时间
    TS0                     不使用曲线加速
    F5000                   设置速度为5000个单位每秒
    X10000                  移动X轴(即1号电机)到位置10000
    DWELL500                在位置10000处停留500ms
    X0                      移动到位置0处
    CLOSE                   关闭寄存器,结束程序
    &1  B1  R               &1跟上面一样,选择坐标系1,B1是将程序计数器,跳到程序1的起点,R(RUN)运行程序
    

    注:

    1. 1->X  轴定义语句,还有另外一种形式。#1->{constant}X,表示将{constant}个编码器(光栅尺)脉冲作为X轴的一个运动单位,例如,我们用的直线电机2000个脉冲对应1mm,我们可以定义为#1->2000X,就将光栅尺2000个脉冲定义为X轴的工程单位,此后在程序中写X1即表示X正向运动1mm,F100即表示速度为100mm/s.类似的,我们用的华大电机2500线编码器四倍频之后一转发出10000个脉冲,平均每一度转角对应27.77777777777778(10000/360)个脉冲,因此我们可以定义为#2->27.77777777777778Y,那么在以后在程序中,我们写Y1即表示Y轴正向转动1度,f10表示10°/s。这是一个很实用的功能,在程序开头定义后,就再不用管脉冲与实际单位的对应关系。

    2. 时间单位,程序当中的时间单位大部分为ms,但是在这里速度设置的时候是秒,比如上面的F5000表示5000cts/s,原因以后再讲。

    理论运行结果如下图

    实际运行结果


    红色表示实际速度,绿色表示指令速度。

    红色表示实际位置,绿色表示指令位置。

  • 相关阅读:
    php之基础深入---类与对象篇
    php之cURL惯用
    php之header的不同用法
    java的图形界面初学惯用
    java 的http请求方式:HttpURLConnection和HttpClient
    数据挖掘-推荐算法入门
    性能测试平台效率优化的一次经验(python版)
    AndroidTest工程的自定义gradle task
    Robotium源码解读-native控件/webview元素的获取和操作
    工作中一些环境问题解决记录
  • 原文地址:https://www.cnblogs.com/zhengkang/p/4892008.html
Copyright © 2011-2022 走看看