Բովանդակություն:

Mars հետախուզական ռոբոտ ՝ 4 քայլ
Mars հետախուզական ռոբոտ ՝ 4 քայլ

Video: Mars հետախուզական ռոբոտ ՝ 4 քայլ

Video: Mars հետախուզական ռոբոտ ՝ 4 քայլ
Video: 7 հեռախոսահամար որոնց ԱՐԳԵԼՎՈՒՄ է ԶԱՆԳԵԼ կամ ՊԱՏԱՍԽԱՆԵԼ|| Չպատասխանեք ԳԻՇԵՐԸ 3:00 2024, Հուլիսի
Anonim
Mars հետախուզական ռոբոտ
Mars հետախուզական ռոբոտ

Այս Instructable- ը քայլ առ քայլ ուղեցույց է Mars Reconnaissance Robot- ը ծրագրավորելու և ղեկավարելու համար:

Սկսելու համար պետք է ձեռք բերել հետևյալ նյութերի ցանկը. Լիցքավորված iRobot- ը հարմարեցված է Թենեսիի Tickle College of Eningeering Univerisity- ի կողմից, անլար ցանց, որը միացված է iRobot- ում Raspberry Pi- ին, UTK iRobot- ը ստեղծում է լիցքավորիչ, Wifi- ունակ: MATLAB- ին և ինտերնետին հասանելի համակարգիչ:

Քայլ 1: Roomba Toolbox

Roomba Toolbox
Roomba Toolbox

Բացեք MATLAB- ը և ստեղծեք նոր թղթապանակ ՝ ձեր նախագծից պահվող կոդային ֆայլերի համար: MATLAB- ում բացեք նոր սցենար և գործարկեք ներքևի ծածկագիրը: Երբ սցենարը գործարկվի, նոր թղթապանակը ավելացրեք այն գրացուցակին, որտեղ MATLAB- ը ֆայլեր է փնտրում:

Կոդ:

roombaInstallclc գործառույթը; % ֆայլերի ցանկ ֆայլեր տեղադրելու համար = {'roomba.m', 'roombaSim.m', 'roombaSimGUI.m', 'roombaSimGUI.fig'}; % location to install from options = weboptions ('CertificateFilename', ''); % ասեք նրան, որ անտեսի սերտիֆիկատի պահանջները սերվեր = 'https://ef.engr.utk.edu/ef230/projects/roomba-f2016/install/'; dlgTitle = 'Roomba- ի տեղադրում/թարմացում'; % ցուցադրման նպատակը և ստացեք հաստատման հուշում = {'Այս ծրագիրը կներբեռնի այս EF 230 Roomba ֆայլերը.' '' strjoin (ֆայլեր, '') '' 'այս պանակին.' '' ' '}; ազդանշան; yn = questdlg (հուշում,… dlgTitle,… 'Այո', 'Ոչ', 'Այո');

եթե ~ strcmp (yn, 'Yes'), վերադառնալ; վերջ

% ստանալ գոյություն ունեցող ֆայլերի ցանկ = ֆայլեր (cellfun (@exist, files)> 0); if ~ isempty (գոյություն ունեցող_ֆայլեր) % համոզվեք, որ իսկապես լավ է դրանք փոխարինել հուշել = {'Դուք փոխարինում եք այս ֆայլերը (ներ):' '' strjoin (գոյություն ունեցող_ֆայլեր, '') '' 'Լավ է փոխարինել?' }; ազդանշան; yn = questdlg (հուշում,… dlgTitle,… 'Այո', 'Ոչ', 'Այո'); եթե ~ 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 ջնջել (կեղծ) վերջի վերջը

եթե cnt == երկարությունը (ֆայլեր) msg = 'Տեղադրումը հաջողված է'; սպասել (msgbox (msg, dlgTitle)); else msg = 'Տեղադրման սխալ. մանրամասների համար տե՛ս հրամանի պատուհանը'; սպասել (errordlg (msg, dlgTitle)); վերջ

վերջ %roombaInstall

Քայլ 2: Միացման պատրաստում

Միացման նախապատրաստում
Միացման նախապատրաստում
Միացման նախապատրաստում
Միացման նախապատրաստում

Միացրեք ռոբոտից դուրս ցցված միկրո USB- ը Raspberry Pi- ի ստորին նավահանգստին: Այնուհետև Roomba- ի վերևում միաժամանակ սեղմեք և պահեք նավահանգստի և կետի կոճակները, մինչև Roomba- ի լույսը մարվի: Երբ ազատ արձակեք, Roomba- ից պետք է լսեք էլեկտրոնային կշեռք:

Քայլ 3: Միացում ռոբոտին

Միացում ռոբոտին
Միացում ռոբոտին

Բացեք ձեր համակարգչի վրա առկա ցանցերը և ընտրեք համակարգչի և Raspberry Pi- ի միջև գոյություն ունեցող ցանցը: MATLAB- ի ընթացիկ թղթապանակում աջ սեղմեք ձեր ընթացիկ ծրագրի թղթապանակի վրա և ընտրեք 1 -ին քայլում ներբեռնված roomba գործիքների տուփը և ավելացրեք ճանապարհին: Piանցում, որը նախատեսված է Pi- ի բազմաթիվ կապերի համար, նշեք ձեր ռոբոտին ՝ ստեղծելով Roomba դասի օբյեկտ: Տես ստորև բերված օրինակը

Եթե ունեք 7 համարին հատկացված Roomba, մուտքագրեք հետևյալը.

r = սենյակ (7)

Հիշեք, որ այս փոփոխականն այժմ վերագրված է roomba- ին, ռոբոտին տրված ցանկացած հրաման պետք է առաջնորդվի նշանակված փոփոխականով:

Քայլ 4: Կոդ

Կոդ
Կոդ

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

Օգտագործելով վերը նշված հղումը ՝ պահպանեք բոլոր.m ֆայլերը տվյալ թղթապանակում, որտեղ գործարկվելու է հիմնական ծրագիրը: Հղումը պետք է բաց լինի բոլորի համար, ովքեր ունեն հղումը: Բացեք նոր սկրիպտ ընթացիկ թղթապանակում և գործարկեք mycontrolprogram.m.m- ը, ինչպես երևում է ստորև.

գործառույթը mycontrolprogram (r) գլոբալ m m = mobiledev; emailInit (); վազում = 1; գլոբալ զ գլոբալ հաշվարկ = 0; f = r; գլոբալ ուղղություն = 0; r.getAngle; r.getDistance; գլոբալ curLoc curLoc = [0, 0]; գլոբալ միավոր pts = զրոներ (1, 2, 2); ձեռնարկ = ճշմարիտ; 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 (); վերջ վերջ figSend (); վերջ

Ռոբոտը այժմ պետք է կատարի իր նախագծած աշխատանքը:

Խորհուրդ ենք տալիս: