目标:

将变量值(任意实数)写入Encoder,作为encoder的实际位置值。例如,将MP177手轮的值写入编码器,达到SMC30配置手轮的功能。
Platform: simotion D435-2 , mobile-panel177(含手轮)
Software: scout 4.4

Step1 在simotion scout中,新建一个编码器,请选择选择linear

测试中发现"rotary"类型的编码器不合适


Step2: 选择Input module for encoder value ,点击“assign”,编码器类型“absolute”


Step3: 保持默认编码器数据,不需要修改


Step4: 修改encoderIdentificationset_actual_value

编译项目(compile),一致性检查,如果能够通过,编码器就配置完成了。

Step5: 写入编码器位置值

在IPO程序中,向变量sensorSettings.actualvalue赋值

Step6(optional): 设置编码器滤波

我这个应用是把MP177/277的手轮输入,写入encoder。因为是在IPO中写入,如果要增加滤波,只能使用IPO周期中滤波。设置如下图:
激活外推Extrapolation , 设置为 0.00001S. 速度选择微分(Differentiation)

Position filter,约0.15S-0.3S

Velocity fiter 选择平均值(mean value),时间约0.3S

附录

附录1:MP177/277作为PROFINET/PROFIBUS从站,插入到网络上


在Simotion的Address List中,建立IO变量,连接MobilePanel

附录2:将MobilePanel的手轮值写入simotion的编码器TO

下图中IW_MP177[3]是手轮正向转动时的数值,IW_MP177[4]是手轮反向转动时的数值。这两个数值的范围是0-255。以下程序可将数值转换为单一变量,并写入encoder.
Encoder的模态范围设为0-256(mm)

附录3:MP177编码器曲线

可见,设置滤波后,MP177手轮的曲线,类似于普通TTL编码器。实轴可以和此编码器同步。注意同步时的Interconnections选择Actual value with extrapolation().

如何将位置值写入simotion encoder?的更多相关文章

  1. C++ 无法将值写入注册表 HKEY_LOCAL_MACHINE\Sofeware\Microsoft\Windows\CurrentVersion\Run,以实现开机自启动应用程序。

    C++  无法将值写入注册表 HKEY_LOCAL_MACHINE\Sofeware\Microsoft\Windows\CurrentVersion\Run,以实现开机自启动应用程序.但可以写入到H ...

  2. 【转】c# winform 创建文件,把值写入文件,读取文件里的值,修改文件的值,对文件的创建,写入,修改

    创建文件和读取文件的值 #region 判断文件是否存在,不存在则创建,否则读取值显示到窗体 public FormMain() { InitializeComponent(); //ReadFile ...

  3. position的五个不同的位置值

    一.position: static  无定位 HTML 元素默认情况下的定位方式为 static(静态). 静态定位的元素不受 top.bottom.left 和 right 属性的影响. posi ...

  4. Windows 7安装软件时无法将注册值写入注册表的处理方法

    1. 我们来确认一下,有没有安装什么软件把注册表给封了.如杀毒软件,防火墙等.把这些软件关了之后,再安装软件试试:如果不行,就把杀毒软件卸载了,再安装软件试试. 2. 更改组策略设置 步骤: 开始-运 ...

  5. curl返回值写入内存的场景

    直接上代码: #include <stdio.h> #include <stdlib.h> #include <string.h> #include <cur ...

  6. 原生js获取 一个dom元素距离页面可视区域的位置值 -- getBoundingClientRect

    getBoundingClientRect() 这个方法返回一个矩形对象,包含四个属性:left.top.right和bottom.分别表示元素各边与页面上边和左边的距离. var box=docum ...

  7. VMWare------安装时出现无法将值写入注册表项

    安装时提示详情: 无法打开注册表项UNKNOWN\Components\...请确认你是否有足够的权限访问该注册表项,或者与技术支持人员联系. 解决方法: 关掉360安全卫士等软件再安装

  8. ansible command模块将返回值写入变量

    ansible 中command模块支持 register参数将远程命令执行的输出结果存储在变量中,后续可以在when中对该变量进行检索确定下一步任务. --- - name: cat /etc/re ...

  9. VM虚拟机安装无法将值写入注册表.....请确认你是否有足够的权限访问该注册表项,或者与技术支持人员联系。

    解决方法: 关掉360安全卫士等软件再安装

随机推荐

  1. C#获取单元格值(使用NPOI插件)

    /// <summary> /// 获取单元格的值 /// </summary> /// <param name="item"></par ...

  2. 简述wcf应用

    一.新建wcf 如下图:wcf可以简历俩种形式 1.库文件,就是一个类库文件,可以用windows服务或控制台开启. 2.服务应用程序,可以直接IIS上面发布. 二.库文件自动生成的类 接口类 usi ...

  3. 理解 Spring 事务原理

    转载:https://www.jianshu.com/p/4312162b1458 一.事务的基本原理 Spring事务的本质其实就是数据库对事务的支持,没有数据库的事务支持,spring是无法提供事 ...

  4. 《mac的git安装手册-1》

    <mac的git安装手册-1> 下载地址 https://git-scm.com/downloads 如果遇到上面这个问题打开系统偏好设置: OK,这样就能安装了

  5. Javascript各种事件汇总

    https://www.cnblogs.com/diligenceday/p/4190173.html#undefined https://www.cnblogs.com/starof/p/40663 ...

  6. plSql添加快捷键设置

    汉化版:工具-首选项-用户界面-编辑器-自动替换-定义文件 英文版:Tools->Perferences->Editor中Autoreplaces选择配置的shortcuts 常用快捷键设 ...

  7. 关于C语言读取文件时候多读一行

    梗概:为什么C语言读取文件到结构体时为什么整天多读一行?一切都是[!feof(fp)]的错!!! while (!feof(fp)) { fgets(buffer, , fp); j++; } 像这样 ...

  8. SigmoidCrossEntropyLoss

    http://blog.csdn.net/u012235274/article/details/51361290

  9. stm32 输入捕获学习(一)

    输入捕获模式可以用来测量脉冲宽度或者测量频率.STM32 的定时器,除了 TIM6 和 TIM7,其他定时器都有输入捕获功能.STM32 的输入捕获,简单地说就是通过检测 TIMx_CHx 上的边沿信 ...

  10. php 关于时间的函数

    //返回1970年1月1日零点以来的秒数.    //定义为从格林威治时间1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现在的总秒数. time(); ...