Orodha ya maudhui:

LifeGuard 2.0: Hatua 7 (zilizo na Picha)
LifeGuard 2.0: Hatua 7 (zilizo na Picha)

Video: LifeGuard 2.0: Hatua 7 (zilizo na Picha)

Video: LifeGuard 2.0: Hatua 7 (zilizo na Picha)
Video: И всё-таки она вертится! ► 1 Прохождение Dying Light 2: Stay Human 2024, Novemba
Anonim
MaishaGuard 2.0
MaishaGuard 2.0

Je! Umewahi kutaka kufanya shughuli za hesabu, kuchukua usomaji wa sensorer, kufuatilia pembejeo za analog na dijiti, na kudhibiti matokeo ya analog na dijiti bila uzoefu wowote wa elektroniki? Ikiwa ndio, mradi huu ni kwa ajili yako tu! Tutatumia microcontroller na MATLAB kuunda kifaa kinachoweza kutumiwa kufuatilia na kuongeza mfumo wa EF Express SMART RAIL. Ukiwa na mdhibiti mdogo, uwezekano wa pembejeo na matokeo (ishara / habari inayoingia ndani ya bodi na ishara inayotoka kwenye bodi) haina mwisho. Tutatumia sensa ya kubadilika na potentiometer kama pembejeo zetu. Matokeo yao yatakuwa ujumbe kupitia skrini ya LCD na taa za LED pamoja na buzzer, mtawaliwa. Viboreshaji ambavyo tunatarajia kutekeleza katika mfumo wa RELI ya SMART vinahusiana na kuboresha usalama wa mfumo. Kunyakua kompyuta yako ndogo na mdhibiti mdogo, na tuanze!

Hatua ya 1: Programu na Vifaa

Programu na Vifaa
Programu na Vifaa
Programu na Vifaa
Programu na Vifaa
Programu na Vifaa
Programu na Vifaa
Programu na Vifaa
Programu na Vifaa

Programu inahitajika

1.) MATLAB

- Utahitaji kupakua toleo la ndani la MATLAB kwenye kompyuta yako. Nenda mathworks.com na usanidi akaunti ya MATHWORKS, pakua faili, na uamilishe leseni yako.

-Unapaswa kupakua na kusanikisha visanduku VYA ZOTE zinazopatikana kwa toleo jipya zaidi (R2016a au R2016b).

Watumiaji wa Mac: lazima uwe na OSX 10.9.5 au baadaye ili kuendesha R2015b, ni sawa kuendesha toleo la mapema la MATLAB.

2.) Kifurushi cha Usaidizi wa vifaa vya Arduino:

-Sanikisha Kifurushi cha Usaidizi wa Vifaa vya Arduino. Fungua MATLAB. Kwenye kichupo cha NYUMBANI cha MATLAB, kwenye Menyu ya Mazingira, chagua Viongezeo Pata Vifurushi vya Usaidizi wa Vifaa Chagua Chagua "Kifurushi cha Msaada cha MATLAB cha Vifaa vya Arduino". Utahitaji kuingia kwenye akaunti yako ya MATHWORKS

-Usanikishaji wako ukikatizwa na kuwa na majaribio / makosa kadhaa wakati wa kusakinisha kifurushi cha vifaa - tafuta na ufute folda ya kupakua Arduino kwenye diski yako na uanze mwanzo.

Vifaa vinahitajika

1.) Laptop au kompyuta ya desktop

2.) Bodi ya SparkFun Arduino

3.) Sura ya Flex

4.) Potentiometer

5.) Skrini ya LCD

6.) Mwanga wa LED

7.) Kitanda cha Mvumbuzi wa SparkFun (Tafuta mkondoni)

8.) USB cable na mini USB

9.) waya za jumper

10.) Piezo buzzer

Hatua ya 2: Unganisha kwenye Arduino yako na Tambua Bandari ya COM

(Bandari yako ya COM inaweza kubadilika kila wakati unapoingiza) Unganisha kebo ya USB ya Arduino kwenye kompyuta yako na USB ndogo kwenye bodi yako ya Arduino. Unaweza kuhitaji kusubiri dakika chache kwa madereva kupakua.

Kuamua bandari ya COM:

Kwenye PC

Njia ya 1: Katika MATLAB tumia amri - fopen (serial ('nada'))

-kuamua bandari yako ya com. Unaweza kupata hitilafu kama hii: Kosa kutumia serial / fopen (mstari 72) Kufungua kumeshindwa: Bandari: NADA haipatikani. Bandari zinazopatikana: COM3. Kosa hili linaonyesha kuwa bandari yako ni 3.

-If Njia 1 ikishindwa kwenye PC yako, fungua Kidhibiti chako cha Kifaa na upanue orodha ya Bandari (COM na LPT). Kumbuka nambari kwenye Bandari ya Serial ya USB. mf. 'USB Port Port (COM *)' Nambari ya bandari ni * hapa.

-Ikiwa hakuna bandari inayoonyeshwa, funga MATLAB na uanze tena kompyuta yako. Fungua MATLAB na ujaribu fopen (serial ('nada')) tena.

-Ikishindikana hii, unaweza kuhitaji kupakua madereva ya SparkFun kutoka faili CDM_v2.12.00_WHQL_Certified.exe, fungua na uendeshe faili ya CDM_v2.12.00_WHQL_Certified.exe, na uchague Dondoa. (Unaweza kuhitaji kufungua faili kutoka kwa mtafiti, bonyeza kulia, na 'Run as Administrator').

-Katika dirisha la amri la MATLAB tengeneza kitu cha Arduino - a = arduino ('comx', 'uno'); % x ni nambari yako ya bandari kutoka juu kwa PC (hakuna zero iliyotangulia!)

Kwenye Mac

Njia 1: Kutoka kwa laini ya amri ya MATLAB au kwenye Kituo cha Mac na andika: 'ls /dev/tty.*' Kumbuka nambari ya bandari iliyoorodheshwa kwa dev / tty.usbmodem * au dev / tty.usbserial *. Nambari ya bandari ni * hapa.

-If Njia 1 ikishindwa kwenye MAC yako, unaweza kuhitaji

-Toka MATLAB

-Funga programu ya Arduino na ondoa kebo ya USB ya Arduino

-funga Java 6 Runtime

-funga ugani wa kernel ya dereva wa USB

Anzisha tena kompyuta yako

-Unganisha tena kebo ya USB ya Arduino

-Kimbia kutoka kwa laini ya amri ya MATLAB au Kituo cha Mac: ls /dev/tty.*

-Zingatia nambari ya bandari iliyoorodheshwa kwa dev / tty.usbmodem * au dev / tty.usbserial *. Nambari ya bandari ni * hapa.

-Katika dirisha la amri la MATLAB tengeneza kitu cha Arduino - a = arduino ('/ dev / tty.usbserial *', 'uno'); % * ni nambari yako ya bandari kutoka juu ya MAC, au '/dev/tty.usbmodem*'

Hatua ya 3: Nambari ya Matlab

Msimbo wa Matlab
Msimbo wa Matlab
Msimbo wa Matlab
Msimbo wa Matlab

Pembejeo:

1.) Sura ya Flex

2.) Potentiometer

Matokeo:

1.) Skrini ya LCD na ujumbe ambao unasomeka "Treni Inakuja"

2.) Mwanga wa LED

3.) Buzzer ya piezo

Katika hatua hii, tutakuwa tunaunda nambari ambayo itachambua maoni kutoka kwa bodi ya Arduino na kutoa matokeo kulingana na matokeo ya uchambuzi wa MATLAB. Nambari ifuatayo itakuruhusu kufanya kazi kadhaa: wakati potentiometer inasababishwa, buzzer ya piezo itatoa masafa mbadala na LED nyekundu itang'aa. Treni isipogunduliwa, LED ya kijani itaangazwa. Wakati sensorer ya Flex inasababishwa, LED ya uchoyo itazima, LED nyekundu itaangazia, na LCD itaonyesha ujumbe unaosomeka "Treni Inakuja".

Msimbo wa MATLAB:

% kumbukumbu1, shornsb1, wmurrin

Kusudi: Onyo la Treni

Pato la pili: potentiometer, sensor sensor

Pato%: LCD, sauti, mwanga

Ikiwa bodi haijaanzishwa au ina shida za unganisho, fanya

% chini ya amri katika maoni. Hawana haja ya kutekeleza kila wakati

Futa yote

% funga zote

% clc

% a = arduino ('/ dev / tty.usbserial-DN01DXOM', 'uno');

% lcd = addon (a, 'MfanoLCD / LCDAddon', {'D7', 'D6', 'D5', 'D4', 'D3', 'D2'});

Sanidi bodi baada ya kushikamana

configurePin (a, 'D8', 'pullup');% sanidi D8

configurePin (a, 'D9', 'PWM');% sanidi D9

wakati = 50; % imeweka muda hadi 50

clearLCD (LCD)% kuanzisha LCD

Anza Kitanzi

wakati> 0

Voltage ya sensa ya Flex huamua ikiwa taa ni ya kijani, au ikiwa nyepesi

% nyekundu na maonyesho ya LCD "treni inayokuja"

flex_status = somaVoltage (a, 'A0'); soma voltage ya sensor ya flex

ikiwa flex_status> 4% ikiwa voltage ni kubwa kuliko 4, chaza kitanzi

writeDigitalPin (a, 'D12', 0)% zima kijani

writeDigitalPin (a, 'D11', 1)% washa nyekundu

printLCD (LCD, 'Treni Coming')% onyesha "treni inayokuja" kwenye LCD

pause (5)% Subiri sekunde 5

clearLCD (lcd)% Ujumbe wazi kutoka LCD

writeDigitalPin (a, 'D11', 0)% Zima LED Nyekundu

mwingine

mwisho

pe_status = somaVoltage (a, 'A2'); Soma voltage ya potentiometer

ikiwa pe_status> 2% ikiwa voltage ni kubwa kuliko 2, chaza kitanzi

writeDigitalPin (a, 'D13', 1);% washa LED nyekundu

playTone (a, 'D9', 400,.25);% Cheza 400Hz kwenye buzzer ya Piezo,.25 sec

writeDigitalPin (a, 'D13', 0)% zima LED nyekundu

pumzika (.25)% subiri.25 sekunde

writeDigitalPin (a, 'D13', 1)% Rudia juu, na buzzer saa 200Hz

kuchezaTone (a, 'D9', 200,.25);

andikaDigitalPin (a, 'D13', 0)

pumzika (.25)

writeDigitalPin (a, 'D13', 1);% Rudia hapo juu

playTone (a, 'D9', 400,.25);

andikaDigitalPin (a, 'D13', 0)

pumzika (.25)

andikaDigitalPin (a, 'D13', 1)

kuchezaTone (a, 'D9', 200,.25);

andikaDigitalPin (a, 'D13', 0)

pumzika (.25)

writeDigitalPin (a, 'D13', 1)% Rudia hapo juu

playTone (a, 'D9', 400,.25);

andikaDigitalPin (a, 'D13', 0)

pumzika (.25)

andikaDigitalPin (a, 'D13', 1)

kuchezaTone (a, 'D9', 200,.25);

andikaDigitalPin (a, 'D13', 0)

pumzika (.25)

writeDigitalPin (a, 'D13', 1)% Rudia hapo juu

playTone (a, 'D9', 400,.25);

andikaDigitalPin (a, 'D13', 0)

pumzika (.25)

andikaDigitalPin (a, 'D13', 1)

kuchezaTone (a, 'D9', 200,.25);

andikaDigitalPin (a, 'D13', 0)

pumzika (.25)

mwingine

writeDigitalPin (a, 'D12', 1)% ikiwa voltage ni chini ya 2, washa taa ya kijani kibichi

writeDigitalPin (a, 'D13', 0)% zamu ya Red LED

mwisho

mwisho

Hatua ya 4: Wiring Sensor ya Flex

Wiring Sensorer ya Flex
Wiring Sensorer ya Flex
Wiring Sensorer ya Flex
Wiring Sensorer ya Flex
Wiring Sensorer ya Flex
Wiring Sensorer ya Flex
Wiring Sensorer ya Flex
Wiring Sensorer ya Flex

Vifaa vinahitajika

1.) 1 Flex Sensor

2.) 1 10K Ohm Resistor

3.) waya 8 za jumper

* Rejea picha, mtawaliwa.

Katika mzunguko huu, tutakuwa tukipima kubadilika. Sensor ya kubadilika hutumia kaboni kwenye ukanda wa plastiki ili kutenda kama kontena inayobadilika, lakini badala ya kubadilisha upinzani kwa kugeuza kitasa, unabadilika kwa kubadilisha sehemu hiyo. Mgawanyiko wa voltage kugundua mabadiliko katika upinzani. Kwa upande wetu, tutatumia sensa ya kubadilika kugundua treni inayopita kuamuru skrini ya LCD (tazama picha) kusoma ujumbe unaosema "Treni Inakuja".

* Katika picha zinazoonyesha maagizo ya wiring Sensor ya Flex, rejea tu waya zinazohusiana na wiring Sensor Flex. Puuza wiring kwa Servo.

Pini za waya kama ifuatavyo:

Hatua ya 1: Kwenye ubao wa Arduino katika sehemu ya POWER, ingiza waya 1 kwenye pembejeo 5V na waya 1 kwenye pembejeo ya GND (ardhi). Chomeka upande mwingine wa waya wa 5V kwenye pembejeo chanya (+) kwenye bodi ya mzunguko. Chomeka mwisho mwingine wa waya wa GND kwenye pembejeo hasi (-) kwenye bodi ya mzunguko.

Hatua ya 2: Kwenye ubao wa Arduino katika sehemu ya ANALOG IN, ingiza 1 kwenye pembejeo ya A0. Chomeka mwisho wa waya hiyo kwenye pembejeo ya j20 kwenye bodi ya mzunguko.

Hatua ya 3: Kwenye ubao wa Arduino katika sehemu ya DIGITAL I / O, weka waya 1 kwenye pembejeo 9. Chomeka ncha nyingine kwenye pembejeo a3.

Hatua ya 4: Kwenye bodi ya mzunguko, Chomeka waya 1 kwenye pembejeo chanya (+). Chomeka ncha nyingine kwenye pembejeo h24.

Hatua ya 5: Kwenye bodi ya mzunguko, Chomeka waya 1 kwenye pembejeo hasi (+). Chomeka ncha nyingine kwenye pembejeo a2.

Hatua ya 6: Kwenye bodi ya mzunguko, Chomeka waya 1 kwenye pembejeo hasi (-). Chomeka ncha nyingine kwenye pembejeo b1.

Hatua ya 7: Kwenye bodi ya mzunguko, Chomeka waya 1 kwenye pembejeo hasi (-). Chomeka ncha nyingine kwenye ingizo i19.

Hatua ya 8: Kwenye ubao wa mzunguko, weka kipingaji katika pembejeo za i20 na i24.

* Picha ya mwisho inahusu matumizi halisi ya ulimwengu.

Hatua ya 5: Unganisha Arduino na LCD

Unganisha Arduino na LCD
Unganisha Arduino na LCD
Unganisha Arduino na LCD
Unganisha Arduino na LCD
Unganisha Arduino na LCD
Unganisha Arduino na LCD

* Fuata kiunga hiki (https://ef.engr.utk.edu/ef230-2017-08/projects/ard…) kisha urejee hatua ambazo nimetoa hapa chini kuunganisha LCD na Arduino:

Hatua ya 1: Fungua faili ya zip

Hatua ya 2: fungua faili ya ReadMe na ufuate maagizo

Vifaa vinahitajika

1.) 16x2 LCD sawa na kifaa hiki kutoka SparkFun -

2.) waya za jumper

* Rejea picha, mtawaliwa.

Hatua hii itaonyesha jinsi ya kuunda maktaba ya kuongeza ya LCD na kuonyesha "Treni Coming" kwenye LCD.

Pini za waya kama ifuatavyo:

Pini ya LCD -> Arduino Pin

1 (VSS) -> Ardhi

2 (VDD) -> 5V

3 (V0) -> Pini ya kati kwenye Flex Sensor

4 (RS) -> D7

5 (R / W) -> Ardhi

6 (E) -> d6

11 (DB4) - D5 (PWM)

12 (DB5) -> D4

13 (DB6) -> D3 (PWM)

14 (DB7) -> D2

15 (LED +) -> 5 V

16 (LED-) -> Ardhi

Hatua ya 6: Kuunganisha Potentiometer laini

Kuunganisha Potentiometer laini
Kuunganisha Potentiometer laini
Kuunganisha Potentiometer laini
Kuunganisha Potentiometer laini
Kuunganisha Potentiometer laini
Kuunganisha Potentiometer laini

Vifaa vinahitajika

1.) 1 LED

2.) 1 Potentiometer laini

3.) waya za jumper

4.) 3 330 Mpingaji wa Ohm

5.) Mpinzani wa 10K Ohm

* Rejea picha, mtawaliwa.

Katika mzunguko huu, tutatumia aina nyingine ya kontena inayobadilika, potentiometer laini. Huu ni ukanda mwembamba na rahisi ambao unaweza kugundua mahali shinikizo linatumiwa. Kwa kubonyeza sehemu kadhaa za ukanda, unaweza kutofautisha upinzani kutoka 100 hadi 10 K ohms. Unaweza kutumia uwezo huu kufuatilia harakati kwenye potentiometer au kama kitufe. Katika mzunguko huu, tutapata potentiometer laini juu na kukimbia kudhibiti RGB LED.

Hatua ya 1: Kwenye ubao wa Arduino katika sehemu ya DIGITAL I / O, weka pini 1 kwenye pembejeo 10 na pini 1 kwenye pembejeo 11. Kwa mtiririko huo, ingiza ncha nyingine ya pini hizo kwenye pembejeo h6 na h7.

Hatua ya 2: Kwenye bodi ya mzunguko, ingiza LED kwenye pembejeo a4, a5, a6, na a7.

Hatua ya 3: Kwenye ubao wa mzunguko, weka vipingamizi vya 3 330 ohm katika pembejeo e4-g4, e6-g6, na e7-g7.

Hatua ya 4: Kwenye bodi ya mzunguko, ingiza pini 1 kwenye pembejeo e5. Chomeka ncha nyingine ya pini hiyo kwenye pembejeo hasi (-).

Hatua ya 5: Kwenye ubao wa mzunguko, weka kipinzani cha 10K ohm kwenye pembejeo i19-hasi (-).

Hatua ya 6: Kwenye bodi ya mzunguko, ingiza pini 1 kwenye j18. Chomeka ncha nyingine ya pini hiyo kwenye pembejeo chanya (+).

Hatua ya 7: Kwenye ubao wa mzunguko, ingiza pini 1 kwenye pembejeo j20. Chomeka ncha nyingine ya pini hiyo kwenye pembejeo hasi (-).

Hatua ya 7: Jaribu Maboresho yako kwenye Mfumo wa Reli ya Smart

Jaribu Uboreshaji wako kwenye Mfumo wa Reli ya Smart
Jaribu Uboreshaji wako kwenye Mfumo wa Reli ya Smart
Jaribu Uboreshaji wako kwenye Mfumo wa Reli ya Smart
Jaribu Uboreshaji wako kwenye Mfumo wa Reli ya Smart

Kwa wakati huu, nambari yako ya MATLAB inapaswa kufanya kazi na bodi ya Arduino inapaswa kushikamana kwa usahihi pamoja na vifaa vyote vilivyoongezwa. Jaribu kwenye Mfumo wa Reli ya Smart uliothibitishwa na uone ikiwa nyongeza zako zinafanya mfumo kuwa salama.

Ilipendekeza: