資料介紹
描述
“Segbot”是 UIUC 的 SE 423 級平衡 segway 機器人。segbot 由 Dan Block ([email protected]) 教授設計的電路板和 F28379D 微控制器組成,該微控制器是德州儀器 C2000 系列的一部分。該項目的目標是通過藍牙向 segbot 無線發送轉向命令。
藍牙通訊
藍牙 LE UART Friend 與 Bluefruit Connect 應用程序兼容。字符通過UART傳輸到segbot,可以在計算機終端上查看。從 segbot 傳輸的字符可以在應用程序中查看或繪制。在我的演示中,我從手機發送了加速度計數據,并用它來引導 segbot 通過障礙物。
傳入的加速度計數據由前綴“!A”標識,后跟三個浮點值。由于數據是通過 UART 傳輸的,因此無法立即解釋原始值。實現了一個聯合,將六個 16 位整數與三個 32 位浮點數存儲在內存中的同一位置。
typedef union phonedata_s{
uint16_t rawdata[6];
float fltdata[3];
}phonedata_t;
phonedata_t phoneaccel; //use new data type defined in union
下面的代碼在串行接收函數中。首先,傳入的 8 位值保存在過去狀態的數組中。然后通過查找前綴“!A”來篩選這些值以確定它是否是加速度計數據。然后,與加速度計數據對應的值組合成 16 位整數并保存為上面定義的新數據類型。然后,這些值存儲為浮點數。
if((past[0] == '!')&&(past[1] == 'A')){
//incoming accelerometer data
//X
phoneaccel.rawdata[0] = (past[3]<<8)|past[2];
phoneaccel.rawdata[1] = (past[5]<<8)|past[4];
//Y
phoneaccel.rawdata[2] = (past[7]<<8)|past[6];
phoneaccel.rawdata[3] = (past[9]<<8)|past[8];
//Z
phoneaccel.rawdata[4] = (past[11]<<8)|past[10];
phoneaccel.rawdata[5] = (past[13]<<8)|past[12];
ble_x = phoneaccel.fltdata[0];
ble_y = phoneaccel.fltdata[1];
ble_z = phoneaccel.fltdata[2];
操舵
在加速度計數據被標記后,仍然在串行接收功能中,對應于 x、y 和 z 方向上的加速度的三個浮點數被解釋為 segbot 的轉向指令。segbot 通過更改“turnrate”和“FwdBackOffset”值來驅動。假設手機將被側向操縱,y 加速度的變化對應于轉向指令,z 加速度的變化對應于向前和向后的運動。
?

當加速度在指定方向達到某個閾值時,發出轉向指令。閾值是這樣的,即故意改變手機位置將引導 segbot,但方向的小幅波動不會。轉向速度已調整為我認為最容易轉向的速度,但可以調整為更快或更慢。
//Interpret phone accel data as steering instructions
if(ble_y >= 0.3){
//turn left
turnrate = -4.0;
}else if(ble_y <= -0.3){
//turn right
turnrate = 4.0;
}else if(fabs(ble_y) < 0.3){
//don't turn
turnrate = 0;
}
if(ble_z <= -0.3){
//go forward
FwdBackOffset = -1.0;
}else if(ble_z >= 0.3){
//go backward
FwdBackOffset = 1.0;
}else if(fabs(ble_z) < 0.3){
//don't go forward or backward
FwdBackOffset = 0;
}
接線

上圖顯示了 UART Friend 到 segbot 的接線圖。藍牙傳感器連接到 5 V 電源。芯片的接收線連接到segbot的發送線,發送線連接到segbot的接收線,對應F28739D處理器的Serial C。為了在數據模式下工作,藍牙芯片的 CTS 引腳必須接地。它連接到 GPIO 引腳并設置為低電平,從而可以通過編輯代碼輕松更改模式。
分段機器人組件
慶典
當 segbot 完成障礙賽時,它會通過蜂鳴器播放 Kool & The Gang 的“Celebration”并跳一段小舞。當麥克風聽到我的歡呼聲時會觸發此響應。這是由大約 625 Hz 的頻率識別的,我使用頻率分析儀應用程序發現了這個頻率。麥克風以 10 kHz 的速率進行采樣,并通過 Goertzel 算法傳遞數據,該算法搜索 625 Hz 的目標頻率。在我的另一個項目中有更多關于音符檢測以及歌曲和舞蹈的信息,鏈接在這里。
- 檢測機器人開源分享
- 坦克機器人開源分享
- 掃地機器人開源資料 44次下載
- 機器人守衛開源分享
- 簡單的藍牙控制機器人開源
- 伺服機器人開源分享
- 堆肥機器人開源分享
- 藍牙控制機器人開源
- 英雄機器人開源
- 機器人開源案例
- 藍牙控制機器人車開源分享
- 藍牙控制機器人開源分享
- Arduino機器人開源分享
- 基于DSP和PC的農業機器人控制系統 18次下載
- 機器人伺服馬達的轉向控制原理分析方案 1次下載
- 字節發布機器人領域首個開源視覺-語言操作大模型,激發開源VLMs更大潛能 562次閱讀
- 機器人技術中常用的路徑規劃算法的開源庫 1188次閱讀
- 鑄造機器人是什么?選擇工業機器人應該考慮的方向 1186次閱讀
- 面對疫情 醫療機器人能幫上什么忙? 2236次閱讀
- dfrobotSparki機器人套裝簡介 2207次閱讀
- 工業機器人編程入門_工業機器人的編程要求 9787次閱讀
- 醫用機器人的定義_醫用機器人發展 3257次閱讀
- 醫用機器人的功能_醫用機器人分類 2462次閱讀
- 機器人控制器有哪些類型_機器人控制器發展 1.2w次閱讀
- 協作機器人的起源_為什么需要協作機器人 8322次閱讀
- 機器視覺的機器人取代四臺傳統的火焰處理機器人 3370次閱讀
- 如何區分機器人、協作機器人和移動機器人? 7029次閱讀
- 關于被動同心轉向式多履帶全向移動機器人的設計 9148次閱讀
- 軟體機器人 前所未見的機器人 3770次閱讀
- 機器人的最佳編程語言是什么?機器人十大流行編程語言匯總 3.5w次閱讀
下載排行
本周
- 1一款入耳式耳機的仿真與分析
- 0.44 MB | 2次下載 | 免費
- 2Eurotherm TKS Temperature 用戶手冊
- 1.46 MB | 2次下載 | 免費
- 3無線系統中天線和RF元件電磁建模
- 7.48 MB | 1次下載 | 4 積分
- 4納祥科技NX6806中文規格書,8位AD和DA單片機拓展,國產替代PCF8591
- 3.04 MB | 1次下載 | 免費
- 5藍牙無線遙控小車
- 10.49 MB | 1次下載 | 2 積分
- 6Multisim模擬電路仿真教程
- 1.93 MB | 1次下載 | 3 積分
- 7MOSFET講解-10(可下載)
- 524.12 KB | 次下載 | 免費
- 8DMP300C1型微機變壓器保護測控裝置技術說明書
- 4.11 MB | 次下載 | 10 積分
本月
- 1晶體三極管的電流放大作用詳細說明
- 0.77 MB | 32次下載 | 2 積分
- 2Python從入門到精通背記手冊
- 18.77 MB | 25次下載 | 1 積分
- 3雙極型三極管放大電路的三種基本組態的學習課件免費下載
- 4.03 MB | 23次下載 | 1 積分
- 4多級放大電路的學習課件免費下載
- 1.81 MB | 21次下載 | 2 積分
- 5九陽豆漿機高清原理圖
- 2.47 MB | 16次下載 | 1 積分
- 6AIWA HS-J202/HS-J202M/HS-J800維修手冊
- 13.60 MB | 15次下載 | 10 積分
- 71875功放原理圖
- 0.04 MB | 11次下載 | 免費
- 8東芝彩色電視機29SF6C維修說明書
- 4.86 MB | 9次下載 | 1 積分
總榜
- 1matlab軟件下載入口
- 未知 | 935127次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關降壓/升壓雙向直流/直流轉換器 PCB layout 設計
- 1.48MB | 420063次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233089次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費下載
- 340992 | 191382次下載 | 10 積分
- 5十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183337次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81585次下載 | 10 積分
- 7Keil工具MDK-Arm免費下載
- 0.02 MB | 73814次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65988次下載 | 10 積分
評論