0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

华为嵌入式精英挑战赛:智能小车+机械臂

新机器视觉 来源:CSDN 2023-03-03 11:29 次阅读

利用智能小车与机械臂结合,在智能小车自身能够实现的功能的基础上,拓宽功能,使之得到最大化的利用,提高其利用价值。

智能小车可实现障碍物搜寻、扫除或者攻击“敌人”,另外利用智能小车、机械臂的结合实现物体抓取与放置。

小车扫除障碍时,通过上中两层分布的红外传感器感知障碍或“敌人”,加速进行扫除或发动攻击;

小车抓取物体时,通过红外传感器实现避障到达目的地,然后进行物体抓取并放到指定位置,此动作可自动完成,也可通过蓝牙通讯控制完成,使之更加灵活。

选题方向

基于智能小车,给其增加一机械臂,通过智能小车的移动,使机械臂实现“定点抓取”——>“移动抓取”,利用智能小车已实现的避障、攻击等功能,在机械臂抓取物体,放置物体已实现的情况下,二者叠加,使之产生1+1>2的效果。当我们不便或不想行动时,这时它便可以帮助我们拿物体,就像一个简易的“佣人”。

我们可以手动控制机器人手臂的每个伺服或轴的运动,同样使用“Save”按钮,可以记录每个位置或步骤,然后机器人手臂可以自动运行并重复这些步骤,

这样机械臂可帮助我们做一些简单的重复工作,并且使用相同的按钮,可以暂停自动操作以及重置或删除所有步骤,以便我们可以记录新的步骤。

竞赛开发平台

智能小车车体部分

硬件

其主控是stm32控制板,配置有四个MG996舵机,两个1203驱动器,四个电机,上中下三层各配置四个传感器,依次是红外传感器,红外测距传感器,红外光电传感器,另配置有一倾角传感器,小车配有锂电池为驱动供电,另配有电源为主控及舵机供电。

软件:

  • 利用Keil 软件平台为智能小车配置代码并进行调试;

  • 利用Robot Servo Terminal软件进行舵机、驱动编号并对舵机位置调试设定;

  • 利用LuBy creater 软件进行传感器参数读取及调试;

机械臂部分

硬件:

其主控是arduino UNO 开发板,其主体机械结构由3d打印,关节分别由SG90舵机和MG996R舵机构成,并且使用蓝牙通讯模块辅助实现其控制。

软件:

  • 利用Ardunio软件平台编写调试 UNO 控制程序;

  • 利用Solidworks 软件设计机械臂物理结构;

  • 利用app inventor软件设计开发与机械臂相匹配的蓝牙控制app。

机械臂部分硬件:

首先,使用Solidworks 建模软件设计了机器人手臂,手臂有5个自由度,机械臂全部由3D打印完成。

对于前3轴,腰部,肩部和肘部,使用MG996R伺服系统,而对于另外2轴,腕部滚动和腕部间距,以及夹持具使用了较小的SG90微型伺服系统。

硬件连接示意图:

85255438-b920-11ed-bfe3-dac502259ad0.png

主函数代码展示:

853b6584-b920-11ed-bfe3-dac502259ad0.png

抓取物体:

使用应用程序中的滑块,我们可以手动控制机器人手臂的每个伺服或轴的运动。同样使用“Save”按钮,我们可以记录每个位置或步骤,然后机器人手臂可以自动运行并重复这些步骤。使用相同的按钮,我们可以暂停自动操作以及重置或删除所有步骤,以便我们可以记录新的步骤。

代码部分展示:

1.void loop() {
2.// Check for incoming data
3.if (Bluetooth.available() > 0) {
4.dataIn = Bluetooth.readString(); // Read the data as string
5.
6.// If "Waist" slider has changed value - Move Servo 1 to position
7.if (dataIn.startsWith("s1")) {
8.String dataInS = dataIn.substring(2, dataIn.length()); // Extract only the number. E.g. from "s1120" to "120"
9.servo1Pos = dataInS.toInt(); // Convert the string into integer
10.// We use for loops so we can control the speed of the servo
11.// If previous position is bigger then current position
12.if (servo1PPos > servo1Pos) {
13.for ( int j = servo1PPos; j >= servo1Pos; j--) { // Run servo down
14.servo01.write(j);
15.delay(20); // defines the speed at which the servo rotates
16.}
17.}
18.// If previous position is smaller then current position
19.if (servo1PPos < servo1Pos) {
20.for ( int j = servo1PPos; j <= servo1Pos; j++) { // Run servo up
21.servo01.write(j);
22.delay(20);
23.}
24.}
25.servo1PPos = servo1Pos; // set current position as previous position
26.}
27.
28.// Move Servo 2
29.if (dataIn.startsWith("s2")) {
30.String dataInS = dataIn.substring(2, dataIn.length());
31.servo2Pos = dataInS.toInt();
32.
33.if (servo2PPos > servo2Pos) {
34.for ( int j = servo2PPos; j >= servo2Pos; j--) {
35.servo02.write(j);
36.delay(50);
37.}
38.}

8554da6e-b920-11ed-bfe3-dac502259ad0.png

创新点描述

1、同时采用stm32和arduino控制板配合使用,充分利用二者特点,使之与项目要求达到很好的匹配;

2、利用MIT APP Inventor 设计开发机械臂控制APP,无论对于开发者还是使用者,操作都较简单明了;

3、采用3层传感器的分布结构,使车体对周围环境判断更加灵敏和准确,同时也考虑到实际环境的影响,避免采用灰度传感器(受环境光)等外在客观环境影响较大的传感器;

4、智能小车可以自动搜寻障碍并采取相应措施向起发动进攻;

5、使用机械臂APP中的滑块,可以手动控制机器人手臂的每个伺服或轴的运动。同样使用“保存”按钮,可以记录每个位置或步骤,然后机器人手臂可以自动运行并重复这些步骤。使用相同的按钮,可以暂停自动操作以及重置或删除所有步骤,以便记录新的步骤。

成果展示

8576a716-b920-11ed-bfe3-dac502259ad0.png

85983d36-b920-11ed-bfe3-dac502259ad0.png

审核编辑 :李倩


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 智能小车
    +关注

    关注

    86

    文章

    549

    浏览量

    81655
  • 机械臂
    +关注

    关注

    12

    文章

    509

    浏览量

    24489

原文标题:华为嵌入式精英挑战赛:智能小车 + 机械臂

文章出处:【微信号:vision263com,微信公众号:新机器视觉】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    【DIGILENT挑战赛】+电子相框

    的开发板,7系列的FPGA 全部是采用统一的构架,基于 virtex 6 的构架,所以这个FPGA还是很高端的,28nm的芯片。关于板子的介绍可以看我的第一篇:【DIGILENT挑战赛】arty artix
    发表于 05-03 20:10

    【福利加“码”】鸿蒙线上Codelabs系列挑战赛第三期:挑战HarmonyOS分布趣味应用

    能体验HarmonyOS新功能、新特性,探索HarmonyOS的魅力,还能与众多开发者一起碰撞想法,Battle技艺,机会不容错过! 第三期挑战赛主题:创建 HarmonyOS 分布趣味应用 在上一期的挑战赛中,大家
    发表于 10-20 14:58

    智能小车如何与机械相结合?

    智能小车如何与机械相结合?
    发表于 12-27 06:15

    OpenHarmony成长计划挑战赛作品有奖征集

    OpenAtomOpenHarmony(以下简称“OpenHarmony”)开源开发者成长计划—解决方案学生挑战赛(以下简称“本大赛”或“成长计划学生挑战赛”)的使命是使用OpenHarmony技术
    发表于 08-30 15:56

    每日推荐 | OpenHarmony成长计划学生挑战赛嵌入式初级工程师资料包分享

    大家好,以下为电子发烧友推荐每日好帖,欢迎留言点评讨论~1、OpenHarmony成长计划挑战赛作品有奖征集推荐理由: OpenAtom OpenHarmony(以下简称“OpenHarmony
    发表于 08-31 10:01

    Altium实训班——声源跟踪小车设计挑战赛

    03日 19:30(周四)——郑振宇第五讲:PCB叠层管理、常用规则约束设置及PCB交互布线实战11月05日 19:30(周六)——陈俊祥第六讲:实物调试、电路问题展示及解决方案大赛系列资料:【小车设计挑战赛系列】各类
    发表于 09-21 10:43

    小车设计挑战赛系列】各类智能小车开源设计资料,原理图、代码齐全

    本期为各种智能小车参考资料,多数为参赛作品,均包含原理图、代码、手册等资料。同时,电子发烧友与Altium联合举办Altium实训班——声源跟踪小车设计挑战赛,欢迎各位发烧友参赛,赢取
    发表于 09-22 14:41

    #Altium声源跟踪小车挑战赛 活动手册

    个工作日内统一发放。挑战赛资料汇总1.资料汇总:【小车设计挑战赛系列】各类智能小车开源设计资料,原理图、代码齐全2.系列直播:第一讲:项目工
    发表于 10-31 14:15

    #Altium声源跟踪小车挑战赛 作品提交指南:如何在硬声投稿视频?

    与功能,尽量使用中文标题。建议自拟标题(特色和亮点)+#Altium声源跟踪小车挑战赛举例:国产主控+低延迟算法 开源声源小车项目 #Altium声源跟踪小车
    发表于 11-08 17:55

    Altium声源跟踪小车挑战赛 活动手册(二)投票指南

    “Altium声源跟踪小车挑战赛,是由Altium、华秋电子共同举办的实战训练营。旨在帮助用户从单纯的“视频学习”,拓展为“直播学习+实践挑战”。 #Altium声源跟踪小车
    发表于 01-03 17:14

    【精品合集】瑞萨RA4M2物联网网关设计挑战赛作品合集

    - 环境网关设备作者:ouxiaolong【RA4M2设计挑战赛智能家居助手之RA4M2开发环境搭建【RA4M2设计挑战赛智能家居助手之GPIO流水灯【RA4M2设计
    发表于 03-07 14:33

    中兴捧月全球精英挑战赛正式启动

    3月31日,一年一度的“中兴捧月”全球精英挑战赛正式启动。
    的头像 发表于 03-31 15:43 1476次阅读

    开发活动 | 嵌入式GUI挑战赛报名开启!参赛申领开发板

    开发挑战赛 RT-Thread社区联合LVGL社区,及合作伙伴瑞萨电子正式开启2023嵌入式GUI挑战赛,欢迎你来挑战! 在本次大赛中,我们欢迎所有参赛者来构建全面的
    的头像 发表于 07-03 12:10 700次阅读
    开发活动 | <b class='flag-5'>嵌入式</b>GUI<b class='flag-5'>挑战赛</b>报名开启!参赛申领开发板

    嵌入式GUI挑战赛获奖名单公布!

    6月份RT-Thread 社区联合 LVGL 社区,及合作伙伴瑞萨电子正式开启2023嵌入式GUI挑战赛!经过3个月的激烈角逐,参赛者们提交了许多令人惊喜的作品,以超酷的新方式在嵌入式设备上去
    的头像 发表于 10-18 16:05 545次阅读
    <b class='flag-5'>嵌入式</b>GUI<b class='flag-5'>挑战赛</b>获奖名单公布!

    思尔芯题正式发布,邀你共战EDA精英挑战赛

    题发布COMPETITIONRELEASE2024中国研究生创芯大赛·EDA精英挑战赛(原“集成电路EDA设计精英挑战赛”)现已正式拉开帷
    的头像 发表于 08-03 08:24 544次阅读
    思尔芯<b class='flag-5'>赛</b>题正式发布,邀你共战EDA<b class='flag-5'>精英</b><b class='flag-5'>挑战赛</b>!