Sisukord:

Vibrotaktiivne sensoorne asendus- ja suurendusseade (SSAD): 4 sammu
Vibrotaktiivne sensoorne asendus- ja suurendusseade (SSAD): 4 sammu

Video: Vibrotaktiivne sensoorne asendus- ja suurendusseade (SSAD): 4 sammu

Video: Vibrotaktiivne sensoorne asendus- ja suurendusseade (SSAD): 4 sammu
Video: Хищник уровня БОГ 2024, November
Anonim
Vibrotaktiivne sensoorne asendus- ja suurendusseade (SSAD)
Vibrotaktiivne sensoorne asendus- ja suurendusseade (SSAD)
Vibrotaktiivne sensoorne asendus- ja suurendusseade (SSAD)
Vibrotaktiivne sensoorne asendus- ja suurendusseade (SSAD)

Selle projekti eesmärk on hõlbustada teadusuuringuid sensoorse asendamise ja suurendamise valdkonnas. Mul oli võimalus oma magistrikraadi väitekirjas uurida erinevaid vibrotaktiliste SSAD -prototüüpide loomise viise. Kuna sensoorne asendamine ja suurendamine on teema, mis ei puuduta mitte ainult arvutiteadlasi, vaid ka teiste valdkondade, näiteks kognitiivteaduste, teadlasi, peaks samm-sammuline juhendamine võimaldama elektroonika- ja infotehnoloogia mitteekspertidel selle prototüübi ise kokku panna uurimisotstarbel.

Ma ei kavatse teha reklaami täpselt ühte tüüpi brändi/toote kohta. Seda projekti ei sponsoreerinud ükski ettevõte. Materjal, mida ma kasutasin, valiti tehniliste spetsifikatsioonide ja mugavuse tõttu (kohaletoimetamise kiirus/maksumus, saadavus jne). Kõigi käesolevas juhendis mainitud toodete puhul on saadaval võrdselt sobivad alternatiivid.

Praegune Instructable sisaldab samm-sammult juhiseid selle kohta, kuidas ehitada kuni 4 mootori ja analooganduritega põhiline SSAD-prototüüp.

Lisaks sellele juhendile olen loonud kolm laiendust: esiteks avaldasin juhised selle SSAD-prototüübiga rohkem kui nelja mootori kasutamiseks (https://www.instructables.com/id/Using-More-Than-4…). Teiseks lõin pakkumise ja näite selle prototüübi kandmiseks (https://www.instructables.com/id/Making-the-SSAD-W…) ja kuidas katta ERM-i mootorid ilma kapseldatud pöörleva massita (https:/ /www.instructables.com/id/Cating-Rotating…). Lisaks avaldatakse ka näide selle kohta, kuidas prototüüpi integreerida muid kui analoogandureid (antud juhul lähedusandureid) (https://www.instructables.com/id/Inciding-a-Proxi…).

Mis on "sensoorne asendamine ja suurendamine"?

Sensoorse asendamise korral saab ühe sensoorse modaalsuse (nt nägemine) kogutud teavet tajuda teise meele (nt heli) kaudu. See on paljutõotav mitteinvasiivne tehnika, mis aitab inimestel sensoorsetest kadudest või kahjustustest üle saada.

Kui inimene sensoorset stiimulit tavaliselt ei taju (nt UV -valgus), nimetatakse seda lähenemist sensoorseks suurendamiseks.

Milliseid oskusi on selle prototüübi loomiseks vaja?

Põhimõtteliselt pole allpool esitatud juhiste järgimiseks vaja täiendavaid programmeerimisoskusi. Kui olete aga jootmise algaja, planeerige selle tehnika tundmaõppimiseks lisaaega. Kui te pole kunagi varem programmeerinud, võib osutuda vajalikuks abi programmeerimisel kogenumalt.

Kas on vaja masinaid või tööriistu, mis on kallid või pole kergesti kättesaadavad?

Välja arvatud jootekolb, ei ole selle prototüübi ehitamiseks vaja masinaid ega tööriistu, mida ei saa hõlpsasti veebist või järgmisest majapidamispoodist osta. See SSAD on loodud kiireks prototüüpimiseks, mis tähendab, et see peaks olema kiiresti reprodutseeritav ja võimaldama ideede odavat uurimist.

Tarvikud

Põhikomponendid (umbes 65 naela 4 mootorile, välja arvatud jooteseadmed)

  • Arduino Uno (nt https://store.arduino.cc/arduino-uno-rev3, 20 £)
  • Adafruit Motorshield v2.3 (nt https://www.adafruit.com/product/1438, 20 £) ja isased virnastamispäised (tavaliselt mootorikilbi ostmisel kaasas)
  • Silindrilised ERM -mootorid (nt https://www.adafruit.com/product/1438, 5, 50 £/mootor)
  • Jootekolb ja jootetraat
  • Juhtmed

Valikuline (vt laiendused)

Kui ostetakse katmata pöörleva massiga ERM -mootor:

  • Vinüülist toru
  • Õhuke pehme plaat
  • 3D -printer (Arduino korpuse jaoks)

Kui soovite kasutada rohkem kui 4 mootorit (rohkem kui 8 samal ajal):

  • Adafruit Motorshield v2.3 ja meeste virnastamispäised
  • Naiste virnastamispäised (nt
  • Arduino Mega rohkem kui 6 mootorile (nt

Samm: jootmine

Jootmine
Jootmine

Jootke tihvtid mootorikilbi külge

Adafruit pakub väga põhjalikku õpetust päiste mootorikilbi jootmiseks (https://learn.adafruit.com/adafruit-motor-shield-v…):

  1. Kõigepealt pange virnastamispäised Arduino Uno tihvtidesse,
  2. Seejärel asetage kilp peale nii, et tihvtide lühike külg jääb välja.
  3. Pärast seda jootke kõik tihvtid kilbi külge ja veenduge, et joodis voolaks ümber tihvti ja moodustaks vulkaanikuju (vt ülaltoodud pilti, mis on üle võetud aadressilt https://cdn.sparkfun.com/assets/c/d/ a/a/9/523b1189…).

Kui olete jootmise algaja, aidake endale rohkem õpetusi, näiteks

Jootke pikemad juhtmed mootori külge

Kuna enamik mootoreid on ilma või väga lühikeste ja õhukeste juhtmeteta, on mõttekas neid pikendada, jootes need pikematele ja vastupidavamatele juhtmetele. Seda saate teha järgmiselt.

  1. Eemaldage plastik juhtmete otsa ümber ja asetage need nii, et nad puutuksid kokku avatud juhtmetega, nagu pildil.
  2. Jootke need kokku, puudutades mõlema juhtme keermet ja lastes jootmel üle nende voolata.

2. samm: juhtmestik

Juhtmestik
Juhtmestik
  1. Virna mootorikilp Arduino kohale.
  2. Keerake mootorid mootorikilpi.
  3. Ühendage analoogandurid Arduinoga (pildil tehakse seda valgusanduritega, kuid sama vooluahel näeb teiste analoogandurite puhul sama välja).

Samm: kodeerimine

Kodeerimine
Kodeerimine
Kodeerimine
Kodeerimine
Kodeerimine
Kodeerimine
Kodeerimine
Kodeerimine

1. Laadige alla

Laadige alla ZIP -kaust (SSAD_analogueInputs.zip), mis on lisatud allpool. Pakkige see lahti.

Laadige alla Arduino IDE (https://www.arduino.cc/en/main/software).

Avage Arduino fail (SSAD_analogueInputs.ino), mis asub pakendamata kaustas Arduino IDE -ga.

2. Installige teegid

Pakutud koodi käitamiseks peate installima mõned teegid. Seega, kui selle artikli lõpus lisatud Arduino -fail on Arduino IDE -s avatud, tehke järgmist.

  1. Klõpsake: Tööriistad → Raamatukogude haldamine…
  2. Otsige otsinguväljalt filtrit "Adafruit Motor Shield V2 Library"
  3. Installige see, klõpsates nuppu Installi

Pärast nende teekide allalaadimist peaksid nüüd lisatud koodides olevad avaldused #include toimima. Kontrollige seda, klõpsates nuppu "Kinnita" (linnuke vasakus ülanurgas). Teate, et kõik teegid töötavad, kui saate programmi allservas sõnumi „Valmis koostamine”. Vastasel juhul ilmub punane riba ja saate teate, mis valesti läks.

3. Muutke koodi

Muutke koodi vastavalt oma kasutusjuhendile, järgides alltoodud juhiseid.

Mootorite ja nende sensoorsete väljundite käivitamine

Esiteks teatage, milliseid tihvte mootorid kasutavad, samuti millises vahemikus mootorid töötavad. Näiteks mootor, mis on ühendatud M4 külge ja töötab (kiiruse) vahemikus 25 ja 175, on deklareeritud sellisena (PÕHIKOMMENTAARI all):

Mootorimootor1 = mootor (4, 25, 175);

Töötades väikeste vibratsioonimootoritega, mis töötavad vahemikus kuni 3 V, tuleb mootorikilpi kasutada ettevaatlikult, kuna see on ette nähtud 4,5–13,5 V alalisvoolu mootorite töötamiseks. Et mitte kahjustada 3 V mootoreid, piirasin programmiliselt kilbi volti väljundi maksimaalselt 3 V -ni (täpselt 2,95 V). Ma tegin seda, mõõtes, kui suur on maksimaalne kiirus 255 voltides ja multimeetriga, et see on 4,3 V. Seetõttu ei lubanud ma mootoritele kunagi suuremat kiirust kui 175, mis on umbes 3 V.

Iga mootor ühendatakse ühe SensoryOutput väljundiga.

Üks SensoryOutput koosneb ühest või mitmest sensoorsest stiimulist. Näiteks võib mootor vibreerida vastavalt ühele andurile või mitme erinevalt paigutatud anduri keskmisele.

Seetõttu tuleb esmalt iga mootori kohta deklareerida üks SensoryOutput. Sulgudes olevad numbrid on minimaalne ja maksimaalne väärtus, mida andur (rühm) suudab tajuda. Analoogandurite puhul on see enamasti 0 ja 1023:

SensoryOutput output1 = SensoryOutput väljund (0, 1023);

Funktsioonis loop () määratakse igale mootorile üks väljundväärtus. Siin kirjutate iga mootori jaoks järgmise avalduse ja "output1" asemel tuleb sellega ühendada ükskõik milline SensoryOutput väärtus. Ärge unustage muuta ka kõiki selle rea "output1" nimesid, kui kasutate selle jaoks teist nime.

motor1.drive (output1.getValue (), output1.getMin (), output1.getMax ());

Soovi korral võite anda mitmele mootorile (nt mootor1 ja mootor2) sama SensoryOutput (nt väljund1).

Lisaks võite ühele mootorile anda mitme anduri väärtused (vt järgmist jaotist).

Andurite määratlemine

Funktsioonis setup () tuleb deklareerida, millised andurid millise mootori vibratsiooni osaks saavad (SensoryOutput). Siin on näide selle kohta, kuidas määratlete, et Arduino Pin A0 -ga ühendatud andur tuleks teisendada mootori1 vibratsiooniks ja järelikult väljundiks1:

output1.include (A0);

Kui ühe mootorivibratsiooni sees tuleks kombineerida mitu sensoorset väljundit, saate väljundisse1 lisada lihtsalt teise analoogsisendi:

output1.include (A1);

Vastasel juhul jätkake järgmise väljundiga:

output2.include (A1);

Mitme anduri kombineerimine

Nagu eespool mainitud, saab ühele mootorile juhtida mitu anduri sisendit (nt A0, A1 ja A2). Minu esitatud kood arvutab kõigi kaasatud andurite poolt loetud väärtuste keskmist. Niisiis, kui sellest piisab teie jaoks ja soovite lihtsalt kaardistada näiteks madala sensoorse sisendi madalale vibratsioonile, olete valmis ja te ei pea mõtlema järgmisele:

Kui teil on aga muid ideid selle kohta, mida soovite ühe või mitme töötlemata sensoorse sisendiga teha, saate teha muudatusi funktsioonis int getValue () klassis SensoryOutput:

int getValue () {

finalOutput = 0; // TODO tee sensoorsete väärtustega kõike, mida tahad // siin luuakse keskmine, kui mitu väärtust on ühendatud (int i = 0; i <curArrayLength; i ++) {finalOutput+= analogRead (valueArray ); } return finalOutput / curArrayLength; }

4. Laadige kood üles oma Arduino prototüübile

Ühendage Arduino prototüüp (alates 2. sammust) arvutiga.

Klõpsake Tööriistad → Port → Valige port, kuhu Arduino/Genuino Uno on sulgudes kirjutatud

Klõpsake Tools → Board → Arduino/Genuino Uno

Nüüd peaksid mootorid töötama vastavalt analoogandurite sisenditele. Soovi korral saate Arduino arvuti küljest lahti ühendada ja ühendada mõne muu toiteallikaga, näiteks 9 V akuga.

4. samm: võimalikud laiendused

Võimalikud laiendused
Võimalikud laiendused
Võimalikud laiendused
Võimalikud laiendused
Võimalikud laiendused
Võimalikud laiendused

Äsja ehitatud prototüüp võimaldab ainult analoogsisendeid ja võib juhtida kuni nelja mootorit. Lisaks pole see veel kantav. Kui soovite neid funktsioone laiendada, vaadake järgmisi juhiseid:

  • ERM-i mootorite pöörlevate masside katmine:
  • SSADi kandmine:
  • Rohkem kui 4 mootori kasutamine-mitme mootorikilbi virnastamine:
  • Ultraheli lähedusanduri kasutamine SSAD-sisendina:

Soovitan: