Orodha ya maudhui:
- Hatua ya 1: Sehemu na Vifaa
- Hatua ya 2: Faili ya Hifadhidata ya Roomba
- Hatua ya 3: Kuunganisha na Roomba
- Hatua ya 4: Kanuni
- Hatua ya 5: Hitimisho
Video: MATLAB Kudhibitiwa Roomba: Hatua 5
2024 Mwandishi: John Day | [email protected]. Mwisho uliobadilishwa: 2024-01-30 12:52
Lengo la mradi huu ni kutumia MATLAB pamoja na iRobot iliyopangwa robot inayoweza kupangwa. Kikundi chetu kiliunganisha ujuzi wetu wa kuweka alama ili kuunda hati ya MATLAB inayotumia kazi nyingi za iRobot, pamoja na sensorer za mwamba, sensorer za bumper, sensorer nyepesi, na kamera. Tulitumia usomaji huu wa sensorer na kamera kama pembejeo, ikituwezesha kuunda matokeo ambayo tunataka kutumia kazi za kificho za MATLAB na matanzi. Tunatumia pia kifaa cha rununu cha MATLAB na gyroscope kama njia ya kuungana na iRobot na kuidhibiti.
Hatua ya 1: Sehemu na Vifaa
MATLAB 2018a
-Toleo la 2018 la MATLAB ndio toleo linalopendwa zaidi, haswa kwa sababu inafanya kazi bora na nambari inayounganisha na kifaa cha rununu. Walakini, nambari zetu nyingi zinaweza kutafsiriwa katika matoleo mengi ya MATLAB.
iRobot Unda Kifaa
-Kifaa hiki ni kifaa maalum kilichotengenezwa ambacho kusudi la pekee ni kwa programu na usimbuaji. (Sio ombwe halisi)
Raspberry Pi (na kamera)
- Hii ni bodi ya kompyuta isiyo na gharama kubwa inayofanya kazi kama ubongo wa iRobot. Inaweza kuwa ndogo, lakini inauwezo wa vitu vingi. Kamera ni nyongeza ya ziada kwenye. Pia hutumia pi ya raspberry kupata kazi na maagizo yake yote. Kamera iliyoonyeshwa hapo juu imewekwa kwenye stendi iliyochapishwa ya 3D, iliyoundwa na Idara za Misingi ya Uhandisi katika Chuo Kikuu cha Tennessee
Hatua ya 2: Faili ya Hifadhidata ya Roomba
Kuna faili kuu ambayo utahitaji ili kutumia kazi na amri zinazofaa kwa roomba yako. Faili hii ni mahali ambapo uliandika msimbo unachota kazi kutoka ili kufanya roomba yako iweze kudhibitiwa zaidi.
Unaweza kupakua faili kwenye kiunga hiki au faili inayoweza kupakuliwa hapa chini
ef.engr.utk.edu/ef230-2017-08/projects/roomba-s/setup-roomba-instructable.php
Hatua ya 3: Kuunganisha na Roomba
Kwanza, lazima uhakikishe kuwa roboti yako imeunganishwa na bodi yako ya rasipberry kwa kutumia plug ndogo ya USB. Kisha unahitaji kuunganisha vizuri kompyuta yako na robot kwa WiFi sawa. Mara hii ikifanywa, unaweza kuwezesha roboti yako na uiunganishe kwa kutumia amri iliyopewa kwenye faili ya hifadhidata ya roboti. (Daima uweke ngumu robot yako kabla na baada ya kuitumia). Kwa mfano, tunatumia amri "r.roomba (19)" kuungana na roboti yetu, tukimpa kifaa cha kutofautisha r. Hii inarejelea faili ya hifadhidata, ambayo huweka mabadiliko yetu kama muundo ambao tunaweza kurejelea wakati wowote.
Hatua ya 4: Kanuni
Tumeambatanisha nambari kamili hapa chini, lakini hapa kuna muhtasari mfupi ambao unaangazia mambo muhimu katika hati yetu. Tulitumia sensorer zote, pamoja na kamera ili kuongeza kabisa uwezo wa roboti yetu. Tulijumuisha pia nambari ambayo ilituruhusu kuunganisha kifaa cha rununu na roboti yetu na kutumia gryoscope yake kuidhibiti kwa mikono.
Tulianza na amri rahisi "r.setDriveVelocity (.06)" ambayo inaweka kasi ya mbele ya robot kuwa.06 m / s. Hii ni tu kupata robot kusonga kabla
Halafu, hati yetu kuu imeanza na kitanzi cha muda ambacho hupata data ya roboti iliyopewa kwa kuunda miundo ambayo tunaweza kurejelea na kuitumia katika taarifa zenye masharti hapa chini, na hivyo kuturuhusu kumwambia roboti atekeleze amri fulani kulingana na data ya muundo. roboti inasoma na sensorer zake. Tuliiweka ili roboti isome sensorer zake za mwamba na ifuate njia nyeusi
wakati kweli% wakati kitanzi huenda hadi kitu "cha uwongo" kitatokea (katika kesi hii inaendelea sana) data = r.getCliffSensors; data2 = r.getBumpers;% hupata data kila wakati juu ya maadili ya sensorer ya mwamba na kuwapa kwa kutofautisha% img = r.getImage; Inachukua picha kutoka kwa kamera iliyowekwa picha (img); % Inaonyesha picha ambayo ilichukuliwa% red_mean = mean (mean (img (:,,, 1)));% Inachukua thamani ya wastani ya rangi ya kijani ikiwa data.rightFront <2000 r.turnAngle (-2); % inageuka Roomba takriban.2 digrii CW mara tu thamani ya sensorer ya mbele ya mwamba iko chini ya 2000 r.setDriveVelocity (.05); dataif nyingine ikiwa data ya kushoto mbele ya kushoto kushoto && 2000> data.rightFront r.moveDistance (.1); % inawaambia Roomba kuendelea mbele kwa takriban.2 m / s ikiwa maadili yote kutoka mbele kulia na sensorer mbele kushoto chini ya 2000% r. TurnAngle (0); % inawaambia Roomba wasigeuke ikiwa hali zilizotajwa hapo juu ni kweli
dataif nyingine ikiwa ni sawa = 1 r.moveDistance (-. 12); r. TurnAngle (160); r.setDriveVelocity (.05); dataif nyingine ikiwa kushoto2 = 1 r.moveDistance (-. 2); r. TurnAngle (5); r.setDriveVelocity (.05); dataif.ififif data2.front == 1 r.moveDistance (-. 12); r. TurnAngle (160); r.setDriveVelocity (.05);
Baada ya kitanzi hiki cha wakati, tunaingiza kitanzi kingine kinachosababisha data iliyopatikana kupitia kamera. Na tunatumia taarifa ikiwa ndani ya kitanzi hiki ambacho kinatambua picha kwa kutumia programu maalum (alexnet), na mara tu inapotambua picha hiyo mara moja husababisha kifaa kijijini kudhibiti
anet = alexnet; Hutoa ujifunzaji wa kina wa alexnet kwa kweli ya kutofautisha% isiyo na kipimo wakati kitanzi img = r.getImage; img = imresize (img, [227, 227]); lebo = kuainisha (anet, img); ikiwa lebo == "kitambaa cha karatasi" || lebo == "jokofu" lebo = "maji"; picha ya mwisho (img); kichwa (char (lebo)); kushawishi;
Kitanzi cha wakati ambacho kinaturuhusu kudhibiti kifaa na simu yetu hupata data hiyo kutoka kwa gyroscope ya simu na tunaiingiza kwenye tumbo ambayo inarudia tena data kwenye MATLAB kwenye kompyuta. Tunatumia taarifa ikiwa inasoma data ya tumbo na inatoa pato ambalo linasogeza kifaa kulingana na maadili fulani ya gyroscope ya simu. Ni muhimu kujua kwamba tulitumia sensorer za Mwelekeo wa kifaa cha rununu. Tumbo moja kwa tatu iliyotajwa hapo juu imegawanywa na kila kitu cha sensorer za mwelekeo wa simu, ambayo ni azimuth, lami, na pembeni. Taarifa ikiwa imeunda hali ambayo ilisema wakati upande unazidi maadili 50 au iko chini -50, basi roboti inasonga mbele umbali fulani (chanya 50) au nyuma (hasi 50). Na hiyo hiyo huenda kwa thamani ya lami. Ikiwa kiwango cha lami kinazidi thamani ya maporomoko 25 chini ya -25, roboti inageuka kwa pembe ya digrii 1 (chanya 25) au hasi nyuzi 1 (hasi 25)
wakati kweli pause (.1)% Pumzika kwa sekunde.5 kabla ya kila thamani kuchukuliwa Mdhibiti = iphone. Hutoa matriki kwa maadili ya mwelekeo wa iPhone kwa Azimuthal = Mdhibiti (1); Hutoa thamani ya kwanza ya tumbo kwa Pitch inayobadilika = Mdhibiti (2); Hutoa thamani ya pili ya tumbo kwa ubadilishaji (elekeza mbele na nyuma wakati iPhone imeshikiliwa kando) Side = Mdhibiti (3); Hutoa thamani ya tatu ya tumbo kwa ubadilishaji (elekeza kushoto na kulia wakati iPhone imeshikiliwa kando)% Husababisha pato kulingana na mwelekeo wa simu ikiwa Upande> 130 || Upande wa 25 r.soveDistance (-. 1)% Husogeza Roomba nyuma takriban mita.1 ikiwa iPhone imeelekezwa nyuma angalau 25 digress mwingine kama Side 25 r. TurnAngle (-1)% Inageuza Roomba takriban digrii 1 CCW ikiwa iPhone imeelekezwa kushoto angalau digrii 25 nyingine Bomba
Hizi ni vivutio tu vya vipande kuu vya nambari yetu, ambayo tulijumuisha ikiwa unahitaji kunakili haraka na kubandika sehemu kwa faida yako. Walakini, nambari yetu yote imeambatanishwa hapa chini ikiwa inahitajika
Hatua ya 5: Hitimisho
Nambari hii ambayo tuliandika imeundwa mahsusi kwa roboti yetu na pia maono yetu ya jumla ya mradi huo. Lengo letu lilikuwa kutumia ufundi wetu wote wa kuweka alama kwa MATLAB ili kutengeneza hati ya muundo wa kisima ambayo hutumia huduma nyingi za roboti. Kutumia kidhibiti simu sio ngumu kama vile unaweza kufikiria, na tunatumahi nambari yetu inaweza kukusaidia kuelewa vizuri dhana inayosababisha kuweka alama ya iRobot.
Ilipendekeza:
DIY -- Jinsi ya Kutengeneza Roboti ya Buibui Ambayo Inaweza Kudhibitiwa Kutumia Smartphone Kutumia Arduino Uno: Hatua 6
DIY || Jinsi ya kutengeneza Roboti ya Buibui ambayo inaweza Kudhibitiwa Kutumia Smartphone Kutumia Arduino Uno: Wakati wa kutengeneza roboti ya Buibui, mtu anaweza kujifunza vitu vingi juu ya roboti. Kama vile kutengeneza Roboti ni ya kuburudisha na pia ni changamoto. Katika video hii tutakuonyesha jinsi ya kutengeneza roboti ya Buibui, ambayo tunaweza kutumia kwa kutumia smartphone yetu (Androi
Mwanga wa Chumba Kudhibitiwa Kutumia Sura ya PIR na Arduino: Hatua 6
Mwanga wa Chumba Kudhibitiwa Kutumia Sura ya PIR na Arduino: Leo, tutakuwa tukidhibiti taa za chumba chako kupitia kugundua mwendo kwa kutumia Sura ya Mwendo ya Arduino PIR. Mradi huu ni wa kufurahisha sana kuufanya na una matumizi mazuri katika nyumba yako na inaweza kukuokoa pesa kwa kufanya mradi huu pia. Ju
Bata la Kudhibitiwa na Redio ya Jet: Hatua 10 (na Picha)
Bata la Kudhibitiwa na Redio ya Jet: Miaka 40+ iliyopita nilitaka kupata boti ya kudhibiti redio na kuitumia kwenye Ziwa la Hifadhi lililo karibu, hata hivyo Mlinzi wa Hifadhi aliweka wazi kabisa kwamba hakuna boti zitakazoruhusiwa. Kwa hivyo nikapanga mpango huu wa kujificha mashua kama bata. Upungufu kidogo ilikuwa bei ya
Mradi wa Roomba MATLAB: Hatua 5
Mradi wa Roomba MATLAB: Mpango wa sasa ambao NASA inao juu ya rover ya Mars ni kuwa mkusanyaji wa data na kuzunguka karibu na Mars, kukusanya sampuli za mchanga ili kurudisha Duniani ili wanasayansi waweze kuona ikiwa kulikuwa na aina zozote za maisha ya awali kwenye sayari. Ziada
Roomba Na MATLAB: Hatua 4 (na Picha)
Roomba Na MATLAB: Mradi huu unatumia MATLAB na iRobot Create2 inayopangwa robot. Kwa kuweka ujuzi wetu wa MATLAB kwenye jaribio, tunaweza kupanga programu ya Create2 kutafsiri picha na kugundua ishara. Utendaji wa roboti inategemea hasa juu ya th