Satura rādītājs:
- 1. darbība: iegādājieties nepieciešamās detaļas un materiālus
- 2. darbība. Kameras un Geigera-Millera skaitītāja konfigurēšana
- 3. darbība: izveidojiet savienojumu ar savu Roomba un izveidojiet gaismas sensora kodu
- 4. darbība: izveidojiet bufera kodu
- 5. darbība: izveidojiet kodu, lai nolasītu skaitītāja ekrānu, interpretētu to un atkāptos no avota
- 6. darbība: izveidojiet klints sensora kodu
- 7. solis. Secinājums
Video: RADbot: 7 soļi
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:56
Džeksona Breikela, Tailera Makubinsa un Jakoba Tālera projekts EF 230
Uz Marsa astronauti tiks pakļauti dažādām briesmām, sākot no ekstremālām temperatūrām līdz putekļu vētrām. Tomēr viens faktors, kas bieži tiek ignorēts, ir bīstamība, ko rada spēcīgi radioizotopi, kas atrodas uz planētas virsmas. RADbot palīdz izpētīt astronautus uz Marsa virsmas, ceļojot identificējot akmeņu paraugus ar augstām aktivitātēm, kā arī ir ieprogrammēti drošības līdzekļi, kas izmanto tā klints sensorus, gaismas sensorus, bufera sensorus un kameru, novēršot robota bojājumus. nepiedodamajā Marsa reljefā. Papildus astronautu brīdināšanai par iespējamām radioaktīvām briesmām uz virsmas, robota radioaktīvo paraugu atrašanās vietas funkciju var ieviest kā līdzekli, lai identificētu apgabalus, kuros varētu būt lielas urāna un citu aktinīdu nogulsnes. Astronauti varētu iegūt šos elementus, tos pietiekami bagātināt un izmantot kodolreaktoros un termoelektrostacijās, kas varētu palīdzēt nodrošināt pastāvīgu, pašpietiekamu koloniju uz planētas.
Atšķirībā no tipiskā Marsa braucēja, mūsu dizainā ir gatavas sastāvdaļas un saprātīga cenu zīme. Ja jums ir līdzekļi un vēlme, jūs pat varat to izveidot, ievērojot šo rokasgrāmatu. Lūdzu, izlasiet tālāk, lai uzzinātu, kā izveidot savu RADbot.
1. darbība: iegādājieties nepieciešamās detaļas un materiālus
Lai sāktu darbu (attēli ir ievietoti to sarakstā)
1. Viena Roomba (jebkurš jaunāks modelis)
2. Viens Geigera-Millera skaitītājs
3. Viens Raspberry Pi
4. Viena paneļa kamera ar USB kontaktligzdu
5. Viens micro USB - USB kabelis
6. Viens USB - USB kabelis
7. Viens radioaktīvs paraugs ar pietiekamu aktivitāti (~ 5μSv vai lielāks)
8. Viens dators ar instalētu Matlab
9. Līme (vēlams līmlente vieglai noņemšanai)
2. darbība. Kameras un Geigera-Millera skaitītāja konfigurēšana
Tagad, kad jums ir visi nepieciešamie materiāli RADbot izveidei, mēs sāksim, vienkārši ievietojot kameru tā, lai tā varētu nolasīt darbības uz skaitītāja. Novietojiet Geigera-Millera skaitītāju pēc iespējas tuvāk Roomba galam un pārliecinieties, vai tā sensors nav bloķēts. Cieši nostipriniet skaitītāju vietā ar izvēlēto līmi un turpiniet montēt kameru, lai tā būtu vērsta pret to. Novietojiet kameru pēc iespējas tuvāk skaitītāja displejam, lai nepieļautu, ka ārējie ievadi ietekmē programmu, un nostipriniet to vietā, kad jūtaties ērti. Mēs iesakām tomēr saglabāt kameras aizsardzību pēdējam, jo, kad kods ir pabeigts, jūs varat parādīt attēlu no kameras datorā, ļaujot novietot kameru, pamatojoties uz tās redzamības lauku. Kad kamera un skaitītājs ir stingri savās vietās, pievienojiet kameru kādai no Raspberry Pi USB ieejām, izmantojot USB – USB kabeli, un pievienojiet Raspberry Pi Roomba, izmantojot mikro USB – USB kabeli.
3. darbība: izveidojiet savienojumu ar savu Roomba un izveidojiet gaismas sensora kodu
Vispirms lejupielādējiet vietnes EF 230 rīkkopu un noteikti ievietojiet to norādītajās mapēs. Lai izveidotu savienojumu ar savu Roomba, vienkārši atsaucieties uz uzlīmi, kas pievienota Raspberry Pi, un komandu logā ievadiet "r = roomba (x)" bez pēdiņām un kur x apzīmē Roomba numuru. Roomba vajadzētu atskaņot melodiju, un tīrajai pogai vajadzētu parādīt zaļu gredzenu ap to. Sāciet savu kodu ar paziņojumu “kamēr” un skatiet gaismas sensorus, kādi tie parādās sensoru sarakstā. Atveriet sensoru sarakstu, komandu logā ierakstot "r.testSensors".
Pamatojoties uz mūsu objekta krāsu, kas nosaka, cik daudz gaismas atstarojas, iestatiet prasības, lai paziņojums while tiktu izpildīts kā funkcija. Mūsu gadījumā mēs iestatījām priekšējo gaismas sensoru, lai palaistu kodu paziņojumā while, ja kreisās vai labās puses gaismas sensoru rādījums bija> 25. Izpildāmā paziņojuma gadījumā iestatiet Roomba ātrumu, lai palēninātu, ierakstot "r.setDriveVelocity (x, y)", kur x un y ir attiecīgi kreisā un labā riteņa ātrums. Ievietojiet paziņojumu "cits", lai Roomba nesamazinātu nenoteiktas vērtības, un vēlreiz ievadiet iestatītās piedziņas ātruma komandu, izņemot citu ātrumu. Pabeidziet paziņojumu kamēr ar “beigas”. Šis koda segments liks Roomba tuvoties objektam un palēnināsies, kad tas sasniegs noteiktu diapazonu, lai samazinātu ietekmi.
Pievienots mūsu koda ekrānuzņēmums, taču nekautrējieties to rediģēt, lai tas vislabāk atbilstu jūsu misijas parametriem.
4. darbība: izveidojiet bufera kodu
Tā kā Roomba palēninās, tas samazinās ietekmi, ko tas atstāj uz objektu, lai gan ne tik daudz, lai neizraisītu fizisko buferi. Šim koda segmentam vēlreiz sāciet ar cilni "while" un iestatiet tā izteiksmi kā patiesu. Paziņojumam iestatiet mainīgo T, kas vienāds ar bufera izvadi, vai nu 0, vai 1, norādot nepatiesu un patiesu. Šim nolūkam varat izmantot "T = r.getBumpers". T izvadīs kā struktūru. Ievadiet paziņojumu "ja" un iestatiet tā izteiksmi apakšstruktūrai T.front uz vienādu 1 un iestatiet paziņojumu vai nu iestatiet piedziņas ātrumu uz 0, izmantojot "r.setDriveVelocity (x, y)" vai "r.stop ". Ievadiet “pārtraukumu”, lai Roomba varētu pārvietoties pēc tam, kad ir izpildīts nosacījums nākamajā kodā. Pievienojiet “cits” un iestatiet tā paziņojumu, lai braukšanas ātrumu iestatītu uz normālo Roomba kreisēšanas ātrumu.
Pievienots mūsu koda ekrānuzņēmums, taču nekautrējieties to rediģēt, lai tas vislabāk atbilstu jūsu misijas parametriem.
5. darbība: izveidojiet kodu, lai nolasītu skaitītāja ekrānu, interpretētu to un atkāptos no avota
Mūsu projekta pamatā ir Geigera-Millera skaitītājs, un, lai noteiktu, ko ekrānā redzamie dati nozīmē, izmantojot kameru, tiek izmantots šāds koda segments. Tā kā mūsu skaitītāja ekrāns maina krāsu, pamatojoties uz avota darbību, mēs iestatīsim kameru, lai tā interpretētu ekrāna krāsu. Sāciet savu kodu, iestatot mainīgo, kas vienāds ar komandu "r.getImage". Mainīgais satur 3D attēla krāsu vērtību masīvu sarkanā, zaļā un zilā krāsā. Iestatiet mainīgos, kas vienādi ar šo attiecīgo krāsu matricu vidējiem rādītājiem, izmantojot komandu "vidējais (vidējais (img1 (:,:, x)))", kur x ir vesels skaitlis no 1 līdz 3. 1, 2 un 3 apzīmē sarkanu, zaļu un attiecīgi zilā krāsā. Tāpat kā visās norādītajās komandās, neiekļaujiet pēdiņas.
Ļaujiet programmai pauzēt 20 sekundes, izmantojot "pauzi (20)", lai skaitītājs varētu iegūt precīzu parauga nolasījumu un pēc tam sākt paziņojumu "ja". Mums Roomba pīkstēja vairākas reizes, izmantojot "r.beep", pirms tika parādīta izvēlne ar tekstu "Radioizotops atrasts! Uzmanību!" to var paveikt ar komandu "waitfor (helpdlg ({'texthere'})"). Noklikšķinot uz Labi, Roomba turpinās sekot pārējam kodam paziņojumā "ja". Lieciet Roomba apbraukt paraugu, izmantojot komandu "r.moveDistance" un "r.turnAngle" kombinācija. Noteikti beidziet savu if paziņojumu ar "beigas".
Pievienots mūsu koda ekrānuzņēmums, taču nekautrējieties to rediģēt, lai tas vislabāk atbilstu jūsu misijas parametriem.
6. darbība: izveidojiet klints sensora kodu
Lai izveidotu kodu, lai izmantotu Roomba iebūvētos klints sensorus, sāciet ar cilni "while" un iestatiet tā izteiksmi kā patiesu. Iestatiet mainīgo kā vienādu ar "r.getCliffSensors", un tā rezultātā tiks izveidota struktūra. Sāciet paziņojumu "ja" un iestatiet struktūras mainīgos "X.leftFront" un "X.rightFront", lai tie būtu lielāki par kādu iepriekš noteiktu vērtību, kur "X" ir mainīgais, kuram izvēlējāties komandu "r.getCliffSensors" būt vienāds ar. Mūsu gadījumā mēs izmantojām 1000, jo baltā papīra gabals tika izmantots, lai attēlotu klinti, un, tuvojoties sensoriem, papīram, vērtības pieauga līdz krietni vairāk nekā 1000, nodrošinot, ka kods tiks izpildīts tikai tad, kad tiks konstatēta klints. Pēc tam pievienojiet komandu "pārtraukums" un pēc tam ievietojiet paziņojumu "cits". Paziņojumam "cits", kas tiks izpildīts, ja klints netiks konstatēta, katram ritenim iestatiet piedziņas ātrumu uz parasto kreisēšanas ātrumu. Ja Roomba tomēr atklāj klinti, tiks izpildīts "pārtraukums" un pēc tam tiks izpildīts kods ārpus kamēr cilpas. Pēc cilnes "ja" un "kamēr" ievietošanas "beigu" ievietošanas iestatiet Roomba kustēties atpakaļ, izmantojot pārvietošanas komandu. Lai brīdinātu astronautus, ka tuvumā atrodas klints, brauciena ātruma komandā iestatiet katra riteņa, x un y, braukšanas ātrumu kā a un -a, kur a ir reāls skaitlis. Tas izraisīs Roomba griešanos, brīdinot astronautu par krauju.
Pievienots mūsu koda ekrānuzņēmums, taču nekautrējieties to rediģēt, lai tas vislabāk atbilstu jūsu misijas parametriem.
7. solis. Secinājums
RADbot galvenais mērķis uz Marsa ir palīdzēt astronautiem izpētīt un kolonizēt Sarkano planētu. Nosakot radioaktīvos paraugus uz virsmas, mēs ceram, ka robots vai roveris šajā gadījumā patiesi var pasargāt astronautus un palīdzēt noteikt to bāzes (-u) enerģijas avotus. Pēc visu šo darbību veikšanas un, iespējams, ar dažiem izmēģinājumiem un kļūdām, jūsu RADbot vajadzētu darboties. Novietojiet radioaktīvo paraugu kaut kur testēšanas zonā, izpildiet savu kodu un vērojiet, kā roveris dara to, kas tam paredzēts. Izbaudiet savu RADbot!
-EF230 RADbot komanda
Ieteicams:
Arduino brīdinājuma sistēma par automašīnas novietošanu atpakaļgaitā Soli pa solim: 4 soļi
Arduino brīdinājuma sistēma par automašīnas novietošanu atpakaļgaitā Soli pa solim: Šajā projektā es izveidošu vienkāršu Arduino automašīnas atpakaļgaitas stāvvietas sensora shēmu, izmantojot Arduino UNO un ultraskaņas sensoru HC-SR04. Šo uz Arduino bāzēto automašīnas reverso brīdinājuma sistēmu var izmantot autonomai navigācijai, robotu diapazonam un citiem diapazoniem
Soli pa solim datora veidošana: 9 soļi
Soli pa solim datora veidošana: Piegādes: Aparatūra: mātesplateCPU & CPU dzesētājs PSU (barošanas bloks) Krātuve (HDD/SSD) RAMGPU (nav nepieciešams) Korpuss Instrumenti: skrūvgriezis ESD rokassprādze/matermālā pasta ar aplikatoru
Trīs skaļruņu shēmas -- Soli pa solim apmācība: 3 soļi
Trīs skaļruņu shēmas || Soli pa solim apmācība: Skaļruņu ķēde pastiprina no vides saņemtos audio signālus uz MIC un nosūta to skaļrunim, no kura tiek radīts pastiprināts audio. Šeit es parādīšu trīs dažādus veidus, kā izveidot šo skaļruņu shēmu, izmantojot:
Arduino Halloween Edition - zombiju uznirstošais ekrāns (soļi ar attēliem): 6 soļi
Arduino Helovīna izdevums - zombiju uznirstošais ekrāns (soļi ar attēliem): Vai vēlaties Helovīnā nobiedēt savus draugus un radīt kliedzošu troksni? Vai arī vienkārši gribi uztaisīt labu palaidnību? Šis zombiju uznirstošais ekrāns to var izdarīt! Šajā pamācībā es iemācīšu jums, kā viegli izveidot izlecošus zombijus, izmantojot Arduino. HC-SR0
Akustiskā levitācija ar Arduino Uno soli pa solim (8 soļi): 8 soļi
Akustiskā levitācija ar Arduino Uno soli pa solim (8 soļi): ultraskaņas skaņas pārveidotāji L298N līdzstrāvas adaptera strāvas padeve ar vīriešu līdzstrāvas tapu Arduino UNOBreadboard un analogie porti koda konvertēšanai (C ++)