目标:

将变量值(任意实数)写入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. HDU5950 Recursive sequence 非线性递推式 矩阵快速幂

    题目传送门 题目描述:给出一个数列的第一项和第二项,计算第n项. 递推式是 f(n)=f(n-1)+2*f(n-2)+n^4. 由于n很大,所以肯定是矩阵快速幂的题目,但是矩阵快速幂只能解决线性的问题 ...

  2. 华东交通大学2015年ACM“双基”程序设计竞赛1002

    Problem B Time Limit : 3000/1000ms (Java/Other)   Memory Limit : 65535/32768K (Java/Other) Total Sub ...

  3. lintcode - 统计比给定整数小的数的个数(两种方法)

    class Solution { public: /* * @param A: An integer array * @param queries: The query list * @return: ...

  4. Hive 遇到 Class path contains multiple SLF4J bindings

    Hive 遇到 Class path contains multiple SLF4J bindings Root Issue; slf4j在两处找到了jar包.分别是在Hadoop和hive的安装目录 ...

  5. es6.3学习笔记

    es版本发布相当快,从1.x到2.x,再直接到5.x,6.x 索引这个词在es中有多重意思: 索引(名词):一个索引类似于传统数据库中的一个索引,用于存储关系型文档.索引的复数为indexes或ind ...

  6. Selenium + Python操作IE 速度很慢的解决办法

    IEDriverServer 64位换成32位 https://docs.seleniumhq.org/download/

  7. Unity Screen Screen.SetResolution 设置分辨率

    Screen.SetResolution 设置分辨率 C# => public static void SetResolution(int width, int height, bool ful ...

  8. 那些经历过的Bug Unity的Invoke方法

    有一个游戏对象,上面挂着 3 个脚本,如下: using System.Collections; using System.Collections.Generic; using UnityEngine ...

  9. 【input】——数据传入后台

    1.复选框 checkbox <label class="checkbox"> <input type="checkbox" name=&qu ...

  10. REST面向资源架构 RESTful架构

    REST基础概念: 在REST中的一切都被认为是一种资源. 每个资源由URI标识. 使用统一的接口.处理资源使用POST,GET,PUT,DELETE操作类似创建,读取,更新和删除(CRUD)操作. ...