電子發(fā)燒友App

硬聲App

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

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

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>電子資料>TI RSLK MAX增強(qiáng)基礎(chǔ)套件

TI RSLK MAX增強(qiáng)基礎(chǔ)套件

2023-06-27 | zip | 0.00 MB | 次下載 | 免費(fèi)

資料介紹

描述

此頁(yè)面將介紹 TI RSLK MAX 增強(qiáng)項(xiàng)目的以下組件:

RSLK MAX 套件

pYYBAGNy2oSAZ-5iAAHemUSE9Eg932.png
RSLK 基本套件(不包括前面的母頭)
?

完全組裝后的基本套件將如上圖所示,其中包括以下內(nèi)容:

  • 機(jī)器人底盤
  • MSP432 微控制器;這負(fù)責(zé)實(shí)施您為此套件創(chuàng)建的任何程序
  • 兩個(gè)帶輪子的有刷直流電機(jī)
  • 用于碰撞檢測(cè)的兩組碰撞傳感器
  • 滾珠;安裝在底盤下方,這將在機(jī)器人移動(dòng)時(shí)保持平衡

該套件由 6 節(jié) AA 電池供電,該電池不包含在套件中。

該套件本身功能齊全,因此請(qǐng)隨時(shí)開(kāi)始對(duì)隨附的電機(jī)和碰撞傳感器進(jìn)行編程。您可以在此處找到入門指南:https ://university.ti.com/en/faculty/ti-robotics-system-learning-kit/ti-rslk-max-edition-curriculum

漫游者

TI RSLK 機(jī)器人由兩個(gè)無(wú)刷直流電機(jī)驅(qū)動(dòng),每側(cè)一個(gè)電機(jī)。機(jī)器人由其后部的單個(gè)全向球輪平衡。這種設(shè)計(jì)允許差速轉(zhuǎn)向和精確轉(zhuǎn)向。

在流動(dòng)站上,每個(gè)電機(jī)都連接到旋轉(zhuǎn)編碼器和 DRV8838 H 橋電機(jī)驅(qū)動(dòng)器旋轉(zhuǎn)編碼器允許測(cè)量有關(guān)電機(jī)位置、速度和加速度的信息。H 橋允許有刷電機(jī)改變方向。通過(guò)使用 PWM 信號(hào)快速啟用和禁用電機(jī),可以控制每個(gè)電機(jī)的速度。PWM 信號(hào)通過(guò)在電機(jī)上產(chǎn)生平均電壓來(lái)控制輪速。

流動(dòng)站還包含一個(gè)基本控制系統(tǒng),使用編碼器輸出根據(jù)給定的 RPM 調(diào)整每個(gè)電機(jī)的速度。由于左右電機(jī)通常不完全相同,因此一個(gè)電機(jī)的運(yùn)行速度通常比另一個(gè)電機(jī)稍高,控制系統(tǒng)旨在糾正這種情況。控制系統(tǒng)以一階補(bǔ)償器的形式實(shí)現(xiàn)。您可以在下圖中看到補(bǔ)償器的好處。

poYBAGNy2oeAPkBgAACu-J6V2lU391.png
比較補(bǔ)償?shù)牧鲃?dòng)站運(yùn)動(dòng)與非補(bǔ)償運(yùn)動(dòng)的性能的圖表
?
pYYBAGNy2oqAC1HWAAGJDJxizHo855.jpg
補(bǔ)償?shù)膶?shí)際好處
?

示例代碼中提供了一個(gè) PWM 庫(kù)來(lái)提供基礎(chǔ)。該 PWM 庫(kù)允許用戶簡(jiǎn)單地輸入所需的頻率、占空比和輸出引腳。這個(gè)庫(kù)是作為一個(gè)多用途庫(kù)構(gòu)建的,并且在抓手和流動(dòng)站實(shí)施中都使用了。流動(dòng)站移動(dòng)的主要行為是向前、向后和向左或向右旋轉(zhuǎn)。在每個(gè)行為中,都有單獨(dú)的函數(shù)用于移動(dòng)指定的時(shí)間和距離,或指定的度數(shù)用于旋轉(zhuǎn)函數(shù)。該庫(kù)還為您提供了實(shí)施控制系統(tǒng)的選項(xiàng)。

以下是一些函數(shù)示例:

//  moveForwardForTimeComp
//  robot moves forward for a specified amount of time
//  inputs:     _rpm indicates robot speed
//              milliSecs indicates amount of time
//  outputs:    none
void moveForwardForTimeComp(uint32_t _rpm, uint32_t milliSecs)
{
    enableCompensator();
    //nominal _rpm unit is deci rpm
    move_timer.target_count = milliSecs;
    move_timer.count = 0;
    move_end_cond = TIME;

    right_wheel_data.des_rpm = _rpm;
    left_wheel_data.des_rpm = _rpm;

    setWheelDirForward(&right_wheel_data);
    setWheelDirForward(&left_wheel_data);
    rover_state = MOVING_FORWARD;
}

//  moveBackwardForTimeComp
//  robot moves backward for a specified amount of time
//  inputs:     _rpm indicates robot speed
//              milliSecs indicates amount of time
//  outputs:    none
void moveBackwardForTimeComp(uint32_t _rpm, uint32_t milliSecs)
{
    enableCompensator();
    //nominal _rpm unit is deci rpm
    move_timer.target_count = milliSecs;
    move_timer.count = 0;
    move_end_cond = TIME;

    right_wheel_data.des_rpm = _rpm;
    left_wheel_data.des_rpm = _rpm;

    setWheelDirBackward(&right_wheel_data);
    setWheelDirBackward(&left_wheel_data);
    rover_state = MOVING_BACKWARD;
}

//  rotateRightForTimeComp
//  robot rotates to the right for a specified amount of time
//  inputs:     _rpm indicates robot speed
//              milliSecs indicates amount of time
//  outputs:    none
void rotateRightForTimeComp(uint32_t _rpm, uint32_t milliSecs)
{
    enableCompensator();
    move_timer.target_count = milliSecs;
    move_timer.count = 0;
    move_end_cond = TIME;

    right_wheel_data.des_rpm = _rpm;
    left_wheel_data.des_rpm = _rpm;

    setWheelDirForward(&left_wheel_data);
    setWheelDirBackward(&right_wheel_data);
    rover_state = ROTATING_RIGHT;
}

//  rotateLeftForTimeComp
//  robot rotates to the left for a specified amount of time
//  inputs:     _rpm indicates robot speed
//              milliSecs indicates amount of time
//  outputs:    none
void rotateLeftForTimeComp(uint32_t _rpm, uint32_t milliSecs)
{
    enableCompensator();
    move_timer.target_count = milliSecs;
    move_timer.count = 0;
    move_end_cond = TIME;

    right_wheel_data.des_rpm = _rpm;
    left_wheel_data.des_rpm = _rpm;

    setWheelDirForward(&right_wheel_data);
    setWheelDirBackward(&left_wheel_data);
    rover_state = ROTATING_LEFT;
}

碰撞傳感器

poYBAGNy2oyAKu8uAABT51_nRto540.png
?

RSLK-MAX 基礎(chǔ)套件中的碰撞傳感器與 IR 傳感器一起使用,可檢測(cè)由于障礙物高度較低或光照條件差而導(dǎo)致 IR 傳感器無(wú)法檢測(cè)到的障礙物。

pYYBAGNy2o-Abpz7AAEApkUtXv0917.png
七段顯示器可由碰撞傳感器觸發(fā)
?

。

?

OPT3101 傳感器陣列

poYBAGNy2pGABpJeAABaEyldunM843.png
?

OPT3101 傳感器陣列負(fù)責(zé)在 RoboNav 模式下檢測(cè)流動(dòng)站前方的障礙物,這是我們的自動(dòng)駕駛系統(tǒng)。該組件上有三組傳感器,它們利用飛行時(shí)間來(lái)確定傳感器到任何障礙物的距離。您需要將隨附的接頭焊接到機(jī)器人的 PCB 上,以便將 IR 傳感器安裝到機(jī)器人的正面,如上圖所示。

pYYBAGNy2pWAcWk8AAGY8sLTWPM718.png
通過(guò)串行終端驗(yàn)證紅外傳感器數(shù)據(jù)
?

。

?

標(biāo)準(zhǔn)夾持器套件 A

poYBAGNy2piALhJCAAMTolBLWOo45.jpeg
安裝在 RSLK MAX 套件上的夾持器
?

夾持器使用伺服電機(jī)以一個(gè)自由度打開(kāi)和關(guān)閉手臂。手臂能夠容納一個(gè)標(biāo)準(zhǔn)的鋁罐。它安裝在底盤的后部,需要一個(gè) 3D 打印的安裝支架進(jìn)行組裝。

poYBAGNy2puAEUgJAADJgqWBABY297.png
夾持器安裝
?

以下是一些用于夾具功能的函數(shù):

//opens the servo as defined by 'openDeg'
void openServo(Servo180 *servoSettings)
{
    moveServoToDegree(servoSettings->openDeg, servoSettings);
}

//closes the servo as defined by 'closedDeg'
void closeServo(Servo180 *servoSettings)
{
    moveServoToDegree(servoSettings->closedDeg, servoSettings);
}

//toggles between open and closed, as defined by 'closedDeg' and 'openDeg'
//if servo is not currently open or closed, the servo is moved to the open position
void toggleOpenClose(Servo180 *servoSettings)
{
    if(servoSettings->degree == servoSettings->closedDeg)
        openServo(servoSettings);
    else if(servoSettings->degree == servoSettings->openDeg)
        closeServo(servoSettings);
    else
        openServo(servoSettings);
}

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

評(píng)論

查看更多

下載排行

本周

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

本月

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

總榜

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