Bienvenido, Invitado |
Tienes que registrarte para poder participar en nuestro foro.
|
|
|
Error de Compilacion de Firmware para CR10S con SKR Mini E3 V3 Marlin 2.1.2.4 |
Enviado por: 1DaniloC - 03-09-2024, 05:53 PM - Foro: Firmware y Software
- Respuestas (3)
|
|
Estimados buenas tardes. Quisiera de su apoyo, hace algunas semanas compile Firmware para CR10 S con BTT SKR Mini E3 V3 sin problema, pero ahora luego de algunas actualizaciones automaticas que realiza ahora me desplega errores que he solucionado excepto el siguiente y no se donde buscar para modificarlo
*** [C:\Marlin-2.1.2.4 Creality CR10 Biqu Skr mini E3 V3\.pio\build\STM32G0B1RE_btt_xfer\FrameworkArduinoVariant\PeripheralPins.c.o] Source `C:\Marlin-2.1.2.4 Creality CR10 Biqu Skr mini E3 V3\.pio\build\STM32G0B1RE_btt_xfer\FrameworkArduinoVariant\PeripheralPins.c' not found, needed by target `C:\Marlin-2.1.2.4 Creality CR10 Biqu Skr mini E3 V3\.pio\build\STM32G0B1RE_btt_xfer\FrameworkArduinoVariant\PeripheralPins.c.o'.
Les agradeceria su tiempo el que me expliquen como hacerlo y aprovechando estoy activando el POWER LOSS RECOVERY pero segun investigue algunas fuentes colocar el POWER LOSS PIN en PC12 o PC13 para esta motherboard, les agradezco mucho su tiempo
|
|
|
Mecanumeric Pro 3020 y Matercam 2023 |
Enviado por: rgagu - 16-08-2024, 12:22 AM - Foro: Fresadoras CNC
- Sin respuestas
|
|
Hola,
Tengo una Mecanumeric Pro 3020 que he heredado y quisiera echarla andar con un software y un PC para automatizar los trabajos. Tengo una PC con Windows 10 y Mastercam 2023.
¿Podrían echarme una mano para ponerla en marcha y como consigo el post procesado para esta máquina?
Muchas gracias
|
|
|
Mecanumeric Pro 3020 y Mastercam |
Enviado por: rgagu - 16-08-2024, 12:21 AM - Foro: Fresadoras CNC
- Sin respuestas
|
|
Hola,
Tengo una Mecanumeric Pro 3020 que he heredado y quisiera echarla andar con un software y un PC para automatizar los trabajos. Tengo una PC con Windows 10 y Mastercam 2023.
¿Podrían echarme una mano para ponerla en marcha y como consigo el post procesado para esta máquina?
Muchas gracias
|
|
|
problemas PWM, y comunicación I2C |
Enviado por: MANUEL19687 - 15-08-2024, 09:30 AM - Foro: Arduino
- Sin respuestas
|
|
Hola muy buenas, me estoy volviendo loco, tengo un sistema "servo" para mover un sensor de 0º a 180º, con un pequeño motor eléctrico. Lo controlo con un driver l298n alimentado a 12v, pero lo reduzco a 2v con software desde Arduino con el PWM desde la salida 9, la referencia de posición me la proporciona un potenciómetro solidario con el eje de salida del sistema, bueno cuando controlo el sistema desde el monitor serial conectado directo al arduino todo va bien, le introduzco 90 y busca la posición de 90º, pero el problema comienza cuando conecto conecto el arduino nano como esclavo al arduino uno que realiza la función de maestro, desde el monitor serial mando al maestro, por ejemplo, el 90 el nano lo recibe, pero el motor no se mueve, no sé si es que hay problemas entre la comunicación I2C y el pwm. la librería que utilizo es la WireData.h.
Éste es el master
Código: #include <Wire.h>
#include <WireData.h>
int VALOR_INTERNO_2 = 0;
int INT_DATO;
String STRING_DATO;
volatile float DATO_FLOAT_1;
void setup()
{
Wire.begin();
Serial.begin(9600);
}
void loop()
{
//------------------------------------------------------------
while (Serial.available() > 0)
{
//************RECEPCIÓN_DATOS_MONITOR_SERIAL********
STRING_DATO =Serial.readStringUntil('\n');
Serial.println(STRING_DATO );//MMMMMMMMMMMMMMMMMMMMMMMMMM
delay(10);
}
//****************** _TRANSFORMAR_VARIABLES_ ****************
INT_DATO = String(STRING_DATO).toInt();//transforma un String en int.
DATO_FLOAT_1 = atof(STRING_DATO.c_str());//transforma un String en float.
//-----------------------------------------------------------
Wire.beginTransmission(1);
wireWriteData(DATO_FLOAT_1);
Wire.endTransmission();
delay(30);
//Serial.println(DATO_FLOAT_1 );//MMMMMMMMMMMMMMMMMMMMMMMMMM
//------------------------------------------------------------
}
y este es el esclavo
Código: #include <WireData.h>
//#include <Wire.h>
const int ENTRADA_ANALOGICA = A0;
int VALOR_SENSOR = 0;
int VALOR_INTERNO = 0;
int VALOR_INTERNO_2 = 0;
String STRING_DATO;
volatile float DATO_RECIBIDO_FLOAT =0.00;
volatile int INT_DATO= 0;
int IN3 = 7;
int IN4 = 8;
int PWM = 9;
int POWER= 0;
void setup()
{
// initialize serial communications at 9600 bps:
Serial.begin(9600);
Wire.begin(1); //Empezamos la comunicación I2C con dirección 4 (dispositivo slave)
Wire.onReceive(RECIBO_DATO_DEL_MAESTRO); //
pinMode(IN3,OUTPUT);
pinMode(IN4,OUTPUT);
pinMode(PWM,OUTPUT);
}
void loop()
{
/*
while (Serial.available() > 0)
{
//************RECEPCIÓN_DATOS_MONITOR_SERIAL********
STRING_DATO =Serial.readStringUntil('\n');
Serial.println(STRING_DATO );//MMMMMMMMMMMMMMMMMMMMMMMMMM
POWER= 22;
delay(10);
}
//****************** _TRANSFORMAR_VARIABLES_ ****************
INT_DATO = String(STRING_DATO).toInt();//transforma un String en int.
//FLOAT_DATO = atof(STRING_DATO.c_str());//transforma un String en float.
//-----------------------------------------------------------
*/
VALOR_SENSOR = analogRead(ENTRADA_ANALOGICA);
VALOR_INTERNO = map(VALOR_SENSOR, 0, 1023, 0, 255);//VALOR_INTERNO_2
VALOR_INTERNO_2 = map(VALOR_INTERNO, 0, 230, 0, 180);//VALOR_INTERNO_2
delay(1);
Serial.print("\tVALOR_INTERNO_2= ");//MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
Serial.print(VALOR_INTERNO_2);//MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
Serial.print("\tVALOR_INTERNO= ");//MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
Serial.print(VALOR_INTERNO);//MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
Serial.print("\tINT_DATO= ");
Serial.println(INT_DATO);//MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
//------------------------------------------------------------------------
INT_DATO = (int)DATO_RECIBIDO_FLOAT;
//-------------------------------------------------------------------------------
if (INT_DATO < VALOR_INTERNO_2 && VALOR_INTERNO > 6 && INT_DATO !=0 && POWER ==22 )//A BAJO
{
Serial.print("\tVALOR_INTERNO_2= ");//MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
Serial.print(VALOR_INTERNO_2);//MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
Serial.print("\tVALOR_INTERNO= ");//MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
Serial.print(VALOR_INTERNO);//MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
Serial.print("\tINT_DATO= ");
Serial.println(INT_DATO);//MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
VALOR_SENSOR = analogRead(ENTRADA_ANALOGICA);
VALOR_INTERNO = map(VALOR_SENSOR, 0, 1023, 0, 255);//
VALOR_INTERNO_2 = map(VALOR_INTERNO, 0, 230, 0, 180);//VALOR_INTERNO_2
//Serial.println("VALOR_INTERNO");//MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
digitalWrite(IN3,HIGH);// LOW
digitalWrite(IN4,LOW);// HIGH
analogWrite(PWM,POWER);
}
if(INT_DATO == VALOR_INTERNO_2)
{
VALOR_SENSOR = analogRead(ENTRADA_ANALOGICA);
VALOR_INTERNO = map(VALOR_SENSOR, 0, 1023, 0, 255);//0, 1023, 0, 255
VALOR_INTERNO_2 = map(VALOR_INTERNO, 0, 230, 0, 180);//VALOR_INTERNO_2
digitalWrite(IN3,HIGH);// LOW
digitalWrite(IN4,HIGH);// HIGH
analogWrite(PWM,100);
POWER =0;
IGUALDAD();
}
//-------------------------------------------------------------------------------
//--------------------------------------------------------------------------------
if (INT_DATO > VALOR_INTERNO_2 && VALOR_INTERNO < 234 && INT_DATO !=0 && POWER ==22)// A ARRIBA
{
VALOR_SENSOR = analogRead(ENTRADA_ANALOGICA);
VALOR_INTERNO = map(VALOR_SENSOR, 0, 1023, 0, 255);//
VALOR_INTERNO_2 = map(VALOR_INTERNO, 0, 230, 0, 180);//VALOR_INTERNO_2
//Serial.println("VALOR_INTERNO");//MMMMMMMMMMMMMMMMMMMMMMMMMMMMMMMM
digitalWrite(IN3,LOW);// LOW
digitalWrite(IN4,HIGH);// HIGH
analogWrite(PWM,POWER);
}
if (INT_DATO == VALOR_INTERNO_2)
{
VALOR_SENSOR = analogRead(ENTRADA_ANALOGICA);
VALOR_INTERNO = map(VALOR_SENSOR, 0, 1023, 0, 255);//
VALOR_INTERNO_2 = map(VALOR_INTERNO, 0, 230, 0, 180);//1, 223, 0, 180)
digitalWrite(IN3,HIGH);// LOW
digitalWrite(IN4,HIGH);// HIGH
analogWrite(PWM,100);
POWER =0;
//delay(1000);
IGUALDAD();
}
//---------------------------------------------------------------------------------
}
//************************_COMUNICACION_I2C_ ************************
void RECIBO_DATO_DEL_MAESTRO(int byteCount)
{
wireReadData(DATO_RECIBIDO_FLOAT);
delay(5);
//INT_DATO = (int)DATO_RECIBIDO_FLOAT;
}
//--------------------------------------------------------------------
void IGUALDAD()
{
VALOR_SENSOR = analogRead(ENTRADA_ANALOGICA);
VALOR_INTERNO = map(VALOR_SENSOR, 0, 1023, 0, 255);//
VALOR_INTERNO_2 = map(VALOR_INTERNO, 0, 230, 0, 180);//VALOR_INTERNO_2
POWER =0;
digitalWrite(IN3,HIGH);// LOW
digitalWrite(IN4,HIGH);// HIGH
POWER =0;
//delay(20);
loop();
}
|
|
|
|