当前位置: 首页 > news >正文

【EtherCAT电机板】CiA402增加cst模式

在EtherCAT电机板上实现cst功能,在xml中增加cst相关pdo,在402程序增加cst模式。

1、XML配置修改

       cst模式需要用到目标转矩和反馈实际转矩PDO,结合CiA402手册,这两个PDO对应的索引号分别为:0x6071(Target torque)、0x6077(Torque actual value)

1)更改索引

增加变量对应于输出映射索引0x1600和0x1a00的,因此需要更改对应据类型:

增加第5SubItem,重新修改数据类型的BitSize

2)更改数据字典对象表

增加0x6071和0x6077数据索引,已有:

   更改0x1A00数据对象--输出映射表TxPDO增加SubIndex005,索引号为10007760,其中“6077”代表Torque actual value映射索引号,“00”代表索引6077的第0位SubIdx,“10”代表数据大小,16位。注意:在xml中写的顺序与实际不同。同时修改相应的BitSize=16+32*5=176.

   更改0x1600数据对象--输出映射表RxPDO增加SubIndex005,索引号为10007160,其中“6071”代表Target torque映射索引号,“00”代表索引6071的第0位SubIdx,“10”代表数据大小,16位。注意:在xml中写的顺序与实际不同。同时修改相应的BitSize=16+32*5=176.

3)定义PDO传输

修改TxPDO:

修改RxPDO:

2、STM32程序更改

在cia402appl.h中修改对象描述,包括更改本地存储变量、表项描述、对象名字以及对象描述。

1)更改本地存储变量

更改0x1600本地存储变量

更改1600结构体

更改0x1A00本地存储变量

更改0x1A00结构体

2)更改表项描述

更改0x1600表项描述

更改0x1A00表项描述

3)更改对象描述

需要特别注意数据要与子索引最大值相对应。

4)应用层程序更改

在APPL_InputMapping()中更改:

在APPL_Application()更改

在CiA402_DummyMotionControl()中增加cst应用程序。

3、测试验证

利用TwinCAT主站更新xml,并带电机进行cst模式测试:

设定运行模式modeofoperation=10,给定TargetTorque一定值,观察电机变化。

EtherCAT开发学习板:https://shop461235811.taobao.com
 

相关文章:

  • 反向传播算法
  • @AliasFor 使用
  • DenseNet完成Cifer10任务的效果验证
  • MFC四种方法编写多线程
  • 从“数据孤岛”、Data Fabric(数据编织)谈逻辑数据平台
  • 基于百度地图WebGL版二次开发的数据可视化大屏(白天黑夜模式自动切换、标注聚合功能、历史路线轨迹查询)
  • Linux--MQTT(二)通信基本原理
  • 【Python】Python 2 测试网络连通性脚本
  • GenericObjectPool对象池化的介绍与用法
  • Linux在创建用户的时候遇到的错误:useradd: Permission denied.useradd:无法锁定 /etc/passwd,请稍后再试。
  • LeetCode | 434.字符串中的单词数
  • 数据结构之链表的经典笔试题
  • C++笔试强训day42
  • 【实例分享】访问后端服务超时,银河麒麟服务器操作系统分析及处理建议
  • 有趣的傅里叶变换与小波变换对比(Python)
  • AngularJS指令开发(1)——参数详解
  • Apache Zeppelin在Apache Trafodion上的可视化
  • CentOS 7 防火墙操作
  • httpie使用详解
  • isset在php5.6-和php7.0+的一些差异
  • Java 网络编程(2):UDP 的使用
  • jquery cookie
  • JS 面试题总结
  • JS数组方法汇总
  • Odoo domain写法及运用
  • PHP 程序员也能做的 Java 开发 30分钟使用 netty 轻松打造一个高性能 websocket 服务...
  • scala基础语法(二)
  • 彻底搞懂浏览器Event-loop
  • 关于for循环的简单归纳
  • 简单易用的leetcode开发测试工具(npm)
  • 将 Measurements 和 Units 应用到物理学
  • 警报:线上事故之CountDownLatch的威力
  • 开发了一款写作软件(OSX,Windows),附带Electron开发指南
  • 设计模式(12)迭代器模式(讲解+应用)
  • 一加3T解锁OEM、刷入TWRP、第三方ROM以及ROOT
  • 中国人寿如何基于容器搭建金融PaaS云平台
  • 东超科技获得千万级Pre-A轮融资,投资方为中科创星 ...
  • 机器人开始自主学习,是人类福祉,还是定时炸弹? ...
  • 昨天1024程序员节,我故意写了个死循环~
  • ​​​​​​​Installing ROS on the Raspberry Pi
  • ​【数据结构与算法】冒泡排序:简单易懂的排序算法解析
  • ​如何防止网络攻击?
  • #gStore-weekly | gStore最新版本1.0之三角形计数函数的使用
  • #NOIP 2014#day.2 T1 无限网络发射器选址
  • #我与Java虚拟机的故事#连载04:一本让自己没面子的书
  • #我与Java虚拟机的故事#连载14:挑战高薪面试必看
  • (7)svelte 教程: Props(属性)
  • (第一天)包装对象、作用域、创建对象
  • (分布式缓存)Redis哨兵
  • (附源码)ssm跨平台教学系统 毕业设计 280843
  • (附源码)计算机毕业设计SSM教师教学质量评价系统
  • (排序详解之 堆排序)
  • (十二)devops持续集成开发——jenkins的全局工具配置之sonar qube环境安装及配置
  • (原)Matlab的svmtrain和svmclassify
  • (转载)OpenStack Hacker养成指南