電子發(fā)燒友App

硬聲App

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

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

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>電子資料>藍(lán)牙伺服控制器

藍(lán)牙伺服控制器

2022-07-04 | zip | 0.01 MB | 次下載 | 2積分

資料介紹

PCB圖如下:
poYBAGKxtSqAK0Q1AABY2W7j4WA103.png

成分

伺服電機(jī) × 4
藍(lán)牙系列-HC-06
奧利梅克斯有限公司
× 1
Arduino Nano V3 × 1
16針母頭 × 1
2Pin 螺絲端子 5mm 間距 × 1

描述

藍(lán)牙伺服控制器

在這個項目中,我將向您展示如何在智能手機(jī)應(yīng)用程序的幫助下通過藍(lán)牙控制伺服電機(jī)。

對于這個項目,我們將使用帶有 Arduino Uno 的藍(lán)牙 HC-05 模塊來控制伺服 9g。

這個項目是如何運作的?

這個項目有兩個部分:

1. android 應(yīng)用程序- 此應(yīng)用程序?qū)⑾蛭覀兊?HC-05 藍(lán)牙模塊發(fā)送各種數(shù)據(jù)包

2. 硬件 - 由 HC-05 藍(lán)牙模塊、一個 Arduino Uno 和一個伺服電機(jī)組成。

pYYBAGKxtTuAc7MeAACGm368SOA167.png

--> 這就是它的工作原理--

安卓應(yīng)用程序向藍(lán)牙模塊發(fā)送數(shù)據(jù)包。藍(lán)牙模塊通過串行通信將此數(shù)據(jù)包發(fā)送到 Arduino Uno。Arduino Uno 被編程為根據(jù)數(shù)據(jù)包的值為伺服電機(jī)生成控制信號。這是一個流程圖,以便更好地理解。

poYBAGKxtT2AXli7AAA19lB9TcA831.png

流程圖

--> 如何開始

1.下載安卓應(yīng)用。

2.上傳Arduino uno上的代碼。

3. 進(jìn)行連接。

pYYBAGKxtUCAW8--AABgn1Kj8Ts449.png

請注意,藍(lán)牙 HC-05 模塊需要連接 3.3v 而不是 5v vcc,否則會損壞模塊。

4. 將藍(lán)牙模塊連接到 android 應(yīng)用程序 - 當(dāng)您啟動硬件時,藍(lán)牙模塊將變得可見。因此,打開應(yīng)用程序并單擊查找附近的設(shè)備。選擇 HC-05。一旦顯示已連接,您就可以開始了!

您可以使用滑塊或手動輸入值來控制伺服臂。

伺服電機(jī)主要用于機(jī)器人技術(shù)中以進(jìn)行精確控制。任何人——嗯,幾乎任何人——都擁有具有藍(lán)牙連接功能的移動設(shè)備。在本教程中,您將了解如何通過藍(lán)牙連接使用 Arduino UNO 和 Android 設(shè)備無線控制伺服電機(jī)。最后,您將更加緊密地聯(lián)系在一起,您將使事情變得更容易,并通過觸摸屏控制伺服電機(jī)。

在本文中,我將向您介紹與 HC-06 藍(lán)牙模塊、Arduino UNO 和 SG90 伺服電機(jī)的藍(lán)牙連接。此外,您需要本教程的額外資源,例如具有藍(lán)牙功能的 Android 智能手機(jī)和從智能手機(jī)向藍(lán)牙模塊發(fā)送命令的應(yīng)用程序。

在教程的第一部分,我將向您展示如何將 HC-06 藍(lán)牙模塊連接到 Arduino。在第二部分中,您可以找到進(jìn)入HC-06藍(lán)牙模塊的AT命令模式的源代碼。在這里您將設(shè)置您的設(shè)備名稱、密碼和 HC-06 模塊的波特率。最后,在最后一部分中,您將看到如何設(shè)置 Android 應(yīng)用程序以及如何對 Arduino 進(jìn)行編程以通過按一下按鈕來轉(zhuǎn)動伺服電機(jī)。

要求

連接正確的部分并使它們相互通信。這是這個項目的計劃。如果您已經(jīng)擁有以下所有部分或其中的一部分,那么您很幸運。如果您只購買缺少的部分,整個項目不會花費您任何費用,或者只需幾美元。否則,你得花幾十塊錢買伺服電機(jī)、藍(lán)牙模塊、開發(fā)板和其他一些配件。為了清楚地了解成本,在該項目中使用的每個零件和配件的右側(cè)都有一個在線商店的鏈接。以下是部分:

1 X Arduino UNO (Amazon) – 藍(lán)牙模塊與幾乎所有 Arduino 型號兼容,但本教程中的所有代碼和原理圖均適用于 UNO。

1 X HC-06(亞馬遜)——這是一個從屬藍(lán)牙模塊,非常容易與 Arduino 一起使用,使用串行通信。

1 X SG90 伺服電機(jī)(亞馬遜)——這可能是 DIY 社區(qū)中最受歡迎的伺服電機(jī)。

7 X 公對公跳線(亞馬遜)。

1 X 面包板(亞馬遜)。

1 X And??roid 智能手機(jī)(亞馬遜)。

設(shè)置硬件

在本節(jié)中,我將向您展示如何連接 Arduino UNO 和 HC-06 藍(lán)牙模塊。

要使用 HC-06 模塊,只需將 VCC 引腳連接到 Arduino 上的 3.3V 輸出,將 GND 引腳連接到任何 Arduino GND 引腳,然后將藍(lán)牙模塊的 TX 引腳連接到 Arduino UNO 的引腳 10 和 RX 引腳藍(lán)牙連接到 Arduino 的引腳 11。

對于伺服電機(jī),將棕色線連接到任何 Arduino GND 引腳,將 SG90 伺服的紅線連接到 Arduino 的 5V 輸出,將伺服電機(jī)的橙色線連接到 Arduino 的數(shù)字引腳 9。

Arduino Sketch 和 AT 命令

如果藍(lán)牙模塊是第一次使用,您必須詢問它以更改某些設(shè)置。使用所謂的 AT 命令更改設(shè)置。

HC-06 模塊允許您更改有限數(shù)量的設(shè)置。您可以更改設(shè)備名稱、PIN 碼和波特率。

您必須在與 Arduino 一起使用的 IDE 中運行以下 AT 命令。這些命令顯示安裝在 HC 藍(lán)牙模塊上的固件版本,更改 PIN,更改模塊名稱,并將波特率設(shè)置為 9600。

#define BLUETOOTH_SPEED 9600 //這是HC-06使用的默認(rèn)波特率

SoftwareSerial mySerial(10, 11); // 發(fā)送 | 接收

// 將 HC-06 TX 連接到 Arduino 引腳 10 RX。

// 將 HC-06 RX 連接到 Arduino 引腳 11 TX。

無效設(shè)置(){

??序列號.開始(9600);

??Serial.println("開始配置!");

??mySerial.begin(BLUETOOTH_SPEED);

??延遲(1000);

??// 應(yīng)該以 OK 響應(yīng)

??Serial.print("AT 測試命令為:");

??mySerial.print("AT");

??等待響應(yīng)();

??Serial.println("----------------");

??// 應(yīng)該用它的版本來響應(yīng)

??Serial.print("AT 版本為:");

??mySerial.print("AT+VERSION");

??等待響應(yīng)();

??Serial.println("----------------");

??// 設(shè)置引腳

??Serial.print("設(shè)置引腳:");

??mySerial.print("AT+PIN1234");

??等待響應(yīng)();

??Serial.println("----------------");

??// 設(shè)置名稱為 ROBOT_NAME

??Serial.print("設(shè)置名稱:");

??字符串 rnc = String("AT+NAME") + String(ROBOT_NAME);

??mySerial.print(rnc);

??等待響應(yīng)();

??//設(shè)置波特率為9600

??//AT+BAUD1 OK1200 設(shè)置波特率為1200

??//AT+BAUD2 OK2400 設(shè)置波特率為2400

??//AT+BAUD3 OK4800 設(shè)置波特率為4800

??//AT+BAUD4 OK9600 設(shè)置波特率為9600

??//AT+BAUD5 OK19200 設(shè)置波特率為19200

??//AT+BAUD6 OK38400 設(shè)置波特率為38400

??//AT+BAUD7 OK57600 設(shè)置波特率為57600

??//AT+BAUD8 OK115200 設(shè)置波特率為115200

??//AT+BAUD9 OK230400 設(shè)置波特率為230400

??//AT+BAUDA OK460800 設(shè)置波特率為460800

??//AT+BAUDB OK921600 設(shè)置波特率為921600

??//AT+BAUDC OK1382400 設(shè)置波特率為1382400

??Serial.println("----------------");

??// 將波特率設(shè)置為 9600

??Serial.print("設(shè)置波特率:");

??mySerial.print("AT+BAUD4");

??等待響應(yīng)();

??Serial.println("配置完成!");

}

無效循環(huán)(){

??}

無效的等待響應(yīng)(){

????延遲(2000);

????而(mySerial.available()){

??????Serial.write(mySerial.read());

????}

????Serial.write("\n");

}

Android 應(yīng)用程序和 Arduino 草圖

我們非常接近于使用 Android 智能手機(jī)無線控制 SG90 伺服電機(jī)。這通常通過使用啟用設(shè)備藍(lán)牙功能的 Android 應(yīng)用程序來完成。

在 Android 設(shè)備上啟用藍(lán)牙功能的許多應(yīng)用程序中,我選擇了 Arduino 藍(lán)牙控制器應(yīng)用程序,因為它免費且易于使用。

在運行 Android 應(yīng)用程序之前,請確保 HC-06 藍(lán)牙模塊已啟動并正在運行。

在您的設(shè)備上安裝應(yīng)用程序后,您必須掃描設(shè)備,輸入上面腳本設(shè)置的 PIN 碼,然后連接藍(lán)牙模塊。

在本教程中,我將“控制器模式”用于命令。

pYYBAGKxtUOAEwTRAAChU9jL8cU717.jpg對于本教程,我使用“控制器模式”

界面布局提供了 10 個按鈕,專門設(shè)計用于在按下時連續(xù)發(fā)送命令。目前,我們只使用兩個按鈕:一個按鈕發(fā)送“1”,另一個按鈕發(fā)送“2”。因此,使用應(yīng)用程序的設(shè)置為兩個按鈕設(shè)置值“1”和值“2”。這些值將被藍(lán)牙模塊接收并在 Arduino 草圖中用于控制伺服電機(jī)。

pYYBAGKxtUaAJbSLAADXs7XY34Q774.jpg

我使用這兩個按鈕將命令發(fā)送到藍(lán)牙模塊

Android應(yīng)用程序設(shè)置完成后,我們必須回到Arduino并上傳代碼來控制伺服電機(jī)。下面是在特定位置轉(zhuǎn)動伺服電機(jī)的 Arduino 草圖。

#include

#include <伺服.h>

SoftwareSerial mySerial(10, 11); // 接收 | 德克薩斯州

伺服伺服;??

整數(shù)伺服引腳 = 9;

int 伺服角度 = 0; //以度為單位的伺服位置

字符命令;

無效設(shè)置(){

??序列號.開始(9600);

??mySerial.begin(9600);

??Serial.println("您已通過藍(lán)牙連接");

??伺服.attach(servoPin);

}

無效循環(huán)(){

??如果(mySerial.available())

??{

????命令=(mySerial.read());

????如果(命令=='1')

????{

??????Serial.println("伺服電機(jī)轉(zhuǎn)10度");

??????伺服寫入(10);??????????????

??????延遲(500);??????????????????

????}

????否則如果(命令=='2')

????{

??????Serial.println("伺服電機(jī)轉(zhuǎn)120度");

??????伺服寫入(120);??????????????

??????延遲(500);

????}

??}

}

代碼

代碼

bluetooth_controller.ino

?

?

下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1山景DSP芯片AP8248A2數(shù)據(jù)手冊
  2. 1.06 MB  |  532次下載  |  免費
  3. 2RK3399完整板原理圖(支持平板,盒子VR)
  4. 3.28 MB  |  339次下載  |  免費
  5. 3TC358743XBG評估板參考手冊
  6. 1.36 MB  |  330次下載  |  免費
  7. 4DFM軟件使用教程
  8. 0.84 MB  |  295次下載  |  免費
  9. 5元宇宙深度解析—未來的未來-風(fēng)口還是泡沫
  10. 6.40 MB  |  227次下載  |  免費
  11. 6迪文DGUS開發(fā)指南
  12. 31.67 MB  |  194次下載  |  免費
  13. 7元宇宙底層硬件系列報告
  14. 13.42 MB  |  182次下載  |  免費
  15. 8FP5207XR-G1中文應(yīng)用手冊
  16. 1.09 MB  |  178次下載  |  免費

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費
  3. 2555集成電路應(yīng)用800例(新編版)
  4. 0.00 MB  |  33566次下載  |  免費
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費
  7. 4開關(guān)電源設(shè)計實例指南
  8. 未知  |  21549次下載  |  免費
  9. 5電氣工程師手冊免費下載(新編第二版pdf電子書)
  10. 0.00 MB  |  15349次下載  |  免費
  11. 6數(shù)字電路基礎(chǔ)pdf(下載)
  12. 未知  |  13750次下載  |  免費
  13. 7電子制作實例集錦 下載
  14. 未知  |  8113次下載  |  免費
  15. 8《LED驅(qū)動電路設(shè)計》 溫德爾著
  16. 0.00 MB  |  6656次下載  |  免費

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費
  3. 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
  4. 78.1 MB  |  537798次下載  |  免費
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420027次下載  |  免費
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費
  11. 6電路仿真軟件multisim 10.0免費下載
  12. 340992  |  191187次下載  |  免費
  13. 7十天學(xué)會AVR單片機(jī)與C語言視頻教程 下載
  14. 158M  |  183279次下載  |  免費
  15. 8proe5.0野火版下載(中文版免費下載)
  16. 未知  |  138040次下載  |  免費