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.mzph.cn/web/70365.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【宏基因组】MaAsLin2

教学手册:学习手册 MaAsLin2 # BiocManager::install("Maaslin2",force TRUE)library(Maaslin2) # 用的是相对丰度,行名为-ID行样本,列为细菌 input_data system.file("extdata", "HMP2_taxonomy.tsv", package"…

【消息队列】认识项目

1. 项目介绍 该项目是去实现一个简单的消息队列,包含服务器,客户端的实现,客户端通过远程方法调用与服务器进行交互。采用自定义应用层协议,下层使用 TCP 协议进行数据在网络中传输,核心功能提供了虚拟主机&#xff0…

vue从入门到精通(十一):条件渲染

条件渲染 1.v-if 写法: (1).v-if“表达式” (2).v-else-if“表达式” (3).v-else“表达式” 适用于:切换频率较低的场景。 特点:不展示的DOM元素直接被移除。 注意:v-if可以和:v-else-if、v-else一起使用,但要求结构不能被“打断” 2.v-show 写法:v-show“…

Python爬虫基础文件操作

文件操作 引言 爬虫爬取的一切内容都是在内存进行的,这样会有什么问题吗?如果一旦短电或着发生意外电脑关机了那么你的工作成果将瞬间消失。所以,我们还缺少数据在本地文件系统进行持久化的能力,简单的来说就是文件读写操作。文…

OpenCV中的边缘检测

边缘检测是图像处理和计算机视觉中的关键技术之一,旨在识别图像中像素强度发生显著变化的区域,这些区域通常对应于物体的边界或轮廓。边缘检测在机器视觉中具有重要的需求背景,主要体现在以下几个方面: 图像分割:边缘…

【简历优化】性能调优 — 编程性能调优篇

😊你好,我是小航,一个正在变秃、变强的文艺倾年。 🔔本文讲解【简历优化】性能调优 — 编程性能调优篇,期待与你一同探索、学习、进步,一起卷起来叭! 目录 一、编程性能调优字符串String 发展优…

深入理解 MySQL 8 C++ 源码:SELECT MOD(MONTH(NOW()), 2) 的函数执行过程

MySQL 作为最流行的关系型数据库之一,其内部实现机制一直是开发者探索的热点。本文将以一条简单的 SQL 查询 SELECT MOD(MONTH(NOW()), 2) 为例,深入分析 MySQL 8 源码中内置函数 MOD、MONTH 和 NOW 的执行过程,揭示其底层实现逻辑。 一、SQL…

RNN中远距离时间步梯度消失问题及解决办法

RNN中远距离时间步梯度消失问题及解决办法 RNN 远距离时间步梯度消失问题LSTM如何解决远距离时间步梯度消失问题 RNN 远距离时间步梯度消失问题 经典的RNN结构如下图所示: 假设我们的时间序列只有三段, S 0 S_{0} S0​ 为给定值,神经元没有…

Tomcat理论(Ⅰ)

目录 服务器流程图一览 一、JavaWeb前奏(了解) 1. C/S结构 2. B/S结构 3. 静态网页&动态网页 4.常见的网页 5.Web服务器 知名服务器: ​编辑 二、Tomcat安装(熟练) 1.Tomcat概述 2.Tomcat的作用 3.Tomcat安装 4.Tomcat测试 3.…

如何使用 DeepSeek R1 构建开源 ChatGPT Operator 替代方案

开源大型语言模型(LLMs)的兴起使得创建 AI 驱动的工具比以往任何时候都更容易,这些工具可以与 OpenAI 的 ChatGPT Operator 等专有解决方案相媲美。在这些开源模型中,DeepSeek R1 以其强大的推理能力、自由的可访问性和适应性而脱…

使用Docker Desktop部署GitLab

1. 环境准备 确保Windows 10/11系统支持虚拟化技术(需在BIOS中开启Intel VT-x/AMD-V)内存建议≥8GB,存储空间≥100GB 2. 安装Docker Desktop 访问Docker官网下载安装包安装时勾选"Use WSL 2 instead of Hyper-V"(推荐…

【复习】Java集合

集合概念 集合与数组 数组是固定长度;集合是动态长度的数据结构,需要动态增加或删除元素 数组可以包含基本数据类型和对象;集合只能包含对象 数组可以直接访问元素;集合需要通过迭代器访问元素 线程安全的集合? …

vue3 文件类型传Form Data数据格式给后端

在 Vue 3 中,如果你想将文件(例如上传的 Excel 文件)以 FormData 格式发送到后端,可以通过以下步骤实现。这种方式通常用于处理文件上传,因为它可以将文件和其他数据一起发送到服务器。 首先,创建一个 Vue…

使用 INFINI Console 配置集群监控 Webhook 通知指南

在集群管理中,监控关键指标如CPU、内存、磁盘、JVM等是至关重要的。对于Easysearch及ES生态系统,还需要关注集群本身的指标,例如搜索延迟、集群状态、节点移除等。INFINI Console不仅提供了默认的监控指标,还支持用户自定义监控项…

WPF的页面设计和实用功能实现

目录 一、TextBlock和TextBox 1. 在TextBlock中实时显示当前时间 二、ListView 1.ListView显示数据 三、ComboBox 1. ComboBox和CheckBox组合实现下拉框多选 四、Button 1. 设计Button按钮的边框为圆角,并对指针悬停时的颜色进行设置 一、TextBlock和TextBox…

二级公共基础之数据结构与算法篇(八)排序技术

目录 前言 一、交换类排序 1.冒泡排序法 1. 冒泡排序的思想 2. 冒泡排序的实现步骤 3. 示例 4. 冒泡排序的特点 2.快速排序 1. 快速排序的核心思想 2. 快速排序的实现步骤 3. 示例代码(C语言) 4. 快速排序的特点 二、插入类排序 1. 简单插入排序 1.简单插入排…

记录一次 ALG 的处理过程

前几天朋友找我帮忙,说碰到很大困难了,实际上,不过如此 现象是这样的: FreeSWITCH mod_unimrcp 工作不正常 FS 和 mrcp-server 两边同时抓包,看到的是: sip 流程正常 FS TCP 连接到 mccp-server 失败&…

【Linux网络编程】IP协议格式,解包步骤

目录 解析步骤 1.版本字段(大小:4比特位) 2.首部长度(大小:4比特位)(单位:4字节) 🍜细节解释: 3.服务类型(大小:8比特…

CSDN文章质量分查询系统【赠python爬虫、提分攻略】

CSDN文章质量分查询系统 https://www.csdn.net/qc 点击链接-----> CSDN文章质量分查询系统 <------点击链接 点击链接-----> https://www.csdn.net/qc <------点击链接 点击链接-----> CSDN文章质量分查询系统 <------点击链接 点击链…

HTML应用指南:利用GET请求获取全国泸溪河门店位置信息

随着新零售业态的快速发展,门店位置信息的获取变得越来越重要。作为新兴烘焙品牌之一,泸溪河自2013年在南京创立以来,一直坚持“健康美味,香飘世界”的企业使命,以匠人精神打造新中式糕点。为了更好地理解和利用这些数据,本篇文章将深入探讨GET请求的实际应用,并展示如何…