| Bienvenido, Invitado |
Tienes que registrarte para poder participar en nuestro foro.
|
| Estadísticas del foro |
» Miembros: 18,507
» Último miembro: techroid
» Temas del foro: 12,497
» Mensajes del foro: 119,166
Estadísticas totales
|
|
|
| Como leer ultima linea de la tarjeta SD? |
|
Enviado por: Antude - 28-08-2021, 08:41 AM - Foro: Arduino
- Sin respuestas
|
 |
Buenos días, estoy intentando leer la ultima linea en una tarjeta microSD, para poder utilizar esa información y actualizar unas variables en Arduino
el problema es que no consigo que lo haga, he estado buscando y he visto una libreria SEPARADOR.H que me serviria perfectamente con mi idiea, el problema es que no consigo que funcione.
parece que no extrae la información de la tarjeta o que no se posiciona en el principio de la ultima linea para leer, me podéis echar una mano?
mi nivel de programacion no llega ni a la tapa de un libro de programación, por lo que os pido paciencia, Gracias.
estos datos estarían en mi fichero
contadorPotenciaTotal, Contador PUNTA, Contador LLANO, Contador Valle, Contador Year anterior;
5987, 4108, 1879, 61, 2429;
la idea es que en caso de apagada de luz al reiniciar el arduino el solo leyera la SD y actualizara el ultimo valor, os dejo el codigo por si veis donde falla.
lo absurdo es que me funciono un par de veces, pero algo he tocado y no consigo ver el que, llevo ya una semanita, intentando resolver el problema.
Código: #include <Separador.h>
Separador s;
#include <SD.h>
#include <SPI.h>
File printFile;
String buffer;
boolean SDfound;
void setup() {
Serial.begin(9600);
if (SDfound == 0) {
if (!SD.begin(4)) {
Serial.print("The SD card cannot be found");
while(1);
}
}
SDfound = 1;
printFile = SD.open("DATALOG.txt",FILE_READ);
if (printFile)
{
bool line=false;
printFile.seek(printFile.size()-1); //Ubicacion en posicion anterior a ultimo caracter
Serial.println("entramos en el if si esta conectado el archivo");
while (printFile.available())
{
if(line==false) //Primero leer en reversa para buscar salto de linea
{
char caracter=printFile.read();
//Serial.println(caracter);
printFile.seek(printFile.position()-2);
Serial.println("estamos buscando el inicio de la linea");
if(caracter=='\n') //Cuando encuentra salto de linea cambia estado
{
Serial.println("hemos encontrado el salto linea");
line=true;
}
}
if(line==true) //Empieza a leer normalmente de izquierda a derecha
{ char caracter = printFile.read();
//Serial.println(caracter);
String cadena = cadena+caracter;
Serial.println("estamos leyendo la ultima linea");
if(caracter==';')
{
Serial.print("estamos en el break");
break;
}
Serial.println("estamos al inicio de cargar datos");
Serial.println(cadena);
String datosrecibidos = printFile.readStringUntil(';');
Serial.println();
Serial.println();
Serial.println(datosrecibidos);
//String datosrecibidos = cadena; //buffer = printFile.readStringUntil('\n');
//Serial.println(datosrecibidos); //Printing for debugging purpose
String elemento1 = s.separa(datosrecibidos,',',0);
String elemento2 = s.separa(datosrecibidos,',',1);
String elemento3 = s.separa(datosrecibidos,',',2);
String elemento4 = s.separa(datosrecibidos,',',3);
String elemento5 = s.separa(datosrecibidos,',',4);
String elemento6 = s.separa(datosrecibidos,',',5);
delay (200);
if (elemento1 !=0){
Serial.println("el elemento1 es:"+ elemento1);
Serial.println("el elemento2 es:"+ elemento2);
Serial.println("el elemento3 es:"+ elemento3);
Serial.println("el elemento4 es:"+ elemento4);
Serial.println("el elemento5 es:"+ elemento5);
Serial.println("el elemento6 es:"+ elemento6);
}
}
}
printFile.close();
}
}
void loop() {
//empty
}
|
|
|
|
| Mal funcionamiento ventilador de capa |
|
Enviado por: Lautaro Alvarez - 26-08-2021, 07:10 PM - Foro: General
- Respuestas (1)
|
 |
Buenas, que tal? Mi consulta era por si sabian como solucionarme el siguiente problema. Tengo una ender 3 y cuando termina de calentar la cama y el extrusor, al momento de iniciar la impresion el ventilador de capa (que hasta el momento funciona) se apaga ; vuelve a prenderse automaticamente mas tarde, pero si no lo prende manualmente yo en ese momento se deforman las impresiones, hay alguna manera de configurar para que este prendido siempre?
|
|
|
|
| Concurso de diseño de PCBWay |
|
Enviado por: grafisoft - 24-08-2021, 02:54 PM - Foro: Electrónica
- Sin respuestas
|
 |
PCBWay realiza diferentes concursos de diseño de PCBs, y este año están en su cuarta edición. En años anteriores algunos usuarios han participado, e incluso, obtenido algún premio.
Este año, con la colaboración iniciada entre nuestra comunidad Spainlabs y PCBWay, me han comunicado que esta en marcha el 4º concurso de diseño de PCBs, así que os lo transmito a vosotros a ver si os animáis a participar como representación del foro o por libre. Incluso podéis hacer grupo de trabajo para preparar el diseño y presentar un buen proyecto!
Os dejo la sinopsis que tiene PCBWay en la web del concurso:
La cuarta competencia del concurso PCBWay esta finalmente llegando, y esta vez diseñamos para el futuro.
La tecnología ha ido cambiando nuestras vidas y la era 5G está por llegar, lo que nos hizo dar cuenta de que la era de conectar todo no está lejos.
¡Hagamos algo más cercano al futuro! Este año, tenemos 2 temas principales de las entradas: Uno es IoT (Internet de las cosas), que incluirá automatización del hogar,
wearables u otros proyectos interesantes. ¡Libera tu imaginación! El otro es la robótica, que podría combinarse con automóviles inteligentes, drones u otros proyectos automatizados.
¡Creemos que puedes construir los tuyos!
Para acceder a la web donde explican todas las reglas y fechas, podéis entrar aquí -> 4º Consurso de diseño PCB por PCBWay
Los temas que se pueden presentar al concurso son, o tema libre (tema personalizado), o un proyecto relacionado con IoT o Robótica. Dan mucho campo para elegir y enviar una propuesta que mejor se adapte a las habilidades o preferencias de cada uno.
Cualquier duda, podéis contactar con el email de contacto que tienen en su web, y poco mas, animaros a participar!
|
|
|
|
| Salto en eje Y |
|
Enviado por: egallardo83 - 24-08-2021, 09:16 AM - Foro: General
- Respuestas (6)
|
 |
Primero, antes de todo presentarme:
Soy Edu, de Barcelona, recientemente (durante la pandemia) he comprado una artillery X1, previemente me estrené en este mundo con una Anet A8 hace ya unos años y la experiencia fue bastante aterradora, hasta tal punto de desistir. Ahora con algo más de madure y paciencia he reentrado al planeta de la impresión 3D y he alucinado con el cambio.
Como ya os podeis imaginar, estoy super contento con mi X1, pero desde hace unos pocos días me vengo encontrando con un problemilla que no se como solucionar, saltos en el eje Y.
La pieza en cuestión es un cajón de unos 140x110x60, el primero salió sin problemas, tras 8h de impresión
El segundo hizo dos pequeños saltos en el eje Y pero la impresión pudo terminar
En el tercero hubo un salto de unos 5cm que desmoronó la pieza completa.
Después de forear un poco, he tensado la correa y revisado que no haya limitaciones de movimiento en este eje, todo parece correcto.
Tengo que decir, que se nota algo extraño en el movimiento la cama en ese eje:
* en el cambio de +Y a -Y el movimiento es suave.
* pero en el cambio de -Y a +Y da un pequeño golpe, es muy brusco y la cama tiembla.
Estoy bastante perdido, ayuda por favor!
Muchas gracias!
|
|
|
|
Anet A8 Problema con Regulador de voltaje/Mosfets de placa |
|
Enviado por: Erkus - 23-08-2021, 05:02 PM - Foro: Anet
- Respuestas (6)
|
 |
Hola, buenos dias. Os comento mi problema por si a alguien le pasa algo similar o hay entre los presentes alguien que pueda guiar y ayudar.
Placa: CXY-V.2-0508 Tronxy (Original)
Impresora: Anet A8
Firmware: Marlin Tronxy 1.0.5
Tiempo de la impresora: casi 3 años
Hace 1 mes estaba imprimiendo una pieza que necesitaba, como siempre había hecho hasta el momento, con el error de no revisar la temperatura maxima de la cama. Alcanzó los 80ª C y el terminal de entrada se me fundió; se derritió el plastico y se juntaron cable y entrada. Soldé un nuevo terminal. Pasado esto, creía que el problema se habría solucionado. Encendí la impresora y todo funcionaba perfectamente (temía por la calidad de la soldadura).
Imprimí 2 piezas y al ir a por la 3ª el hotend dejó de calentar. En esos dias no tenia multimetro, asi que opté por comprar unos calentadores (hotend cilíndrico) y guardarlos de repuesto. Tambien cambié el "termometro" del extrusor.
Tras esto, la impresora seguia encendiendo y haciendo procesos ajenos a calentar sin ningun problema. Al inicializar la impresión, la temperatura de la cama alcanzaba los 60º y se mantenia estable; pero al hacerlo con el extrusor, a veces no iniciaba el calentamiento pasados unos 5-10sec (heating failed) o se excedía en el mismo y me llegaba a 250 para luego bajar a 160. Habiendo hecho todo lo posible, deduje que el problema esta en la placa. Me hice con un multimetro y medí el mosfet que hay inmediatamente debajo de la entrada de alimentacion de la placa y no parecia funcionar bien (al medir con pin negativo a Ground (Base con mas superficie) y positivo a Input (izq), el valor iba bajando hasta finalmente quedar a 0).
Indicando que podia haber un corto. Desoldé el componente (L7805CD2T) e indague por internet. Resulta que este se encuentra obsoleto. Al ir a pedirlo por RS, me indicaba que ya no se fabricaba, pero me sugeria uno con prestaciones y precio similar (L7805C2T) aunque lo vendían como L7805CD2T-TR.
Los comparé y compré. Parecian tener funciones similares (Tanto L7805CD2Tcomo L7805C2T como L7805CD2T-TR). A su vez, he aprovechado y adquirido unos mosfets externos (para cama caliente (2 en foto) y hotend (1 en foto)) para evitar futuros incidentes. De todo adjunto fotografias.
Hoy he ensamblado, montado los mosfets y todo el cableado. Adjunto video de lo que pasa. Toda la impresora funciona perfectamente: autohome, refrigeracion, motores, sensores de temperatura, LCD, calentamiento de la cama... Menos el hotend. Al terminar de calentar la cama caliente inicia el proceso de
calentar marcando el tope (195º) pero pasados 5 sec, en los que no hace nada, vuelve a salir el mensaje de heating failed.
La cuestion es si sabeis que otras partes suelen fallar, o si en el proceso veis algo que no os cuadre y pueda ser el causante. Si teneis algun documento con todos los valores de los componentes tambien se agradecería.
Notas:
- Al iniciarse el calentamiento de la cama caliente, el mosfet externo enciende un led de manera instantanea y se mantiene mientras esta esté caliente. Al no imprimir no se si el ventilador que puedo acoplarle funciona. Pero al iniciarse el otro mosfet externo (del hotend), la luz se enciende de manera
gradual a lo largo de los primeros 3 sec, para 2 sec despues apagarse.
- Mosfets conectados correctamente teniendo en cuenta la polaridad. Según tengo entendido las resistencias encargadas de calentar como tal tanto cama y extrusor son indiferentes en este aspecto.
- Aparentemente la placa no tiene ningun defecto. El led que hay junto a la conexion para ordenador se enciende (color rojo) y funciona en todo momento que se le aplica corriente a la placa.
Los lugares en los que creo que puede haber fallo:
- Resistencia o condensador caput y necesitan cambiarse. Cuál, no idea.
- Problema con que, segun me han comentado, Marlin bloque a la impresion pasados x sec sin calentar o cuando no se alcanza unos grados x sec. Mi idea sería tocar el firmware para ampliar este margen y permitir al mosfets esos segundos de preparación.
![[Imagen: Colocacion.jpg]](https://i.ibb.co/DQXTtRR/Colocacion.jpg)
![[Imagen: Led.jpg]](https://i.ibb.co/4JQX1F3/Led.jpg)
![[Imagen: Mosfet-Cambiado.jpg]](https://i.ibb.co/d266L9B/Mosfet-Cambiado.jpg)
![[Imagen: Puerto-entrada-cambiado.jpg]](https://i.ibb.co/b3qSNjn/Puerto-entrada-cambiado.jpg)
![[Imagen: Version.jpg]](https://i.ibb.co/hRLjw8b/Version.jpg)
Añado videos del problema aquí:
https://drive.google.com/drive/folders/1...sp=sharing
|
|
|
|
|