STM32F407实现CANopen通讯详解
通过使用STM32F407开发板,实现CANopen通讯控制英威腾电机。之前没有接触过CANopen,这篇文章记录一下移植CANopen中所参考的一些参考资料,以帮助小白快速了解并实现CANopen移植。
CANopen入门:
- 在进行移植时,需要对CAN及CANopen进行了解,本人所使用的是正点原子的STM32F407核心板,通过官方提供的CAN通讯实验的demo资料《STM32F4开发指南 CAN 通讯实验》,能搭起一个大概的框架;
- 对于CANopen的了解,可以翻阅周立功的《CANopen轻松入门》;
- 博客上也有一些普及的介绍:canFestival移植(1)_agony_isolate的博客
前期准备:
Canfestival源码下载:https://hg.beremiz.org/ 选择CanFestival-3的gz或bz2下载。
对象字典安装: CanFestival中对象字典编辑器objdictedit的正确打开环境_lei_g的博客
CANopen移植:
心跳报文移植的介绍详见该博客:基于STM32F4的CANOpen移植教程
快速SOD通信介绍及移植教程详见:基于STM32F4的CANopen快速SDO通信
以下是我移植过程中遇到的一些问题,所参考的资料:
CAN总线波特率计算:CAN总线波特率计算方法
CANopen定时器:CANopen补充–时间计算出错
电机控制:
电机型号:SV-ML06-0R4G-2-SA
伺服驱动器型号:DA180-S2R8
接线如下:接线要求见《DA180系列基础型交流伺服驱动器说明书V1.2》
伺服驱动器配置:进入官网下载并安装PC上位机软件 英威腾伺服说明书选型手册_下载中心
常用的PDO函数接口详见该链接介绍:SDO常用接口
CIA-402简单介绍,6040、6060控制字说明:cia301、cia402简单提要
607A控制字说明:CANOPEN伺服电机位置模式控制方法
以上是我在移植CANopen过程中,所参考的一些资料,若有错误和侵权,还请告知改正。