利用sin/cos原理驱动步进电机

news2024/9/23 21:30:33

利用sin/cos原理控制步进电机转动

  • 前言
  • 什么是步进电机驱动器细分控制
  • 电机内部结构图片
  • 步进电机驱动原理(重要)
  • 步进电机参数
    • 1、步距角:收到一个脉冲转动的角度
    • 2、细分数 :1/2,1/4,1/16,1/32
    • 3、 同步齿轮数和齿间距(一般2mm)
  • 驱动X电机平稳转动(这里例子128细分)
    • 1)正转
    • 2)反转
  • 8812 驱动芯片
  • 补充:

前言

本文主要以两相步进电机为例,为总结使用;

什么是步进电机驱动器细分控制

步进电机的运行性能与它的步进驱动器有密切的联系,可以通过驱动技术的改良来克服步进电机的缺点。相对于其他的驱动方式,细分驱动方式不仅可以减小步进电机的步距鱼
提高分辨率,而且可以减少或消除低频振动,使电机运行更加平稳均匀。
总体来说,细分驱动的控制效果最好。因为常用低端步进电机伺服系统没有编码器反应,所以随着电机速度的升高其内部控制电流相应减小,从而造成丢步现象。所以在速度和精度要求不高的领域,其应用非常广泛。细分驱动精度高;细分是驱动器将上级装置发出的每个
脉冲按驱动器设定的细分系数分成系数个脉冲输出
。比如步进电机每转一圈为200个脉冲
如果两相直流步进驱动器细分为 32,那么步进电机驱动器需要输出6400个脉冲步进电机才转一圈通常细分有2.4.8,16.32,62,128,256,512。在国外,对于步进系统,主要采用二相混合式步进电机及相应的细分驱动器。但在国内,广阔用户对“细分”还不是特别了解,有的只是认为,细分是为了提高精度,其实不然,细分主要是改善电机的运行性能。
——————————————————————————————
步进电机的细分控制是由驱动器准确控制步讲申机的相电流来实现的,以二相电机为例,假设电机的额定相电流为3A,如果使用常规驱动器(如常用的恒流斩波方式)驱动该电机,电机每运行一步,其绕组内的电流将从0突变为3A 或从3A 突变到0,相电流的巨大变化,必然会引起电机运行的振动和噪音。如果使用细分驱动器,在10细分的状态下驱动该电机,电机每运行一微步,其绕组内的电流变化只有 0.3A而不是3A,且电流是以正弦曲线规律变化这样就大大的改善了电机的振动和噪音,因此,在性能上的优点才是细分的真正优点。由于细分驱动器要准确控制电机的相电流,所以对步进电机驱动器要有相当高的技术要求和工艺要求,成本亦会较高。注意国内有一些驱动器采用“平滑”来取代细分,有的亦称为细分,但这不是真正的细分,望广阔用户一定要分清两者的本质不同。
———————————————————————————————
1)
“平滑”并不准确控制电机的相电流,只是把电流的变化率变缓一些,所以**“平滑”并不产生微步**,而细分的微步是可以用来准确定位的。

2)
电机的相电流被平滑后,会引起电机力矩的下降,而细分控制不但不会引起电机力矩的下降,相反,力矩会有所增加。

电机内部结构图片

在这里插入图片描述

步进电机驱动原理(重要)

步进电机必须有驱动器和控制器才能正常工作。驱动器的作用是对控制脉冲进行环形分配、功率放大,使步进电机绕组按一定顺序通电。以两相步进电机为例,当给驱动器一个脉冲信号和一个正方向信号时驱动器经过环形分配器和功率放大后,给电机绕组通电的顺序为
A+ > A+B+ > B+ > B+A- > A- > A-B- > B- > B-A+ > A+
分别对应电机的1 > 2 >3 > 4 > 5 > 6 > 7 > 8 > 1
,八个状态周而复始进行变化,电机顺时针转动:;
若方向信号变为负时,原理相同,电机逆时针转动;

在这里插入图片描述

步进电机参数

1、步距角:收到一个脉冲转动的角度

0.9度 ——> 400个 ——> 1圈
1.8度 ——> 200个 ——> 1圈
7.5度 ——> 48 个 ——> 1圈

2、细分数 :1/2,1/4,1/16,1/32

1/16:原来一个脉冲可以使电机转一个步距角,现在要16个才能转一个步距角
如果是1.8的话,电机转一圈要200*16个脉冲

3、 同步齿轮数和齿间距(一般2mm)

齿数10-30

驱动X电机平稳转动(这里例子128细分)

这里的X电机指的是旋转平面和水平面保持一致的电机;
电机走的总步数=大步 * 细分 * 齿比 ;=200 * 128 * 4;总步数为102400;
齿比: 大齿:小齿 = 60 :15 = 4 :1;
速度电流要相匹配,速度越大,电流也要增大,否则电机会有震动或者有噪音,其实就是没有力去驱动;

1)正转

index 0,1,2…511,0,1,2,3…511…

2)反转

index 511,510…3,2,1,0,511,510…

8812 驱动芯片

补充:

1)修改预分频可以决定拉不拉长spwm,
2) timer_channel_output_pulse_value_config修改占空比
3)电流影响波的幅度,
4)计数器就是自己设的周期时长
5) diffvalue 校正波形
6)ICC1——电流大,电机很大力,掰不动; ICC5——电流小,电机没有力,容易掰动
7)prescaler 7–9.375KHZ,3–18.75KHZ 拉长频率范围
8)period和precaler 用表格计算,可用,取点时间即中断时间
9) 第0帧一般存起来不用,1帧就是一个通道;发的是512整个数据包
开始以为收几个CHND,就准备多大的数组,后来发现不对,

************ 版权所有,转载请注明出处 ************

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

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

相关文章

M1 mac安装 Parallels Desktop 18 激活

M1 mac安装 Parallels Desktop 18 激活 下载安装Parallels Desktop 18.1.1 (53328) 激活1. 拷贝prl_disp_service2. 在终端打开Crack所在位置3. 输入命令,激活成功 下载 安装包和激活文件下载地址 链接: https://pan.baidu.com/s/1EjT7xeEDcntIIoOvvhBDfg?pwd9pue …

Kubernetes Pod深度解析:构建可靠微服务的秘密武器(上)

🐇明明跟你说过:个人主页 🏅个人专栏:《Kubernetes航线图:从船长到K8s掌舵者》 🏅 🔖行路有良友,便是天堂🔖 目录 一、引言 1、Kubernetes概述 2、Pod概述 二、Po…

AI老人跌倒监测报警摄像机

AI老人跌倒监测报警摄像机是一种基于人工智能技术的智能监控设备,专门用于监测老年人的跌倒情况并提供实时报警功能,以及时处理紧急情况,保障老人安全。这种摄像机利用先进的AI算法和深度学习技术,能够实时监测老人的行为&#xf…

时序信号高低频分析——经验模态分解EMD

时序信号高低频分析——经验模态分解EMD 介绍 经验模态分解(Empirical Mode Decomposition,EMD)是一种用于时序信号分解的自适应方法,旨在将原始信号分解为多个固有模态函数(Intrinsic Mode Functions,IM…

【c++】类和对象(二)this指针

🔥个人主页:Quitecoder 🔥专栏:c笔记仓 朋友们大家好,本节内容来到类和对象第二篇,本篇文章会带领大家了解this指针 目录 1.this指针1.1this指针的引出1.2this指针的特性1.3思考题1.4C语言和C实现Stack的对…

RWTH-PHOENIX Weather数据集模型说明和下载

RWTH-PHOENIX Weather 2014 T数据集说明: 德国公共电视台PHOENIX在三年内(2009 年至 2011 年) 录制了配有手语翻译的每日新闻和天气预报节目,并使用注释符号转录了 386 个版本的天气预报。 此外,我们使用自动语音识别和手动清理来转录原始德语语音。因此,该语料库允许训练…

近线数仓优化改造

近线数仓优化改造 1. 背景2. 优化3. 改造3.1. 重构3.2. 优化 1. 背景 大概就是有那么一个数仓,然后简略结构如下: #mermaid-svg-PVoUzuQhj2BK7Qge {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid…

【C语言】动态内存管理及其常见错误

文章目录 1、前言:为什么要有动态内存分布2、三种动态内存的创建方式及其释放2.1 malloc2.2 calloc2.3 ralloc2.4 free 3、常⻅的动态内存的错误3.1 对NULL指针的解引用操作3.2 对动态开辟空间的越界访问3.3 对非动态开辟内存使用free释放3.4 使⽤free释放⼀块动态开…

C++动态内存管理:new/delete与malloc/free的对比

在C中,动态内存管理是一个至关重要的概念。它允许我们在程序运行时根据需要动态地分配和释放内存,为对象创建和销毁提供了灵活性。在C中,我们通常会用到两对工具:new/delete 和 malloc/free。虽然它们都能够完成类似的任务&#x…

2月线上速溶咖啡行业数据分析:“减肥咖啡”引领电商新潮流

随着生活节奏的加快,速溶咖啡因其便捷性受到广大消费者的青睐。不过,在如今世界咖啡市场激烈竞争的情况下,中国速溶咖啡市场也受到影响,增速有所放缓。 根据鲸参谋电商数据平台显示,2月线上综合电商(京东天…

003_vector_conventions_in_MATLA中的向量约定

MATLAB中的向量约定 1. 前言 MATLAB是一种用于数值计算和数据可视化的高级编程语言。以前,都不好意思说它是编程语言,它实际上只是一个脚本工具,配套了一堆工具箱。比如Simulink,可以开展非常复杂的仿真,还能编译到实…

海外媒体发稿:出口贸易媒体发稿7个秘籍揭晓-华媒舍

出口贸易是许多国家经济增长的关键驱动力之一。不仅可以加快国家的发展步伐,还能为企业创造巨大的商机。如何能够在出口贸易中取得成功,如何能够引起媒体的关注,成为企业广告和宣传的焦点,是许多出口企业面临的挑战。本文将揭示出…

【LeetCode热题100】108. 将有序数组转换为二叉搜索树(二叉树)

一.题目要求 给你一个整数数组 nums ,其中元素已经按 升序 排列,请你将其转换为一棵 平衡二叉搜索树。 二.题目难度 简单 三.输入样例 示例 1: 输入:nums [-10,-3,0,5,9] 输出:[0,-3,9,-10,null,5] 解释&#x…

【Java程序设计】【C00367】基于(JavaWeb)Springboot的粮仓管理系统(有论文)

TOC 博主介绍:java高级开发,从事互联网行业六年,已经做了六年的毕业设计程序开发,开发过上千套毕业设计程序,博客中有上百套程序可供参考,欢迎共同交流学习。 项目简介 项目获取 🍅文末点击卡片…

JVM——字符串常量池

在Java程序中String类的使用几乎无处不在,String类代表字符串,字符串对象可以说是Java程序中使用最多的对象了。首先,在Java中创建大量对象是非常耗费时间的。其次,在程序中又经常使用相同的字符串对象,如果每次都去重…

企业计算机服务器中了locked勒索病毒怎么处理?Locked勒索病毒解密流程

在网络技术不断发展应用过程中,越来越多的企业利用网络开展各项工作业务,网络为企业的生产运营提供了极大便利,但网络威胁手段也在不断增加,为企业的数据安全带来严重威胁。近日,新一波的网络勒索病毒比较猖獗&#xf…

云电脑火爆出圈,如何选择和使用?--腾讯云、ToDesk云电脑、青椒云使用评测和攻略

前言: Hello大家好,我是Dream。在当下,科技的飞速发展已经深入影响着我们的日常生活,特别是随着物联网的兴起和5G网络的普及,云计算作为一个重要的技术概念也逐渐走进了我们的视野。云计算早已不再是一个陌生的名词&am…

FANUC机器人零点标定的基本步骤(出厂数据)

FANUC机器人零点标定的基本步骤(出厂数据) FANUC 零点数据存在问题的机器人通常会出现以下几种报警: (1)SRVO-062报警 - 脉冲编码器数据丢失,机器人完全不能动,具体消除方法可参考以下链接中的内容: FANUC机器人SRVO-062报警原因分析及处理对策 (2)SRVO-075报警 -…

qrcode插件-生成二维码

安装 yarn add qrcodejs2 --save npm install qrcodejs2 --save 使用 <template><div><div id"qrcodeImg"></div><!-- 创建一个div&#xff0c;并设置id --></div> </template> <script> import QRCode from q…

9.串口通信

串口基本认识 串行接口简称串口&#xff0c;也称串行通信接口或串行通讯接口&#xff08;通常指COM接口&#xff09;&#xff0c;是采用串行通信方 式的扩展接口。串行接口&#xff08;Serial Interface&#xff09;是指数据一位一位地顺序传送。其特点是通信线路简 单&#x…