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 mcu和dsp工业平台——例如以下参考设计:
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. 找到ax58100 + stm32f303re mcu 马达控制演示文件夹目录 (如. “ax58100_p-nucleo-ihmxxx_demo_firmware_v1.0.0_source”). 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马达控制演示分位。
复制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 马达控制固件代码
请先安装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
复制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 马达驱动演示固件。
开启ax58100-evb-sspdi-1 board & nucleo-f303re/x-nucleo-ihm07m1 boards (ethercat slave). 开启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.你应该能看到马达已经正常运转了。

联想展示5G笔记本电脑的原型机 Z6青春版正式开启发售
静电火灾的基本条件_防静电火灾的措施
WiFi 6能够为5G网络提供强有力的支撑
buck芯片下电瞬间输出震荡案例
人脸识别测温一体机功能介绍
AX58100+STM32F303RE MCU 马达控制参考设计指南
投影机的无PC移动演示
决战南昌 东南赛区总决赛即将开启
华虹半导体上市,中国芯片代工的另类突围
苹果供应商纬创资通寻求重启其印度南部工厂的运营
H.264相关费用不受FRAND要求的限制
库克表示中国已开始控制住新型冠状病毒 iPhone产能将逐步恢复
Xilinx Virtex UltraScale 开发平台
智能锁应急开锁的功能应用
如何确定一个硬件加速应用
为汽车双远程天线电流检测LDO/开关选择外部元件
一种新型RFID收费系统设计方案
人工智能发展是长期过程 中国优势显著
pcb设计师应该着重关注哪些主要事项呢
浦桑尼克雪豹扫地机评测 延续经典融汇创新令人印象深刻