Satura rādītājs:
- Piegādes
- 1. solis: lodēšana
- 2. solis: elektroinstalācija
- 3. darbība: kodēšana
- 4. darbība. Iespējamie paplašinājumi
Video: Vibrotaktilās sensorās aizvietošanas un palielināšanas ierīce (SSAD): 4 soļi
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:52
Šī projekta mērķis ir veicināt pētījumus maņu aizvietošanas un palielināšanas jomā. Man bija iespēja izpētīt dažādus veidus, kā veidot vibrotaktilos SSAD prototipus savā maģistra darbā. Tā kā maņu aizvietošana un papildināšana ir tēma, kas skar ne tikai datorzinātniekus, bet arī citu jomu, piemēram, kognitīvās zinātnes, pētniekus, pakāpeniskai instrukcijai vajadzētu ļaut elektronikas un datorzinātņu neprofesionāļiem savākt šo prototipu. pētniecības nolūkos.
Es nedomāju reklamēt tieši viena veida zīmolu/produktu. Šo projektu nesponsorēja neviens uzņēmums. Izmantotais materiāls tika izvēlēts tehnisko specifikāciju un ērtības dēļ (piegādes ātrums/izmaksas, pieejamība utt.). Visiem šajā pamācībā minētajiem produktiem ir pieejamas vienlīdz piemērotas alternatīvas.
Pašreizējā Instructable satur soli pa solim instrukcijas, kā izveidot pamata SSAD prototipu ar līdz 4 motoriem un analogiem sensoriem.
Papildus šai instrukcijai esmu izveidojis trīs paplašinājumus: Pirmkārt, es publicēju norādījumus par to, kā ar šo SSAD prototipu izmantot vairāk nekā četrus motorus (https://www.instructables.com/id/Using-More-Than-4…). Otrkārt, es izveidoju piedāvājumu un piemēru, kā padarīt šo prototipu valkājamu (https://www.instructables.com/id/Making-the-SSAD-W…) un kā pārklāt ERM motorus bez iekapsulētas rotējošas masas (https:/ /www.instructables.com/id/Covering-Rotating…). Turklāt tiek publicēts arī piemērs tam, kā prototipā integrēt citus, nevis analogus sensorus (šajā gadījumā tuvuma sensorus) (https://www.instructables.com/id/Inciding-a-Proxi…).
Kas ir "maņu aizvietošana un palielināšana"?
Izmantojot maņu aizvietošanu, informāciju, ko apkopo viena maņu metode (piemēram, redze), var uztvert ar citu sajūtu (piemēram, skaņu). Tā ir daudzsološa neinvazīva metode, kas palīdz cilvēkiem pārvarēt maņu zudumu vai traucējumus.
Ja maņu stimulu, kas tiek tulkots, cilvēki parasti neuztver (piemēram, UV gaisma), šo pieeju sauc par maņu palielināšanu.
Kādas prasmes ir nepieciešamas, lai izveidotu šo prototipu?
Būtībā nav nepieciešamas papildu programmēšanas iemaņas, lai izpildītu tālāk sniegtos norādījumus. Tomēr, ja esat iesācējs lodēšanā, plānojiet papildu laiku, lai iepazītu šo tehniku. Ja jūs nekad iepriekš neesat programmējis, var būt nepieciešama palīdzība no kāda, kam ir vairāk pieredzes programmēšanā.
Vai ir vajadzīgas dārgas vai viegli pieejamas mašīnas vai instrumenti?
Izņemot lodāmuru, šī prototipa izveidošanai nav nepieciešamas nekādas mašīnas vai instrumenti, kurus nevar viegli iegādāties tiešsaistē vai nākamajā mājsaimniecības veikalā. Šis SSAD ir paredzēts ātrai prototipēšanai, kas nozīmē, ka tam vajadzētu būt ātri reproducējamam un ļaut lēti izpētīt idejas.
Piegādes
Galvenās sastāvdaļas (aptuveni 65 £ par 4 motoriem, izņemot lodēšanas iekārtas)
- Arduino Uno (piemēram, https://store.arduino.cc/arduino-uno-rev3, 20 £)
- Adafruit Motorshield v2.3 (piem., Https://www.adafruit.com/product/1438, 20 £) un vīriešu kraušanas galvenes (parasti iekļautas, pērkot dzinēja vairogu)
- Cilindriskie ERM motori (piemēram, https://www.adafruit.com/product/1438, 5, 50 £/motors)
- Lodāmurs un lodēšanas stieple
- Vadi
Neobligāti (skatiet paplašinājumus)
Ja tiek nopirkts ERM motors ar nesegtu rotējošu masu:
- Vinila caurule
- Plāns mīksts dēlis
- 3D printeris (Arduino korpusam)
Ja vēlaties izmantot vairāk nekā 4 motorus (vairāk nekā 8 reizes citā laikā):
- Adafruit Motorshield v2.3 un vīriešu sakraušanas galvenes
- Sieviešu kraušanas galvenes (piemēram,
- Arduino Mega vairāk nekā 6 motoriem (piemēram,
1. solis: lodēšana
Lodējiet tapas pie motora vairoga
Adafruit piedāvā ļoti visaptverošu pamācību, kā lodēt galvenes pie motora vairoga (https://learn.adafruit.com/adafruit-motor-shield-v…):
- Pirmkārt, ievietojiet sakraušanas galvenes Arduino Uno tapās,
- Pēc tam uzlieciet vairogu uz augšu tā, lai tapas īsā puse izceļas.
- Pēc tam pielieciet visas tapas pie vairoga un pārliecinieties, ka lodēšana plūst ap tapu un veido vulkāna formu (skatiet attēlu iepriekš, kas ir pieņemts no vietnes https://cdn.sparkfun.com/assets/c/d/ a/a/9/523b1189…).
Ja esat iesācējs lodēšanā, palīdziet sev ar vairākām apmācībām, piemēram,
Lodējiet garākus vadus pie motora
Tā kā lielākajai daļai motoru ir bez vai ļoti īsi un plāni vadi, ir lietderīgi tos pagarināt, pielodējot uz garākiem un izturīgākiem vadiem. Lūk, kā jūs to varētu izdarīt:
- Noņemiet plastmasu ap vadu galiem un novietojiet tos tā, lai tie saskaras viens ar otru pa atklātajiem vadiem, kā parādīts attēlā.
- Lodējiet tos kopā, pieskaroties abu vadu vītnēm un ļaujot lodēt pār tiem.
2. solis: elektroinstalācija
- Salieciet dzinēja vairogu virs Arduino.
- Ieskrūvējiet motorus motora nodalījumā.
- Pievienojiet analogos sensorus Arduino (attēlā tas tiek darīts ar gaismas sensoriem, bet tā pati shēma izskatās vienāda citiem analogiem sensoriem).
3. darbība: kodēšana
1. Lejupielādēt
Lejupielādējiet zip mapi (SSAD_analogueInputs.zip), kas pievienota zemāk. Izsaiņojiet to.
Lejupielādējiet Arduino IDE (https://www.arduino.cc/en/main/software).
Atveriet Arduino failu (SSAD_analogueInputs.ino), kas atrodas neizsaiņotās mapes iekšpusē ar Arduino IDE.
2. Instalējiet bibliotēkas
Lai palaistu norādīto kodu, jums jāinstalē dažas bibliotēkas. Tātad, ja Arduino fails, kas pievienots šī raksta beigās, ir atvērts Arduino IDE iekšpusē, rīkojieties šādi:
- Noklikšķiniet: Rīki → Pārvaldīt bibliotēkas …
- Meklēšanas laukā Filtrējiet "Adafruit Motor Shield V2 Library"
- Instalējiet to, noklikšķinot uz pogas Instalēt
Pēc šo bibliotēku lejupielādes tagad vajadzētu darboties #include paziņojumiem norādītajos kodos. Pārbaudiet to, noklikšķinot uz pogas "Pārbaudīt" (atzīmējiet augšējā kreisajā stūrī). Jūs zināt, ka visas bibliotēkas darbojas, ja programmas apakšā tiek parādīts ziņojums "Gatavs apkopojums". Pretējā gadījumā parādās sarkana josla, un jūs saņemsit ziņojumu par to, kas noticis nepareizi.
3. Mainiet kodu
Mainiet kodu atbilstoši savam lietošanas gadījumam, izpildot tālāk sniegtos norādījumus.
Iedarbināšanas motori un to sensorās izejas
Vispirms paziņojiet, kuras tapas izmanto motori, kā arī kādā diapazonā motori darbojas. Piemēram, motors, kas pievienots M4 un darbojas (ātruma) diapazonā no 25 līdz 175, tiek deklarēts šādi (zem GALVENĀ komentāra):
Motora motors1 = Motors (4, 25, 175);
Strādājot ar maziem vibrācijas motoriem, kuru darbības diapazons ir līdz 3 V, motora aizsargs jālieto piesardzīgi, jo tas ir paredzēts motoru darbināšanai no 4,5 V līdz 13,5 V līdzstrāvai. Lai nesabojātu 3 V motorus, es programmiski ierobežoju vairoga sprieguma jaudu līdz maksimāli 3 V (tieši 2,95 V). Es to izdarīju, izmērot, cik liels maksimālais ātrums 255 ir voltos, un ar multimetru izmērīju, ka tas ir 4,3 V. Tāpēc es nekad neatļāvu motoriem lielāku ātrumu par 175, kas ir aptuveni 3 V.
Katrs motors tiks savienots ar vienu SensoryOutput.
Viena SensoryOutput sastāv no viena vai vairākiem maņu stimuliem. Piemēram, motors var vibrēt saskaņā ar vienu sensoru vai pēc vairāku, atšķirīgi novietotu sensoru vidējās vērtības.
Tāpēc, pirmkārt, katram motoram ir jādeklarē viena SensoryOutput. Skaitļi iekavās ir minimālā un maksimālā vērtība, ko sensors (grupa) var uztvert. Analogajiem sensoriem tas lielākoties ir 0 un 1023:
SensoryOutput output1 = SensoryOutput (0, 1023);
Cilpas () funkcijā katram motoram tiek piešķirta viena izejas vērtība. Šeit jūs rakstāt rakstīt katram motoram šādu paziņojumu un "output1" vietā, neatkarīgi no tā, kāda SensoryOutput vērtība tam jāpievieno. Neaizmirstiet arī mainīt visus "output1" nosaukumus šajā rindā, ja tam izmantojat citu nosaukumu.
motor1.drive (output1.getValue (), output1.getMin (), output1.getMax ());
Ja vēlaties, varat piešķirt vairākiem motoriem (piemēram, motoru1 un motoru2) vienu un to pašu SensoryOutput (piem., Izeju1).
Turklāt vienam motoram varat norādīt vairāku sensoru vērtības (skatīt nākamo sadaļu).
Sensoru definēšana
Funkcijā setup () jāpaziņo, kuri sensori būs daļa no motora vibrācijas (SensoryOutput). Šeit ir piemērs tam, kā jūs definējat, ka sensors, kas ir savienots ar Arduino Pin A0, ir jāpārvērš vibrācijās ar motor1 un līdz ar to arī output1:
output1.include (A0);
Ja vienā motora vibrācijā ir jāapvieno vairākas maņu izejas, izejai1 varat vienkārši pievienot vēl vienu analogās ieejas tapu:
output1.include (A1);
Pretējā gadījumā vienkārši turpiniet ar nākamo izvadi:
output2.include (A1);
Vairāku sensoru apvienošana
Kā minēts iepriekš, vairākas sensora ieejas (piemēram, no A0, A1 un A2) var novest pie viena motora. Es sniedzu kodu, kas aprēķina vidējo vērtību, ko nolasa visi iekļautie sensori. Tātad, ja ar to pietiek jūsu lietošanas gadījumam un jūs vienkārši vēlaties tieši kartēt, piemēram, zemu sensoro ievadi zemai vibrācijai, esat pabeidzis un jums nav jādomā par sekojošo:
Tomēr, ja jums ir citas idejas par to, ko vēlaties darīt ar vienu vai vairākām neapstrādātām maņu ievadēm, varat veikt izmaiņas funkcijā int getValue () SensoryOutput klasē:
int getValue () {
finalOutput = 0; // TODO dariet visu, ko vēlaties, ar maņu vērtībām // šeit tiek veidots vidējais, ja vairākas vērtības tiek apvienotas (int i = 0; i <curArrayLength; i ++) {finalOutput+= analogRead (valueArray ); } return finalOutput / curArrayLength; }
4. Augšupielādējiet kodu savā Arduino prototipā
Pievienojiet datoram Arduino prototipu (no 2. darbības).
Noklikšķiniet uz Rīki → Ports → Atlasiet portu, kurā iekavās ir rakstīts Arduino/Genuino Uno
Noklikšķiniet uz Rīki → Padome → Arduino/Genuino Uno
Tagad motoriem jādarbojas atbilstoši analogo sensoru ieejām. Ja vēlaties, varat atvienot Arduino no datora un pievienot to citam barošanas avotam, piemēram, 9 V akumulatoram.
4. darbība. Iespējamie paplašinājumi
Jūsu tikko uzbūvētais prototips pieļauj tikai analogās ieejas un var darbināt līdz četriem motoriem. Turklāt tas vēl nav valkājams. Ja vēlaties paplašināt šīs funkcijas, skatiet tālāk sniegtos norādījumus.
- ERM motoru rotējošo masu segšana:
- Padarīt SSAD valkājamu:
- Vairāk nekā 4 motoru izmantošana-vairāku motoru vairogu sakraušana:
- Izmantojot ultraskaņas tuvuma sensoru kā SSAD ievadi:
Ieteicams:
Nav urinēšanas, mājdzīvnieku uzvedības pielāgošanas ierīce, kas kavē kaķu urinēšanu jūsu mājās: 4 soļi
Nē Pee tagad, mājdzīvnieku uzvedības pielāgošanas ierīce, kas neļauj kaķiem urinēt jūsu mājās: mani tik ļoti satrauca kaķēns, ka viņai patīk urinēt uz manas gultas, es pārbaudīju visu, kas viņai nepieciešams, un es arī aizvedu viņu pie veterinārārsta. Pēc tam, kad esmu novērsis visu, ko spēju domāt, un ieklausīšos ārsta teiktajā, es saprotu, ka viņai vienkārši ir slikta uzvedība. Tātad th
Versano: daudzfunkcionāla ērta ierīce (arduino Nano): 6 soļi
Versano: daudzfunkcionāla ērta ierīce (arduino Nano): Man bija nepieciešams ērts multimetrs, ko var ērti nēsāt jebkurā vietā. Es gribēju, lai tas būtu mazs un miniatūrs, kas atrodas Camparison ar parastajiem multimetriem. Ar stundām ilgu kodēšanu un shēmas projektēšanu es galu galā izveidoju ierīci, kas var izmērīt spriegumu
Bluetooth ierīcē Arduino -a LED: 7 soļi
Bluetooth ierīcē Arduino -a Led: Šodien es jums paskaidrošu, kā ļoti viegli izmantot Bluetooth moduli HC05 vai HC06. Mēs tikai apgūsim pamatus ar ieslēgšanas/izslēgšanas komponentiem (tiem, kas atrodas uz digitālajām tapām). Es, iespējams, izveidošu pamācību par analogiem komponentiem (A tapa …)
Lāzera pretaizdzīšanas ierīce: 4 soļi
Lāzera pretaizdzīšanas ierīce: tik daudziem zagļiem patīk iebrukt citu cilvēku mājās un nozagt viņu mantas, kas ir ļoti vērtīgi, kad cilvēki guļ, tāpēc es izveidoju šo ierīci, lai atrisinātu šo problēmu
ASS ierīce (antisociāla sociālā ierīce): 7 soļi
ASS ierīce (antisociāla sociāla ierīce): sakiet, ka esat tāds cilvēks, kuram patīk atrasties cilvēku tuvumā, bet nepatīk, ka viņi nāk pārāk tuvu. Jūs arī esat cilvēku baudītājs un jums ir grūti pateikt cilvēkiem nē. Tātad jūs nezināt, kā viņiem pateikt atkāpties. Nu, ievadiet - ASS ierīce! Y