P2 - SAyAS2 - PILED
P2 - SAyAS2 - PILED
Integrantes:
SAyAS II
Esquivel Checa Espinosa Ivanna
Nuestra fuerza nos mantendrá unidos y no nos rendiremos ante las dificultades
Hernández Salazar Dorian Miguel
Nuestra curiosidad nos llevara a realizar el diseño más optimo y práctico Equipo 13
Mendoza Espinosa Luis Enrique
Confió en mi equipo y en nuestras habilidades para resolver los retos de esta práctica.
PILED
Resumen
En esta práctica se probaron y caracterizaron distintos sensores para diseñar e implementar: Un sistema antirrobo, un sistema de
identificación y control RFID, y un sistema de detección de pasajeros y peatones para mandar avisos. En el desarrollo de la
práctica se implementó un sistema de encendido y apagado para dos motores con módulos RF, un sistema para realizar la lectura
de etiquetas RFID así como una investigación de donde conseguir los accesorios y el software para los lectores y Tags RFID de
largo alcance aplicables para el control de vehículos, un sistema que detecta a pasajeros mediante sensores de deformación, un
sistema que detecta intrusos cerca del vehículo mediante sensores de presencia y finalmente un sistema que detecta banquetas,
postes y personas.
Summary
In this practice, different sensors were tested and characterized to design and implement: an anti-theft system, an RFID
identification and control system, and a passenger and pedestrian detection system to send warnings. In the development
of the practice, an on and off system for two motors with RF modules was implemented, a system to read RFID tags as well
as an investigation of where to get accessories and software for long-term RFID readers and Tags. applicable scope for
vehicle control, a system that detects passengers through deformation sensors, a system that detects intruders near the
vehicle through presence sensors and finally a system that detects sidewalks, posts and people.
1
sumário
Nesta prática, foram testados e caracterizados diferentes sensores para projetar e implementar: um sistema anti-roubo, um sistema
de identificação e controlo RFID e um sistema de deteção de passageiros e peões para envio de avisos. No desenvolvimento da
prática foi implementado um sistema liga e desliga para dois motores com módulos RF, um sistema para leitura de tags RFID bem
como uma investigação de onde conseguir acessórios e software para leitores e Tags RFID de longa duração. para controle de
veículos, um sistema que detecta passageiros por meio de sensores de deformação, um sistema que detecta intrusos próximos ao
veículo por meio de sensores de presença e por fim um sistema que detecta calçadas, postes e pessoas.
Desarrollo
Ejercicio No. 1
Implementar un Sistema de Alarma Sonora (SAS) para un vehículo que tiene 2 puertas, cajuela y cofre:
(a) que funcione cuando se abre alguna parte de él, estando el vehículo con el motor apagado, estacionado y el SAS está
activado (botón de activación). Proporcionar por lo menos un botón codificado, una llave o clave para un teclado que manda
de forma alámbrica o inalámbrica la señal para desactivarla o para activarla como emergencia. La salida del SAS activado
va a una sirena o bocina con enclavamiento por hardware o software;
(b) que funcione cuando el vehículo está ocupado con el motor andando, está activado el SAS y se es despojado del mismo,
se parará el motor un minuto después y sonará la alarma. La alarma se podrá apagar y el motor se permitirá encender solo
con un botón codificado o llave o clave de teclado, de forma alámbrica o inalámbrica. La alarma va a una sirena o bocina
con enclavamiento en hardware o software. Reportar los circuitos, el funcionamiento, los códigos si se utiliza un dispositivo
programable y fotos o videos de las pruebas del funcionamiento.
Implement a Sound Alarm System (SAS) for a vehicle that has 2 doors, boot and hood: (a) that works when any part of it is
opened, while the vehicle is parked with the engine off and the SAS is activated (activation button).
(a) that operates when any part of the vehicle is opened while the vehicle's engine is off, parked and the SAS is activated
(activation button). Provide at least one coded button, key or keypad key that sends a wired or wireless signal to deactivate
it or to activate it as an emergency. The output of the activated SAS goes to a hardware or software interlocked siren or
horn;
(b) that operates when the vehicle is occupied with the engine running, the SAS is activated and is disengaged, the engine
will stop one minute later and the alarm will sound. The alarm shall be allowed to the alarm can be turned off and the
engine allowed to start only with a coded button or key or keypad key, wired or wireless. The alarm goes to a siren or horn
with hardware or software latching. Report circuitry, operation, codes if a programmable device is used, and photos or
videos of test runs.
Implementar um Sistema de Alarme Sonoro (SAS) para um veículo que tenha 2 portas, bagageira e capô:
(a) que funcione quando qualquer parte dele for aberta, enquanto o veículo estiver estacionado com o
motor desligado e o SAS estiver ativado (botão de ativação).
(a) que funciona quando qualquer parte do veículo é aberta, enquanto o motor do veículo está desligado,
2
estacionado e o SAS é ativado (botão de ativação). Fornecer pelo menos um botão codificado, chave ou
tecla de teclado que envie um sinal com ou sem fio para desativá-lo ou ativá-lo como emergência. A saída
do SAS ativado vai para uma sirene ou buzina interligada por hardware ou software;
(b) que opera quando o veículo está ocupado com o motor em funcionamento, o SAS é ativado e é
desativado, o motor pára um minuto depois e o alarme toca. O alarme pode ser
O alarme pode ser desligado e o motor pode ser ligado somente com um botão ou tecla codificada ou
teclado, com ou sem fio. O alarme vai para uma sirene ou buzina com travamento de hardware ou software.
Relatar circuito, operação, códigos se for usado um dispositivo programável e fotos ou vídeos de testes.
Materiales:
• Arduino UNO
• Sensor Ultrasónico HC-SR04
• Motor de CD
• Jumpers macho-hembra
• Jumper macho-macho
• 2 push botón normalmente abiertos
• 1 push botón normalmente cerrado
• Buzzer
• Resistencias 1k (10)
Materials:
- Arduino UNO
- Ultrasonic Sensor HC-SR04
- DC motor
- Male-female jumpers
- Male-male jumper
- 2 normally open push buttons
- 1 normally closed push button
- Buzzer
- Resistors 1k (10)
Materiais:
- Arduino UNO
- Sensor Ultrassônico HC-SR04
- Motor CC
- Saltadores macho-fêmea
- Saltador macho-malino
- 2 botões de pressão normalmente abertos
- 1 botão de pressão normalmente fechado
- Buzzer
- Resistências 1k (10)
3
Conexiones:
Figura 1 Diagrama de
conexiones
Ardu Elem
ino ento
UNO
5V Vcc
GND GND
Pin A0 Trigg Ultrasónico
Pin A1 Echo Ultrasónico
Pin 2 Interrupción para
desactivar alarma
Pin 5 Activación de alarma
Pin 6 Buzzer
Pin 8 Push de arranque del
motor
Pin 10 Motor
Pin 12 Sensor puerta 1 y 2 (Push
N/A)
4
Pin 13 Sensor cofre (Push N/C)
Tabla 1. conexiones para el SAS
Código
#define trigg A1
#define echo A0
#define vol 6 // Bocina de la alarma
#define giro 10 //Salida del motor
long duration;
int distance;
int puertas=0;
int volatile i=0;
int volatile e=0;
int motor=0;
int cofre=0;
int g=0;
int estado=0;
float b;
int volatile alarma=0;
int volatile suena=0;
int a;
void SAS();
void Alarmades(){
e++;
if(e==5){
Serial.println("Alarma Desactivada");
alarma=0; suena=0;
e=0;i=0;
analogWrite(vol,0);
digitalWrite(9,0);
4
}
}
void Alarma(){
suena=1;
Serial.println("SONANDO");
}
void setup()
{
attachInterrupt(digitalPinToInterrupt(2),Alarmades,RISING);
Serial.begin(9600);
pinMode(trigg,OUTPUT);
pinMode(echo, INPUT);
DDRB = 0B011100;
DDRD |= 0B00001110;
}
void loop()
{
motor=digitalRead(8); //Pregunta el estado del motor
if(motor==1){
delay(110);
a++;
b=a%2;
if(b == 1){
g=1;
analogWrite(10,180);} //Arranca motor
5
}if(b !=1){
g=0;
analogWrite(10,0); //Motor apagado
}
estado=digitalRead(5); //Activacion de la alarma
if(estado==1){
delay(100);
Serial.println(i);
i++;
if(i==5){
alarma=1;
Serial.println( "alarma activada");
}}
while(alarma==1){ //Si se activa la alarma...
//ULTRASONICO 1 accionamiento de trigger
digitalWrite(trigg, LOW);
delayMicroseconds(2);
digitalWrite(trigg,HIGH);
delayMicroseconds(10);
digitalWrite(trigg, LOW);
//RECEPCION DE TRIGER 1, Distancia puerta1
duration = pulseIn(echo,HIGH);
distance= duration/58.2;
if(g==1){
puertas=digitalRead(12);
cofre= digitalRead(13);
if(distance>3 & distance<80 || cofre==1 ||puertas==0){
suena=1; //Alarma encendida-motor andando
Serial.println(distance);
Serial.println("Alarma");
Serial.println(alarma);
Serial.println("Suena");
5
Serial.println(suena);
delay(4000);
analogWrite(10,0); //APAGA EL MOTOR 60S DESPUES E INICIA SAS
SAS();}else{
digitalWrite(9,LOW);}
}
if(g==0){//Alarma encendida-motor apagado
puertas=digitalRead(12);
cofre= digitalRead(13);
if(distance>3 & distance<80 || cofre==1 || puertas==0 ){
//Alarma encendida-motor andando
suena=1;
Serial.println(distance);
Serial.println("Alarma");
Serial.println(alarma);
Serial.println("Suena");
Serial.println(suena);
SAS();
}else{
digitalWrite(9,LOW);
}
}
}
}
void SAS (){
while(alarma==1 && suena==1){
analogWrite(vol,250);
analogWrite(vol,distance);
6
analogWrite(vol,220);
}
}
Ejercicio No. 2
Implementar un sistema de encendido/apagado para dos motores con módulos de RF (no Bluetooth, ver figura 2.4) a una distancia
de por lo menos 12m, mostrado en la figura 2.5. Diseñar un sistema de encendido y apagado de ocho cargas independientes a través
de radio frecuencia (AM, FM, banda libre, etc.) con dos módulos de RF diferentes (i.e. Zig Bee, transceiver o TX-RX separados).
Reportar circuitos, códigos y fotos.
Implement an on/off system for two motors with RF modules (not Bluetooth, see figure 2.4) at a distance of at least 12m, showing
in figure 2.5. Design an on/off system of eight independent loads through radio frequency (AM, FM, free band, etc.) with two
different RF modules (i.e. Zig Bee, transceiver or TX-RX separated). Report circuits, codes and photos.
Implementar um sistema on/off para dois motores com módulos RF (não Bluetooth, ver figura 2.4) a uma distância de pelo menos
12m, mostrada na figura 2.5. Desenhe uma carga de oito cargas ligado/desligadosistema on/off para oito cargas independentes
via rádio frequência (AM, FM, banda livre, etc.) com dois módulos RF (ver Figura 2.5). banda livre, etc.) com dois módulos de
RF diferentes (i.e. Zig Bee, transceiver ou TX-RX separados). Relatório circuitos, códigos e fotos.
Figura 2.4. Distintos módulos de RF, transmisor Tx, Receptor Rx y transceiver TxRx.
Materiales
7
a) 1 Arduino Uno
b) 1 Control Remoto Inalambrico Receptor y transmisor 315MHz IC2262 2272 4 Canales
c) 1 Carro conrol remoto
d) 1 motoreductor
e) Modulo puente H L298
f) 1 pila de 9v
Materials
a) 1 Arduino Uno
b) 1 Wireless Remote Control Receiver and Transmitter 315MHz IC2262 2272 4 Channels
c) 1 Remote control carriage
d) 1 gearmotor
e) H L298 bridge module
f) 1 9v battery
Materiais
a) 1 Arduino Uno
b) 1 Receptor e transmissor sem fios de controlo remoto 315MHz IC2262 2272 4 Canais
c) 1 carrinho de controlo remoto
d) 1 motoreductor
e) Módulo H-bridge L298
f) 1 Bateria de 9v
Para este punto en un código realizado para Arduino UNO, se controla el encendido y apagado un motor de carro de control remoto y un
motorreductor. Se leen los datos de un control remoto con Chip Principal: SCT2260, recibidos por un receptor con Chip Principal:
PT2272-M4. Cuando se oprime una vez el botón A del control el motor del carro se enciende, y si lo volvemos a presionar el motor se
apaga, pasa lo mismo con el motorreductor si presionamos el botón B del control.
For this point in a code made for arduino UNO, a remote control trolley motor and a geared motor are controlled on and off. Data is
read from a remote control with Main Chip: SCT2260, received by a receiver with Main Chip: PT2272-M4. When button A of the control
is pressed once, the trolley motor turns on, and if we press it again the motor turns off, the same happens with the geared motor if we
press button B of the control.
Para este ponto num código feito para o arduino UNO, a ligação e desligamento de um motor de carrinho de controlo remoto e de um
motoredutor é controlada. Os dados são lidos a partir de um controlo remoto com chip principal: SCT2260, recebido por um receptor
com chip principal: PT2272-M4. Quando o botão A do controlo remoto é premido uma vez, o motor do carrinho é ligado, e se for
premido novamente, o motor é desligado. O mesmo acontece com o motoredutor se o botão B do controlo remoto for premido.
Código:
int ENA= 11; // habilita el puente H
//int IN1= 8; // entrada uno del puente H
int IN2= 12; // entrada 2 del puente H
int ENB= 10; // habilita el puente H
//int IN3= 9; // entrada uno del puente H
int IN4= 2; // entrada 2 del puente H
// Led del pin soldado en placa arduino
const byte ledPin = 13;
8
// Conexion de verify tx: (PIN3 --> INT1)
const byte vtRem = 3;
const byte vtRemInt = 1;
// Conexion de entradas A B C D
const byte keyB_D = 4;
const byte keyB_C = 5;
const byte keyB_B = 6;
const byte keyB_A = 7;
// Conexion de Leds A B C D
const byte ledA = 8;
const byte ledB = 9;
//const byte ledC = 10;
//const byte ledD = 11;
void setup() {
// Configuracion de Leds como salidas.
pinMode(ledPin, OUTPUT);
pinMode(ledA, OUTPUT);
pinMode(IN2, OUTPUT);
pinMode(ENA, OUTPUT);
pinMode(ledB, OUTPUT);
pinMode(IN4, OUTPUT);
pinMode(ENB, OUTPUT);
//pinMode(ledD, OUTPUT);
void loop() {
// El Led soldado en placa está apagado mientras no se pulsa ningún botón.
digitalWrite(ledPin, LOW);
}
// Deshabilitamos las interrupciones para evitar que el usuario vuelva a pulsar antes de que de tiempo a leer el teclado.
noInterrupts();
// Encendemos el LED de la placa arduino para mostrar al usuario que se ha recibido algo.
digitalWrite(ledPin, HIGH);
// Si tenemos estado ALTO en el pin de la tecla A, significa que esta se ha pulsado, si no, pasamos a comprobar B y asi sucesivamente.
if(digitalRead(keyB_A) == HIGH){
// En este caso que hemos recibido A, conmutamos el valor del led A
9
statusLedA = !statusLedA;
digitalWrite(ledA,statusLedA);
digitalWrite(IN2,LOW);
analogWrite(ENA, 200);
}
if(digitalRead(keyB_B)== HIGH){
statusLedB = !statusLedB;
digitalWrite(ledB, statusLedB);
digitalWrite(IN4,LOW);
analogWrite(ENB, 200);
}
delay(500);
interrupts();
}
Sistema de 8 cargas.
Para un sistema de encendido y apagado de ocho cargas independientes a través de radio frecuencia se realiza lo mismo que con el código
anterior, se ocupa de igual manera el 1 Control Remoto inalámbrico Receptor y transmisor 315MHz IC2262 2272 4 Canales.
En este código podremos encender y apagar 8 cargas independientes de la siguiente manera: para las primeras 4 cargas, si presionamos
una vez la tecla A, B, C, o D se encenderá lo que hayamos conectado a esos botones, si lo volvemos a apretar después de 2 segundos se
pagará lo que se encontraba activado. Para las siguientes 4 cargas tendremos que apretar 2 veces seguidas antes de 2 segundos la tecla
A, B, C o D, y para apagarlas será apretando de nuevo 2 veces seguidas antes de dos segundos el botón que deseemos.
For a system of switching on and off of eight independent loads through radio frequency, the same is done as with the previous code, the
1 Wireless Remote Control Receiver and Transmitter 315MHz IC2262 2272 4 Channels is used in the same way.
In this code we can turn on and off 8 independent loads in the following way: for the first 4 loads, if we press once the key A, B, C, or D
will turn on what we have connected to those buttons, if we press it again after 2 seconds it will pay what was activated. For the following
4 loads we will have to press 2 times in a row before 2 seconds the key A, B, C or D, and to turn them off it will be pressing again 2 times
in a row before 2 seconds the button that we want.
10
Para um sistema de ligar e desligar oito cargas independentes via rádio frequência, o mesmo é feito como com o código anterior,
utilizando da mesma forma o receptor e transmissor de controlo remoto sem fios IC2262 2272 4 canais IC2262 315MHz.
Neste código podemos ligar e desligar 8 cargas independentes da seguinte forma: para as primeiras 4 cargas, se premirmos uma vez a
tecla A, B, C, ou D, o que quer que tenhamos ligado a essas teclas será ligado, se premirmos novamente após 2 segundos, o que quer
que tenha sido activado será desligado. Para as 4 cargas seguintes, teremos de premir duas vezes seguidas antes de 2 segundos a tecla
A, B, C ou D, e para as desligar, teremos de premir novamente duas vezes seguidas antes de 2 segundos o botão que queremos.
Código:
// Conexion de entradas A B C D
const byte keyB_D = 4;
const byte keyB_C = 5;
const byte keyB_B = 6;
const byte keyB_A = 7;
// Conexion de Leds A B C D E F G H
const byte ledA = 8;
const byte ledB = 9;
const byte ledC = 10;
const byte ledD = 11;
const byte ledE = 12;
const byte ledF = 2;
const byte ledG = 22;
const byte ledH = 23;
void setup() {
// Configuracion de Leds como salidas.
pinMode(ledPin, OUTPUT);
pinMode(ledA, OUTPUT);
pinMode(ledB, OUTPUT);
pinMode(ledC, OUTPUT);
pinMode(ledD, OUTPUT);
pinMode(ledE, OUTPUT);
pinMode(ledF, OUTPUT);
pinMode(ledG, OUTPUT);
pinMode(ledH, OUTPUT);
void loop() {
// El Led soldado en placa está apagado mientras no se pulsa ningún botón.
digitalWrite(ledPin, LOW);
Serial.begin(9600);
}
// Deshabilitamos las interrupciones para evitar que el usuario vuelva a pulsar antes de que de tiempo a leer el teclado.
noInterrupts();
// Encendemos el LED de la placa arduino para mostrar al usuario que se ha recibido algo.
digitalWrite(ledPin, HIGH);
// Si tenemos estado ALTO en el pin de la tecla A, significa que esta se ha pulsado, si no, pasamos a comprobar B y asi sucesivamente.
//con las variables contar vamos a ir contando cuantas veces se aprieta cada tecla, con una vez presionada se activa o se desactiva una cosa,
//con 2 veces presionada se activa o se desactiva otra otra
contar= digitalRead((keyB_A)==HIGH)+ contar;
contar2= digitalRead((keyB_B)==HIGH)+ contar2;
contar3= digitalRead((keyB_C)==HIGH)+ contar3;
contar4= digitalRead((keyB_D)==HIGH)+ contar4;
delay(30000);
//Serial.print(contar);
Serial.print(contar2);
//motor 1
if(digitalRead(keyB_A) == HIGH && contar == 1){
// En este caso que hemos recibido A, conmutamos el valor del led A
statusLedA = !statusLedA;
delay(200);
digitalWrite(ledA, statusLedA);
delay(2000);
contar=0;
}
//motor 2
if(digitalRead(keyB_A)== HIGH && contar ==2 ){
statusLedE = !statusLedE;
digitalWrite(ledE, statusLedE);
delay(200);
contar=0;
}
if(contar>1){
contar=0;
}
//motor 3
if(digitalRead(keyB_B)== HIGH && contar2 == 1){
statusLedB = !statusLedB;
delay(200);
digitalWrite(ledB, statusLedB);
delay(2000);
contar2=0;
}
//motor 4
if(digitalRead(keyB_B)== HIGH && contar2 ==2 ){
statusLedF = !statusLedF;
digitalWrite(ledF, statusLedF);
delay(200);
12
contar2=0;
}
if(contar2>1){
contar2=0;
}
//motor 5
if(digitalRead(keyB_C)== HIGH && contar3 == 1){
statusLedC = !statusLedC;
delay(200);
digitalWrite(ledC, statusLedC);
delay(2000);
contar3=0;
}
//motor6
if(digitalRead(keyB_C)== HIGH && contar3 ==2 ){
statusLedG = !statusLedG;
digitalWrite(ledG, statusLedG);
delay(200);
contar3=0;
}
if(contar3>1){
contar3=0;
}
//motor 7
if(digitalRead(keyB_D)== HIGH && contar4 == 1){
statusLedD = !statusLedD;
delay(200);
digitalWrite(ledD, statusLedD);
delay(2000);
contar4=0;
}
//motor 8
if(digitalRead(keyB_D)== HIGH && contar4 ==2 ){
statusLedH = !statusLedH;
digitalWrite(ledH, statusLedH);
delay(200);
contar4=0;
}
delay(500);
interrupts();
13
Ejercicio No. 3
Implementar un sistema en hardware y software para realizar la lectura de las etiquetas (Tags) de RFID. Reportaren la tabla 2.1
seis o más datos leídos de los tags, el circuito implementado y el código del programa utilizado para dicha lectura. Poner por lo
menos tres fotos de las lecturas de los diferentes tags en la misma tabla.
Implement a hardware and software system for reading RFID tags. Report in table 2.1 six or more data read from the tags, the
implemented circuit and the program code used for this reading. Put at least three pictures of the readings of the different tags
in the same table.
Implementar um sistema de hardware e software para leitura de tags RFID. Relatar na tabela 2.1 seis ou mais dados lidos das
tags, o circuito implementado e o código do programa utilizado para esta leitura. Colocar pelo menos três figuras das leituras
das diferentes tags na mesma tabela.
Materiales:
• Arduino UNO
• Lector RFID RC522
• 6 Tags
• Jumpers macho-hembra
Materials:
• - Arduino UNO
• - RFID Reader RC522
• - 6 Tags
• - Male-female jumpers
- Materiais:
- Arduino UNO
- Leitor RFID RC522
- 6 Etiquetas
- Saltadores macho-fêmea
14
Conexiones:
Las conexiones son las siguientes y son de esa manera debido a que la comunicación entre el Arduino UNO y elmódulo RFID es
por interfaz SPI:
GND GND
Pin 9 RST
Pin 10 CS
Pin 11 MOSI
Pin 12 MISO
Pin 13 SCK
Tabla 1 Conexiones RFID
Para este punto únicamente son necesarios estos dos dispositivos por lo que la lectura ya solo dependerá del código de
programación.
For this point, only these two devices are necessary, so the reading will only depend on the programming code.
Para este ponto são necessários apenas estes dois dispositivos, portanto a leitura dependerá apenas do código de programação.
Código
15
El código está escrito el leguaje pseudo C de Arduino y se apoys de una librería para la comunicación SPI y otro para las funciones
de modulo RC522.
The code is written in the Arduino pseudo C language and relies on a library for SPI communication and another for the RC522
module functions.
O código é escrito na linguagem pseudo C do Arduino e conta com uma biblioteca para comunicação SPI e outra para as funções
do módulo RC522.
//RST
//SDA(SS)
//MOSI
//MISO
//SCK D9 D10 D11 D12 D13
const int RST_PIN = 9;
const int SS_PIN = 10;
MFRC522 mfrc522(SS_PIN, RST_PIN);
void printArray(byte *buffer, byte bufferSize) { //Función para imprimir el arreglo hexadecimal que e lee de los tags
for (byte i = 0; i < bufferSize; i++) { Serial.print(buffer[i] < 0x10 ? " 0" : " "); Serial.print(buffer[i], HEX);
}
}
void setup()
{
Serial.begin(9600); //Inicializa la velocidad de Serial SPI.begin(); //Función que inicializa SPI
mfrc522.PCD_Init(); //Función que inicializa RFID
}
void loop()
{
// Detectar tarjeta
if (mfrc522.PICC_IsNewCardPresent())
{
if (mfrc522.PICC_ReadCardSerial()) // Lee el tag en caso de que haya uno
{
Serial.print(F("Card UID:")); printArray(mfrc522.uid.uidByte, mfrc522.uid.size); Seial.println();
mfrc522.PICC_HaltA();
}
}
delay(250);
}
Lecturas
16
TAG Tag Fo
leído to
Llavero FA 03 1F B0
Tarjeta 93 E4 56 AD
Credencial B9 0A F0 B3
Reloj 49 A7 74 9C
Celular 32 75 6E 07
17
Aplicación en físico
Se presentan las fotografías de los tags y sus mediciones en el monitor serial.
The photographs of the tags and their measurements are displayed on the serial monitor.
As fotos dos tags e suas medidas são exibidas no monitor serial.
Ejercicio No. 4
Con 3 tags, implementar un sistema de seguridad para el acceso hacia un vehículo mandando quitar
seguros y una vez adentro activar los 3 distintos mensajes de voz de bienvenida mencionados en el pre-
reporte, además probar otros 3 tags que no permitan el acceso, como se muestra en la figura 2.5.Reportar
sus códigos implementados en los circuitos programables, así como sus fotos editadas y videos del
funcionamiento.
With 3 tags, implement a security system for access to a vehicle by removing locks and once inside activate
the 3 different welcome voice messages mentioned in the pre-report, plus test 3 other tags that do not
allow access, as shown in figure 2.5. Report your codes implemented in the programmable circuits, as
well as your edited photos and videos of the operation.
Com 3 tags, implemente um sistema de segurança para acesso a um veículo removendo as fechaduras e
uma vez dentro ative as 3 diferentes mensagens de voz de boas-vindas mencionadas no pré-relatório,
além de testar 3 outras tags que não permitem acesso, como mostrado na figura 2.5. Informe seus códigos
implementados nos circuitos programáveis, assim como suas fotos e vídeos editados da operação.
18
Materiales:
• Arduino UNO
• Lector RFID RC522
• 6 Tags
• Jumpers macho-hembra
• Modulo grabador/reproductor (ISD1820)
• Servo motor de 180⁰
Materials:
- Arduino UNO
- RFID Reader RC522
- 6 Tags
- Male-female jumpers
- Recorder/player module (ISD1820)
- 180⁰ servo motor
Materiais:
- Arduino UNO
- Leitor RFID RC522
- 6 Etiquetas
- Saltadores macho-fêmea
- Módulo gravador/leitor (ISD1820)
- 180⁰ servo motor
Conexiones
19
Arduino UNO RC522 ISD1820 Servo
5V Vcc Vcc
3.3 V Vcc
GND GND GND GND
Pin 2 Señal PWM
Pin 6 P-E
Pin 9 RST
Pin 10 CS
Pin 11 MOSI
Pin 12 MISO
Pin 13 SCK
Tabla 3 Conexiones RFID Seguros
Estas conexiones son debidas a la comunicación SPI entre el Arduino y el RC522 mientras que, para el
ISD1820y el servo, los pines P-E y PWM fueron a consideración propia.
These connections are due to the SPI communication between the Arduino and the RC522 while, for the
ISD1820 and the servo, the P-E and PWM pins were left to their own devices.
Essas conexões são devidas à comunicação SPI entre o Arduino e o RC522 enquanto, para o ISD1820 e o
servo, os pinos P-E e PWM foram deixados por conta própria.
Código
En el código, lo que se hace es esperar a detectar una tarjeta para hacer lectura de esta y comparar si coincidecon uno de
los tres códigos de nuestras tarjetas aceptadas, en caso de ser así se envía una señal al servo para simular que los seguros
de la puerta se están desbloqueando y al módulo ISD1820 para dar el mensaje de voz correspondiente para el tag leído.
Adicionalmente en el monitor serial se muestra el mensaje de bienvenida escrito.Las lecturas RFID que permitirán el
acceso son:
In the code, what is done is wait for a card to be detected to read it and compare if it matches one of the three codes of
our accepted cards, if so, a signal is sent to the servo to simulate that the insurances are being unlocked and to the
ISD1820 module to give the corresponding voice message for the read tag. Additionally, the serial monitor shows the
written welcome message. The RFID readings that will allow access are:
No código, o que é feito é esperar que um cartão seja detectado para lê-lo e comparar se ele corresponde a um dos
três códigos de nossos cartões aceitos, caso sim, é enviado um sinal ao servo para simular que os seguros estão sendo
desbloqueado e para o módulo ISD1820 para dar a mensagem de voz correspondente para o tag lido. Além disso, o
monitor serial mostra a mensagem de boas-vindas por escrito. As leituras de RFID que permitirão o acesso são:
//RST D9
//SDA(SS) D10
//MOSI D11
//MISO D12
//SCK D13
#include <SPI.h>
#include
<MFRC522.h>
#include
<Servo.h> Servo
servoMotor;
void setup() {
Serial.begin(9600); // Iniciar serial
SPI.begin(); // Iniciar SPI
mfrc522.PCD_Init(); // Iniciar MFRC522
pinMode (6, OUTPUT);// Señal bocina
servoMotor.attach(2);//Pin digital PWM
pin 2
}
void loop() {
// Detectar tarjeta
if (mfrc522.PICC_IsNewCardPresent())
{
//Seleccionamos una tarjeta
if (mfrc522.PICC_ReadCardSerial())
{
// Comparar ID con las claves válidas
if (compara(mfrc522.uid.uidByte, codigo1,
4)){Serial.println("Hola amigo");
digitalWrite(6,HIGH);//Activa mensaje de
vozdelay(50);
digitalWrite(6,LOW);
servoMotor.write(0); //Gira el servo 90 grados
delay(7000); //Espera a que el servo llegue
a 90
// servoMotor.write(90); //Gira el servo al grado 0
//delay(1000);
Aplicación en físico
22
Imagen Circuito RFID Seguros en funcionamiento
llavero
Ejercicio No. 5
Investigar y reportar en donde se consiguen, el costo, los accesorios y el software para los (a) lectores y tags de RFID
para largo alcance, aplicables al control de vehículos; (b) RFID y tags que sirven tanto para leer (read) como para
escribir (write), ambos incisos aplicables al control de vehículos.
Investigate and report on the availability, cost, accessories and software for (a) long-range RFID readers and tags
applicable to vehicle control; (b) RFID and tags for both read and write, both of which are applicable to vehicle
control.
Investigar e informar sobre a disponibilidade, custo, acessórios e software para (a) leitores e tags RFID de longo
alcance aplicáveis ao controle de veículos; (b) RFID e tags para leitura e escrita, ambos aplicáveis ao controle de
veículos.
23
In order to better understand this type of module, we believe it is important to
first distinguish what RFID is. The Radio Frequency Identifier (RFID) is a set
of technologies designed to read tags remotely wirelessly, its readers can be
connected to an automaton or processor such as Arduino.
Uno de los aspectos más importantes de estos módulos son sus aplicaciones,
aspecto en el que nos daremos cuenta de que son ampliamente empleados, en
sistemas de alarma, aplicaciones comerciales en sustitución de códigos de
barras, cerraduras electrónicas, sistemas de pago, tarjetas personales, control
de accesos recintos como gimnasios o piscinas, fichaje en empresas,entre otras
muchas aplicaciones.
One of the most important aspects of these modules are their applications, an
aspect in which we will realise that they are widely used in alarm systems,
commercial applications to replace bar codes, electronic locks, payment
systems, personal cards, access control in areas such as gyms or swimming
pools, clocking in companies, among many other applications.
En este caso, queremos enfocarnos en aquellos que son de largo alcance. Este tipo de RFID tienen el funcionamiento
mencionado anteriormente, con la característica de trabajar a distancias mayores a los 5-10 metros y hasta los 100 metros.
Para este quinto ejercicio realizaremos un sistema que nos detecte la somnolencia de un conductor, que en nuestrocaso,
realizaremos en base a un sensor de distancia HC-SR04, para el cual utilizaremos los siguientes materiales:
In this case, we want to focus on those that are long-range. These types of RFIDs have the same operation as mentioned above,
with the characteristic of working the characteristic of working at distances greater than 5-10 metres and up to 100 metres.
Neste caso, queremos nos concentrar naqueles que são de longo alcance. Estes tipos de RFID têm a mesma operação mencionada
acima, mas com o a característica de trabalhar a distâncias superiores a 5-10 metros e até 100 metros.
Este tipo de módulos es posible encontrarlos en tiendas en línea, supermercados específicos, algunas tiendas físicas y
directamente con empresas como Dipole o AcccesPRO. Existe una amplia variedad de modelos, dentrode los cuales el precio
varía y es importante decir que no son nada baratos pues superan los miles de pesos; dentrode un rango estimado, encontramos
que los módulos menos costosos se encuentran entre los 7500 y los 15000 pesos, modelos que son utilizados en industrias de
almacenamiento, control vehicular, sistemas de seguridad, etc.Así mimo, existen variantes más costosas que superan los 30
000 pesos; los cuales tienen un uso más industrial yde exactitud. Las principales diferencias entre estos precios se deben a
24
las capacidades de los módulos, por ejemplo, la interfaz de comunicación, capacidad de lectura y almacenamiento,
frecuencias, funciones, características aprueba de agua y polvo, dimensiones y temperaturas de operación.
This type of modules can be found in online shops, specific supermarkets, some physical shops and directly with companies
such as Dipole or AcccesPRO. There is a wide variety of models, within which the price varies and it is important to say that
they are not cheap at all, as they exceed thousands of pesos; within an estimated range, we find that the least expensive
modules are between 7500 and 15000 pesos, models that are used in storage industries, vehicle control, security systems,
etc. There are also more expensive variants that exceed 30 000 pesos, which have a more industrial use and accuracy. The
main differences between these prices are due to the capabilities of the modules, e.g. communication interface, reading and
storage capacity, frequencies, functions, water and dust proof characteristics, dimensions and operating temperatures.
Este tipo de módulos pode ser encontrado em lojas on-line, supermercados específicos, algumas lojas físicas e diretamente
com empresas como a Dipole ou AcccesPRO. Há uma grande variedade de modelos, dentro dos quais o preço varia e é
importante dizer que eles não são nada baratos, pois excedem milhares de pesos; dentro de uma faixa estimada, descobrimos
que os módulos menos caros estão entre 7500 e 15000 pesos, modelos que são usados em indústrias de armazenamento,
controle de veículos, sistemas de segurança, etc. Há também variantes mais caras que excedem 30.000 pesos, que têm um
uso mais industrial e precisão. As principais diferenças entre estes preços se devem às capacidades dos módulos, por
exemplo, interface de comunicação, capacidade de leitura e armazenamento, freqüências, funções, características à prova
de água e poeira, dimensões e temperaturas de operação.
25
Tags para RFID de largo alcance
Encontraremos que los tags para RFID están disponibles en una gran variedad de formatos, tales como pegatinas
adheribles, tarjetas, llaveros, pueden integrarse en un determinado producto o, incluso, insertarse bajo la piel en un
animal o humano. En este elemento existe aún más variedad de diseño, material, confiabilidad y características,como por
ejemplo la distancia de reconocimiento, sus características a prueba de agua y polvo, cifrados, vida útil,temperaturas de
operación y chips con el que trabajan.
You will find that RFID tags are available in a variety of formats, such as stickers, cards, key fobs, can be integrated
into a product or even inserted under the skin of an animal or human. In this element there is even more variety in
design, material, reliability and features, such as recognition distance, waterproof and dustproof features, encryption,
lifetime, operating temperatures and chips they work with.
Você verá que as etiquetas RFID estão disponíveis em uma variedade de formatos, tais como adesivos, cartões,
chaveiros, podem ser integrados a um produto ou mesmo inseridos sob a pele de um animal ou humano. Neste elemento
há ainda mais variedade no design, material, confiabilidade e características, tais como distância de reconhecimento,
características à prova d'água e de poeira, criptografia, vida útil, temperaturas de operação e chips com os quais
trabalham
EjercicioNo.6
i) Realizar un sistema que detecte a pasajeros y mandar el aviso de voz de “Bienvenidos, por favor colóquese el
cinturón de seguridad”, utilizando sensores de deformación, peso, fuerza o flexión;
Create a system that detects passengers and sends the voice message “Welcome, please put on your seatbelt”,
using deformation, weight, force or flexion sensors;
Criar um sistema que detete passageiros e envie a mensagem de voz “Bem-vindo, coloque o cinto de
segurança”, utilizando sensores de deformação, peso, força ou flexão;
Materiales
• 4 push bottons
• Diversos cables
• Un potenciómetro de 5k ohms
• Un led
• Un cartón rígido
• Una bocina
26
• Resistencias de 1kohm
Materials
• 4 push buttons
• Various cables
• A 5k ohm potentiometer
• A led
• A rigid cardboard
• A cup of coffee
• A horn
• 1kohm resistors
Materiais
• 4 botões de pressão
• Vários cabos
• Um potenciômetro de 5k ohm
• Um led
• Um papelão rígido
• Uma buzina
• resistores de 1kohm
Para el diseño del sistema, planteo la realización de un asiento que de detectara a los pasajeros mediante push bottons,
se conectaron 4 push bottons juntos y se recubrieron con un cartón rígido para que fueran presionados cuando alguien
se sentara, en el momento que cualquiera de los push bottons es presionado, el sistema detecta que hay un pasajero
sentado en el vehículo.
For the design of the system, I propose the realization of a seat that detects the passengers through push buttons, 4
push buttons were connected together and covered with a rigid cardboard so that they were pressed when someone sat
27
down, at the moment that any of them the push buttons is pressed, the system detects that there is a passenger sitting
in the vehicle.
Para o desenho do sistema, proponho a realização de um assento que detecte os passageiros através de botões, 4
botões foram conectados entre si e cobertos com um papelão rígido para que fossem pressionados quando alguém se
sentasse, no momento em que qualquer um dos os botões são pressionados, o sistema detecta que há um passageiro
sentado no veículo.
A la tarjeta de desarrollo se le conecto un módulo mp3 con una bocina incorporada la cual fue programada para emitir
mediante audio el mensaje “POR FAVOR, COLOQUESE EL CINTURON DE SEGURIDAD” cada vez que el
dispositivo recibía un 1 lógico.
An mp3 module with a built-in horn was connected to the development board, which was programmed to emit the
message “PLEASE, PUT YOUR SEAT BELT” through audio each time the device received a logic 1.
Um módulo mp3 com buzina embutida foi conectado à placa de desenvolvimento, que foi programada para emitir a
mensagem “POR FAVOR, COLOQUE O CINTO DE SEGURANÇA” por áudio toda vez que o aparelho recebesse um
1 lógico.
Se conecto un potenciómetro al sistema para que fungiera como la representación del encendido y apagado del motor
del vehículo, pues si el auto estaba apagado, no debería reproducir la advertencia auditiva al conductor.
A potentiometer was connected to the system to act as the representation of turning the vehicle's engine on and off,
because if the car was turned off, it should not reproduce the audible warning to the driver.
Um potenciômetro foi conectado ao sistema para atuar como a representação de ligar e desligar o motor do veículo,
pois se o carro fosse desligado não deveria reproduzir o alerta sonoro ao motorista.
28
Por último se hiso un arreglo de push botón mediante una resistencia de 1 Kohm y un cable para simular un cinturón
de seguridad, el sistema estaba siendo monitoreado por el Arduino, cada vez que el cable (que representaba el cinturón
de seguridad), era correctamente colocado, el sistema leía un 1 lógico, el cual indicaba que el cinturón de seguridad
estaba siendo usado por el conductor, cuando el cable era retirado, mandaba un cero lógico, el cual indicaba que el
conductor no portaba el cinturón de seguridad. En la imagen “” se muestra un diagrama esquemático del diseño del
sistema, y en la imagen “” se muestra una imagen del sistema en funcionamiento en el laboratorio.
Finally, a push button arrangement was made using a 1 Kohm resistor and a cable to simulate a seat belt, the system
was being monitored by the Arduino, each time the cable (representing the seat belt) was correctly When the cable was
installed, the system read a logical 1, which indicated that the seat belt was being used by the driver; when the cable
was removed, it sent a logical zero, which indicated that the driver was not wearing the seat belt. Picture “” shows a
schematic diagram of the system layout, and picture “” shows a picture of the system in operation in the lab.
Por fim, foi feito um arranjo de botões de pressão utilizando um resistor de 1 Kohm e um cabo para simular um cinto
de segurança, o sistema foi sendo monitorado pelo Arduino, cada vez que o cabo (representando o cinto de segurança)
estava correto Quando o cabo foi instalado, o o sistema lia um 1 lógico, que indicava que o cinto de segurança estava
sendo usado pelo motorista; quando o cabo era removido, enviava um zero lógico, que indicava que o motorista não
estava usando o cinto de segurança. A figura “” mostra um diagrama esquemático do layout do sistema, e a figura “”
mostra uma foto do sistema em operação no laboratório.
29
Código
int encendido ;
bool bandera;
void setup() {
Serial.begin(9600);
void loop() {
encendido = analogRead(A1);
cinturon = digitalRead(8);
if(bandera == 1)
digitalWrite(6,HIGH);
delay(300);
digitalWrite(6,LOW);
bandera = 0;
boton1 = digitalRead(2);
boton2 = digitalRead(3);
boton3 = digitalRead(4);
boton4 = digitalRead(5);
if(cinturon == 0)
digitalWrite(6,HIGH);
delay(300);
digitalWrite(6,LOW);
31
Serial.print(cinturon);
Serial.print(boton1);
Serial.println(encendido);
delay(500);
i) detectar a alguna persona cerca del vehículo y mandar el aviso sonoro de “Por favor retírese del vehículo” o
“Aléjese por favor o se activarán las alarmas del vehículo” si se queda cerca por más de 15 segundos,
utilizando sensores de presencia, objetos o un radar.
detect someone near the vehicle and send the audible warning of "Please get out of the vehicle" or "Please
get away or the vehicle alarms will be activated" if they stay close for more than 15 seconds, using presence
sensors, objects or radar.
detetar alguém próximo do veículo e emitir o aviso sonoro de "Por favor, saia do veículo" ou "Por favor,
afaste-se ou os alarmes do veículo serão activados" se permanecerem próximos por mais de 15 segundos,
utilizando sensores de presença, objetos ou radar.
Materiales
• Sensor PIR
• Led
• Resistencia 1 kohm
• Zumbador
Materials
• PIR sensor
• LEDs
• Resistance 1 kohm
• Buzzer
32
Materiais
• Sensor PIR
• LEDs
• Resistência 1 kohm
• Campainha
Para la realización del proyecto se decidió utilizar un sensor PIR como sensor de presencia que detecte cuando una
persona este cerca del vehículo. En la imagen “” se puede observar un sensor PIR.
To carry out the project it was decided to use a PIR sensor as a presence sensor that detects when a person is near
the vehicle. In the image "" you can see a PIR sensor.
Para a realização do projeto optou-se por utilizar um sensor PIR como sensor de presença que detecta quando uma
pessoa se aproxima do veículo. Na imagem "" você pode ver um sensor PIR.
El alcance y rango del sensor varia en función de cómo se configuren los potenciómetros del sensor, se hicieron
pruebas de alcance del sensor y se obtuvieron los siguientes datos para un sensor PIR colocado a una altura de 0.97 m
sobre el nivel del suelo boca arriba, y la detección de un sujeto de 1.73 m de altura.
The reach and range of the sensor varies depending on how the sensor potentiometers are configured, sensor range
tests were made and the following data was obtained for a PIR sensor placed at a height of 0.97 m above ground
level face up, and the detection of a 1.73 m tall subject.
O alcance e o alcance do sensor variam dependendo de como os potenciômetros do sensor são configurados, testes
de alcance do sensor foram feitos e os seguintes dados foram obtidos para um sensor PIR colocado a uma altura de
0,97 m acima do nível do solo com a face para cima e a detecção de um Sujeito de 1,73 m de altura.
33
Numero de Distancia de
pruebas detección
1 0.59 m
2 0.83 m
3 0.65 m
4 0.75 m
5 0.83 m
6 0.78 m
7 0.78 m
8 0.56 m
9 0.81 m
10 0.84 m
Numero de Distancia de
pruebas detección
1 0.34 m
2 0.78 m
3 0.32 m
4 0.42 m
5 0.77 m
6 0.25 m
7 0.31 m
8 0.48 m
9 0.42 m
10 0.61 m
34
Se puede concluir con los datos que el sensor detecta desde una distancia mayor una persona que camina lento que una
persona que se mueve rápido.
Se conecto el sensor PIR a la tarjeta Arduino para comunicar cuando detectara la presencia de alguien, si no se detectaba
la presencia de un individuo, se prende un led verde, cuando se detecta la presencia de alguien, el led se apaga, indicando
que alguien fue detectado, después de 15 segundos, se activa una alerta auditiva por medio del audio de la computadora
advirtiendo a los transeúntes que se alejen del vehículo, de no ser así el sistema activa una alarma mediante el envío de
voltaje al zumbador. En la imagen “” se muestra un diagrama del proyecto y en la imagen “” se muestra el proyecto
probado en el laboratorio.
It can be concluded with the data that the sensor detects from a greater distance a person who walks slowly than a
person who moves fast.
The PIR sensor was connected to the Arduino card to communicate when it detected the presence of someone, if the
presence of an individual was not detected, a green led lights up, when the presence of someone is detected, the led
turns off, indicating that someone was detected, after 15 seconds, an audible alert is activated by means of computer
audio warning passers-by to move away from the vehicle, otherwise the system activates an alarm by sending voltage
to the buzzer. The picture “” shows a diagram of the project and the picture “” shows the project tested in the lab.
Pode-se concluir com os dados que o sensor detecta a uma distância maior uma pessoa que anda devagar do que uma
pessoa que anda rápido.
O sensor PIR foi conectado a placa Arduino para comunicar quando detecta a presença de alguém, se não foi detectada
a presença de um indivíduo, um led verde acende, quando é detectada a presença de alguém, o led apaga, indicando
que alguém foi detectado, após 15 segundos, um alerta sonoro é ativado por meio de áudio de computador alertando
os transeuntes para se afastarem do veículo, caso contrário, o sistema ativa um alarme enviando tensão para a
campainha. A figura “” mostra um diagrama do projeto e a figura “” mostra o projeto testado em laboratório.
35
Código
Se realizaron dos códigos, uno en Arduino, para el control del sistema mediante la tarjeta de desarrollo empleada y un
código en Python para poder activar las alertas auditivas en mp3, en el momento que el Arduino le indique a la
computadora que es pertinente hacerlo mediante la comunicación serial.
Para el Código de Arduino, se realizó un Código que monitoriara el sensor PIR, y cuando detecta la presencia de alguien
por más de 15 segundos, envía mediante el puerto serial a la laptop para activar las alertas auditivas, para indicar al
sospechoso que se aleje del vehículo, después de 3 advertencias, el sistema activa la alarma, mediante el envio de
voltaje al zumbador. A continuación, se muestra el Código en Arduino.
Two codes were made, one in Arduino, for the control of the system through the development board used and a code
in Python to be able to activate the audio alerts in mp3, at the moment that the Arduino tells the computer that it is
pertinent to do it through serial communication.
For the Arduino Code, a Code was made that will monitor the PIR sensor, and when it detects the presence of someone
for more than 15 seconds, it sends through the serial port to the laptop to activate the auditory alerts, to indicate the
suspect to move away of the vehicle, after 3 warnings, the system activates the alarm, by sending voltage to the buzzer.
Below is the Code in Arduino.
Foram feitos dois códigos, um em Arduino, para o controle do sistema através da placa de desenvolvimento utilizada
e um código em Python para poder ativar os alertas de áudio em mp3, no momento em que o Arduino informa ao
computador que é pertinente fazê-lo através de comunicação serial.
Para o Arduino Code foi feito um Code que irá monitorar o sensor PIR, e quando detecta a presença de alguém por
mais de 15 segundos, envia pela porta serial ao notebook para ativar os alertas sonoros, para indicar o suspeito para
afastar-se do veículo, após 3 avisos, o sistema ativa o alarme, enviando tensão para o buzzer. Abaixo está o código no
Arduino.
36
int advertencia;
int alarma = 2;
int sensor = 3;
int led = 4;
int seguimiento = 0;
int strike = 0;
int estado;
void setup() {
Serial.begin(9600);
pinMode(alarma, OUTPUT);
pinMode(sensor, INPUT);
pinMode(led, OUTPUT);
void loop() {
estado = digitalRead(sensor);
if(estado == 1)
delay(2000);
digitalWrite(led,LOW);
37
//Serial.print("seguimiento: ");
//Serial.print(seguimiento);
//Serial.print(" ");
//Serial.println(i);
delay(200);
estado = digitalRead(sensor);
strike = 0;
digitalWrite(led,LOW);
delay(100);
if(estado == 1)
i = 25;
seguimiento += 1;
strike = 1;
delay(100);
if(seguimiento == 0)
digitalWrite(led,LOW);
//Serial.println("seguimiento: ");
//Serial.println(seguimiento);
delay(200);
38
}else{digitalWrite(led,HIGH);}
if(seguimiento >= 1)
digitalWrite(led,LOW);
if(seguimiento >= 5)
Serial.println(1);
delay(1500);
if(seguimiento >= 8)
digitalWrite(alarma, HIGH);
seguimiento = 2;
delay(500);
if(strike == 0)
Serial.println(2);
delay(1500);
digitalWrite(alarma, LOW);
seguimiento = 0;
}else{//Serial.print("seguimiento: ");
39
//Serial.println(seguimiento);
if(seguimiento == 0)
digitalWrite(led,HIGH);
delay(100);}
Para el código en Python se realizó uno, en donde se activará la reproducción del audio mp3 guardado mediante el
envió de un número de parte del Arduino mediante la comunicación serial. A continuación, se muestra el código en
Python empleado.
For the Python code, one was made, where the playback of the saved mp3 audio will be activated by sending an Arduino
part number through serial communication. The Python code used is shown below.
Para o código Python foi feito um, onde a reprodução do áudio mp3 salvo será acionada enviando um part number do
Arduino através da comunicação serial. O código Python usado é mostrado abaixo.
import serial,time
mixer.init()
cancion = "Alejese.mp3"
mixer.music.load(cancion)
mixer.music.set_volume(0.5)
time.sleep(1)
while True:
cad = SerialArduino.readline().decode('ascii')
print(cad)
print("tipo: ",type(cad))
40
cad = int(cad)
if(cad == 1):
mixer.music.play()
elif(cad == 2):
mixer.music.stop()
ii) Detectar algún objeto como piedras, postes, banqueta, mascotas, etc. y mandar el aviso sonoro de “La banqueta
está cerca” o “Poste del lado izquierdo” (ver figura 2.7). El sistema puede ser en hardware dedicado o con el
uso de una computadora. Los sensores para utilizar son sensores de objetos, de presencia o de distancia, de
deformación, peso, fuerza, flexión, etc. y deben de funcionar en un rango adecuado a la aplicación.
Detect an object such as stones, poles, sidewalk, pets, etc. and send the sound warning "The sidewalk is close"
or "Post on the left side" (see figure 2.7). The system can be on dedicated hardware or with the use of a
computer. The sensors to use are object sensors, presence or distance, deformation, weight, force, bending,
etc. and they must work in a suitable range to the application.
Detectar um objeto como pedras, postes, calçada, animais de estimação, etc. e enviar o aviso sonoro "O
passeio está fechado" ou "Poste do lado esquerdo" (ver figura 2.7). O sistema pode estar em hardware
dedicado ou com o uso de um computador. Os sensores a utilizar são sensores de objetos, presença ou
distância, deformação, peso, força, flexão, etc. e devem trabalhar em uma faixa adequada à aplicação.
Materiales
• 3 sensores ultrasónicos
Materials
• 3 ultrasonic sensors
Materiais
41
• placa de desenvolvimento Arduino
• 3 sensores ultrassônicos
Para el proyecto se realizó un sistema que detecta banquetas, personas y postes, mediante la colocación de sensores
ultrasónicos en distintas alturas, se coloca un sensor ultrasónico abajo para detectar banquetas, uno a la altura media
del vehículo para detectar personas y uno a la altura alta del vehículo para detectar postes, cuando los sensores detentan
algo a su cercanía.
Si detecta algo el módulo ultrasónico de hasta abajo, Arduino manda a reproducir el audio “CUIDADO CON LA
BANQUETA”, si detecta presencia de algo el ultrasónico de en medio, se manda a advertir “CUIDADO CON LAS
PERSONAS”, y si se detecta algo en el módulo de arriba se manda a advertir “CUIDADO CON EL POSTE”. En la
figura “” se muestra un esquema del proyecto, y el la “” figura se muestra una imagen del proyecto funcionando en el
laboratorio.
For the project, a system that detects sidewalks, people and posts was made, by placing ultrasonic sensors at different
heights, an ultrasonic sensor is placed below to detect sidewalks, one at the average height of the vehicle to detect
people and one at the height height of the vehicle to detect poles, when the sensors detect something nearby.
If the ultrasonic module at the bottom detects something, Arduino commands to play the audio "BEWARE OF THE
SIDEWALK", if the ultrasonic in the middle detects the presence of something, it sends a warning "BEWARE OF
PEOPLE", and if something is detected in the module above it is sent to warn "CAUTION WITH THE POST". The
figure "" shows a schematic of the project, and the "" figure shows an image of the project working in the laboratory.
Para o projeto foi feito um sistema que detecta calçadas, pessoas e postes, colocando sensores ultrassônicos em
diferentes alturas, um sensor ultrassônico é colocado abaixo para detectar calçadas, um na altura média do veículo
para detectar pessoas e outro na altura altura do veículo para detectar postes, quando os sensores detectam algo
próximo.
Se o módulo ultrassônico na parte inferior detectar algo, o Arduino comanda para tocar o áudio "CUIDADO COM A
CALÇADA", se o ultrassônico no meio detectar a presença de algo, ele envia um aviso "CUIDADO COM AS
PESSOAS", e se algo for detectado no módulo acima é enviado para avisar "CUIDADO COM O POST". A figura ""
mostra um esquema do projeto, e a figura "" mostra uma imagem do projeto funcionando em laboratório.
42
Código
El código para Arduino obtiene las distancias de los 3 sensores ultrasónicos, y si uno de ellos detecta un objeto cercano,
manda un uno lógico a su respectivo módulo mp3 para reproducir la advertencia correspondiente.
The Arduino code gets the distances from the 3 ultrasonic sensors, and if one of them detects a nearby object, it sends
a logic one to its respective mp3 module to play the corresponding warning.
O código do Arduino obtém as distâncias dos 3 sensores ultrassônicos e, se um deles detectar um objeto próximo,
envia um lógico ao seu respectivo módulo mp3 para reproduzir o aviso correspondente.
#define LEDVERDE 2
#define LEDAMARILLO 3
#define LEDROJO 4
#define TRIGGER 5
#define ECHO 6
#define BUZZER 9
// Constantes
void setup() {
Serial.begin(9600);
pinMode(LEDVERDE, OUTPUT);
pinMode(LEDAMARILLO, OUTPUT);
pinMode(LEDROJO, OUTPUT);
43
pinMode(ECHO, INPUT);
pinMode(TRIGGER, OUTPUT);
pinMode(BUZZER, OUTPUT);
apagarLEDs();
void loop() {
iniciarTrigger();
// Obtenemos la distancia
apagarLEDs();
// Lanzamos alertas
alertas(distancia);
44
// Apaga todos los LEDs
void apagarLEDs()
digitalWrite(LEDVERDE, LOW);
digitalWrite(LEDAMARILLO, LOW);
digitalWrite(LEDROJO, LOW);
// Función que comprueba si hay que lanzar alguna alerta visual o sonora
digitalWrite(LEDVERDE, HIGH);
digitalWrite(LEDAMARILLO, HIGH);
digitalWrite(LEDROJO, HIGH);
45
tone(BUZZER, 3000, 200);
float calcularDistancia()
// La función pulseIn obtiene el tiempo que tarda en cambiar entre estados, en este caso a HIGH
// Obtenemos la distancia en cm, hay que convertir el tiempo en segudos ya que está en microsegundos
Serial.print(distancia);
Serial.print("cm");
Serial.println();
delay(500);
return distancia;
void iniciarTrigger()
digitalWrite(TRIGGER, LOW);
delayMicroseconds(2);
46
// Ponemos el pin Trigger a estado alto y esperamos 10 ms
digitalWrite(TRIGGER, HIGH);
delayMicroseconds(10);
digitalWrite(TRIGGER, LOW);
CONCLUSIONES
Esquivel Checa Espinosa Ivanna
Los dispositivos RFID son muy importantes en la industria automotriz, pues equivalen al funcionamiento de un
cerrojo pero que se puede abrir a distancia, aunn que tambien no son infalibles como cualquier otro dispositivo
que tenga como proposito la identificación de identidad.
Yo concluyo que sencillos arreglos de compuertas lógicas pueden usarse para armar sistemas de alarmas
efectivos para el automóvil.
Gracias a esta práctica aprendí cómo funciona las señales de radiofrecuencia, además de algunos otros
aspectos básicos con los cuales se pueden hacer todos los sensores que trae un automóvil el día de hoy,
que ya conociendo estos, realizar uno para la industria no sería muy difícil.
REFERENCIAS
47
Bibliografía
[1] N. Gonzales, «Que es el RFID como funciona y cuales son la ventajas principales?,» 09 Junio 2017. [En línea]. Available:
https://www.nephosit.com/que-es-rfid-como-funciona-y-en-que-se-utiliza/.
[2] Anonimo, «Wikipedia,» 19 fEBRERO 2023. [En línea]. Available: https://es.wikipedia.org/wiki/RFID.
48