資料介紹
PCB圖如下:
成分
伺服電機(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ī)組成。
--> 這就是它的工作原理--
安卓應(yīng)用程序向藍(lán)牙模塊發(fā)送數(shù)據(jù)包。藍(lán)牙模塊通過串行通信將此數(shù)據(jù)包發(fā)送到 Arduino Uno。Arduino Uno 被編程為根據(jù)數(shù)據(jù)包的值為伺服電機(jī)生成控制信號。這是一個流程圖,以便更好地理解。
流程圖
--> 如何開始
1.下載安卓應(yīng)用。
2.上傳Arduino uno上的代碼。
3. 進(jìn)行連接。
請注意,藍(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)牙模塊。
在本教程中,我將“控制器模式”用于命令。
對于本教程,我使用“控制器模式”
界面布局提供了 10 個按鈕,專門設(shè)計用于在按下時連續(xù)發(fā)送命令。目前,我們只使用兩個按鈕:一個按鈕發(fā)送“1”,另一個按鈕發(fā)送“2”。因此,使用應(yīng)用程序的設(shè)置為兩個按鈕設(shè)置值“1”和值“2”。這些值將被藍(lán)牙模塊接收并在 Arduino 草圖中用于控制伺服電機(jī)。
我使用這兩個按鈕將命令發(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
?
?
- 伺服控制器的全新時代——更安全、更智能、更小巧、更簡單
- 交流伺服神經(jīng)元PID控制器研究
- 基于DSP的高壓訓(xùn)線機(jī)器人數(shù)字化控制器 10次下載
- 如何使用FPGA實現(xiàn)矢量控制的高性能交流電機(jī)速度伺服控制器 9次下載
- 使用FPGA實現(xiàn)直流伺服電機(jī)控制器的設(shè)計資料說明 13次下載
- 基于STM32簡易電機(jī)伺服控制器 111次下載
- 氣動伺服DSP控制器研究 2次下載
- 基于多CPU架構(gòu)伺服驅(qū)動控制器的研究 1次下載
- 基于DSP_CPLD的四電動舵機(jī)伺服控制器設(shè)計 4次下載
- 基于矢量控制的高性能交流電機(jī)速度伺服控制器的FPGA實現(xiàn) 26次下載
- 高速液壓伺服控制器中的應(yīng)用研究 18次下載
- 切紙機(jī)伺服控制器設(shè)計 15次下載
- 基于模糊PID控制的導(dǎo)彈舵機(jī)伺服控制器 45次下載
- 伺服環(huán)路控制器的數(shù)字化設(shè)計 43次下載
- 交流伺服系統(tǒng)滑模控制器的動態(tài)設(shè)計 45次下載
- 伺服控制器的常見故障及解決方法 1320次閱讀
- 伺服電機(jī)與PLC控制器的區(qū)別 782次閱讀
- 西門子PLC與伺服控制器如何通訊 1057次閱讀
- 伺服控制器與PLC的區(qū)別 1908次閱讀
- 伺服控制器的工作原理和基本結(jié)構(gòu) 847次閱讀
- 伺服驅(qū)動器和伺服控制器的區(qū)別 978次閱讀
- 嵌入式運動控制器在網(wǎng)絡(luò)化交流伺服系統(tǒng)中的應(yīng)用 1305次閱讀
- 基于Arduino UNO和HC-05藍(lán)牙模塊控制伺服電機(jī) 4824次閱讀
- dfrobot低功耗藍(lán)牙控制器簡介 1446次閱讀
- 伺服電機(jī)控制器的使用場合及安裝 4469次閱讀
- 運動控制器控制伺服電機(jī)采用的指令和伺服電機(jī)調(diào)試的6個步驟說明 1.1w次閱讀
- 關(guān)于步進(jìn)電機(jī)控制器與伺服電機(jī)控制器的對比淺析 2898次閱讀
- 關(guān)于伺服電機(jī)、驅(qū)動器、控制器的一些原理詳解 4.3w次閱讀
- 伺服定位控制在PLC中實現(xiàn)和在伺服控制器中實現(xiàn)解答 1w次閱讀
- 伺服驅(qū)動器的工作原理及其控制方式 5.2w次閱讀
下載排行
本周
- 1山景DSP芯片AP8248A2數(shù)據(jù)手冊
- 1.06 MB | 532次下載 | 免費
- 2RK3399完整板原理圖(支持平板,盒子VR)
- 3.28 MB | 339次下載 | 免費
- 3TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費
- 4DFM軟件使用教程
- 0.84 MB | 295次下載 | 免費
- 5元宇宙深度解析—未來的未來-風(fēng)口還是泡沫
- 6.40 MB | 227次下載 | 免費
- 6迪文DGUS開發(fā)指南
- 31.67 MB | 194次下載 | 免費
- 7元宇宙底層硬件系列報告
- 13.42 MB | 182次下載 | 免費
- 8FP5207XR-G1中文應(yīng)用手冊
- 1.09 MB | 178次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 2555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33566次下載 | 免費
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費
- 4開關(guān)電源設(shè)計實例指南
- 未知 | 21549次下載 | 免費
- 5電氣工程師手冊免費下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費
- 7電子制作實例集錦 下載
- 未知 | 8113次下載 | 免費
- 8《LED驅(qū)動電路設(shè)計》 溫德爾著
- 0.00 MB | 6656次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537798次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420027次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191187次下載 | 免費
- 7十天學(xué)會AVR單片機(jī)與C語言視頻教程 下載
- 158M | 183279次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138040次下載 | 免費
評論
查看更多