色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

Arduino篇—車輛自動走迷宮

冬至子 ? 來源:X的創客課堂 ? 作者:MRXY ? 2023-11-02 11:31 ? 次閱讀

課程目標

  • 學習走迷宮的右手法則的應用
  • 根據算法邏輯實現走迷宮功能
  • 能根據場地實際要求進行車輛調試

相關知識

**機器人迷宮項目:**是常見的機器人競賽項目,在一個搭建好的迷宮場景內,設計機器人,實現從入口順利抵達出口,根據完成時間的長短來進行評分。

右手法則: 針對有墻壁的迷宮,只要順著墻壁走,遇到可以轉向的口子始終向右,轉向失敗再向右轉到下一個可以走的方向,這種方法只對樹形迷宮有效。對于有循環的迷宮就需要設計更加智能化的機器人才能實現。

**紅外接近傳感器:**紅外接近傳感器是一種集發射與接收于一體的光電開關傳感器。當發出的紅外光碰撞到范圍內的目標時,它會反射到光電二極管上,從而實現監測判斷。

1.jpg

電路搭建

所需材料

ArduinoUNO * 1
紅外接近傳感器 * 3
上節課的車輛結構 * 1
LED * 1
杜邦線若干

電路連接

圖片

程序編寫

練習一:紅外接近傳感器控制開關燈

手靠近傳感器時,LED燈開,離開傳感器時,LED燈關。

圖形化方式:

讀取9號管腳上的信號值為低電平,說明有障礙物靠近,這時候點亮2號管腳上的LED。

圖片

代碼方式:

/* 項目名稱:紅外控制開關燈
 * 項目時間:2022.04.07
 * 項目作者:MRX
 */
int SensorPin = 9;
int LedPin = 2;
void setup() {
  pinMode(SensorPin,INPUT);
  pinMode(LedPin,OUTPUT);
}


void loop() {
  if(digitalRead(SensorPin)){
    digitalWrite(LedPin,LOW);
  }
  else{
    digitalWrite(LedPin,HIGH);
  }
}

練習二:沿墻面前進的小車

使用一個傳感器,讓小車能夠沿著墻面前行,效果如下:

圖片

原理分析:

右手法則邏輯分析。

圖片

電路接線:

圖片

圖形化方式:

圖片

代碼方式:

/* 項目名稱:小車貼墻走
 * 項目時間:2022.04.07
 * 項目作者:MRX
 */
int IN1 = 2;   // IN1 connected to pin 4
int IN2 = 4;   
int ENA = 3; 
int IN3 = 6;   // IN3 connected to pin 6
int IN4 = 7;   
int ENB = 5;  
int value = 255;   // the duty cycle
const int SensorPin = 10;


void Forward() {
  digitalWrite(IN1,HIGH);
  digitalWrite(IN2,LOW);
  analogWrite(ENA,value);
  digitalWrite(IN3,HIGH);
  digitalWrite(IN4,LOW);
  analogWrite(ENB,value);
}


void Back() {
  digitalWrite(IN1,LOW);
  digitalWrite(IN2,HIGH);
  analogWrite(ENA,value);
  digitalWrite(IN3,LOW);
  digitalWrite(IN4,HIGH);
  analogWrite(ENB,value);
}


void Right() {
  digitalWrite(IN1,LOW);
  digitalWrite(IN2,HIGH);
  analogWrite(ENA,value);
  digitalWrite(IN3,LOW);
  digitalWrite(IN4,HIGH);
  analogWrite(ENB,0);
}


void Left() {
  digitalWrite(IN1,LOW);
  digitalWrite(IN2,HIGH);
  analogWrite(ENA,0);
  digitalWrite(IN3,LOW);
  digitalWrite(IN4,HIGH);
  analogWrite(ENB,value);
}


void Stop() {
  digitalWrite(IN1,LOW);
  digitalWrite(IN2,LOW);
  analogWrite(ENA,0);
  digitalWrite(IN3,LOW);
  digitalWrite(IN4,LOW);
  analogWrite(ENB,0);
}


void setup(){
  Serial.begin(9600);
  for (int i = 2;i <= 7;i++){
    pinMode(i, OUTPUT);
    }
  pinMode(SensorPin,INPUT);
}

void loop(){
  if (digitalRead(SensorPin) == LOW) {
      Left();
    } else{
      Right();
    } 
}

練習三:走迷宮小車

編程控制小車沿著障礙物行走,效果如下:

圖片

圖形化方式:

圖片

代碼方式:

項目所涉及到的延時及電機正反轉,都要根據自己的接線來進行調整。

/* 項目名稱:走迷宮
 * 項目時間:2022.04.07
 * 項目作者:MRX
 */
int IN1 = 2;   // IN1 connected to pin 4
int IN2 = 4;   
int ENA = 3; 
int IN3 = 6;   // IN3 connected to pin 6
int IN4 = 7;   
int ENB = 5;  
int value = 255;   // the duty cycle


void Forward() {
  digitalWrite(IN1,HIGH);
  digitalWrite(IN2,LOW);
  analogWrite(ENA,value);
  digitalWrite(IN3,HIGH);
  digitalWrite(IN4,LOW);
  analogWrite(ENB,value);
}


void Back() {
  digitalWrite(IN1,LOW);
  digitalWrite(IN2,HIGH);
  analogWrite(ENA,value);
  digitalWrite(IN3,LOW);
  digitalWrite(IN4,HIGH);
  analogWrite(ENB,value);
}


void Right() {
  digitalWrite(IN1,LOW);
  digitalWrite(IN2,HIGH);
  analogWrite(ENA,value);
  digitalWrite(IN3,LOW);
  digitalWrite(IN4,HIGH);
  analogWrite(ENB,0);
}


void Left() {
  digitalWrite(IN1,LOW);
  digitalWrite(IN2,HIGH);
  analogWrite(ENA,0);
  digitalWrite(IN3,LOW);
  digitalWrite(IN4,HIGH);
  analogWrite(ENB,value);
}


void Stop() {
  digitalWrite(IN1,LOW);
  digitalWrite(IN2,LOW);
  analogWrite(ENA,0);
  digitalWrite(IN3,LOW);
  digitalWrite(IN4,LOW);
  analogWrite(ENB,0);
}


void TurnLeft() {
  digitalWrite(IN1,LOW);
  digitalWrite(IN2,HIGH);
  analogWrite(ENA,100);
  digitalWrite(IN3,HIGH);
  digitalWrite(IN4,LOW);
  analogWrite(ENB,100);
}


void setup(){
  for (int i = 2;i <= 7;i++){
    pinMode(i, OUTPUT);
    }
  for (int i = 8;i <= 10;i++){
    pinMode(i,INPUT);
  }

}

void loop(){
  if (digitalRead(8) == LOW) {
    TurnLeft();
    delay(500);


  } else if (digitalRead(9) == LOW) {
    TurnLeft();
    delay(200);
  } else if (digitalRead(10) == LOW) {
    Left();
  } else {
    Right();
  }
}
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 機器人
    +關注

    關注

    211

    文章

    28466

    瀏覽量

    207306
  • led燈
    +關注

    關注

    22

    文章

    1592

    瀏覽量

    108059
  • 紅外傳感器
    +關注

    關注

    9

    文章

    519

    瀏覽量

    47599
  • 光電二極管
    +關注

    關注

    10

    文章

    402

    瀏覽量

    35967
  • Arduino
    +關注

    關注

    188

    文章

    6471

    瀏覽量

    187223
收藏 人收藏

    評論

    相關推薦

    基于ARM的電腦鼠迷宮設計方案

    本文從分析“IEEE標準電腦鼠”迷宮比賽規則入手,介紹了電腦鼠硬件系統和軟件系統設計過程和流程。基于電腦鼠的產品具有廣泛的應用場合,譬如自動盲人導引小車、足球機器人、
    發表于 05-26 11:46 ?6788次閱讀
    基于ARM的電腦鼠<b class='flag-5'>走</b><b class='flag-5'>迷宮</b>設計方案

    關于迷宮小車。。。

    各位大神,求較簡單的迷宮小車,原理圖和迷宮程序。現在我真的是毫無頭緒啊。。。求救啊。。。
    發表于 05-05 23:14

    Labview寫的迷宮

    基于隊列的迷宮解決方案
    發表于 11-01 11:13

    基于arduino超聲波紅外【迷宮】小車設計

    最近到手基于arduino uno Rev3 智能小車。閑暇時間制作了這個迷宮的小車。這個小車通過4個紅外模塊循跡迷宮地面的黑線。通過超聲波傳感器檢測兩側和前方的距離來進行轉向。在制
    發表于 05-06 23:31

    3種C語言編寫迷宮的方法

    曾經聽說過一個迷宮的訣竅:順著墻沿一側。 (一直沿左側或一直沿右側)。本程序實現了這一 思想,小人一直沿左側迷宮是隨機生成的
    發表于 08-19 14:46 ?54次下載

    基于ARM的機器人迷宮控制系統與算法設計

    基于ARM的機器人迷宮控制系統與算法設計
    發表于 12-23 15:00 ?27次下載

    基于51單片機小車迷宮電路及代碼

    基于51單片機小車迷宮電路及代碼,包含原理圖及PCB,代碼及相關資料
    發表于 12-16 17:23 ?64次下載

    51單片機迷宮程序

    51單片機迷宮程序
    發表于 12-08 14:14 ?26次下載

    三個超聲波迷宮

    51小車迷宮
    發表于 11-25 17:57 ?1次下載

    Arduino迷宮游戲

    電子發燒友網站提供《Arduino迷宮游戲.zip》資料免費下載
    發表于 11-04 10:22 ?1次下載
    <b class='flag-5'>Arduino</b><b class='flag-5'>迷宮</b>游戲

    Arduino Uno平衡迷宮

    電子發燒友網站提供《用Arduino Uno平衡迷宮.zip》資料免費下載
    發表于 12-12 11:58 ?0次下載
    用<b class='flag-5'>Arduino</b> Uno平衡<b class='flag-5'>迷宮</b>

    Arduino和加速度傳感器制作數字滾球迷宮【后篇】

    :用Arduino和加速度傳感器制作數字滾球迷宮?這次將為大家介紹一個使用Arduino制作的獨特電子作品項目,將會分【前】和【后篇】
    的頭像 發表于 02-20 11:54 ?1731次閱讀
    用<b class='flag-5'>Arduino</b>和加速度傳感器制作數字滾球<b class='flag-5'>迷宮</b>【后篇】

    Arduino迷宮游戲開源分享

    電子發燒友網站提供《Arduino迷宮游戲開源分享.zip》資料免費下載
    發表于 06-09 15:19 ?1次下載
    <b class='flag-5'>Arduino</b><b class='flag-5'>迷宮</b>游戲開源分享

    DIY安卓+Arduino控制迷宮游戲

    電子發燒友網站提供《DIY安卓+Arduino控制迷宮游戲.zip》資料免費下載
    發表于 06-29 14:53 ?0次下載
    DIY安卓+<b class='flag-5'>Arduino</b>控制<b class='flag-5'>迷宮</b>游戲

    Arduino 3D迷宮

    電子發燒友網站提供《Arduino 3D迷宮.zip》資料免費下載
    發表于 07-10 09:44 ?0次下載
    <b class='flag-5'>Arduino</b> 3D<b class='flag-5'>迷宮</b>
    主站蜘蛛池模板: 国产国语在线播放视频| 两个客户一起吃我的奶| 日本高清无人区影院| 成人亚洲视频| 忘忧草研究所 麻豆| 国产亚洲精品网站在线视频 | 99热久久这里只精品国产WWW| 欧美最猛黑人XXXXWWW| 国产精品久久久久久免费播放| 夜夜艹日日干| 任你懆视频 这里只有精品| 国产一级特黄a大片99| 91麻豆精品国产一级| 色欲精品久久人妻AV中文字幕| 好紧小嫩嫩水的10p| 9久久99久久久精品齐齐综合色圆| 兽皇VIDEO另类HD| 老少配xxxxx欧美| 国产二级一片内射视频播放| 折磨比基尼美女挠肚子| 日本无修肉动漫在线观看| 九九热视频 这里有精品| 成人麻豆日韩在无码视频| 亚洲日本激情| 三级黃60分钟| 快播电影网站大全| 国产免费网站看v片在线| 99视频精品国产免费观看| 亚洲男人的天堂久久精品麻豆| 暖暖日本大全免费观看| 黄小飞二人转| 国产99久久| 97视频免费观看2区| 亚洲免费视频在线| 色噜噜视频| 欧美69xxx| 久久久精品免费视频| 国产女合集小岁9三部| 成人国产在线不卡视频| 2021全国精品卡一卡二| 亚洲精品久久无码AV片WWW|