如何购买网站东莞怎么制作网站

张小明 2025/12/31 9:51:50
如何购买网站,东莞怎么制作网站,网页怎么设计与制作,梁山县城市建设局网站在上一篇文章《【睿擎派】CANOpen总线之IO模块读写(DS401协议)》我写了关于睿擎派上CANOpen的IO模块通信#xff0c;为什么先写CANOpen#xff1f;说来也有挺意思#xff0c;是因为在睿擎派上对接EtherCAT的IO模块#xff0c;花费了很久时间#xff0c;也没有多少进展为什么先写CANOpen说来也有挺意思是因为在睿擎派上对接EtherCAT的IO模块花费了很久时间也没有多少进展所以转头去研究了基于CANOpen对接IO模块因为二者是有非常大的渊源的。一、EtherCAT和CANOpen的异同1980年代CAN总线诞生1996年CANOpen协议发布2003年EtherCAT技术发布。EtherCAT 和 CANopen 的核心关系是CANopen 是协议规范侧重应用层EtherCAT 是总线技术侧重物理层 / 传输层—— 两者均源于 CAN 总线生态EtherCAT 复用了 CANopen 的核心应用层规范同时在底层传输上实现了质的突破最终形成 “上层兼容、底层独立” 的技术互补格局。EtherCAT完全复用 CANopen 的对象字典结构索引范围、寻址方式仅在 0x1C00~0x1C3F 等区间扩展了 Sync Manager、DC 同步等专属索引。完全保留 PDO/SDO 的功能定义仅改变了底层传输方式。CANopen 的 PDO 通过 COB-ID 映射到 CAN 帧EtherCAT 的 PDO 通过 Sync Manager同步管理器绑定到以太网帧CANopen 的 SDO 通过 CAN 帧分片传输EtherCAT 的 SDO 通过邮箱通道SM0/SM1实现低延迟传输CANopen通过 EDSElectronic Data Sheet文件描述设备的对象字典、PDO 映射等配置主站通过 EDS 识别设备EtherCAT通过 ESIEtherCAT Slave Information文件扩展 EDS 规范新增了 Sync Manager、DC 同步、FMMU 等 EtherCAT 专属配置同时兼容 EDS 的核心内容此外比较关键的差异就是CAN总线最大速率1Mbpsms级抖动而EtherCAT最大可以1Gbps速率us级抖动。这其中的原因除了速率上的差异外传输机制上有很大的差别CANOpen是帧逐节点转发需等待节点处理后再传递而帧 “并行处理”所有节点同时读取帧中自身数据如下面的动图比较形象的展现了EtherCAT的传输原理。CANOpen主要运用在低速设备传感器、执行器、低成本场景而EtherCAT多用在高速 IO、多轴伺服、实时控制场景比如机器臂具身智能等设备上。二、睿擎派对接雷赛EM32DX-E4-V30模块我从RC-Pi-3506的SDK1.5.0版本开始进行IO模块对接经过SDK1.7.0版本最后在SDK1.7.2版本上在RTT郭老师的协助下调试成功SDK1.7.2和SDK1.7.0关于EtherCAT的接口调用差异还是蛮大的所以本篇内容以SDK1.7.2版本为准。在真正对接之前除了硬件模块外还需要硬件手册和ESI文件文后附相关文件下载链接。我们以BSP 1.7.2版本的示例工程06_bus_ethercat_master_2motor_1io为基础进行开发调试。本代码的官方说明的链接如下https://www.rt-thread.com/ruiching/document/site/rc3506/q7dq3ksb/#%E7%A4%BA%E4%BE%8B%E8%BF%90%E8%A1%8C原示例支持2个伺服器1个IO模块为了简化我们睿擎派只连接一个IO模块如下图。所以ethercat_2motor_1io.c文件的第16行代码我们把电机的数量调整为0。#defineMOTOR_NUM 0//21配置PDO最关键的部分是修改IO模块的PDO定义由于官方示例中所用的IO模块SG-ELC和我们的型号规格不同所以需要修改这部分配置。查阅《EM32DX-E4 模块用户手册 V3.1》 第20页 5.2.1小结如下图对应IO模块16路开关量输入所以对应的pdo定义的代码如下staticec_pdo_entry_info_teio_input_pdo_entries[] {{ 0x6000, 0x01, 16 },};0x6000是索引地址0x01是子索引地址16表示16bit同样我们查阅第22页5.2.3小结如下图对应IO模块的16路开关量输出所以对应的pdo定义代码如下staticec_pdo_entry_info_teio_output_pdo_entries[] {{ 0x7000, 0x01, 16 },};0x7000是索引地址0x01是子索引地址16表示16bitec_pdo_entry_info_t是定义单个PDO条目的核心属性类型其结构体的定义如下typedefstruct{uint16_tindex;/** PDO entry index. */uint8_tsubindex;/** PDO entrysubindex. */uint8_tbit_length;/** Size of the PDO entry in bit. */}ec_pdo_entry_info_t;index – DO主索引 对象字典对应条目主索引地址subindex- DO子索引bit_length – 对应的位数我们再看5.2.1和5.2.3的说明TxPDO0的索引地址为0x1A00RxPDO0的索引地址为0x1600。我们需要配置eio_pdos 对象数组其结构体定义为ec_pdo_info_t 原型如下typedefstruct{uint16_tindex;uint32_tn_entries;ec_pdo_entry_info_tconst*entries;}ec_pdo_info_t;index – PDO索引本身也是对象字典的一部分TxPDO是 从站à主站数据上传RxPDO是主站à从站指令下发。n_entries – 对应条目的数量entries 条目数组指针。所以eio_pdos 对象数组的定义代码如下ec_pdo_info_teio_pdos[] {{ 0x1600, 1, eio_output_pdo_entries },{ 0x1a00, 1, eio_input_pdo_entries },};接下来我们定义同步管理器相关内容。我们先看ec_sync_info_t结构体定义。typedefstruct{uint8_tindex;/** Sync manager index. */ec_direction_tdir/** Sync manager direction. */uint32_tn_pdos;/** Number of PDOs in\apdos. */ec_pdo_info_tconst*pdos;/** Array with PDOs to assign. Thismust contain at least\an_pdos PDOs. */ec_watchdog_mode_twatchdog_mode;/**Watchdogmode. */}ec_sync_info_t;index – 同步管理器的硬件索引 0 – 15常见的是SM0-SM3对应SDO非实时操作SM0索引 0- 主站→IO 模块系统配置入发送SDO报文配置对象字典接受CoE管理指令、SM1索引 1- IO 模块→主站系统响应出SDO响应报文回传诊断信息发送从站状态切换码。对应PDO实时操作SM2索引 2- 主站→IO 模块输出SM3索引 3- IO 模块→主站输入dir – SM的传输方向 EC_DIR_OUTPUT主站输出→从站输入RxPDO如 DO 控制EC_DIR_INPUT从站输出→主站输入TxPDO如 DI 采集。n_pdos – SM要绑定的PDO数量pdos数组中的PDO个数watchdog_mode -- 看门狗模式枚举类型- EC_WD_DISABLE禁用看门狗- EC_WD_ON启用看门狗主站心跳超时后从站进入安全状态如 DO 归零综上所以eio_syncs的数组定义如下ec_sync_info_teio_syncs[] {{ 2,EC_DIR_OUTPUT, 1, eio_pdos[0],EC_WD_DISABLE},{ 3,EC_DIR_INPUT, 1, eio_pdos[1],EC_WD_DISABLE},};也就是官方代码右边被左边的代码代替。2配置DC这部分相关的内容需要查询ESI文件也就是因为DC配置有误设备总进入不到OP模式的主要原因。EM32DX-E4.xml文件里支持两种产品型号一种是EM32DX-E4-V30一种是EM32DX-E4EM32DX-E4是支持DC同步的配置如下图所示而EM32DX-E4-V30对应的ESI描述如下通过读取设备数据字典的信息我们知道当前这款EM32DX-E4模块其实是EM32DX-E4-V30。它是不支持DC的。相关DC配置必须为0才可以。另外查手册或者回读数据字典我们都可以知道厂商ID为0x00004321这个地方需要替换一下。此外进入OP模式后电机操作的代码注释掉就可以了这里不做详述了。三、运行调试编译代码然后部署。最后在远程操作终端我们输入ect_csp_io,进行EtherCAT总线初始化及相关的配置。然后再输入motor_run命令就可以看到开关量输出灯像走马灯一样运转了。附1内置调试命令附2雷赛EM32DX-E4说明书和ESI文件https://download.csdn.net/download/yefanqiu/92462286
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

丹阳网站建设怎么样北京今朝装饰设计有限公司

Linux系统进程管理与磁盘操作全解析 1. 进程优先级调整 在Linux系统中,有时需要对进程的优先级进行调整,以优化系统资源的分配。可以使用 renice 命令来改变进程的优先级。例如,输入以下命令: # renice 7 16580 -u pdavison tbaker这个命令将进程ID(PID)为16580的进…

张小明 2025/12/25 22:29:40 网站建设

家居企业网站建设讯息WordPress 转移数据

深夜十一点,李老师揉了揉发酸的眼睛,面前还有三十多篇作文等待批改。 这是无数语文教师的日常写照——繁重的批改负担、难以完全统一的标准、反馈到达学生手中时已失去时效性。 而在AI技术日新月异的今天,我们能否让机器真正“理解”一篇作…

张小明 2025/12/25 22:29:44 网站建设

合肥营销网站建设设计企业网站html模板免费下载

PaddlePaddle模型训练中的常见问题及解决方案(含CUDA安装错误排查) 在深度学习项目开发中,一个看似简单的“环境配置”环节,往往成为压垮工程师耐心的最后一根稻草。你是否曾经历过这样的场景:代码写完、数据准备就绪…

张小明 2025/12/25 22:29:45 网站建设

临沂网络网站建设网站设计详细设计

mp-html中LaTeX公式渲染的深度探索与实战指南 【免费下载链接】mp-html mp-html是一个微信小程序HTML组件库,适合用于快速搭建微信小程序界面。特点:组件丰富、易于使用、支持自定义样式。 项目地址: https://gitcode.com/gh_mirrors/mp/mp-html …

张小明 2025/12/25 22:29:46 网站建设

网站访问量统计怎么做教育培训学校

KITTI-360自动驾驶数据集完全评测:多模态感知的技术基石 【免费下载链接】kitti360Scripts This repository contains utility scripts for the KITTI-360 dataset. 项目地址: https://gitcode.com/gh_mirrors/ki/kitti360Scripts 在自动驾驶技术快速迭代的今…

张小明 2025/12/25 22:29:45 网站建设