CNC Control

Firmware => Incidencias => Mensaje iniciado por: juanpintom en Abril 22, 2014, 01:25:53 am

Título: [SOLUCIONADO] Configuracion LCD
Publicado por: juanpintom en Abril 22, 2014, 01:25:53 am
Hola, he encontrado algun problema para conectar mi modulo LCD con el adaptador I2C y lo he conseguido resolver, no se bien si esto es una incidencia o un tutorial, pero en todo caso queria compartirlo por si alguien mas tiene problemas para conectar su LCD

He tenido que modificar la linea 65 de CNC.ino:

Código: [Seleccionar]
LiquidCrystal_I2C lcd(0x27);      // Set the LCD I2C address
El caso es que el orden de los pines en el caso de mi LCD es diferente, asi que no me funcionaba correctamente, para ello la libreria permite definirlos en el orden correcto, he cogido el ejemplo directamente del maestro fm =) quedaria asi en mi caso:

Código: [Seleccionar]
  #define I2C_ADDR    0x27  // Define I2C Address where the LCD is
  #define BACKLIGHT_PIN     3
  #define En_pin  2
  #define Rw_pin  1
  #define Rs_pin  0
  #define D4_pin  4
  #define D5_pin  5
  #define D6_pin  6
  #define D7_pin  7

  LiquidCrystal_I2C lcd(I2C_ADDR,En_pin,Rw_pin,Rs_pin,D4_pin,D5_pin,D6_pin,D7_pin);

Tambien he tenido que modificar la activacion del Backlight, ya que de esta forma no es necesario un pin fisico para encender el LCD.
Las lineas 105 y 106 de CNC.ino eran asi:
Código: [Seleccionar]
pinMode ( LCD_BL_PIN, OUTPUT );
   digitalWrite ( LCD_BL_PIN, HIGH );

quedarian asi:

Código: [Seleccionar]
lcd.setBacklightPin(BACKLIGHT_PIN,POSITIVE);
lcd.setBacklight(HIGH);

Por otro lado, si alguien tiene problemas para saber el I2C Address aqui un sketch para identificarlo:

Código: [Seleccionar]
// --------------------------------------
// i2c_scanner
//
// This program (or code that looks like it)
// can be found in many places.
// For example on the Arduino.cc forum.
// The original author is not know.
//
// This sketch tests the standard 7-bit addresses
// from 0 to 127. Devices with higher bit address
// might not be seen properly.
//
// Adapted to be as simple as possible by Arduino.cc user Krodal
//
// June 2012
// Using Arduino 1.0.1
//

#include <Wire.h>


void setup()
{
  Wire.begin();

  Serial.begin(9600);
  Serial.println("\nI2C Scanner");
}


void loop()
{
  byte error, address;
  int nDevices;

  Serial.println("Scanning...");

  nDevices = 0;
  for(address = 0; address <= 127; address++ )
  {
    // The i2c_scanner uses the return value of
    // the Write.endTransmisstion to see if
    // a device did acknowledge to the address.
    Wire.beginTransmission(address);
    error = Wire.endTransmission();

    if (error == 0)
    {
      Serial.print("I2C device found at address 0x");
      if (address<16)
        Serial.print("0");
      Serial.print(address,HEX);
      Serial.println(" !");

      nDevices++;
    }
    else if (error==4)
    {
      Serial.print("Unknow error at address 0x");
      if (address<16)
        Serial.print("0");
      Serial.println(address,HEX);
    }   
  }
  if (nDevices == 0)
    Serial.println("No I2C devices found\n");
  else
    Serial.println("done\n");

  delay(8000);           // wait 8 seconds for next scan
}

Salu2
Título: Re:[SOLUCIONADO] Configuracion LCD
Publicado por: ngc1300 en Abril 22, 2014, 06:56:24 am
ok, gracias, yo no tengo LCD con lo que no puedo probarlo cuando saco las nuevas versiones.

Un saludo
Título: Re:[SOLUCIONADO] Configuracion LCD
Publicado por: soko en Abril 22, 2014, 09:39:08 am
Hola Juan,

Me interesa el tema pues tengo varios LCD 2X16 por casa, podrías poner alguna foto de que tipo de LCD usas, como funciona y que datos muestra??

Gracias!!!   :D
Título: Re:[SOLUCIONADO] Configuracion LCD
Publicado por: juanpintom en Abril 22, 2014, 12:03:16 pm
ngc no dudes en pedir testers :)

Lo que he montado es un LCD de 16x2 de los baratos y un modulo para conectarlo unicamente utilizando 2 cables, el Pinout de mis pantallas es el siguiente:

http://www.engineersgarage.com/sites/default/files/Lcd_0.jpg?1281348608

Aqui los enlaces de ebay (precio total 2.69€)
http://www.ebay.es/itm/1PCS-1602-16x2-HD44780-Character-LCD-Display-Module-LCM-blue-blacklight-NEW-D1-/221346875024?pt=LH_DefaultDomain_0&hash=item33894d4690&_uhb=1
http://www.ebay.es/itm/261324523419?ssPageName=STRK:MEWNX:IT&_trksid=p3984.m1439.l2649

Por ahora, a falta de mas pruebas, muestra en el LCD la version de firmware instalada y luego queda mostrando los valores X Y Z y FR. Imagino que conectando sensores de temperatura se mostrarian. Se me ocurre tambien poder mostrar el tiempo que lleva y el tiempo que queda.

Y lo que ya seria un bombazo es añadir un lector SD, unos botones y hacer la maquina independiente del pc.

Un saludo
Título: Re:[SOLUCIONADO] Configuracion LCD
Publicado por: soko en Abril 22, 2014, 12:56:23 pm
Tengo exactamente los mismos componentes que tu, asi que también caera el modulo LCD  ;D :D

A mi con que muestre el porcentaje de velocidad actual (que en la nueva versión se va a poder variar desde un potenciometro o desde soft segun quiera NGC) y la potencia PWM del laser.......pero estamos hablando de mostrar mucho para un simple lcd de 2X16.

Lo de que sea autónoma, ya se esta tratando en varios hilos:

http://cnccontrolapp.com/smf/index.php?topic=158.msg1290#msg1290 (http://cnccontrolapp.com/smf/index.php?topic=158.msg1290#msg1290)

Pero al final no se puede hacer todo....asi que iremos poco a poco, sobre todo por NGC!!!! :)


Título: Re:[SOLUCIONADO] Configuracion LCD
Publicado por: juanpintom en Abril 22, 2014, 04:12:31 pm
Realmente muestra los datos bastante bien, ya que va cambiando entre diferentes "pantallas" y muestra todos los datos, en mi caso muestra en la segunda linea del LCD :
X: 0.00 Y 0.00
Luego se quita y aparece:
Z: 0.00 Y FR:2500

Asi que seria perfectamente viable mostrar despues los otros datos, o cambiar a una pantalla de 20x4, e incluso a la TFT que haces referencia en el otro post.

Genial la idea de hacerla "autonoma" obviamente hay que ir poco a poco y aportando en funcion de nuestras posibilidades mejoras y si puede ser aportar con ideas ya desarrolladas.

Un saludo, seguire el otro post :)
Título: Re:[SOLUCIONADO] Configuracion LCD
Publicado por: rego en Abril 22, 2014, 04:41:02 pm
pero si se le pone una pantalla de 20X4 seria mejor no?? y si se le pone la pantalla que hay de botoncitos se podria hacer que seleccionaras tu la pantalla que necesites??
Título: Re:[SOLUCIONADO] Configuracion LCD
Publicado por: ngc1300 en Abril 22, 2014, 05:11:49 pm
Como dice soko el tema de que sea autónoma se esta tratando en otros hilos, si queréis podéis crear un hilo especifico para este tema, así no se habla en varios hilos, pero hay que tener en cuenta las limitaciones del arduino que ha veces ya le cuesta mover los motores.
Título: Re:[SOLUCIONADO] Configuracion LCD
Publicado por: juanpintom en Abril 22, 2014, 05:27:31 pm
En principio no creo que haya problema para configurar una pantalla de 20x4, puedo encargarme de revisar como se muestran los datos desde el firmware, de hecho el mismo ejemplo que he puesto, pero inicializando la lcd como 20,4 ya muestra los datos, solo que no utilizara la 3a y 4a linea, cosa facilmente puedo en el firmware. Lo malo es que no tengo una LCD 20X4 para probarlo, pero vaya, si alguien la tiene podemos desarrollarlo.

ngc ya he posteado en el otro post, zanjamos el tema "autonomo" en este post y llegado el momento en que me pueda liar con ello abrire uno especifico.  =B

Salu2
Título: Re:[SOLUCIONADO] Configuracion LCD
Publicado por: soko en Abril 22, 2014, 05:52:07 pm
Hola Juan,

Ya he buscado el LCD y el adaptador serial, y por suerte son clavados, he modificado del CNC.ino:

Código: [Seleccionar]
LiquidCrystal_I2C lcd(0x27);      // Set the LCD I2C address   

Y cambiado:

Código: [Seleccionar]
pinMode ( LCD_BL_PIN, OUTPUT );
   digitalWrite ( LCD_BL_PIN, HIGH );

Por:

Código: [Seleccionar]
lcd.setBacklightPin(BACKLIGHT_PIN,POSITIVE);
lcd.setBacklight(HIGH);

Pero donde pones de modificar esto.....no lo encuentro por ningun lado....

Código: [Seleccionar]
  #define I2C_ADDR    0x27  // Define I2C Address where the LCD is
  #define BACKLIGHT_PIN     3
  #define En_pin  2
  #define Rw_pin  1
  #define Rs_pin  0
  #define D4_pin  4
  #define D5_pin  5
  #define D6_pin  6
  #define D7_pin  7

  LiquidCrystal_I2C lcd(I2C_ADDR,En_pin,Rw_pin,Rs_pin,D4_pin,D5_pin,D6_pin,D7_pin);

Me podrias aclarar donde se cambia???

Despues en la parte del configme.h, no has modificado estas lineas???

Código: [Seleccionar]
(ENABLE ME) by removing the comment of the define.
 */
//#define _MMI_ENABLED_
#define LCD_BL_PIN 13 // LCD backlight control pin

Y ya por ultimo, donde indicas en que patilla se conecta SDA y SCL???

Muchas gracias y perdón por el interrogatorio  :-\
Título: Re:[SOLUCIONADO] Configuracion LCD
Publicado por: juanpintom en Abril 22, 2014, 06:25:53 pm
Hola, las lineas que comentas que no sabes donde van sustituyen a la linea:

Código: [Seleccionar]
LiquidCrystal_I2C lcd(0x27);      // Set the LCD I2C address
Realmente no hace mas que añadir la I2C address y el resto de PINES y su orden correcto para mi LCD.

Esta en el Setup() de cnc.ino.

El configme en principio no es necesario editarlo, ni necesitarias el PIN13 para encender el display, yo lo he dejado en:
Código: [Seleccionar]
#define LCD_BL_PIN 13 // LCD backlight control pin

Aunque realmente se puede comentar esa linea y funcionaria perfectamente.

Para los pines de conexion son los de cualquier I2C, serian los A4 y A5 nombrados como SDA Y SCL en el pinout de Arduino o ATMEGA328P en mi caso.

http://cnccontrolapp.com/smf/index.php?topic=105.0

Salu2 y buen Karma


Título: Re:[SOLUCIONADO] Configuracion LCD
Publicado por: soko en Abril 22, 2014, 11:34:35 pm
Hola Juan,

No quiero ser pesado pero no lo hago funcionar, he conectado como en la imagen (perdon por la pesima calidad), SCL y SDA coinciden con las patillas de tu arduino:

http://subefotos.com/ver/?e6c14e9ffa1fb62c66b0fa4f3853e571o.jpg (http://subefotos.com/ver/?e6c14e9ffa1fb62c66b0fa4f3853e571o.jpg)

Y dejo aqui la version 14 modificada:

https://drive.google.com/file/d/0B00S4npVrP2pNXZILVZWYnhzMjA/edit?usp=sharing (https://drive.google.com/file/d/0B00S4npVrP2pNXZILVZWYnhzMjA/edit?usp=sharing)

He probado a variar el contraste, en la versión anterior de firmware y nada no hay forma de que funcione  :'(
Título: Re:[SOLUCIONADO] Configuracion LCD
Publicado por: juanpintom en Abril 22, 2014, 11:52:25 pm
Lo mas importante, si no me equivoco (y la foto no me engaña) los pines SDA y SCL en el NANO son D4 Y D5 respectivamente:

(http://2.bp.blogspot.com/-_M5HsO7r1dM/UGqw8xi2zUI/AAAAAAAAR5c/O-Q5qzO1mJQ/s1600/arduino+pinout.png)

Una cosilla, yo en el firmware, en la configuracion del ConfigMe.h
Código: [Seleccionar]
#define LCD_BL_PIN      13Yo tengo puesto:
Código: [Seleccionar]
#define LCD_BL_PIN      3
Aunque creo que es irrelevante.

Por lo demas, a no ser que el I2C ADDRESS no sea 0x27 (compruebalo con el sketch de scanner que puse arriba) No veo nada diferente en mi Firmware.

Salu2 y buen Karma
Título: Re:[SOLUCIONADO] Configuracion LCD
Publicado por: soko en Abril 23, 2014, 10:45:24 am
Gracias Juan,

Pero esto si que es curioso.....mismo arduino...y distintas patillas.... :cabreado:

(http://arduino.alhin.de/images/Boards/nano_pins.png)

A ver cual es el correcto...voy a hacer pruebas a lo largo de la mañana.....
Título: Re:[SOLUCIONADO] Configuracion LCD
Publicado por: soko en Abril 23, 2014, 12:27:32 pm
Bueno, puedo confirmar que la imagen buena es la que he puesto yo (al menos en mi arduino), pues me sale esto:

Código: [Seleccionar]
I2C Scanner
Scanning...
I2C device found at address 0x27 !
done

Scanning...
I2C device found at address 0x27 !
done


Pero aún poniendo esta linea:

Código: [Seleccionar]
#define LCD_BL_PIN      3
No me va  :'( :'( :'( En fin a ver a la noche si puedo hacer alguna prueba más......
Título: Re:[SOLUCIONADO] Configuracion LCD
Publicado por: juanpintom en Abril 23, 2014, 12:57:02 pm
Que raro, adjunto mi firmware modificado y dentro de él la carpeta con la libreria que utilizo yo (que es la newliquidlibrary)

https://drive.google.com/file/d/0B9ptep7VZAWyd01YNXlGMndoczA/edit?usp=sharing

Salu2, espero que te sirva y si no le encontraremos solucion :)
Título: Re:[SOLUCIONADO] Configuracion LCD
Publicado por: soko en Abril 23, 2014, 03:22:57 pm
Bufffff!!!

He copiado tu libreria a la carpeta "libraries" de arduino, y al tratar de compilar con tu versión me da este error:

Código: [Seleccionar]
In file included from /stepperCntrl.h:30,
                 from /processGcode.h:27,
                 from CNC.ino:35:
stepper.h:133: error: 'fio_bit' does not name a type
stepper.h:134: error: 'fio_register' does not name a type
stepper.h:135: error: 'fio_bit' does not name a type
stepper.h:136: error: 'fio_register' does not name a type
In file included from CNC.ino:37:
mmi.h:82: error: 'LCD' has not been declared
mmi.h:94: error: ISO C++ forbids declaration of 'LCD' with no type
mmi.h:94: error: expected ';' before '*' token
CNC:79: error: no matching function for call to 'LiquidCrystal_I2C::LiquidCrystal_I2C(int, int, int, int, int, int, int, int)'
E:\--MIS_APPS--\Arduino-1.0.5\libraries\LiquidCrystal_I2C/LiquidCrystal_I2C.h:58: note: candidates are: LiquidCrystal_I2C::LiquidCrystal_I2C(uint8_t, uint8_t, uint8_t)
E:\--MIS_APPS--\Arduino-1.0.5\libraries\LiquidCrystal_I2C/LiquidCrystal_I2C.h:56: note:                 LiquidCrystal_I2C::LiquidCrystal_I2C(const LiquidCrystal_I2C&)
CNC.ino: In function 'void setup()':
CNC:122: error: 'class LiquidCrystal_I2C' has no member named 'setBacklightPin'
CNC:122: error: 'POSITIVE' was not declared in this scope
CNC:130: error: no matching function for call to 'mmi::init(LiquidCrystal_I2C*, stepperCntrl*)'
/mmi.h:82: note: candidates are: void mmi::init(int*, stepperCntrl*)

 :'( :'(
Título: Re:[SOLUCIONADO] Configuracion LCD
Publicado por: juanpintom en Abril 23, 2014, 03:38:21 pm
Haz una copia de la carpeta LiquidCrystal que viene con el IDE de arduino, y la libreria que yo te he pasado sustituiria a la que viene con el IDE.

En esta nota está explicado:
Citar
The library has been developed to replace the current Arduino library, therefore you will need to remove/backup the LiquidCrystal folder from the Arduino library folder the original LiquidCrystal library and replace it for this one. You will also potentially need to remove other LCD libraries like LiquidCrystal_I2C as that will also conflict with this library

Esta casi al final de:
https://bitbucket.org/fmalpartida/new-liquidcrystal/wiki/Home

Salu2 y Buen Karma.

PD. Los agradecimientos a fm que es un maquina   b-(
Título: Re:[SOLUCIONADO] Configuracion LCD
Publicado por: soko en Abril 23, 2014, 08:15:43 pm
SOLUCIONADO!!!!!!!!!!!!!

Muchas gracias Juan, todo era por las librerias, había reemplazado la correcta pero tenia la de LiquidCrystal_I2C que no tenia eliminada. :D :D :D ;D

Título: Re:[SOLUCIONADO] Configuracion LCD
Publicado por: soko en Abril 23, 2014, 09:43:45 pm
Ahora que lo veo funcionando.......tienes razón, se le puede sacar mucha más información a un simple display de este tipo, pues la mitad del tiempo la linea superior esta vacía, se podría meter todas las coordenadas en una pantalla y la otra par otros datos....

Una pena que sea un paquete programando...... :'( :'( ... aún asi voy a ver si aprendo algo......
Título: Re:[SOLUCIONADO] Configuracion LCD
Publicado por: juanpintom en Abril 23, 2014, 10:42:32 pm
Encantado de ayudar  :D

Ciertamente insertar mas informacion no es dificil, yo puedo intentar echar una mano en ello.

Salu2
Título: Re:[SOLUCIONADO] Configuracion LCD
Publicado por: soko en Abril 23, 2014, 11:43:21 pm
Yo lo estoy intentado y voy poco a poco...

De momento si cambias en el mmi.cpp esto:

Código: [Seleccionar]
   _lcd->setCursor ( 0, 1 );
   if ( counter < 4 )
   {
      _lcd->print ("X:");
      _lcd->print (pos.x, 2);
      _lcd->print (" ");
      _lcd->print ("Y:");
      _lcd->print (pos.y, 2);
   }

por esto:

Código: [Seleccionar]
   _lcd->setCursor ( 0, 0 );
   if ( counter < 4 )
   {
      _lcd->print ("X:");
      _lcd->print (pos.x, 2);
      _lcd->print (" ");
      _lcd->print ("Y:");
      _lcd->print (pos.y, 2);
   
   _lcd->setCursor ( 0, 1 );
     
      _lcd->print ("Z:");
      _lcd->print (pos.z, 2);
      _lcd->print (" ");
      _lcd->print ("FR:");
      _lcd->print (_machCntrl->getFeedRate());
 
   }

Ya muestra en ese primer pantallazo toda la información relativa a los ejes y el FR....pero me gustaría meter en el segundo las temperaturas de los sensores por ejemplo o el valor de la señal PWM......y solo consigo generar errores de compilado..... :cabreado: :quemado: :quemado:
Título: Re:[SOLUCIONADO] Configuracion LCD
Publicado por: Miguel75 en Abril 24, 2014, 01:25:33 am
genial ese trabajo, con el miedito  :-O que me da a mi tocar el firmware... me quedo suscrito a este hilo.
Título: Re:[SOLUCIONADO] Configuracion LCD
Publicado por: ngc1300 en Abril 24, 2014, 06:59:07 am
Bueno también he pedido un LCD cuando me llegue y si me da tiempo os hecho una mano, si es que me vais a arruinar, ya me decía yo que había sido una mala idea hacer el foro.  :'(
Título: Re:[SOLUCIONADO] Configuracion LCD
Publicado por: soko en Abril 24, 2014, 09:57:18 am
Yujuuuuu!!!!! El "maestro" se une también a este clan!!!  Nada nada, bienvenido :D :D

Acuerdate de pillar tambien el conversor serie.....que sino si que te quedas sin patillas en arduino :timido:
Título: Re:[SOLUCIONADO] Configuracion LCD
Publicado por: ngc1300 en Abril 24, 2014, 01:35:06 pm
conversor serie? cuantas patillas usa?
Título: Re:[SOLUCIONADO] Configuracion LCD
Publicado por: Miguel75 en Abril 24, 2014, 01:46:15 pm
Yo me hice uno de estos: http://txapuzas.blogspot.com.es/2009/12/paper3wirelcd.html lo que pasa es que usa 3 pines...
Cuando le compré los drivers a fm le pregunté y me dijo que también servían, pero creo que había que cambiar de librería.
si mal no recuerdo he visto por ahí otro esquema que utilizaba solo 2...
Voy a buscar, que este tema llama mucho  :bouah: :bouah:
Título: Re:[SOLUCIONADO] Configuracion LCD
Publicado por: soko en Abril 24, 2014, 03:08:29 pm
Estamos en lo de siempre....no creo que merezca la pena liarse a fabricar uno.....

Juan y yo usamos este (1,06€):

http://www.ebay.es/itm/261324523419?ssPageName=STRK:MEWNX:IT&_trksid=p3984.m1439.l2649 (http://www.ebay.es/itm/261324523419?ssPageName=STRK:MEWNX:IT&_trksid=p3984.m1439.l2649)

(http://i946.photobucket.com/albums/ad308/yksphoto9/xiang20131029/xiang13/CEG003400_2_zpsdf683707.jpg)

Ya sabemos fijo que funciona y usa dos patillas para la comunicación, sin esta placa hacen falta minimo 7 salidas de arduino para controlar el lcd.... :-O
Título: Re:[SOLUCIONADO] Configuracion LCD
Publicado por: juanpintom en Abril 24, 2014, 03:44:11 pm
Yo he montado alguna LCD con un Shift Register, en concreto el 74hc595, es muy facil montarlo y no hay que hacer muchas modificaciones a la libreria de fm. Pero sinceramente por 1€ y la comodidad de los i2c es preferible utilizar este adaptador (recordemos que se pueden conectar mas dispositivos por I2C simultaneamente).

Salu2 y buen Karma
Título: Re:[SOLUCIONADO] Configuracion LCD
Publicado por: Miguel75 en Abril 24, 2014, 04:16:20 pm
si no es por hacérmelo yo mismo, es que lo hice antes de saber que esos adaptadores eran tan asequibles  :'( lo que si, que ya puestos que lo tengo hecho, si lo puedo utilizar guay, que no... pues me esperaré a tener que pedir algo, que ahora tengo que hacer parón en los mini-pedidos.
Título: Re:[SOLUCIONADO] Configuracion LCD
Publicado por: soko en Abril 24, 2014, 04:57:12 pm
Al final con esos precios, no merece la pena hacer nada  :timido:

YA que estamos, por I2C se podría poner algo de esto......por si se va la luz reanudar el programa la maquina solita...... ;D

http://www.ebay.es/itm/AT24C02-I2C-EEPROM-Memory-Module-For-Arduino-Intelligent-Car-/181115346842?pt=LH_DefaultDomain_0&hash=item2a2b50df9a&_uhb=1 (http://www.ebay.es/itm/AT24C02-I2C-EEPROM-Memory-Module-For-Arduino-Intelligent-Car-/181115346842?pt=LH_DefaultDomain_0&hash=item2a2b50df9a&_uhb=1)

(http://i.ebayimg.com/00/s/MzUwWDUwMA==/z/W98AAMXQCtlRXAcB/$T2eC16N,!yEE9s5jEbFPBR(!c!72Wg~~60_12.JPG)

Es una EEPROM I2C, jejejeee :)) :))
Título: Re:[SOLUCIONADO] Configuracion LCD
Publicado por: Miguel75 en Abril 24, 2014, 07:25:06 pm
Al final ngc nos echa del foro, soko que nos vamos a ver en los carteles de los más buscados :))
Título: Re:[SOLUCIONADO] Configuracion LCD
Publicado por: ngc1300 en Abril 24, 2014, 07:58:35 pm
como sigais asi cierro el chiringuito
Título: Re:[SOLUCIONADO] Configuracion LCD
Publicado por: soko en Abril 24, 2014, 08:12:33 pm
Jaja, esta bien, me daré por aludido y bajare de las nubes al mundo real.........es la impaciencia por poder hacer nada con el montaje de la maquina, a ver si a partir de este finde que me cortan las maderas.....dedico más tiempo a la construcción y desvario menos!!!   b-( b-(
Título: Re:[SOLUCIONADO] Configuracion LCD
Publicado por: arteviejo en Octubre 21, 2014, 11:18:01 pm
Gracias a este post he conseguido poner una pantalla en mi cnc, y aqui os pongo el resultado.
www.youtube.com/embed/RDIrVR8i5nw (http://www.youtube.com/embed/RDIrVR8i5nw)
Título: Re:[SOLUCIONADO] Configuracion LCD
Publicado por: imotorista en Diciembre 14, 2015, 05:00:50 pm
Buenas tardes a todos,
Soy nuevo en el foro y estoy "muy picado" con hacerme mi CNC, desde que descubrí hace poco el mundo arduino y este foro y el de txapucnc.
Ya he pedido material electrónico principalmente que no tenia y ya me ira llegando..... Mientras tanto he empezado la construcción mecánica (empecé ayer...).
Según  he leído en el manual pdf de cnccontrol ya se le puede poner un display lcd al hardware. Mi duda y de ahí he ido a parar a este post (sino va aquí mi duda, pido disculpas de antemano) es sobre como conectarlo.
Al parecer según leo en este post el display tiene que ser I2C: entendible por la falta de patillas del arduino UNO. Mi duda es que en el pdf pone "LDC: indica si tenemos un LCD conectado al Arduino, y a que pin está conectado." PIN? que Pin? un display I2C se conecta al scl y sda de la placa arduino UNO ¿correcto? entonces que es este Pin??
Título: Re:[SOLUCIONADO] Configuracion LCD
Publicado por: ngc1300 en Diciembre 15, 2015, 10:00:52 am
El tema del LCD es complicado, el LCD esta soportado por un firmware que ya casi no usamos, el firmware que usamos actualmente no soporta LCD, y el firmware que soporta el LCD no soporta las correas dentadas que es la transmisión que casi todos estamos poniendo.
Título: Re:[SOLUCIONADO] Configuracion LCD
Publicado por: juancarbuho en Diciembre 15, 2015, 10:33:47 am
pues NCG es una lastima ya que ami tambien me gustaria hacerme la maquina autonoma, con un display aunque tubiera que cambiar el uno por el mega
lo que no me encaja es que no se pueda por culpa de las correas (yo no tengo correas) ya que pienso que el programa no tiene que cambiar nada (ecepto los pasos por vuelta) si es de correas o cadena o varilla roscada o mas gorda o mas fina
al menos eso pienso yo que con decirle al programa cuantos pasos necesita para mover 1mm sobraria
saludos
Título: Re:[SOLUCIONADO] Configuracion LCD
Publicado por: ngc1300 en Diciembre 15, 2015, 07:24:18 pm
Si quieres tener una maquina autónoma tendrás que ir a marlin con una configuración de impresora 3D que si funcionan así, las fresadoras por lo general no son autónomas.

En cuanto al fimrware, el firmware 1.0.16 soporta LCD aunque yo no lo he probado nunca, pero como he dicho este firmware con correas no funciona bien, yo he mirado a algo a ver si encontraba el error pero a simple vista no lo he detectado, pero el error esta hay, en realidad si que influye el hecho de tener correas o varilla roscada, ya que en un caso hay que hacer mas operaciones que en el otro.

Título: Re:[SOLUCIONADO] Configuracion LCD
Publicado por: imotorista en Diciembre 15, 2015, 09:42:34 pm
 :'( :'(
Hombre por que tenga un display la placa en donde te diga la posición x,y, z ....algo de publicidad.... por eso no se convierte en maquina autónoma... Pero bueno, era algo que me gustaba mucho. Aun así, si la única diferencia en el firmware es por correa o varilla roscada, yo estoy por varilla roscada en estos momentos. Hay alguna otra diferencia?
Esto es por la capacidad del arduino UNO?

Si es por la capacidad, imagino que en su día al tratar de controlar la correa y la varilla (imagino que el firmware actual vale para ambas) el creador decidió quitar las librerías y código del firmaware, por no entrar.
Por lo que he ido aprendiendo también últimamente sobre arduino son compatibles (UNO y MEGA), pero el segundo tiene mas puertos, mas CAPACIDAD de PROGRAMA, ¿no seria fácilmente trasladable el firmware al MEGA? y de paso continuar a partir de ahí......

Por la fechas que veo en el foro esto es de hace mucho tiempo. Hoy en día el precio vía "china" de las placas MEGA es ya muy bajo, y mas comparado con motores, construcción ..... como para cuestionarlo....¿porque no se ha seguido esta vía?

Título: Re:[SOLUCIONADO] Configuracion LCD
Publicado por: Foshland en Diciembre 16, 2015, 01:02:17 am
A groso modo como ya te comentan, el firm "antiguo" era una adaptacion de un firm de otra persona, que fue modificando NGC para que tanto su programa como el firm funcionasen correctamente. Al no ser el creador del firm, pues no es tan facil modificarlo, cada programador piensa de una forma y es dificil seguir el rastro. Para colmo NGC esta solo en esa tarea y ya tenia suficiente con mejorar el software, asi que mas o menos entre todos fuimos decantandonos por el GRBL, que es un firm que diseño otro grupo de personas y que tiene una comunidad propia detras, asi que ese firm estaba mucho mas avanzado y se actualiza mas amenudo que el firm antiguo, NGC no daba para mas y es normal, su vida no es ni el soft ni el firm, tiene muchos mas proyectos entre manos y no para de demostrarlo.

Sobre el uso de correas y o de varillas, pues hoy en dia, como tu mismo dices sobre el arduino, el tema ha cambiado tanto que las correas y poleas estan tiradas de precio, van mucho mas rapidas, mas silenciosas, mas suaves, mas rapidas de montar... no pasarse a correas es simplemente una pena.

Sobre los calculos a realizar con correas, son mucho mayores y con mayor numero de flotantes, asi que se complica la cosa para un arduino (sea el que sea) que de por si es un sistema basico programable. Con el firm antiguo no podias usar correctamente 16 o 32 micropasos, con GRBL si. Esto tambien llama a instalar correas.


Las Cnc, como ya te indican, no son autonomas, necesitas posicionar la maquina y el tocho para la pieza en cada trabajo, a no ser que te quieras a dedicar a fresar siempre lo mismo y con los mismos materiales de base.

El firmware antiguo funcinaba en el mega, pero no por eso iba mejor


Título: Re:[SOLUCIONADO] Configuracion LCD
Publicado por: Foshland en Diciembre 16, 2015, 01:04:05 am
Ah y por cierto, presentate en el lugar correspondiente si quieres que la proxima vez respondamos a tus preguntas, es simple cortesia que ayuda a conocernos y a mantener las maneras
Título: Re:[SOLUCIONADO] Configuracion LCD
Publicado por: ngc1300 en Diciembre 16, 2015, 07:08:26 am
Siento la confusión imotorista, cuando uno dice que algo es autónomo es que funciona solo en el caso de las cnc, quiere decir que no necesitas un ordenador conectado para que la maquina funcione, esta toma las ordenes de una tarjeta sd y funciona sola. Si lo que quieres es un LCD que muestre información (del tipo que sea) no es una maquina autónoma.

Como te ha dicho foshland entre usar correas y varillas hay un abismo, tu limite de velocidad estará normalmente en 250 mm/min como mucho jugando con los micropasos podrás subir a 1000 mm/min mientras que una maquina con correas se mueve tranquilamente como mínimo a 3000 mm/min, mi maquina ha estado funcionando perfectamente a 5000 mm/min aunque a lo mejor te parece poca diferencia en trabajos largos son unas cuantas horas.

El problema del firmware no es la capacidad del arduino si no como esta construido, en su día el programador original usaba varilla roscada (todos hemos comenzado así) y no aprecio este problema, cuando yo lo detecte en mi paso a correas intente buscar la solución pero a simple vista no la encontré, tendría que a ver revisado a fondo todo el código, cosa que me hubiese costado varias semanas de trabajo y probablemente tener que re programar todo el firmware, cosa que teniendo otro firmware (GRBL) que funcionaba no era eficaz.

El firmware GRBL esta diseñado de forma muy distinta, se basa en interrupciones, lo que le da su potencia y suavidad, pero la contra a todo esto es que el LCD también se maneja con interrupciones como muchos sensores, por eso no es compatible.

Un saludo.
Título: Re:[SOLUCIONADO] Configuracion LCD
Publicado por: Rafa_RGB en Diciembre 16, 2015, 12:38:50 pm
Comentario rápido sobre I2C Display...

La librería de manejo de I2C para display, NO suele usar los pines definidos originalmente como SDA y SCL.
(Por experiencia propia lo digo).

Y...

Ojito con el modelo de Arduino, pues la librería usa distintos pins dependiendo del modelo.


Ale, dicho queda... :P
Título: Re:[SOLUCIONADO] Configuracion LCD
Publicado por: imotorista en Diciembre 16, 2015, 07:35:01 pm
Buenas a todos y MUCHAS gracias por las respuestas.
Por partes:
- En cuanto a presentarme, en cuanto termine este mensaje lo hago (buscare el sitio correspondiente) lo siento.
- Al parecer, entonces por vuestras letras, cuando el primer post me respondía NGC, hablando de firmware viejo (original) y firmware nuevo(este es el GBRL?). Al parecer todos os pasáis al GRBL, entonces el firmware que se descarga de esta pagina CNC ¿es el gbrl?
- Sobre todo lo que comentais de las varillas y correas, no tengo ninguna duda de lo que decis. Simplemente aclarar que: seguro que acabare como todos pasando a las correas, pero de momento mi maquina será con varilla y guias de cajón (porque son rapidas de conseguir y me pierde las prisas..). Por otra parte mi intención es poner una fresadora de madera con fresas de 8mm de eje (fresas grandes) para dibujos tipo cajones y alguna floritura.
- Una vez aclarado que voy por varilla, tendría la posibilidad de usar el firmware viejo o el "nuevo"(GBRL).
          - Si voy por el viejo, le puedo conectar un display que entiendo que es I2C y que como preguntaba en el primer post y no me he aclarado todavía, ¿Dónde se conecta? a SDA y SCL y ¿Qué es el PIN que pide en el programa? según documentación.
           - Si voy por el nuevo (GBRL) a este No se le puede conectar display?
Título: Re:[SOLUCIONADO] Configuracion LCD
Publicado por: juancarbuho en Diciembre 16, 2015, 09:28:36 pm
guenas
perdon por neterme por el medio
soy yo el que a dicho lo de la maquina autonoma y lo de que no debe haber problema al cambiar la varilla roscada con la correa
de primeras os doy la enohorabuena por este foro que nos ha echo hacer las maquinitas gracias a vuestra ayuda y por supuesto daros las gracias
despues os espongo lo dicho
el pc que tengo es antiguo y no guanta algunas cosas. si la maquinita fuera autonoma me seria mas facil y podria ponerla en otro sitio que molestase menos ya que mi pc ya tiene su propia ubicacion
el display es barato y quedaria mu chulo en la maquina autonoma
y sobre las correas, si yo tubiera que cambiar de varilla a correas (lo que yo supongo) solo tendria que cambiar la configuracion de los pasos por vuelta de los motores y si fuera necesario cambiaria los puentes de los drv8825 para la multiplicacion de los pasos
todo esto lo digo por que yo empece con varilla de 6/100 (1 vuelta = 1 mm)  y tengo terminada un cnc pequeña con varilla del tipo impresora (1 vuelta = 8 mm) y me he pasado asi que una cosa intermedia no me vendria mal
tengo en mente un cnc con un tablero de 1.20m x 60cm (unos 100x50cm de trabajo) y para ella tengo pensado varilla de 10/150 (1 vuelta 1.5mm)
pero me parece un poco corta la relacion y la correa no la veo efectiva para un 1.20m ¿alguno tiene otra idea facil y economica de 1vuelta=3 ó 4mm?
repito que muchas gracias a todos
saludos
Título: Re:[SOLUCIONADO] Configuracion LCD
Publicado por: Foshland en Diciembre 18, 2015, 01:40:18 am
imotorista, si no vas a usar correas puedes usar el "antiguo", podras conectar el LCD (ya te dirian los que saben al respecto)

Tambien podrias usar Marlin, ese tiene soporte LCD, seria "autonomo", no se hasta que punto, pero seria.

Juancarbuho, hay correas de impresora y correas de "persona", ajjaja, las hay bastante hermosas hasta para maquinas mas grandes. Mas de uno usa algunas mas anchas de 1cm y les va bien. Tambien piensa que la parte de la correa que nunca pasa por las poleas lo puedes sustituir por otro tipo de tira, de metal por ejemplo, asi es como si tuvieses correas mas cortas, mas barato y menos backslash seguro
Título: Re:[SOLUCIONADO] Configuracion LCD
Publicado por: imotorista en Diciembre 20, 2015, 09:40:00 pm
Hola Foshland, gracias por la respuesta, pero sigo "casi" en el mismo punto que el primer post:
          - Si voy por el viejo, le puedo conectar un display que entiendo que es I2C y que como preguntaba en el primer post y no me he aclarado todavía, ¿Dónde se conecta? a SDA y SCL y ¿Qué es el PIN que pide en el programa? según documentación.
           - Si voy por el nuevo (GBRL) a este No se le puede conectar display?

También pones lo de Marlin. Esto entiendo que es otro firmware, También funciona con el CNCcontrol?
Título: Re:[SOLUCIONADO] Configuracion LCD
Publicado por: ivan.wmp1 en Enero 14, 2018, 07:14:41 pm
Hola buenas yo tengo un blog en el cual explico como hacer una cnc autonoma sin necesidad de un pc por medio de un display lcd 16x2, un lector tarjetas sd y un mando a distancia infrarojos aqui os lo dejo para que le echeis un ojo.
https://proyectosarduinoivan.blogspot.com.es/2018/01/control-de-cnc-mediante-tarjeta-sd-y.html?m=1
Título: Re:[SOLUCIONADO] Configuracion LCD
Publicado por: ivan.wmp1 en Enero 14, 2018, 07:15:54 pm
https://proyectosarduinoivan.blogspot.com.es/2018/01/control-de-cnc-mediante-tarjeta-sd-y.html?m=1 (https://proyectosarduinoivan.blogspot.com.es/2018/01/control-de-cnc-mediante-tarjeta-sd-y.html?m=1)