首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >基于Arduino的避障小车

基于Arduino的避障小车

作者头像
逍遥子大表哥
发布2025-07-28 17:55:19
发布2025-07-28 17:55:19
10300
代码可运行
举报
文章被收录于专栏:kali blogkali blog
运行总次数:0
代码可运行

基于Arduino的避障小车,实现超声波和红外避障。代码分享如下:

代码

代码语言:javascript
代码运行次数:0
运行
复制
#include "qxmbot1.h"

volatile long g_frontDistance;
volatile long g_leftDistance;
volatile long g_rightDistance;

QXMBOT_SR04  g_QXMBOT_SR04Ult1(A4, A5);

QXMBOT1_motor  g_QXMBOT1_CarControl(2, 3, 4, 7, 5, 6);

QXMBOT_cloudServo G_QXMBOT_cloudServo1(9, OUTPUT);

QXMBOT1_avoidSensor  g_QXMBOT1_avoidSensor1(12, 13);

// 红外避障
void IR_Avoid() {
  // 当测距距离大于20cm就前进,否则后退
  if ((LOW == g_QXMBOT1_avoidSensor1.getAvoidStatus_L())) {
    g_QXMBOT1_CarControl.QXMBOT1_arCarRight(150, 150);

  } else if ((LOW == g_QXMBOT1_avoidSensor1.getAvoidStatus_R())) {
    g_QXMBOT1_CarControl.QXMBOT1_arCarLeft(150, 150);
  } else {
    g_QXMBOT1_CarControl.QXMBOT1_arCarForward(150, 150);

  }
}

void setup()
{
  g_frontDistance = 0;
  g_leftDistance = 0;
  g_rightDistance = 0;
  G_QXMBOT_cloudServo1.cloudServoContrl(90,100);
}

void loop()
{
  if (g_QXMBOT_SR04Ult1.QXMBOT_getDistance() < 30) {
    g_QXMBOT1_CarControl.QXMBOT1_arCarStops(150, 150);
    G_QXMBOT_cloudServo1.cloudServoContrl(180,800);
    g_leftDistance = g_QXMBOT_SR04Ult1.QXMBOT_DistanceAvg();
    G_QXMBOT_cloudServo1.cloudServoContrl(0,800);
    g_rightDistance = g_QXMBOT_SR04Ult1.QXMBOT_DistanceAvg();
    G_QXMBOT_cloudServo1.cloudServoContrl(90,800);
    g_frontDistance = g_QXMBOT_SR04Ult1.QXMBOT_DistanceAvg();
    if (g_frontDistance < 30) {
      if (g_leftDistance > g_rightDistance) {
        g_QXMBOT1_CarControl.QXMBOT1_arCarLeftTurn(255, 255);
        delay(100);

      } else if (g_leftDistance < g_rightDistance) {
        g_QXMBOT1_CarControl.QXMBOT1_arCarRightTurn(255, 255);
        delay(100);
      }

    } else {
      g_QXMBOT1_CarControl.QXMBOT1_arCarForward(150, 150);

    }

  } else {
    for (int i = 1; i <= 3600; i = i + (1)) {
      IR_Avoid();
    }

  }

  // 舵机回正

}

这里用到了qxmbot1.h文件,点击阅读原文可以下载。

视频效果

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2024-06-14,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 kali笔记 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 代码
  • 视频效果
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档