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

相关文章

GO语言zap日志库理解和使用方法示例

《GO语言zap日志库理解和使用方法示例》Zap是一个高性能、结构化日志库,专为Go语言设计,它由Uber开源,并且在Go社区中非常受欢迎,:本文主要介绍GO语言zap日志库理解和使用方法的相关资... 目录1. zap日志库介绍2.安装zap库3.配置日志记录器3.1 Logger3.2 Sugared

深入理解Redis线程模型的原理及使用

《深入理解Redis线程模型的原理及使用》Redis的线程模型整体还是多线程的,只是后台执行指令的核心线程是单线程的,整个线程模型可以理解为还是以单线程为主,基于这种单线程为主的线程模型,不同客户端的... 目录1 Redis是单线程www.chinasem.cn还是多线程2 Redis如何保证指令原子性2.

深入理解MySQL流模式

《深入理解MySQL流模式》MySQL的Binlog流模式是一种实时读取二进制日志的技术,允许下游系统几乎无延迟地获取数据库变更事件,适用于需要极低延迟复制的场景,感兴趣的可以了解一下... 目录核心概念一句话总结1. 背景知识:什么是 Binlog?2. 传统方式 vs. 流模式传统文件方式 (非流式)流

深入理解Go之==的使用

《深入理解Go之==的使用》本文主要介绍了深入理解Go之==的使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧... 目录概述类型基本类型复合类型引用类型接口类型使用type定义的类型不可比较性谈谈map总结概述相信==判等操作,大

深入理解Mysql OnlineDDL的算法

《深入理解MysqlOnlineDDL的算法》本文主要介绍了讲解MysqlOnlineDDL的算法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小... 目录一、Online DDL 是什么?二、Online DDL 的三种主要算法2.1COPY(复制法)

深入理解go中interface机制

《深入理解go中interface机制》本文主要介绍了深入理解go中interface机制,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学... 目录前言interface使用类型判断总结前言go的interface是一组method的集合,不

Java Spring的依赖注入理解及@Autowired用法示例详解

《JavaSpring的依赖注入理解及@Autowired用法示例详解》文章介绍了Spring依赖注入(DI)的概念、三种实现方式(构造器、Setter、字段注入),区分了@Autowired(注入... 目录一、什么是依赖注入(DI)?1. 定义2. 举个例子二、依赖注入的几种方式1. 构造器注入(Con

深入理解Go语言中二维切片的使用

《深入理解Go语言中二维切片的使用》本文深入讲解了Go语言中二维切片的概念与应用,用于表示矩阵、表格等二维数据结构,文中通过示例代码介绍的非常详细,需要的朋友们下面随着小编来一起学习学习吧... 目录引言二维切片的基本概念定义创建二维切片二维切片的操作访问元素修改元素遍历二维切片二维切片的动态调整追加行动态

从原理到实战深入理解Java 断言assert

《从原理到实战深入理解Java断言assert》本文深入解析Java断言机制,涵盖语法、工作原理、启用方式及与异常的区别,推荐用于开发阶段的条件检查与状态验证,并强调生产环境应使用参数验证工具类替代... 目录深入理解 Java 断言(assert):从原理到实战引言:为什么需要断言?一、断言基础1.1 语

spring IOC的理解之原理和实现过程

《springIOC的理解之原理和实现过程》:本文主要介绍springIOC的理解之原理和实现过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、IoC 核心概念二、核心原理1. 容器架构2. 核心组件3. 工作流程三、关键实现机制1. Bean生命周期2.