中国大学生工程实践与创新能力竞赛(工程训练大赛)——智慧物流搬运小车 ② 材料选型

本文主要是介绍中国大学生工程实践与创新能力竞赛(工程训练大赛)——智慧物流搬运小车 ② 材料选型,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

机械结构的痛

我们队没人会机械结构,所以做的很烂,这里说一些麦轮车自己的心得


一、没有陀螺仪返回角度偏差的情况下,麦轮的车想走直线还是有点难度的。

第一个难点在于四个轮一般不能同时着地,导致向前直线运动的时候产生左或右的运动
第二个难点在于四个轮对地摩擦力不同,会导致走直线的时候走不直,这一点在左右平移的时候非常明显!!

在这里给出我解决这两个问题的方法:针对第一条,给小车做个悬挂就可以了,机械结构能力强的同学,安排一个独立悬挂,像我这种彩笔,就买一个前桥悬挂也能用。

 第二个问题也困扰了我很久,我经历了三个阶段,大家都可以参考:

  1. 首先尝试使用陀螺仪纠偏,当时买了维特智能jy901s这款九轴陀螺仪,售价94元,厂家宣传的精度确实可以,但是在小车上用起来就相当难受了。首先,它获得z轴角度是通过地磁传感器,室内地磁能不能用完全随缘,而且每换一个场景,都要抱着车转啊转,很不优雅。第二,他的动态精度很差,放着还行,车动起来后参数完全没法看。第三,最关键的一条,安培环路定理告诉我们:你的车会产生很大的磁场,这个磁场大到可以让你的陀螺仪没法工作!所以我当时测试的时候把陀螺仪安装到了距离电机差不多40cm的距离,才勉强能用,这显然是不可接受的。和南航的同学交流后发现他们用的是6轴陀螺仪,虽然零点漂移严重,但是在短暂的时间或者位移内的漂移是可以接收的,所以每次移动前通过摄像头对正小车,记录当前角度并以此为\theta _{0},车还是可以走的很直的。
  2. 由于我第一次尝试使用9轴陀螺仪失败后,我买了四个电子秤和一大堆的矫汽车车轮动平衡用的小铁皮,把车放到四个电子秤上,然后通过加减铁块让四个轮对地摩擦力一致,简单粗暴,效果非常好。我们的车在加装机械臂后整车中心超前,左右走歪的一批,用这个方法矫正后前后左右走的特别直。
  3. 工训省赛结束后用工训赛的技术遗产,带俩学弟参加了中国工程机器人大赛,u1s1,这两个比赛难度完全不可同日而语,不过学院对这些机器人比赛还是很支持的,所以借机买了很多很贵的传感器,其中有一款售价四百多的HWT101DT陀螺仪。这个陀螺仪也是我在水群的时候发现的,它用在工训赛这个比赛完全没有问题。这款陀螺仪仅有单轴,但是非常稳定,工训赛三分钟的比赛时间内可以说完全没有漂移。用它写Z轴角度闭环相当舒适。我当时没有得到这个陀螺仪为了解决车走直线花掉非常非常的时间精力,写了各种巡线算法试图跳过陀螺仪保持Z轴稳定,如果如果你的学校很支持做比赛的话,400多买个超高精度陀螺仪还是非常划算的。

二、机械臂选型

还是老问题,我们队没人会机械结构设计这回事,所以我可以说我们的机械臂在国赛上海11个队里应该是最垃圾的,使用的是一百来块的辣鸡舵机,虚位巨大,当然冲出省赛也是够用的,就是需要自己不断地调调调,挺烦的。舵机之间的连接件也是淘宝三四块钱一块的标准件,组一条机械臂还是很快的。

如果大家经费充足,并且队伍里有一位机械大佬,建议买几个贵的总线舵机,然后好好设计一条结实耐用的机械臂,大方向走对很重要,不然后期调试成本太高了!!

三、传感器、驱动、主控的经历

1.灰度传感器

我们一开始用的是淘宝上现成的五路灰度传感器,68块钱一个,价格感人,用着用着就发现问题还是很多的,比如说间距不合适导致车停不准,为了解决这个问题,就弄了俩更丑的灰度卡着线,卡线精度可以自己调整间距调整,这个方法除了丑也没别的问题。

 省赛和国赛中间差了好几个月,我参加了第十六届全国大学生智能车竞赛,这个比赛也是非常的锻炼人,一开始上手了一款冷门芯片,csdn上几乎没有任何资料,开始啃datasheet和usermanual,对单片机有了更深刻的理解。同时,自己编写了有差不多4k行的控制算法代码,c语言和微处理器编程能力得到了快速提高。另外,智能车硬件队友是个学弟,设计的pcb不太满足需求,就开始自己学着画板子,画更复杂的板子,主控、驱动、传感器等都是自己设计制作的,这锻炼了我制作PCB的能力。后来国赛的时候自己掌握了制作PCB的技能后,整车变得特别干净。

国赛的时候,我们的灰度传感器是自己制作的,好处就太明显了,自己做可以按自己需求来调整对管的间距,可以死死的卡着线。

 2.电机驱动

省赛时期用的电机驱动感觉多少交了点智商税,用的机器人比赛很火的一款单路驱动,号称500w功率,但是实际电机工作起来就10w的样子,压根用不着,还卖得贵,一路电机就得一张,一张就是100块。而且价格问题还是小问题,大问题是四张pcb在车上就很尴尬了,没地方放,而且线路混乱,导致我初赛用的车极其的丑陋。。。。。

现在看来,我的车确实做的够丑的。。。 

 国赛时候用了智能车时期做的BTN驱动,只是把双路驱动改成了四路,就能用了,我的整车重量6kg,四个电机加起来的功率应该还算不小,反正是没有出过任何问题,一张四路驱动自制的成本大概四十块钱,打个黑色的板子看起来还漂亮。

基于BTN7971b自制的四路电机驱动,黑色看着就高级 

 3.主控板设计制作

如果之前没有经验的话,建议mcu使用核心板,然后画一个座,把板子插上去用,这样一来是简单,而来就是一般不会坏,制作难度也低。当然dalao请直接画mcu上去,板子会变得很干净,看着很舒服。 

 

这篇关于中国大学生工程实践与创新能力竞赛(工程训练大赛)——智慧物流搬运小车 ② 材料选型的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/188991

相关文章

Java Optional的使用技巧与最佳实践

《JavaOptional的使用技巧与最佳实践》在Java中,Optional是用于优雅处理null的容器类,其核心目标是显式提醒开发者处理空值场景,避免NullPointerExce... 目录一、Optional 的核心用途二、使用技巧与最佳实践三、常见误区与反模式四、替代方案与扩展五、总结在 Java

Spring Boot循环依赖原理、解决方案与最佳实践(全解析)

《SpringBoot循环依赖原理、解决方案与最佳实践(全解析)》循环依赖指两个或多个Bean相互直接或间接引用,形成闭环依赖关系,:本文主要介绍SpringBoot循环依赖原理、解决方案与最... 目录一、循环依赖的本质与危害1.1 什么是循环依赖?1.2 核心危害二、Spring的三级缓存机制2.1 三

Python 中的 with open文件操作的最佳实践

《Python中的withopen文件操作的最佳实践》在Python中,withopen()提供了一个简洁而安全的方式来处理文件操作,它不仅能确保文件在操作完成后自动关闭,还能处理文件操作中的异... 目录什么是 with open()?为什么使用 with open()?使用 with open() 进行

Python获取中国节假日数据记录入JSON文件

《Python获取中国节假日数据记录入JSON文件》项目系统内置的日历应用为了提升用户体验,特别设置了在调休日期显示“休”的UI图标功能,那么问题是这些调休数据从哪里来呢?我尝试一种更为智能的方法:P... 目录节假日数据获取存入jsON文件节假日数据读取封装完整代码项目系统内置的日历应用为了提升用户体验,

Spring Boot 配置文件之类型、加载顺序与最佳实践记录

《SpringBoot配置文件之类型、加载顺序与最佳实践记录》SpringBoot的配置文件是灵活且强大的工具,通过合理的配置管理,可以让应用开发和部署更加高效,无论是简单的属性配置,还是复杂... 目录Spring Boot 配置文件详解一、Spring Boot 配置文件类型1.1 applicatio

tomcat多实例部署的项目实践

《tomcat多实例部署的项目实践》Tomcat多实例是指在一台设备上运行多个Tomcat服务,这些Tomcat相互独立,本文主要介绍了tomcat多实例部署的项目实践,具有一定的参考价值,感兴趣的可... 目录1.创建项目目录,测试文China编程件2js.创建实例的安装目录3.准备实例的配置文件4.编辑实例的

Python 中的异步与同步深度解析(实践记录)

《Python中的异步与同步深度解析(实践记录)》在Python编程世界里,异步和同步的概念是理解程序执行流程和性能优化的关键,这篇文章将带你深入了解它们的差异,以及阻塞和非阻塞的特性,同时通过实际... 目录python中的异步与同步:深度解析与实践异步与同步的定义异步同步阻塞与非阻塞的概念阻塞非阻塞同步

Python Dash框架在数据可视化仪表板中的应用与实践记录

《PythonDash框架在数据可视化仪表板中的应用与实践记录》Python的PlotlyDash库提供了一种简便且强大的方式来构建和展示互动式数据仪表板,本篇文章将深入探讨如何使用Dash设计一... 目录python Dash框架在数据可视化仪表板中的应用与实践1. 什么是Plotly Dash?1.1

springboot集成Deepseek4j的项目实践

《springboot集成Deepseek4j的项目实践》本文主要介绍了springboot集成Deepseek4j的项目实践,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价... 目录Deepseek4j快速开始Maven 依js赖基础配置基础使用示例1. 流式返回示例2. 进阶

Android App安装列表获取方法(实践方案)

《AndroidApp安装列表获取方法(实践方案)》文章介绍了Android11及以上版本获取应用列表的方案调整,包括权限配置、白名单配置和action配置三种方式,并提供了相应的Java和Kotl... 目录前言实现方案         方案概述一、 androidManifest 三种配置方式