資料介紹
描述
“Segbot”是 UIUC 的 SE 423 級平衡 segway 機器人。segbot 由 Dan Block (d-block@illinois.edu) 教授設計的電路板和 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山景DSP芯片AP8248A2數據手冊
- 1.06 MB | 532次下載 | 免費
- 2RK3399完整板原理圖(支持平板,盒子VR)
- 3.28 MB | 339次下載 | 免費
- 3TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費
- 4DFM軟件使用教程
- 0.84 MB | 295次下載 | 免費
- 5元宇宙深度解析—未來的未來-風口還是泡沫
- 6.40 MB | 227次下載 | 免費
- 6迪文DGUS開發指南
- 31.67 MB | 194次下載 | 免費
- 7元宇宙底層硬件系列報告
- 13.42 MB | 182次下載 | 免費
- 8FP5207XR-G1中文應用手冊
- 1.09 MB | 178次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 2555集成電路應用800例(新編版)
- 0.00 MB | 33566次下載 | 免費
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費
- 4開關電源設計實例指南
- 未知 | 21549次下載 | 免費
- 5電氣工程師手冊免費下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費
- 6數字電路基礎pdf(下載)
- 未知 | 13750次下載 | 免費
- 7電子制作實例集錦 下載
- 未知 | 8113次下載 | 免費
- 8《LED驅動電路設計》 溫德爾著
- 0.00 MB | 6656次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費
- 2protel99se軟件下載(可英文版轉中文版)
- 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十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183279次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138040次下載 | 免費
評論
查看更多