- Nepieciešamie materiāli:
- Blind Stick shēmas diagramma:
- Arduino programma viedajai neredzīgajai nūjai:
- Arduino Blind Stick darbībā:
Vai esat kādreiz dzirdējuši par Hjū Herru? Viņš ir slavens amerikāņu klinšu kāpējs, kurš ir sagrāvis viņa invaliditātes ierobežojumus; viņš ir pārliecināts, ka tehnoloģijas varētu palīdzēt invalīdiem dzīvot normālu dzīvi. Vienā no TED sarunām Herrs teica: “ Cilvēki nav invalīdi. Cilvēku nekad nevar salauzt. Mūsu veidotā vide, mūsu tehnoloģijas ir bojātas un invalīdi. Mēs cilvēki nav pieņemt mūsu ierobežojumus, bet var nodot invaliditātes caur tehnoloģisko inovāciju ". Tie nebija tikai vārdi, bet viņš tiem nodzīvoja savu dzīvi, šodien viņš izmanto kāju protezēšanu un apgalvo, ka dzīvo normālu dzīvi. Tātad jā, tehnoloģija patiešām var neitralizēt cilvēka invaliditāti; Paturot to prātā, izmantosim dažus vienkāršus izstrādājuma dēļus un sensorus, lai izveidotu ultraskaņas aklo spieķi, izmantojot Arduino kas varētu darboties ne tikai ar nūju cilvēkiem ar redzes traucējumiem.
Šim viedajam nūjiņam būs ultraskaņas sensors, kas uztver attālumu no jebkura šķēršļa, LDR, lai uztvertu apgaismojuma apstākļus, un RF tālvadības pults, ar kuras palīdzību neredzīgais cilvēks var attālināti atrast savu nūju. Visas atsauksmes tiks sniegtas neredzīgajam, izmantojot skaņas signālu. Protams, jūs varat izmantot vibratora motoru Buzzer vietā un daudz vairāk attīstīt, izmantojot savu radošumu.
Nepieciešamie materiāli:
- Arduino Nano (jebkura versija darbosies)
- Ultraskaņas sensors HC-SR04
- LDR
- Buzzer un LED
- 7805
- 433MHz RF raidītājs un uztvērējs
- Rezistori
- Kondensatori
- Uzspied pogu
- Perfekts dēlis
- Lodēšanas komplekts
- 9V akumulatori
Šeit varat iegādāties visus nepieciešamos komponentus šim viedo žalūziju nūjas projektam.
Blind Stick shēmas diagramma:
Šim Arduino Smart Blind Stick projektam ir nepieciešamas divas atsevišķas shēmas. Viena ir galvenā ķēde, kas tiks uzstādīta uz neredzīgā nūjas. Otra ir maza attālā RF raidītāja shēma, kas tiks izmantota, lai atrastu galveno ķēdi. Galvenās dēļa shēma, lai izveidotu neredzīgo nūju, izmantojot ultraskaņas sensoru, ir parādīta zemāk:
Kā redzam, visu sensoru kontrolei tiek izmantots Arduino Nano, taču jūs varat arī izveidot šo Smart blind stick, izmantojot arduino uno, bet ievērojot tos pašus pinouts un programmu. Visu paneli darbina 9 V akumulators, kas tiek regulēts līdz + 5 V, izmantojot 7805 sprieguma regulatoru. Ultraskaņas sensors ir aprīkots ar 5V un sprūda un Echo pin ir savienots ar Arduino nano pin 3 un 2, kā parādīts iepriekš. LDR ir saistīts ar rezistoru vērtības 10K, lai veidotu potenciāls dalītāju, un atšķirība sprieguma lasa Arduino ADC pin A1. ADC tapa A0 tiek izmantota signāla nolasīšanai no RF uztvērēja. Dēļa izeju dod skaņas signāls, kas savienots ar tapu 12.
RF tālvadības ķēde ir parādīts zemāk. Tās darbība ir arī sīkāk izskaidrota.
Esmu izmantojis nelielu uzlaušanu, lai šī RF tālvadības shēma darbotos. Parasti, lietojot šo 433 MHz RF moduli, darbībai ir nepieciešams kodētājs un dekoders vai divi MCU, tāpat kā mūsu iepriekšējā RF raidītāja un uztvērēja ķēdē mēs izmantojām attiecīgi HT12D un HT12E, dekodētāju un kodētāja IC. Bet mūsu lietojumprogrammā mums vienkārši nepieciešams uztvērējs, lai noteiktu, vai raidītājs sūta dažus signālus. Tātad raidītāja datu tapa ir pievienota barošanas avota zemei vai Vcc.
Uztvērēja datu tapa tiek izvadīta caur RC filtru un pēc tam tiek nodota Arduino, kā parādīts zemāk. Tagad, kad tiek nospiesta poga, uztvērējs atkārtoti izmaina noteiktu nemainīgu ADC vērtību. Šo atkārtojumu nevar novērot, ja poga netiek nospiesta. Tāpēc mēs rakstām Arduino programmu, lai pārbaudītu atkārtotas vērtības, lai noteiktu, vai poga ir nospiesta. Tātad tas ir tas, kā neredzīgais cilvēks var izsekot savu nūju. Šeit varat pārbaudīt: kā darbojas RF raidītājs un uztvērējs.
Esmu izmantojis perf plāksni, lai lodētu visus savienojumus tā, lai tas ar nūju neskartu. Bet jūs varat tos pagatavot arī uz maizes dēļa. Šīs ir plāksnes, kuras es izgatavoju šim neredzīgo nūju projektam, izmantojot arduino.
Arduino programma viedajai neredzīgajai nūjai:
Kad esam gatavi ar savu aparatūru, mēs varam savienot Arduino ar savu datoru un sākt programmēt. Pilns šai lapai izmantotais kods ir atrodams šīs lapas apakšdaļā. Jūs varat to augšupielādēt tieši savā Arduino dēlī. Tomēr, ja vēlaties uzzināt, kā kods darbojas, lasiet tālāk.
Tāpat kā visas programmas, mēs sākam ar void setup (), lai inicializētu ievades izvades tapas. Mūsu programmā Buzzer and Trigger pin ir izvades ierīce, bet Echo pin ir ievades ierīce. Mēs arī inicializējam sērijveida monitoru atkļūdošanai.
void setup () {Sērijas.sākt (9600); pinMode (Buzz, OUTPUT); digitalWrite (Buzz, LOW); pinMode (trigeris, OUTPUT); pinMode (atbalss, INPUT); }
Galvenās cilpas iekšpusē mēs nolasām visus sensoru datus. Mēs sākam ar ultraskaņas sensora sensora datu nolasīšanu attālumam, LDR gaismas intensitātei un RF signālu, lai pārbaudītu, vai poga ir nospiesta. Visi šie dati tiek saglabāti mainīgajā, kā parādīts turpmāk, turpmākai izmantošanai.
aprēķināt_tālumu (sprūda, atbalss); Signāls = analogRead (Remote); Intens = analogRead (Light);
Mēs sākam ar Remote signāla pārbaudi. Mēs izmantojam mainīgo ar nosaukumu hasonló_skaits, lai pārbaudītu, cik reizes tās pašas vērtības tiek atkārtotas no RF uztvērēja. Šī atkārtošanās notiks tikai tad, kad tiek nospiesta poga. Tātad, mēs ieslēdzam attāli nospiestu trauksmi, ja to skaits pārsniedz 100.
// Pārbaudiet, vai tālvadības pults ir nospiesta int temp = analogRead (Remote); līdzīgs_skaitlis = 0; while (Signāls == temp) {Signal = analogRead (Remote); līdzīgs_skaits ++; } // Ja tālvadības pults tiek nospiesta, ja (līdzīgs_skaitlis <100) {Sērijas.druka (līdzīgs_skaitlis); Serial.println ("Remote Pressed"); digitalWrite (Buzz, HIGH); kavēšanās (3000); digitalWrite (Buzz, LOW); }
To var pārbaudīt arī sava datora sērijas monitorā:
Tālāk mēs pārbaudām gaismas intensitāti ap neredzīgo. Ja LDR vērtība ir mazāka par 200, tiek pieņemts, ka tā ir ļoti tumša, un mēs brīdinām viņu ar skaņas signālu ar noteiktu kavēšanās signālu ar 200 ms. Ja intensitāte ir ļoti spilgta, kas ir lielāka par 800, tad mēs arī brīdinām ar citu signālu. Trauksmes signālu un intensitāti var viegli mainīt, mainot attiecīgo vērtību zemāk esošajā kodā.
// Ja ļoti tumšs, ja (Intens <200) {Serial.print (Intens); Serial.println ("Spilgta gaisma"); digitalWrite (Buzz, HIGH); kavēšanās (200); digitalWrite (Buzz, LOW); kavēšanās (200); digitalWrite (Buzz, HIGH); kavēšanās (200); digitalWrite (Buzz, LOW); kavēšanās (200); kavēšanās (500); } // Ja ļoti spilgti, ja (Intens> 800) {Serial.print (Intens); Serial.println ("vājš apgaismojums"); digitalWrite (Buzz, HIGH); kavēšanās (500); digitalWrite (Buzz, LOW); kavēšanās (500); digitalWrite (Buzz, HIGH); kavēšanās (500); digitalWrite (Buzz, LOW); kavēšanās (500); }
Visbeidzot, mēs sākam mērīt attālumu no jebkura šķēršļa. Trauksme nebūs, ja izmērītais attālums ir lielāks par 50 cm. Bet, ja tas ir mazāks par 50 cm, trauksme sāksies, iepīkstot skaņas signālu. Kad objekts tuvojas skaņas signālam, samazināsies arī pīkstienu intervāls. Jo tuvāk objekts, jo ātrāk signāls iepīkstas. To var izdarīt, izveidojot kavēšanos, kas ir proporcionāla izmērītajam attālumam. Kopš kavēšanās () lietā Arduino nevaram pieņemt mainīgos mums izmantot par cilpu, kas cilpa, pamatojoties uz izmērīto attālumu, kā parādīts zemāk.
if (dist <50) {Sērijas.druka (dist); Serial.println ("Brīdinājums par objektu"); digitalWrite (Buzz, HIGH); par (int i = dist; i> 0; i--) kavēšanos (10); digitalWrite (Buzz, LOW); par (int i = dist; i> 0; i--) kavēšanos (10); }
Uzziniet vairāk par attāluma mērīšanu, izmantojot ultraskaņas sensoru un Arduino.
Programmu var viegli pielāgot jūsu lietojumprogrammai, mainot vērtību, kuru mēs izmantojam salīdzināšanai. Ja atkļūdojat nepareizu trauksmi, jūs izmantojat sērijveida monitoru. Ja jums ir kādas problēmas, varat izmantot komentāru sadaļu, lai ievietotu savus jautājumus
Arduino Blind Stick darbībā:
Beidzot ir pienācis laiks pārbaudīt mūsu neredzīgo nūju arduino projektu. Pārliecinieties, vai savienojumi ir veikti, kā norādīts shēmā, un programma ir veiksmīgi augšupielādēta. Tagad darbiniet abas ķēdes, izmantojot 9 V akumulatoru, un jums vajadzētu sākt redzēt rezultātus. Pārvietojiet Ultra Sonic sensoru tuvāk objektam, un jūs pamanīsit, ka skaņas signāls pīkst, un šī pīkstiena frekvence palielinās, kad nūja tuvojas objektam. Ja LDR ir tumšs vai ja ir pārāk daudz gaismas, skaņas signāls iepīkstas. Ja viss ir normāli, skaņas signāls nepīkst.
Nospiežot pogu uz tālvadības pults, skaņas signāls atskanēs ilgi. Pilnīga šī neredzīgo viedtālruņa darbība, izmantojot Arduino, ir parādīta video, kas sniegts šīs lapas beigās. Es arī izmantoju nelielu nūju, lai uzstādītu pilnu komplektu, kuru varat izmantot lielāku vai faktisko neredzīgo nūju un nodot to darbībai.
Ja jūsu skaņas signāls vienmēr pīkst, tas nozīmē, ka trauksme tiek nepareizi iedarbināta. Jūs varat atvērt sērijveida monitoru, lai pārbaudītu parametrus un kritisko kritumu, un to pielāgojiet. Kā vienmēr, jūs varat ievietot savu problēmu komentāru sadaļā, lai saņemtu palīdzību. Ceru, ka sapratāt projektu un patika kaut ko būvēt.