1 Star 4 Fork 0

saber23324 / 第八届工训物流车

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README
layout: post
title: " 物流车软件"
excerpt: 
date: 2023-3-28
categories: [嵌入式]
tags: [嵌入式,控制算法,视觉]
author: Nirvana
index_img: 
banner_img:

第八届工训物流车

说明:本文档主要描述了本次物流车的软件代码说明,文件夹中主要有主控32程序,k210巡线程序和k210识别二维码及颜色程序。(如果看不懂欢迎学妹联系 高山蔚 qq:549379020)

stm32主控

主要任务在qfsm_user中,大概处理流程为MID是中间状态,基本每个状态都会回到该状态进行统一调度。调度通过在map.c中的枚举类型作为下一个任务。使用时请修改枚举类型和MID调度

任务命名

  1. FW->forward直行
  2. QF_Get_number 寻找二维码

个人感觉命名规则还是通俗易懂的,知不道了结合map中的过程进行推导,需要注意的一点,maps中进行任务调度是有优先级的。优先级为turn>set_head>set_left。turn为执行特殊任务的指令,里面包含左右旋转,抓取物料,颜色识别等任务。set_head为直行,set_left为向左走(可正可负)。

机械臂

机械臂所有指令在my_servo中,Servo_Pwm函数写的比较明白,各个自由度的位置也标记清晰。

机械臂调试

调试时首先将#define debug_mode 0置1,然后按照UART5的相关协议进行调试使用无线逐飞的透传调试。(其实一般我调试时是使用另外的文件,所以调试模式写的不是很好,有些bug。交给后人优化了)

控制算法

控制算法主要分为脉冲解算,运动姿态解算,以及视觉闭环三个主要方面。

脉冲控制步进电机

主要参考了网上的频率控制,具体计算在这里参考资料。但控制时仍然需要有注意的点。首先一开始频率给太高步进电机会转不起来,步进电机不像直流电机,他开始转时的力矩较大,所需要的频率必须小。因此需要梯形加速或s型加速。本次只写了梯型加速。(写在了运动解算函数里Speed_Calculation())但进行时一定会带来系统整体时延,因此建议后续优化。

运动解算

本次使用了二维对光电管计算运动时xy的偏移值,到达固定位置使用摄像头对固定位置进行闭环。对光电管使用串口通信,上面自带32,可以直接给你发回来偏差值,但在没有黑线和全部都是高电平时会误传,因此做了部分优化。但仍需注意由于上桥时,可能会悬空,所有对于固定位置仍需优化。

陀螺仪配置

陀螺仪使用了维特智能,直接上网看他的协议即可。注意一点,当他比较漂时需要连接上位机进行校准,并且不要再让她恢复出厂设置!!

k210视觉测距

视觉测距使用了霍夫巡线+线性回归(好不容易想出来的)。主要思路先找线,再对该roi区域进行线性回归(解决了霍夫巡线的漂)再进行滑动滤波,测试下来很稳定。只不过对于某些干扰点,线性回归还是有些无法处理,需要你对这些位置重新打些roi补丁。最后返回了垂直,水平线的距离以及垂直角度。 PS:有些摄像头是个翻的,要不物理调整,要不翻转,要不吧你的PID的征服反馈设置对了。(K210巡线代码有个小逻辑bug,前后把垂直和水平的名称换了一下,不影响使用所有懒得改了) PSS:对于视觉,个人感觉以后很必要,国赛啥的肯定不会让你这么舒服的用对光电管循迹,也不是很难就调库就完了。 并且,对于陀螺仪,再途中可以用视觉进行校准清零,很方便且稳定。.

其他问题

  • 比赛时场地的阻力是你要关注的点,必要时建议更换电机或改进控制算法。
  • 要会改颜色以及视觉代码 。
  • 串口传数据一定要开DMA+帧头帧尾,否则误码率太高。建议看看隔壁RM的代码。
  • 开DMA时cubemx有bug,具体自己搜。
  • 千万记着不要烧错程序!!!!!!!!!!!!!!!!!!!!!!
  • 机械臂可以更换,我们的机械臂比较拉其他都可。
  • 颜色识别记着加看门狗,程序别死里面。
所有协议见PDF,最后祝下一届拿国奖,本届还是有点可惜且魔幻的。最后这比赛真没啥,调tm的就完了。河北的都是辣🐥,给他们来点河工带震撼。

特别鸣谢:王铁成老师,智能车实验室,王铁成老师的红牛,以及隔壁组。

空文件

简介

第八届工训小车 视觉方案 展开 收起
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
C
1
https://gitee.com/saber23324/YYDS_8th.git
git@gitee.com:saber23324/YYDS_8th.git
saber23324
YYDS_8th
第八届工训物流车
master

搜索帮助