26-01-2019, 01:09 PM
(Última modificación: 27-01-2019, 08:00 PM por domingo.)
hola buenas , pues la razon de que os escriba es que me estoy haciendo una core xy desde cero , ya la tengo bastante avanzada ,
en estos momentos le estoy intentado poner el modulo de apagado automatico mks pwc v2.0 ,tengo todo el conesionado echo y corregido el conesionado del pin 11 entre placa y modulo , he activado en la pantalla ( mks tft 32 v4.0) la linea de auto apagado cambiando el cero por un uno.
mencionar que el montage es :
- mks gen v 1,4
- mks tft 32 v 4.0
- mks pwc v2.0
hay que alterar unal lineas en marlin ( yo uso 1.1.9) y no se cuales son , si fueran tan amables de guiarme un poco sobre estas lineas desconocidas para mi?.
otra cosa , supongo que vendra deribado de no tener marlin activado para el mks pwc v2.0 , todo conectado , empezemos por el principio , el fabricante indica que no alteremos la fase de alimentacion alterna al modulo mks pwc v 2.0( como puedo saber yo en que posicion poner el enchufe en la clavija para no contrabenir este requisito del fabricante?)
bueno lo enchufo , el modulo mks pwc se enciende con un led rojo , por ahora supongo que bien.
pulso el interructor , ( si lo mantengo pulsado va toda la electronica bien) suelto el interructor ( en vez de continuar todo encendido la electronica se apaga.)
yo espero que modificando la linea que marlin ( la cual desconozco) se solucione este problema del interructor.
si puederais echarme una mano os estaria eternamente agradecido.
26-01-2019, 04:33 PM
(Última modificación: 26-01-2019, 04:41 PM por Simemart.)
Hola, para saber con seguridad cual es la fase en el enchufe, tienes que utilizar un comprobador. El mas barato es uno con forma de destornillador que lleva una lamparita que se ilumina cuando cerramos con nuestro dedo el circuito. Pero ten en cuenta que tendrás que marcar la posición de la clavija para no invertirla al conectarla.
Cuando sueltas el interruptor se apaga la electrónica porque no tienes definido en Marlin el pin 11 y está siempre a nivel bajo, lo que hace que no actúe el relé del módulo.
Si tienes configurada la placa como MKS_GEN_13, en el archivo Configuration.h, modifica la siguiente línea así:
#define POWER_SUPPLY 1
y en el archivo pins_MKS_GEN_13.h la siguiente:
#define PS_ON_PIN 11
Sólo por curiosidad, ¿cuanto has pagado por tener esa funcionalidad?
Porque no deja de ser un relé para Arduino y los últimos que compré (en Amazon, porque tenía prisa) me salieron a 2 euros (en Aliexpress, a menos de 1 euro).
Y hace algún tiempo publiqué un post con un autoapagado en Marlin para ese propósito.
P.S.
Se me olvidaba mencionar una cuestión a comprobar: si se utiliza un pulsador para arrancar el sistema, es posible que haya que hacer una pulsación de una cierta duración para dar tiempo a la MCU a poner en alto el pin 11, ya que es posible que si se realiza una pulsación muy breve, no se mantenga el encendido.
gracias simemart he echo esto siguiendo tus pasos indicados :
configuracion h-
// @section machine
/**
* Select your power supply here. Use 0 if you haven't connected the PS_ON_PIN
*
* 0 = No Power Switch
* 1 = ATX
* 2 = X-Box 360 203Watts (the blue wire connected to PS_ON and the red wire to VCC)
*
* :{ 0:'No power switch', 1:'ATX', 2:'X-Box 360' }
*/
#define POWER_SUPPLY 1
#if POWER_SUPPLY > 0
// Enable this option to leave the PSU off at startup.
// Power to steppers and heaters will need to be turned on with M80.
//#define PS_DEFAULT_OFF
// #define AUTO_POWER_CONTROL // Enable automatic control of the PS_ON pin ( descomentado)
#if ENABLED(AUTO_POWER_CONTROL)
#define AUTO_POWER_FANS // Turn on PSU if fans need power
#define AUTO_POWER_E_FANS
#define AUTO_POWER_CONTROLLERFAN
#define POWER_TIMEOUT 30
#endif
#endif
y en el archivo pins_MKS_GEN_13.h la siguiente:
//
// PSU / SERVO
//
// If POWER_SUPPLY is specified, always hijack Servo 3
//
#if POWER_SUPPLY > 0
#define SERVO3_PIN -1
#define PS_ON_PIN 11
#endif
#include "pins_RAMPS.h"
pero sigue igual , he dejado un buen rato el dedo pulsado pero cuando suelto se apaga .... que estoy haciendo mal?
porfavor echame un cable.
bueno algo hemos avanzado.
he descomentado esta linea :
// #define AUTO_POWER_CONTROL // Enable automatic control of the PS_ON pin
y resulta que ahora si que pulsando unos segundo el boton , la maquina se queda encendida , perooooo ,,,, si buelvo a pulsarlo para apagarla , en la
mks tft 32 me sale un mensaje que dice : closing machine .........
pero no se apaga , a que puede ser debido ?
Hola, te había indicado configurar el parámetro POWER_SUPPLY a 1, porque en el archivo de pins define el PS_ON_PIN sólo si es mayor de 0 su valor.
Pero no me parece que tengas que activar la funcionalidad automática del Marlin, ya que es la TFT quien debe controlarla, así que puede que no fuese correcto hacerlo así.
Configura mejor el parámetro POWER_SUPPLY a 0 y pon así el archivo pins_MKS_GEN_13.h:
#if POWER_SUPPLY > 0
#define SERVO3_PIN -1
#define PS_ON_PIN 4
#endif
#define PS_ON_PIN 11
#define SERVO0_PIN -1
#include "pins_RAMPS.h"
A ver si así funciona bien.
26-01-2019, 08:57 PM
Supongo que al hacer ese video tenias la cofiguración que indiqué al principio.
Si es así, puede que sea Marlin quien corta la alimentación cuando intentas imprimir. Prueba con la que he puesto en mi segunda respuesta.
Sería conveniente que pusieses como tienes conectado todo, quizá tengas algo mal. Hay muchos esquemas equivocados circulando por internet.
De todas formas, lo que sí está claro es que ese lio de cables entrelazados sobre los de la pantalla, unos con continua y otros con alterna (mucho ojo con esta), no es una buena idea.
no localizo esto dentro del marlin :
#define PS_ON_PIN 11
#define SERVO0_PIN -1
#include "pins_RAMPS.h"
donde esta?
26-01-2019, 09:37 PM
(Última modificación: 26-01-2019, 09:37 PM por Simemart.)
Esas dos líneas las tienes que añadir. Tiene que quedar el archivo como te indico.
26-01-2019, 09:38 PM
(Última modificación: 26-01-2019, 09:39 PM por domingo.)
(26-01-2019, 09:29 PM)Simemart escribió: Supongo que al hacer ese video tenias la cofiguración que indiqué al principio.
Si es así, puede que sea Marlin quien corta la alimentación cuando intentas imprimir. Prueba con la que he puesto en mi segunda respuesta.
Sería conveniente que pusieses como tienes conectado todo, quizá tengas algo mal. Hay muchos esquemas equivocados circulando por internet.
De todas formas, lo que sí está claro es que ese lio de cables entrelazados sobre los de la pantalla, unos con continua y otros con alterna (mucho ojo con esta), no es una buena idea. tienes razon pero no es definitivo jejeje esta provisional para poder solucionar el tema del auto apagado
(26-01-2019, 09:37 PM)Simemart escribió: Esas dos líneas las tienes que añadir. Tiene que quedar el archivo como te indico. ok me pongo manos a la obra y te digo algo..
bueno pues nada......por hoy ya lo dejo mañana sera otro dia.
decirte simemart que con la configuracion ultima que me pasaste tampoco va.
mañana ya os pondre un esquema de las conexiones.
bueno ay va un esquema de como lo tengo conexionado:
ya se que es un poco cutre .......jeje espero que se vea claro.
27-01-2019, 03:46 PM
(Última modificación: 27-01-2019, 04:37 PM por Simemart.)
Hola, pues en principio parece todo correcto y según las especificaciones que indica MKS (aunque no sé si será muy fiable su esquema, pues tiene las conexiones de 5V y GND en la placa invertidas), aunque supongo que entre el enchufe y el módulo tendrás un interruptor general (si no es así, deberías ponerlo).
También sería conveniente un fusible en ese punto, que salte antes que el que lleva soldado el módulo.
Estando eso bien, el problema debe de estar en el software.
No entendía muy bien el porqué de tener tantas conexiones el módulo, pero creo que la cosa funciona más o menos así: cuando tiene alimentación la linea AC IN del módulo, el pulsador activa el relé que dá paso a la alimentación al AC OUT y que por lo tanto pone en marcha todo.
El apagado, si no se me escapa algo, sólo lo controlan la TFT y la placa (por sus respectivos conectores en el módulo).
Esta última lo hace si el que apaga es Marlin y la TFT, si se pulsa el botón de encendido (no sé si hay una opción en el menú de la pantalla para el apagado, si es así también en ese caso).
Si todo funciona como he descrito, la única configuración que puede hacer que no funcione la cosa es la del firmware de la TFT. Si no se configura Marlin no podrá apagar, pero nada más.
Así que, si no estoy equivocado, tendrás que investigar la configuración que tienes en el firmware de la TFT.
P.S. Pensandolo bien, puede que la TFT apague la alimentación enviando un comando M81, por lo que sí tiene que estar bien configurado Marlin o no funcionará.
Bueno, he investigado un poco en Marlin y creo que he descubierto el origen del problema.
Como indicaba, es casi seguro que la TFT realiza el apagado enviando un comando M81 a Marlin, siendo este el que hace el apagado mediante el pin PS_ON.
El problema está en que Marlin gestiona ese pin en función del tipo de fuente de alimentación que se configure.
Si se pone POWER_SUPPLY a 1 (fuente ATX tipo PC), entonces pone el pin en nivel bajo (LOW) para encender y en alto (HIGH) para apagar.
Si se pone POWER_SUPPLY a 2 (fuente tipo x-Box 360), se invierte la lógica anterior.
Si no me equivoco, el módulo necesita está última, por lo que hay que configurar Marlin así:
Configuration.h
#define POWER_SUPPLY 2
#if POWER_SUPPLY > 0
// Enable this option to leave the PSU off at startup.
// Power to steppers and heaters will need to be turned on with M80.
//#define PS_DEFAULT_OFF
//#define AUTO_POWER_CONTROL // Enable automatic control of the PS_ON pin
#if ENABLED(AUTO_POWER_CONTROL)
#define AUTO_POWER_FANS // Turn on PSU if fans need power
#define AUTO_POWER_E_FANS
#define AUTO_POWER_CONTROLLERFAN
#define POWER_TIMEOUT 30
#endif
#endif
pins_MKS_GEN_13.h
#if POWER_SUPPLY > 0
#define SERVO0_PIN -1
#define PS_ON_PIN 11
#endif
ante todo darte las gracias , eres un crack , ni que decir tiene que si pasas por el prat algun dia tienes una paella pagada....jejejeje estoy muy contento...
solucionado mira que ayer estube haciendo pruebas y no se me ocurrio pensar que la fuenten de alimentacion de la xbox arranca con pulsador y la atx va diferente....muchas gracias ay poca informacion sobre este modulo de mks pwc v 2.0 , espero que este post sirva a otras persona como yo que estamos muy perdidos y nuestros conocimientos son muy basicos....
Me alegro que se haya solucionado.
Un saludo.
Hola!!
Mi placa es la mks gen l , serviría la misma configuración?
Me surge una duda , si pongo estás órdenes en "pins mks_gen_l.h" al final manda leer a "pins ramps.h" , donde hay alguna línea de estas que pones , irá bien?
Saludos y gracias
Hola, en principio el pinout de las salidas de los servos de la MKS GEN L es idéntico al de la 1.4, por lo que debería valer todo lo indicado.
Efectivamente, el archivo de pins de la GEN L lleva justo al final el include del archivo de pins de la RAMPS.
La instrucción include hace lo mismo que si se copiase todo lo que hay en dicho archivo en el punto donde se encuentra la instrucción, por lo que todo lo que se haya definido antes de ella y que se vuelva a definir en el archivo incluido no se tendrá en cuenta.
Por ello, hay que colocar las nuevas definiciones después de dicha instrucción, de forma que sean las últimas del archivo pins de la GEN L.
Muchas gracias Simemart !!
Como siempre una gran ayuda , lástima que no viera antes tu post , me hubiera ahorrado un dinerillo y como todas las cosas que hace uno dan más satisfacción.
No entiendo con los tutoriales que tienes , no hay ninguno en temas importantes.
Saludos y gracias
Hola !!!
He probado esta configuración según lo que he entendido:
Configuration.h
#define POWER_SUPPLY 2
#if POWER_SUPPLY > 0
// Enable this option to leave the PSU off at startup.
// Power to steppers and heaters will need to be turned on with M80.
//#define PS_DEFAULT_OFF
//#define AUTO_POWER_CONTROL // Enable automatic control of the PS_ON pin
#if ENABLED(AUTO_POWER_CONTROL)
#define AUTO_POWER_FANS // Turn on PSU if fans need power
#define AUTO_POWER_E_FANS
#define AUTO_POWER_CONTROLLERFAN
#define POWER_TIMEOUT 30
#endif
#endif
En pins_mks_gen_l :
#define BOARD_NAME "MKS GEN L"
//
// Heaters / Fans
//
// Power outputs EFBF or EFBE
#define MOSFET_D_PIN 7
//
// CS Pins wired to avoid conflict with the LCD
// See https://www.thingiverse.com/asset:66604
//
#ifndef X_CS_PIN
#define X_CS_PIN 59
#endif
#ifndef Y_CS_PIN
#define Y_CS_PIN 63
#endif
#include "pins_RAMPS.h"
#if POWER_SUPPLY > 0
#define SERVO0_PIN -1
#define PS_ON_PIN 11
#endif
Y en el mks_config.txt de la pantalla :
#enable auto off after print finish function (no:0; Yes:1)
>cfg_print_finish_close_Machine:1
Enciende y apaga bien , calienta bien , empieza la impresión , pero no tiene control de ningún eje , no hace home ,no posiciona ejes ni en la impresión ni moviendo desde la pantalla.
Algo hice mal pero no se el que , alguna sugerencia?
Muchas gracias
Hola, pues los cambios que has realizado no deberían tener ningún efecto sobre lo que indicas que te sucede.
Comprueba que tienes #define MOTHERBOARD BOARD_MKS_GEN_L en el archivo Configuration.h.
No se me ocurre otra cosa que pueda hacer que no funcione todo lo que indicas.
|