Buenas, antes que nada me presento. Mi nombre es Martin Gava, soy de Uruguay y aficionado a la electrónica
Tengo construida una CNC con electrónica Ramps 1.4, Arduino mega, Motores Nema17, Spindle brusless 5055-720kv 80A y gracias a este fantástico trabajo la estoy pudiendo hacer andar.
Cuando arranque este proyecto me propuse usar LInuxCNC con el Hal2Arduino pero por problemas en la velocidades de los motores desistí y busque otras alternativas. una de ellas era GRBL pero no es compatible con Arduino Mega ya que los motores tienen que estar todos dentro del mismo bus y en Ramps 1.4 estan todos en distintos bus. Buscando alternativas decidí usar Marlin y modificarlo para que funcione como una CNC y no una impresora 3D.
Hasta ahí funcionaba todo perfecto salvo por el nivelado de la cama, por lo cual opte por habilitar Autolevel pero al realizar el fresado en PCB no me quedaban nunca bien.
Buscando en internet me encontré con Cyclone PCB y realmente me pareció fantástico.
Lo configure para Ramps, modifique los datos de los motores ya que uso micropasos y no tengo engranajes y arrancaron las pruebas.
La maquina funciona de maravillas y el nivelado es perfecto, por lo cual esa tarea para mi estaba terminada, solo quedaba hacer funcionar el spindle brushless el cual utiliza la librería Servo.h y dentro de los archivos de Cyclone PCB no se encuentran, por lo cual copie los 2 archivos de marlin (Servo.h y Servo.cpp) a Cyclone PCB y configure todo tal cual lo tenia con marlin.
Mi problema esta en que simplemente con colocar #include "Servo.h" y Servo Spindle; ya me da un error en la compilación
Marlin_main.cpp.o: In function `_GLOBAL__sub_I_Spindle':
Marlin_main.cpp:50: undefined reference to `Servo::Servo()'
/usr/lib/gcc/avr/4.7.2/../../../avr/lib/avr6/crtm2560.o: In function `__bad_interrupt':
../../../../crt1/gcrt1.S:195: relocation truncated to fit: R_AVR_13_PCREL against symbol `__vector_53' defined in .text section in /usr/lib/gcc/avr/4.7.2/../../../avr/lib/avr6/crtm2560.o
collect2: error: ld returned 1 exit status
Vale aclarar que abriendo los ejemplos de servo en arduino funciona sin problema.
Alguna idea sobre esto? estaria eternamente agradecido.
Disculpen que no escribo en ingles pero lamentablemente no se el idioma igualmente dejo copia traducida en google
--------------------------------------------
Sorry is a translation of google .
Hi, first of all I introduce myself . My name is Martin Gava , I'm from Uruguay and amateur electronics
I have built a CNC machine with electronic Ramps 1.4 Arduino mega, Nema17 Motors , Spindle brusless 5055 - 720kv 80A and thanks to this fantastic job I can do the walk.
When starting this project I decided to use LinuxCNC Hal2Arduino but problems with motor speeds gave up and look for other alternatives. one was GRBL but is not compatible with Arduino Mega because the engines have to be all in the same bus and Ramps 1.4 are all in different bus. Seeking alternatives Marlin decided to use and modify it to work as a CNC and not a 3D printer.
So far everything worked perfect except for the level of the bed, which enable Autolevel but chooses to perform milling PCB I never fit well .
Searching the internet I found Cyclone PCB and I really thought it was fantastic .
The set for Ramps , modify data as microstepping motors and I do not use gears and pulled the tests.
The machine works great and the level is perfect , so the task for me was over , there was only operate the brushless spindle which uses Servo.hy Seller within Cyclone PCB files not found , so copy the 2 files marlin ( Servo.hy Servo.cpp ) Cyclone PCB and configure everything as they had with marlin .
My problem is that simply put # include " Servo.h " Servo and Spindle ; and gives me an error in the compilation
Marlin_main.cpp.o : In function ` _GLOBAL__sub_I_Spindle ' :
Marlin_main.cpp : 50 : undefined reference to ` Servo :: Servo () '
/ usr/lib/gcc/avr/4.7.2/../../../avr/lib/avr6/crtm2560.o : In function ` __bad_interrupt ' :
../../../../crt1/gcrt1.S : 195 : relocation truncated to fit: . R_AVR_13_PCREL __vector_53 against symbol ` ' defined in text section in / usr/lib/gcc/avr/4.7.2 / ../../../avr/lib/avr6/crtm2560.o
collect2 : error : ld returned 1 exit status
Worth mentioning that opening examples in arduino servo works without problem.
Any thoughts on this ? would be eternally grateful.