Агуулгын хүснэгт:

Ангараг гаригийн тагнуулын робот: 4 алхам
Ангараг гаригийн тагнуулын робот: 4 алхам

Видео: Ангараг гаригийн тагнуулын робот: 4 алхам

Видео: Ангараг гаригийн тагнуулын робот: 4 алхам
Видео: 10 САМЫХ ИННОВАЦИОННЫХ САМОЛЕТОВ И БУДУЩИХ ЛЕТАТЕЛЬНЫХ МАШИН В РАЗРАБОТКЕ 2021 - 2022 2024, Долдугаар сарын
Anonim
Ангараг гаригийн тагнуулын робот
Ангараг гаригийн тагнуулын робот

Энэхүү зааварчилгаа нь Ангараг гаригийг судлах роботыг програмчлах, удирдах зааварчилгаа юм.

Эхлэхийн тулд та дараах материалуудын жагсаалтыг авах ёстой: Теннесси мужийн Эннингерийн их сургуулийн Tickle коллежийн захиалгаар цэнэглэгдсэн iRobot, iRobot дахь Raspberry Pi-тэй холбогдсон утасгүй сүлжээ, UTK iRobot цэнэглэгч, Wifi ашиглах боломжтой. MATLAB болон интернетэд холбогдсон компьютер.

Алхам 1: Roomba хэрэгслийн хайрцаг

Roomba хэрэгслийн хайрцаг
Roomba хэрэгслийн хайрцаг

MATLAB -ийг нээж, төслөөсөө хадгалах код файлуудын шинэ хавтас үүсгэнэ үү. MATLAB дээр шинэ скрипт нээгээд доорх кодыг ажиллуулна уу. Скриптийг ажиллуулсны дараа шинэ хавтасыг MATLAB файл хайх директорт нэмнэ үү.

Код:

roombaInstallclc функц; Файл суулгах файлуудын % жагсаалт = {'roomba.m', 'roombaSim.m', 'roombaSimGUI.m', 'roombaSimGUI.fig'}; сонголтоос суулгах % байршил = weboptions ('CertificateFilename', ''); Сертификатын шаардлагын серверийг үл тоомсорлохыг хэлнэ үү = 'https://ef.engr.utk.edu/ef230/projects/roomba-f2016/install/'; dlgTitle = 'Roomba суулгах/шинэчлэх'; % display зорилго ба баталгаажуулалтын хүсэлтийг авах = {'Энэ програм нь эдгээр EF 230 Roomba файлуудыг татаж авах болно:' '' strjoin (files, '') '' ':' '' cd '' 'Та үргэлжлүүлэхийг хүсч байна уу? '}; дуут дохио; yn = questdlg (хүлээх мөр,… dlgTitle,… 'Тийм', 'Үгүй', 'Тийм');

if ~ strcmp (yn, 'Yes'), буцах; Төгсгөл

% байгаа файлуудын жагсаалтыг авах боломжтой_files = файлууд (cellfun (@exist, files)> 0); if ~ isempty (existing_files) % тэдгээрийг орлуулах нь үнэхээр зөв эсэхийг шалгаарай = {'Та эдгээр файлуудыг сольж байна:' '' strjoin (existing_files, '') '' 'Орлуулах нь зөв үү?' }; дуут дохио; yn = questdlg (хүлээх мөр,… dlgTitle,… 'Тийм', 'Үгүй', 'Тийм'); if ~ strcmp (yn, 'Yes'), буцах; төгсгөл төгсгөл

% файлуудыг татаж авах cnt = 0; i = 1 -ийн хувьд: урт (файлууд) f = файлууд {i}; disp (['Татаж авах' f]); url = [сервер f] оролдоно уу; websave (f, url, сонголтууд); % аюулгүй байдлын алдаанаас зайлсхийхийн тулд нэмэлт сонголтууд cnt = cnt + 1; catch disp (['Татаж авахад алдаа гарсан' f]); дамми = [f '.html']; хэрэв байгаа бол (дамми, 'файл') == 2 устгах (дамми) төгсгөлийн төгсгөл

if cnt == length (files) msg = 'Суулгалт амжилттай боллоо'; хүлээх (msgbox (msg, dlgTitle)); else msg = 'Суулгалтын алдаа - дэлгэрэнгүйг командын цонхноос үзнэ үү'; хүлээх (errordlg (msg, dlgTitle))); Төгсгөл

төгсгөл %roombaInstall

Алхам 2: Холбогдоход бэлдэж байна

Холбогдохоор бэлтгэж байна
Холбогдохоор бэлтгэж байна
Холбогдохоор бэлтгэж байна
Холбогдохоор бэлтгэж байна

Роботоос цухуйсан микро USB-ийг Raspberry Pi-ийн доод порт руу холбоно уу. Дараа нь Roomba -ийн дээд хэсэгт залгах цэг ба цэг товчлууруудыг нэгэн зэрэг дарж, Roomba дээрх гэрэл бүдгэрэх хүртэл барина. Гарсны дараа та Roomba -аас электрон хуваарийг сонсох ёстой.

Алхам 3: Роботтой холбогдох

Роботтой холбогдож байна
Роботтой холбогдож байна

Компьютер дээрх боломжтой сүлжээг нээгээд компьютер болон Raspberry Pi -ийн хооронд байгаа сүлжээг сонгоно уу. MATLAB -ийн одоогийн фолдерт байгаа төслийнхөө хавтас дээр хулганы баруун товчийг дараад 1 -р алхам дээр татаж авсан roomba хэрэгслийн хайрцгийг сонгоод зам руу нэмнэ үү. Олон тооны Pi холболтод зориулагдсан сүлжээнд Roomba ангиллын объект үүсгэж роботыг зааж өгнө үү. Доорх жишээг үзнэ үү

Хэрэв танд 7 дугаарт өгсөн Roomba байгаа бол дараахь зүйлийг оруулна уу.

r = roomba (7)

Энэ хувьсагчийг одоо roomba -д оноож өгсөн гэдгийг санаарай, роботод өгсөн аливаа тушаалыг тухайн хувьсагч удирдан чиглүүлэх ёстой.

Алхам 4: Код

Код
Код

drive.google.com/drive/folders/1OVR5oTHUsn…

Дээрх холбоосыг ашиглан бүх.m файлуудыг үндсэн програмыг ажиллуулах фолдерт хадгална уу. Холбоос нь линктэй бүх хүмүүст нээлттэй байх ёстой. Одоогийн фолдерт шинэ скрипт нээгээд доор үзүүлсэн шиг mycontrolprogram.m -ийг ажиллуулна уу.

mycontrolprogram (r) global m m = mobiledev функц; emailInit (); гүйх = 1; дэлхийн f дэлхийн тооллын тоо = 0; f = r; дэлхийн хэмжээний дирек = 0; r.getAngle; r.getDistance; дэлхийн curLoc curLoc = [0, 0]; дэлхийн pts pts = тэг (1, 2, 2); гарын авлага = үнэн; graphObs (1); v = 0.15; while <50 if (manual == false) obsDetect (r, v, pts); direc = direc + r.getAngle; r.setLEDDigits (num2str (тоо)); өөр direc = direc + r.getAngle; manualDrive (); төгсгөл төгсгөл figSend (); Төгсгөл

Робот одоо төлөвлөсөн ажлаа хийх ёстой.

Зөвлөмж болгож буй: