在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

arduino小車詳細(xì)制作教程

454398 ? 作者:工程師吳畏 ? 2018-09-18 10:37 ? 次閱讀

第一次做,很粗糙,都是模塊的組合,變速箱用的是模型小車的,最大的難點(diǎn)在于變速箱和馬達(dá)齒輪的配合因?yàn)橥耆遣慌涮椎膬蓸訓(xùn)|西,視頻中小車也有走外的跡象,配合是主要問(wèn)題,兩塊亞克力板的孔沒(méi)有打好,在安裝上還是有瑕疵

智能小車接線

arduino小車詳細(xì)制作教程

第一刀開(kāi)啟arduino智能小車DIY的第一步

重要的電機(jī)驅(qū)動(dòng)擴(kuò)展板到了

最初的設(shè)想想加個(gè)散熱扇

這邊用到了接口擴(kuò)展板

舵機(jī)到貨,有點(diǎn)小貴,金屬齒的

搭建中,,,

程序DEBUG中

完成圖

變速箱和馬達(dá)

為了使用大扭力電機(jī),改變了原有變速箱的安裝方式

代碼部分

//超聲波智能避障車程序(ARDUINO)

#include

int pinI1=5;//定義I1接口(I1-I4是l298N擴(kuò)展模塊上的電機(jī)輸出接口)

int pinI2=4;//定義I2接口

int pinI3=7;//定義I3接口

int pinI4=6;//定義I4接口

int inputPin = A1; // 定義超音波信號(hào)接收腳位(插錯(cuò)的后果,讀值為0,舵機(jī)不停地轉(zhuǎn)頭)

int outputPin =A0; // 定義超音波信號(hào)發(fā)射腳位

int Fspeedd = 0; // 前速

int Rspeedd = 0; // 右速

int Lspeedd = 0; // 左速

int directionn = 0; // 前=8 後=2 左=4 右=6

Servo myservo; // 設(shè) myservo

int delay_time = 250; // 伺服馬達(dá)轉(zhuǎn)向後的穩(wěn)定時(shí)間

int Fgo = 8; // 前進(jìn)

int Rgo = 6; // 右轉(zhuǎn)

int Lgo = 4; // 左轉(zhuǎn)

int Bgo = 2; // 倒車

void setup()

{

Serial.begin(9600); // 定義馬達(dá)輸出腳位

pinMode(pinI1,OUTPUT);

pinMode(pinI2,OUTPUT);

pinMode(pinI3,OUTPUT);

pinMode(pinI4,OUTPUT);

pinMode(inputPin, INPUT); // 定義超音波輸入腳位

pinMode(outputPin, OUTPUT); // 定義超音波輸出腳位

myservo.attach(9); // 定義伺服馬達(dá)輸出第9腳位(PWM)

}

void advance(int a) // 前進(jìn)

{

digitalWrite(pinI4,LOW);//使直流電機(jī)(右)逆時(shí)針轉(zhuǎn)

digitalWrite(pinI3,HIGH);

digitalWrite(pinI1,LOW);//使直流電機(jī)(左)順時(shí)針轉(zhuǎn)

digitalWrite(pinI2,HIGH);

delay(a * 100);

}

void turnR(int b) //右轉(zhuǎn)(雙輪)

{

digitalWrite(pinI4,HIGH);//使直流電機(jī)(右)順時(shí)針轉(zhuǎn)

digitalWrite(pinI3,LOW);

digitalWrite(pinI1,LOW);//使直流電機(jī)(左)順時(shí)針轉(zhuǎn)

digitalWrite(pinI2,HIGH);

delay(b * 100);

}

void turnL(int c) //左轉(zhuǎn)(雙輪)

{

digitalWrite(pinI4,LOW);//使直流電機(jī)(右)逆時(shí)針轉(zhuǎn)

digitalWrite(pinI3,HIGH);

digitalWrite(pinI1,HIGH);//使直流電機(jī)(左)逆時(shí)針轉(zhuǎn)

digitalWrite(pinI2,LOW);

delay(c * 100);

}

void stopp(int d) //停止

{

digitalWrite(pinI4,HIGH);//使直流電機(jī)(右)剎車

digitalWrite(pinI3,HIGH);

digitalWrite(pinI1,HIGH);//使直流電機(jī)(左)剎車

digitalWrite(pinI2,HIGH);

delay(d * 100);

}

void back(int e) //後退

{

digitalWrite(pinI4,HIGH);//使直流電機(jī)(右)順時(shí)針轉(zhuǎn)

digitalWrite(pinI3,LOW);

digitalWrite(pinI1,HIGH);//使直流電機(jī)(左)逆時(shí)針轉(zhuǎn)

digitalWrite(pinI2,LOW);

delay(e * 100);

}

void detection() //測(cè)量3個(gè)角度(0.90.179)

{

int delay_time = 250; // 伺服馬達(dá)轉(zhuǎn)向後的穩(wěn)定時(shí)間

ask_pin_F(); // 讀取前方距離

if(Fspeedd 《 10) // 假如前方距離小於10公分

{

stopp(1); // 清除輸出資料

back(2); // 後退 0.2秒

}

if(Fspeedd 《 25) // 假如前方距離小於25公分

{

stopp(1); // 清除輸出資料

ask_pin_L(); // 讀取左方距離

delay(delay_time); // 等待伺服馬達(dá)穩(wěn)定

ask_pin_R(); // 讀取右方距離

delay(delay_time); // 等待伺服馬達(dá)穩(wěn)定

if(Lspeedd 》 Rspeedd) //假如 左邊距離大於右邊距離

{

directionn = Rgo; //向右走

}

if(Lspeedd 《= Rspeedd) //假如 左邊距離小於或等於右邊距離

{

directionn = Lgo; //向左走

}

if (Lspeedd 《 10 && Rspeedd 《 10) //假如 左邊距離和右邊距離皆小於10公分

{

directionn = Bgo; //向後走

}

}

else //加如前方不小於(大於)25公分

{

directionn = Fgo; //向前走

}

}

void ask_pin_F() // 量出前方距離

{

myservo.write(90);

digitalWrite(outputPin, LOW); // 讓超聲波發(fā)射低電壓2μs

delayMicroseconds(2);

digitalWrite(outputPin, HIGH); // 讓超聲波發(fā)射高電壓10μs,這裡至少是10μs

delayMicroseconds(10);

digitalWrite(outputPin, LOW); // 維持超聲波發(fā)射低電壓

float Fdistance = pulseIn(inputPin, HIGH); // 讀差相差時(shí)間

Fdistance= Fdistance/5.8/10; // 將時(shí)間轉(zhuǎn)為距離距離(單位:公分)

Serial.print(“F distance:”); //輸出距離(單位:公分)

Serial.println(Fdistance); //顯示距離

Fspeedd = Fdistance; // 將距離 讀入Fspeedd(前速)

}

void ask_pin_L() // 量出左邊距離

{

myservo.write(5);

delay(delay_time);

digitalWrite(outputPin, LOW); // 讓超聲波發(fā)射低電壓2μs

delayMicroseconds(2);

digitalWrite(outputPin, HIGH); // 讓超聲波發(fā)射高電壓10μs,這裡至少是10μs

delayMicroseconds(10);

digitalWrite(outputPin, LOW); // 維持超聲波發(fā)射低電壓

float Ldistance = pulseIn(inputPin, HIGH); // 讀差相差時(shí)間

Ldistance= Ldistance/5.8/10; // 將時(shí)間轉(zhuǎn)為距離距離(單位:公分)

Serial.print(“L distance:”); //輸出距離(單位:公分)

Serial.println(Ldistance); //顯示距離

Lspeedd = Ldistance; // 將距離 讀入Lspeedd(左速)

}

void ask_pin_R() // 量出右邊距離

{

myservo.write(177);

delay(delay_time);

digitalWrite(outputPin, LOW); // 讓超聲波發(fā)射低電壓2μs

delayMicroseconds(2);

digitalWrite(outputPin, HIGH); // 讓超聲波發(fā)射高電壓10μs,這裡至少是10μs

delayMicroseconds(10);

digitalWrite(outputPin, LOW); // 維持超聲波發(fā)射低電壓

float Rdistance = pulseIn(inputPin, HIGH); // 讀差相差時(shí)間

Rdistance= Rdistance/5.8/10; // 將時(shí)間轉(zhuǎn)為距離距離(單位:公分)

Serial.print(“R distance:”); //輸出距離(單位:公分)

Serial.println(Rdistance); //顯示距離

Rspeedd = Rdistance; // 將距離 讀入Rspeedd(右速)

}

void loop()

{

myservo.write(90); //讓伺服馬達(dá)回歸 預(yù)備位置 準(zhǔn)備下一次的測(cè)量

detection(); //測(cè)量角度 並且判斷要往哪一方向移動(dòng)

if(directionn == 2) //假如directionn(方向) = 2(倒車)

{

back(8); // 倒退(車)

turnL(2); //些微向左方移動(dòng)(防止卡在死巷裡)

Serial.print(“ Reverse ”); //顯示方向(倒退)

}

if(directionn == 6) //假如directionn(方向) = 6(右轉(zhuǎn))

{

back(1);

turnR(6); // 右轉(zhuǎn)

Serial.print(“ Right ”); //顯示方向(左轉(zhuǎn))

}

if(directionn == 4) //假如directionn(方向) = 4(左轉(zhuǎn))

{

back(1);

turnL(6); // 左轉(zhuǎn)

Serial.print(“ Left ”); //顯示方向(右轉(zhuǎn))

}

if(directionn == 8) //假如directionn(方向) = 8(前進(jìn))

{

advance(8); // 正常前進(jìn)

Serial.print(“ Advance ”); //顯示方向(前進(jìn))

Serial.print(“ ”);

}

}

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 智能小車
    +關(guān)注

    關(guān)注

    87

    文章

    554

    瀏覽量

    82278
  • Arduino
    +關(guān)注

    關(guān)注

    189

    文章

    6493

    瀏覽量

    190195
收藏 人收藏

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    Arduino單片機(jī)DFROBOT小車制作

    正在做Arduino小車。 4輪驅(qū)動(dòng)。有人知道相關(guān)資料哪里可以找到嗎?這個(gè)是我的畢業(yè)設(shè)計(jì)。如果這個(gè)會(huì)做了。以后可以做什么相關(guān)方面的工作嗎?
    發(fā)表于 06-21 04:29

    Arduino手機(jī)藍(lán)牙遙控智能小車制作教程

    `今天介紹一個(gè)Arduino手機(jī)藍(lán)牙遙控智能小車制作教程先來(lái)看看視頻演示:首先給大家介紹今天要使用到的主板:一個(gè)mega32u4帶兩路直流電機(jī)驅(qū)動(dòng)的整合開(kāi)發(fā)板:Mboard。MBoard是一款
    發(fā)表于 04-27 11:16

    51單片機(jī)智能小車制作詳細(xì)教程

    51單片機(jī)智能小車制作詳細(xì)教程,51單片機(jī)藍(lán)牙小車(精要版)實(shí)現(xiàn):通過(guò)手機(jī)與小車的藍(lán)牙通信,實(shí)現(xiàn)手機(jī)控制
    發(fā)表于 07-15 08:36

    51循跡小車詳細(xì)制作過(guò)程

    51循跡小車詳細(xì)制作過(guò)程,循跡小車話從哪里說(shuō)起,等到你要說(shuō)話,什么話都是那樣渺茫地找不到個(gè)源頭。假期來(lái)了,決定自己動(dòng)手做點(diǎn)東西,于是剛接觸51不久的我就將眼光轉(zhuǎn)向了“簡(jiǎn)單”的循跡
    發(fā)表于 07-21 09:46

    基于Arduino UNO的小車制作過(guò)程簡(jiǎn)析

    材料:小車套件、Arduino UNO板子、面包板及連接線、L298N電機(jī)驅(qū)動(dòng)模塊、電池盒、電池一、智能小車套件拼裝關(guān)于小車套件拼裝建議大家在做小車
    發(fā)表于 01-05 08:16

    Arduino藍(lán)牙避障小車制作過(guò)程

    文章目錄前言一、pandas是什么?二、使用步驟1.引入庫(kù) 2.讀入數(shù)據(jù) 總結(jié)前言最近學(xué)了些許Arduino知識(shí),加之老師要求用Arduino做出一點(diǎn)東西用來(lái)展示,所以自己做了一個(gè)Arduino
    發(fā)表于 01-05 08:20

    arduino版的自動(dòng)避障小車程序

    自動(dòng)避障小車 arduino版的自動(dòng)避障小車,自己寫的程序
    發(fā)表于 11-24 15:24 ?0次下載

    藍(lán)牙模塊的使用_藍(lán)牙模塊小車制作步驟

    本文主要詳解藍(lán)牙模塊的使用_藍(lán)牙模塊小車制作步驟,具體的跟隨小編來(lái)詳細(xì)的了解一下。
    的頭像 發(fā)表于 06-18 07:10 ?2.5w次閱讀
    藍(lán)牙模塊的使用_藍(lán)牙模塊<b class='flag-5'>小車</b>的<b class='flag-5'>制作</b>步驟

    用手機(jī)藍(lán)牙APP控制的基于arduino制作的藍(lán)牙小車

    本文檔的主要內(nèi)容詳細(xì)介紹的是用手機(jī)藍(lán)牙APP控制的基于arduino制作的藍(lán)牙小車
    發(fā)表于 10-15 08:00 ?87次下載

    WIFI智能小車設(shè)計(jì)制作教程的詳細(xì)資料免費(fèi)下載

    本文檔的主要內(nèi)容詳細(xì)介紹的是WIFI智能小車設(shè)計(jì)制作教程的詳細(xì)資料免費(fèi)下載。
    發(fā)表于 11-09 16:06 ?34次下載

    Arduino教程之如何使用Arduino制作一個(gè)寶寶使用的小桔燈詳細(xì)資料概述

    本文檔的主要內(nèi)容詳細(xì)介紹的是Arduino教程之如何使用Arduino制作一個(gè)寶寶使用的小桔燈詳細(xì)資料概述主要內(nèi)容包括了:
    發(fā)表于 01-04 18:22 ?14次下載
    <b class='flag-5'>Arduino</b>教程之如何使用<b class='flag-5'>Arduino</b><b class='flag-5'>制作</b>一個(gè)寶寶使用的小桔燈<b class='flag-5'>詳細(xì)</b>資料概述

    Arduino智能小車底板電路原理圖免費(fèi)下載

    本文檔的主要內(nèi)容詳細(xì)介紹的是Arduino智能小車底板電路原理圖免費(fèi)下載。
    發(fā)表于 05-13 08:00 ?18次下載
    <b class='flag-5'>Arduino</b>智能<b class='flag-5'>小車</b>底板電路原理圖免費(fèi)下載

    如何使用Arduino實(shí)現(xiàn)智能小車的自由行詳細(xì)程序資料免費(fèi)下載

    本文檔的主要內(nèi)容詳細(xì)介紹的是如何使用Arduino實(shí)現(xiàn)智能小車的自由行詳細(xì)程序資料免費(fèi)下載。
    發(fā)表于 05-30 08:00 ?10次下載
    如何使用<b class='flag-5'>Arduino</b>實(shí)現(xiàn)智能<b class='flag-5'>小車</b>的自由行<b class='flag-5'>詳細(xì)</b>程序資料免費(fèi)下載

    使用Arduino設(shè)計(jì)的智能小車自動(dòng)避障的接線說(shuō)明

    本文檔的主要內(nèi)容詳細(xì)介紹的是使用Arduino設(shè)計(jì)的智能小車自動(dòng)避障的接線說(shuō)明。
    發(fā)表于 11-22 08:00 ?18次下載
    使用<b class='flag-5'>Arduino</b>設(shè)計(jì)的智能<b class='flag-5'>小車</b>自動(dòng)避障的接線說(shuō)明

    Arduino制作循跡小車教程

    Arduino制作循跡小車完全教程
    發(fā)表于 01-05 11:09 ?7次下載
    主站蜘蛛池模板: 亚洲jizzjizz在线播放久 | 色偷偷91久久综合噜噜噜 | 日本一区二区三区在线观看视频 | 日本成人a视频 | 欧美日韩亚洲一区 | 伊人久久大香线蕉观看 | 最近2018中文字幕2019视频 | 在线免费观看一级片 | 国产精品特黄毛片 | 三级第一页 | 天天色操 | 中文字字幕码一二区 | 色色色色色色色色色色色色色色 | 综合色天天 | www.色视频| 婷婷性| 黄色一级片毛片 | 亚洲一区二区三区高清视频 | 日本成人免费观看 | 天天干夜夜操 | 日本亚洲天堂网 | 六月天丁香婷婷 | 欧美午夜寂寞影院安卓列表 | 午夜精品福利在线 | 天天看片夜夜爽 | v视界影院最新地址 | 天天射干 | 美女视频黄色的免费 | 1024手机看片日韩 | 色88888久久久久久影院 | 天天操天天爱天天干 | 国产成人精品亚洲 | 色视频免费观看 | 濑亚美莉iptd619在线观看 | 好大好硬好爽免费视频 | 男人在线视频 | 国产98在线传媒在线视频 | 一女被多男玩很肉很黄文 | 手机在线精品视频 | 美女扒开尿口给男人桶爽视频 | 色噜噜成人综合网站 |