Está en la página 1de 14

TRABAJO GRUPAL”control a distancia por radiofrecuencia”

INTEGRANTES:
- Ayaque Cunyas Jose Miguel

Arduino mini pro

El Arduino Pro Mini es una placa de microcontrolador basada en el  ATmega328 .


Tiene 14 pines de entrada / salida digital (de los cuales 6 se pueden usar como salidas
PWM), 6 entradas analógicas, un resonador integrado, un botón de reinicio y orificios para
montar encabezados de pines. Se puede conectar un encabezado de seis pines a un cable
FTDI o una placa de conexión Sparkfun para proporcionar alimentación USB y
comunicación a la placa.
El Arduino Pro Mini está diseñado para su instalación semipermanente en objetos o
exposiciones. La placa viene sin encabezados premontados, lo que permite el uso de
varios tipos de conectores o la soldadura directa de cables. El diseño del pin es compatible
con el Arduino Mini.
Hay dos versiones del Pro Mini. Uno corre a 3.3V y 8 MHz, el otro a 5V y 16 MHz.

Microcontrolador ATmega328 *

Fuente de alimentación de la 3,35-12 V (modelo de 3,3 V) o 5-12 V (modelo


placa de 5 V)

Voltaje de funcionamiento del 3.3V o 5V (dependiendo del modelo)


circuito

Pines de E / S digitales 14

Pines PWM 66

UART 1

SPI 1

I2C 1

Pines de entrada analógica 66

Interrupciones externas 2

Corriente CC por pin de E / S 40 mA

Memoria flash 32 KB de los cuales 2 KB utilizados por el


gestor de arranque *

SRAM 2 KB *

EEPROM 1 KB *

Velocidad de reloj 8 MHz (versiones de 3.3V) o 16 MHz


(versiones de 5V)

Módulo Apc220
El módulo de datos de radio APC220 es una solución de radio de alta potencia y muy
versátil, es fácil de configurar e integrar en cualquier proyecto que requiera un enlace de RF
inalámbrico. Es perfecto para aplicaciones robóticas si necesita control inalámbrico.
Puede conectar uno de estos Los módulos con su MCU a través de la interfaz TTL, y se
conectan a su PC con otro módulo APC220 a través de un convertidor TTL / USB.

Especificación
 Frecuencia de trabajo: 420 MHz a 450 MHz
 Potencia: 3.5-5.5V
 Corriente: <25-35mA
 Temperatura de trabajo: -20 ° C ~ + 70 ° C
 Alcance: línea de visión de 1200 m (1200 bps)
 Interfaz: UART / TTL
 Velocidad de transmisión: 1200-19200 bps
 Velocidad de transmisión (aire): 1200-19200 bps
 Buffer de recepción: 256 bytes
 Tamaño: 37mm × 17 mm × 6.6mm
 Peso: 30 g

PinOut
Pi Definicion Detalle
n

1 SET Establecer parámetros (bajo)

2 AUX Señal UART- Transmisión (baja) Transmisión (alta)

3 TXD UART TX

4 RXD UART RX

5 ES Desactive el dispositivo cuando aplique <0,5 V. Habilite el dispositivo


cuando lo deje desconectado o aplique> 1,6 V

6 VCC 3.3V-5.5V de potencia

7 GND Tierra 0V
Modulo Relay rele de 8 canales

 Voltaje de Operación: 5V DC
 Señal de Control: TTL (3.3V o 5V)
 Nº de Relays (canales): 8 CH
 Capacidad máx: 10A/250VAC, 10A/30VDC
 Corriente máx: 10A (NO), 5A (NC)
 Tiempo de acción: 10 ms/5 ms
 Para activar salida NO: 0 Voltios

2 Jumper

16 Led de 3 mm
16 Led de 1KOhm

Pines hembras

16 Pulsadores
Pines macho

2 zócalos para arduino mini pro


PCB

NUEVA PROPUESTA

MÓDULO NRF24L01 2.4 GHZ


// Incluir librerías NF24 y SPI.

#include <SPI.h>

#include <nRF24L01.h>

#include <printf.h>

#include <RF24.h>

#include <RF24_config.h>

// Declaración de pines CE y CSN.

const int CE = 9;

const int CSN = 10;

// Crear un objeto denominado radio.

RF24 radio (CE , CSN );

//Creamos un canal para la transmición y recepción de datos.

const uint64_t canal[2]= {0xE8E8F0F0E1LL,0xE8E8F0F0E2LL};

int pulsante = 4; //Pin para leer los valores de entrada del pulsante.

int lectura_actual = 0; //Variable que almacena los datos de lectura del pulsante.

int estado_anterior = 0; //Variables que almacena el estado anterior del pulsante.

int estado = 0; //Variable con valores de 1 y 0.

int LED = 6 ; //Pin led conexión de LED.

int brillo; //Variables con valores entre 0 y 255

void setup() {

radio.begin(); //Inicializar la comunicación RF

radio.setRetries(15,15); //Retardo y Número de reintentos de comunicación.

radio.openWritingPipe(canal[0]); //Abrir el canal 0 para escribir.

radio.openReadingPipe(1,canal[1]);//Abrir el canal 1 para leer.

void loop() {

//EMISOR:

radio.stopListening(); // Paro de escuchar por el canal 1.


lectura_actual=digitalRead(pulsante); //leer el valor del Pin conectado al pulsante.

if ((lectura_actual==HIGH) && (estado_anterior == LOW)) // Si pasa de Bajo a Alto

{estado = 1-estado; // Contador.

estado_anterior=lectura_actual; // Grabar el último valor.

radio.write(&estado,sizeof(estado)); // Escribir en el módulo los valores de la variable estado.

delay (50); // pausa de 50 ms

//RECEPTOR:

radio.startListening(); // Empezar a escuchar.

if (radio.available()) // Si esque la comunicación está disponible.

radio.read(&brillo,sizeof(brillo)); // Leer los datos y almacenar en la variable brillo.

analogWrite(LED,brillo); // Escribir valores entre 0-255 en el puerto del LED.

delay(20); // Pausa de 20 ms.

// Incluir librerías NF24 y SPI.

#include <SPI.h>

#include <nRF24L01.h>

#include <printf.h>

#include <RF24.h>

#include <RF24_config.h>

// Declaración de pines CE y CSN.

const int CE = 9;

const int CSN = 10;

// Crear un objeto denominado radio.

RF24 radio (CE , CSN );


//Creamos un canal para la transmición y recepción de datos.

const uint64_t canal[2] = {0xE8E8F0F0E1LL,0xE8E8F0F0E2LL};

int estado; //Variable con valores de 1 y 0.

int LED = 6; //Pin led conexión de LED.

int pot = A0; //Pin de conectado al Potencióetro.

int lectura_actual = 0; //Variable que almacena los datos de lectura del pulsante.

int estado_anterior = 0; //Variables que almacena el estado anterior del pulsante.

int brillo=0; //Variables con valores entre 0 y 255

void setup() {

radio.begin(); //Inicializar la comunicación RF

radio.setRetries(15,15);//Retardo y Número de reintentos de comunicación.

radio.openReadingPipe(1,canal[0]);//Abrir el canal 0 para leer.

radio.openWritingPipe(canal[1]); //Abrir el canal 1 para escribir.

void loop() {

// RECEPTOR:

radio.startListening(); // Empezar a escuchar.

if(radio.available()) // Si esque la comunicación está disponible.

radio.read(&estado,sizeof(estado)); // Leer los datos y almacenar en la variable estado.

if (estado == 1) // Si el valor de estado = 1 entonces encender LED

{digitalWrite(LED,HIGH);

if (estado == 0) // Si el valor de estado = 0 entonces apagar LED

{digitalWrite(LED,LOW);

delay(20); // ´pausa 20 ms
// EMISOR:

radio.stopListening(); // Paro de escuchar por el canal 1.

brillo=analogRead(pot)/4; // Almacenar el valor de brillo.

radio.write(&brillo,sizeof(brillo)); // Escribir en el módulo los valores de la variable brillo.

delay(50); // pausa 50 ms

También podría gustarte