hola muchas gracias por tus videos son de mucha ayuda y muy claros, estoy haciendo un brazo robótico con Arduino, motores paso a paso y potenciómetros, hasta ahí todo bien, no hay problema, mí problema comienza cuándo vi un vídeo en donde graban los movimientos que uno le indica al brazo mediante los potenciómetros y luego este los realiza solo de forma automática, en este vídeo lo hacen con servomotores y no lo explican, por ahí algún día me puedas dar una mano para hacerlo con motores paso a paso, La verdad que me explotó La cabeza, muchas gracias nuevamente y un fuerte abrazo desde Argentina
buen vídeo, me gusta su manera de explicarlo bastante claro...sigue adelante, gracias por compartir sus conocimientos, me sirve muchísimo... saludos de Perú.
Buenas tardes disfrutó de su vídeo. y tengo algunas dudas. en mi caso, esto da un error en la línea 56. sigue error. IRLbegin(digitalPinToInterrupt(IR)); Arduino: 1.6.9 (Windows 7) Signo: "Arduino / Genuino Uno" sketch_jul31a:56: error: 'IRLbegin' was not declared in this scope Usando a biblioteca IRLremote-master na versão 1.7.4 na pasta: C:\Users\Usuário\Desktop\arduino-1.6.9\libraries\IRLremote-master exit status 1 'IRLbegin' was not declared in this scope
muchas gracias por compartir tu video me sirvio de muchisimo en el proyecto que estoy realizando, sin embargo tengo un arduino uno, y te queria preguntar, como puedo usar mi arduino uno en ves del arudino leonardo. tambien te queria preguntar como puedo relacionar la interrupcion con un mensaje en LCD.
Buen video, completo e interesante ademas de bien explicado busco tiempo para probarlo en mi arduino uno. Entusiasmado de instalarlo, no dejaste nada al azar. Saludos desde Vzla. Bye
de donde has obtenido el 0x4ab5 para la tecla 1 del control remoto? he visto el otro video y solo mostraba en el monitor serial 4AB5 para tu función tecla
He aprendido mucho con tus vídeos. Gracias. Necesito que me ayudes: Tengo un arduino DUE, el cual posee todas sus I/O que se pueden usar como interrupciones. El caso práctico en un elevador, que cuando oprimes un pulsador de pedido de piso, manda un dato y recibe otro que enciende un led de aceptación del pedido. Me puedes ayudar?
Muy buen video!, ... desearia que le aumentaras un tercer modo de encender y apagar los leds usando un modulo bluetooth (botones+mando infrarrojo+bluetooth), saludos!!!
Hola , como te va ? estoy teniendo un problemita con un cronometro activado por un IR , si solo detecto un pulso en la interrupcion funciona perfecto pero tengo falsos disparos , el emisor que estoy usando es standar en las carreras de autos , se compone de tres pulsos bajos de 800 microsegundos separados por 1200 microsegundos cada uno , al momento de intentar comprobar que sea el pulso que necesito y no una interferencia se pone muy inestable en el tiempo medido y pierde disparos tambien , si pudieras darme una mano te lo agradeceria . muchas gracias
muchas gracias estaba buscando este tipo de informacion y me has ayudado mucho me gustaria saber si sabes hacerca de la pantalla 3.2 tft lcd display y como hacerla funcionar
Un vídeo estupendo y como siempre perfectamente explicado. Me gustaría hacer una petición, y es que necesito hacer retardos pero sin delay, hay muchos ejemplos con millis pero todos para sucesos repetitivos. Yo necesito retardos pero cuando se cumplan unas condiciones determinadas. Osea lo que necesito es una herramienta que al ponerla en cualquier sitio del programa me realizo un retardo pero sin delay. No se si es mucho pedir pero de antemano muchas gracias 😃
HOLA PRIMERO QUE NADA GRACIAS POR TUS VIDEOS CREEME QUE ME HAN AYUDADO BASTANTA A APRENDER EL USO DE ADRUINO... PERO TENGO UNA DUDA HABRA FORMA DE PODER ENVIAR O CODIFICAR EL CODIGO HEXADECIMAL DEL CONTROL PARA CREAR NUESRO PROPOPIO MANDO A DISTANCIA Y ENCEDER ALGUN DISPOSITIVO?
quet tal fantasticos videos yo quisiera pedir un favor , de como trabajar con un RELOJ , con el DS3231 ya lo he probado , pero lo que me falta es aprender como poner acciones a cierta hora y a una fecha , por ejemplo lo podria implementar en un control de riego o encender las luces cada tarde, te lo agradecería mucho
Hola, disculpa yo estoy usando una interrupción (una sola interrupción del ARDUINO UNO ) mediante varios pushbotton, necesito detectar cual de estos pushbotton se aprieta, por lo que hago una lectura de estos con otros pines del ARDUINO. Para esto utilizo una compuerta OR como multiplexor. Mi pregunta es: Existe alguno otra forma mas efectiva de hacer esto que no se utilice una compuerta?
+Luis De La Rosa Si conectas los pusadores directamente sobre el pin de la interrupción sin usar la puerta OR lo que va a pasar es que pulses el que pulses recibirás 1 por todos los pines independientes de los pulsadores y, aunque la interrupción si saltará, no sabrás cual es el pulsador presionado por lo que solo con software no puedes. Necesitas un componente hardware si o si. La puerta OR es posiblemente la solución más fácil. Tal vez puedas probar con diodos pero estás más o menos en la misma puesto que las puertas lógicas funcionan internamente con ellos. Lo que si puedes hacer en el sketch para complementar tu circuito (que desde mi punto de vista está genial) es usar directamente los registros de los canales digitales en vez de la función digitalRead, esto hace que se consuman muchos menos ciclos y la lectura de los pines sea muchisimo más rápida. Gracias por comentar :)
Muy buenas. Estoy trasteando con arduino para hacer un sketch que me permita encender varios leds fijos mientras enciendo y apago otros que parpadeen mediante control remoto. Utilicé tu video para guiarme pero me he descargado varias veces la librería y al introducir la función IRLbegin no la reconoce y salta un mensaje de error. Llevo varios dias probando mil cosas y no doy con la solución. ¿Puedes echarme una mano? Muchas gracias. Un saludo
hola amiga saludos podrías ayudarme en hacer un proyecto con un modulo bluetooth atra vez del celular? que haga lo mismo que encienda y apague el led también con el botón? muchas gracias.. felicidades x tu canal. esta super.
hola!! me sirven mucho tus videos!! pero tengo un error como la mayoría de todos; "IRLbegin' was not declared in this scope" a q se debe?? muchas gracias!
hola que tal muchas felicidades por tu canal me gusta mucho como explica tus vídeos.. me gusto mucho este vídeo. podrías ayudarme estoy haciendo una alarma para mi casa y quiero que se encienda y se apague un led a través de bluetooth y a otra ves de un botón así como este proyecto. podrías ayudarme muchas gracias. ya me suscribi a tu canal.. salidos desde México
+Kanniks Molkere si, de hecho, la semana que viene quería hacer un video que me ha propuesto un suscriptor con el puntero laser, la fotorresistencia y el buzzer. ¿Me quieres proponer alguno? Me gustan los retos :)
+Tech Krowd Hace algunos dias que compre mi Kit de sensores y buscando encontré un formato en pdf que me daba las especificaciones de cada sensor, y también agregaba un código para usarlos, mi duda seria como puedo combinar esos códigos para usar varios sensores con el mismo arduino? adjunto la pagina de la información file:///home/chronos/u-f78ffc71f8efafcbef520719bd40bf5d6b3d378a/Downloads/KITSENAT.PDF
+Kanniks Molkere El código no siempre es igual, depende del proyecto, de los sensores que quieras usar, del resultado que quieras obtener, etc. No hay una formula que se pueda aplicar. Todo depende de lo que quieras hacer. Si tienes alguna idea más concreta con algunos sensores en particular si te puedo ayudar pero de forma tan general es imposible.
cuando uso unos reles optoacoplados, con diodos undicadores integrados, al conectar la corriente, la salida del pin es 0, con lo cual estos reles se activan automaticamente. necesitaria que al conectar la corriente el pin de salida sea 1, para que los reles se queden apagados. he echo todo, solo me queda eso, funciona bien apagado y encendido con ir. un saludo
Hola muy buenos videos podria ayudarme haciendo una simulación de 5 botones cada boton para cada 5 (5 leds) y que el usuario pueda encender el que el quiera y al dejar de encenderlos se enciendan los mismos botones conforme fue encendiendo primero
No no, solo 5 leds en total (cada led debera tener su propio boton) y que al presionar cualquier boton se encienda el led en ese momento pero al dejar de oprimir los botones estos leds enciendan conforme se fueron encendiendo al apretar los botones. Pero solo utilizando arduino botones leds ya que lo simulare en isis proteus para en seguida montarlo
Hola. Excelente tutoriales, me gustaría que donde estudio tuvieran la facilidad con la cual explicas. Existe la posibilidad de que me ayudes con un proyecto soy un novato, hay posibilidad que de comunicarme contigo vía mail?
Felicidades por tus videos, de nuevo me han servido mucho y me han dado ideas para crear mis propios proyectos. Este en concreto lo voy a utilizar para controlar la subida y bajada de persianas eléctricas en casa. Sin embargo tengo un problema que no he podido solucionar: El LED1 lo utilizo para subida y LED2 para bajada, pero no pueden estar encendidos simultaneamente, pues esto quemaria el motor. Como podría hacer para que cuando uno esté en funcionamiento, si por accidente pulsara otro, este ultimo no se activara? Ademas, estaria bien que al pulsar el encendido de cualquiera de ellos, se desactivara despues de 8 segundos, cuando la persiana suba o baje del todo. Muchas gracias.
Así es. El estado de LED1 simularía la subida de la persiana y LED2 la bajada. Lo que ocurre es que por ejemplo si la persiana esta subiendo y por error se pulsara la que corresponde a LED2, entonces el motor podría dañarse. Para evitarlo yo utilizaba en otro sketch lo siguiente: if ((digitalRead(pulsador1) == HIGH && (digitalRead(pulsador2) == LOW)){ digitalWrite(LED1,HIGH); y lo mismo con el otro pulsador. El problema es que en este skecth es que al no trabajar con valores LOW Y HIGH me lio bastante y no sé como hacerlo. Muchas gracias por tu atención.
Mira este código, he comentado las modificaciones, espero qeu te sirva :) si no entiendes algo dimelo: #include "IRLremote.h" const int interruptIR = 4; // Arduino LEONARDO interrupcion 4: Pin 7 const int LED1 = 8; const int LED2 = 9; uint8_t IRProtocol = 0; // Variables para recibir los datos uint16_t IRAddress = 0; uint32_t IRCommand = 0; //esta variable es lo que te va a permitir saber si el motor está en funcionamiento: bool motorOn = false; //inicialmente tiene valor false porque partimos del reposo int led = 0; int i; void setup() { //LEDS pinMode(8, OUTPUT); pinMode(9, OUTPUT); //leds apagados porque partimos del reposo digitalWrite(8, LOW); digitalWrite(9, LOW); IRLbegin(interruptIR); } //verás que el codigo de la función loop es similar void loop() { uint8_t oldSREG = SREG; // Parar las interrupciones cli(); if (IRProtocol) // Si reconoce el protocolo { switch (IRCommand) { case 0x4ab5: led = LED1; break; //1 case 0x0af5: led = LED2; break; //2 } /************************************************************ esto es lo nuevo que he añadido: (motorOn && digitalRead(led)==HIGH) si el flag motorOn es true y la pulsación se corresponde con el led iluminado significa que se ha presionado el boton del mando correspondiente con el sentido del motor en marcha por lo que se entra en el if para apagar el led y dejar el flag con valor false, el motor se ha detenido !motorOn Si la condición anterior no se cumple se evalua esta, por eso uso un or ( || ) en el if, si se cumple esta segunda condición es que el motor está parado, entonces me da igual el botón que se ha pulsado, se ejecuta el cuerpo del if y se ilumina el led correspondiente y se pone el flag a true *************************************************************/ if((motorOn && digitalRead(led)==HIGH) || !motorOn){ digitalWrite(led, !digitalRead(led)); motorOn=!motorOn; //le da al flag el valor opuesto al que tenga } /******************************************************* *******************************************************/ IRProtocol = 0; } SREG = oldSREG; } //la interrupcion del IR es igual que la que expliqué en el video void IREvent(uint8_t protocol, uint16_t address, uint32_t command) { IRProtocol = protocol; // Recogemos los valores y nos volvemos IRAddress = address; IRCommand = command; }
Pero desconectalo él cable USB para ver tu resultado xq yo tengo un problema solo funciona cuando él cable USB esta conectado si es así no me sirve él skech
Hola, puedes hacer un tutorial de como hacer el control de relays con secuencia de tres en tres con ayuda de sensores ir. Por ejemplo Sensor 1 ir activa relay 1y 2 Sensor ir 2 activa relay 1,2,3 Sensor ir 3 activará a relay 2,3,4 Hasta el 10mo relay (litalmemte , después del primer sensor activará el relay correspondiente al sensor y uno siguiente y una anterior. Yo ya intenté hacerlo, pero no sé que pasa. Al anexar el tercero me altera algo en el programa, haciendo que si mantengo señal en 2 programas(sensores) hay un relay que debería permanecer encendido pero en su lugar parpadea de forma intermitente. Te comparto el código, que tengo al sensor 3 para que pueda ver lo que pasa. int RELE1 = 2; int RELE2 = 3; int RELE3 = 4; int RELE4 = 5; const byte pinObstaculo1 = 53; const byte pinObstaculo2 = 51; const byte pinObstaculo3 = 49; int hayObstaculo1 = HIGH; int hayObstaculo2 = HIGH; int hayObstaculo3 = HIGH; void setup() { // put your setup code here, to run once: pinMode(RELE1,OUTPUT); pinMode(RELE2,OUTPUT); pinMode(RELE3,OUTPUT); pinMode(RELE4,OUTPUT); pinMode(pinObstaculo1, INPUT); pinMode(pinObstaculo2, INPUT); pinMode(pinObstaculo3, INPUT); } void loop() { // put your main code here, to run repeatedly: hayObstaculo1 = digitalRead (pinObstaculo1); if( hayObstaculo1 == LOW){ digitalWrite(RELE1,LOW); digitalWrite(RELE2,LOW); delay(1000); } else{ digitalWrite(RELE1,HIGH); digitalWrite(RELE2,HIGH); digitalWrite(RELE3,HIGH); } hayObstaculo2 = digitalRead (pinObstaculo2); if( hayObstaculo2 == LOW){ digitalWrite(RELE2,LOW); digitalWrite(RELE1,LOW); digitalWrite(RELE3,LOW); delay(1000); } else{ digitalWrite(RELE2,HIGH); digitalWrite(RELE1,HIGH); digitalWrite(RELE3,HIGH); } hayObstaculo3 = digitalRead (pinObstaculo3); if( hayObstaculo3 == LOW){ digitalWrite(RELE3,LOW); digitalWrite(RELE4,LOW); digitalWrite(RELE2,LOW); delay(1000); } else{ digitalWrite(RELE3,HIGH); digitalWrite(RELE4,HIGH); digitalWrite(RELE2,HIGH); } }
Hola que buen video , estoy desarrollando un proyecto en el cual leo una entrada analogica de arduino mega2560 conectada a un led receptor infrarrojo, y quiero temporizar la salida 11 pinout despues de leer el estado de A1analoginput, te paso el codigo,diculpa si no me explico bien const int analogInPin = A1; // Pin analogico 1 para la lectura del Fototransistor const int OutPin = 13; // Pin para el led indicador const int OutPin1 = 11; const int OutPin2 = 9; int sensorValue = 0; // Inicializamos el valor del sensor void setup() { // Inicializamos la comunicacion serial a 9600 bps: Serial.begin(9600); pinMode(OutPin, OUTPUT); pinMode(OutPin1, OUTPUT); pinMode(OutPin2, OUTPUT); } void loop() { // leemos el pin para y asignamos el valor a la variable. sensorValue = analogRead(analogInPin); // Si el valor obtenido es mayor a 900 se activa el LED if(sensorValue < 200 ) { digitalWrite(OutPin, HIGH ); } else { digitalWrite(OutPin1, HIGH ); //despues de este comando tendria que integrar un timer } if(sensorValue >130) { digitalWrite(OutPin1,LOW );
}
// Imprimimos el valor en el monitor. Serial.print("sensor = " ); Serial.println(sensorValue); delay(300 );
Como podría generar un programa que controle el contador de un display de 7 segmentos que va de 0 a 15; el circuito contora con 3 botones, uno de arranque, uno de pausa y uno de paro. a) El de arranque únicamente iniciara el contador (inicia en 0) . b) El de pausa únicamente pausa y continúa el contador. c) El de paro únicamente parara el contador en el número que se quede.
Me han preguntado a través de Facebook (facebook.com/TechKrowd) cómo podría hacer que el cuarto led parpadee pulsando el botón 5 del mando. Aquí os dejo el sketch modificado por si le interesa a alguien más mega.nz/#!ToRAjZyJ!4TfUl27Cm2uXlXqWwco7p0bGrZB3R5rRXl69Kmk3-90
Por fin encuentro una explicación clara y con un buen ejemplo de como usar las interrupciones.
1.000 Gracias.
+Andrés Botero son las eternas desconocidas pero muy utiles. Me alegro de que te haya servido. Gracias por comentar :)
+Andrés Botero son las eternas desconocidas pero muy utiles. Me alegro de que te haya servido. Gracias por comentar :)
hola muchas gracias por tus videos son de mucha ayuda y muy claros, estoy haciendo un brazo robótico con Arduino, motores paso a paso y potenciómetros, hasta ahí todo bien, no hay problema, mí problema comienza cuándo vi un vídeo en donde graban los movimientos que uno le indica al brazo mediante los potenciómetros y luego este los realiza solo de forma automática, en este vídeo lo hacen con servomotores y no lo explican, por ahí algún día me puedas dar una mano para hacerlo con motores paso a paso, La verdad que me explotó La cabeza, muchas gracias nuevamente y un fuerte abrazo desde Argentina
buen vídeo, me gusta su manera de explicarlo bastante claro...sigue adelante, gracias por compartir sus conocimientos, me sirve muchísimo... saludos de Perú.
Buenas tardes disfrutó de su vídeo. y tengo algunas dudas.
en mi caso, esto da un error en la línea 56. sigue error.
IRLbegin(digitalPinToInterrupt(IR));
Arduino: 1.6.9 (Windows 7) Signo: "Arduino / Genuino Uno"
sketch_jul31a:56: error: 'IRLbegin' was not declared in this scope
Usando a biblioteca IRLremote-master na versão 1.7.4 na pasta: C:\Users\Usuário\Desktop\arduino-1.6.9\libraries\IRLremote-master
exit status 1
'IRLbegin' was not declared in this scope
Esto si me gusto mucho, me imagino q tambien es el mismo protocolo para la red wifi en el uso del infrarrojo, muchas gracias.
muchas gracias por compartir tu video me sirvio de muchisimo en el proyecto que estoy realizando, sin embargo tengo un arduino uno, y te queria preguntar, como puedo usar mi arduino uno en ves del arudino leonardo. tambien te queria preguntar como puedo relacionar la interrupcion con un mensaje en LCD.
Buen video, completo e interesante ademas de bien explicado busco tiempo para probarlo en mi arduino uno. Entusiasmado de instalarlo, no dejaste nada al azar. Saludos desde Vzla. Bye
de donde has obtenido el 0x4ab5 para la tecla 1 del control remoto? he visto el otro video y solo mostraba en el monitor serial 4AB5 para tu función tecla
Muchas gracia, tus vídeos son muy claros y detallados.
Me han servido mucho.
Sigue así. Gracias.
He aprendido mucho con tus vídeos. Gracias. Necesito que me ayudes: Tengo un arduino DUE, el cual posee todas sus I/O que se pueden usar como interrupciones. El caso práctico en un elevador, que cuando oprimes un pulsador de pedido de piso, manda un dato y recibe otro que enciende un led de aceptación del pedido. Me puedes ayudar?
Muy buen video!, ... desearia que le aumentaras un tercer modo de encender y apagar los leds usando un modulo bluetooth (botones+mando infrarrojo+bluetooth), saludos!!!
Hola , como te va ? estoy teniendo un problemita con un cronometro activado por un IR , si solo detecto un pulso en la interrupcion funciona perfecto pero tengo falsos disparos , el emisor que estoy usando es standar en las carreras de autos , se compone de tres pulsos bajos de 800 microsegundos separados por 1200 microsegundos cada uno , al momento de intentar comprobar que sea el pulso que necesito y no una interferencia se pone muy inestable en el tiempo medido y pierde disparos tambien , si pudieras darme una mano te lo agradeceria . muchas gracias
muchas gracias estaba buscando este tipo de informacion y me has ayudado mucho me gustaria saber si sabes hacerca de la pantalla 3.2 tft lcd display y como hacerla funcionar
Un vídeo estupendo y como siempre perfectamente explicado. Me gustaría hacer una petición, y es que necesito hacer retardos pero sin delay, hay muchos ejemplos con millis pero todos para sucesos repetitivos. Yo necesito retardos pero cuando se cumplan unas condiciones determinadas. Osea lo que necesito es una herramienta que al ponerla en cualquier sitio del programa me realizo un retardo pero sin delay. No se si es mucho pedir pero de antemano muchas gracias 😃
Hola buenas tardes ... Tengo un problema al mando IRLbegin (digitalPinToInterrupt (IR)); Dice ('IRL' was not declared in this scope )... que hago?
HOLA PRIMERO QUE NADA GRACIAS POR TUS VIDEOS CREEME QUE ME HAN AYUDADO BASTANTA A APRENDER EL USO DE ADRUINO... PERO TENGO UNA DUDA HABRA FORMA DE PODER ENVIAR O CODIFICAR EL CODIGO HEXADECIMAL DEL CONTROL PARA CREAR NUESRO PROPOPIO MANDO A DISTANCIA Y ENCEDER ALGUN DISPOSITIVO?
quet tal fantasticos videos yo quisiera pedir un favor , de como trabajar con un RELOJ , con el DS3231
ya lo he probado , pero lo que me falta es aprender como poner acciones a cierta hora y a una fecha , por ejemplo lo podria implementar en un control de riego o encender las luces cada tarde, te lo agradecería mucho
bonita y sabe se defiende bien amiga esta super tu proyecto
Hola, disculpa yo estoy usando una interrupción (una sola interrupción del ARDUINO UNO ) mediante varios pushbotton, necesito detectar cual de estos pushbotton se aprieta, por lo que hago una lectura de estos con otros pines del ARDUINO. Para esto utilizo una compuerta OR como multiplexor. Mi pregunta es: Existe alguno otra forma mas efectiva de hacer esto que no se utilice una compuerta?
+Luis De La Rosa Si conectas los pusadores directamente sobre el pin de la interrupción sin usar la puerta OR lo que va a pasar es que pulses el que pulses recibirás 1 por todos los pines independientes de los pulsadores y, aunque la interrupción si saltará, no sabrás cual es el pulsador presionado por lo que solo con software no puedes. Necesitas un componente hardware si o si. La puerta OR es posiblemente la solución más fácil. Tal vez puedas probar con diodos pero estás más o menos en la misma puesto que las puertas lógicas funcionan internamente con ellos.
Lo que si puedes hacer en el sketch para complementar tu circuito (que desde mi punto de vista está genial) es usar directamente los registros de los canales digitales en vez de la función digitalRead, esto hace que se consuman muchos menos ciclos y la lectura de los pines sea muchisimo más rápida.
Gracias por comentar :)
Muy buenas.
Estoy trasteando con arduino para hacer un sketch que me permita encender varios leds fijos mientras enciendo y apago otros que parpadeen mediante control remoto.
Utilicé tu video para guiarme pero me he descargado varias veces la librería y al introducir la función IRLbegin no la reconoce y salta un mensaje de error.
Llevo varios dias probando mil cosas y no doy con la solución. ¿Puedes echarme una mano?
Muchas gracias.
Un saludo
hola,te sigo hace tiempo , me gusta como explicas y los detalles que das... estoy tratando de armar un skech me podes dar una mano... gracias
hola amiga saludos podrías ayudarme en hacer un proyecto con un modulo bluetooth atra vez del celular? que haga lo mismo que encienda y apague el led también con el botón?
muchas gracias.. felicidades x tu canal. esta super.
Me gusta como explicas.
hola!! me sirven mucho tus videos!! pero tengo un error como la mayoría de todos; "IRLbegin' was not declared in this scope" a q se debe?? muchas gracias!
Oye, una pregunta. Porque cuando coloco mis comandos no funcionan
void loop(){
oldSREG = SREG;
cli();
if(protocolo!=0){
switch(comando)
{
case 30CF: rojo = 255; break;
case 18E7: verde = 255; break;
case 7A85: azul = 255; break;
}
miColor(rojo, verde, azul);
/*Serial.print("Protocolo: ");
Serial.print(protocolo);
Serial.print(" Direccion: ");
Serial.print(direccion, HEX);
Serial.print(" Comando: ");
Serial.println(comando, HEX);*/
protocolo = 0;
}
SREG = oldSREG;
}
Me dice que el operador y el comando no existen :( Porfavor ayudame
hola. me gustaría si pude hacer un vídeo tutorial de display multiplexado. con interruptor. gracias
muchas gracias, la verdad muy bien explicado
hola me ha gustado moucho el video aver si tienes un video hecho con la RFID
te lo agradesco mucho
hola que tal muchas felicidades por tu canal
me gusta mucho como explica tus vídeos.. me gusto mucho este vídeo.
podrías ayudarme estoy haciendo una alarma para mi casa y quiero que se encienda y se apague un led a través de bluetooth y a otra ves de un botón así como este proyecto. podrías ayudarme
muchas gracias. ya me suscribi a tu canal.. salidos desde México
que buen video es genial like like...👍👍👍👍👍 por esto es que estoy suscrito sigue asi
Crees que puedas combinar varios sensores del Kit en un mismo proyecto?
+Kanniks Molkere si, de hecho, la semana que viene quería hacer un video que me ha propuesto un suscriptor con el puntero laser, la fotorresistencia y el buzzer.
¿Me quieres proponer alguno? Me gustan los retos :)
+Tech Krowd Hace algunos dias que compre mi Kit de sensores y buscando encontré un formato en pdf que me daba las especificaciones de cada sensor, y también agregaba un código para usarlos, mi duda seria como puedo combinar esos códigos para usar varios sensores con el mismo arduino?
adjunto la pagina de la información
file:///home/chronos/u-f78ffc71f8efafcbef520719bd40bf5d6b3d378a/Downloads/KITSENAT.PDF
+Kanniks Molkere El código no siempre es igual, depende del proyecto, de los sensores que quieras usar, del resultado que quieras obtener, etc. No hay una formula que se pueda aplicar. Todo depende de lo que quieras hacer. Si tienes alguna idea más concreta con algunos sensores en particular si te puedo ayudar pero de forma tan general es imposible.
Cómo se podrian hacer unas luces intermitentes para coches con mando rc ???
cuando uso unos reles optoacoplados, con diodos undicadores integrados, al conectar la corriente, la salida del pin es 0, con lo cual estos reles se activan automaticamente. necesitaria que al conectar la corriente el pin de salida sea 1, para que los reles se queden apagados. he echo todo, solo me queda eso, funciona bien apagado y encendido con ir. un saludo
las gracias anticipada.
Hola muy buenos videos podria ayudarme haciendo una simulación de 5 botones cada boton para cada 5 (5 leds) y que el usuario pueda encender el que el quiera y al dejar de encenderlos se enciendan los mismos botones conforme fue encendiendo primero
+Jeorge Lada 5 leds por cada botón? es decir, 25 leds en total?
No no, solo 5 leds en total (cada led debera tener su propio boton) y que al presionar cualquier boton se encienda el led en ese momento pero al dejar de oprimir los botones estos leds enciendan conforme se fueron encendiendo al apretar los botones. Pero solo utilizando arduino botones leds ya que lo simulare en isis proteus para en seguida montarlo
Parabéns pelos vídeos! Gracias!
+Luiz Vicente Prestes da Silva Obrigado! Muchas gracias! :)
Hola. Excelente tutoriales, me gustaría que donde estudio tuvieran la facilidad con la cual explicas.
Existe la posibilidad de que me ayudes con un proyecto soy un novato, hay posibilidad que de comunicarme contigo vía mail?
Felicidades por tus videos, de nuevo me han servido mucho y me han dado ideas para crear mis propios proyectos. Este en concreto lo voy a utilizar para controlar la subida y bajada de persianas eléctricas en casa.
Sin embargo tengo un problema que no he podido solucionar:
El LED1 lo utilizo para subida y LED2 para bajada, pero no pueden estar encendidos simultaneamente, pues esto quemaria el motor.
Como podría hacer para que cuando uno esté en funcionamiento, si por accidente pulsara otro, este ultimo no se activara?
Ademas, estaria bien que al pulsar el encendido de cualquiera de ellos, se desactivara despues de 8 segundos, cuando la persiana suba o baje del todo.
Muchas gracias.
quieres usar un botón del mando para bajar y el presionar el mismo que se pare? y otro igual pero para subir?
Así es. El estado de LED1 simularía la subida de la persiana y LED2 la bajada. Lo que ocurre es que por ejemplo si la persiana esta subiendo y por error se pulsara la que corresponde a LED2, entonces el motor podría dañarse.
Para evitarlo yo utilizaba en otro sketch lo siguiente:
if ((digitalRead(pulsador1) == HIGH && (digitalRead(pulsador2) == LOW)){
digitalWrite(LED1,HIGH); y lo mismo con el otro pulsador.
El problema es que en este skecth es que al no trabajar con valores LOW Y HIGH me lio bastante y no sé como hacerlo.
Muchas gracias por tu atención.
Mira este código, he comentado las modificaciones, espero qeu te sirva :) si no entiendes algo dimelo:
#include "IRLremote.h"
const int interruptIR = 4; // Arduino LEONARDO interrupcion 4: Pin 7
const int LED1 = 8;
const int LED2 = 9;
uint8_t IRProtocol = 0; // Variables para recibir los datos
uint16_t IRAddress = 0;
uint32_t IRCommand = 0;
//esta variable es lo que te va a permitir saber si el motor está en funcionamiento:
bool motorOn = false; //inicialmente tiene valor false porque partimos del reposo
int led = 0;
int i;
void setup()
{
//LEDS
pinMode(8, OUTPUT);
pinMode(9, OUTPUT);
//leds apagados porque partimos del reposo
digitalWrite(8, LOW);
digitalWrite(9, LOW);
IRLbegin(interruptIR);
}
//verás que el codigo de la función loop es similar
void loop()
{
uint8_t oldSREG = SREG; // Parar las interrupciones
cli();
if (IRProtocol) // Si reconoce el protocolo
{
switch (IRCommand) {
case 0x4ab5: led = LED1; break; //1
case 0x0af5: led = LED2; break; //2
}
/************************************************************
esto es lo nuevo que he añadido:
(motorOn && digitalRead(led)==HIGH)
si el flag motorOn es true y la pulsación se corresponde
con el led iluminado significa que se ha presionado el
boton del mando correspondiente con el sentido del motor
en marcha por lo que se entra en el if para apagar el led
y dejar el flag con valor false, el motor se ha detenido
!motorOn
Si la condición anterior no se cumple se evalua esta, por
eso uso un or ( || ) en el if, si se cumple esta segunda
condición es que el motor está parado, entonces me da igual
el botón que se ha pulsado, se ejecuta el cuerpo del if y se
ilumina el led correspondiente y se pone el flag a true
*************************************************************/
if((motorOn && digitalRead(led)==HIGH) || !motorOn){
digitalWrite(led, !digitalRead(led));
motorOn=!motorOn; //le da al flag el valor opuesto al que tenga
}
/*******************************************************
*******************************************************/
IRProtocol = 0;
}
SREG = oldSREG;
}
//la interrupcion del IR es igual que la que expliqué en el video
void IREvent(uint8_t protocol, uint16_t address, uint32_t command)
{
IRProtocol = protocol; // Recogemos los valores y nos volvemos
IRAddress = address;
IRCommand = command;
}
Ok, muchisimas gracias. Voy a probar que tal funciona.
+Manuel Sanchez Martos vale, me cuentas si te sirve :)
Pero desconectalo él cable USB para ver tu resultado xq yo tengo un problema solo funciona cuando él cable USB esta conectado si es así no me sirve él skech
Muy bueno el tutorial....Graciass
Hola Tech Buen Video!
muchas gracias :)
como puedo contactarme con vos , tengo varios proyectos para desarrollar y veo que te sobra capacidad e inteligencia , si te interesa contestame
Hola, puedes hacer un tutorial de como hacer el control de relays con secuencia de tres en tres con ayuda de sensores ir.
Por ejemplo
Sensor 1 ir activa relay 1y 2
Sensor ir 2 activa relay 1,2,3
Sensor ir 3 activará a relay 2,3,4
Hasta el 10mo relay (litalmemte , después del primer sensor activará el relay correspondiente al sensor y uno siguiente y una anterior.
Yo ya intenté hacerlo, pero no sé que pasa. Al anexar el tercero me altera algo en el programa, haciendo que si mantengo señal en 2 programas(sensores) hay un relay que debería permanecer encendido pero en su lugar parpadea de forma intermitente.
Te comparto el código, que tengo al sensor 3 para que pueda ver lo que pasa.
int RELE1 = 2;
int RELE2 = 3;
int RELE3 = 4;
int RELE4 = 5;
const byte pinObstaculo1 = 53;
const byte pinObstaculo2 = 51;
const byte pinObstaculo3 = 49;
int hayObstaculo1 = HIGH;
int hayObstaculo2 = HIGH;
int hayObstaculo3 = HIGH;
void setup() {
// put your setup code here, to run once:
pinMode(RELE1,OUTPUT);
pinMode(RELE2,OUTPUT);
pinMode(RELE3,OUTPUT);
pinMode(RELE4,OUTPUT);
pinMode(pinObstaculo1, INPUT);
pinMode(pinObstaculo2, INPUT);
pinMode(pinObstaculo3, INPUT);
}
void loop() {
// put your main code here, to run repeatedly:
hayObstaculo1 = digitalRead (pinObstaculo1);
if( hayObstaculo1 == LOW){
digitalWrite(RELE1,LOW);
digitalWrite(RELE2,LOW);
delay(1000);
}
else{
digitalWrite(RELE1,HIGH);
digitalWrite(RELE2,HIGH);
digitalWrite(RELE3,HIGH);
}
hayObstaculo2 = digitalRead (pinObstaculo2);
if( hayObstaculo2 == LOW){
digitalWrite(RELE2,LOW);
digitalWrite(RELE1,LOW);
digitalWrite(RELE3,LOW);
delay(1000);
}
else{
digitalWrite(RELE2,HIGH);
digitalWrite(RELE1,HIGH);
digitalWrite(RELE3,HIGH);
}
hayObstaculo3 = digitalRead (pinObstaculo3);
if( hayObstaculo3 == LOW){
digitalWrite(RELE3,LOW);
digitalWrite(RELE4,LOW);
digitalWrite(RELE2,LOW);
delay(1000);
}
else{
digitalWrite(RELE3,HIGH);
digitalWrite(RELE4,HIGH);
digitalWrite(RELE2,HIGH);
}
}
podria hacer un tuto en donde podamos manejar IR, led, servomotores con mando a distancia co arduino uno
Hola que buen video , estoy desarrollando un proyecto en el cual leo una entrada analogica de arduino mega2560 conectada a un led receptor infrarrojo, y quiero temporizar la salida 11 pinout despues de leer el estado de A1analoginput, te paso el codigo,diculpa si no me explico bien
const int analogInPin = A1; // Pin analogico 1 para la lectura del Fototransistor
const int OutPin = 13; // Pin para el led indicador
const int OutPin1 = 11;
const int OutPin2 = 9;
int sensorValue = 0; // Inicializamos el valor del sensor
void setup() {
// Inicializamos la comunicacion serial a 9600 bps:
Serial.begin(9600);
pinMode(OutPin, OUTPUT);
pinMode(OutPin1, OUTPUT);
pinMode(OutPin2, OUTPUT);
}
void loop() {
// leemos el pin para y asignamos el valor a la variable.
sensorValue = analogRead(analogInPin);
// Si el valor obtenido es mayor a 900 se activa el LED
if(sensorValue <
200 )
{
digitalWrite(OutPin, HIGH );
}
else
{
digitalWrite(OutPin1, HIGH ); //despues de este comando tendria que integrar un timer
}
if(sensorValue >130)
{
digitalWrite(OutPin1,LOW );
}
// Imprimimos el valor en el monitor.
Serial.print("sensor = " );
Serial.println(sensorValue);
delay(300
);
a que te refieres con temporizar? que esté encendido un tiempo y se apague solo?
Hola, alguien sabe como evitar los rebotes de los pulsadores en este programa? Por favor...
Hola no me funciona el IRLbegin(digitalPinToInterrupt(IR));
Como podría generar un programa que controle el contador de un display de 7 segmentos que va de 0 a 15; el circuito contora con 3 botones, uno de arranque, uno de pausa y uno de paro.
a) El de arranque únicamente iniciara el contador (inicia en 0) .
b) El de pausa únicamente pausa y continúa el contador.
c) El de paro únicamente parara el contador en el número que se quede.
Me han preguntado a través de Facebook (facebook.com/TechKrowd) cómo podría hacer que el cuarto led parpadee pulsando el botón 5 del mando. Aquí os dejo el sketch modificado por si le interesa a alguien más mega.nz/#!ToRAjZyJ!4TfUl27Cm2uXlXqWwco7p0bGrZB3R5rRXl69Kmk3-90