AX58100 + STM32F303RE MCU 马达控制 参考设计指南

描述

1. 简介

此文档阐释了如何创建 AX58100 + STM32F303RE MCU 马达控制参考设计(Motor Control Reference Design)的演示环境。

此参考设计展现了亚信完整的工业以太网EtherCAT解决方案——包括一整套基于Raspberry Pi 3 Model B+ 平台的EtherCAT 主站解决方案以及 AX58100 + STM32F303RE MCU EtherCAT从站马达控制参考设计解决方案。

AX58100 包含了 2个嵌入式的快速以太网物理层(Fast Ethernet PHYs) 使其能支持铜线或光钎的工业以太网应用,同时也支持一些额外的接口如: Pulse Width Modulation (PWM), Incremental (ABZ)/Hall Encoder, SPI master, 32 Digital I/O, Emergency Stop Input, 等等这些接口能使设计者在不同的EtherCAT工业领域中更容易的运行AX58100——且无需增加额外的微处理器(Microcontroller)

AX58100 同时也支持 SPI slave  Local bus 两种PDI(Process Data Interfaces),从而可以为系统设计者以最简单的方式搭建一些标准EtherCAT环境,给那些Non-EtherCAT MCUDSP工业平台——例如以下参考设计:

总线控制

Figure 1-1. AX58100 + STM32F303RE MCU 马达控制参考设计图


总线控制

Figure 1-2. AX58100 + STM32F303RE MCU 马达控制参考设计拓扑图

1. 硬件/软件要求

以下是安装AX58100 + STM32F303RE MCU马达控制参考设计演示环境的硬件和软件要求:

2-1. EtherCAT 主站

2-1-1. 硬件要求

请从Raspberry在线商城上购买Raspberry Pi 3 Model B+开发板(https://www.raspberrypi.org/products/raspberry-pi-3-model-b-plus/). Raspbian是Raspberry Pi平台上较受欢迎的操作系统,你可以从 Raspberry Pi 3 Model B+ 产品网页上下载更多的Raspbian软件开发包。

Figure 2-1. Raspberry Pi 3 Model B+ Board

2-1-2.  软件要求

     亚信在Raspberry Pi 3 Model B+平台上开发了基于Raspbian v4.14.79 操作系统的EtherCAT主站协议包,如有需要,可联系亚信公司(support@asix.com.tw)来获取更多关于如何安装亚信 Linux EtherCAT主站软件包。

2-2. EtherCAT 从站

2-2-1.  硬件要求

请准备以下硬件来安装AX58100 + STM32F303RE MCU马达控制参考设计的演示环境。

总线控制

Figure 2-2. AX58100 + STM32F303RE MCU EtherCAT Slave Environment

模块名称

说明

AX58100-EVB-SSPDI-1

AX58100 SPI Slave PDI board

可联系亚信代理商(www.chipreal.com)购买  AX58100-EVB-SSPDI-1 board

NUCLEO-F303RE

STM32 Nucleo-64 development board with STM32F303RE MCU

请从STMicroelectronics在线商城上购买 NUCLEO-F303RE MCU board 

X-NUCLEO-IHM07M1

Three-phase brushless DC motor driver expansion board based on L6230 for STM32 Nucleo

请从STMicroelectronics在线商城上购买X-NUCLEO-IHM07M1 BLDC motor driver board

Note: The default circuits of X-NUCLEO-IHM07M1 board are for NUCLEO-F302R8 development board. Please refer to Section 2-2- 1-1 to modify the circuits of X-NUCLEO-IHM07M1 board for NUCLEO-F303RE MCU development board.

BR2804-1700

BR2804 1700KV brushless DC motor

请从网上找到购买BR2804-1700brushless DC motor

总线控制

Figure 2-3. AX58100-EVB-SSPDI-1 SPI Slave PDI Board

Figure 2-4. ST NUCLEO-F303RE MCU Board & X-NUCLEO-IHM07M1 BLDC Motor Driver Board

总线控制

Figure 2-5. BR2804-1700 Brushless DC Motor

2-2-1-1. X-NUCLEO-IHM07M1 Board 为匹配NUCLEO-F303RE的线路修改 

AX58100板子通过SPI inerface (例: PB13~PB15 脚)连接到NUCLEO-F303RE 板 , 为了能正常运行,请按以下方式调整X-NUCLEO-IHM07M1板子的线路:

  • Remove R82 resistor to disconnect from NUCLEO-F303RE PB13 (SPI2_SCK)
  • Remove R49 resistor to disconnect from NUCLEO-F303RE PB14 (SPI2_MISO)
  • Remove R66 resistor to disconnect from NUCLEO-F303RE PB15 (SPI2_MOSI)

总线控制

总线控制

2-2-2. 软件环境

下面是所有被用来安装AX58100 + STM32F303RE MCU 马达控制参考设计演示环境的软件工具

软件工具

版本

AX58100_P-NUCLEO-IHMxxx_Demo_Firmware_ Source

v1.0.0 and later

Keil MDK-ARM uVision5 Development Tool

v5.22.0.0

Beckhoff TwinCAT 3.1 – eXtended Automation Engineering (XAE)

v3.1.4020.32

Beckhoff EtherCAT Slave Stack Code Tool (with SSC Code Version 5.11)

v1.3.2.0

STMicroelectronics STM32 ST-LINK Utility

v3.9.0

3. 快速开始

以下是快速安装AX58100 + STM32F303RE MCU 马达控制参考设计演示环境的步骤:

 

3-1. 准备软件开发环境

 

3-1-1. 安装 Keil MDK-ARM uVision5 开发工具

 

首先请购买并安装 Keil MDK-ARM uVision5 开发工具并访问 Keil MDK-ARM网站获取更多信息。

 

3-1-2. 安装 TwinCAT 3.1 – eXtended Automation Engineering (XAE) 工具

 

 

3-1-3. 安装 SSC(Slave Stack Code) 工具

 

注意:在下载EtherCAT SSC(Slave Stack Code)工具前请先注册成ETG (https://www.ethercat.org/en/membership_application.html)会员。

 

从ETG网站(https://www.ethercat.org/)下载 EtherCAT SSC(Slave Stack Code) 工具;解压下载文件(如. “SSC_V5i11.zip”) ;在Windows系统下运行安装SSC安装程序 (如. “EtherCAT Slave Stack Code Tool.exe”)

3-1-4. 安装 STM32 ST-LINK 程序

 

请从STMicroelectronics网站上下载并安装STM32 ST-LINK 程序,使得NUCLEO-F303RE MCU能有合适的驱动,如下图所示:

总线控制

3-2. 生成 EtherCAT SSC 源码文件

 

这部分说一下如何用Beckhoff SSC 工具生成EtherCAT SSC 源码文件

 

  1. 1. 找到AX58100 + STM32F303RE MCU 马达控制演示文件夹目录 (如. “AX58100_P-NUCLEO-IHMxxx_Demo_Firmware_v1.0.0_Source”).
  2. 2. 运行Beckhoff  SSC工具, 打开 AX58100 firmware SSC project 文件 (如. “cia402appl.esp”).

总线控制

3.选择“Project”-“Create new Slave Files” 菜单来生成 EtherCAT Slave Stack Code source 文件.

总线控制


总线控制

总线控制

总线控制



3-3. 创建 AX58100 + STM32F303RE MCU Motor Control Firmware Source

 

这个章节说一下如何用 Keil MDK-ARM uVision5开发工具创建AX58100 + STM32F303RE MCU马达控制演示分位。

 

  1. 复制EtherCATSSC代码文件(从章节3-2生成)到 “AppliedSrc”文件夹下

千万注意不要覆盖已存在于“AppliedSrc”文件夹下的文件。

总线控制

总线控制

2.运行Keil MDK-ARM uVision5 工具来打开 to open AX58100 firmware uVision5 工程文件 (如. “AX58100_P-NUCLEO-IHMxxx_Demo.uvprojx”).

总线控制

3. 选择 “Manage Project Items”并手动添加 “Beckhoff_SSC”, “AX58100_Driver”, “AX58100_Application” 组, 然后依次从“Beckhoff_SSC\AppliedSrc”, “AX58100\driver” and “AX58100\application” 这三个文件夹下添加这个代码文件到这些组中。

总线控制

总线控制

总线控制

总线控制

4. 选择“Rebuid all target files” 来创建 AX58100 + STM32F303RE MCU 马达控制演示固件。

总线控制

总线控制

3-4. NUCLEO-F303RE MCU Board 内存中运行演示固件

这个章节阐述了如何在NUCLEO-F303RE MCU board上用Keil MDK-ARM uVision5开发工具来运行AX58100 + STM32F303RE MCU 马达控制固件代码

 

  1. 请先安装STM32 ST-LINK 软件包,并确定NUCLEO-F303RE MCU board上的“STLink Virtual COM Port”驱动已经正确安装

     2. 在”Flash”菜单下选择 “Configure Flash Tools” 下的 Keil MDK-ARM uVision5 Tool.

总线控制

3. 选择“Utilities” 选项,点击 “Setting” 按钮来给NUCLEO-F303RE MCU 手动添加 “STM32F3xx 512KB Flash” Flash Programming Algorithm,如下图:

总线控制

总线控制


 4.点击 按钮开始下载编译在NUCLEO-F303RE MCU board Flash 内存上的AX58100 + STM32F303RE MCU 马达控制演示固件代码(如. AX58100_STM32F303RE_MotorControl_Demo.axf”)

总线控制

总线控制

3-5. 如何在TwinCAT上更新AX58100的EEPROM

这部分讲解一下如何用TwinCAT工具来更新AX58100 EEPROM

 

  1. 复制AX58100 + STM32F303RE MCU马达控制参考设计的ESI 文件(如. “AX58100_P-NUCLEO-IHMxxx_Demo_Rev02_ESI_20190530.xml”) 到TwinCAT3 ESI 文件的默认文件夹下 (如. “C:\TwinCAT\3.1\Config\Io\EtherCAT”).

总线控制
2. 在TwinCAT 3工具上创建一个新的project。

总线控制

总线控制

3.选择“TWINCAT” -> “EtherCAT Devices” -> “Reload Device Descriptions” 让AX58100 + STM32F303RE MCU 马达控制参考设计新的ESI 文件起作用。

总线控制

4. 选择“Scan” 来找到 “AX58100_P-NUCLEO-IHMxxx_Demo” 设备。

总线控制

总线控制

5.从“AX58100-P-NUCLEO-IHMxxx_Demo” 设备中选择 “EEPROM Update” 来开始更新 AX58100 

总线控制


6. 关机再打开 AX58100 board来让新的EEPROM硬件配置起作用。

3-6. 验证 AX58100 + STM32F303RE MCU 马达驱动演示固件。

 

这个章节阐述一下如何验证 AX58100 + STM32F303RE MCU 马达驱动演示固件。

 

  1. 开启AX58100-EVB-SSPDI-1 board & NUCLEO-F303RE/X-NUCLEO-IHM07M1 boards (EtherCAT Slave).
  2. 开启Raspberry Pi 3 Model B+ board (EtherCAT Master) 并让他支持 Wi-Fi AP 模式.

在手机或平板上打开 Wi-Fi 设置来创建一个Raspberry Pi 3 Model B+ board的Wi-Fi链接,配置如下:

WIFI_SSID = AsixEthercatMaster 
WIFI_PWD = 12345678

总线控制

3.用以下信息登录AX58100 马达控制演示软件包的服务器。

WEB_IP = 192.168.2.200
WEB_USER = admin WEB_PWD = admin

总线控制

4.点击“Scan” 按钮,找到 “AX58100_P-NUCLEO-IHMxxx_Demo” 设备.

总线控制

5. 选择一个合适的Slave Index 值 (default: 1) 和马达控制设置, 然后点击 “Start” 按钮。

总线控制

6.你应该能看到马达已经正常运转了。


打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分