Dit is een CPM 4030, van het duitse bedrijf ISEL.
De besturing en bijgeleverde software waren wat beperkt en verouderd, dus is hij omgebouwd naar FluidNC (grbl variant voor ESP32). http://wiki.fluidnc.com/
x: 380mm max 4000mm/min
y: 300mm max 4000mm/min
z: 200mm max 4000mm/min
toptool : Kiri:Moto browser based CAM
Settings : kiri-moto.zip
van de makers van lightburn : Millmage
PCB gerber omzetten naar gcode :
coppercam
online rapidpcb
flatcam
pcb2gcode en pcb2gcodeGUI
pcbgcode
2d/3d tekening omzetten naar 2d / 2.5d / 3d gcode :
cambam
carbidecreate
freemill
Fengrave
EstlCAM
PixelCNC
FreeMill
PyCAM
CAM in bestaande tekensoftware :
fusion360 CAM
Path workbench in Freecad
Inkscape
Grafische truukjes :
Halftone
Rasterbator
plaatjes naar svg
eventuele problemen met arcs en nauwkeurigheid:
G2/G3 error 33 uitleg en oplossing
Gcode streamers zijn bijna hetzelfde als 3D printer software die coördinaten naar de printer sturen vanaf de pc alleen zijn deze versies voornamelijk bedoeld voor Frezen of lasersnijden. Niet elke software voor grbl werkt ook met FluidNC, dit is testen of uitzoeken.
GSender
Universal G-Code Sender (Java Cross-platform - ook voor mac!)
bCNC
Candle
CamBam+ met plugin
van de makers van lightburn : Millmage
$HZ ;$HX;G10 P0 L20 X0;$HY; G10 P0 L20 Y0;
G21 ; metric units G91 ; Relative Positioning G38.2 Z-70 F100 ; probe down with maximum 70mm and speed 100 mm/min G10 L20 P1 Z65 ; set G54 Z to 65mm at contact G0 Z5 ; retract 5mm G38.2 Z-10 F50 ; probe down with maximum 10mm and speed 50 mm/min G10 L20 P1 Z65.3 ; set G54 Z to 65mm at contact G0 Z5 ; retract 5mm G90 ; back to absolute
g90;g21;g38.2 z-70 f100;G92 z65;g1 z67;g38.2 z-10 f50;G92 z65;g0 z75;
G90 G21; (Absolute position in mm.) G0 X10 Y10;
Type | diameter | Lengte | snijlengte | Doel | Link voor als hij stuk gaat | |
---|---|---|---|---|---|---|
![]() | 90 graden V-cutter | 6mm | 50mm | tip | Graveren / V-Carve | link |
![]() | Frees 1-snijder | 4mm | 45mm | 22mm | uitfrezen van objecten of pockets | link |
![]() | Frees 2-snijder | 0,6mm | ?mm | ?mm | Printplaten of fijn gaveerwerk | link |
Jens heeft een introductiefilmpje gemaakt over de CNC i.c.m. FreeCAD.
De freesmotor was een ISEL UFM 500 met OZ8A / EOC8A / DIN6388A spantangen (vergelijkbaar met kress FME serie) Deze gaf storingen bij langer gebruik, en onderdelen hiervoor bleken bijna even duur als een nieuwe spindel van vevor. Het gaat om de JST-JGF-F65A, een 800 watt 3-fasen spindel die op 400 Hz van de bijbehorende frequentieregelaar 10000 toeren draait. Er zit een complete set ER11 collets bij met alle metrische en imperial maten.
Er worden MSD-50-5.6 stepper driver aan de controller gekoppeld voor de aansturing van de stappenmotoren. Deze kunnen maximaal 5.6A en 50V aan.
Het betreft st5818m3008 stappenmotoren.
De spanning naar de stappenmotoren is 48v, de maximale stroom is gelimiteerd op 2,7A. De bekabeling naar de motoren is vervangen door nieuwe kabels zonder de limit switches er bij in.
Alle endswitches waren gewone schakelaartjes waarvan de draden door dezelfde kabels als de motoren liepen, dit veroorzaakte veel storing.
Alle bekabeling is vervangen door losse kabels naar de endswitches, de endswitches zijn vervangen door inductieve switches die op 12v werken.
Voor de besturing is een nieuwe print ontworpen (https://github.com/WRusman/FluidNC-BOB-v1.1) en besteld bij JLC.
In de ESP32 is FluidNC gezet voor aansturing. http://wiki.fluidnc.com/ Dit werkt als “vertaler” tussen de gcode die via USB naar de arduino wordt gestuurd en genereert stappenmotor pulsen en leest schakelaars. De software in de controller is te vergelijken met 3D printer software.
Na wat testen is een goede config gemaakt (zie onderaan) en zijn in Universal Gcode Sender een aantal macro's gemaakt voor makkelijker gebruik (zie ook hierboven).
board: Fluidnc-bob-v1.1 name: Maakmeneer Fluidnc-bob version 1.1 start: must_home: true check_limits: false stepping: engine: RMT idle_ms: 255 pulse_us: 4 dir_delay_us: 1 disable_delay_us: 0 axes: shared_stepper_disable_pin: NO_PIN shared_stepper_reset_pin: NO_PIN x: steps_per_mm: 200.000 max_rate_mm_per_min: 4000.000 acceleration_mm_per_sec2: 100.000 max_travel_mm: 380.000 hard_limits: true soft_limits: true homing: cycle: 2 allow_single_axis: true positive_direction: false mpos_mm: 1.000 feed_mm_per_min: 400.000 seek_mm_per_min: 1000.000 settle_ms: 500 seek_scaler: 1.100 feed_scaler: 1.100 motor0: limit_all_pin: gpio:36:low hard_limits: true pulloff_mm: 1.000 standard_stepper: step_pin: gpio.21 direction_pin: gpio.17 disable_pin: NO_PIN y: steps_per_mm: 200.000 max_rate_mm_per_min: 4000.000 acceleration_mm_per_sec2: 100.000 max_travel_mm: 300.000 hard_limits: true soft_limits: true homing: cycle: 2 allow_single_axis: true positive_direction: false mpos_mm: 1.000 feed_mm_per_min: 400.000 seek_mm_per_min: 1000.000 settle_ms: 500 seek_scaler: 1.100 feed_scaler: 1.100 motor0: limit_all_pin: gpio:39:low hard_limits: true pulloff_mm: 1.000 standard_stepper: step_pin: gpio.16 direction_pin: gpio.25:low disable_pin: NO_PIN z: steps_per_mm: 200.000 max_rate_mm_per_min: 4000.000 acceleration_mm_per_sec2: 100.000 max_travel_mm: 200.000 hard_limits: true soft_limits: true homing: cycle: 1 allow_single_axis: true positive_direction: true mpos_mm: 1.000 feed_mm_per_min: 400.000 seek_mm_per_min: 1000.000 settle_ms: 500 seek_scaler: 1.100 feed_scaler: 1.100 motor0: limit_all_pin: gpio:34:low hard_limits: true pulloff_mm: 1.000 standard_stepper: step_pin: gpio.26 direction_pin: gpio.27:low disable_pin: NO_PIN a: steps_per_mm: 800.000 max_rate_mm_per_min: 1000.000 acceleration_mm_per_sec2: 100.000 max_travel_mm: 300.000 hard_limits: false soft_limits: false homing: cycle: 2 allow_single_axis: true positive_direction: false mpos_mm: 1.000 feed_mm_per_min: 100.000 seek_mm_per_min: 200.000 settle_ms: 500 seek_scaler: 1.100 feed_scaler: 1.100 motor0: hard_limits: false pulloff_mm: 5.000 standard_stepper: step_pin: gpio.23 direction_pin: gpio.22 disable_pin: NO_PIN control: safety_door_pin: gpio.35 reset_pin: NO_PIN feed_hold_pin: gpio.32 cycle_start_pin: NO_PIN macro0_pin: NO_PIN macro1_pin: NO_PIN macro2_pin: NO_PIN macro3_pin: NO_PIN coolant: flood_pin: gpio.19 mist_pin: gpio.18 delay_ms: 0 probe: pin: gpio.33:low check_mode_start: true macros: startup_line0: startup_line1: macro0: macro1: macro2: macro3: user_outputs: analog0_pin: NO_PIN analog1_pin: NO_PIN analog2_pin: NO_PIN analog3_pin: NO_PIN analog0_hz: 5000 analog1_hz: 5000 analog2_hz: 5000 analog3_hz: 5000 digital0_pin: NO_PIN digital1_pin: NO_PIN digital2_pin: NO_PIN digital3_pin: NO_PIN pwm: pwm_hz: 5000 direction_pin : gpio.4 output_pin: gpio.5 enable_pin: NO_PIN disable_with_s0: false s0_with_disable: true spinup_ms: 5000 spindown_ms: 5000 tool_num: 0 speed_map: 0=0.000% 10000=100.000% off_on_alarm: true parking: enable: true axis: Z pullout_distance_mm : 5.000 pullout_rate_mm_per_min: 250.000 target_mpos_mm: -5.000 rate_mm_per_min: 800.000 spi: miso_pin: NO_PIN mosi_pin: NO_PIN sck_pin: NO_PIN sdcard: cs_pin: NO_PIN card_detect_pin: NO_PIN frequency_hz: 0