Πίνακας περιεχομένων:
- Βήμα 1: Εκπαιδευτικό βίντεο
- Βήμα 2: Interfaz De Usuario
- Βήμα 3: Conexión De Los Componentes
- Βήμα 4: Programación - Arduino
- Βήμα 5: Προγραμματισμός - Επεξεργασία
- Βήμα 6: Ejecución
Βίντεο: Educaacion Proyecto Final - Video Y TV Interactiva: 6 Βήματα
2024 Συγγραφέας: John Day | [email protected]. Τελευταία τροποποίηση: 2024-01-30 08:38
Προϊόντα που παρέχουν σύστημα πολυμέσων αλληλεπίδρασης, μπορούν να χρησιμοποιηθούν μέσα από οπτικοακουστικά μέσα και να περιορίσουν το λογισμικό και το υλικό για χειρισμούς, τις δυνατότητες και τις προτάσεις που μπορούν να χρησιμοποιηθούν για την εκμετάλλευση της εννοιολογικής μεθόδου, Επεξεργασία λήψης εικόνας, ήχου και βίντεο, επεξηγήσεων όλων των στοιχείων. El sistema estará basado και χαρακτηριστικά γνωρίσματα βίντεο αλληλεπίδρασης κατηγοριών Μάθηση, για να μάθουμε, να αντιμετωπίσουμε τους τρόπους με τους οποίους μπορούμε να αξιολογήσουμε το ενδεχόμενο να χρησιμοποιηθούν.
Υλικά
- 1 αισθητήρας RFID RC522
- 1 Potenciómetro
- 1 Ardunio Mega
Ο φορέας RFID και ο δυναμικός γιος σας είναι απαραίτητοι για ένα πρωτότυπο λειτουργικό σύστημα, το οποίο σας επιτρέπει να ελέγχετε τη λειτουργία σας και να επιτρέπετε τη χρήση συστημάτων αλληλεπίδρασης. El lector tendrá como función leer las etiquetas para seleccionar la respuesta en cada pregunta y el potenciómetro será el encargado de navegar dentro las opciones.
Λογισμικό
- Arduino IDE.
- Adobe Illustrator (προαιρετικό)
- Επεξεργασία
Βήμα 1: Εκπαιδευτικό βίντεο
Inicialmente se identificaron los temas a tratar dentro del vídeo; en nuestro caso Captura (imagen, vídeo y sonido), extrayendo de diferentes fuentes confiables la información más importante acerca de estos temas, teniendo en cuenta la parte conceptual, metodológica y funcional de cada uno, ya que de esta πληροφοριακές πληροφορίες Το
Κατεβάστε την ταυτότητά σας για την εκτέλεση μιας πληροφορίας για την εκπαίδευση, την επεξεργασία και τη διαφορά των διαφορετικών συνθέσεων των βίντεο, των εικόνων, των κειμένων και του ήχου, μέσω του προγράμματος επεξεργασίας λογισμικού για βίντεο, και τώρα για το Adobe Premiere para, así obtener un producto final el cual es el vídeo educationativo que se le brindara al usuario al momento de interactuar con el modelo prototipo funcional.
Εκπαιδεύοντας το εκπαιδευτικό πρόγραμμα για τη χρήση των αρχικών συστημάτων, θα πρέπει να λάβετε υπόψη σας μια πληροφορία που χρειάζεται για την ανταπόκριση των διαφορετικών προγραμμάτων; garantizando así el aprendizaje y vlerësación, conceptual, metodológica y conceptual.
Βήμα 2: Interfaz De Usuario
Για τα μέσα λογισμικού διανύσματος, που χρησιμοποιούν το Adobe Illustrator, μπορείτε να δείτε πώς μπορείτε να χρησιμοποιήσετε τα στοιχεία που χρησιμοποιείτε.
Se realizaron los fondos para cada interfaz de usuario del modelo prototipo funcional? además se diagramo todas las opciones necesarias con las cuales va a interactuar el usuario, principalmente las opciones de respuesta, las cuales se desarrolló un recuadro con cada opción y un color diferenciador a las demás.
Βήμα 3: Conexión De Los Componentes
Πραγματοποιήστε τη συνέντευξή σας στο RFID-RC522, για την παρακολούθηση των πρακτικών σας στο MOSI, MISO και SCK en Arduino Mega. Los pines SDA y RST pueden ir ubicados a cualquier pin digital, pero deben ser especificados en el código posteriormente.
Συνέχεια για τις περισσότερες συναλλαγές που πραγματοποιούνται για το RFID:
- SDA = D9
- RST = D8
- MOSI = D51
- MISO = D50
- SCK = D52
El siguiente componentente es el potenciometro, para cual te dejamos un enlace que explica como se realiza la conexión de uno de forma detallada. Λουίς Λάμας Ποτενσιομέτρο
Βήμα 4: Programación - Arduino
Ahora empezaremos con la programación. El código completeo lo puedes descargar cuando quieras.
Inicialmente debemos añadir las librerías que vamos a usar:
#περιλαμβάνω
Ahora para la lectura del RFID και del potenciomentro se configuran los parámetros y se utiliza un método que facilita la lectura del RFID:
#define RST_PIN 8 // RST
#define SS_PIN 9 // SDA MFRC522 RFID (SS_PIN, RST_PIN); // Μεταβλητές globales String ID = ""; boolean condicion = ψευδής? const int analogPin = A0; int τιμή? // μεταβλητή que almacena la lectura analógica raw int pos;
int cont = 0;
int caso?
int casoviejo = 0; void setup () {Serial.begin (9600); SPI.begin (); RFID. PCD_Init (); } // Metodo para comparar los tags del RFID
int CompararTags (String ID) {
int caso = 0; if (ID.equals ("43 27 97 10")) {caso = 1; } if (ID.equals ("124 192 204 194")) {caso = 2; } if (ID.equals ("30 44 244 229")) {caso = 3; } επιστροφή caso;
}
byte ActualUID [4];
String leerRFID (MFRC522 rfid) {String ID0; String ID1; String ID2; String ID3; String ID? // Enviamos serialemente su UID for (byte i = 0; i <rfid.uid.size; i ++) {ActualUID = rfid.uid.uidByte ; εάν (i == 0) {ID0 = String (ActualUID ); } if (i == 1) {ID1 = String (ActualUID ); } if (i == 2) {ID2 = String (ActualUID ); } if (i == 3) {ID3 = String (ActualUID ); }} ID = ID0 + "" + ID1 + "" + ID2 + "" + ID3; επιστροφή ταυτότητας? }
Como se desea enviar un dato según el TAG que se pase por el el sensor, se realiza un método que los compara
Τελικά, αρχίζει να ενημερώνεται για το serial a Processing, para lo cual armamos un String que tienen toda la información separado cada uno por una ",", ya que en Processing realizaremos un Split () que allowirá separar los datos y utilizarlos según la διευκολύνσεις. Ademas debemos recibir un valor de Processing con la finalidad de reiniciar los valores que se envían.
void loop () {
value = analogRead (analogPin); // realizar la lectura analógica raw pos = χάρτης (τιμή, 0, 1023, 0, 100); // se escribe write para enviar INTs //Serial.write(pos); // recibe los datos de Processing if (Serial.available ()) {// Εάν τα δεδομένα είναι διαθέσιμα για ανάγνωση, int val = Serial.read (); caso = val? } if (RFID. PICC_IsNewCardPresent ()) {// Seleccionamos una tarjeta if (RFID. PICC_ReadCardSerial ()) {ID = leerRFID (RFID); //Serial.println(ID); caso = CompararTags (ID); // si el caso que se lee es igual al anterior que se leyo, no va a imprimir. αν (! (casoviejo == caso)) {switch (caso) {case 1: //Serial.println(caso); casoviejo = caso; Διακοπή; θήκη 2: //Serial.println(caso); casoviejo = caso; Διακοπή; θήκη 3: //Serial.println(caso); casoviejo = κάσο; Διακοπή; }}}}
String potenciometro = (String) pos;
String casoRFID = (String) caso; String todo = potenciometro+","+casoRFID+","+"00"; Serial.println (todo); καθυστέρηση (500)? }
Βήμα 5: Προγραμματισμός - Επεξεργασία
Debido a que el código es extenso, se explicara los puntos mas importantes a tener en cuenta en la elaboración del sistema. Sin embargo podrás descargar el código completeo cuando quieras.
Primero se importan las librerías a usar:
επεξεργασία εισαγωγής.σειρά.*;
επεξεργασία εισαγωγής.βίντεο.*;
Después se deben crear las imágenes y los vídeos, para que estos puedan ser visualizados.
Ταινία myMovie ;
PImage fondo_IMAGEN; PImage concept1, concept2, concept3, concept4, muestra; PImage opcion1, opcion2, opcion3; PImage opcmet1, opcmet2, opcmet3; PImage opc1_1, opc1_2, opc2_1, opc2_2, opc3_1, opc3_2; PImage funcional1, funcional2, funcional3;
en el setup () debemos especificar los nombres de los archivos, los cuales deben estar dentro de una carpeta llamada data ubicada en la misma carpeta del proyecto. Ademas especificamos el tipo de letra a usar y el puerto serial por el cual recibir que envié el Arduino.
myMovie = νέα ταινία [2];
μέγεθος (640, 360). frameRate (60); f = createFont ("Arial", 18, true); String portName = "COM4"; // αλλάξτε το 0 σε 1 ή 2 κ.λπ. για να ταιριάζει με τη θύρα σας myPort = new Serial (this, portName, 9600); myMovie [0] = νέα ταινία (αυτή, "video2.mp4"); fondo_IMAGEN = loadImage ("Διεπαφές_2_Fondo_Imagen.png"); concept1 = loadImage ("Interfaces_2_1 ° - B.png"); concept2 = loadImage ("Interfaces_2_1 ° - G.png"); concept3 = loadImage ("Interfaces_2_1 ° - R.png"); muestra = loadImage ("Διεπαφές_2_1 ° - RGB.png"); opcion1 = loadImage ("img_Imagen-Metodología-05.png"); opcion2 = loadImage ("img_Imagen-Metodología-06.png"); opcion3 = loadImage ("img_Imagen-Metodología-07.png"); opc1_1 = loadImage ("img_Imagen-Funcional-08.png"); opc1_2 = loadImage ("img_Imagen-Funcional-09.png"); opc2_1 = loadImage ("img_Imagen-Funcional-10.png"); opc2_2 = loadImage ("img_Imagen-Funcional-11.png"); opc3_1 = loadImage ("img_Imagen-Funcional-13.png"); opc3_2 = loadImage ("img_Imagen-Funcional-15.png"); funcional1 = loadImage ("funcional1.png"); funcional2 = loadImage ("funcional2.png"); funcional3 = loadImage ("funcional3.png"); myMovie [0].play ();
Las siguientes lineas de código están dentro del método Draw ().
Primero se reciben los datos del serial y realizamos el Split () que permite separar cada uno de los datos que se reciben.
if (myMovie [0].time () == myMovie [0].duration ()) {video = true;
} else {video = false; } while (myPort.available ()> 0) {String val = myPort.readString (); String valor = val? // separa los valores que recoje el serial. int nums = int (split (valor, ',')); pote = nums [0]; caso = nums [1]; println (pote+","+caso); }
Se tiene un switch case, para cada escena del sistema, por lo tanto se reproducirá un método en el momento en el momento en que la variable "cambioEscena" cambie.
αν (! βίντεο) {
εικόνα (myMovie [0], 0, 0, 640, 360); } else {background (255); διακόπτης (cambioEscena) {περίπτωση 0: διακοπή; περίπτωση 1: escena1 (); Διακοπή; περίπτωση 2: escena2 (); Διακοπή; περίπτωση 3: escena3 (); Διακοπή; }
Los cambios de escenas se realizan en función a cuando el mouse es presionado, por lo tanto se useiza el método mousePressed () για την πραγματοποίηση του cambio. También se utiliza este método para almacenar las respuestas que el usuario da al sistema y posteriormente verificarlas y guardarlas en un documento Txt.
void mousePressed () {
// dimenciones del boton siguente escena 1 if (cambioEscena == 1) {if (mouseX> Sx && mouseX Sy && mouseY Sx2 && mouseX Sy2 && mouseY xx && mouseX yy && mouseY 450 && mouseX 100 && mouseY <100+30) { // ALMACENA LA RESPUESTA DEL PARAMETRO! if (parametroOpc1 == 1) {respuesta_1_3 = 1; } if (parametroOpc1 == 2) {respuesta_1_3 = 2; } if (parametroOpc2 == 1) {respuesta_2_3 = 1; } if (parametroOpc2 == 2) {respuesta_2_3 = 2; } if (parametroOpc3 == 1) {respuesta_3_3 = 1; } if (parametroOpc3 == 2) {respuesta_3_3 = 2; } myPort.write (0); println (respuesta_1_3+","+respuesta_2_3+","+respuesta_3_3); }
if (mouseX> xx && mouseX yy && mouseY finx && mouseX finy && mouseY <finy+Sh2) {guardarRespuestas (); έξοδος(); }}}
El método utilizado para almacenar respuestas es el siguiente:
void guardarRespuestas () {
String ResConceptual = "Λάθος"; String ResMetodlo = "Λάθος"; String ResFuncio = "Λάθος"; εάν (respuesta_1 == 2) {ResConceptual = "Correcto"; } if (y == 210 && y2 == 140 && y3 == 70) {ResMetodlo = "Correcto"; } if (escena2y == 140 && escena2y2 == 210 && escena2y3 == 70 && respuesta_1_3 == 1 && respuesta_2_3 == 2 && respuesta_3_3 == 2) {ResFuncio = "Correcto"; } String Respuestas = "Respuesta conceptual:"+ResConceptual+"Respuesta metodologica:"+ResMetodlo+"Respuesta funcional:"+ResFuncio; String list = split (Respuestas, ''); // Γράφει τις συμβολοσειρές σε ένα αρχείο, το καθένα σε ξεχωριστή γραμμή saveStrings ("RESPUESTAS.txt", λίστα). }
Βήμα 6: Ejecución
Τελική εκτέλεση του προγράμματος εκκίνησης για την εξήγηση. Después se utilisara el potencimetro para variar las respuestas que se desean dar y los tags y el sensor RFID para seleccionar los pasos en la interfaz de la segunda y tercera pregunta.
Συνιστάται:
Αυτοματοποιημένο ECG-BME 305 Final Project Extra Credit: 7 Βήματα
Αυτοματοποιημένο ECG-BME 305 Final Project Extra Credit: Ένα ηλεκτροκαρδιογράφημα (ΗΚΓ ή ΗΚΓ) χρησιμοποιείται για τη μέτρηση των ηλεκτρικών σημάτων που παράγονται από μια καρδιά που χτυπά και παίζει μεγάλο ρόλο στη διάγνωση και την πρόγνωση των καρδιαγγειακών παθήσεων. Ορισμένες από τις πληροφορίες που λαμβάνονται από ένα ΗΚΓ περιλαμβάνουν τον ρυθμό
Κύκλωμα αισθητήρα υπερήχων TinkerCAD (Computer Eng Final): 4 βήματα
TinkerCAD Ultrasonic Distance Sensor Circuit (Computer Eng Final): Θα δημιουργήσουμε ένα άλλο διασκεδαστικό κύκλωμα tinkerCAD που θα κάνουμε κατά τη διάρκεια της καραντίνας! Σήμερα υπάρχει μια προσθήκη ενός ενδιαφέροντος συστατικού, μπορείτε να μαντέψετε; Λοιπόν, πρόκειται να χρησιμοποιήσουμε έναν υπερηχητικό αισθητήρα απόστασης! Επιπλέον, πρόκειται να κωδικοποιήσουμε 3 LED
Wearable Tech Final Project - Κράνος DJ: 6 Βήματα
Wearable Tech Final Project - DJ Helmet: Ο στόχος αυτού του έργου είναι να φτιάξει ένα κράνος DJ με LED αντιδραστικά στη μουσική για show και wow factor. Χρησιμοποιούμε μια διευθετήσιμη λωρίδα LED από το Amazon.com καθώς και ένα κράνος μοτοσικλέτας, ένα Arduino uno και σύρμα
Projecte Final 3ESO Grua: 4 Βήματα
Projecte Final 3ESO Grua: Hola, em dic Iván i aquest es el meu projecte final de tecnologia en 3r E.S.O.En aquest projecte em de fer una woman que pugui agafar un objecte en un punt A i transportar-lo fins el punt B
Final Project LED Happy Face: 7 Βήματα
Final Project LED Happy Face: Καλώς ήλθατε στο έργο μου στο happy face! Αυτό το Instructable είναι ένα ελαφρώς περισσότερο από αρχάριο έργο Arduino σχεδιασμένο για όποιον θέλει απλώς να διασκεδάσει με τα ηλεκτρονικά. Αυτό το έργο Arduino περιλαμβάνει τη χρήση 8 LED που ανάβουν από αριστερά προς τα δεξιά στο