Está en la página 1de 10

¡ 1 ' \, • l \ •, 1 !

I 1 1 1 1 11 nt ,11 1 1' 1, , 1

Esqu ema eléc trico:

2200

LEO

]21098
, •••• ••
•• 6 S ◄ J 2 1 O

!8 ' ' 1 ' D lglt.al


~~

uso fi l Ard uln o 11.1

~I o e: ª' )
CJ s, [¡ IGP

o: 01

•~ -} 1
POWE R
IC 1

A,Ylo gln
~

ªº ••••••
0123 ◄ S
sv G,,d 'N
~

oy
ram a para que la frecuencia de encendid
aJ ¿Qué modificaciones harías en el prog
e.O... ~~ ·
apagado sea men or o mayor? (~~

bJ Si el prim er delay es de 500 , ¿qué ocu


rre en la aplicación? G'o. me,, ~ o cF-F ~ ou .

1
se encienda 2 segundos, se apague
cJ Modifica el prog ram a para que el led
ue 1,5 segundos.
segundo se encienda 3 segundos y se apag
o.
endan 4 leds seguidos del prim ero al últim
d)Modifica el prog ram a para que se enci
o
de encenderse del prim ero al últim o lueg
e) Modifica el prog ram a para que después
se enciendan del último al primero.
los 4 led's.
f) Crea tu un juego de luces estilo libre con
PH!\L'. I ir,/\'. ; 1)1 í l l 1: l I Hl :11 lt\l l Ml
- --- ---

Esquema eléctric o:

-, aeoo
)

LEO
.LL

10K
!l il t:~•• 1

1
• 1 ; , u

~ º"'"•' IS 11
USIS
1Í f Ardulno I=


~
(:.:) · ~ D •· li
(t<i , l._____ic_, _ ___,
O"

•• 0 0: rowtn
~'°'"" .,, ÑWlloQln
01 l!J ◄ 'I

a.
a- a] Realiza la siguiente medición:
a-
•• ..D...
Blmhlo dtl pul•dtr

D
...• Vin2
-{)

º"
o-
'\,~8v
--O o-
Ettot contlttot horlzontlltt ton ti ml ■mo


=et- Vout9 CN '2 1
8'7..v

=--
:a.
FIJttt tn 11 oncho dt lo ■ 16mlnot d ■ c o -

:a. 5.6.2 Encendido de LEO por doble pulsador


encienda un
Desarrolla una aplicación que al accionar el pulsador1 y el pulsador 2 se
er.
Led. En el caso de activar un solo pulsador, el diodo Led no se podrá encend

Programa:

/ /Decla racione s globales:


para indicar
int Pinled =9, PinPulsador1 =2, PinPul sador2 =3;/ *declar ar 3 variables
los pins * /

int EstadoPulsador1 =O;

int EstadoPulsador2=0;

void setupl]

57
I i¡ U\! , I II ./\'; 1JI 1 11 [ : 11 llí :11 J/\1 l IVI 1

a) ¿Qué modificación realizarías para que el diodo LEO se encienda en el caso de


activar el pulsador1 o el pulsador2?
G..__~o.-cb ej. ~ Po.- J. Or .

b) Realiza un programa para que se encienda cuando se aprieta el pulsador 1 y el


pulsador 2 o el pulsador 3.

~( e,\o..do ~ .A=.: o o-..d es l-c-dofM-~2~o)í {


d.;.fl-oe utX~k. (. <liuJ , Hl& ~-Ú í

J
ekt
¾bewr... k.(~, LOvU)i

~J1( <l,,~ o ¡~ c,..dor _3 ..: =o); { cL:.~~\u.;,r_¡_ k C.. .ta.el, LOw);

~k..f lll..lr..:.. le_ l..l.ed, l=t l&H) · j


} -- I }

5.7 Préctica 3:Conexiones de las puertas lógicas:


AROUINO

KI

Código de la centralita [UCE):

int estadoentra da 1 ;

int estadoentra da2;

'59
' \. ''
'.\ 1 l

a) Rellenar las siguientes Tablas:


- -
entradaA entradas salida1 salida2 salida3 salida4 salida5

o o .A o o .A ..-1
- - -
o 1
...A o ..Á o _.Á

1 o o o Á o __)
-
1 1 o .A ..A o o
Indicar tipo de e~
Á.JO T A~O NMJD ~

entradaA entradas V salida1 V salida2 Vsalida3 Vsalida4 V salida5

o o 3,l, 4 V 0 v O v 2_, 30 V .3 , 1<"\v .


'-

o 1 3 , ~3 V Ov 3 ✓ ~º '-' Ov d ,JL1v
¡- 1
-
o Ov 3 / 2.0 v Ó v 3 ,\Sv
1
1 Ov
--t 3;2.h..J Ov Ov
1 1 Ov J ,3':)v
- -

oJ Moaifica el programa para conseguir que la salida 1 cumpla la función XOR

XOR= e ntradaA* entra<!•B~~tradaA"'en~d aB


- .
7 _
-entradaA j entradaB XOR
.
o o
. .
o ~ ( Ce_! ~ \otl,pu-W r,1 ~ ~ 0 o.,...D- (0,t).CIO¡>U-"!

o 1 1
))or ((Qs ~.rufo~ )~ o) ~e~~
1 o 1

1 1 o
OrtlAU
1
'1 1 /

Esquema eléctrico :

12 V

1
1"
O
.
;¡Q J2 10'>8 16 ~ 4 J 2 1
;z G 1 1 1 1 ~~
OJvlUI

vse f 11 Arduln o I=
("") CJs,t!
R2

~I ~rr-Yr..-t"
e º' ) IC?

a 01

• 1<3 ~· 1
1C 1
s
POWER Analog ln

ªº
'IN Gnd w 012345
ec:::::e

- Modifica el program a para que aparte de encenderse con la LOA tambié n


tenga que est:ar el interrup tor de automático activado.

64
PRACTICA 1

const int trigPin = 8;

const lnt echoPin = 9;

lnt led1=2;

int led2=3;

float duration, distance;

void setup() {

pinMode(ledl,OUTPUT);

pinMode(led2,OUTPUT);

pinMode(trigPin, OUTPUT);

pinMode(echoPln, INPUT);

Serial.begin(9600);

vold loop() {

digltalWrite(trlgPin, LOW);

delayMlcroseconds(2);

dlgitalWrite(trlgPin, HIGH);

delayMicroseconds(l0);

digitaiWrite(trigPin, LOW);

duration = pulseln(echoPin, HIGH);

distance = (duration•.0343)/2;

Serial.print("Distance: ");

serlal .prlntln(dlstance);

if(dlstance<l0){

dl¡ltalWrite(ledl, HIGH);
else dllJltalWrlte(led1,LOW);
lf( dlstance>10)(

dllJltalWrlte(led2,HIGH);

else dlafta1Wrlte(led2,LOW);

delay(lOO);
}
PRACTICA2

#define trigPin 6

#define echoPin 5

#define led 13

#define led2 12

#define led3 11

#define led4 10

#define ledS 9

#define led6 8

#define buzzer 3

void setup() {

Serial.begin (9600);

pinMode(trigPin, OUTPUT);

pinMode(echoPin, INPUT);

pinMode(led, OUTPUT);

pinMode(led2, OUTPUT);

pinMode(led3, OUTPUT);

pinMode(led4, OUTPUT);

pinMode(ledS, OUTPUT);

pinMode(led6, OUTPUT);

pinMode(buzzer, OUTPUT);

void loop() {

long duration, distance;

digitalWrite(trigPin, LOW);

delayMícroseconds(2);

digitalWrite(trigPin, HIGH);

delayM icroseconds(10);
dlgltalWrite(trígPin, LOW);

duration = pulseln(echoPin, HIGH);

distance = (duration/2) / 29.1;

if (distance > 1 and distance <5) ( //green 1

digltalWrite(led, HIGH);

tone(3,10);

else {

digitalWrite(led,LOW);

noTone(3);

if (distance >l and distance <5) ( //green2

digita1Write(led2, HIGH);

tone{3,10);

else {

digita1Write(led2, LOW);

noTone(3);

if (distance >5 && distance <10) {//yellow 1

digita1Write(led3, HIGH);

tone(3,100);

else {

digita1Write(led3, LOW);

noTone(3);

if (distance >5 && distance <10) { / /yellow 2

digita1Write(led4, HIGH);
tone(3,100);

else {

digita1Write(led4,LOW);

noTone(3);

lf (distante >10 && distante <20) { / / redl

digitalWrite(ledS, HIGH);

tone(3,1000);

else {

dlgltalWrlte(ledS,LOW);

noTone(3);

if (distante >10 && distante <20) { / / red2

diglta1Write(led6, HIGH);

tone(3, 1000);

else {

digita1Write(led6,LOW);

noTone(3);

if (distante >s200 ){

Serlal.println("Out of range");

else {

Serial.print(dlstance);

Serlal.println(" cm");

También podría gustarte