Resultados 51 al 75 de 80
- 10/01/2014, 09:55 #51Forero
- Fecha de ingreso
- feb 2009
- Ubicación
- xxx
- Mensajes
- 1.732
Re: ¿ Empezamos a trastear con Arduino ?
Que alegría encontrar a alguien por aquí que entienda de estos chismes que me tienen loco con el control de tiempos y lo de hacer varias tareas a la vez.
Estoy practiando un poco la programación y menudo lío hacer que encienda un led intermitentemente un tiempo X con una frecuencia de parpadeo de Y mílisegundos sin delay. Al final le tuve que poner un delay(1) para que funcionara. Creo que cambiaré la función a microsegundos para poder quitarle ese delay de 1 mílisegundo.
No se si es que he empezado por algo que es difícil.
Ayer me puse con una LCD 1602 y me tuvo liado porque venía que la dirección era la 0x20 y resultó ser la 0x27. La primra vez es muy complicado porque no sabes ni colocar una librería en su sitio. Luego ya es mas fácil. Anoche conseguí que funcionara.
Siguiente reto, que funcione un reloj de tiempo real con I2C que no se si puedo conectar en el arduino leonardo 2 I2C a la vez
- - - - - - - - - - - - - - - - - - -
Lo de la conmutación entre red y baterias con que lo haces ¿ con relés ?
-
-
Re: ¿ Empezamos a trastear con Arduino ?
Os dejo unas webs con las que avanzar como locos:
timnolan - Arduino PPT Solar Charger
Free Charge Controller wiki
Introducing the v4 Charge Controller | thesolarpowerexpert.com
- 10/01/2014, 10:37 #53Forero
- Fecha de ingreso
- sep 2013
- Ubicación
- Bajo el sol de Murcia
- Mensajes
- 47
Re: ¿ Empezamos a trastear con Arduino ?
Hola Jiro.
La verdad es que el control de tiempos es jodidillo, yo reuso este trozo de codigo en todos mis programas:
Asi la función int1s() se ejecuta cada segundo independientemente de lo que haga el resto del programa, es muy util.
void actSegundo()
{
currentMillis = millis();
if(currentMillis - previousMillis > interval) {
// Espera a que pase un segundo
previousMillis = currentMillis;
segundo++;
int1s();
}
Los lcds en i2c a mi me han dado tanta guerra que al final los conecto con sus cables de datos en paralelo, como toda la vida, solo en algún proyecto que me han faltado salidas los pongo en I2c.
Por lo del i2c en teoria puedes conectar un montón de dispositivos en paralelo, cada uno con su dirección y listo.
La conmutación la hago con dos contactores con enclavamiento mecánico, en realidad es un viejo inversor de giro de motores trifasicos, el enclavamiento mecanico le salva la vida a el inversor en caso de cuelgue/bug del arduino, si no fuera por eso...
Para las temperaturas yo uso los dallas DS18B20, van en bus y con un pin del arduino conectas 15 o 20 sin problemas, yo los he probado con 100 mtrs de cable sin apantallar y chutan.
- - - - - - - - - - - - - - - - - - -
Gracias Photon, en su dia lo intenté con un cargador parecido cojiendo cosillas de estas y otras paginas, al principio funcionó pero cuando salio el sol de verdad mis 2200wp mandarón todo el equipo al cielo humeante de los semiconductores, al final compre un outback y con mas tiempo mejoraré el diseño.
Cuando se llegan a ciertas intensidades todo se complica, cualquier resistencia por pequeña que sea es un punto caliente y tienes que andar con mucho ojo o tendras humo de muchos colores.
-
Re: ¿ Empezamos a trastear con Arduino ?
Hombre se entiende que esto no es para meterle tanto panel, pero que animal , al menos pondrías unas chuletitas...
- 10/01/2014, 12:15 #55Forero
- Fecha de ingreso
- sep 2013
- Ubicación
- Bajo el sol de Murcia
- Mensajes
- 47
- 10/01/2014, 13:08 #56Forero
- Fecha de ingreso
- feb 2009
- Ubicación
- xxx
- Mensajes
- 1.732
Re: ¿ Empezamos a trastear con Arduino ?
Gracias Photon, pero eso es demasiado para mi. Por ahora me conformo con cosas mucho mas sencillitas.
- - - - - - - - - - - - - - - - - - -
Me miraré despacio esa funcion, pero te agadecería un ejemplo con el código completo y que haga algo sencillo ya que no la termino de entender. Imagino que la realiza cada "interval" siempre que no haya delays por ninguna parte del programa ( o esos delays sean menores de ese interval) . En el void loop que haces ¿ llamas a actSegundo y ese se realizará cada interval ?
Ponme un pequeño ejemplo práctico para que lo entienda mejor. Gracias
Lo de conectar varios I2C, como lo hago si mi placa de leonardo solo tiene un pin SDA y otro SDL
- 10/01/2014, 13:45 #57Forero
- Fecha de ingreso
- sep 2013
- Ubicación
- Bajo el sol de Murcia
- Mensajes
- 47
Re: ¿ Empezamos a trastear con Arduino ?
Lo saque del propio ide de arduino en Menu File>Examples>2.Digital>BlinkWithoutDelay, Tienes el sketch completo, pero basicamente es como dices en loop llamas constantemente a actSegundo y cuando se cumpla un interval haces lo que quieras, mandas el hilo a int1s() o lo que sea.
Yo uso la version del ide 0022, es la mas estable y para la mayor parte de las cosas te vale.
El I2C es un bus paralelo, es decir se conectan los SDA y los SCL de todos los dispositivos juntos y se comunican llamando a la dirección de cada dispositivo.
- 11/01/2014, 17:36 #58Forero
- Fecha de ingreso
- feb 2009
- Ubicación
- xxx
- Mensajes
- 1.732
Re: ¿ Empezamos a trastear con Arduino ?
Muchas gracias.
Conectados 2 I2C a la vez y funcionando a la vez el lcd y el reloj de tiempo real, pero yo no he puesto esas resistencias ¿ para que son esas resistencias ?
Graciassssssssssssssss
Seguimos haciendo pruebas
- 11/01/2014, 18:53 #59Forero
- Fecha de ingreso
- sep 2013
- Ubicación
- Bajo el sol de Murcia
- Mensajes
- 47
Re: ¿ Empezamos a trastear con Arduino ?
Eso son resistencias pull-up, ponen a +5v las lineas de datos y luego cada dispositivo se encarga de poner la linea a masa cuando lanza datos. Los rtc y los display ya suelen llevarlas por lo que en montajes pequeños no deben preocuparte.
Enviado desde mi GT-I9100 mediante Tapatalk
- 11/01/2014, 19:23 #60Forero
- Fecha de ingreso
- feb 2009
- Ubicación
- xxx
- Mensajes
- 1.732
Re: ¿ Empezamos a trastear con Arduino ?
Vale, osea son resistencias como las que pongo yo cuando pongo un pulsador, un dip o cosas de esas ¿ no ?
Ya pulso una tecla y salen opciones de un menu. Esto es un vicio, cuando vez que algo sale. Lo dejo por hoy
- 12/01/2014, 20:21 #61Forero
- Fecha de ingreso
- sep 2013
- Ubicación
- Bajo el sol de Murcia
- Mensajes
- 47
- 12/01/2014, 22:03 #62Forero
- Fecha de ingreso
- feb 2009
- Ubicación
- xxx
- Mensajes
- 1.732
Re: ¿ Empezamos a trastear con Arduino ?
La cuestión es que no entiendo el porque se ponen y poe ello no se cuando hay que ponerlas y cuando no.
Por otra parte, no se porque me da que tengo un pin digital muerto
- 12/01/2014, 22:35 #63Forero
- Fecha de ingreso
- sep 2013
- Ubicación
- Bajo el sol de Murcia
- Mensajes
- 47
Re: ¿ Empezamos a trastear con Arduino ?
- 13/01/2014, 13:08 #64Invitado Invitado
Re: ¿ Empezamos a trastear con Arduino ?
Básicamente, los Pull-Ups o resistencias al +5V o +3v3 se ponen para asegurar el nivel lógico al pin si este quedara deshabilitado como salida ( luego queda como entrada), y un pin digital en modo 'entrada' sin conexión activa, si se quedara a media tensión podría o capturar mucho ruido eléctrico o interferencias, o ponerse a consumir bastantes mA por encontrarse fuera del rango del nivel lógico 1 o 0.
Por otra parte, creo que en la mayoría de dispositivos I2C, el SDA ( dato ) son de configuración 'drenador abierto', tal como bien comenta el compañero bgi_ol, eso significa que el dispositivo nos marcará el 0 lógico con el drenador cuando toque, pero el 1 lógico lo marcará la resistencia de pull-up, cuando el drenador no actue. Luego es importantísimo ponerlo, normalmente yo los suelo poner el la placa de la CPU.
Para solventar el problema, intenta mirar en el esquemático que funcionalidad tiene ese pin, si tienes configurado algún periférico que utilice ese pin, tipo SPI o UART, es posible que anule la configuración respecto el modo de salida o entrada. También puedes verificar con una lupa que no tenga cortocircuitos con algun pin de al lado ( algo posible con encapsulados tipos QFN, flat-pack, etc). Si tuviera cortocircuito con algun pin de al lado, cambiando de estado esos pines si son de salida o leyendo su estado si son de entrada, a veces se ve de donde viene el problema.
Saludos
- 13/01/2014, 13:24 #65Forero
- Fecha de ingreso
- feb 2009
- Ubicación
- xxx
- Mensajes
- 1.732
- 13/01/2014, 13:39 #66Invitado Invitado
Re: ¿ Empezamos a trastear con Arduino ?
bueno, si, si así lo entiendes mejor. Se puede trabajar con pull-up ( a Vcc) o con pull-down a Gnd, sólo es cuestión de que el programa interprete el nivel activo adecuado.
ejemplo:
if ( PinPortb.5 )
Accion(); // .. con resistencia pull-down ( el pulsador lo pone a 1)
...
if ( ! PinPortb.5)
Accion(); //.. con resistencia pull-up ( el pulsador lo pone a 0 )
- 14/01/2014, 12:26 #67Forero
- Fecha de ingreso
- feb 2009
- Ubicación
- xxx
- Mensajes
- 1.732
Re: ¿ Empezamos a trastear con Arduino ?
Ok.
Entendido.
La verdad es que me esta costando mucho porque es programacion a bajo nivel y lo que yo conocía era de alto nivel. No conozco bien como trabaja internamente y muchas cosas no las entiendo. Tampoco conozco el lenguaje C
- 14/01/2014, 19:00 #68Forero
- Fecha de ingreso
- sep 2013
- Ubicación
- Bajo el sol de Murcia
- Mensajes
- 47
- 14/01/2014, 21:57 #69Forero
- Fecha de ingreso
- feb 2009
- Ubicación
- xxx
- Mensajes
- 1.732
Re: ¿ Empezamos a trastear con Arduino ?
Ya, ya. En ello estoy, pero con poco tiempo para dedicarle
- 15/01/2014, 08:53 #70Forero
- Fecha de ingreso
- sep 2013
- Ubicación
- Bajo el sol de Murcia
- Mensajes
- 47
Re: ¿ Empezamos a trastear con Arduino ?
Esto te puede ir muy bien para las cosas basicas.
https://play.google.com/store/apps/d...ttronica&hl=es
- 15/01/2014, 09:36 #71Forero
- Fecha de ingreso
- feb 2009
- Ubicación
- xxx
- Mensajes
- 1.732
Re: ¿ Empezamos a trastear con Arduino ?
Esta perfecto, me lo enseñó hce unos días un amigo, pero no sirve para mi movil. Tengo un antiguo manzanófono 4
- 15/01/2014, 11:19 #72Forero
- Fecha de ingreso
- sep 2013
- Ubicación
- Bajo el sol de Murcia
- Mensajes
- 47
Re: ¿ Empezamos a trastear con Arduino ?
Prueba con esto.
El mejor emulador de Android en Windows - Descargar gratis
- 16/01/2014, 23:24 #73Forero
- Fecha de ingreso
- feb 2009
- Ubicación
- xxx
- Mensajes
- 1.732
Re: ¿ Empezamos a trastear con Arduino ?
Pequeños avances.
Ya tengo un menú de un nivel funcionando correctamente. Ahora voy a por el nivel 2 que es mas complicadillo.
Gracias por el enlace anterior, cuando avance con esto del menú, le echaré un vistazo.
- 19/01/2014, 23:21 #74Forero
- Fecha de ingreso
- feb 2009
- Ubicación
- xxx
- Mensajes
- 1.732
Re: ¿ Empezamos a trastear con Arduino ?
Bueno. Avanzando en el menú multinivel. Después de un montón de horas pegandome con la programación parece que estoy consiguiendo sacar un menú multinivel muy flexible. He empezado varias veces de cero porque salían programas largos, complicados y al final me fallaban en algunos puntos. Parece que ahora he hecho una programación mas sencilla y fácil de entender. Aun no esta terminado, pero apunta a que va a quedar muy bien. Seguimos aprendiendo poco a poco.
- 21/01/2014, 09:48 #75Forero
- Fecha de ingreso
- sep 2013
- Ubicación
- Bajo el sol de Murcia
- Mensajes
- 47
Re: ¿ Empezamos a trastear con Arduino ?
Poco a poco.
Los mayores problemas los encontraras en adaptar las señales que quieres monitorizar, creo que ya conoces el divisor de tensión, pues esa es la parte facil, ahora estoy trabajando en el shunt de bateria y es algo lioso, la señal que envia es 60mv/100A por lo que tiene que ser amplificada antes de enviarla al arduino o no tendras mas que ruido, la solución pasa por el amplificador operacional pero solo me enviaria señal en un sentido de la corriente, asi que voy a poner dos de ellos, uno en cada sentido y a ver que pasa...