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

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

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

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

電子工程師 ? 作者:工程師陳翠 ? 2018-06-18 07:10 ? 次閱讀

一、本次實(shí)驗(yàn)所需器材

1、Arduino UNO板

2、藍(lán)牙模塊

3、藍(lán)牙小車底盤(可從淘寶網(wǎng)購(gòu)買)

4、L298驅(qū)動(dòng)模塊:1個(gè)

3、面包板:1個(gè)

二、藍(lán)牙模塊的使用

實(shí)驗(yàn):給藍(lán)牙模塊發(fā)送h,回復(fù)i am here;發(fā)送b,回復(fù)see you.

硬件連接:

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

代碼:

char getstr;

void setup()

{

Serial.begin(9600);

}

void loop()

{

getstr=Serial.read();

if(getstr==‘h’)

{

Serial.println(“I am here!”);

}

else if(getstr==‘b’){

Serial.println(“See you!”);

}

}

將以上代碼寫入arduino時(shí),要注意先將藍(lán)牙斷開,寫入完成后,再連上藍(lán)牙,否則會(huì)出錯(cuò)。

手機(jī)下載一個(gè)bluetooth spp或者藍(lán)牙串口程序即可,這里我用的是。

然后通過(guò)手機(jī)與該藍(lán)牙模塊進(jìn)行連接,一般默認(rèn)連接碼是1234或者0000。連接后,發(fā)送h,會(huì)顯示I am here,發(fā)送b,會(huì)顯示See you!

三、藍(lán)牙遙控小車制作

1、從網(wǎng)上購(gòu)買了藍(lán)牙小車底盤,組裝后如下圖:

2、L298驅(qū)動(dòng)模塊

該模塊的IN1、IN2、IN3、IN4分別連接arduino的12、11、10、9接口,電源12V口接arduino的5V,GND接地。

例子:

char getstr;

int in1=12;

int in2=11;

int in3=10;

int in4=9;

//上面定義了板上的4個(gè)控制端,12一組,34一組

void _mRight(int pin1,int pin2)//當(dāng)in1和in2中有一個(gè)接高位時(shí),電機(jī)會(huì)向某一方向轉(zhuǎn)動(dòng)

{

digitalWrite(pin1,HIGH);

digitalWrite(pin2,LOW);

}

void _mLeft(int pin1,int pin2)//同上

{

digitalWrite(pin1,LOW);

digitalWrite(pin2,HIGH);

}

void _mStop(int pin1,int pin2)//緊急制動(dòng),實(shí)際就是將電機(jī)兩個(gè)端短接了

{

digitalWrite(pin1,HIGH);

digitalWrite(pin2,HIGH);

}

void setup()

{

Serial.begin(9600);

pinMode(in1,OUTPUT);

pinMode(in2,OUTPUT);

pinMode(in3,OUTPUT);

pinMode(in4,OUTPUT);

//下面程序開始時(shí)讓控制端都為高電平,電機(jī)保持不動(dòng)。

digitalWrite(in1,HIGH);

digitalWrite(in2,HIGH);

digitalWrite(in3,HIGH);

digitalWrite(in4,HIGH);

}

void loop()

{

getstr=Serial.read();

if(getstr==‘f’)

{

Serial.println(“go forward!”);

_mStop(in1,in2);

_mStop(in3,in4);

_mRight(in1,in2);

_mRight(in3,in4);

}

else if(getstr==‘b’){

Serial.println(“go back!”);

_mStop(in1,in2);

_mStop(in3,in4);

_mLeft(in1,in2);

_mLeft(in3,in4);

}

else if(getstr==‘l’){

Serial.println(“go left!”);

_mStop(in1,in2);

_mStop(in3,in4);

_mRight(in1,in2);

_mLeft(in3,in4);

}

else if(getstr==‘r’){

Serial.println(“go right!”);

_mStop(in1,in2);

_mStop(in3,in4);

_mRight(in3,in4);

_mLeft(in1,in2);

}

else if(getstr==‘s’){

Serial.println(“Stop!”);

_mStop(in1,in2);

_mStop(in3,in4);

}

}

注意,當(dāng)輸入fl 時(shí),無(wú)論前往、后退、左轉(zhuǎn)、右轉(zhuǎn),電機(jī)都是先停一下,再轉(zhuǎn),這樣電機(jī)都流暢。

3、藍(lán)牙模塊

接法與二中藍(lán)牙模塊的使用接法相同。

4、超聲波測(cè)距模塊

連接方法是將VCC接5V,GND接地,trig接5口,Echo接6口。

5、硬件連接圖

6、代碼

char getstr;

int in1=12;

int in2=11;

int in3=10;

int in4=9;

//上面定義了板上的4個(gè)控制端,12一組,34一組

int TrigPin = 5;

int EchoPin = 6;

float cm;

int i=0;//記錄測(cè)量次數(shù),每5次取一下平均值

float cmsum;//計(jì)算5次總值

float cmeve;//計(jì)算5次平均值

void _mRun(int pin1,int pin2)//電機(jī)右轉(zhuǎn),電機(jī)到底是右轉(zhuǎn)還是左轉(zhuǎn)取決于電機(jī)端的接線和控制腳的順序

{

digitalWrite(pin1,HIGH);

digitalWrite(pin2,LOW);

}

void _mBack(int pin1,int pin2)//同上

{

digitalWrite(pin1,LOW);

digitalWrite(pin2,HIGH);

}

void _mStop(int pin1,int pin2)//緊急制動(dòng),實(shí)際就是將電機(jī)兩個(gè)端短接了

{

digitalWrite(pin1,HIGH);

digitalWrite(pin2,HIGH);

}

void setup()

{

Serial.begin(9600);

pinMode(in1,OUTPUT);

pinMode(in2,OUTPUT);

pinMode(in3,OUTPUT);

pinMode(in4,OUTPUT);

pinMode(TrigPin, OUTPUT);

pinMode(EchoPin, INPUT);

//下面程序開始時(shí)讓控制端都為高電平,電機(jī)保持不動(dòng)。

digitalWrite(in1,HIGH);

digitalWrite(in2,HIGH);

digitalWrite(in3,HIGH);

digitalWrite(in4,HIGH);

}

void loop()

{

getstr=Serial.read();

delayMicroseconds(60);

digitalWrite(TrigPin, HIGH);

delayMicroseconds(60);

digitalWrite(TrigPin, LOW);

cm = pulseIn(EchoPin, HIGH) / 58.0; //將回波時(shí)間換算成cm

cm = (int(cm * 100.0)) / 100.0; //保留兩位小數(shù)

if (i==5){//連接測(cè)5次,計(jì)算平均值,如果小于10厘米則緊急停車

i=0;

cmeve=cmsum/5;

cmsum=0;

if (cmeve《10 and cmeve》0) {

Serial.println(cmeve);

_mStop(in1,in2);

_mStop(in3,in4);

}

}

else {

i=i+1;

cmsum=cmsum+cm;

}

if(getstr==‘f’)

{

Serial.println(“go forward!”);

_mStop(in1,in2);

_mStop(in3,in4);

_mRun(in1,in2);

_mRun(in3,in4);

}

else if(getstr==‘b’){

Serial.println(“go back!”);

_mStop(in1,in2);

_mStop(in3,in4);

_mBack(in1,in2);

_mBack(in3,in4);

}

else if(getstr==‘l’){

Serial.println(“go left!”);

_mStop(in1,in2);

_mStop(in3,in4);

_mRun(in1,in2);

_mBack(in3,in4);

}

else if(getstr==‘r’){

Serial.println(“go left!”);

_mStop(in1,in2);

_mStop(in3,in4);

_mRun(in3,in4);

_mBack(in1,in2);

}

else if(getstr==‘s’){

Serial.println(“Stop!”);

_mStop(in1,in2);

_mStop(in3,in4);

}

}

聲明:本文內(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)投訴
  • 藍(lán)牙模塊
    +關(guān)注

    關(guān)注

    30

    文章

    577

    瀏覽量

    55799
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    藍(lán)牙模塊控制電動(dòng)小車

    菜鳥求助前輩:如何制作藍(lán)牙模塊控制電動(dòng)小車
    發(fā)表于 03-15 21:09

    制作一個(gè)藍(lán)牙遙控小車

    本周我們來(lái)制作一個(gè)藍(lán)牙遙控小車,不得不說(shuō)bluno nano的藍(lán)牙交互功能還是讓人眼前一亮,畢竟是首款集成藍(lán)牙4.0的arduino板。
    發(fā)表于 10-13 06:01

    藍(lán)牙模塊_電梯藍(lán)牙門禁應(yīng)用

    藍(lán)牙模塊_電梯藍(lán)牙門禁應(yīng)用。 電梯藍(lán)牙門禁,天工測(cè)控的低功耗藍(lán)牙模塊可以應(yīng)用于電梯門禁,外形可
    發(fā)表于 11-16 17:11 ?9次下載

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

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

    SKYLAB的最新藍(lán)牙4.0模塊、藍(lán)牙4.2模塊藍(lán)牙5.0模塊的資料概述

     Ble 藍(lán)牙模塊是專為物聯(lián)網(wǎng)無(wú)線數(shù)據(jù)傳輸而生,BLE藍(lán)牙模塊以其超低功耗、快速連接、容易交互等特點(diǎn),已廣泛應(yīng)用于物聯(lián)網(wǎng)藍(lán)牙設(shè)備中。目前 S
    發(fā)表于 11-30 08:00 ?54次下載

    一款用于智能小車無(wú)線控制藍(lán)牙模塊的介紹

    小車無(wú)線控制的藍(lán)牙模塊,BLE4.2藍(lán)牙模塊SKB369。 在藍(lán)牙智能
    的頭像 發(fā)表于 01-28 11:53 ?6894次閱讀

    基于stm32藍(lán)牙智能小車設(shè)計(jì)

    控制電機(jī)的轉(zhuǎn)動(dòng)方向,使小車產(chǎn)生不同的轉(zhuǎn)動(dòng)模式??刂?b class='flag-5'>小車的轉(zhuǎn)動(dòng)模式通過(guò)藍(lán)牙模塊來(lái)實(shí)現(xiàn),利用手機(jī)藍(lán)牙助手和藍(lán)
    發(fā)表于 11-06 15:51 ?89次下載
    基于stm32<b class='flag-5'>藍(lán)牙</b>智能<b class='flag-5'>小車</b>設(shè)計(jì)

    關(guān)于藍(lán)牙模塊的簡(jiǎn)易小車(基于51單片機(jī))

    關(guān)于藍(lán)牙模塊的簡(jiǎn)易小車(基于51單片機(jī))文章目錄關(guān)于藍(lán)牙模塊的簡(jiǎn)易小車(基于51單片機(jī))一、HC
    發(fā)表于 11-23 16:20 ?26次下載
    關(guān)于<b class='flag-5'>藍(lán)牙</b><b class='flag-5'>模塊</b>的簡(jiǎn)易<b class='flag-5'>小車</b>(基于51單片機(jī))

    最簡(jiǎn)單DIY的51藍(lán)牙遙控小車設(shè)計(jì)方案

    51單片機(jī)物聯(lián)網(wǎng)智能小車系列文章目錄第一篇:最簡(jiǎn)單DIY的51藍(lán)牙遙控小車設(shè)計(jì)方案文章目錄51單片機(jī)物聯(lián)網(wǎng)智能小車系列文章目錄前言一、最簡(jiǎn)單DIY的51
    發(fā)表于 11-23 16:22 ?41次下載
    最簡(jiǎn)單DIY的51<b class='flag-5'>藍(lán)牙</b>遙控<b class='flag-5'>小車</b>設(shè)計(jì)方案

    基于51單片機(jī)的藍(lán)牙循跡小車

    ) 藍(lán)牙指令 + 藍(lán)牙模塊的學(xué)習(xí)(串口usart) 循跡整合代碼 藍(lán)牙整合代碼51單片機(jī)課程設(shè)計(jì)做了輛藍(lán)牙
    發(fā)表于 11-23 16:51 ?25次下載
    基于51單片機(jī)的<b class='flag-5'>藍(lán)牙</b>循跡<b class='flag-5'>小車</b>

    51單片機(jī)藍(lán)牙循跡小車

    51單片機(jī)藍(lán)牙循跡小車文章目錄51單片機(jī)藍(lán)牙循跡小車前言一、藍(lán)牙模塊、電機(jī)驅(qū)動(dòng)
    發(fā)表于 11-23 17:06 ?58次下載
    51單片機(jī)<b class='flag-5'>藍(lán)牙</b>循跡<b class='flag-5'>小車</b>

    智能小車藍(lán)牙模塊

    很長(zhǎng)時(shí)間沒(méi)有寫博客了,因?yàn)楦阃赀@個(gè)小車以后就在暑假研究無(wú)人機(jī)去了,所以上一次的藍(lán)牙模塊一直沒(méi)有時(shí)間去寫,沒(méi)事現(xiàn)在補(bǔ)上- HC-05(我用的是這個(gè)模塊:因?yàn)閮r(jià)格中等,功能完善便宜的還有J
    發(fā)表于 12-27 19:26 ?3次下載
    智能<b class='flag-5'>小車</b>的<b class='flag-5'>藍(lán)牙</b><b class='flag-5'>模塊</b>

    基于stm32的智能小車作品(循跡避障藍(lán)牙)(下)

    基于stm32的智能小車作品(循跡避障藍(lán)牙)(下)五、避障小車制作1.超聲波模塊接線2.工作原理3. 超聲波避障程序六、
    發(fā)表于 12-28 19:03 ?81次下載
    基于stm32的智能<b class='flag-5'>小車</b>作品(循跡避障<b class='flag-5'>藍(lán)牙</b>)(下)

    制作自己的音頻藍(lán)牙模塊

    電子發(fā)燒友網(wǎng)站提供《開源硬件-我制作了自己的音頻藍(lán)牙模塊.zip》資料免費(fèi)下載
    發(fā)表于 10-27 17:37 ?4次下載
    <b class='flag-5'>制作</b>自己的音頻<b class='flag-5'>藍(lán)牙</b><b class='flag-5'>模塊</b>

    什么是經(jīng)典藍(lán)牙模塊?

    ? 什么是經(jīng)典藍(lán)牙模塊? 前面我們已經(jīng)就藍(lán)牙模塊的概念做了了解,隨著時(shí)間的推移,產(chǎn)品越來(lái)越智能,需要的藍(lán)牙
    的頭像 發(fā)表于 05-24 14:52 ?557次閱讀
    什么是經(jīng)典<b class='flag-5'>藍(lán)牙</b><b class='flag-5'>模塊</b>?