Съдържание:

Марс разузнавателен робот: 4 стъпки
Марс разузнавателен робот: 4 стъпки

Видео: Марс разузнавателен робот: 4 стъпки

Видео: Марс разузнавателен робот: 4 стъпки
Видео: Свидание в 16 vs 26 лет 😨😳 2024, Юли
Anonim
Марс разузнавателен робот
Марс разузнавателен робот

Тази инструкция е стъпка по стъпка ръководство за програмиране и командване на разузнавателния робот на Марс.

За да започнете, трябва да получите списъка със следните материали: Заредено iRobot създаване, персонализирано от Tickle College of Eningeering Univerisity в Тенеси, Безжична мрежа, която е свързана с Raspberry Pi в iRobot, UTK iRobot създава зарядно устройство, Wifi-съвместимо компютър с достъп до MATLAB и интернет.

Стъпка 1: Roomba Toolbox

Roomba Toolbox
Roomba Toolbox

Отворете MATLAB и създайте нова папка за кодовите файлове, които да се съхраняват от вашия проект. В MATLAB отворете нов скрипт и стартирайте кода по -долу. След като скриптът бъде пуснат, добавете новата папка в директорията, където MATLAB търси файлове.

Код:

функция roombaInstallclc; % списък с файлове за инсталиране на файлове = {'roomba.m', 'roombaSim.m', 'roombaSimGUI.m', 'roombaSimGUI.fig'}; % местоположение за инсталиране от options = weboptions ('CertificateFilename', ''); % му кажете да игнорира изискванията за сертификат server = 'https://ef.engr.utk.edu/ef230/projects/roomba-f2016/install/'; dlgTitle = 'Инсталиране/актуализиране на Roomba'; % display display and get prompt prompt = {'Тази програма ще изтегли тези файлове EF 230 Roomba:' '' strjoin (files, '') '' '' в тази папка: '' 'cd' '' Искате ли да продължите? '}; звуков сигнал; yn = questdlg (подкана,… dlgTitle,… „Да“, „Не“, „Да“);

ако ~ strcmp (yn, 'Да'), връщане; край

% get списък с съществуващи файлове postoje_files = файлове (cellfun (@exist, файлове)> 0); if ~ isempty (existing_files) % уверете се, че наистина е добре да ги замените prompt = {'Заменяте тези файлове (файлове):' '' strjoin (existing_files, '') '' 'OK to replace?' }; звуков сигнал; yn = questdlg (подкана,… dlgTitle,… „Да“, „Не“, „Да“); ако ~ strcmp (yn, 'Да'), връщане; край край

% изтегляне на файловете cnt = 0; за i = 1: дължина (файлове) f = файлове {i}; disp (['Изтегляне' f]); опитайте url = [сървър f]; websave (f, url, options); % добавени опции за избягване на грешки в сигурността cnt = cnt + 1; catch disp (['Грешка при изтеглянето' f]); манекен = [f '.html']; ако съществуват (фиктивен, 'файл') == 2 изтриване (фиктивен) край край край

if cnt == length (files) msg = 'Инсталацията е успешна'; waitfor (msgbox (msg, dlgTitle)); else msg = 'Грешка при инсталиране - вижте командния прозорец за подробности'; waitfor (errordlg (msg, dlgTitle)); край

край %roomba Инсталиране

Стъпка 2: Подготовка за свързване

Подготовка за свързване
Подготовка за свързване
Подготовка за свързване
Подготовка за свързване

Свържете стърчащия от робота микро-USB към долния порт на Raspberry Pi. След това в горната част на Roomba едновременно натиснете и задръжте бутоните за докинг и спот, докато светлината на Roomba затихне. Трябва да чуете електронна скала от Roomba, след като я пуснете.

Стъпка 3: Свързване към робота

Свързване към робота
Свързване към робота

Отворете наличните мрежи на вашия компютър и изберете съществуващата мрежа между компютъра и Raspberry Pi. В текущата папка на MATLAB щракнете с десния бутон върху текущата папка на проекта и изберете кутията с инструменти на roomba, изтеглена в стъпка 1 и добавете към пътя. В мрежа, която е предназначена за множество Pi връзки, посочете вашия робот, като създадете обект от клас Roomba. Вижте примера по -долу

Ако имате Roomba, присвоен на номер 7, въведете следното:

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 = 0; r.getAngle; r.getDistance; глобален curLoc curLoc = [0, 0]; глобални точки pts = нули (1, 2, 2); ръчно = вярно; graphObs (1); v = 0,15; докато брой <50 if (ръчно == false) obsDetect (r, v, pts); direc = direc + r.getAngle; r.setLEDDigits (num2str (брой)); else direc = direc + r.getAngle; manualDrive (); end end figSend (); край

Сега роботът трябва да изпълнява проектираната си работа.

Препоръчано: