Оглавление:
- Шаг 1: Шаг 1: Необходимые материалы
- Шаг 2: Шаг 2: Настройка / получение кода для Roomba
- Шаг 3: Шаг 3: Настройка датчиков высоты / светодиодного освещения
- Шаг 4: Шаг 4: поиск препятствий
- Шаг 5: Шаг 5: Построение графика
Видео: Проект Roomba MATLAB: 5 шагов
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:52
Текущий план НАСА для марсохода состоит в том, чтобы он был сборщиком данных и странствовал по Марсу, собирая образцы почвы, чтобы вернуть их на Землю, чтобы ученые могли увидеть, были ли на планете какие-либо предыдущие формы жизни. Кроме того, марсоход отправляет изображения ученым, чтобы они могли помочь в навигации марсохода и исправить любые проблемы, которые могут возникнуть.
Идея нашей группы для нашего проекта заключается в том, чтобы марсоход делал то же самое, что и марсоход НАСА, который покинет Землю в 2020 году, но также для того, чтобы картографировать географию земли. Roomba сможет почувствовать обрыв и остановиться до того, как он упадет, а затем вернуться назад, повернуться и изменить свой курс, чтобы он не упал и не получил повреждений. Другая наша идея, интегрированная в наш проект, заключается в том, чтобы Roomba мог наносить на карту ориентиры, которые он видит, и показывать график каждый раз, когда цикл завершается и его курс завершается.
Это руководство предназначено для всех, кто хотел бы создать такой же тип кода для своего Roomba.
Шаг 1: Шаг 1: Необходимые материалы
Тебе понадобится:
- Roomba
- MATLAB
- Этот файл для запуска Roomba
- Плоская поверхность
- Поверхность стола, выступающая в роли "утеса"
Шаг 2: Шаг 2: Настройка / получение кода для Roomba
Ваш экран будет выглядеть так, как только вы введете файлы.
Шаг 3: Шаг 3: Настройка датчиков высоты / светодиодного освещения
Этот код сообщит вашей Roomba, на какой именно угол повернуть, проверит информацию о батарее, сообщит вашей Roomba, с какой скоростью двигаться, и будет проверять, нет ли человека через камеру Roomba. Он также издаст звуковой сигнал, если опознает человека, и остановится перед тем, как спуститься со скалы.
% попробуйте rob.setLEDDigits ('') x = 0; у = 0; тета = 0; препятствие = ; цикл = 1; AngCorr = @ (x) x + 3,059. * X. ^ 0,4205; % Функция для корректировки углов поворота, когда rob.getBatteryInfo.percent> 15 rob.setLEDDigits ('') rob.setDriveVelocity (0.1)% Go% Проверить наличие личности, если AA_checkperson (rob) rob.beep end% Проверить датчик высоты, если AA_cliffcheck (rob) rob.stop rob.setLEDDigits ('Обрыв') пауза (0,5) препятствие (цикл) = 2; AA_cliffbeep (rob)% Back Up And Turn rob.moveDistance (-. 15) rob.turnAngle (30) end
Шаг 4: Шаг 4: поиск препятствий
Этот код заставит Roomba проверить наличие предметов вокруг него и проверит датчик удара, чтобы убедиться, что он останавливается, прежде чем он повредит себя.
% Проверить датчик освещенности, если AA_lightcheck (rob) rob.stop rob.setLEDDigits ('Wall') pause (0.5) преграда (цикл) = 1; % Wall AA_wallbeep (rob)% Back Up And Turn rob.moveDistance (-. 15) rob.turnAngle (30) end% Проверить датчик удара, если AA_bumpcheck (rob) rob.stop rob.setLEDDigits ('Wall') pause (0.5) препятствие (цикл) = 1; % Wall AA_wallbeep (rob)% Back Up And Turn rob.moveDistance (-. 15) rob.turnAngle (30) end% Если нет, если isempty (препятствие) препятствие (цикл) = 0; elseif длина (препятствие) <цикл препятствие (цикл) = 0; конец
Шаг 5: Шаг 5: Построение графика
Этот код скажет вашей Roomba составить график того, с чем она сталкивается в своем путешествии. Подобный сюжет появится после того, как Roomba остановится.
% Получить позицию d = rob.getDistance; если цикл == 1 тета (цикл) = 0; х (цикл) = d. * cosd (тета (цикл)); % общего пройденного расстояния в x y (цикл) = d. * sind (theta (цикл)); % общего пройденного расстояния в y else theta (цикл) = theta (цикл-1) + rob.getAngle; х (цикл) = d. * cosd (тета (цикл)) + x (цикл-1); % общего пройденного расстояния в x y (цикл) = d. * sind (theta (цикл)). * d + y (цикл-1); % общего пройденного расстояния в конце y% Условие разрыва, если rob.getButtons.clean break end% Приращение цикла cycle = cycle + 1; end rob.stop for i = 1: цикл, если препятствие (i) == 1% График стены (x (i), y (i), 'Marker', 'square', 'MarkerEdgeColor', 'r') elseif препятствие (i) == 2% График обрыва (x (i), y (i), 'Marker', 'o', 'MarkerEdgeColor', 'k') конечный текст (.9, 0.9, sprintf ('Square = Wall / nCircle = Cliff '),' Units ',' normalized ') удерживать конец% сигнала бедствия, пока истина rob.beep pause (3) if rob.getButtons.clean break end end% catch% rob.stop% end
Рекомендуемые:
MATLAB Controlled Roomba: 5 шагов
MATLAB Controlled Roomba: целью этого проекта является использование MATLAB, а также модифицированного программируемого робота iRobot. Наша группа объединила наши навыки кодирования, чтобы создать сценарий MATLAB, который использует многие функции iRobot, включая датчики обрыва, датчик бампера
Проект Roomba: 5 шагов (с изображениями)
Проект Roomba: Это руководство было создано в соответствии с требованиями проекта Makecourse в Университете Южной Флориды (www.makecourse.com). Это руководство будет охватывать все необходимые шаги и компоненты, необходимые для сборки моего проекта Roomba
От Roomba до вездехода всего за 5 шагов !: 5 шагов
От Roomba до Rover всего за 5 шагов! Роботы Roomba - это веселый и простой способ окунуться в мир робототехники. В этом руководстве мы подробно расскажем, как превратить простой Roomba в управляемый ровер, который одновременно анализирует свое окружение. Список деталей1. MATLAB2.) Roomb
Roomba с MATLAB: 4 шага (с изображениями)
Roomba с MATLAB: в этом проекте используется MATLAB и программируемый робот iRobot Create2. Проверяя наши знания MATLAB, мы можем запрограммировать Create2 для интерпретации изображений и обнаружения сигналов. Функциональность робота зависит в основном от
Горелка с питанием от USB! Этот проект может прожечь пластик / дерево / бумагу (веселый проект также должен быть очень качественным деревом): 3 шага
Горелка с питанием от USB! Этот проект может прожечь пластик / дерево / бумагу (забавный проект также должен быть из очень хорошего дерева): НЕ ДЕЛАЙТЕ ЭТО С ПОМОЩЬЮ USB !!!! я узнал, что это может повредить ваш компьютер из всех комментариев. мой компьютер в порядке. Используйте зарядное устройство для телефона на 600 мА, 5 В. Я использовал это, и он отлично работает, и ничего не может быть повреждено, если вы воспользуетесь предохранительной вилкой, чтобы отключить питание