SIMTOTION Measuring Input使用入门

n

1. 概述
Measuring Input TO用于快速,准确地记录某一时刻轴或编码器的位置值。根据支持硬件及功能的不同,Measuring Input功能可分为Local Measuring Input 和 Global Measuring Input。Local Measuring Input用于对单个轴或编码器的位置值进行记录,其测量点是固定的,通常是通过集成在驱动中的测量点来完成,在系统配置时通过Measuring Input Number来确定相应的测量点。Global Measuring Input可对单个或多个轴或编码器的位置值进行记录,并且带有时间戳功能,可更精确地记录位置信息。它对应的测量点通过设置硬件地址来确定。Measuring Input相关的基本概念如下:n

1.1 测量范围Measuring Range
Measuring Input可设置一定的测量范围,可使Measuring Input功能只在该段位置范围内才激活。如果设定的起始值大于结束值,对非模态轴,系统会将两个值对调,对于模态轴,则直接延伸至下一周期。n

1.2 触发方式的选择
对于单次测量(见节1.3),有如下的触发方式选择:n

  • 仅上升沿n
  • 仅下降沿n
  • 上升沿或下降沿n
  • 上升沿或下降沿,但是以上升沿开始n
  • 上升沿或下降沿,但是以下降沿开始

对于循环测量(见节1.3),有如下的触发方式选择:n

  • 仅上升沿n
  • 仅下降沿n
  • 上升沿或下降沿

1.3 单次测量与循环测量
Measuring Input功能根据测量次数的不同分为两种:n

  • 单次测量(One-time measurement):使用命令“_enableMeasuringInput”激活,只执行一次,完成后自动停止,下次测量需重新激活。单次测量也可通过指令停止。n
  • 循环测量(Cyclic measurement)(仅Global Measuring Input支持循环测量):使用命令“_enableMeasuringInputCyclic”激活。循环测量会一直执行直到用指令去停止。

根据所设定的触发方式的不同,最终测到的位置值也不同,如下表:n

测量方式 触发信号设定 measuredValue1 measuredValue2
单次测 仅上升沿或仅下降沿 第一个上升沿或下降沿(两者选一,取决于触发信号的设定)时的位置值 无值
上升和下降沿 第一个沿信号(无论是上升沿还是下降沿均可)发生时的值 第二个沿信号(无论是上升沿还是下降沿均可)发生时的值
上升和下降沿以上升沿开始 第一个上升沿时的位置值 第一个下降沿时的位置值
上升和下降沿以下降沿开始 第一个下降沿时的位置值 第一个上升沿时的位置值
循环测 仅上升沿或仅下降沿 第一个上升沿或下降沿(两者选一,取决于触发信号的设定)时的位置值 发生在同一个处理周期中的第二个上升沿或下降沿(两者选一,取决于触发信号的设定)时的位置值
上升和下降沿 第一个上升沿发生时的值 第一个下降沿发生时的值

表 1 触发信号不同时的测量值对比n

注:TM15能支持Global Measuring Input,但不能支持Cyclic Measuring Inputn

1.4 时间戳功能 (仅限于Global Measuring Input)
对于Global Measuring Input,每次测量时的当前时刻(时间戳)都会被保存下来,这样位置值就会精确地被记录,而不会由于系统处理的时间延迟导致位置偏差,但只有特定的硬件才能支持时间戳功能。支持的硬件和支持Global Measuring Input的硬件相同,见表2。n

1.5 Listening Measuring Input (仅限于Global Measuring Input)
通过使能Listening measuring Input功能可以使一个测量点同时记录多个轴或编码器的位置。通过组态可以设置Listening measuring Input功能。
Listening measuring Input功需要使用时间戳的功能,因而只能是支持Global Measuring Input TO的硬件才能使用,在使用时要注意:n

  • Listening Measuring Input TO不能进行激活或取消激活,而是取决于其Original Measuring Input TO。n
  • Listening Measuring Input TO不能选择边沿触发方式以及测量范围,而是由其Original Measuring Input TO来决定n
  • Listening Measuring Input TO要正确设置处理周期(process cycle) 和系统号(system number), 处理周期可以和Original Measuring Input TO不同,但会影响精度, 系统号为Listening Measuring Input TO连接轴的编码器编号。n
  • 一个Measuring Input TO可以连接多个的Listening Measuring Input TOn
  • 一个轴/编码器可以同时连接多个Measuring Input TO和Listening Measuring Input TO,或两者混合使用。n
  • Original Measuring Input TO只有输出没有输入接口,Listening Measuring Input TO只有输入没有输出接口

1.6 Measuring Input TO的分配和连接n

Measuring Input TO可分配给以下的轴或编码器:n

  • 位置轴,同步轴或Path轴(Position, synchronous axes, path axes)n
  • 外部编码器(External encoders)n
  • 虚轴(Virtual axes)(仅限于Global Measuring Input)

注:Measuring Input TO 不能连接到速度轴(speed-controlled axes)
另外还需注意以下的连接规则:
单个轴或外部编码器可同时连接多个Measuring Input TO:

Local Measuring Input:每个轴最多可配2个Local Measuring Input,且一个时刻只能激活一个。
Global Measuring Input:每个轴可以配多个Global Measuring Input,且可以同时激活多个
多个Measuring Input TO可连接到一个测量点,只能激活一个(仅限于SIMOTION C2xx ):
对于SIMOTION C2xx的Local Measuring Input, 多个Local Measuring Input 可以连接到同一个Measuring Input,但是在某一个时刻只能激活一个。
多个轴上记录同一个测量事件- Listening measuring input(仅限于Global Measuring Input):
通过Listening Measuring Input功能使多个Global Measuring Input TO连到同一个测量点上,从而在同一时刻记录多个轴/外部编码器的位置值。n

1.7 支持Measuring Input功能的相关硬件
实现Measuring Input功能还需要特定的硬件支持,下表为支持该功能的相关硬件:n

硬件测量点 Local Measuring Input Global Measuring Input
TM15/TM17 —— Y
C240(B1-B4) —— Y
SIMTION D集成点 Y Y
C2xx(M1, M2) Y ——
CX32 Y ——
CU310/CU320 Y ——
CUMC Y ——
611U Y ——

表 2 Measuring Input 硬件测量点n

1.8 Measuring Input的监控
单次测量:
系统变量“measuredEdgeMode”用于选择测量信号的类型。通过系统变量“control”可以查看Measuring Input功能是否激活。通过变量“state”可查看是否已经检测到触发信号,没有检测到时其值为“WAITING_FOR_TRIGGER”,检测到信号输入后其值为“TRIGGER_OCCURRED”。测量到的位置值保存在变量MeasuredValue1 和 MeasuredValue2 中。
循环测量:
系统变量“userdefault.measurededgecyclicMode” 用于选择测量信号的类型。系统变量“cyclicMeasuringEnableCommand”用于显示循环测量是否激活,变量“state”始终保持为“WAITING_FOR_TRIGGER”值。检测到的位置数据保存在变量“MeasuredValue1” 和 “Measured Value2”中。
系统变量“countermeasuredvalue1”和“countermeasuredvalue2”会记录下触发事件的产生次数。Countermeasuredvalue中的值会在上电,重启,重新激活等操作中复位,但如果cyclicMeasuring已经激活,仅仅是再次执行“_enableMeasuringInputCyclic”命令(如用于修改参数),其值不会被复位。n

1.9 Measuring Input仿真
测量信号的输入可以进行仿真,使用功能函数_enablemeasuringinputsimulation激活仿真,激活后(simulation=active),仿真值(在函数参数中指定)被写入到Measuredvalue1,同时状态变量state的值被设置为trigger occurred(循环测量时也如此)。只有利用函数_disablemeasuringinputsimulation退出仿真模式时才实际的测量才生效。是否处于仿真模式可通过Measuring Input TO的系统变量”simulation”看出。n

2. Measuring Input基本配置过程

2.1 Global Measuring Input的配置n

2.1.1 SIMOTION D4xx 的Global Measuring Input配置
下面介绍SIMOTION D4xx集成IO的Global Measuring Input的配置过程,SIMOTION的项目创建及轴的基本配置过程请参考其它相关手册,文中不再详述。
Step 1. SINAMICS_INTEGRATED中的设定。
Global Measuring Input时需要设置P728.8~P728.15即IO的类型为输入, 同时设置CU中的参数P680(0~5),最多6个Global Measuring Input对应的IO地址,如下图:n

SIMTOTION Measuring Input使用入门
图 1 SIMOTION D4xx Global Measuring Input 测量点的选择n

注:SIMOTION D4x5只有DI/DO9~11, DI/DO13~15可作为Measuring Input的测量点。
SIMOTION D410只有DI/DO9~11可作为Measuring Input的测量点。
设置完参数之后,再选择报文,CU报文一定要选择带Measuring Input功能的391(2个Measuring Input)或392(6个Measuring Input)报文,SIMOTION D4xx的Global Measuring Input信号是通过CU的报文从SINAMICS传到SIMOTION的。SINAMICS_INTEGRATED的报文设置如图2。
选择好报文后再点击“Transfer to HW Config”按钮,这样就将SINAMICS中的数据与SIMOTION中进行了联结。
注:上述的操作前后顺序不可颠倒,否则SIMOTION将无法识别Measuring Input的地址。n

SIMTOTION Measuring Input使用入门
图 2 SINAMICS_INTEGRATED报文设置n

Step 2. 插入Measuring Input TO:n

SIMTOTION Measuring Input使用入门
图 3 插入Measuring Input TOn

Step 3. 配置Global Measuring Input的组态数据:n

SIMTOTION Measuring Input使用入门
图 4 Global Measuring Input的组态数据n

Monitor current status(组态数据变量MipInputCfg.checkProbeState)仅在单次测量的Measuring Input时有效,其功能是用于是否忽略小于一个处理周期的短脉冲,选择该选项表示忽略短脉冲。比如如果选择了该项,且单次测量的触发方式为上升沿时,那么只有保持一个ServoCycle周期以上为0状态之后产生的上升沿脉冲才会被认为是有效的触发信号。
测量点的硬件地址的确认方法为:(CU报文输入的起始地址+3).Bit位,其中Bit位的确定如下表所示:n

D4x5中的测量点 位号
X122.8 (DI/DO9) Bit 1
X122.10 (DI/DO10) Bit 2
X122.11 (DI/DO11) Bit 3
X132.8 (DI/DO13) Bit 4
X132.10 (DI/DO14) Bit 5
X132.11 (DI/DO15) Bit 6

表 3 Measuring Input Bit位的确定n

如图2中的输出起始地址为300,如果使用DI/DO9作为测量点,那么就用319.1作为硬件地址,如图4。
Step 4. 配置Global Measuring Input的系统变量,即Default中的值:n

SIMTOTION Measuring Input使用入门
图 5 Global Measuring Input的Default系统变量值设定n

这样Global Measuring Input的配置过程就完成了。
2.1.2 TM15/TM17的Global Measuring Input配置
Step. 1 首先是要配置TM15/TM17 IO的功能,以TM17为例:n

SIMTOTION Measuring Input使用入门
图 6 TM17中DI点的Measuring Input功能设置n

Step 2~4:
TM15/TM17配置的第2~4步与SIMOTION D 集成IO基本相同。在Step. 3中确定硬件地址的方法也是通过报文中的Input地址加偏差来确定,偏差值可在 DI点的设置中找到,见图6,地址在报文结构中可以找到,如下图:n

SIMTOTION Measuring Input使用入门
图 7 TM15/TM17的报文n

图中的输入地址为336,如果用DI0作为输入,那么SIMOTION中应设的硬件地址为336+3.0=339.0
注:TM15/TM17的报文是固定的,无需修改,只需要修改IO设置之后点击“Transfer to HW Config”按钮来和SIMOTION进行联结即可。n

2.1.3 C240 (B1-B4) 的Global Measuring Input配置
Step. 1:C240的输入B1-B4可以作为Global Measuring Input测量点,由于B1-B4本身就是SIMOTION CPU上的IO点,所以无需通过报文传输测量信号。因而节2.1.1中介绍的Step.1即第一步的内容可以省略。
Step. 2~4:C240 (B1-B4)的Global Measuring Input配置过程的第2~4步与SIMOTION D 集成IO的配置基本相同。在Step. 3中硬件地址的确定对于C240 (B1-B4),其默认的硬件地址为64,位号0-3对应B1-B4。硬件地址可在硬件组态中查看:n

SIMTOTION Measuring Input使用入门
图 8n

2.2 Listening Measuring Input 配置
Listening Measuring Input仅被TM15/TM17, SIMOTION D 集成IO点 和 C240 (B1-B4)支持,下面以SIMOTION D 集成IO点为例介绍:
Step. 1~2: 与节2.1.1中的中Step.1~2完全相同。
Step. 3: 配置Listening Measuring Input TO的组态数据如下:n

SIMTOTION Measuring Input使用入门
图 9 Listening Measuring Input TO的组态数据n

Step. 4: 将Listening Measuring Input TO中的Intercoections组态画面中的Event acceptance连接到original Measuring Input TO(见节1.5)上,输入连接组态如下:n

SIMTOTION Measuring Input使用入门
图 10 Listening Measuring Input TO的连接n

Listening Measuring Input TO的其他方面使用方法与Global Measuring Input TO类似。n

2.3 Local Measuring Input配置
下面以SIMOTION D4x5 集成IO的为例介绍Local Measuring Input配置。
Step. 1 SINAMICS_INTEGRATED中的设定。
Local Measuring Input是与具体的一个驱动即SINAMICS中的Servo/Vector轴相连,因而需要设定Servo/Vector中的参数。参数 P488为第一个Local Measuring Input 测量点,P489为第二个Local Measuring Input 测量点。所能连接的点和Global Measuring Input是相同的,即DI/DO9~11,DI/DO13~15,如下图n

SIMTOTION Measuring Input使用入门
图 11 Local Measuring Input 在SINAMICS中的参数设定n

Local Measuring Input的测量点信号来自编码器的状态字r481,并经由轴的报文如105或106传给SIMOTION D。如下图:n

SIMTOTION Measuring Input使用入门
图 12 Local Measuring Input 信号n

Step. 2 插入Measuring Input TO,与节2.1.1中的 Step 2相同。
Step. 3 设置Measuring Input TO的组态画面如下:n

SIMTOTION Measuring Input使用入门
图 13 Local Measuring Input TO的组态数据n

Step. 4 设置Measuring Input TO的default系统变量:n

SIMTOTION Measuring Input使用入门
图 14 Local Measuring Input TO的Default系统变量n

至此,Local Measuring Input TO的配置就完成了。
C2xx (M1-M2)设备上的Local Measuring Input配置与SIMOTION D4x5 集成IO的配置过程类似,除了第一步由于C2xx 上的M1-M2输入点为CPU自带,因而不需要报文等内容的设置外,其它步骤均类似。其它硬件设备的Local Measuring Input配置请参考相关手册。n

3. Measuring Input编程n

3.1 MCC编程
Measuring Input的编程较为简单,首先以MCC编程为例进行介绍,MCC编程中关于Measuring Input的指令如下图:n

SIMTOTION Measuring Input使用入门
图 15 MCC中 Measuring Input相关命令栏n

编写如下程序:n

SIMTOTION Measuring Input使用入门

图 16 Measuring Input的MCC编程中的程序块n

其中子程序faultexecution()为故障处理子程序,为空程序,在TechnologicalFqultTask和PeripheralFaultTask中进行调用。
子程序runAxis1用于将轴以位置方式运行,包括轴使能,回零和位置运行命令,该子程序在MotionTask1中进行调用,同时MotionTask1设定为启动后自动运行。n

SIMTOTION Measuring Input使用入门
图 17 轴运行子程序n

子程序mistartup()为MeasuringInput控制子程序,本例在IPO中进行调用,具体程序如下:n

SIMTOTION Measuring Input使用入门
图 18 Measuring Input控制子程序n

3.2 ST编程
以ST方式进行编程时,程序结构和MCC的相同,几个子程序的具体内容如下:

SIMTOTION Measuring Input使用入门

图 19 Measuring Input的MCC编程中的程序块

变量及程序声明部分的内容如下:

SIMTOTION Measuring Input使用入门

轴运行子程序如下,仍在MotionTask1中调用,且MotionTask1设为启动后自动启动:

SIMTOTION Measuring Input使用入门

Measuring Input控制子程序如下,本例在同步运行任务IPO中进行调用:

SIMTOTION Measuring Input使用入门

3.3 曲线记录
下图为Global Measuring Input触发信号为All edges,采用循环测量时的监控曲线:

SIMTOTION Measuring Input使用入门
图 20 Cyclic Measuring Input 选择All Edges时的实际监控曲线

注:图中曲线1-5的信号分别为,下文涉及的所有监控曲线图也相同。

  • Measuring Input测量信号,即DI/DO9信号
  • _to.Measuring_input_1.countermeasuredvalue1
  • _to.Measuring_input_1.countermeasuredvalue2
  • _to.Measuring_input_1.measuredvalue1
  • _to.Measuring_input_1.measuredvalue2

从图中可看出,Measuring Input对每个上升沿和下降沿都进行了触发,上升沿时的位置存入Measuring_input_1.measuredvalue1,同时Measuring_input_1.countermeasuredvalue1加1,下降沿时的位置存入Measuring_input_1.countermeasuredvalue2,同时Measuring_input_1.measuredvalue2加1。

参考文献
SIMOTION Output Cams and Measuring Inputs Function Manual 27002125

关键词
SIMOTION, Measuring Input

原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc326746.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2020年11月5日 下午12:03
下一篇 2021年4月12日 上午12:00

相关推荐

发表回复

登录后才能评论