Página 3 de 4 PrimerPrimer ... 234 ÚltimoÚltimo
Resultados 51 al 75 de 80
  1. #51
    Jiro está desconectado Forero
    Fecha de ingreso
    feb 2009
    Ubicación
    xxx
    Mensajes
    1.732

    Predeterminado 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

    - - - - - - - - - - - - - - - - - - -

    Cita Iniciado por bgi_ol Ver mensaje
    Uiiiii, este tema se me había escapado Jiro, si no te hubiera echado una mano antes.

    Tengo instalados unos cuantos chismes de estos por la casa, el que tengo en la FV hasta navidad funcionaba de conmutador red/inversor, es decir cuando la tensión bajaba de 24v conmutaba a Red y a funcionar hasta que las baterias estuvieran cargadas otra vez, el cambio tardaba unos 15 ms por lo que no tenia cortes, ademas controla y registra en un pequeño PC los datos que va tirando la instalación, para contar kw/h usé un contador viejo de ibertrola con un emisor de impulsos optico en el mismo disco, así controlo potencia instantanea y kw/h acumulados. Ahora con baterias nuevas (o casi), he cambiado la función y lo que hace es conectar un cargador externo de baterias cuando entra la tarifa nocturna y si bajan peligrosamente de carga, dentro de poco y gracias a la encomiable labor de nuestros mangan...digo...representantes arrancará algún motorcito para cargar cuando ande justito o toque dia de colada....
    Hoy voy a conectar el shunt de baterias para poder medir el SOC.
    Estos chismes dan para mucho sin cansarse, tengo otro controlando la caldera cerca de 4 años sin interrupción asi que tienes para rato.
    Si necesitas info ya sabes...
    Lo de la conmutación entre red y baterias con que lo haces ¿ con relés ?

  2. #52
    Avatar de Photon
    Photon está desconectado Moderador
    Fecha de ingreso
    jul 2006
    Ubicación
    Malaga
    Mensajes
    14.080
    Entradas de blog
    17

  3. #53
    bgi_ol está desconectado Forero
    Fecha de ingreso
    sep 2013
    Ubicación
    Bajo el sol de Murcia
    Mensajes
    47

    Predeterminado 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.

  4. #54
    Avatar de Photon
    Photon está desconectado Moderador
    Fecha de ingreso
    jul 2006
    Ubicación
    Malaga
    Mensajes
    14.080
    Entradas de blog
    17

    Predeterminado 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...

  5. #55
    bgi_ol está desconectado Forero
    Fecha de ingreso
    sep 2013
    Ubicación
    Bajo el sol de Murcia
    Mensajes
    47

    Predeterminado Re: ¿ Empezamos a trastear con Arduino ?

    Cita Iniciado por Photon Ver mensaje
    Hombre se entiende que esto no es para meterle tanto panel, pero que animal , al menos pondrías unas chuletitas...
    Salieron unas costillas de muerte...

    Se supone que los mosfets aguantaban 200A cada uno pero he visto en mi outback que tiene algo mas de superficie para disipar calor que la triste plancha de aluminio que le puse yo...de to se aprende...

  6. #56
    Jiro está desconectado Forero
    Fecha de ingreso
    feb 2009
    Ubicación
    xxx
    Mensajes
    1.732

    Predeterminado Re: ¿ Empezamos a trastear con Arduino ?

    Gracias Photon, pero eso es demasiado para mi. Por ahora me conformo con cosas mucho mas sencillitas.

    - - - - - - - - - - - - - - - - - - -

    Cita Iniciado por bgi_ol Ver mensaje
    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();

    }


    Por lo del i2c en teoria puedes conectar un montón de dispositivos en paralelo, cada uno con su dirección y listo.
    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

  7. #57
    bgi_ol está desconectado Forero
    Fecha de ingreso
    sep 2013
    Ubicación
    Bajo el sol de Murcia
    Mensajes
    47

    Predeterminado Re: ¿ Empezamos a trastear con Arduino ?

    Cita Iniciado por Jiro Ver mensaje
    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

    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.

    ¿ Empezamos a trastear con Arduino ?-image00.png

  8. #58
    Jiro está desconectado Forero
    Fecha de ingreso
    feb 2009
    Ubicación
    xxx
    Mensajes
    1.732

    Predeterminado 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

  9. #59
    bgi_ol está desconectado Forero
    Fecha de ingreso
    sep 2013
    Ubicación
    Bajo el sol de Murcia
    Mensajes
    47

    Predeterminado 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

  10. #60
    Jiro está desconectado Forero
    Fecha de ingreso
    feb 2009
    Ubicación
    xxx
    Mensajes
    1.732

    Predeterminado 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

  11. #61
    bgi_ol está desconectado Forero
    Fecha de ingreso
    sep 2013
    Ubicación
    Bajo el sol de Murcia
    Mensajes
    47

    Predeterminado Re: ¿ Empezamos a trastear con Arduino ?

    Cita Iniciado por Jiro Ver mensaje
    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
    Es exactamente eso, se pone a nivel alto las entradas del tipo drenador abierto, te encontraras muchas cosas así en este mundillo.

    Suerte.

  12. #62
    Jiro está desconectado Forero
    Fecha de ingreso
    feb 2009
    Ubicación
    xxx
    Mensajes
    1.732

    Predeterminado 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

  13. #63
    bgi_ol está desconectado Forero
    Fecha de ingreso
    sep 2013
    Ubicación
    Bajo el sol de Murcia
    Mensajes
    47

    Predeterminado Re: ¿ Empezamos a trastear con Arduino ?

    Cita Iniciado por Jiro Ver mensaje
    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
    Si el dispositivo que pones (rtc o display de los que llevan su placa con los pines) las lleva no tienes que ponerlas, ahora, si pones una memoria i2c (solo el chip) entonces si las necesitas pq las lineas tienen que estar a +5v para trabajar, esa es la idea.

  14. #64
    Invitado Invitado

    Predeterminado Re: ¿ Empezamos a trastear con Arduino ?

    Cita Iniciado por Jiro Ver mensaje
    La cuestión es que no entiendo el porque se ponen y poe ello no se cuando hay que ponerlas y cuando no.
    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.

    Cita Iniciado por Jiro Ver mensaje
    Por otra parte, no se porque me da que tengo un pin digital muerto
    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

  15. #65
    Jiro está desconectado Forero
    Fecha de ingreso
    feb 2009
    Ubicación
    xxx
    Mensajes
    1.732

    Predeterminado Re: ¿ Empezamos a trastear con Arduino ?

    Cita Iniciado por oxid Ver mensaje
    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
    Gracias por tu respuesta.

    Entonces por ese mismo motivo se pone una resistencia a GND en los pulsadores ?, para que si se nos olvida decir si es de salida o entrada, entre el nivel lógico 0/ LOW en vez de cualquier cosa rara ?

  16. #66
    Invitado Invitado

    Predeterminado 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 )

  17. #67
    Jiro está desconectado Forero
    Fecha de ingreso
    feb 2009
    Ubicación
    xxx
    Mensajes
    1.732

    Predeterminado 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

  18. #68
    bgi_ol está desconectado Forero
    Fecha de ingreso
    sep 2013
    Ubicación
    Bajo el sol de Murcia
    Mensajes
    47

    Predeterminado Re: ¿ Empezamos a trastear con Arduino ?

    Cita Iniciado por Jiro Ver mensaje
    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
    Nadie nace sabiendo, dale caña y ya veras como salen las cosas.

  19. #69
    Jiro está desconectado Forero
    Fecha de ingreso
    feb 2009
    Ubicación
    xxx
    Mensajes
    1.732

    Predeterminado Re: ¿ Empezamos a trastear con Arduino ?

    Ya, ya. En ello estoy, pero con poco tiempo para dedicarle

  20. #70
    bgi_ol está desconectado Forero
    Fecha de ingreso
    sep 2013
    Ubicación
    Bajo el sol de Murcia
    Mensajes
    47

    Predeterminado 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

  21. #71
    Jiro está desconectado Forero
    Fecha de ingreso
    feb 2009
    Ubicación
    xxx
    Mensajes
    1.732

    Predeterminado 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

  22. #72
    bgi_ol está desconectado Forero
    Fecha de ingreso
    sep 2013
    Ubicación
    Bajo el sol de Murcia
    Mensajes
    47

    Predeterminado Re: ¿ Empezamos a trastear con Arduino ?

    Cita Iniciado por Jiro Ver mensaje
    Esta perfecto, me lo enseñó hce unos días un amigo, pero no sirve para mi movil. Tengo un antiguo manzanófono 4
    Prueba con esto.

    El mejor emulador de Android en Windows - Descargar gratis

  23. #73
    Jiro está desconectado Forero
    Fecha de ingreso
    feb 2009
    Ubicación
    xxx
    Mensajes
    1.732

    Predeterminado 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.

  24. #74
    Jiro está desconectado Forero
    Fecha de ingreso
    feb 2009
    Ubicación
    xxx
    Mensajes
    1.732

    Predeterminado 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.

  25. #75
    bgi_ol está desconectado Forero
    Fecha de ingreso
    sep 2013
    Ubicación
    Bajo el sol de Murcia
    Mensajes
    47

    Predeterminado 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...

Página 3 de 4 PrimerPrimer ... 234 ÚltimoÚltimo



1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47