您的位置:首页 > 财经 > 产业 > 草根站长工具_嘉兴seo网站建设_新手怎么入行sem_网站建设优化

草根站长工具_嘉兴seo网站建设_新手怎么入行sem_网站建设优化

2024/12/22 0:51:51 来源:https://blog.csdn.net/LuDanTongXue/article/details/144291266  浏览:    关键词:草根站长工具_嘉兴seo网站建设_新手怎么入行sem_网站建设优化
草根站长工具_嘉兴seo网站建设_新手怎么入行sem_网站建设优化

摘要:前面章节主要介绍单个电机控制,本节内容介绍两个电机完成直线插补运动

一、 Bresenham直线算法介绍
Bresenham直线算法由Jack Elton Bresenham于1962年在IBM开发,最初用于计算机显示直线,它确定应该选择的n维光栅的点,以便形成两点之间的直线的近似。因为它仅使用整数加法,减法和位移,非常适合单片机系统

二、算法推导
关于该算法的视频推导教程非常多,推荐B站洛阳鸿卓课工场-白洋老师的Bresenham算法教程,讲解十分详细,链接如下:
https://www.bilibili.com/video/BV1eE411p7tn/?spm_id_from=333.337.search-card.all.click&vd_source=cbda27af6174dc53fd338dba3ab7dc66

三、算法移植
根据单片机步进电机系统的特点,将bresenham算法移植到单片机系统,与上述视频教程方式有区别,单片机系统适合整数处理,将坐标原点移动至左下角,即整个可移动区域为第一象限
在这里插入图片描述
第一种情况:直线在第一象限前半区(0<θ≤45)
1、计算斜率k
k = Y 2 − Y 1 X 2 − X 1 = Δ Y Δ X k=\frac{Y_{2}-Y_{1}}{X_{2}-X_{1}}=\frac{\Delta Y}{\Delta X} k=X2X1Y2Y1=ΔXΔY

2、判断主方向
Δ X ≥ Δ Y , 主方向为 X \Delta X\ge \Delta Y,主方向为X ΔXΔY,主方向为X

3、比较Y与Middle大小
Y:直线实际值
Middle:中点值

① 赋初值

  • Y = k x = Δ Y Δ X ∗ 1 = Δ Y Δ X Y=kx=\frac{\Delta Y}{\Delta X} *1=\frac{\Delta Y}{\Delta X} Y=kx=ΔXΔY1=ΔXΔY
  • M i d d l e = 0.5 Middle=0.5 Middle=0.5
  • I N T X = 0 INTX=0 INTX=0
  • I N T Y = 0 INTY=0 INTY=0

② 判别式整数化,乘公倍数2△X

  • Y = 2 △ Y Y=2△Y Y=2△Y
  • M i d d l e = △ X Middle=△X Middle=X

③ 循环判断
如果 Y ≥ M i d d l e 成立 如果Y≥Middle成立 如果YMiddle成立

  • M i d d l e = M i d d l e + 2 △ X Middle= Middle+2△X Middle=Middle+2△X
  • I N T Y = I N T Y + 1 INTY=INTY+1 INTY=INTY+1

④ 更新参数

  • I N T X = I N T X + 1 INTX=INTX+1 INTX=INTX+1
  • Y = Y + 2 △ Y Y = Y +2△Y Y=Y+2△Y

4、取坐标(INTX,INTY)为结果

第二种情况:直线在其他位置
在这里插入图片描述

统一转换到第1区处理,处理流程如下:
第1步判断直线方向
通过直线起点坐标P1(X1,Y1),终点坐标P2(X2,Y2),可以判断向量P1 P2 位于哪个方位

第2步判断主轴与电机方向
1/4/5/8四个方位主轴为X,副轴为Y,其中1/8主轴电机方向为正,4/5主轴电机方向为负
2/3/6/7四个方位主轴为Y,副轴为X,其中2/3主轴电机方向为正,6/7主轴电机方向为负

第3步根据Bresenham算法判断是否有副轴移动
让主轴匀速移动,根据Bresenham的算法,判断移动主轴的每一步,是否需要移动副轴,最终实现直线插值运动

四、实测
烧录hex文件后,单片机上电,步进电机直线插补运动,从起点(0,0)直线插补到终点(1000,2000),单位:步
请添加图片描述
在这里插入图片描述在这里插入图片描述

五、功能扩展
扩展1:(实测视频见文末百度网盘)
① 增加4个按键,控制电机启动、终点坐标
② 增加数码管,显示信息

扩展2:(实测视频见文末百度网盘)
① 增加4个按键,控制电机启动、终点坐标
② 增加1602LCD,显示信息

扩展3:
① 连续绘制模式,绘制一个正五角星
在这里插入图片描述
请添加图片描述

六、附件
Hex测试程序+测试视频请见百度网盘
链接: https://pan.baidu.com/s/1xGd9jeEvoAkZ_PkHIywRjg
提取码: 1gvx

Keil源码请见某宝,搜索:【皮皮黄步进电机】

↓↓↓点击下方【目录】,查看本系列全部文章

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com