
Orodha ya maudhui:
2025 Mwandishi: John Day | [email protected]. Mwisho uliobadilishwa: 2025-01-23 15:11

Mradi huu unatumia MATLAB na robot ya iRobot Create2 inayoweza kupangiliwa. Kwa kuweka ujuzi wetu wa MATLAB kwenye jaribio, tunaweza kupanga programu ya Create2 kutafsiri picha na kugundua ishara. Utendaji wa roboti inategemea hasa programu ya rununu ya MATLAB na moduli ya kamera ya Raspberry Pi.
Hatua ya 1: Sehemu na Vifaa




1. iRobot Unda, Toleo la 2
- Hii ni robot inayoweza kupangwa ambayo inaonekana kama Roomba. Jihadharini kuwa bidhaa hii kutoka iRobot sio ombwe. Imekusudiwa programu maalum na mtumiaji.
2. MATLAB 2017a
- Matoleo mengi ya zamani yatatumika na nambari tuliyotumia hapa chini. MATLAB itatambua amri ambayo haiendani na toleo ulilonalo na itapendekeza amri bora inayofaa.
3. Raspberry Pi 3 Mfano B, Toleo la 1.2
- Angalia kuona ni Raspberry Pi ipi inayoambatana na iRobot yako. Tazama kiungo hiki kwa usaidizi zaidi: Tafadhali fahamu kuwa utahitaji kufanya kazi na Pi iliyotayarishwa mapema ili hatua zifuatazo zifanye kazi. Kutumia Pi iliyopangwa mapema itakuruhusu kufanya usimbuaji wako wote kwenye MATLAB peke yako.
Moduli ya Kamera V2 (ya Raspberry Pi)
- Unaweza kushangaa; licha ya saizi yake, Moduli ya Kamera ya Raspberry Pi ni bora sana. Ni chaguo cha bei rahisi na kinachofaa zaidi kwa mradi huu.
Hiari: stendi iliyochapishwa na 3D. Hii hutumiwa kutuliza kamera. Haiathiri utendaji wa roboti, lakini itasaidia kusaidia usimbuaji wako ikiwa unataka kutumia data ya kupiga picha kwa utambuzi wa rangi na / au kitu.
Hatua ya 2: Usanidi


1. Kuunganisha Raspberry Pi na moduli ya kamera (Vifaa)
- Ili kuwezesha Raspberry Pi, utahitaji kuendesha USB ndogo ya kiume kwenye bandari ya nguvu ya kike kwenye microcontroller. Hiari: Mdhibiti wa voltage inaweza kutumika kuhakikisha kuwa voltage haizidi 5V. Baada ya kuwezesha Raspberry Pi, unaweza kuiunganisha na roboti yako kwa kuendesha mwisho wa kiume USB kutoka kwa ubao wa mama hadi bandari ya USB A kwenye microcontroller.
- Baada ya kuunganisha Pi na Roomba, kamera iko tayari kusanikishwa. Moduli ya Kamera itakuwa ndogo sana kuliko unavyotarajia. Kumbuka kuwa lensi imewekwa kwenye sensa, na utepe mweupe unatoka kwa kamera. Usiondoe au kubomoa utepe! Hii ndio kebo unayohitaji kuiunganisha kwenye Raspberry Pi. Kwanza, shikilia mwisho wa Ribbon na upate viunganisho vya fedha na kebo ya samawati. Hizi ziko pande tofauti. Ifuatayo, pata eneo kati ya ethernet na bandari za HDMI kwenye Raspberry Pi yako. Angalia kuna kitako kidogo cheupe kinachofunika. Polepole inua kufuli, lakini usiondoe kwenye yanayopangwa, kwani itapiga na kuharibika kabisa. Mara baada ya kuinua kufuli, shika utepe na uso viunganishi vya fedha kwenye bandari ya HDMI. Upande wa bluu utakabiliana na bandari ya Ethernet. Punguza pole pole utepe ndani ya nafasi wakati bado haujafunguliwa. Sio lazima uilazimishe kwenye slot. Baada ya kuingizwa, bonyeza kitufe nyuma chini. Ikiwa kamera yako imehifadhiwa vizuri, unapaswa (kwa upole) kuvuta utepe na kuhisi mvutano. Ribbon haipaswi kuwa huru. Baada ya kuunganisha kamera yako na Pi, unaweza kuona jinsi ilivyo huru. Hii ndio sababu tulitumia mlima uliochapishwa na 3D kuutuliza. Ni chaguo lako kuamua ni vifaa gani ungependa kutumia kuweka kamera yako bado kwa picha ya hali ya juu.
2. Kuweka Faili Sawa na Kuunganisha Roomba kwenye Kompyuta yako Baada ya vifaa vyako vyote kusanidiwa, sasa unaweza kuendelea kusakinisha MATLAB pamoja na faili m zinazohusiana ambazo zinakuruhusu kuwasiliana na roboti. Ili kufanya hivyo, fungua MATLAB na unda folda mpya ili kuweka faili zote zinazohusiana pamoja. Tumia hati hii kusanikisha / kusasisha faili zinazohitajika:
- Faili zote zinapaswa sasa kuonekana kwenye folda yako iliyoundwa. Bonyeza kulia kwenye dirisha la Sasa la Folda na uchague 'Ongeza kwa Njia' ili kuongeza njia hiyo kwenye orodha ya saraka ambapo MATLAB inatafuta faili. Hakikisha faili zako zote ziko kwenye njia sahihi.
3. Mara faili zikiwa zimewekwa, sasa unaweza kuanza kuungana na roboti yako. Anza kwa kuwasha roboti yako na kisha kuiweka upya ngumu moja kwa moja baada ya kuanza (usisahau kuweka upya roboti yako kila wakati kabla na baada ya matumizi). Pili, unganisha roboti yako na kompyuta ndogo kwa mtandao huo wa wifi. Baada ya haya, tutazungumza na Raspberry Pi iliyopangwa tayari kupitia MATLAB kwa kuita Roomba kwa kutumia jina lake na kazi roomba. Kwa mfano, ningeunganisha robot 28 kwa kutumia laini ifuatayo: R = roomba (28).
- Tazama jinsi nilivyoweka kitu kwa kutofautisha R. Sasa ninaweza kupata kazi zinazohusiana za Roomba kutoka kwa faili ya kusakinisha kwa kutibu R inayobadilika kama muundo.
- R. TurnAngle (90) Ikiwa kila kitu kilienda sawa, sauti ya muziki inapaswa kucheza, ikithibitisha unganisho.
Hatua ya 3: Mantiki ya MATLAB
Hati ya PDF chini ya hatua hii ni chati ya kina ya mtiririko wa mantiki kwa mchakato wetu wa usimbuaji katika MATLAB. Tuliwasha sensorer za mwamba, mwangaza, na mwanga ili kuruhusu roboti kuwasiliana nasi inapogundua kitu karibu na eneo lake. Kwa mfano, wakati roboti inasonga mbele, sensorer zake nyepesi hutafuta vitu vilivyo kwenye njia yake kulingana na vector ambayo inasafiri. Tulichukua kizingiti cha mbali cha roboti ili inapokaribia kitu, ibadilike badala ya kugongana nayo. Roboti yetu pia imeundwa na Twitter, ambayo tulibainisha katika mchakato wetu wa usimbuaji (hii itaonyeshwa hapa chini).
Ili kuongeza uzoefu, tulitumia matumizi ya MATLAB kwenye vifaa vyetu vya rununu ili tuweze kudhibiti nyendo za roboti kwa kutega tu simu zetu. Hii ni shughuli ya hiari, kwani unaweza kuwa na hoja ya roboti kwa kutumia amri ya kusongaDistance katika sehemu ya nambari ya MATLAB badala yake. Kumbuka kwamba kutumia amri za MATLAB kudhibiti robot yako kunapendekezwa ikiwa lengo lako ni kuwa sahihi. Ikiwa unataka kulenga roboti ili kamera ichukue picha katika eneo fulani, inaweza kuwa bora kuweka alama za harakati za roboti hiyo kwenye MATLAB. Wakati wa kuburudisha, kutumia matumizi ya MATLAB kudhibiti robot yako haifai kwa usahihi.
Kanuni inaamuru Roomba kutekeleza usanidi wa msingi kisha kuendelea kupitia kitanzi kinachoendelea. Hapo awali kompyuta ndogo itaweka kiunga na Roomba kwa kutumia amri ya Roomba (). Pia inaweka unganisho la twitter kwa kutumia amri ya wavuti () katika MATLAB. Kitanzi kina mtiririko mkuu tano wa kimantiki kulingana na mazingira yanayozunguka Roomba. Kwanza Roomba huangalia vizuizi, na hurekebisha nyuma ikiwa inazuiliwa. Iliyoingia ndani ya kitanzi hicho ni njia ya pili ambayo huwaonya watumiaji ikiwa Roomba inachukuliwa. Huduma muhimu katika Martian Warzone kali. Baada ya Roomba kuamua msimamo wake uko salama, inatafuta kifaa cha rununu kuamua mwendo wake unaofuata. Ikiwa kifaa cha rununu kinaelekezwa mbele kitahesabu kasi ya msingi kulingana na ukali wa kipimo cha roll kuliko kurekebisha kasi ya gurudumu ya mtu binafsi kugeuka kulingana na kiwango cha lami. Simu inaweza pia kuhamisha Roomba kwa nyuma. Kifaa kisicho na upande kima milango ya serikali njia mbili za mwisho. Roomba anayepumzika atatafuta bendera ya Mgeni na atahadharisha mtumiaji ipasavyo.
Chini ni nambari yetu (iliyokamilishwa katika MATLAB 2017a)
Pembejeo%: data ya mwelekeo kutoka kwa kifaa kilichounganishwa na wifi, kamera
Habari, data ya sensa
Matokeo%: mwendo unadhibitiwa na kifaa kilichounganishwa na wifi na mwendo
Usalama unakaguliwa kwa kusoma data ya sensorer. Ikiwa kamera hugundua
bendera ya mgeni basi roomba hujibu kwa kutuma tweet kwa bendera ya adui
% imeonekana.
% kusudi: kifaa chetu kinaishi bila kusudi isipokuwa kulinda wale ambao
% aliiunda, inamtumikia muumbaji wake na hufanya
% haswa kile alichoambiwa.
Matumizi: kimsingi mpango utaendesha peke yake.
futa yote, funga yote, clc
Kuanzisha Vitu na Vigeuzi
r = roomba (28);
m = mobilesev;
% tumia majibu = maandishi ya wavuti (jina la mwenyeji, data)
jina la mwenyeji = 'https://api.thingspeak.com/apps/thingtweet/1/statuses/update';
API = 'SGZCTNQXCWAHRCT5';
tweet = 'RoboCop is Operational… Inasubiri Amri';
data = strcat ('api_key =', API, '& status =', tweet);
majibu = webwrite (jina la mwenyeji, data);
% inayoendesha kitanzi kila wakati
wakati 1 == 1
Miundo iliyo na Takwimu za Kupumzika
o = m.orientation; Mwelekeo% ya Kifaa cha Mkononi
mwanga = r.getLightBumpers (); Maadili ya Bumper nyepesi
a = r.getCliffSensors (); Maadili ya sensorer ya Cliff
mapema = r.getBumpers (); Sensorer za Bumper
% angalia bumpers
ikiwa bump.right == 1 || bump.left == 1 || bump.front == 1
r.soveDistance (-. 2,.2);
Angalia Sensorer nyepesi
mwingine ikiwa mwanga.kushoto> 60 || mwangaza kushoto mbele> 60 || light.leftCenter> 60 || mwanga.kulia> 60 || Nuru mbele kulia> 60 || 60. Mwanga
r.soveDistance (-. 2,.2);
angalia Sensorer za Cliff
Ishara ya Kupambana na Wizi na arifa
mwingine ikiwa kushoto <300 && a kulia <300 && a kushoto mbele Mbele <300 && a mbele Mbele <300
r.acha ();
r.beep ();
tweet = 'RoboCop imeinuliwa!'
data = strcat ('api_key =', API, '& status =', tweet);
majibu = webwrite (jina la mwenyeji, data);
Kawaida Operesheni ya Kuepuka Mwamba
vinginevyo ikiwa kushoto <300 || haki <300 || Mbele ya kushoto <300 || Mbele mbele <300
r.soveDistance (-. 2,.2);
Roomba alipitisha hundi na sasa ataendesha na operesheni ya kawaida.
Hapo awali roll ya vifaa hupimwa na kuwa msingi
% kasi ambayo hutumiwa kuhesabu kasi ya gurudumu
Mbele ya Mwendo
kingineif o (3)> = 0 && o (3) <= 60
msingiVel = (-. 5/60) * (o (3) -60);
ikiwa o (2)> = - 70 && o (2) <0
r.setDriveVelocity (baseVel + (. 3/50) * abs (o (2)), baseVel - (. 3/50) * abs (o (2)));
kingineif o (2) = 0
r.setDriveVelocity (baseVel - (. 3/50) * abs (o (2)), baseVel + (. 3/50) * abs (o (2)));
mwingine r.acha
mwisho
Mwendo wa Nyuma
mwingineif o (3)> 100 && o (3) <150
r.setDriveVelocity (-. 2, -.2)
r.beep ();
r.beep ();
Roomba anayepumzika atatafuta Bendera ya Mgeni iliyotiwa alama kama maua
% kipande cha karatasi
mwingine
r.acha
img = r.getImage (); % chukua picha
kizingiti = kijivu (img (200: 383,:, 2)) + 1. Kiwango cha kijani cha calc
ikiwa kizingiti>.42
tweet = 'Adui ameonekana !!'
data = strcat ('api_key =', API, '& status =', tweet);
majibu = webwrite (jina la mwenyeji, data);
mwingine
r.acha
mwisho
mwisho
mwisho
Hatua ya 4: Hitimisho
Kumbuka, unaweza kutumia hati tuliyoandika hapo juu, lakini unaweza kuibadilisha kila wakati ili kukidhi mahitaji yako. Haipaswi kudhibitiwa na simu yako! (Walakini, inafanya kuwa ya kufurahisha zaidi.) Chagua njia gani unapendelea kutumia kudhibiti robot yako. Endesha karibu na robot yako na ufurahie!
Ilipendekeza:
Roomba Bot the Bulider: Hatua 5 (na Picha)

Roomba Bot the Bulider: Bot Mjenzi ni roomba, kwamba na " wanyakuzi " iliyoshikamana na mbele itaweza kusogeza vitu karibu. Nambari iliyo na hiyo imewekwa kurekodi harakati ya kwanza na sanduku la GUI ambalo unaweza kudhibiti kwa kubofya tu ya panya yako. Afte
MATLAB Kudhibitiwa Roomba: Hatua 5

MATLAB Iliyodhibitiwa Roomba: Lengo la mradi huu ni kutumia MATLAB na vile vile robot iliyobadilishwa inayopangwa iRobot. Kikundi chetu kiliunganisha ujuzi wetu wa usimbuaji ili kuunda hati ya MATLAB inayotumia kazi nyingi za iRobot, pamoja na sensorer za mwamba, hisia kubwa
Kivinjari Kilichodhibitiwa Roomba Robot Na Raspberry Pi Model 3 A +: 6 Hatua (na Picha)

Kivinjari kinachodhibitiwa na Roomba Robot Pamoja na Raspberry Pi Model 3 A +: Muhtasari Hii inayoweza kuelekezwa itazingatia jinsi ya kumpa Roomba aliyekufa ubongo mpya (Raspberry Pi), macho (Webcam), na njia ya kudhibiti kila kitu kutoka kwa kivinjari cha wavuti. Kuna hacks nyingi za Roomba ambazo zinaruhusu udhibiti kupitia kiolesura cha serial. Bado sijafanya
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
Roomblock: Jukwaa la Kujifunza ROS Navigation na Roomba, Raspberry Pi na RPLIDAR: Hatua 9 (na Picha)

Roomblock: Jukwaa la Kujifunza ROS Navigation Pamoja na Roomba, Raspberry Pi na RPLIDAR: Hii ni nini? &Quot; Roomblock " Jukwaa la roboti lina Roomba, Raspberry Pi 2, sensor ya laser (RPLIDAR) na betri ya rununu. Sura ya kuweka inaweza kufanywa na printa za 3D. Mfumo wa urambazaji wa ROS unawezesha kutengeneza ramani ya vyumba na kutumia i