基于STM32的机器人伺服控制器设计
引言目前,机器人控制系统的研究重点在开放式、模块化控制系统等方面,机器人控制器的标准化和网络化已成为研究热点;同时,机器人伺服控制
器的研究也具有很大的应用价值。
在伺服通信方面,传统的基于模拟信号传输
的集散控制系统需采用数/模转换器,系统构成复杂、分辨率低、可靠性得不
到保障且难以扩展。
为了解决此问题,本系统采用实时工业以太网EtherCAT
协议作为机器人伺服系统的底层协议,同时构建伺服从站控制器。
实时以太网
技术简化了一般总线的互操作性和实时性等方面的问题,能满足控制网络传输
的实时性要求,EtherCAT 工业以太网技术以其网络实时性高、速度快、拓扑结
构灵活等优点得到广泛关注。
本控制器采用德国赫优讯公司开发的嵌入式实时
以太网模块COMX 来完成EtherCAT 通信的功能,采用STM32 系列单片机(以
下简称STM32)为主控制器,由STM32 来控制电机和COMX 的工作流程。
1 COMX 介绍嵌入式实时以太网模块COMX-CA-RE 是德国赫优讯公司开发的
特殊网卡,支持所有主流的实时工业以太网协议(EtherCAT、PROFINET
IO、Ethernet/IP、Power-Link、Sereos III、Modbus TCP 等)。
其协议栈设计成可装载的固件存储在Flash 中;在系统启动时,COMX 模块会自动装载保存在Flash 中的协议固件。
COMX 模块使用netX500 网络控制芯片,主机通过双端
口内存DPM 接口来进行数据交互,通过对DPM 读和写来实现网络通信及模块
控制。
COMX 结构框图如图1 所示。
COMX 模块与主机交互的接口是双端口
内存DPM,DPM 是netX500 控制器和主机之间共享的存储区,应用程序通过DPM 来实现EtherCAT 数据通信、netX 系统配置和诊断信息的获取。
在使用COMX 模块进行通信时,主要完成主机对DPM 操作程序的编写以及握手标记
的设置等。
EtherCAT 网络上的数据是实时地映射到DPM 的,同时应用程序通。