(RB-13K074)AS-4WD尋線避障移動機器人

來自ALSROBOT WiKi
2016年6月2日 (四) 17:10Arduino77討論 | 貢獻的版本

(差異) ←上一版本 | 最后版本 (差異) | 下一版本→ (差異)
跳轉至: 導航、 搜索
RB13K07401.png

目錄

產品概述

哈爾濱奧松機器人科技有限公司最新推出的AS-4WD尋線避障移動機器人套件是自主研發(fā)并生產的一款機器人套件。該套件可以智能判斷引導線并檢測躲避障礙物,可實現自動導引和避障功能,AS-4WD尋線避障移動機器人使用Mini紅外尋線傳感器感知引導線,使用Mini紅外避障傳感器感知障礙物。

產品清單

RB13K07402.png

配件參數

直流減速電機(1:48)

  1. 驅動電機齒輪箱減速比:1:48
  2. 無負載轉速(3V):168RPM
  3. 無負載轉速(6V):300RPM
  4. 無負載時電流(3V):90mA
  5. 無負載時電流(6V):100mA
  6. 扭矩大小 (3V): 0.04N.m
  7. 扭矩大小 (6V): 0.08N.m
  8. 尺寸大小:70.50 mm×27.00 mm×23.00 mm(長×寬×高)
  9. 重量大小: 約30g

電控部分資料

Carduino UNO控制器

Carduino UNO相關資料及使用方法

雙H橋電機驅動板

雙H橋電機驅動板相關資料及使用方法

Mini紅外尋線傳感器

Mini紅外尋線傳感器相關資料及使用方法

Mini紅外避障傳感器

Mini紅外避障傳感器相關資料及使用方法

傳感器擴展板

V5.0傳感器擴展板相關資料及使用方法

安裝步驟

步驟1:充電接口撥動開關連接線制作

充電接口撥動開關連接線制作步驟詳解

平臺安裝步驟

步驟1:平臺側板電機安裝

兩側電機安裝相同,注意安裝前將電機接線用電烙鐵焊接好,套上熱縮管加熱塑封。
使用零件:平臺側板*2個、直流減速電機*4個、M3*25螺絲*8個、M3六角螺母*8個

RB13K07403.png

步驟2:平臺底板安裝

使用零件:步驟1中安裝好電機的側板*2套、平臺底板*1個、M3*6螺絲*4個

RB13K07404.png

步驟3:雙H橋電機驅動板安裝

驅動板安裝方向隨意,注意同側電機接線方向順序,保證同側電機轉向是相同的。
使用零件:步驟2中的組合體、雙H橋直流電機驅動板*1個、M3*10尼龍柱*4個、M3六角螺母*4個、M3*6螺絲*4個

RB13K07405.png

步驟4:電池盒安裝

電池盒可用雙面膠固定,后輪電機接線需插入杜邦線帽,接入步進電機接口
使用零件:電池盒*1個或鋰電池*1塊

電池盒固定位置
鋰電池固定位置

步驟5:4WD端板安裝

使用零件:4WD端板*1個、步驟4中的組合體*1個、M3*6螺絲*4個、M3六角螺母*4個

RB13K07407.png

步驟6:充電接口、撥動開關安裝

使用零件:步驟1中制作好的充電開關接口連接線、4WD上板

RB13K07408.png

步驟7:Carduino UNO控制器安裝

使用零件:步驟6中的組合體、Carduino UNO控制器*1個、M3*10尼龍柱*3個、M3*6螺絲*3個、M3六角螺母*3個

RB13K07409.png

步驟8:避障傳感器安裝

使用零件:M3*20尼龍柱*3個、M3*6螺絲*3個、M3六角螺母*3個、避障傳感器*3個

RB13K07410.png

步驟9:尋線傳感器安裝

使用零件:尋線傳感器*5個、M3*8螺絲*5個、M3六角螺母*5個、步驟5中的組合體*1套

RB13K07411.png

步驟10:4WD上板安裝

使用零件:4WD平臺上板*1個、步驟9中的組合體*1套

RB13K07412.png

步驟11:4WD輪子安裝

使用零件:步驟9中的組合體*1套、4WD輪子*4個

RB13K07413.png

步驟12:V5.0傳感器擴展板插入

使用零件:V5.0傳感器擴展板*1個、步驟11中安裝好的平臺*1套

RB13K07415.png

整機測試

接線說明

接線圖:

RB13K07416.png

接線說明:

  • 數字口5→接雙H 橋驅動板的EB
  • 數字口6→接雙H 橋驅動板的I4
  • 數字口7→接雙H 橋驅動板的I3
  • 數字口8→接雙H 橋驅動板的I1
  • 數字口9→接雙H 橋驅動板的I2
  • 數字口10→接雙H 橋驅動板的EA
  • 尋線傳感器從左至右依次接Arduino 控制器的數字口2、數字口3、數字口4、數字口11、數字口12。
  • 左側避障傳感器接模擬口2、中間避障傳感器接模擬口1、右側避障傳感器接模擬口0。

例子程序

void setup()
{
  
  /*MsTimer2::set(1000, flash); // 500ms period
  MsTimer2::start();
  counterStart();*/
  pinMode(8,OUTPUT);//定義輸入、輸出接口
  pinMode(9,OUTPUT);
  pinMode(10,OUTPUT);
  pinMode(5,OUTPUT);
  pinMode(6,OUTPUT);
  pinMode(7,OUTPUT);
  pinMode(11,INPUT);
  pinMode(12,INPUT);
  pinMode(14,INPUT);
  pinMode(2,INPUT);
  pinMode(3,INPUT);
  pinMode(4,INPUT);
  
}
/*void counterStart()
{
  TCCR1A=0;                       
  TCCR1B=0;                
  TCNT1=0;                     
  TCCR1B = TCCR1B | 7; 
}
*/
void qianjin()//前進
{
     digitalWrite(10,300);//輸入數字量進行設定速度
     digitalWrite(5,300); 
     digitalWrite(9,HIGH);//使直流電機(右)順時針轉
     digitalWrite(8,LOW);
     digitalWrite(7,HIGH);//使直流電機(左)逆時針轉
     digitalWrite(6,LOW);
}
void zuozhuan()// 
{
     
     digitalWrite(10,100);//輸入數字量進行設定速度
     digitalWrite(5,100);
     digitalWrite(6,LOW);//使直流電機(右)逆時針轉
     digitalWrite(7,HIGH);
     digitalWrite(8,HIGH);//使直流電機(左)逆時針轉
     digitalWrite(9,LOW);
}
void youzhuan()//
{
     
     digitalWrite(10,100);//輸入數字量進行設定速度
     digitalWrite(5,100);
     digitalWrite(6,HIGH);//使直流電機(右)順時針轉
     digitalWrite(7,LOW);
     digitalWrite(8,LOW);//使直流電機(左)順時針轉
     digitalWrite(9,HIGH);
}
void tingzhi()//停止
{
     digitalWrite(6,HIGH);//使直流電機(右)制動
     digitalWrite(7,HIGH);
     digitalWrite(8,HIGH);//使直流電機(左)制動
     digitalWrite(9,HIGH);
}
void houtui(int a)
{
     analogWrite(10,a);//輸入模擬值進行設定速度

     analogWrite(5,a);
     digitalWrite(6,HIGH);//使直流電機(右)逆時針轉
     digitalWrite(7,LOW);
     digitalWrite(9,LOW);//使直流電機(左)順時針轉
     digitalWrite(8,HIGH);
     
}
void loop()
{
    int r,m,l;//定義尋線傳感器接口
    r=digitalRead(2);//定義右側尋線接口
    m=digitalRead(3);//定義中間尋線接口
    l=digitalRead(4);//定義左側尋線接口
    int r1,m1,l1;//定義避障傳感器接口
    r1=digitalRead(A1);//定義右側避障接口
    m1=digitalRead(11);//定義中間避障接口
    l1=digitalRead(12);//定義左側避障接口
   

   if(l==HIGH || m==HIGH || r==HIGH)//判斷是否有黑線 有則繼續(xù)
    {
      if(l==HIGH && m==HIGH && r==HIGH)
      qianjin();
      if(l==LOW && m==HIGH && r==LOW)
      qianjin();
      if(l==HIGH && m==LOW && r==LOW) 
      {
         zuozhuan();
         delay(400);
         tingzhi();
         delay(80);
      }
      if(l==LOW && m==LOW && r==HIGH)
      {
         youzhuan();
         delay(400);
         tingzhi();
         delay(80);
      }
      if(l==HIGH && m==HIGH && r==LOW)
      {
         zuozhuan();
         delay(400);
         tingzhi();
         delay(80);
      }
      if(l==LOW && m==HIGH && r==HIGH)
      {
         youzhuan();
         delay(400);
         tingzhi();
         delay(80);
      } 
    }
    if(l==LOW && m==LOW && r==LOW)//判斷是否有障礙 有則繼續(xù)
    {
       if(l1==HIGH && m1==HIGH && r1==HIGH)
       qianjin();
      if(l1==HIGH && m1==LOW && r1==HIGH)
      {
         houtui(200);
         delay(400);
         zuozhuan();
         delay(300);
      }
      if(l1==HIGH && m1==HIGH && r1==LOW)
      youzhuan();
      if(l1==LOW && m1==HIGH && r1==HIGH)
      zuozhuan();
      if(l1==HIGH && m1==LOW && r1==LOW)
      youzhuan();
      if(l1==LOW && m1==LOW && r1==HIGH)
      zuozhuan();
      if(l1==LOW && m1==LOW && r1==LOW)
      {
        houtui(200);
        delay(400);
        youzhuan();
        delay(300);
      }
    }
}

視頻演示

4wd xun xian01.png
4wd xun xian02.png


產品相關推薦

Erweima.png

產品購買地址

AS-4WD尋線避障移動機器人平臺

周邊產品推薦

Arduino 4WD鋁合金移動平臺車燈套件
Arduino 光電碼盤 光電測速傳感器

相關問題解答

AS-4WD 碰撞機器人如何安裝
4wd 紅外線巡線壁障車調試助手沒有反應

相關學習資料

視頻:機器人調試助手無線操控AS-4WD輪式機器人
視頻:Arduino-4WD移動機器人尋線功能演示
視頻:Arduino-4WD移動機器人碰撞功能演示
視頻:Arduino-4WD移動機器人追光功能演示
視頻:Arduino-4WD移動機器人尋線與避障功能演示
視頻:Arduino-4WD移動機器人偵測避障功能演示
視頻:直流減速電機驅動實例
奧松機器人技術論壇