当前位置: 首页 > news >正文

MKS SERVO42E57E 闭环步进电机_系列10 STM32_脉冲和串口例程

文章目录

  • 第1部分 产品介绍
  • 第2部分 相关资料下载
    • 2.1 MKS E系列闭环步进驱动资料
    • 2.2 源代码下载
    • 2.3 上位机下载
  • 第3部分 脉冲控制电机运行示例
  • 第4部分 读取参数示例
    • 4.1 读取电机实时位置
    • 4.2 读取电机实时转速
    • 4.3 读取电机输入脉冲数
    • 4.4 读取电机位置误差
    • 4.5 读取电机IO端口状态
  • 第5部分 设置参数示例
    • 5.1 设置电机工作模式
    • 5.2 设置电机工作电流
    • 5.3 设置电机工作细分
    • 5.4 恢复出厂参数
  • 第6部分 电机运行示例
    • 6.1 电机速度模式运行
    • 6.2 电机位置模式1-按脉冲数运行
    • 6.3 电机位置模式2-按相对坐标运行
    • 6.4 电机位置模式3-按绝对坐标运行


第1部分 产品介绍

MKS SERVO42E/57E 闭环步进电机是创客基地为满足市场需求,按工业级标准自主研发的一款产品。具备脉冲接口、RS485接口以及CAN接口,内置高效FOC矢量算法,采用高精度编码器,通过位置反馈,有效防止电机丢步。适合小型机械臂,3D打印机,雕刻机,写字机,非标自动化产品以及电子竞赛等应用。
在这里插入图片描述

第2部分 相关资料下载

2.1 MKS E系列闭环步进驱动资料

百度网盘:
https://pan.baidu.com/s/1kRJBl8JTGwhifs0gMLtrQ?pwd=jad9

2.2 源代码下载

百度网盘:https://pan.baidu.com/s/1kRJBl8JTGw-hifs0gMLtrQ?pwd=jad9#list/path=%2FMKS%20E系列闭环步进驱动器%2F07_例程-STM32系列(脉冲_串口)
在这里插入图片描述

2.3 上位机下载

百度网盘:
https://pan.baidu.com/s/1kRJBl8JTGw-hifs0gMLtrQ?pwd=jad9#list/path=%2FMKS%20E系列闭环步进驱动器%2F05_上位机软件&parentPath=%2F
在这里插入图片描述

第3部分 脉冲控制电机运行示例

1.接线说明
① MKS SERVO 42E 与 STM32F103C8T6 串口通讯接线说明
在这里插入图片描述

② MKS SERVO 57E 与 STM32F103C8T6 串口通讯接线说明
在这里插入图片描述

2.代码说明
代码功能:STM32 主板发送脉冲信号,控制电机循环正反转动。
程序运行后,可观察到:
a.LED蓝灯亮,电机运行10圈;
b.LED蓝灯灭,电机停止;
c.如此不断循环

在这里插入图片描述

第4部分 读取参数示例

4.1 读取电机实时位置

1.接线说明
① MKS SERVO 42E 与 STM32F103C8T6 串口通讯接线说明
在这里插入图片描述

② MKS SERVO 57E 与 STM32F103C8T6 串口通讯接线说明
在这里插入图片描述

2.代码说明
代码功能:STM32 主板通过串口读取电机实时位置信息。
程序运行后,可观察到:
a. TIMER3 定时器中断生成脉冲信号,控制电机转动;
b. LED蓝灯每秒闪一次,发出查询电机实时位置指令;
c. watch 窗口添加观察变量realTimeLocation,可以观察到位置数据变化;
d. 如此不断循环
在这里插入图片描述

3.Watch窗口观察结果
在这里插入图片描述

4.2 读取电机实时转速

1.接线说明
① MKS SERVO 42E 与 STM32F103C8T6 串口通讯接线说明
在这里插入图片描述

② MKS SERVO 57E 与 STM32F103C8T6 串口通讯接线说明
在这里插入图片描述

2.代码说明
代码功能:STM32 主板串口读取电机实时转速。
程序运行后,可观察到:
a.TIMER3 定时器中断生成脉冲信号,控制电机转动;
b.LED蓝灯每秒闪一次,发出查询电机实时转速指令;
c.watch 窗口添加观察变量realTimeSpeed,可以观察到转速数据变化;
d.如此不断循环。
在这里插入图片描述

3.Watch窗口输出结果
在这里插入图片描述

4.3 读取电机输入脉冲数

1.接线说明
① MKS SERVO 42E 与 STM32F103C8T6 串口通讯接线说明
在这里插入图片描述

② MKS SERVO 57E 与 STM32F103C8T6 串口通讯接线说明
在这里插入图片描述

2.代码说明
代码功能:STM32 主板串口读取电机输入脉冲数。
程序运行后,可观察到:
e.TIMER3 定时器中断生成脉冲信号,控制电机转动;
f.LED蓝灯每秒闪一次,发出查询电机输入脉冲数指令;
g.watch 窗口添加观察变量inputPulses,可以观察到脉冲数据变化;
h.如此不断循环。
在这里插入图片描述

3.Watch窗口输出结果
在这里插入图片描述

4.4 读取电机位置误差

1.接线说明
① MKS SERVO 42E 与 STM32F103C8T6 串口通讯接线说明
在这里插入图片描述

② MKS SERVO 57E 与 STM32F103C8T6 串口通讯接线说明
在这里插入图片描述

2.代码说明
代码功能:STM32 主板串口读取位置误差。
程序运行后,可观察到:
a.TIMER3 定时器中断生成脉冲信号,控制电机转动;
b.LED蓝灯每秒闪一次,发出查询电机位置误差指令;
c.watch 窗口添加观察变量PositionError,可以观察到位置误差变化;
d.如此不断循环
在这里插入图片描述

3.Watch窗口输出结果
在这里插入图片描述

注意:PositionError = 51200 对应角度值360度

4.5 读取电机IO端口状态

1.接线说明
① MKS SERVO 42E 与 STM32F103C8T6 串口通讯接线说明
在这里插入图片描述

② MKS SERVO 57E 与 STM32F103C8T6 串口通讯接线说明
在这里插入图片描述

2.代码说明
代码功能:STM32 主板串口读取IO端口状态。
程序运行后,可观察到:
a.LED蓝灯每秒闪一次,发出查询电机IO端口状态指令;
b.watch 窗口添加观察变量IoStatus,可以观察到IO端口状态变化;
c. IO端口默认为高电平,用地线触碰IN_1,IN_2 可以看到状态变化;
在这里插入图片描述

3.Watch窗口输出输出结果
在这里插入图片描述

注: 1-高电平; 0-低电平

第5部分 设置参数示例

5.1 设置电机工作模式

1.接线说明
① MKS SERVO 42E 与 STM32F103C8T6 串口通讯接线说明
在这里插入图片描述

② MKS SERVO 57E 与 STM32F103C8T6 串口通讯接线说明
在这里插入图片描述

2.代码说明
代码功能:STM32 主板通过串口设置工作模式。
程序运行后,可观察到:
a. LED蓝灯每秒闪一次,即串口发出设置工作模式指令;
b. 如果设置成功,LED蓝灯慢闪,可通过串口调试助手或上位机发送指令,查看设置的工作模式;
c. 如果设置失败,LED蓝灯快闪。
在这里插入图片描述

5.2 设置电机工作电流

1.接线说明
① MKS SERVO 42E 与 STM32F103C8T6 串口通讯接线说明
在这里插入图片描述

② MKS SERVO 57E 与 STM32F103C8T6 串口通讯接线说明
在这里插入图片描述

2.代码说明
代码功能:STM32 主板通过串口设置工作电流。
程序运行后,可观察到:
a. LED蓝灯每秒闪一次,即串口发出设置工作电流指令
b. 如果设置成功,LED蓝灯慢闪,可通过串口调试助手或上位机发送指令,查看设置的电流;
c. 如果设置失败,LED蓝灯快闪。
在这里插入图片描述

5.3 设置电机工作细分

1.接线说明
① MKS SERVO 42E 与 STM32F103C8T6 串口通讯接线说明
在这里插入图片描述

② MKS SERVO 57E 与 STM32F103C8T6 串口通讯接线说明
在这里插入图片描述

2.代码说明
代码功能:STM32 主板通过串口设置工作细分。
程序运行后,可观察到:
a. LED蓝灯亮,即串口发出设置细分指令;
b. 如果设置成功,LED蓝灯慢闪,可通过串口调试助手或上位机发送指令,查看设置的细分;
c. 如果设置失败,LED蓝灯快闪。
在这里插入图片描述

5.4 恢复出厂参数

1.接线说明
① MKS SERVO 42E 与 STM32F103C8T6 串口通讯接线说明
在这里插入图片描述

② MKS SERVO 57E 与 STM32F103C8T6 串口通讯接线说明
在这里插入图片描述

2.代码说明
代码功能:STM32 主板通过串口恢复出厂参数。
程序运行后,可观察到:
a. LED蓝灯亮,即串口发出恢复出厂参数指令;
b. 如果恢复成功,LED蓝灯慢闪,电机会自动重启,需要重新校准电机;
c. 如果恢复失败,LED蓝灯快闪。
在这里插入图片描述

第6部分 电机运行示例

6.1 电机速度模式运行

1.接线说明
① MKS SERVO 42E 与 STM32F103C8T6 串口通讯接线说明
在这里插入图片描述

② MKS SERVO 57E 与 STM32F103C8T6 串口通讯接线说明
在这里插入图片描述

2.代码说明
代码功能:STM32 主板通过串口控制电机以速度模式运行。
程序运行后,可观察到:
a. LED蓝灯亮/灭一次,电机改变一次速度运行,不停循环运行;
b. 如果运行失败,LED蓝灯快闪;
在这里插入图片描述

6.2 电机位置模式1-按脉冲数运行

1.接线说明
① MKS SERVO 42E 与 STM32F103C8T6 串口通讯接线说明
在这里插入图片描述

② MKS SERVO 57E 与 STM32F103C8T6 串口通讯接线说明
在这里插入图片描述

2.代码说明
代码功能:STM32 主板通过串口控制电机以脉冲数运行。
程序运行后,可观察到:
a. 电机按设定的脉冲数运行到指定位置(10圈),停止2000ms;
b. 改变方向,再运行到指定位置(10圈),停止2000ms;
c. 不停循环运行;
d. 如果运行失败,LED蓝灯快闪。
在这里插入图片描述

6.3 电机位置模式2-按相对坐标运行

1.接线说明
① MKS SERVO 42E 与 STM32F103C8T6 串口通讯接线说明
在这里插入图片描述

② MKS SERVO 57E 与 STM32F103C8T6 串口通讯接线说明
在这里插入图片描述

2.代码说明
代码功能:STM32 主板通过串口控制电机按相对坐标运行。
程序运行后,可观察到:
a. 电机按设定的相对坐标(realAxis)运行到指定位置(10圈),停止2000ms;
b. 相对坐标(realAxis)取反,电机运行到起点位置,停止2000ms;
c. 不停循环运行;
d. 如果运行失败,LED蓝灯快闪。
在这里插入图片描述

6.4 电机位置模式3-按绝对坐标运行

1.接线说明
① MKS SERVO 42E 与 STM32F103C8T6 串口通讯接线说明
在这里插入图片描述

② MKS SERVO 57E 与 STM32F103C8T6 串口通讯接线说明
在这里插入图片描述

2.代码说明
代码功能:STM32 主板通过串口控制电机按按绝对坐标运行。
程序运行后,可观察到:
a. 电机运行到绝对坐标(absoluteAxis=0),停止2000ms;
b. 电机运行到绝对坐标(absoluteAxis=163840),停止2000ms;
c. 不停循环运行;
d. 如果运行失败,LED蓝灯快闪。
在这里插入图片描述


注:本文同样适合后续产品MKS SERVO28E/35E闭环步进电机
下一篇:《MKS SERVO42E&57E 闭环步进电机_系列11 STM32_CAN例程》
欢迎加入MKS 闭环步进电机技术交流 Q群(948665794)
欢迎光临 创客基地 B站:https://space.bilibili.com/393688975
欢迎光临 创客基地 淘宝店:https://makerbase.taobao.com/
网盘资料下载:https://pan.baidu.com/s/1kRJBl8JTGw-hifs0gMLtrQ?pwd=jad9

http://www.dtcms.com/a/31103.html

相关文章:

  • Quasar:轻量级、高效的.NET远程管理工具
  • 基于云的物联网系统用于实时有害藻华监测:通过MQTT和REST API无缝集成ThingsBoard
  • P2865 [USACO06NOV] Roadblocks G 与最短路的路径可重复的严格次短路
  • Javascript网页设计实例:通过JS实现上传Markdown转化为脑图并下载脑图-完整源代码,开箱即用
  • 快速入门——第三方组件element-ui
  • Missing required prop: “maxlength“
  • 华为昇腾910b服务器部署DeepSeek翻车现场
  • C语言-进程
  • vue组件,父子通信,路由,异步请求后台接口,跨域
  • 2.5GE 超千兆SFP光模块型号(常用光模块收发光功率范围)
  • 图谱洞见:专栏概要与内容目录
  • java实现动态数组
  • wps中zotero插件消失,解决每次都需要重新开问题
  • 【C++】在线五子棋对战项目网页版
  • Python之numpy
  • 【CS285】高斯策略对数概率公式的学习笔记
  • 【python】conda命令合集
  • Java版企电子招标采购系统源业码Spring Cloud + Spring Boot +二次开发+ MybatisPlus + Redis
  • <02.21>八股文
  • 01 1个路由器+两个子网
  • Leetcode 二叉树展开为链表
  • c++:stack与deque
  • 基于Java+SpringBoot+Vue的前后端分离的汉服推广网站
  • HW面试经验分享 | 北京蓝中研判岗
  • 算法:选择排序(以排队为例)
  • git 克隆及拉取github项目到本地微信开发者工具,微信开发者工具通过git commit、git push上传代码到github仓库
  • 6.z字形变换(python)
  • 【消息队列】认识项目
  • 如何确定服务器是否被黑客入侵爆破
  • GO系列-IO 文件操作