สารบัญ:
วีดีโอ: Luces RGB Con RFID Y Arduino: 3 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:03
ตัวควบคุม empleado para el proyecto en conjunto denominado "Escenario de historias interactiveivas" del curso Video y televisión digital de la Universidad Autónoma de Occidente El objetivo de este controlador es controlar las luces de día y noche, es decir, controlar la cantidad de luz para hacer unaเป็นตัวแทน ของ ลา zona horario que se desee
El proyecto de compone de diferentes etapas como ลูกชาย:
- Construcción del circuito y las componentes electrónicas necesarias. การก่อสร้าง
- โครงสร้างระบบของ reconocimiento al igual que el sistema ซอฟต์แวร์สำหรับการควบคุมของ las luces
วัสดุใช้ประโยชน์:
- Protoboard เวอร์ชั่น
- คอมพิวเตอร์
- Arduino UNO เวอร์ชั่น
- เซ็นเซอร์ RFID 522 เวอร์ชั่น
- แบตเตอรี่ 12V
- สายจัมเปอร์ ver
- ทรานซิสเตอร์ TIP31 เวอร์ชั่น
- Tira led ver
ขั้นตอนที่ 1: Montar El Circuito
Como se observa en la gráfica, el montaje del circuito se hace de esta manera teniendo en cuenta las polaridades de la batería, la tira led consta de 4 cables que ติดต่อ a los colores rojo, verde, azul y blanco
Cada uno de los colores se เป็นตัวแทนของ en la gráfica, el color blanco สอดคล้อง a la tierra (GND) que se conecta al positivo de la fuente, en este caso de la batería de 12V.
ขั้นตอนที่ 2: Conectar El Módulo RFID
ตัวควบคุมสุดท้ายสำหรับ RFID, donde cada vez que pasemos ลา luces deben cambiar de color, การพึ่งพาอาศัยกันของสี definidos en el ร่างของ Arduino
ขั้นตอนที่ 3: ร่าง Arduino
En el siguiente sketch podrás encontrar la configuración de software para realizar dicha practica. ภาพรวม
#รวม
#รวม
#define RST_PIN 5 // พิน 9 สำหรับรีเซ็ตเดล RC522
#define SS_PIN 10 // พิน 10 สำหรับ SS (SDA) del RC522
MFRC522 mfrc522(SS_PIN, RST_PIN); ///Creamos el objeto สำหรับ el RC522
int ledrojo = 1;int ledverde = 2;
int ledazul = 3;
การตั้งค่าเป็นโมฆะ () { Serial.begin (9600); //Iniciamos La comunicacion อนุกรม
โหมดพิน (ledrojo, OUTPUT); //El LED Rojo como una salida
โหมดพิน (ledverde, OUTPUT); //El LED Verde como una salida
โหมดพิน (ledazul, OUTPUT); //El LED Azul como una salida
SPI.begin(); //เริ่มต้น el Bus SPI mfrc522. PCD_Init(); // Iniciamos el MFRC522
//Serial.println(" ---Leyendo tarjetas---");
}
ไบต์ ActualUID[4]; //almacenará el código del Tag leídobyte dia[4] = {0xD3, 0xAD, 0x3B, 0x5B};
ไบต์ tarde[4] = {0xD7, 0x22, 0x1D, 0x01};
ไบต์โนช[4]= {0xA0, 0x78, 0xBD, 0x4F};
int contdia=0, conttarde=0, contnoche=0;
วงเป็นโมฆะ () { ถ้า (mfrc522. PICC_IsNewCardPresent ()) {
วงเป็นโมฆะ () { ถ้า (mfrc522. PICC_IsNewCardPresent ()) {
// Enviamos serialemente su UID Serial.println(" Id targejta: ");
สำหรับ (ไบต์ i = 0; i < mfrc522.uid.size; i++) {
Serial.print(mfrc522.uid.uidByte < 0x10 ? " 0": " ");
Serial.print(mfrc522.uid.uidByte, HEX);
ActualUID = mfrc522.uid.uidByte;
}
Serial.println(""); // เปรียบเทียบ los UID para determinar si es uno de nuestros usuarios
ถ้า (compareArray (ActualUID, dia)) { contdia ++;
ถ้า (contdia ==1) {
analogWrite (ledrojo, 75);
analogWrite(เลเวอร์เด, 75);
analogWrite (ledazul, 255);
Serial.println(" Dato 1 dia"); } else if (contdia ==2) {
คอนเดีย = 0;
analogWrite (ledrojo, 0); analogWrite(เลเวอร์เด, 0);
analogWrite (ledazul, 0);
Serial.println(" Dato 2 dia");
}
}
ถ้า (compareArray (ActualUID, tarde)) { conttarde ++;
ถ้า (conttarde ==1) {
analogWrite (ledrojo, 255);
analogWrite(เลเวอร์เด, 75);
analogWrite(ledazul, 93);
Serial.println(" Dato 1 tarde"); } else if (conttarde ==2) {
conttarde = 0;
analogWrite (ledrojo, 0);
analogWrite(เลเวอร์เด, 0);
analogWrite (ledazul, 0);
Serial.println(" Dato 2 tarde"); }
}
ถ้า (compareArray (ActualUID, noche)) { contnoche ++;
ถ้า (contnoche ==1) {
analogWrite (ledrojo, 87);
analogWrite(เลเวอร์เด, 87);
analogWrite (ledazul, 87);
Serial.println(" Dato 1 noche");
} else if (contnoche ==2) {
contnoche = 0;
analogWrite (ledrojo, 0);
analogWrite(เลเวอร์เด, 0);
analogWrite (ledazul, 0);
Serial.println(" Dato 2 noche"); }
}
// Terminamos la lectura de la tarjeta tarjeta จริง mfrc522. PICC_HaltA();
}
}
}
// Función para comparar dos vectoresboolean comparisonArray (ไบต์ array1, ไบต์ array2) {
if (array1[0] != array2[0])return (false);
if (array1[1] != array2[1])return (false);
if (array1[2] != array2[2])return (false);
ถ้า (array1[3] != array2[3])return (เท็จ);
ผลตอบแทน (จริง);
}
แนะนำ:
ไฟกลางคืน RGB Vanagon RGB: 7 ขั้นตอน
VW Vanagon RGB Nightlight: ดังนั้นฉันจึงมองหาสื่อที่ดีในการเริ่มต้นโปรเจ็กต์ และฉันสังเกตเห็นของเล่นชิ้นนี้ที่ CVS ในราคา $7 ราคาถูก น่าสนใจ และมีพื้นที่เพียงพอสำหรับอุปกรณ์อิเล็กทรอนิกส์
Luces Direccionales Para Bicicleta: 3 ขั้นตอน
Luces Direccionales Para Bicicleta: hola que tal gente!muchas veces hay personas que usan la bicicleta como medio de transporte, ya que es amigable con el mundo, y es mas Economyo, pero el problema es que las bicicletas ที่ไม่มีความเข้าใจ ปอร์ ลอส ออโตโมวิลิสตา
Luces De Navidad Con Relevadores (ไฟคริสต์มาสพร้อมรีเลย์): 17 ขั้นตอน
Luces De Navidad Con Relevadores (ไฟคริสต์มาสพร้อมรีเลย์): Como Configurar Relevadores Usando Vixen Lights y ArduinoQue es Vixen Lights?Vixen Lights และซอฟต์แวร์ DIY (ใช้ mismo) แบบแยกส่วน La ultimo versián 3.x se rediseño completamente para soportar píxel
Luces De Navidad Con Pixeles (พิกเซลไฟคริสต์มาส) Español - อังกฤษ: 18 ขั้นตอน (พร้อมรูปภาพ)
Luces De Navidad Con Pixeles (พิกเซลไฟคริสต์มาส) Español - อังกฤษ: EspañolQue es Vixen Lights?Vixen Lights และซอฟต์แวร์ DIY (ใช้ mismo) ปรับแต่งภาพ เวอร์ชันล่าสุด 3.x se rediseño completamente para soportar píxeles RGB inteligentes.Lo puedes descargar en la siguiente liga http://www.vixenl
Luces De Auto Fantástico: 3 ขั้นตอน
Luces De Auto แฟนตาสติก: les quiero compartir un circuito, el cual emula los efectos de kit el auto fantastico, el corazon de este circuito es el digispark, una placa de desarrollo parecida al arduino, se programa con el mismo IDE และ eso mas facilMateriales1 โปรโตโบ