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

news2024/11/24 22:25:26

第1部分 产品介绍

MKS SERVO 28D/35D/42D/57D 系列闭环步进电机是创客基地为满足市场需求而自主研发的一款产品。具备脉冲接口和RS485/CAN串行接口,支持MODBUS-RTU通讯协议,内置高效FOC矢量算法,采用高精度编码器,通过位置反馈,有效防止电机丢步。适合小型机械臂,3D打印机,雕刻机,写字机,自动化产品以及电子竞赛等应用。
硬件开源,性价比高!
在这里插入图片描述

第2部分 相关资料下载

2.1 源代码下载

百度网盘:https://pan.baidu.com/s/1BjrK9SC8pWnDoU32F8jHqA?pwd=mks2
07_例程-STM32系列(脉冲_串口)
在这里插入图片描述

第3部分 参数配置和注意事项

3.1 电机参数配置

  1. 设置波特率: 菜单 → UartBaud → 38400
  2. 设置从机地址: 菜单 → UartAddr → 01

3.2 注意事项

  1. 42D/57D串口为RS485电平,需要一个TTL转RS485电平模块。

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

  1. 接线说明
    在这里插入图片描述

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

第5部分 读取参数示例

5.1 读取电机实时位置

  1. 接线说明
    在这里插入图片描述

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

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

5.2 读取电机实时转速

  1. 接线说明
    在这里插入图片描述

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

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

5.3 读取电机输入脉冲数

  1. 接线说明
    在这里插入图片描述

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

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

5.4 读取电机位置误差

  1. 接线说明
    在这里插入图片描述

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

  3. Watch窗口输出结果
    在这里插入图片描述
    注意:PositionError = 51200 对应角度值360度

5.5 读取电机IO端口状态

  1. 接线说明
    在这里插入图片描述

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

  3. Watch窗口输出输出结果
    在这里插入图片描述
    注: 1-高电平; 0-低电平

第6部分 设置参数示例

6.1 设置电机工作模式

  1. 接线说明
    在这里插入图片描述

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

6.2 设置电机工作电流

  1. 接线说明
    在这里插入图片描述

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

6.3 设置电机工作细分

  1. 接线说明
    在这里插入图片描述

  2. 代码说明
    代码功能:STM32 主板通过串口设置工作细分。
    程序运行后,可观察到:
    a. LED灯亮,即串口发出设置细分指令;
    b. 如果设置成功,LED灯慢闪,可通过屏幕菜单MStep选项,查看设置的细分;
    c. 如果设置失败,LED灯快闪。
    在这里插入图片描述

6.4 恢复出厂参数

  1. 接线说明
    在这里插入图片描述

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

第7部分 电机运行示例

7.1 电机速度模式运行

  1. 接线说明
    在这里插入图片描述

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

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

  1. 接线说明
    在这里插入图片描述

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

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

  1. 接线说明
    在这里插入图片描述

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

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

  1. 接线说明
    在这里插入图片描述

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

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/702935.html

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

相关文章

【java】线程池简介

线程池简介 一、什么是线程池 线程池是一种利用池化技术思想来实现的线程管理技术,主要是为了复用线程、便利地管理线程和任务、并将线程的创建和任务的执行解耦开来。我们可以创建线程池来复用已经创建的线程来降低频繁创建和销毁线程所带来的资源消耗。 二、线…

通过zOffice SDK实现灵活的数据统计

我们通过zOffice收集的业务数据,如何进行分析统计呢?或许我们会想到数据透视表或者筛选的方式,这当然可以,但是在某些场景下,通过透视表统计有一定的难度,不够灵活,而zOffice SDK给我们提供了丰…

使用autossh实现内网穿刺

前言 需要在客户公司部署一套系统,要求是能公网访问,但是客户那边没有公网IP。所以打算打算使用autossh实现内网穿刺。 准备 硬件: 我需要一台有独立ip的公网服务器82.82.82.82(充当穿刺服务器),一台能…

EasyExcel时间处理时的bug,希望阿里不要不识好歹,尽快修复这个bug。

一、情况描述 我使用阿里的EasyExcel进行数据导入,但是我发现它录入的时间和表格上的数据不一样。Excel中录入的时间是7:30:00和21:20:00,但是实际读取的数据是7:30:00 上午,9:20:00 下午,导致我数据录入失…

【脚本工具】Python在MySQL批量造测试数据

测试过程中经常需要批量造一批数据,主要通过fake库来造测试数据,支持多国语言,注意使用的时候,各国具体情况 一、安装Faker 1、官方下载安装: URL:https://pypi.org/project/Faker/ 2、通过pip命令安装 …

5、Mysql事务原理

一、概述 事务:一组操作要么全部成功,要么全部失败,目的是为了保证数据最终的一致性。 数据库一般都会并发执行多个事务,多个事务可能会并发的对相同的一批数据进行增删改查操作,可能就会导致我们说的脏写、脏读、不可…

群辉助手Synology Assistant使用教程

下载 百度网盘链接直接下载即可 链接:https://pan.baidu.com/s/1XlQEcTCqBTsOgp-761jdOg?pwd5vyf 提取码:5vyf --来自百度网盘超级会员V5的分享 安装 直接双击安装,等待安装完成 能搜索到上图应用说明安装成功 使用 点击搜索按钮&…

浅谈餐饮业油烟在线监控系统的设计与研究

贾丽丽 安科瑞电气股份有限公司 上海嘉定 201801 摘要:现阶段餐饮行业发展十分迅速,为了更好地提升餐饮油烟的监控力度,强化餐饮业油烟在线监控系统的设计成为重中之重。油烟在线监控系统的强化可以降低油烟的排放量,同时在排烟的…

【赠书】算力经济概念提出者的倾力之作,深刻诠释超级计算的未来!

目录 1.内容简介2.读者受众3.图书目录 如果说蒸汽机是工业革命的引擎,发电机是电气时代的引擎,那么计算机就是数字信息时代的引擎,而超级计算机是引领科学计算创新、攀登新高峰的引擎。 现在,公有云的发展如火如荼,云…

八、云尚办公系统-管理端-审批设置

云尚办公系统:管理端-审批设置 B站直达【为尚硅谷点赞】: https://www.bilibili.com/video/BV1Ya411S7aT 本博文以课程相关为主发布,并且融入了自己的一些看法以及对学习过程中遇见的问题给出相关的解决方法。一起学习一起进步!!…

Android处理内存泄漏

么是内存泄漏: 在Android开发过程中,当一个对象已经不需要再使用了,本该被回收时,而另个正在使用的对象持有它引用从而导致它不能被回收,这就导致本该被回收的对象不能被回收而停留在堆内存中,内存泄漏就产…

STM32外设系列—HC-05(蓝牙)

文章目录 一、蓝牙简介二、使用方法2.1 接线2.2 AT指令 三、蓝牙APP四、实战项目4.1 添加文件4.2 配置需要传递的参数4.3 获取返回值4.4 发送光照强度4.5 控制程序4.6 手机端页面设计4.6.1 新建调试工程4.6.2 设置通信变量4.6.3 编辑控件4.6.4 添加LED控制开关4.6.5 添加光照强…

Vue 时间转换

文章目录 将秒转换成简单时间格式方式一 表格渲染方式二 js转换 将时间转换为字符串方式一 年、月、日、时、分、秒、星期等信息方式二 返回多久之前的时间 将秒转换成简单时间格式 方式一 表格渲染 element-ui 表格为例&#xff0c;duration 单位为秒 <el-table-column …

Openresty原理概念篇(十一) 为什么要避免使用 NYI?

一 JIT编译器的死穴&#xff1a;为什么要避免使用 NYI ? ① 问题引入 1) 那么到底有哪些操作可以被 JIT,哪些不能呢?2) 怎样才可以避免写出不能被 JIT 的代码呢? ② 上节回顾 ③ 什么是 NYI&#xff1f; NYI函数 NYI完整的列表 ④ NYI列表中string库函数 说明&am…

sonarqube安装以及jenkins集成sonarqube

一、sonarqube安装 docker方式安装sonarqube docker 方式安装是最简便的&#xff0c;我选择了这个安装方式 1、下载镜像 docker pull postgres:latest docker pull sonarqube2、 创建挂载目录 #用于postgres的挂载目录 mkdir -p /opt/postgres/postgresql mkdir -p /opt/po…

慧博云通加入飞桨技术伙伴计划,共同推动企业AI应用创新

近日&#xff0c;慧博云通子公司慧博云通&#xff08;上海&#xff09;软件技术有限公司正式加入飞桨技术伙伴计划&#xff0c;双方将共同探索人工智能多场景创新应用&#xff0c;为企业提供智能化解决方案。 慧博云通 慧博云通科技股份有限公司&#xff08;股票代码&#x…

Pytorch分布式训练(一)

参考文献&#xff1a; 33、完整讲解PyTorch多GPU分布式训练代码编写_哔哩哔哩_bilibili pytorch进程间通信 - 文举的博客 (liwenju0.com) 前言 2023年&#xff0c;训练模型时&#xff0c;使用DDP&#xff08;DistributedDataParallel&#xff09;已经成为Pytorch炼丹师的标准…

sourcetree打开就闪退

1、问题分析 一直未出现如题描述情况&#xff0c;今早到公司可能是异常重启或者系统更新的愿意导致没有正常关机&#xff0c;出现了此种情况 2、问题解决 注&#xff1a;本文sourcetree安装在win11系统&#xff0c;win10等系统目录大同小异 ① (若快捷方式在桌面步骤①省略…

你的服务器还安全吗?用户数据是否面临泄露风险?

一系列严重的网络安全事件引起了广泛关注&#xff0c;多家知名公司的服务器遭到黑客挟持&#xff0c;用户的个人数据和敏感信息面临泄露的风险。这些事件揭示了网络安全的脆弱性和黑客攻击的威胁性&#xff0c;提醒着企业和个人加强对网络安全的重视。 一、入侵案例1.1 蔚来数据…

复习Javascript第二章

JavaScript 函数 JavaScript 函数是被设计为执行特定任务的代码块。 JavaScript 函数会在某代码调用它时被执行。 function myFunction(p1, p2) {return p1 * p2; // 该函数返回 p1 和 p2 的乘积 } JavaScript 函数语法 JavaScript 函数通过 function 关键词…