“(RB-13K074)AS-4WD尋線避障移動(dòng)機(jī)器人”的版本間的差異

來自ALSROBOT WiKi
跳轉(zhuǎn)至: 導(dǎo)航、 搜索
?整機(jī)測試
?例子程序
 
(未顯示1個(gè)用戶的6個(gè)中間版本)
第4行: 第4行:
 
==產(chǎn)品清單==
 
==產(chǎn)品清單==
 
[[文件:RB13K07402.png|600px|有框|居中]]
 
[[文件:RB13K07402.png|600px|有框|居中]]
?
 
 
==配件參數(shù)==
 
==配件參數(shù)==
 
===直流減速電機(jī)(1:48)===
 
===直流減速電機(jī)(1:48)===
第32行: 第31行:
 
===平臺(tái)安裝步驟===
 
===平臺(tái)安裝步驟===
 
====步驟1:平臺(tái)側(cè)板電機(jī)安裝====
 
====步驟1:平臺(tái)側(cè)板電機(jī)安裝====
?
兩側(cè)電機(jī)安裝相同,注意安裝前將電機(jī)接線用電烙鐵焊接好,套上熱縮管加熱塑封。
+
兩側(cè)電機(jī)安裝相同,注意安裝前將電機(jī)接線用電烙鐵焊接好,套上熱縮管加熱塑封。<br/>
 +
使用零件:平臺(tái)側(cè)板*2個(gè)、直流減速電機(jī)*4個(gè)、M3*25螺絲*8個(gè)、M3六角螺母*8個(gè)<br/>
 
[[文件:RB13K07403.png|500px|有框|居中]]
 
[[文件:RB13K07403.png|500px|有框|居中]]
 
====步驟2:平臺(tái)底板安裝====
 
====步驟2:平臺(tái)底板安裝====
 +
使用零件:步驟1中安裝好電機(jī)的側(cè)板*2套、平臺(tái)底板*1個(gè)、M3*6螺絲*4個(gè)
 
[[文件:RB13K07404.png|500px|有框|居中]]
 
[[文件:RB13K07404.png|500px|有框|居中]]
 
====步驟3:雙H橋電機(jī)驅(qū)動(dòng)板安裝====
 
====步驟3:雙H橋電機(jī)驅(qū)動(dòng)板安裝====
?
驅(qū)動(dòng)板安裝方向隨意,注意同側(cè)電機(jī)接線方向順序,保證同側(cè)電機(jī)轉(zhuǎn)向是相同的。
+
驅(qū)動(dòng)板安裝方向隨意,注意同側(cè)電機(jī)接線方向順序,保證同側(cè)電機(jī)轉(zhuǎn)向是相同的。<br/>
 +
使用零件:步驟2中的組合體、雙H橋直流電機(jī)驅(qū)動(dòng)板*1個(gè)、M3*10尼龍柱*4個(gè)、M3六角螺母*4個(gè)、M3*6螺絲*4個(gè)<br/>
 
[[文件:RB13K07405.png|500px|有框|居中]]
 
[[文件:RB13K07405.png|500px|有框|居中]]
 
====步驟4:電池盒安裝====
 
====步驟4:電池盒安裝====
?
電池盒可用雙面膠固定,后輪電機(jī)接線需插入杜邦線帽,接入步進(jìn)電機(jī)接口
+
電池盒可用雙面膠固定,后輪電機(jī)接線需插入杜邦線帽,接入步進(jìn)電機(jī)接口<br/>
 +
使用零件:電池盒*1個(gè)或鋰電池*1塊
 
[[文件:RB13K07406.png|500px|有框|居中|電池盒固定位置]]
 
[[文件:RB13K07406.png|500px|有框|居中|電池盒固定位置]]
 
[[文件:RB13K07414.png|500px|有框|居中|鋰電池固定位置]]
 
[[文件:RB13K07414.png|500px|有框|居中|鋰電池固定位置]]
 
====步驟5:4WD端板安裝====
 
====步驟5:4WD端板安裝====
 +
使用零件:4WD端板*1個(gè)、步驟4中的組合體*1個(gè)、M3*6螺絲*4個(gè)、M3六角螺母*4個(gè)<br/>
 
[[文件:RB13K07407.png|500px|有框|居中|]]
 
[[文件:RB13K07407.png|500px|有框|居中|]]
 
====步驟6:充電接口、撥動(dòng)開關(guān)安裝====
 
====步驟6:充電接口、撥動(dòng)開關(guān)安裝====
 +
使用零件:步驟1中制作好的充電開關(guān)接口連接線、4WD上板<br/>
 
[[文件:RB13K07408.png|500px|有框|居中|]]
 
[[文件:RB13K07408.png|500px|有框|居中|]]
 
====步驟7:Carduino UNO控制器安裝====
 
====步驟7:Carduino UNO控制器安裝====
 +
使用零件:步驟6中的組合體、Carduino UNO控制器*1個(gè)、M3*10尼龍柱*3個(gè)、M3*6螺絲*3個(gè)、M3六角螺母*3個(gè)<br/>
 
[[文件:RB13K07409.png|500px|有框|居中|]]
 
[[文件:RB13K07409.png|500px|有框|居中|]]
 
====步驟8:避障傳感器安裝====
 
====步驟8:避障傳感器安裝====
 +
使用零件:M3*20尼龍柱*3個(gè)、M3*6螺絲*3個(gè)、M3六角螺母*3個(gè)、避障傳感器*3個(gè)<br/>
 
[[文件:RB13K07410.png|500px|有框|居中|]]
 
[[文件:RB13K07410.png|500px|有框|居中|]]
 
====步驟9:尋線傳感器安裝====
 
====步驟9:尋線傳感器安裝====
 +
使用零件:尋線傳感器*5個(gè)、M3*8螺絲*5個(gè)、M3六角螺母*5個(gè)、步驟5中的組合體*1套<br/>
 
[[文件:RB13K07411.png|500px|有框|居中|]]
 
[[文件:RB13K07411.png|500px|有框|居中|]]
 
====步驟10:4WD上板安裝====
 
====步驟10:4WD上板安裝====
 +
使用零件:4WD平臺(tái)上板*1個(gè)、步驟9中的組合體*1套<br/>
 
[[文件:RB13K07412.png|500px|有框|居中|]]
 
[[文件:RB13K07412.png|500px|有框|居中|]]
 
====步驟11:4WD輪子安裝====
 
====步驟11:4WD輪子安裝====
 +
使用零件:步驟9中的組合體*1套、4WD輪子*4個(gè)<br/>
 
[[文件:RB13K07413.png|500px|有框|居中|]]
 
[[文件:RB13K07413.png|500px|有框|居中|]]
 
====步驟12:V5.0傳感器擴(kuò)展板插入====
 
====步驟12:V5.0傳感器擴(kuò)展板插入====
 +
使用零件:V5.0傳感器擴(kuò)展板*1個(gè)、步驟11中安裝好的平臺(tái)*1套<br/>
 
[[文件:RB13K07415.png|500px|有框|居中|]]
 
[[文件:RB13K07415.png|500px|有框|居中|]]
  
第63行: 第74行:
 
===接線說明===
 
===接線說明===
 
接線圖:<br/>
 
接線圖:<br/>
?
[[文件:RB13K07416.png|500px|有框|]]
+
[[文件:RB13K07416.png|500px|有框|居中]]
 
接線說明:<br/>
 
接線說明:<br/>
 
* 數(shù)字口5→接雙H 橋驅(qū)動(dòng)板的EB
 
* 數(shù)字口5→接雙H 橋驅(qū)動(dòng)板的EB
第71行: 第82行:
 
* 數(shù)字口9→接雙H 橋驅(qū)動(dòng)板的I2
 
* 數(shù)字口9→接雙H 橋驅(qū)動(dòng)板的I2
 
* 數(shù)字口10→接雙H 橋驅(qū)動(dòng)板的EA
 
* 數(shù)字口10→接雙H 橋驅(qū)動(dòng)板的EA
?
* 尋線傳感器從左至右一次接Arduino 控制器的數(shù)字口2、數(shù)字口3、數(shù)字口4、數(shù)字口11、數(shù)字口12。
+
* 尋線傳感器從左至右依次接Arduino 控制器的數(shù)字口2、數(shù)字口3、數(shù)字口4、數(shù)字口11、數(shù)字口12。
 
* 左側(cè)避障傳感器接模擬口2、中間避障傳感器接模擬口1、右側(cè)避障傳感器接模擬口0。
 
* 左側(cè)避障傳感器接模擬口2、中間避障傳感器接模擬口1、右側(cè)避障傳感器接模擬口0。
 +
 
===例子程序===
 
===例子程序===
 
<pre style="color:blue">
 
<pre style="color:blue">
 
void setup()
 
void setup()
 
{
 
{
?
pinMode(8,OUTPUT);//定義I1 接口
+
 
?
pinMode(9,OUTPUT);//定義I2 接口
+
  /*MsTimer2::set(1000, flash); // 500ms period
?
pinMode(10,OUTPUT);//定義EA(PWM 調(diào)速)接口
+
  MsTimer2::start();
?
pinMode(5,OUTPUT);//定義EB(PWM 調(diào)速)接口
+
  counterStart();*/
?
pinMode(6,OUTPUT);//定義I4 接口
+
  pinMode(8,OUTPUT);//定義輸入、輸出接口
?
pinMode(7,OUTPUT);//定義I3 接口
+
  pinMode(9,OUTPUT);
?
pinMode(2,INPUT);//定義尋線
+
  pinMode(10,OUTPUT);
?
pinMode(3,INPUT);//定義尋線
+
  pinMode(5,OUTPUT);
?
pinMode(4,INPUT);//定義尋線
+
  pinMode(6,OUTPUT);
?
pinMode(11,INPUT);//定義尋線
+
  pinMode(7,OUTPUT);
?
pinMode(12,INPUT);//定義尋線
+
  pinMode(11,INPUT);
?
pinMode(14,INPUT);//定義避障
+
  pinMode(12,INPUT);
?
pinMode(15,INPUT);//定義避障
+
  pinMode(14,INPUT);
?
pinMode(15,INPUT);//定義避障
+
  pinMode(2,INPUT);
 +
  pinMode(3,INPUT);
 +
  pinMode(4,INPUT);
 +
 
 
}
 
}
?
void qianjin()//前進(jìn)
+
/*void counterStart()
 
{
 
{
?
analogWrite(10,110);//輸入模擬值進(jìn)行設(shè)定速度
+
  TCCR1A=0;                      
?
analogWrite(5,110);
+
  TCCR1B=0;              
?
digitalWrite(7,HIGH);//使直流電機(jī)運(yùn)轉(zhuǎn)
+
  TCNT1=0;                    
?
digitalWrite(6,LOW);
+
  TCCR1B = TCCR1B | 7;  
?
digitalWrite(8,LOW);//使直流電機(jī)運(yùn)轉(zhuǎn)
+
?
digitalWrite(9,HIGH);
+
 
}
 
}
?
void youzhuan1()//右轉(zhuǎn)
+
*/
 +
void qianjin()//前進(jìn)
 
{
 
{
?
analogWrite(10,110);//輸入模擬值進(jìn)行設(shè)定速度
+
    digitalWrite(10,300);//輸入數(shù)字量進(jìn)行設(shè)定速度
?
analogWrite(5,110);
+
    digitalWrite(5,300);  
?
digitalWrite(7,LOW);//使直流電機(jī)運(yùn)轉(zhuǎn)
+
    digitalWrite(9,HIGH);//使直流電機(jī)(右)順時(shí)針轉(zhuǎn)
?
digitalWrite(6,HIGH);
+
    digitalWrite(8,LOW);
?
digitalWrite(8,LOW);//使直流電機(jī)運(yùn)轉(zhuǎn)
+
    digitalWrite(7,HIGH);//使直流電機(jī)(左)逆時(shí)針轉(zhuǎn)
?
digitalWrite(9,HIGH);
+
    digitalWrite(6,LOW);
 
}
 
}
?
void youzhuan2()//右轉(zhuǎn)
+
void zuozhuan()//  
 
{
 
{
?
analogWrite(10,110);//輸入模擬值進(jìn)行設(shè)定速度
+
   
?
analogWrite(5,110);
+
    digitalWrite(10,100);//輸入數(shù)字量進(jìn)行設(shè)定速度
?
digitalWrite(7,LOW);//使直流電機(jī)運(yùn)轉(zhuǎn)
+
    digitalWrite(5,100);
?
digitalWrite(6,HIGH);
+
    digitalWrite(6,LOW);//使直流電機(jī)(右)逆時(shí)針轉(zhuǎn)
?
digitalWrite(8,LOW);//使直流電機(jī)運(yùn)轉(zhuǎn)
+
    digitalWrite(7,HIGH);
?
digitalWrite(9,HIGH);
+
    digitalWrite(8,HIGH);//使直流電機(jī)(左)逆時(shí)針轉(zhuǎn)
 +
    digitalWrite(9,LOW);
 
}
 
}
?
void zuozhuan1()//左轉(zhuǎn)
+
void youzhuan()//
 
{
 
{
?
analogWrite(10,110);//輸入模擬值進(jìn)行設(shè)定速度
+
   
?
analogWrite(5,110);
+
    digitalWrite(10,100);//輸入數(shù)字量進(jìn)行設(shè)定速度
?
digitalWrite(7,HIGH);//使直流電機(jī)運(yùn)轉(zhuǎn)
+
    digitalWrite(5,100);
?
digitalWrite(6,LOW);
+
    digitalWrite(6,HIGH);//使直流電機(jī)(右)順時(shí)針轉(zhuǎn)
?
digitalWrite(8,HIGH);//使直流電機(jī)運(yùn)轉(zhuǎn)
+
    digitalWrite(7,LOW);
?
digitalWrite(9,LOW);
+
    digitalWrite(8,LOW);//使直流電機(jī)(左)順時(shí)針轉(zhuǎn)
?
}
+
    digitalWrite(9,HIGH);
?
void zuozhuan2()//左轉(zhuǎn)
+
?
{
+
?
analogWrite(10,110);//輸入模擬值進(jìn)行設(shè)定速度
+
?
analogWrite(5,110);
+
?
digitalWrite(7,HIGH);//使直流電機(jī)運(yùn)轉(zhuǎn)
+
?
digitalWrite(6,LOW);
+
?
digitalWrite(8,HIGH);//使直流電機(jī)運(yùn)轉(zhuǎn)
+
?
digitalWrite(9,LOW);
+
 
}
 
}
 
void tingzhi()//停止
 
void tingzhi()//停止
 
{
 
{
?
digitalWrite(7,HIGH);//使直流電機(jī)(右)停轉(zhuǎn)
+
    digitalWrite(6,HIGH);//使直流電機(jī)(右)制動(dòng)
?
digitalWrite(6,HIGH);
+
    digitalWrite(7,HIGH);
?
digitalWrite(8,HIGH);//使直流電機(jī)(左)停轉(zhuǎn)
+
    digitalWrite(8,HIGH);//使直流電機(jī)(左)制動(dòng)
?
digitalWrite(9,HIGH);
+
    digitalWrite(9,HIGH);
 
}
 
}
?
void houtui()//后退
+
void houtui(int a)
 
{
 
{
?
analogWrite(10,110);//輸入模擬值進(jìn)行設(shè)定速度
+
    analogWrite(10,a);//輸入模擬值進(jìn)行設(shè)定速度
?
analogWrite(5,110);
+
 
?
digitalWrite(7,LOW);//使直流電機(jī)運(yùn)轉(zhuǎn)
+
    analogWrite(5,a);
?
digitalWrite(6,HIGH);
+
    digitalWrite(6,HIGH);//使直流電機(jī)(右)逆時(shí)針轉(zhuǎn)
?
digitalWrite(8,HIGH);//使直流電機(jī)運(yùn)轉(zhuǎn)
+
    digitalWrite(7,LOW);
?
digitalWrite(9,LOW);
+
    digitalWrite(9,LOW);//使直流電機(jī)(左)順時(shí)針轉(zhuǎn)
 +
    digitalWrite(8,HIGH);
 +
   
 
}
 
}
 
void loop()
 
void loop()
 
{
 
{
?
int l,m1,m2,m3,r,b1,b2,b3;
+
    int r,m,l;//定義尋線傳感器接口
?
l=digitalRead(12);
+
    r=digitalRead(2);//定義右側(cè)尋線接口
?
m1=digitalRead(11);
+
    m=digitalRead(3);//定義中間尋線接口
?
m2=digitalRead(4);
+
    l=digitalRead(4);//定義左側(cè)尋線接口
?
m3=digitalRead(3);
+
    int r1,m1,l1;//定義避障傳感器接口
?
r=digitalRead(2);
+
    r1=digitalRead(A1);//定義右側(cè)避障接口
?
b1=digitalRead(14);
+
    m1=digitalRead(11);//定義中間避障接口
?
b2=digitalRead(15);
+
    l1=digitalRead(12);//定義左側(cè)避障接口
?
b3=digitalRead(16);
+
 
?
if(l==LOW || m1==LOW || m2==LOW || m3==LOW || r==LOW)
+
 
?
//判斷是否有黑線有則繼續(xù)
+
  if(l==HIGH || m==HIGH || r==HIGH)//判斷是否有黑線 有則繼續(xù)
?
{
+
    {
?
if(l==LOW && m1==LOW && m2==LOW && m3==LOW && r==LOW)
+
      if(l==HIGH && m==HIGH && r==HIGH)
?
qianjin();
+
      qianjin();
?
if(l==HIGH && m1==HIGH && m2==LOW && m3==HIGH && r==HIGH)
+
      if(l==LOW && m==HIGH && r==LOW)
?
qianjin();
+
      qianjin();
?
if(l==HIGH && m1==HIGH && m2==LOW && m3==LOW && r==HIGH)
+
      if(l==HIGH && m==LOW && r==LOW)  
?
youzhuan1();
+
      {
?
if(l==HIGH && m1==HIGH && m2==HIGH && m3==LOW && r==LOW)
+
        zuozhuan();
?
youzhuan2();
+
        delay(400);
?
if(l==HIGH && m1==HIGH && m2==HIGH && m3==LOW && r==HIGH)
+
        tingzhi();
?
youzhuan1();
+
        delay(80);
?
if(l==HIGH && m1==HIGH && m2==HIGH && m3==HIGH && r==LOW)
+
      }
?
youzhuan2();
+
      if(l==LOW && m==LOW && r==HIGH)
?
if(l==HIGH && m1==LOW && m2==LOW && m3==HIGH && r==HIGH)
+
      {
?
zuozhuan1();
+
        youzhuan();
?
if(l==LOW && m1==LOW && m2==HIGH && m3==HIGH && r==HIGH)
+
        delay(400);
?
zuozhuan2();
+
        tingzhi();
?
if(l==HIGH && m1==LOW && m2==HIGH && m3==HIGH && r==HIGH)
+
        delay(80);
?
zuozhuan1();
+
      }
?
if(l==LOW && m1==HIGH && m2==HIGH && m3==HIGH && r==HIGH)
+
      if(l==HIGH && m==HIGH && r==LOW)
?
zuozhuan2();
+
      {
?
}
+
        zuozhuan();
?
if(l==HIGH && m1==HIGH && m2==HIGH && m3==HIGH && r==HIGH)
+
        delay(400);
?
//無黑線情況下判斷是否有障礙有則繼續(xù)
+
        tingzhi();
?
{
+
        delay(80);
?
if(b1==HIGH && b2==HIGH && b3==HIGH)
+
      }
?
qianjin();
+
      if(l==LOW && m==HIGH && r==HIGH)
?
if(b1==HIGH && b2==HIGH && b3==LOW)
+
      {
?
{
+
        youzhuan();
?
houtui();
+
        delay(400);
?
delay(300);
+
        tingzhi();
?
zuozhuan1();
+
        delay(80);
?
delay(300);
+
      }  
?
}
+
    }
?
if(b1==HIGH && b2==LOW && b3==LOW)
+
    if(l==LOW && m==LOW && r==LOW)//判斷是否有障礙 有則繼續(xù)
?
{
+
    {
?
houtui();
+
      if(l1==HIGH && m1==HIGH && r1==HIGH)
?
delay(300);
+
      qianjin();
?
zuozhuan1();
+
      if(l1==HIGH && m1==LOW && r1==HIGH)
?
delay(300);
+
      {
?
}
+
        houtui(200);
?
if(b1==LOW && b2==HIGH && b3==HIGH)
+
        delay(400);
?
{
+
        zuozhuan();
?
houtui();
+
        delay(300);
?
delay(300);
+
      }
?
youzhuan1();
+
      if(l1==HIGH && m1==HIGH && r1==LOW)
?
delay(300);
+
      youzhuan();
?
}
+
      if(l1==LOW && m1==HIGH && r1==HIGH)
?
if(b1==LOW && b2==LOW && b3==HIGH)
+
      zuozhuan();
?
{
+
      if(l1==HIGH && m1==LOW && r1==LOW)
?
houtui();
+
      youzhuan();
?
delay(300);
+
      if(l1==LOW && m1==LOW && r1==HIGH)
?
youzhuan1();
+
      zuozhuan();
?
delay(300);
+
      if(l1==LOW && m1==LOW && r1==LOW)
?
}
+
      {
?
if(b1==LOW && b2==LOW && b3==LOW)
+
        houtui(200);
?
{
+
        delay(400);
?
houtui();
+
        youzhuan();
?
delay(300);
+
        delay(300);
?
youzhuan1();
+
      }
?
delay(300);
+
    }
?
}
+
?
}
+
 
}
 
}
 +
 
</pre>
 
</pre>
  
 +
==視頻演示==
 +
[[File:4wd xun xian01.png|400px|左|link=http://v.youku.com/v_show/id_XMjgwNTg5NTI4.html?from=y1.7-2]]
 +
[[File:4wd xun xian02.png|400px|居中|link=http://v.youku.com/v_show/id_XMjgwMjk0NDE2.html?from=y1.7-2]]
 +
<br/>
 
==產(chǎn)品相關(guān)推薦==
 
==產(chǎn)品相關(guān)推薦==
 
[[文件:erweima.png|230px|無框|右]]
 
[[文件:erweima.png|230px|無框|右]]

2016年6月2日 (四) 17:10的最后版本

RB13K07401.png

目錄

產(chǎn)品概述

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

產(chǎn)品清單

RB13K07402.png

配件參數(shù)

直流減速電機(jī)(1:48)

  1. 驅(qū)動(dòng)電機(jī)齒輪箱減速比:1:48
  2. 無負(fù)載轉(zhuǎn)速(3V):168RPM
  3. 無負(fù)載轉(zhuǎn)速(6V):300RPM
  4. 無負(fù)載時(shí)電流(3V):90mA
  5. 無負(fù)載時(shí)電流(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相關(guān)資料及使用方法

雙H橋電機(jī)驅(qū)動(dòng)板

雙H橋電機(jī)驅(qū)動(dòng)板相關(guān)資料及使用方法

Mini紅外尋線傳感器

Mini紅外尋線傳感器相關(guān)資料及使用方法

Mini紅外避障傳感器

Mini紅外避障傳感器相關(guān)資料及使用方法

傳感器擴(kuò)展板

V5.0傳感器擴(kuò)展板相關(guān)資料及使用方法

安裝步驟

步驟1:充電接口撥動(dòng)開關(guān)連接線制作

充電接口撥動(dòng)開關(guān)連接線制作步驟詳解

平臺(tái)安裝步驟

步驟1:平臺(tái)側(cè)板電機(jī)安裝

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

RB13K07403.png

步驟2:平臺(tái)底板安裝

使用零件:步驟1中安裝好電機(jī)的側(cè)板*2套、平臺(tái)底板*1個(gè)、M3*6螺絲*4個(gè)

RB13K07404.png

步驟3:雙H橋電機(jī)驅(qū)動(dòng)板安裝

驅(qū)動(dòng)板安裝方向隨意,注意同側(cè)電機(jī)接線方向順序,保證同側(cè)電機(jī)轉(zhuǎn)向是相同的。
使用零件:步驟2中的組合體、雙H橋直流電機(jī)驅(qū)動(dòng)板*1個(gè)、M3*10尼龍柱*4個(gè)、M3六角螺母*4個(gè)、M3*6螺絲*4個(gè)

RB13K07405.png

步驟4:電池盒安裝

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

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

步驟5:4WD端板安裝

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

RB13K07407.png

步驟6:充電接口、撥動(dòng)開關(guān)安裝

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

RB13K07408.png

步驟7:Carduino UNO控制器安裝

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

RB13K07409.png

步驟8:避障傳感器安裝

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

RB13K07410.png

步驟9:尋線傳感器安裝

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

RB13K07411.png

步驟10:4WD上板安裝

使用零件:4WD平臺(tái)上板*1個(gè)、步驟9中的組合體*1套

RB13K07412.png

步驟11:4WD輪子安裝

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

RB13K07413.png

步驟12:V5.0傳感器擴(kuò)展板插入

使用零件:V5.0傳感器擴(kuò)展板*1個(gè)、步驟11中安裝好的平臺(tái)*1套

RB13K07415.png

整機(jī)測試

接線說明

接線圖:

RB13K07416.png

接線說明:

  • 數(shù)字口5→接雙H 橋驅(qū)動(dòng)板的EB
  • 數(shù)字口6→接雙H 橋驅(qū)動(dòng)板的I4
  • 數(shù)字口7→接雙H 橋驅(qū)動(dòng)板的I3
  • 數(shù)字口8→接雙H 橋驅(qū)動(dòng)板的I1
  • 數(shù)字口9→接雙H 橋驅(qū)動(dòng)板的I2
  • 數(shù)字口10→接雙H 橋驅(qū)動(dòng)板的EA
  • 尋線傳感器從左至右依次接Arduino 控制器的數(shù)字口2、數(shù)字口3、數(shù)字口4、數(shù)字口11、數(shù)字口12。
  • 左側(cè)避障傳感器接模擬口2、中間避障傳感器接模擬口1、右側(cè)避障傳感器接模擬口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()//前進(jìn)
{
     digitalWrite(10,300);//輸入數(shù)字量進(jìn)行設(shè)定速度
     digitalWrite(5,300); 
     digitalWrite(9,HIGH);//使直流電機(jī)(右)順時(shí)針轉(zhuǎn)
     digitalWrite(8,LOW);
     digitalWrite(7,HIGH);//使直流電機(jī)(左)逆時(shí)針轉(zhuǎn)
     digitalWrite(6,LOW);
}
void zuozhuan()// 
{
     
     digitalWrite(10,100);//輸入數(shù)字量進(jìn)行設(shè)定速度
     digitalWrite(5,100);
     digitalWrite(6,LOW);//使直流電機(jī)(右)逆時(shí)針轉(zhuǎn)
     digitalWrite(7,HIGH);
     digitalWrite(8,HIGH);//使直流電機(jī)(左)逆時(shí)針轉(zhuǎn)
     digitalWrite(9,LOW);
}
void youzhuan()//
{
     
     digitalWrite(10,100);//輸入數(shù)字量進(jìn)行設(shè)定速度
     digitalWrite(5,100);
     digitalWrite(6,HIGH);//使直流電機(jī)(右)順時(shí)針轉(zhuǎn)
     digitalWrite(7,LOW);
     digitalWrite(8,LOW);//使直流電機(jī)(左)順時(shí)針轉(zhuǎn)
     digitalWrite(9,HIGH);
}
void tingzhi()//停止
{
     digitalWrite(6,HIGH);//使直流電機(jī)(右)制動(dòng)
     digitalWrite(7,HIGH);
     digitalWrite(8,HIGH);//使直流電機(jī)(左)制動(dòng)
     digitalWrite(9,HIGH);
}
void houtui(int a)
{
     analogWrite(10,a);//輸入模擬值進(jìn)行設(shè)定速度

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

   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


產(chǎn)品相關(guān)推薦

Erweima.png

產(chǎn)品購買地址

AS-4WD尋線避障移動(dòng)機(jī)器人平臺(tái)

周邊產(chǎn)品推薦

Arduino 4WD鋁合金移動(dòng)平臺(tái)車燈套件
Arduino 光電碼盤 光電測速傳感器

相關(guān)問題解答

AS-4WD 碰撞機(jī)器人如何安裝
4wd 紅外線巡線壁障車調(diào)試助手沒有反應(yīng)

相關(guān)學(xué)習(xí)資料

視頻:機(jī)器人調(diào)試助手無線操控AS-4WD輪式機(jī)器人
視頻:Arduino-4WD移動(dòng)機(jī)器人尋線功能演示
視頻:Arduino-4WD移動(dòng)機(jī)器人碰撞功能演示
視頻:Arduino-4WD移動(dòng)機(jī)器人追光功能演示
視頻:Arduino-4WD移動(dòng)機(jī)器人尋線與避障功能演示
視頻:Arduino-4WD移動(dòng)機(jī)器人偵測避障功能演示
視頻:直流減速電機(jī)驅(qū)動(dòng)實(shí)例
奧松機(jī)器人技術(shù)論壇