0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

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

集佰睿科技 2020-06-17 09:53 次阅读

1.简介

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

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

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 slaveLocal bus两种PDI(Process Data Interfaces),从而可以为系统设计者以最简单的方式搭建一些标准EtherCAT环境,给那些Non-EtherCAT MCUDSP工业平台——例如以下参考设计:

o4YBAF0Zn4aAE8CsAANX7vGH9lA542.png

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


o4YBAF0ZpYWAeCUwAAjNt8eA2Lg338.png

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

1.硬件/软件要求

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

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马达控制参考设计的演示环境。

pIYBAF0ZpmiAbE9fAAMxhk4mF-I927.png

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 MCUboard

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 toSection 2-2-1-1to 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

o4YBAF0ZpnKARQEdAAg0a5ZXtQ8649.png

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

o4YBAF0ZptWAPZVMAABiFCh_B6k351.png

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板子的线路:

  • RemoveR82resistor to disconnect from NUCLEO-F303RE PB13 (SPI2_SCK)
  • RemoveR49resistor to disconnect from NUCLEO-F303RE PB14 (SPI2_MISO)
  • RemoveR66resistor to disconnect from NUCLEO-F303RE PB15 (SPI2_MOSI)

pIYBAF0Zp5WAUIt6AAJFU0dBDLw882.png

pIYBAF0Zp5qAI-UCAAB_Ml1YMQE837.png

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)工具

注意:在下载EtherCATSSC(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能有合适的驱动,如下图所示:

o4YBAF0Zp96Actp6AAMUtoaYenA291.png

3-2.生成EtherCATSSC源码文件

这部分说一下如何用BeckhoffSSC 工具生成EtherCATSSC源码文件

  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”).

pIYBAF0ZqcyAP9X3AAF6lJlN5Xs169.png

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

o4YBAF0ZqoGAFOw_AAMNp3QYaH8475.png


o4YBAF0ZqraAGJvRAAGPkzukoLU642.png

pIYBAF0ZqwiAXn8PAAOmIoJy0PA178.png

pIYBAF0Zqw2AZnwlAAJQDBQJ2pE175.png



3-3.创建AX58100 + STM32F303RE MCU Motor Control FirmwareSource

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

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

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

pIYBAF0Zq3OARLIZAAMHzoiz0_A034.png

o4YBAF0ZqzGAdBqnAADYsqAMxIs128.png

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

pIYBAF0Zq7aAS59IAAI9-hMURHw468.png

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

o4YBAF0Zq96ASzNXAAN2N6qey1I682.png

pIYBAF0ZrDGASXAlAAGPrc6m02c961.png

o4YBAF0Zq-mALWdQAAFLwv6PzHM094.png

pIYBAF0ZrDuAXrOhAAJ4j-3hIF8821.png

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

o4YBAF0ZrCSALMMfAAQHu7GT2TU867.png

pIYBAF0ZrHeASKmKAAWF40rzM9A816.png

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 uVision5Tool.

o4YBAF0ZrF6AbJPZAAMEuXhscN0735.png

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

o4YBAF0ZrLCAVUjrAAJM2G_4lTU427.png

pIYBAF0ZrQOAaCjuAAG243Fwmkk999.png


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

pIYBAF0ZrTyATXfJAAOW1xBLuww889.png

o4YBAF0ZrPWAWJIRAAD-CPpNjgo303.png

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”).

pIYBAF0ZrWyAJfJbAAMspsjFT10827.png
2. 在TwinCAT 3工具上创建一个新的project。

pIYBAF0ZrbiANyjXAAJKA0dtq_k016.png

o4YBAF0ZrXCABL_SAAIMRLn8ePs797.png

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

pIYBAF0Zrg2ADadnAARt1n76jmk536.png

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

o4YBAF0Zrf2AY4ApAAJefV5NDeQ578.png

pIYBAF0ZrmOAZBqcAATDElihG0I613.png

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

o4YBAF0ZsHqAcWlsAARR5dqZpqw858.png


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

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

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

  1. 开启AX58100-EVB-SSPDI-1 board & NUCLEO-F303RE/X-NUCLEO-IHM07M1 boards (EtherCATSlave).
  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

pIYBAF0ZsT2AL_fLAACTYhuXTMg811.png

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

WEB_IP = 192.168.2.200
WEB_USER = admin WEB_PWD = admin

pIYBAF0ZsWuAfYgPAAHkDDjl5M4401.png

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

pIYBAF0ZsZKAC5XIAAHd3WFRCLs572.png

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

o4YBAF0ZsWiAFBmzAAIL_YE3HpU789.png

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


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

    关注

    0

    文章

    19

    浏览量

    9840
  • ASIX
    +关注

    关注

    0

    文章

    11

    浏览量

    9246
  • ethercat
    +关注

    关注

    17

    文章

    423

    浏览量

    37644
收藏 人收藏

    评论

    相关推荐

    NUCLEO-F303RE如何从位置模式切换到速度模式?

    测试环境:控制板:NUCLEO-F303RE Power Board:NUCLEO-IHM07M1 BLDC motor ,增加了编码器 现在位置模式下,可以正常跑, main函数里
    发表于 03-27 06:59

    stm32f303RE PWM输出波形变形的原因?

    我使用stm32 nucleo开发板,使用TIM3 CH4输出PWM方波,发现波形变形,整个工程只有这个PWM输出的功能,其他外设都没开启。工程使用的是标准库。请大神支个招。 void
    发表于 03-08 08:12

    GD32F303为什么启动慢?

    MCU开发中,有一项非常重要的参数——MCU启动时间,即MCU上电后到程序开始运行这段时间。我们来看下GD32F303的datasheet中对启动时间的描述:
    的头像 发表于 02-22 11:11 234次阅读
    GD32F<b class='flag-5'>303</b>为什么启动慢?

    GD32F303 使用PA8输出内部时钟频率#GD32 #时钟技术 #MCU #单片机

    单片机mcugd32f303
    聚沃科技
    发布于 :2024年01月22日 09:59:40

    Arm®Cortex®-M4 32位MCU GD32F303xB数据手册

    电子发烧友网站提供《Arm®Cortex®-M4 32位MCU GD32F303xB数据手册.pdf》资料免费下载
    发表于 01-14 09:54 0次下载
    Arm®Cortex®-M4 32位<b class='flag-5'>MCU</b> GD32F<b class='flag-5'>303</b>xB数据手册

    Arm®Cortex®-M4 32位MCU GD32F303xx数据手册

    电子发烧友网站提供《Arm®Cortex®-M4 32位MCU GD32F303xx数据手册.pdf》资料免费下载
    发表于 01-14 09:49 0次下载
    Arm®Cortex®-M4 32位<b class='flag-5'>MCU</b> GD32F<b class='flag-5'>303</b>xx数据手册

    ax58100和lan9252区别

    AX58100和LAN9252是两种不同的芯片产品,它们在功能、应用和性能等方面有着不同的特点。下面将详细介绍这两款芯片的区别。 功能区别: AX58100是一个以太网物理层转换器(PHY),支持
    的头像 发表于 12-21 16:22 1749次阅读

    适用于STM32F303xB/xC和STM32F358xC微控制器的内核耦合存储区(CCM)RAM

    电子发烧友网站提供《适用于STM32F303xB/xC和STM32F358xC微控制器的内核耦合存储区(CCM)RAM.pdf》资料免费下载
    发表于 09-21 10:39 0次下载
    适用于<b class='flag-5'>STM32F303</b>xB/xC和<b class='flag-5'>STM32</b>F358xC微<b class='flag-5'>控制</b>器的内核耦合存储区(CCM)RAM

    使用STM32 MCU的USB硬件和PCB指南

    STM32控制器包括一组嵌入USB(通用串行总线)外围设备的产品(有关适用的产品)。通过嵌入式和/或外部PHY(物理 开放系统互连模型的层)。 本应用说明概述了在STM32 MCU
    发表于 09-21 06:24

    STM32CUBEMX开发GD32F303

    在这使用STM32CUBEMX进行配置STM32F103,移植到兆易创新GD32F303,然后进行测试。
    的头像 发表于 07-27 09:32 906次阅读
    <b class='flag-5'>STM32</b>CUBEMX开发GD32F<b class='flag-5'>303</b>

    STM32CUBEMX开发GD32F303(15)----外部中断EXTI

    本章STM32CUBEMX配置STM32F103,并且在GD32F303中进行开发,同时通过开发板内进行验证。 使用外部中断EXTI进行驱动LED。
    的头像 发表于 07-26 15:53 771次阅读
    <b class='flag-5'>STM32</b>CUBEMX开发GD32F<b class='flag-5'>303</b>(15)----外部中断EXTI

    STM32CUBEMX开发GD32F303(14)----IIC之配置OLED

    本章STM32CUBEMX配置STM32F103,并且在GD32F303中进行开发,同时通过开发板内进行验证。
    的头像 发表于 07-26 13:52 1302次阅读
    <b class='flag-5'>STM32</b>CUBEMX开发GD32F<b class='flag-5'>303</b>(14)----IIC之配置OLED

    stm32 F303K8 DMA的配置方法

    本文以stm32 F303K8为例,不同型号的DMA配置方法略有不同。
    的头像 发表于 07-24 14:40 792次阅读
    <b class='flag-5'>stm32</b> F<b class='flag-5'>303</b>K8 DMA的配置方法

    HS-303ARH, HS-303AEH, HS-303BRH, HS-303BEH 数据表

    HS-303ARH, HS-303AEH, HS-303BRH, HS-303BEH 数据表
    发表于 07-05 20:31 1次下载
    HS-<b class='flag-5'>303</b>ARH, HS-<b class='flag-5'>303</b>AEH, HS-<b class='flag-5'>303</b>BRH, HS-<b class='flag-5'>303</b>BEH 数据表

    Renesas e² studio 2021-07 或更高版本用户手册:快速入门指南 Renesas MCU RE 系列

    Renesas e² studio 2021-07 或更高版本用户手册:快速入门指南 Renesas MCU RE 系列
    发表于 07-03 20:49 0次下载
    Renesas e² studio 2021-07 或更高版本用户手册:快速入门<b class='flag-5'>指南</b> Renesas <b class='flag-5'>MCU</b> <b class='flag-5'>RE</b> 系列