Sommario:

LifeGuard 2.0: 7 passaggi (con immagini)
LifeGuard 2.0: 7 passaggi (con immagini)

Video: LifeGuard 2.0: 7 passaggi (con immagini)

Video: LifeGuard 2.0: 7 passaggi (con immagini)
Video: Sesso anale PRIMA VOLTA ? - 7 consigli per farlo al meglio 2024, Novembre
Anonim
Bagnino 2.0
Bagnino 2.0

Hai mai desiderato eseguire operazioni matematiche, rilevare letture di sensori, monitorare ingressi analogici e digitali e controllare uscite analogiche e digitali senza precedenti esperienze di elettronica? Se sì, questo progetto è solo per te! Utilizzeremo un microcontrollore e MATLAB per creare un dispositivo che può essere utilizzato per monitorare e migliorare il sistema EF Express SMART RAIL. Con un microcontrollore, le possibilità di ingressi e uscite (segnale/informazioni che entrano nella scheda e un segnale che esce dalla scheda) sono infinite. Useremo un sensore flessibile e un potenziometro come input. Le loro uscite saranno un messaggio tramite schermo LCD e luci LED insieme a un cicalino, rispettivamente. I miglioramenti che speriamo di implementare nel sistema SMART RAIL sono relativi al miglioramento della sicurezza del sistema. Prendi il tuo laptop e microcontrollore e cominciamo!

Passaggio 1: software e materiali

Software e materiali
Software e materiali
Software e materiali
Software e materiali
Software e materiali
Software e materiali
Software e materiali
Software e materiali

Software necessario

1.) MATLAB

- Dovrai scaricare una versione locale di MATLAB sul tuo computer. Vai su mathworks.com e configura un account MATHWORKS, scarica i file e attiva la tua licenza.

-È necessario scaricare e installare TUTTI i toolbox disponibili per la versione più recente (R2016a o R2016b).

-Utenti Mac: è necessario disporre di OSX 10.9.5 o successivo per eseguire R2015b, è possibile eseguire una versione precedente di MATLAB.

2.) Pacchetto di supporto hardware Arduino:

-Installa il pacchetto di supporto hardware Arduino. Apri MATLAB. Nella scheda MATLAB Home, nel menu Ambiente, seleziona Componenti aggiuntivi Ottieni pacchetti di supporto hardware Seleziona "Pacchetto di supporto MATLAB per hardware Arduino". Dovrai accedere al tuo account MATHWORKS

-Se l'installazione viene interrotta e si verificano successivi tentativi/errori falliti durante l'installazione del pacchetto hardware, trova ed elimina la cartella Arduino download sul disco rigido e ricomincia dall'inizio.

Materiale necessario

1.) Computer portatile o desktop

2.) Scheda Arduino SparkFun

3.) Sensore flessibile

4.) Potenziometro

5.) Schermo LCD

6.) Luce LED

7.) Kit dell'inventore di SparkFun (trova online)

8.) Cavo USB e mini USB

9.) Ponticelli

10.) Cicalino piezoelettrico

Passaggio 2: connettiti al tuo Arduino e determina la porta COM

(La tua porta COM potrebbe cambiare ogni volta che esegui il plug-in) Collega il cavo USB Arduino al computer e la mini USB alla scheda Arduino. Potrebbe essere necessario attendere alcuni minuti per il download dei driver.

Per determinare la porta COM:

Su PC

Metodo 1: in MATLAB usa il comando - fopen(serial('nada'))

-per determinare la tua porta com. Potresti ricevere un errore come questo: Errore durante l'utilizzo di serial/fopen (line 72) Apertura fallita: Porta: NADA non disponibile. Porte disponibili: COM3. Questo errore indica che la tua porta è 3.

-Se il Metodo 1 non riesce sul tuo PC, apri Gestione dispositivi ed espandi l'elenco Porte (COM e LPT). Prendere nota del numero sulla porta seriale USB. per esempio. 'Porta seriale USB (COM*)' Il numero della porta è * qui.

-Se non viene visualizzata alcuna porta, chiudi MATLAB e riavvia il computer. Apri MATLAB e prova di nuovo fopen(serial('nada')).

-Se non riesce, potrebbe essere necessario scaricare i driver di SparkFun dal file CDM_v2.12.00_WHQL_Certified.exe, aprire ed eseguire il file CDM_v2.12.00_WHQL_Certified.exe e selezionare Estrai. (Potrebbe essere necessario aprire il file da Explorer, fare clic con il tasto destro e "Esegui come amministratore").

-Nella finestra di comando MATLAB creare un oggetto Arduino - a=arduino('comx', 'uno'); % x è il tuo numero di porta dall'alto per i PC (senza zeri precedenti!)

Su un Mac

Metodo 1: dalla riga di comando di MATLAB o in un terminale Mac e digitare: 'ls /dev/tty.*' Prendere nota del numero di porta elencato per dev/tty.usbmodem* o dev/tty.usbserial*. Il numero di porta è * qui.

-Se il Metodo 1 non riesce sul tuo MAC, potrebbe essere necessario

-Esci da MATLAB

-Chiudi il software Arduino e scollega il cavo USB Arduino

-install Java 6 Runtime

-installa l'estensione del kernel del driver USB

-Riavvia il tuo computer

-Ricollegare il cavo USB Arduino

-Esegui dalla riga di comando di MATLAB o dal terminale Mac: ls /dev/tty.*

-Prendere nota del numero di porta elencato per dev/tty.usbmodem* o dev/tty.usbserial*. Il numero della porta è * qui.

-Nella finestra di comando MATLAB creare un oggetto Arduino - a=arduino('/dev/tty.usbserial*', 'uno'); % * è il tuo numero di porta dall'alto per i MAC o '/dev/tty.usbmodem*'

Passaggio 3: codice Matlab

Codice Matlab
Codice Matlab
Codice Matlab
Codice Matlab

Ingressi:

1.) Sensore flessibile

2.) Potenziometro

Uscite:

1.) Schermo LCD con messaggio che recita "Treno in arrivo"

2.) Luce LED

3.) Cicalino piezo

In questo passaggio, costruiremo il codice che analizzerà gli input dalla scheda Arduino e fornirà output basati sui risultati dell'analisi di MATLAB. Il seguente codice consentirà di svolgere diverse funzioni: all'azionamento del potenziometro, il buzzer piezo emetterà frequenze alternate e il LED rosso lampeggerà. Quando un treno non viene rilevato, il LED verde si accende. Quando il sensore Flex viene attivato, il LED avidità si spegnerà, il LED rosso si illuminerà e il display LCD visualizzerà un messaggio che dice "Treno in arrivo".

Codice MATLAB:

%remery1, shornsb1, wmurrin

%Scopo: avviso di treno

%Input:potenziometro, sensore di flessione

% output: lcd, suono, luce

%Se la scheda non è inizializzata o ha problemi di connessione, eseguire il

% sotto i comandi nei commenti. Non è necessario eseguirli ogni volta

%cancella tutto

%chiudi tutto

%clc

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

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

%Configura la scheda una volta collegata

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

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

tempo=50; %imposta il tempo a 50

clearLCD(lcd) %inizializza LCD

%Avvia ciclo

mentre tempo>0

%La tensione del sensore Flex determina se la luce è verde o se è luce

%è rosso e il display LCD visualizza "treno in arrivo"

flex_status = readVoltage(a, 'A0'); % leggere la tensione del sensore flessibile

se flex_status>4 %se la tensione è maggiore di 4, trigger loop

writeDigitalPin(a, 'D12', 0) %spegni il verde

writeDigitalPin(a, 'D11', 1) %accendi rosso

printLCD(lcd, 'Treno in arrivo') %display "treno in arrivo" su LCD

pausa(5) %Attendi 5 secondi

clearLCD(lcd) %Cancella messaggio da LCD

writeDigitalPin(a, 'D11', 0) %Spegni il LED rosso

altro

fine

pe_status = readVoltage(a, 'A2'); %Leggi la tensione del potenziometro

se pe_status>2 %se la tensione è maggiore di 2, trigger loop

writeDigitalPin(a, 'D13', 1);%accendi il LED rosso

playTone(a, 'D9', 400,.25);% Riproduci 400Hz sul cicalino piezo,.25 sec

writeDigitalPin(a, 'D13', 0)%spegni il LED rosso

pausa(.25)%attesa.25 secondi

writeDigitalPin(a, 'D13', 1) %Ripeti sopra, con buzzer a 200Hz

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

writeDigitalPin(a, 'D13', 0)

pausa(.25)

writeDigitalPin(a, 'D13', 1);%Ripeti sopra

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

writeDigitalPin(a, 'D13', 0)

pausa(.25)

writeDigitalPin(a, 'D13', 1)

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

writeDigitalPin(a, 'D13', 0)

pausa(.25)

writeDigitalPin(a, 'D13', 1) %Ripeti sopra

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

writeDigitalPin(a, 'D13', 0)

pausa(.25)

writeDigitalPin(a, 'D13', 1)

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

writeDigitalPin(a, 'D13', 0)

pausa(.25)

writeDigitalPin(a, 'D13', 1) %Ripeti sopra

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

writeDigitalPin(a, 'D13', 0)

pausa(.25)

writeDigitalPin(a, 'D13', 1)

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

writeDigitalPin(a, 'D13', 0)

pausa(.25)

altro

writeDigitalPin(a, 'D12', 1)%se la tensione è inferiore a 2, accende il LED verde

writeDigitalPin(a, 'D13', 0)%giro del LED rosso

fine

fine

Passaggio 4: cablaggio del sensore flessibile

Cablaggio del sensore Flex
Cablaggio del sensore Flex
Cablaggio del sensore Flex
Cablaggio del sensore Flex
Cablaggio del sensore Flex
Cablaggio del sensore Flex
Cablaggio del sensore Flex
Cablaggio del sensore Flex

Materiale necessario

1.) 1 sensore flessibile

2.) 1 resistore da 10K Ohm

3.) 8 cavi di collegamento

*Fare riferimento alle immagini, rispettivamente.

In questo circuito, misureremo la flessione. Un sensore flessibile utilizza il carbonio su una striscia di plastica per agire come un resistore variabile, ma invece di cambiare la resistenza ruotando una manopola, si cambia flettendo il componente. Un divisore di tensione per rilevare il cambiamento di resistenza. Nel nostro caso, utilizzeremo il sensore flex per rilevare un treno in transito per comandare a uno schermo LCD (vedi foto) di leggere un messaggio che dice "Treno in arrivo".

*Nelle immagini che mostrano le istruzioni per il cablaggio di un Flex Sensor, fare riferimento solo ai fili relativi al cablaggio del Flex Sensor. Ignorare il cablaggio per il servo.

Collegare i pin come segue:

Passaggio 1: sulla scheda Arduino nella sezione POWER, collegare 1 filo all'ingresso 5V e 1 filo all'ingresso GND (terra). Collegare l'altra estremità del cavo da 5 V a un ingresso positivo (+) sulla scheda del circuito. Collegare l'altra estremità del filo GND a un ingresso negativo (-) sulla scheda del circuito.

Passaggio 2: sulla scheda Arduino nella sezione ANALOG IN, collegare 1 all'ingresso A0. Collegare l'estremità di quel filo all'ingresso j20 sulla scheda del circuito.

Passaggio 3: sulla scheda Arduino nella sezione DIGITAL I\O, collegare 1 filo all'ingresso 9. Collegare l'altra estremità all'ingresso a3.

Passaggio 4: sulla scheda del circuito, collegare 1 filo a un ingresso positivo (+). Collegare l'altra estremità all'ingresso h24.

Passaggio 5: sulla scheda del circuito, collegare 1 filo a un ingresso negativo (+). Collegare l'altra estremità all'ingresso a2.

Passaggio 6: sulla scheda del circuito, collegare 1 filo a un ingresso negativo (-). Collegare l'altra estremità all'ingresso b1.

Passaggio 7: sulla scheda del circuito, collegare 1 filo a un ingresso negativo (-). Collegare l'altra estremità all'ingresso i19.

Passaggio 8: sulla scheda del circuito, posizionare la resistenza negli ingressi i20 e i24.

*L'ultima immagine si riferisce alle applicazioni del mondo reale.

Passaggio 5: collega Arduino a LCD

Collega Arduino a LCD
Collega Arduino a LCD
Collega Arduino all'LCD
Collega Arduino all'LCD
Collega Arduino all'LCD
Collega Arduino all'LCD

*Segui questo link (https://ef.engr.utk.edu/ef230-2017-08/projects/ard…) e poi fai riferimento ai passaggi che ho fornito di seguito per collegare un LCD a un Arduino:

Passaggio 1: apri il file zip

Passaggio 2: apri il file Leggimi e segui le istruzioni

Materiale necessario

1.) LCD 16x2 simile a questo dispositivo di SparkFun -

2.) Ponticelli

*Fare riferimento alle immagini, rispettivamente.

Questo passaggio mostrerà come creare una libreria aggiuntiva LCD e visualizzare "Train Coming" su un LCD.

Collegare i pin come segue:

Pin LCD -> Pin Arduino

1 (VSS) -> Terra

2 (VDD) -> 5V

3 (V0) -> Pin centrale sul sensore Flex

4 (RS) -> D7

5(R/W) -> Terra

6 (E) -> d6

11 (DB4) - D5 (PWM)

12 (DB5) -> D4

13 (DB6) -> D3 (PWM)

14 (DB7) -> D2

15 (LED+) -> 5 V

16 (LED-) -> Terra

Passaggio 6: collegamento del potenziometro morbido

Collegamento del potenziometro morbido
Collegamento del potenziometro morbido
Collegamento del potenziometro morbido
Collegamento del potenziometro morbido
Collegamento del potenziometro morbido
Collegamento del potenziometro morbido

Materiale necessario

1.) 1 LED

2.) 1 potenziometro morbido

3.) Cavi dei ponticelli

4.) Resistenza da 3 330 Ohm

5.) Resistenza da 10K Ohm

*Fare riferimento alle immagini, rispettivamente.

In questo circuito, useremo un altro tipo di resistore variabile, un potenziometro morbido. Questa è una striscia sottile e flessibile in grado di rilevare dove viene applicata la pressione. Premendo su varie parti della striscia è possibile variare la resistenza da 100 a 10 K ohm. Puoi usare questa capacità per tracciare il movimento sul potenziometro o come un pulsante. In questo circuito, avremo il potenziometro morbido attivo e funzionante per controllare un LED RGB.

Passaggio 1: sulla scheda Arduino nella sezione DIGITAL I\O, collegare 1 pin all'ingresso 10 e 1 pin all'ingresso 11. Rispettivamente, collegare l'altra estremità di quei pin agli ingressi h6 e h7.

Passaggio 2: sulla scheda del circuito, collegare il LED agli ingressi a4, a5, a6 e a7.

Passaggio 3: sulla scheda del circuito, posizionare i resistori da 3 330 ohm negli ingressi e4-g4, e6-g6 e e7-g7.

Passaggio 4: sulla scheda del circuito, collegare 1 pin all'ingresso e5. Collega l'altra estremità di quel pin a un ingresso negativo (-).

Passaggio 5: sulla scheda del circuito, posizionare la resistenza da 10K ohm negli ingressi i19-negativo (-).

Passaggio 6: sulla scheda del circuito, collegare 1 pin a j18. Collega l'altra estremità di quel pin a un ingresso positivo (+).

Passaggio 7: sulla scheda del circuito, collegare 1 pin all'ingresso j20. Collega l'altra estremità di quel pin a un ingresso negativo (-).

Passaggio 7: prova i tuoi miglioramenti su un sistema Smart Rail

Metti alla prova i tuoi miglioramenti su un sistema Smart Rail
Metti alla prova i tuoi miglioramenti su un sistema Smart Rail
Metti alla prova i tuoi miglioramenti su un sistema Smart Rail
Metti alla prova i tuoi miglioramenti su un sistema Smart Rail

A questo punto, il tuo codice MATLAB dovrebbe essere funzionante e la scheda Arduino dovrebbe essere collegata accuratamente insieme a tutti i componenti aggiunti. Provalo su un sistema Smart Rail certificato e verifica se i tuoi miglioramenti rendono il sistema più sicuro.

Consigliato: