色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

電子發燒友App

硬聲App

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示
電子發燒友網>電子資料下載>電子資料>如何使用腦電波駕駛遙控卡車

如何使用腦電波駕駛遙控卡車

2022-10-21 | zip | 2.08 MB | 次下載 | 免費

資料介紹

描述

你想用你的思想來控制事物嗎?這個教程描述了如何使用腦電波駕駛遙控卡車。耳機感應到我的腦電波并將它們傳輸到一臺小型計算機。當我提高注意力或眨眼時,計算機會轉換信號并將它們傳遞給卡車的遙控器,我已將其連接到計算機。當我集中注意力時,車輪會旋轉。0ne 強烈的眨眼左轉。強烈的雙眨眼會右轉。

耳機是NeuroSky MindWave Mobile 2,電腦Arduino Uno微控制器藍牙模塊是HC-05。

實際應用

一些開發人員已經應用這些想法來幫助癱瘓的人;例如,駕駛輪椅、家庭自動化或在屏幕上選擇字母和單詞以便在屏幕上或通過語音進行交流。他們的項目可以在 YouTube 上找到。

項目的主要步驟

這個項目有5個主要步驟:

  • 將 HC-05 連接到 Arduino,對其進行配置,并將其與 MindWave 配對。
  • 將舵機連接到遙控器。
  • 給 Arduino 接線。
  • Arduino 草圖(代碼)。
  • 上傳 Arduino 草圖并使用它。

控制機器人車輛的方法

在開始我的項目之前,我在 Internet 上搜索了 NeuroSky 項目,以了解開發人員選擇使用哪些腦電波信號。許多項目只使用了注意力和冥想級別,還有一些項目還使用了眨眼。在我的項目中,我決定使用注意力級別來控制向前和停止行駛,單閃左轉或雙閃右轉。

有一個項目采用了非常不同的方法:當用戶眨眼時,軟件開始循環向前、向后、向左、向右,每個循環 2 秒。如果用戶眨了兩下眼,那么車輛就會在那個瞬間朝自行車所在的任何方向行駛。這種方法提供了很大的靈活性,但可能會很慢。例如,如果用戶右轉,他們將無法左轉大約 6 秒,

將 NeuroSky MindWave Mobile 2 連接到 Arduino 的方法

一些開發人員通過藍牙將他們的 NeuroSky MindWave Mobile 直接連接到 Arduino 板,這是我決定做的。這種方法比下一種方法更容易(如下所述),但檢測到眨眼需要更長的時間(略超過 1 秒)。這對我的項目來說沒問題。

其他開發人員通過計算機或智能手機對信號進行實時預處理,然后將數據發送到 Arduino。這允許進行更復雜的分析或處理,并且可以更快地檢測到眨眼(大約半秒)。NeuroSky 在這個網站上有關于這種方法的教程,適用于 PC Windows、Apple Mac OSX、AndroidIOS我決定不使用這種方法,因為它需要學習如何在計算機或智能手機上對軟件進行編程

最大化注意力水平

最大化注意力水平的方法因人而異。以下是一些建議:

  • 專注于一個對象。
  • 仔細閱讀食品容器上的成分清單。
  • 記住食品容器上的一些營養成分。
  • 從 100 倒數到 6 或 7。
  • 在頭腦中進行算術運算。
  • 聽一首說唱歌曲并嘗試理解歌詞。
  • 用你不流利的語言閱讀一些東西。

眨眼

眨眼需要很強才能被檢測到。正常的眨眼被忽略。

頭部應保持靜止,以避免錯誤的眨眼檢測。在這個項目中檢測眨眼的方法包括檢查從耳機接收到的信號的質量。強烈的眨眼會使前額的皮膚移動,從而降低信號的質量,這被解釋為眨眼。如果頭部移動,耳機的傳感器可能會輕微移動,從而降低信號質量,這將被識別為眨眼。

這種檢測眨眼的方法不使用大腦的神經信號。我的理解是 NeuroSky 的計算機/智能手機方法可以。

電子零件

  • NeuroSky MindWave Mobile 2 耳機和 1 節 AAA 電池
  • 一臺電腦(我用的是 Apple iMac
  • Arduino Uno 或其他型號及其 USB 數據線
  • HC-05藍牙模塊
  • 兩個伺服電機(我使用 Solarbotics HXT900 Micro Servos)
  • 面包板和面包板電線
  • 綠色、黃色和紅色 LED
  • 3 x 330 歐姆電阻
  • 2 x 1K 歐姆電阻
  • 2 個 2K 歐姆電阻
  • 電源,約 5 伏,如支架中的 3 節 AA 電池

伺服連接到遙控器的零件

  • 小塑料或紙板箱,或其他方式將伺服系統固定到位
  • 膠水或螺母和螺栓將盒子的各個部分連接在一起
  • 將其連接到遙控器的某種方式。(我用了 2 個螺絲。)
  • 用于連接伺服系統的小螺母和螺栓。(我使用了一些實心線和 2-56 號螺栓,并且不得不稍微擴大伺服中的螺栓孔。)

第 1 步:將 HC-05 連接到 Arduino,配置并配對

有關詳細信息,請查看我之前的一個項目中的步驟 1 和 2:

第 2 步:將伺服器連接到遙控器

有兩種方法可以將 Arduino 連接到卡車的遙控器:

遙控器可能被黑客攻擊如下:移除或繞過由控件推動的開關,然后將 Arduino 連接到控制器的電路板并對 Arduino 進行編程以在適當的電線上施加電壓。我的遙控器中的開關非常小,以至于我認為嘗試將新電線焊接到電路板上的適當位置太棘手了。如果我犯了一個小錯誤,董事會可能會被毀掉。

我使用伺服系統來移動控件。將伺服系統連接到遙控器上被證明是一個“有趣”的挑戰,但現在一切正常。

幸運的是,經過一些切割和裝配后,有一個大小合適的小塑料盒可以將伺服系統連接到卡車的遙控器上。尺寸為 2-56 的螺母和螺栓將盒子的各個部分固定在一起。兩個螺絲將盒子固定在遙控器上。

?
?
?
pYYBAGNORpKAK68CAAfI2-pUPMk033.jpg
?
1 / 2
?

?

左/右控制的伺服臂末端有一個小凹口,給它一些擺動空間。伺服臂的中心不太可能與控制中心完全對齊。固定該臂末端的螺釘需要稍微松動。

pYYBAGNORpaAebMnAAP7XkNpus0539.jpg
?

?

為了連接左/右舵機,我使用了 2-56 尺寸的螺母和螺栓,并且不得不稍微擴大舵機上的螺栓孔。實心線將 Go/Stop 伺服固定到位。

?
?
?
pYYBAGNORpuATMKgAAd_V7dGhKM076.jpg
?
1 / 2
?

?

第 3 步:連接 Arduino

電路如圖所示,描述如下:

  • Arduino 的 +5V 連接到面包板上的 +
  • Arduino 的 GND 連接到 - 在面包板上
  • 330 歐姆電阻從引腳 2 到黃色 LED 的長線和另一根 LED 線到 - 在面包板上
  • 330 歐姆電阻從引腳 4 到綠色 LED 的長線和另一根 LED 線到 - 面包板上
  • 330 歐姆電阻從引腳 7 到紅色 LED 的長線和另一根 LED 線到 - 在面包板上
  • 引腳 9 連接到 Go/Stop 伺服的信號線。是那個黃色的。
  • 引腳 10 連接到左/右舵機的信號線。
  • - 伺服系統的橙色線連接到單獨的 4.5 伏電源的正極。
  • - 伺服系統的棕色電線連接到 - 面包板上。
  • - 單獨電源的負號轉到 - 在面包板上。
  • HC-05 TXD 連接到 Arduino 的 RX(引腳 0)
  • HC-05 + 轉到面包板上的 +
  • HC-05 GND 連接到 - 在面包板上
poYBAGNORqOAEwTRAA4seuP-2Ts630.jpg
?

?

第 4 步:Arduino 草圖(代碼)

該代碼具有以下主要功能:

  • 從 MindWave 耳機讀取數據。
  • 當注意力超過 70 時打開綠色 LED 并移動 Go/Stop 伺服臂以推動 Go/Stop 觸發器。
  • 當注意力小于 70 時關閉綠色 LED 并將 Go/Stop 伺服臂移回其中點。
  • 檢測到閃爍時打開黃色 LED,并將閃爍信號設置為 1。
  • 1.2 秒后檢查第二次閃爍。
  • 如果是單次閃爍,將左/右伺服臂向“左”移動 2 秒鐘,然后將其轉回,并關閉黃色 LED。
  • 如果是雙閃,打開紅色 LED,關閉黃色 LED,將左/右伺服臂“向右”移動 2 秒鐘,然后將其轉回,然后關閉紅色 LED。
  • 在每個主要步驟中,在計算機上的串行監視器中顯示數據。

Arduino 草圖(代碼)可以從該項目中包含的.ino 文件中下載,或者可以將以下代碼復制并粘貼到新的 Arduino 草圖中。(在編寫這些指令時,instructables 系統有時會刪除位于代碼開頭的部分#include 語句。第一個應該是#include 后跟左箭頭 < 后跟 Servo.h 后跟右箭頭 > 和第二個應該是#include,后跟左箭頭<,然后是Mindwave.h,然后是右箭頭>)。

草圖使用一個特殊的庫,必須在運行草圖之前安裝。

這個項目可以不使用庫來完成,但是代碼會更復雜。從耳機讀取數據、提取注意力級別和檢查信號質量的代碼在本網站包含的示例代碼中:

草圖應該可以成功編譯,但可能會顯示 MindWave.cpp 庫的警告消息。這可能會被忽略。

//

// 草圖使用大腦的注意力水平進行 Go/Stop 和

// 轉彎時眨眼。

//

// 硬件:Arduino Uno、HC-05 藍牙、NeuroSky MindWave Mobile 2。

// 高度關注 = 綠色 LED 亮(開始);低 Att = 綠色 LED 熄滅(停止)。

//第一次閃爍&左轉=黃色LED;雙閃 = 紅色 LED(右)。

// 左右轉為 2 秒。

// 信息顯示在串行監視器上。

//

#include

#include // 來自 GitHub 的 Mindwave 庫>orgicus

思維波思維波;

#define YLED 2 // 定義 LED 引腳

#define GLED 4

#定義 RLED 7

伺服myservoG;// 開始/停止伺服

伺服myservoLR;//左/右舵機

int gosignal = 0; // 走或停指標

int 閃爍信號 = 0; // 第一次閃爍后的信號計數器

int 閃爍 = 0; // 一組閃爍次數

長時間未簽名;// 經過時間的變量

無符號長時間0;// 第一次閃爍時間的變量

無符號長時間1;// 從第一次閃爍到第二次閃爍的時間變量

無效設置(){

Serial.begin(MINDWAVE_BAUDRATE);

pinMode(13,輸出);// 將 LED 引腳初始化為輸出

pinMode(GLED,輸出);

pinMode(YLED,輸出);

pinMode(RLED,輸出);

myservoG.attach(9); // 將 Go/Stop 伺服連接到引腳 9

myservoG.write(90); // 將舵機移動到中點

myservoLR.attach(10); // 將左/右伺服器連接到引腳 10

myservoLR.write(90); // 將舵機移動到中點

延遲(15);// 給伺服時間移動到那里

}

無效 onMindwaveData() {

if (mindwave.quality() < 90) { // 如果質量差,板載 LED 亮起

數字寫入(13,高);

} 別的 {

數字寫入(13,低);

}

// 檢查注意力等級

if ((mindwave.attention() > 70) && (gosignal == 0)) {

Serial.print("Go, ");

Serial.print("\注意:");

Serial.print(mindwave.attention());

時間=毫秒();

Serial.print("\ttime:");

序列號。打印(時間);

序列號.println();

數字寫入(GLED,高);// 綠色 LED 亮

信號 = 1; // 表示去

myservoG.write(130); // 機器人前進的伺服

延遲(4000);// 在檢查前等待 4 秒

// 如果注意力下降

}

if ((mindwave.attention() < 70) && (gosignal == 1)) {

Serial.print("停止, ");

Serial.print("\注意:");

Serial.print(mindwave.attention());

時間=毫秒();

Serial.print("\ttime:");

序列號。打印(時間);

序列號.println();

數字寫入(GLED,低);// 綠色 LED 熄滅

信號 = 0; // 表示停止前進

myservoG.write(90); // 機器人停止伺服

延遲(15);

}

// 第一次閃爍

if ((mindwave.quality() < 95) && (blinksignal == 0)) {

Serial.print("第一次閃爍");

Serial.print("\tquality:");

Serial.print(mindwave.quality());

時間=毫秒();

Serial.print("\ttime:");

序列號。打印(時間);

Serial.print("\tgosignal:");

Serial.print(gosignal);

Serial.print("\tblinksignal:");

串行打印(閃爍信號);

序列號.println();

time0 = 毫秒();

眨眼 = 1;

閃爍信號 = 1;// 第一次閃爍

數字寫入(YLED,高);// 黃色 LED 亮

}

// 閃爍后立即顯示質量,并增加計數器

// 來自耳機的信號

if ((blinksignal > 0) && (blinksignal < 4)) {

Serial.print("\tquality:");

Serial.print(mindwave.quality());

時間=毫秒();

Serial.print("\ttime:");

序列號。打印(時間);

Serial.print("\tgosignal:");

Serial.print(gosignal);

Serial.print("\tblinksignal:");

串行打印(閃爍信號);

序列號.println();

如果(閃爍信號> 0){

閃爍信號 = 1 + 閃爍信號;// 增加信號計數器

}

time1 = millis() - time0;

}

// 雙閃?

if ((mindwave.quality()<95) && (time1 > 1200)){

Serial.print("\tquality:");

Serial.print(mindwave.quality());

時間=毫秒();

Serial.print("\ttime:");

序列號。打印(時間);

Serial.print("\tgosignal:");

Serial.print(gosignal);

Serial.print("\tblinksignal:");

串行打印(閃爍信號);

Serial.print("\ttime1:");

序列號.print(time1);

Serial.print("\tblinks now = 2");

序列號.println();

眨眼 = 2;

}

// 單閃左轉

if ((blinks == 1) && (blinksignal > 3)) {

Serial.print("左, ");

Serial.print("\t單閃");

時間=毫秒();

Serial.print("\ttime:");

序列號。打印(時間);

Serial.print("\tgosignal:");

Serial.print(gosignal);

Serial.print("\tblinksignal:");

串行打印(閃爍信號);

序列號.println();

閃爍信號 = 0; // 為下一次閃爍重置

// 機器人左轉輪子 2 秒的代碼

myservoLR.write(55);

延遲(2000);

數字寫入(YLED,低);// 黃色 LED 熄滅

// 機器人將車輪從左轉直的代碼

myservoLR.write(90);

延遲(15);

}

// 雙閃右轉

if ((blinks == 2) && (blinksignal > 3)) {

Serial.print("對,");

Serial.print("\t雙閃");

時間=毫秒();

Serial.print("\ttime:");

序列號。打印(時間);

Serial.print("\tgosignal:");

Serial.print(gosignal);

Serial.print("\tblinksignal:");

串行打印(閃爍信號);

序列號.println();

數字寫入(RLED,高);// 如果右轉,紅色 LED 亮

數字寫入(YLED,低);// 黃色 LED 熄滅

閃爍信號 = 0; // 為下一次閃爍重置

// 機器人右轉輪子 2 秒的代碼

myservoLR.write(120);

延遲(2000);

數字寫入(RLED,低);// 紅色 LED 熄滅

// 機器人從右轉直的代碼

myservoLR.write(90);

延遲(15);

}

}

無效循環(){

mindwave.update(串行,onMindwaveData);

}

第 5 步:上傳 Arduino 草圖并使用它

  • 在計算機上啟動 Arduino 應用程序。
  • 將伺服系統連接到單獨的電源。伺服臂移動了幾度,但當草圖運行時它們會移回中點。
  • 將 Arduino 的 USB 電纜連接到計算機。HC-05 應該快速閃爍。
  • 斷開 HC-05 的 TXD 線與 Arduino 的 RX(引腳 0)的連接,上傳草圖,然后重新連接此 RX 線。
  • 打開串行監視器。檢查波特率是否為 57600。
  • 打開遙控卡車的電源。
  • 開啟 MindWave。幾秒鐘后,HC-05 應每 3-4 秒快速閃爍 2 次,表示設備已配對。
  • 將 MindWave 戴在頭上并連接耳夾。它現在應該將數據發送到 Arduino。
  • 完成后,關閉串行監視器。
  • 關閉 MindWave。
  • 斷開 USB 電纜與 Arduino 或計算機的連接。
  • 退出 Arduino 應用程序。
  • 從單獨的電源上斷開伺服的電源線。
  • 關閉卡車電源。

將草圖上傳到 Arduino 后,它可以使用單獨的電源,而不是通過 USB 連接到計算機。唯一的區別是沒有串行監視器來顯示數據。步驟如下:

  • 將伺服系統連接到單獨的電源。伺服臂移動了幾度,但當草圖運行時它們會移回中點。
  • 將 Arduino 連接到電源。
  • 打開遙控卡車的電源。
  • 開啟 MindWave。幾秒鐘后,HC-05 應每 3-4 秒快速閃爍 2 次,表示設備已配對。
  • 將 MindWave 戴在頭上并連接耳夾。它現在應該將數據發送到 Arduino。
  • 完成后,關閉 MindWave。
  • 斷開 Arduino 與電源的連接。
  • 從單獨的電源上斷開伺服的電源線。
  • 關閉卡車電源。

重要筆記

如果你的 HC-05 的固件是 2 或 3 版本,我的理解是在 AT+INQ 命令之前需要 AT+INIT 命令。我的HC-05的固件是4.0-20190815版本,AT+INIT命令不識別。要檢查 HC-05 的版本,請輸入以下命令:AT+VERSION

如果您按下 Arduino 的重置按鈕,這會將 HC-05 的設置恢復為出廠默認設置。必須重復所有配對步驟。

如果在上傳草圖之前 HC-05 的 TXD 未與 Arduino 的 RX 斷開連接,則會在計算機屏幕上 Arduino 應用程序窗口的底部出現錯誤消息。以下錯誤消息重復 10 次:avrdude: stk500_recv(): 程序員沒有響應avrdude: stk500_getsync() 嘗試 1 of 10: not in sync: resp=0x00

使用舵機時,需要單獨的電源,例如 3 節 1.5 伏電池。Arduino 的 GND 必須連接到外部電源的負極。如果沒有外部電源,USB 源的電源似乎不足,并且 HC-05 會在伺服激活時失去配對。它在幾秒鐘后配對,然后在下次伺服激活時取消配對。

?


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

評論

查看更多

下載排行

本周

  1. 1山景DSP芯片AP8248A2數據手冊
  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元宇宙深度解析—未來的未來-風口還是泡沫
  10. 6.40 MB  |  227次下載  |  免費
  11. 6迪文DGUS開發指南
  12. 31.67 MB  |  194次下載  |  免費
  13. 7元宇宙底層硬件系列報告
  14. 13.42 MB  |  182次下載  |  免費
  15. 8FP5207XR-G1中文應用手冊
  16. 1.09 MB  |  178次下載  |  免費

本月

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

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費
  3. 2protel99se軟件下載(可英文版轉中文版)
  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十天學會AVR單片機與C語言視頻教程 下載
  14. 158M  |  183279次下載  |  免費
  15. 8proe5.0野火版下載(中文版免費下載)
  16. 未知  |  138040次下載  |  免費
主站蜘蛛池模板: 337p欧洲亚大胆精品| 亚洲高清国产拍精品影院| 日本毛片久久国产精品| 一色屋精品亚洲香蕉网站| 国产精品爆乳尤物99精品| 强奷表妺好紧2| 91麻豆国产精品91久久久| 久久精品99热超碰| 亚洲精品欧美精品中文字幕| 国产亚洲精品久久77777| 偷柏自拍亚洲综合在线| 国产成人精品综合久久久| 色姣姣狠狠撩综合网| 成人性生交片无码免费看| 日本黄色www| 国产成人高清精品免费观看| 少妇被躁爽到高潮无码久久| 福利视频一二三在线观看| 首页 国产 亚洲 中文字幕| 国产360激情盗摄全集| 伸进同桌奶罩里摸她胸作文| 国产国产乱老熟女视频网站97| 失禁 调教 刺激 哭喊男男| 国产麻豆精品人妻无码A片| 亚洲国产精品一区二区三区在线观看| 国产精品人妻无码久久久蜜桃臀| 亚洲 欧美 中文 日韩 视频| 国内精品自产拍在线少密芽| 亚洲精品久久YY5099| 久久久久久久国产精品视频| 在线亚洲97se| 欧美人与动牲交A免费| 国产成人精品在视频| 亚洲国产中文在线视频免费| 久久免费资源福利资源站| 99无人区码一码二码三| 神电影院午夜dy888我不卡| 国产午夜精品福利久久| 一级淫片bbbxxx| 欧美肥胖女人bbwbbw视频| 国产成人免费不卡在线观看|