Мазмуну:
Video: Марс чалгындоо роботу: 4 кадам
2024 Автор: John Day | [email protected]. Акыркы өзгөртүү: 2024-01-30 10:41
Бул Instructable Марстын чалгындоо роботун программалоо жана башкаруу боюнча этап-этабы менен көрсөтмө болуп саналат.
Баштоо үчүн, сиз төмөнкү материалдардын тизмесин алышыңыз керек: Теннесси штатындагы Эннингинг Университетинин Тикле Колледжи тарабынан ыңгайлаштырылган заряддалган iRobot, iRobotто Raspberry Pi менен туташкан зымсыз тармак, UTK iRobot заряддагыч түзүлүш, Wifiга жөндөмдүү MATLAB жана интернетке кирүү мүмкүнчүлүгү бар компьютер.
1 -кадам: Roomba Toolbox
MATLABты ачыңыз жана долбооруңуздан сактала турган код файлдары үчүн жаңы папканы түзүңүз. MATLABда жаңы скрипт ачыңыз жана төмөнкү кодду иштетиңиз. Скрипт иштетилгенден кийин, жаңы папканы MATLAB файлдарды издеген каталогго кошуңуз.
Код:
functionbabaInstallclc; Файлдарды орнотуу үчүн % тизмеси = {'roomba.m', 'roombaSim.m', 'roombaSimGUI.m', 'roombaSimGUI.fig'}; опциялардан орнотуу үчүн % жайгашуу = weboptions ('CertificateFilename', ''); % тастыктаманын талаптарын этибарга албоону айт = server = 'https://ef.engr.utk.edu/ef230/projects/roomba-f2016/install/'; dlgTitle = 'Roomba орнотуу/жаңыртуу'; % display максаты жана ырастоо көрсөтмөсүн алуу = {'Бул программа бул EF 230 Roomba файлдарын жүктөйт:' '' strjoin (файлдар, '') '' 'бул папкага:' '' cd '' 'Улантууну каалайсызбы? '}; бип yn = questdlg (ыкчам,… dlgTitle,… 'Ооба', 'Жок', 'Ооба');
if ~ strcmp (yn, 'Yes'), return; аяктоо
% бар файлдардын тизмесин алуу_мумкун болгон файлдар = файлдар (cellfun (@exist, files)> 0); if ~ isempty (existing_files) % аларды алмаштыруу чындыгында туура экенин текшериңиз = {'Сиз бул файлдарды алмаштырып жатасыз:' '' strjoin (existing_files, '') '' '' алмаштырууга макулсузбу? ' }; бип yn = questdlg (ыкчам,… dlgTitle,… 'Ооба', 'Жок', 'Ооба'); if ~ strcmp (yn, 'Yes'), return; аягы аягы
% файлдарды жүктөө cnt = 0; i = 1 үчүн: узундук (файлдар) f = файлдар {i}; disp (['Жүктөө' f]); url = [server 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)); аяктоо
end %roombaInstall
2 -кадам: Туташууга даярдануу
Роботтон чыккан micro-USB'ди Raspberry Piдин эң төмөнкү портуна туташтырыңыз. Андан кийин Roomba чокусунда, бир эле учурда док жана spot баскычтарын басып, 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) глобалдык m m = mobiledev; emailInit (); чуркоо = 1; глобалдык f глобалдык эсептөө саны = 0; f = r; глобалдык direc direc = 0; r.getAngle; r.getDistance; глобалдык curLoc curLoc = [0, 0]; глобалдык упайлар pts = нөлдөр (1, 2, 2); manual = true; graphObs (1); v = 0.15; жатканда <50 if (manual == false) obsDetect (r, v, pts); direc = direc + r.getAngle; r.setLEDDigits (num2str (саноо)); else direc = direc + r.getAngle; manualDrive (); end end figSend (); аяктоо
Робот эми ойлоп тапкан ишин аткарышы керек.
Сунушталууда:
УЗИ сенсорун колдонуу менен тоскоолдуктардан качуу роботу (Proteus): 12 кадам
УЗИ сенсорунун жардамы менен тоскоолдуктардан качуу роботу (Proteus): Биз көбүнчө тоскоолдуктарды болтурбоочу роботту бардык жерде кездештиребиз. Бул роботтун аппараттык симуляциясы көптөгөн колледждерде жана көптөгөн иш -чараларда атаандаштыктын бир бөлүгү болуп саналат. Бирок тоскоолдук роботтун программалык симуляциясы сейрек кездешет. Биз аны бир жерден тапсак да
RC Tracked роботу Arduino аркылуу - Кадам менен: 3 кадам
Arduino аркылуу RC Tracked роботу - Кадам менен: Эй балдар, мен BangGoodдан дагы бир сонун робот шасси менен кайтып келдим. Сиз мурунку долбоорлорубуздан өттүңүз деп үмүттөнөбүз - Spinel Crux V1 - Gesture Controlled Robot, Spinel Crux L2 - Arduino Pick and Place Robot with Robotik Arms and The Badland Braw
Марс Roomba долбоору UTK: 4 кадам
Mars Roomba Project UTK: DISCLAIMER: БУЛ ГАНА ИШТЕЙТ, эгер РОМБА АРКАНДАЙ ЖОЛДО ОРНОТУЛСА, БУЛ НАСААТ ТЕННИСИ СТУДЕНТТЕР УНИВЕРСИТЕТИ ЖАНА КОЛДОНУУ ҮЧҮН КОЛДОНУЛГАН. жазылган жана
Марс Roomba: 6 кадам
Марс Roomba: Бул Instructable сизге Raspberry Pi көзөмөлдөгөн Roomba вакуумдук ботун иштетүү боюнча көрсөтмөлөрдү берет. Биз колдоно турган операциялык система MATLAB аркылуу
Май роботу: Экзистенциалдык кризис менен Arduino роботу: 6 кадам (Сүрөттөр менен)
Май роботу: Ардуино роботу экзистенциалдык кризис менен: Бул долбоор " Рик жана Морти " анимациялык сериясына негизделген. Эпизоддордун биринде Рик робот жасайт, анын бирден бир максаты - сары май алып келүү. Брюсфейдин (Брюссель инженердик факультети) студенттери катары бизде механикага тапшырма бар