CANopen DS402 Home offset理解

2023-12-31 20:44
文章标签 理解 home canopen offset ds402

本文主要是介绍CANopen DS402 Home offset理解,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

本文通俗解释CANopen DS402中Home offset的含义。


一 原本解释

CANopen DS402中规定对象字典项0x607C用于存放Home offset,文档中对其解释如下,

The home offset object is the difference between the zero position for the application and the machine home position (found during homing), it is measured in position units.
During homing the machine home position is found and once the homing is completed the zero position is offset from the home position by adding the home offset to the home position. All subsequent absolute moves shall be taken relative to this new zero position.

也就是说Home offset是application的零位和machine的home位之间的差值,homing过程找到machine的home位,等homing结束,零位就是machine home位偏移home offset的位置。

文档中给的示意图如下,
在这里插入图片描述
对象字典项解释如下,默认值是0
在这里插入图片描述
感觉还是得不到直观的理解。


二 易于理解的形式

本人重新画了一幅示意图,如下,
在这里插入图片描述
顺序是先找Home为,再找零位。

Homing开始后,假设往右运动去寻找机器Home位,遇到limit switch后认为找到Home位,然后根据Home offset值去找零位,这里假设Home offset为3毫米,那么就会往左走3毫米,此时可能会过冲,如果过冲发生,那么就再往右回来,最终走到3mm的位置停下来,表示找到零位。

零位找到后,对于application来说,当前位置就是0mm,这样就形成了一个坐标系,如下,后续运动都必须按照这个坐标系进行运动,
在这里插入图片描述

往右过0之后最多走3mm,往左过0之后最多走到左侧的limit switch处。

Note: 如果Home offset是0,那么零位和Home位就是重合的,找到Home位就找到零位了。

Homing method(对象字典项是0x6098)决定了如何寻找Home位,可以参考这篇文章。


三 总结

本文通俗易懂的解释了Home offset的意义,须记住顺序是先找Home为,再找零位,而找Home位的各种方法请参考另外一篇文章。

这样就弄懂了DS402里找Home位和找零位的过程。

这篇关于CANopen DS402 Home offset理解的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/557095

相关文章

回调的简单理解

之前一直不太明白回调的用法,现在简单的理解下 就按这张slidingmenu来说,主界面为Activity界面,而旁边的菜单为fragment界面。1.现在通过主界面的slidingmenu按钮来点开旁边的菜单功能并且选中”区县“选项(到这里就可以理解为A类调用B类里面的c方法)。2.通过触发“区县”的选项使得主界面跳转到“区县”相关的新闻列表界面中(到这里就可以理解为B类调用A类中的d方法

如何理解redis是单线程的

写在文章开头 在面试时我们经常会问到这样一道题 你刚刚说redis是单线程的,那你能不能告诉我它是如何基于单个线程完成指令接收与连接接入的? 这时候我们经常会得到沉默,所以对于这道题,笔者会直接通过3.0.0源码分析的角度来剖析一下redis单线程的设计与实现。 Hi,我是 sharkChili ,是个不断在硬核技术上作死的 java coder ,是 CSDN的博客专家 ,也是开源

MySQL理解-下载-安装

MySQL理解: mysql:是一种关系型数据库管理系统。 下载: 进入官网MySQLhttps://www.mysql.com/  找到download 滑动到最下方:有一个开源社区版的链接地址: 然后就下载完成了 安装: 双击: 一直next 一直next这一步: 一直next到这里: 等待加载完成: 一直下一步到这里

PyTorch模型_trace实战:深入理解与应用

pytorch使用trace模型 1、使用trace生成torchscript模型2、使用trace的模型预测 1、使用trace生成torchscript模型 def save_trace(model, input, save_path):traced_script_model = torch.jit.trace(model, input)<

isa指针的理解

D3实例isa指向D3类对象。D3类的话isa指向D3元类对象。D3元类保存类中的方法调度列表,包括类方法和对象方法

WeakHashMap深入理解

这一章,我们对WeakHashMap进行学习。 我们先对WeakHashMap有个整体认识,然后再学习它的源码,最后再通过实例来学会使用WeakHashMap。 第1部分 WeakHashMap介绍 第2部分 WeakHashMap数据结构 第3部分 WeakHashMap源码解析(基于JDK1.6.0_45) 第4部分 WeakHashMap遍历方式 第5部分 WeakHashMap示例

netty中常用概念的理解

目录   目录ChannelHandler ChannelHandler功能介绍通过ChannelHandlerAdapter自定义拦截器ChannelHandlerContext接口ChannelPipeline ChannelPipeline介绍ChannelPipeline工作原理ChannelHandler的执行顺序   在《Netty权威指南》(第二版)中,ChannelP

安全科普:理解SSL(https)中的对称加密与非对称加密

今天刚好为站点的后台弄了下https,就来分享我了解的吧。 密码学最早可以追溯到古希腊罗马时代,那时的加密方法很简单:替换字母。 早期的密码学:   古希腊人用一种叫 Scytale 的工具加密。更快的工具是 transposition cipher—:只是把羊皮纸卷在一根圆木上,写下信息,羊皮纸展开后,这些信息就加密完成了。 虽然很容易被解密,但它确实是第一个在现实中应用加密的

java同步锁以及级别升级的理解

首先简单说下先偏向锁、轻量级锁、重量级锁三者各自的应用场景: 偏向锁:只有一个线程进入临界区;轻量级锁:多个线程交替进入临界区;重量级锁:多个线程同时进入临界区。 还要明确的是,偏向锁、轻量级锁都是JVM引入的锁优化手段,目的是降低线程同步的开销。比如以下的同步代码块:   synchronized (lockObject) { // do something } 上述同步代码块

Offending ECDSA key in /home/lierjun/.ssh/known_hosts:1

问题描述: 使用终端进行远程连接linux 连接格式:ssh root@ip 结果发出警告信息,信息提示: Offending ECDSA key in /home/user/.ssh/known_hosts:1 解决办法: cd /home/user/.ssh cat known_hosts sed -i '1d' known_hosts 然后再次进行链接可以了