CAP2- Arduino , Shield CBOX y LCD

Tema en 'Tutorial Controlador' iniciado por jmcadsl, 8 Oct 2014.

  1. jmcadsl

    jmcadsl Miembro Honorífico

    Mensajes:
    852
    Registrado:
    17 Ene 2010
    Ubicación:
    España
    En este segundo capítulo voy a explicaros porque elegimos un arduino Mega, tambien os presentare mi placa shield CBOX y vamos a conectar la pantalla LCD la cual nos mostrará en un futuro toda la información que la pidamos.

    ¿Porque Arduino MEGA?
    Pues la verdad es que la respuesta es sencilla, bueno , bonito y barato, jejeje.
    Hace unos años cuando empezo el mundo de Arduino el tener un Arduino Mega era todo un lujo, era bastante caro y solo estaba pensado para grandes proyectos....
    Hoy en día el precio es mucho más asequible y debido a su gran cantidad de memoria y de puertos de entrada y salida se hace un compañero indispensable en casi todos los proyetos en los que no haya problemas de espacio, en los cuales se recurre a un arduino nano o similar.


    Shield aTreef C-Box
    Cuando comence con este proyecto fui probando poco a poco e integrando cada una de las funciones que vamos a desarrollar.....
    Al principio fue sencillo, 4 cables para el LCD, 1 resistencia para el boton, y 2 cables, otras tatas para el potenciometro, etc etc etc...llego un momento que era imposible saber donde iba cada cable y tenerlo medianamente ordenado para futuros cambios y/o ampliaciones.
    Luego utilice una screwshield que facilito las cosas, pero tampoco era lo que buscaba....
    screwshield.jpg

    Por este motivo me decidi a hacer una Shield (se llama shield "escudo" a una placa pcb que se monta encima del arduino cogiendo los contactos que necesitemos y a la vez tener espacio para instalar componentes (resistencias, condensadore, conectores etc etc) y que quede todo ordenado)
    La shield mide 10x10cm, un poco más que el propio Arduino mega, tiene un circuito para sonda de PH integrado, y salidas para sonda de temperatura, lcd i2c, reloj i2c ,humedad, boya, boton, potenciometro, 3 salidas PWM leds, 2 salidas a placas de 4 reles, 4 salidas para peristalticas 12v, 2 ventiladores 12v, led bicolor, buzzer...conector ICSP (wifi / tarjeta SD)
    Esta es una imagen con alguno de los componentes soldados....
    shield.jpg

    HARDWARE
    Conexión del LCD i2C
    Al utilizar la tecnología I2C vamos a tener que usar solo 4 cables, en lugar de los 12 necesarios con una pantalla LCD serial, y os aseguro que por el pequeño sobrecoste merece la pena, jejeje.
    Es muy sencillo, cable 0v , cable 5v (es la alimentación), y luego los datos mediante SDA y SCL (son los pines digitales 20 y 21 del Arduino Mega)
    conexionlcd.jpg

    Si utilizaramos la shield C-BOX lo conectaríamos en este conector:
    conexionlcdshield.jpg lcd.jpg

    SOFTWARE
    PROGRAMANDO LA PANTALLA
    Ok, si ahora enchufamos el arduino al puerto USB, vamos a ver que la pantalla se enciende pero no muestra caracteres...es normal, aun no le hemos dicho al Arduino que tiene una pantalla y que queremos usarla.
    El código para usar la pantalla es el siguiente:
    Insertar CODE, HTML o PHP:
    //CAP2. Tutorial aTreef CBOX (LCD)
    #include <Wire.h> 
    #include <LiquidCrystal_I2C.h>// Debemos instalar la libreria LiquidCrystal_I2C en la carpeta "libraries" del arduino IDE
    
    LiquidCrystal_I2C lcd(0x27,16,2);  // direccion i2c del LCD y columnas,lineas
    void setup()
    {
      lcd.init();//Inicializamos el LCD
      lcd.backlight();//Encendemos la luz
      lcd.print(" CAP2. TUTORIAL");
      lcd.setCursor(0,1);//Pasamos a la segunda linea(1), y al caracter 0
      lcd.print("  aTreef C-BOX");
    }
    
    void loop()
    {
    }
    Si todo ha ido bien deberias ver esto:
    prog.jpg
    Ánimo!!!
    Jorge.
     
    Última edición: 30 Oct 2014
  2. Ruba

    Ruba

    Mensajes:
    22
    Registrado:
    28 May 2010
    Ubicación:
    Espeña
    Estoy encantado amigo...

    Solo te agradecería a ver si nos puedes explicar qué es cada módulo... Shield aTreef C-Box ???? Eso que e lo que eeeee!!!

    Porfi... que soy un gañán!!

    Gracias.
     
  3. jmcadsl

    jmcadsl Miembro Honorífico

    Mensajes:
    852
    Registrado:
    17 Ene 2010
    Ubicación:
    España
    Gracias Ruba!

    A ver tratare de explicar de otra manera lo de los módulos.
    El Arduino Mega digamos que es el ordenador central....eso hay que usarlo si o si.
    Por otro lado vamos a ir incorporando diferentes "módulos" que nos ayudarán a completar nuestro controlador...algo así como teclado, monitor, raton etc,etc a un ordenador...

    Pues bien , el Shield C-Box es una placa de conexiones que facilita la unión de todos estos módulos con el Arduino.
    No es imprescindible, pero facilita bastante el montaje (sobretodo para aquellos usuarios que vayan a montar todas o casi todas las opciones que ofrece).
    Evidentemente si solo se va a utilizar para controlar la pantallaled o solo para relleno de agua....pues entonces no hace falta la ayuda del Shield C-Box.

    Espero que este más claro ahora...jejeje

    Un saludo.
     
    A Jmd le gusta esto.
  4. jvsc87

    jvsc87

    Mensajes:
    183
    Registrado:
    11 Mar 2014
    Ubicación:
    Santa Cruz de Tenerife
    Me interesa mucho el Shield C-Box, ¿donde se puede conseguir?
     
  5. jordiet45

    jordiet45

    Mensajes:
    103
    Registrado:
    22 Ago 2013
    Ubicación:
    igualada
    Al final de todo, cuanto vale el controlador?(contando piezas, cable.. Etc)
     
  6. jmcadsl

    jmcadsl Miembro Honorífico

    Mensajes:
    852
    Registrado:
    17 Ene 2010
    Ubicación:
    España
    Hola jvsc87, pues al ser una placa que he diseñado yo para este fin no se encuentra en tiendas etc etc....como dije antes, al fabricarla me "obligaban" a hacer varias asi que cuento con algunas disponibles, si alguien está interesado que me mande un privado para no imcumplir las normas del foro.
    Un saludo.


    Esa es una buena pregunta jordiet45.....yo la verdad es que si sumo todo lo que he comprado haciendo pruebas etc etc me da un jamacuco :yb664[1]: jajaja, pero creo que puede salir , con todas las funcionalidades por unos 200€ más o menos.....luego depende de loque implemente cada uno...por ejemplo, el módulo Wifi son unos 50€, y si no lo vas a utilizar pues eso que te ahorras... (ya veremos que "de momento" lo que hace es enviar informacion del estado del controlador a una web, para poder verlo con el movil o en el ordenador, asi que tampoco es algo "necesario")
    Realmente el "objetivo" con este tipo de controladores no es ahorrar dinero.....es algo asi como un hobby...hacer un controlador a medida de tus necesidades, modificarlo/mejorarlo poco a poco etc etc...y eso...."no tiene precio" jajaja.
    Un saludo.
     
  7. mateo69

    mateo69

    Mensajes:
    58
    Registrado:
    10 Jun 2012
    Ubicación:
    mataro
    ya estoy esperando el siguiente capítulo de la saga
    yo tengo la pantalla de mas cables
    lo intentaré con esta y si no me pillare una como la tuya
    la verdad esque tengo curiosidad por el tema de los menus con un solo boton siempre crei q se utilizaban cuatro de direciones y el de confirmacion
    se q es mucho pedir pero podrias poner un video demostrativo de tu cbox

    ante todo darte las gracias por compartir con todos nosotros
     
  8. jmcadsl

    jmcadsl Miembro Honorífico

    Mensajes:
    852
    Registrado:
    17 Ene 2010
    Ubicación:
    España
    Pues en breve sale en el kisoco jejeje...
    Respecto al lcd no debería haber problemas , pero es MUY recoemndable por el cableado el I2C, a parte que tambien podrás apagar la luz del lcd por las noches ya que integra una funcion para ello (con el Serial tendrías que cablear otra salida para alimentar la retoriluminación del lcd y poder apagarlo/endenderlo...)

    En el siguiente capitulo veremos lo de los menús, es con 1 boton y 1 potenciometro....pondré un pequeño video del controlador ok...

    Salu2
     
  9. vurkolak

    vurkolak

    Mensajes:
    295
    Registrado:
    8 Sep 2012
    Ubicación:
    Badalona
    jmcadsl

    buenas compañero por casualidad tienes los esquemas de la c-box los podrias pasar?? di no es mucha molestia??

    gracias


    Enviado desde mi iPhone con Tapatalk
     
  10. jmcadsl

    jmcadsl Miembro Honorífico

    Mensajes:
    852
    Registrado:
    17 Ene 2010
    Ubicación:
    España
    Buenas !!
    Pues la verdad es que un esquema electrico como tal no tengo...
    A ver si esto te puede servir....
    esquema.png

    La parte más "compleja" es la lectura de la sonda de PH, abajo a la izquierda y de esa si tengo un esquema de donde lo cogí para esta placa, es este:
    PH.png

    Luego arriba a la izquierda esta el LM324 que pasa la señal PWM de 0-5 para los leds a 0-10v y en el centro un transistor de 5 canales para las peristalticas y ventiladores....el resto es muy sencillo como verás.

    De todas maneras en cada capitulo voy poniendo los esquemas de montaje y los materiales necesarios....

    Un saludo.
     
  11. dem365

    dem365

    Mensajes:
    88
    Registrado:
    27 Dic 2008
    Ubicación:
    españa
    empiezo mal..... Soy incapaz de que me salga nada en la pantalla. Cual es exactamente la libreria del lcd??....................SOLUCIONADO, ERRE DE LIBRERIA
     
    Última edición: 25 Oct 2014
  12. Ruba

    Ruba

    Mensajes:
    22
    Registrado:
    28 May 2010
    Ubicación:
    Espeña
    Un detallín para que tengáis en cuenta y no os pase lo que a mí.

    Por seguir todo tan al pie de la letra y pese a que no me cuadraba, hice la conexion del display al shield como detallo el maestro Jorge, y hay un pequeño fallo. En el dibujo los cables están en el display amarillo-rojo-verde-azul y en el shield están amarillo-rojo-azul-verde, y estos dos últimos contrastando con el montaje de DEM, hay que cambiarlos y que tengan el mismo orden de colores.

    Un abrazoooo!!
     
  13. jmcadsl

    jmcadsl Miembro Honorífico

    Mensajes:
    852
    Registrado:
    17 Ene 2010
    Ubicación:
    España

    Buen apunte Ruba!!!
    Ya lo he modificado en el post original.
    Saludos
     
  14. dedete32

    dedete32

    Mensajes:
    127
    Registrado:
    19 Nov 2010
    Ubicación:
    España
    Hola jmcadsl, soy nulo perdido...que depresión...

    Intento cargar el progrma par la pantalla y me sale este error:

    sketch_jan25a.cpp:3:122: error: LiquidCrystal_I2C.h: No such file or directory
    sketch_jan25a:4: error: 'LiquidCrystal_I2C' does not name a type
    sketch_jan25a.cpp: In function 'void setup()':
    sketch_jan25a:7: error: 'lcd' was not declared in this scope
    Que pasa?

    Creo que para los que vamos tan justos como yo, ha faltado un capitulo 0 sobre como organizar las carpetas en el ordenador para que las encuentre el arduino, y que recursos como por ejemplo las librerias debemos usar,... no se si me explico porque creo que el error mio viene de ahi si no me equivoco.

    EDITO:

    Se trataba de un problema en las librerias parece que ya funciona :yb635[1]:
     
    Última edición: 25 Ene 2015
  15. jmcadsl

    jmcadsl Miembro Honorífico

    Mensajes:
    852
    Registrado:
    17 Ene 2010
    Ubicación:
    España
    Genial! ! Animo y paciencia. ...
     
  16. jomco

    jomco

    Mensajes:
    62
    Registrado:
    8 Nov 2013
    Ubicación:
    España

    Hola no paro de tener problemas despues de ir por el capitulo del reloj la pantalla dejo de encender y tras varias semanas esperando que me llegue la nueva la enchufo empiezo desde el principio y me sale un error al copilar que so se que significa. Tambien tuve que formatear el ordenador y no se si ese es el problema. Te pego el Error y si puedes me cuentas.

    This report would have more information with "Show verbose output during compilation"
    enabled in File > Preferences.
    Arduino: 1.0.6 (Windows 7), Board: "Arduino Mega 2560 or Mega ADK"
    In file included from sketch_dec08c.ino:3:
    C:\Users\Jomco Portátil\Documents\Arduino\libraries\LiquidCrystal_I2C_V1.0/LiquidCrystal_I2C.h:80: error: conflicting return type specified for 'virtual void LiquidCrystal_I2C::write(uint8_t)'
    C:\Program Files (x86)\Arduino\hardware\arduino\cores\arduino/Print.h:48: error: overriding 'virtual size_t Print::write(uint8_t)'

    Saludos y Gracias
     
  17. jomco

    jomco

    Mensajes:
    62
    Registrado:
    8 Nov 2013
    Ubicación:
    España
    Ya esta solucionado problemas con la libreria, imagino que la descargue de un sitio que no vale.
     
  18. jmcadsl

    jmcadsl Miembro Honorífico

    Mensajes:
    852
    Registrado:
    17 Ene 2010
    Ubicación:
    España
    Genial!!
    A seguir avanzando!!
     
  19. manuce

    manuce

    Mensajes:
    132
    Registrado:
    8 Sep 2010
    Ubicación:
    Estepa
    hola, tengo una pantalla que es 20x4 y me da error por que el interfaz de esa pantallano la tengo en la libreria, como lo puedo hacer, gracias por todo.
     
  20. jmcadsl

    jmcadsl Miembro Honorífico

    Mensajes:
    852
    Registrado:
    17 Ene 2010
    Ubicación:
    España