[Home]LaserBeamCompensation

LinuxCNCKnowledgeBase | RecentChanges | PageIndex | Preferences | LinuxCNC.org

Difference (from prior major revision) (no other diffs)

Changed: 33,47c33,47
float IN -- velctrl.0.beam-corr-add axis X+, correction of commanded vel in %

float IN -- velctrl.0.beam-corr-sub axis X-, correction of commanded vel in %

float IN -- velctrl.0.joint-pos-cmd-in axis X: actual position

float IN -- velctrl.0.pos-max ignore

float IN -- velctrl.0.pos-min ignore

float IN -- velctrl.1.beam-corr-add axis Y+, correction of commanded vel in w %

float IN -- velctrl.1.beam-corr-sub axis Y-, correction of commanded vel in w %

float IN -- velctrl.1.joint-pos-cmd-in axis Y: actual position

float IN -- velctrl.1.pos-max ignore

float IN -- velctrl.1.pos-min ignore

bit IN FALSE velctrl.beam-corr-enable enable correction according of direction of current move

float IN 100 velctrl.dist-corr ignore

bit IN FALSE velctrl.dist-corr-enable ignore

float IN -- velctrl.feedoverride-in feedoverride from emc

float OUT -- velctrl.feedoverride-out feedoverride with correction applied

float IN -- velctrl.0.beam-corr-add axis X+, correction of commanded vel in %
float IN -- velctrl.0.beam-corr-sub axis X-, correction of commanded vel in %
float IN -- velctrl.0.joint-pos-cmd-in axis X: actual position
float IN -- velctrl.0.pos-max ignore
float IN -- velctrl.0.pos-min ignore
float IN -- velctrl.1.beam-corr-add axis Y+, correction of commanded vel in w %
float IN -- velctrl.1.beam-corr-sub axis Y-, correction of commanded vel in w %
float IN -- velctrl.1.joint-pos-cmd-in axis Y: actual position
float IN -- velctrl.1.pos-max ignore
float IN -- velctrl.1.pos-min ignore
bit IN FALSE velctrl.beam-corr-enable enable correction according of direction of current move
float IN 100 velctrl.dist-corr ignore
bit IN FALSE velctrl.dist-corr-enable ignore
float IN -- velctrl.feedoverride-in feedoverride from emc
float OUT -- velctrl.feedoverride-out feedoverride with correction applied

Laser Beam Compensation

Contents

1. Description
2. Hal module
3. Hal pins description

1. Description

When using older lasers, the beam spot is often not circular. Often the beam shape is elliptic and its shape is changing.

If the beam shape is larger in X than in Y, then the cut slot (kerf) has different dimension when path is along X versus path is along Y. (imagine the slot made by an ellipse moving around an equilateral triangle.

upload:xeliplasr01.png

It was found that traveling faster in the direction normal to the widest beam, caused the slot width to reduce.

A consistant slot could be accomplished by varying velocity and distance of snout from material. Those corrections are different accordingly of direction of current move.

If we must use those machine and make enough precise burning, we can create dynamic beam shape compensation module in hal. After that and few changes we can force EMC laser machine to make precise burning in each direction.

2. Hal module

source file: upload:velctrl.comp

3. Hal pins description

Type  Dir    DefaultVal  Name                          Desc
------
float IN             --  velctrl.0.beam-corr-add       axis X+, correction of commanded vel in %
float IN             --  velctrl.0.beam-corr-sub       axis X-, correction of commanded vel in %
float IN             --  velctrl.0.joint-pos-cmd-in    axis X: actual position
float IN             --  velctrl.0.pos-max             ignore
float IN             --  velctrl.0.pos-min             ignore
float IN             --  velctrl.1.beam-corr-add       axis Y+, correction of commanded vel in w %
float IN             --  velctrl.1.beam-corr-sub       axis Y-, correction of commanded vel in w %
float IN             --  velctrl.1.joint-pos-cmd-in    axis Y: actual position
float IN             --  velctrl.1.pos-max             ignore
float IN             --  velctrl.1.pos-min             ignore
bit   IN          FALSE  velctrl.beam-corr-enable      enable correction according of direction of current move
float IN            100  velctrl.dist-corr             ignore
bit   IN          FALSE  velctrl.dist-corr-enable      ignore
float IN             --  velctrl.feedoverride-in       feedoverride from emc
float OUT            --  velctrl.feedoverride-out      feedoverride with correction applied

LinuxCNCKnowledgeBase | RecentChanges | PageIndex | Preferences | LinuxCNC.org
This page is read-only. Follow the BasicSteps to edit pages. | View other revisions
Last edited August 22, 2008 1:31 pm by Micges (diff)
Search:
Published under a Creative Commons License