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

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

3天内不再提示

如何实现双轮差速底盘躲避悬崖的功能?

jf_72402704 来源:jf_72402704 作者:jf_72402704 2023-03-03 17:08 次阅读

1. 功能说明

本实验使用的样机为R023样机小型双轮差速底盘。在样机前方安装3个近红外传感器 ,实现机器人躲避悬崖、在某平台上移动时不会掉下去的效果。

pYYBAGQButSAKfL2AAA0QBmrLBY395.jpg

2. 电子硬件

在这个示例中,我们采用了以下硬件,请大家参考:

主控板 Basra(兼容Arduino Uno)
扩展板 Bigfish2.1
传感器 近红外传感器
电池 7.4V锂电池

左轮直流电机连在D9,D10接口上;右轮直流电机连在D5,D6接口上;3个近红外传感器从左到右分别连在A0、A4、A3接口上。

poYBAGQButWAUYTlAABE0Jwvffs238.jpg

3. 示例程序

编程环境:Arduino 1.8.19

编写并烧录以下程序(nine.ino),该程序将实现演示视频中的动作【完整资料请参考https://www.robotway.com/h-col-113.html】

/*------------------------------------------------------------------------------------

  版权说明:Copyright 2023 Robottime(Beijing) Technology Co., Ltd. All Rights Reserved.

           Distributed under MIT license.See file LICENSE for detail or copy at

           https://opensource.org/licenses/MIT

           by 机器谱 2023-02-10 https://www.robotway.com/                               

------------------------------------------------------------------------------------*/

void Right();

void Left();

void Stop();

void Forward();

void Back();



void setup()

{

  pinMode( 17, INPUT);

  pinMode( 18, INPUT);

  pinMode( 14, INPUT);

  pinMode( 10, OUTPUT);

  pinMode( 6, OUTPUT);

  pinMode( 5, OUTPUT);

  pinMode( 9, OUTPUT);

}



void loop()

{

  if (((!( digitalRead(14)) && ! (digitalRead(17)) ) ))

  {

    Forward();

  }

  if (( digitalRead(14) ))

  {

    Left();

    delay( 300 );

  }

  if (( digitalRead(17) ))

  {

    Right();

    delay( 300 );

  }

  if (( digitalRead(18) ))

  {

    Back();

    delay( 1000 );

    analogWrite(5 , 100);

    analogWrite(6 , 0);

    analogWrite(9 , 0);

    analogWrite(10 , 100);

    delay( 1500 );

  }

}



void Right()

{

  analogWrite(5 , 0);

  analogWrite(6 , 0);

  analogWrite(9 , 100);

  analogWrite(10 , 0);

}



void Forward()

{

  analogWrite(5 , 100);

  analogWrite(6 , 0);

  analogWrite(9 , 100);

  analogWrite(10 , 0);

}



void Back()

{

  analogWrite(5 , 0);

  analogWrite(6 , 100);

  analogWrite(9 , 0);

  analogWrite(10 , 100);

}



void Left()

{

  analogWrite(5 , 100);

  analogWrite(6 , 0);

  analogWrite(9 , 0);

  analogWrite(10 , 0);

}



void Stop()

{

  analogWrite(5 , 0);

  analogWrite(6 , 0);

  analogWrite(9 , 0);

  analogWrite(10 , 0);

}

4. 扩展

本实验采用3个近红外传感器,利用的是近红外传感器能够识别到距离较近的桌面,无法识别到距离较远的地面,因此桌面要距离地面远一些。

本实验还可以使用灰度传感器或者白标传感器。利用的是灰度和白标在悬崖处极难收到反射回来的红外线的原理,因此相应的桌面必须是浅色,如果桌面也是深色,灰度和白标传感器就无法区分桌面和悬崖了。

审核编辑黄宇

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

    关注

    2526

    文章

    48092

    浏览量

    740024
  • 机器人
    +关注

    关注

    206

    文章

    27033

    浏览量

    201392
  • 编程
    +关注

    关注

    88

    文章

    3440

    浏览量

    92388
收藏 人收藏

    评论

    相关推荐

    智界S7、智己L6力推“智能底盘”概念,产业链有哪些新机会?

    电子发烧友网报道(文/梁浩斌)上周,智己发布了智己L6,华为终端也在鸿蒙生态春季沟通会上重新发布了智界S7,值得一提的是,这两款车型都重点提到了智能底盘的概念。智己L6上搭载了“灵蜥数字底盘
    的头像 发表于 04-15 07:15 3207次阅读
    智界S7、智己L6力推“智能<b class='flag-5'>底盘</b>”概念,产业链有哪些新机会?

    探讨底盘的发展历程及趋势

    自汽车诞生一百余年以来,底盘发展就和汽车发展深度绑定。底盘系统决定了汽车纵向、横向和垂向六个自由度的动态行为,是汽车能够跑运行的必要条件。
    发表于 04-11 10:13 82次阅读
    探讨<b class='flag-5'>底盘</b>的发展历程及趋势

    蔚来AI底盘新识别颠簸点超3100万个

    蔚来AI底盘新识别颠簸点超3100万个
    的头像 发表于 04-01 10:16 222次阅读
    蔚来AI<b class='flag-5'>底盘</b>新识别颠簸点超3100万个

    智己汽车全球首发“VMC智慧数字底盘

    今日,智己汽车宣布,以智能算法赋能整车中枢控制系统的行业首创技术“VMC智慧数字底盘
    的头像 发表于 03-18 16:07 660次阅读

    经纬恒润全栈自研底盘域控制器量产

    随着汽车科技的迅猛发展,汽车EE架构正从分布式到域集中式再到中央计算式快速过渡。整车ECU数量骤减,线束布置不断优化,控制功能不断集中,域控制器作为整车EE架构中的核心控制单元,具有举足轻重的作用
    的头像 发表于 02-27 08:00 163次阅读
    经纬恒润全栈自研<b class='flag-5'>底盘</b>域控制器量产

    汽车底盘控制技术研究

    汽车底盘控制技术是指对汽车底盘系统进行控制和管理的一种技术,其主要目的是提高汽车的性能、安全性和舒适性[2]。
    发表于 02-19 16:39 223次阅读

    自己设计开发的一些无刷电机控制器,希望坛友多多交流

    遥控:支持HotRC SBUS接收机遥控 功能双轮速度同步闭环,角速度闭环,支持坡道驻车,比较好的走直线功能! 双轮FOC控制器(小功率) 电压:DC18-32V 电流:15A*2
    发表于 01-30 18:15

    使用AD8138实现单端转功能的疑问

    您好,附件是AD8138的外围电路,是参考芯片手册的电路设计的。主要是为了实现单端转分的功能。现在出现几个问题: 1. 对于Vocm引脚,我从0V变化到750mV的过程中,输出的共模电压并不是
    发表于 11-27 08:24

    同星智能邀您共赴2023第三届汽车智能底盘大会

    邀请函Invitation2023第三届汽车智能底盘大会中国·上海盖世汽车2023第三届汽车智能底盘大会将聚焦底盘的智能化、电动化、电子化路线,围绕智慧线控底盘、电控悬架、滑板
    的头像 发表于 11-11 08:21 327次阅读
    同星智能邀您共赴2023第三届汽车智能<b class='flag-5'>底盘</b>大会

    成本效益领先的爱普特RISC-V MCU双轮载人平衡车方案 提供更高安全性和控制稳定性

    双轮载人平衡车作为一种新型的交通工具,正慢慢渗透到我们的日常生活之中。其灵活、便捷以及环保的特性使其成为现代城市出行的理想新选择。然而,要实现这些特性,双轮载人平衡车的控制系统是关键,其中MCU又是
    的头像 发表于 11-11 08:18 257次阅读
    成本效益领先的爱普特RISC-V MCU<b class='flag-5'>双轮</b>载人平衡车方案  提供更高安全性和控制稳定性

    MEMS传感器的千亿级新机会? 博世等线控底盘产业链巨头9月21齐聚苏州!

    大会背景 9月21-22日   苏州 高铁新城  随着汽车的电动化与智能化技术的不断发展,汽车底盘在结构形式、系统架构、功能控制、安全冗余等方面产生了全新的变革。传统机械式底盘由于广泛应用
    的头像 发表于 09-15 08:40 672次阅读
    MEMS传感器的千亿级新机会? 博世等线控<b class='flag-5'>底盘</b>产业链巨头9月21齐聚苏州!

    运放组成的分式恒流源推导

    运放组成的分式恒流源推导,草图是根据LMP7702推荐电路演化来的,组成分式的恒流源,功能是可以实现的。但我不知道怎么推导公式。最后的公式是I=V/R.有大神能帮忙推导出来吗?
    发表于 08-13 17:06

    底盘调校主要方法有哪些

    底盘调校主要方法 一直以来各汽车企业把底盘调校作为看家本领,其技术的复杂性及难度在整车性能开发过程中不言而喻。汽车性能一般用动力性、燃油经济性、制动性、操纵稳定性、平顺性和通过性等评价指标来评价
    的头像 发表于 07-22 17:18 1579次阅读
    <b class='flag-5'>底盘</b>调校主要方法有哪些

    汽车底盘调校是什么意思

    下面让我们抽丝剥茧,看看什么是底盘调校? 发动机被人们比作汽车的心脏,底盘就可看作是汽车的骨骼,它涉及动力传动系统、行驶系统(主要包括车架、悬架、车轮)、转向系统和制动系统,底盘技术的好坏直接影响
    的头像 发表于 07-22 17:12 1362次阅读

    3D打印底盘开源分享

    电子发烧友网站提供《3D打印底盘开源分享.zip》资料免费下载
    发表于 07-06 14:43 0次下载
    3D打印<b class='flag-5'>底盘</b>开源分享