1. 가변 폴리곤 지연 시간 (Variable polygon delay time)
스캐너를 이용해 연속된 경로를 가공할 경우 아래와 같이 모서리 부분에서 연속된 마크(Mark) 명령이 일어나며 이때 적절한 지연시간(delay)이 설정되어 있지 않으면 부드럽게(지연 시간값이 너무 낮을 경우) 혹은 너무 과도하게 지짐(?) 효과(지연 시간값이 너무 높을 경우)가 나타납니다. 때문에 모서리 부분에서의 고품질을 얻기 위해서는 적절한 지연 시간 설정이 반드시 필요합니다.

그러나 이 시간값을 고정값으로 설정해 사용하면 모든 꺽임 부분에서 동일한 지연 시간이 설정되어 꺽임량(각도)에 따라 적절한 지연시간을 사용할 수가 없습니다.
이를 해소하기 위해서는 아래와 같이 각도(angle)에 따라 지연 시간을 서로 다르게 설정하여 레이저 가공 품질을 크게 향상 시킬 수 있습니다.

꺽임 각도가 0도 일 때는 지연 시간이 없고, 90도 꺽일 때는 사용자가 입력한 지연 시간값 (비율 1.0)이 적용되며, 180도 꺽일 경우 입력한 지연 시간값의 2.0 배가 적용되는 방식입니다. 즉 아래와 같이 각도에 따라 1- 코사인 형태의 보상 테이블 적용이 가능합니다.

비율(Scale) = 1 – Cos(각도)
시리우스 라이브러리의 펜 편집기에서는 이 가변 폴리곤 지연 시간(Scanner variable polygon delay time) 기능을 아래와 같이 활성화 할 수 있습니다. 아래에서는 기본 지연시간을 50usec 로 설정한 모습입니다.
때문에 45도 꺽임에서는 약 25usec, 90 도 꺽임에서는 50usec, 180도 꺽임에서는 100usec 지연시간이 자동적용됩니다. 만약 180도 꺽임에서 적용되는 2배의 시간값이 너무 커 품질에 악영향을 미치면 아래와 같이 최대 제한 시간을 (Polygon edge level time) 설정 할 수 있습니다.

2. 가변 점프 지연 시간 (Variable jump delay time)
스캐너를 이용해 가공 시작점으로 고속의 점프(Jump)를 시도할 경우 아래와 같이 명령된 위치에 도착할때까지의 대기 시간 및 안정화 시간이 필요합니다. 이를 통상 점프 지연 시간이라 부르는데, 이 시간은 모든 점프 명령의 끝에 추가되는 시간입니다.

만약 점프 시간이 너무 짧은 상태로 점프 후 가공을 시작하게 되면, 아래와 같이 시작 부분에서 떨리거나 너무 빨리 레이저 가 출사되는 현상이 일어날 수 있습니다. 반면 충분히 큰 점프 지연 시간값은 전체 가공시간이 늘어난다는 단점만 있습니다.

만약 매우 많은 점프 구간이 있는 가공의 경우 총 소요시간이 급격히 증가하게 됩니다. 때문에 매우 가까운 거리를 점프할 경우 이 지연시간을 낮추어 가공하는것이 효율적일 것입니다.
시리우스 라이브러리에서는 가변 점프 지연 시간 (Variable jump delay time) 을 펜 편집기에서 설정 가능합니다.

예를 들어 아래와 같이 가변 점프 지연 시간 (Variable jump delay time) 항목을 활성화 하게 되면, 제한 거리(1mm) 보다 큰 점프의 경우 250usec 의 지연 시간이 삽입되고, 그보다 짧은 거리(1mm 이하)의 점프 시에는 거리에 따라 50usec(최소 점프 지연 시간: Min. time) ~ 250usec 의 값이 비율적으로 적용됩니다.

3. 등속 가공 기법 (Sky writing)
레이저 소스의 출력 주파수는 고정으로 출력이 이루어지지만, 스캐너의 가감속 운동으로 인해 시작, 끝 부분에서는 항상 레이저 펄스가 더욱 중첩(overlap) 되는 문제가 발생합니다. 이는 대상 제품에 다양한 품질 문제가 발생합니다. 이를 해결하기 위해서 점프(Jump) 구간에서 선, 후행 적으로 가감속 운동을 추가해 주는 기능을 일명 Sky writing 이라고 합니다.


시리우스 라이브러리에서는 펜 편집기 내에서 아래와 같이 Sky writing 모드 (1,2,3) 선택 사용이 가능합니다.

4. 위치 의존적 자동 레이저 컨트롤 (Position dependent automatic laser control)
이전 글 참고 링크 (고급 스캐너/레이저 제어 기법) : http://www.spirallab.co.kr/?p=281
이전 글 참고 링크 (Pulse on Demand 가공 소개) : http://www.spirallab.co.kr/?p=491
이전 글 참고 링크 (레이저 출력 자동 제어 PoD) : http://www.spirallab.co.kr/?p=713

신규 버전 : 거리,비율 테이블을 직접 입력
그밖에 intelli~ 시리즈의 스캐너를 사용할 경우에는 Actual Velocity 응답이 가능하며, 이 속도 정보를 기반으로 하는 자동 레이저 출력 제어 조합도 사용 가능합니다.
5. 엔코더 에러 보상 테이블 (Encoder compensate table)
외부 스테이지(혹은 컨베이어) 에서 발생하는 엔코더 증감값을 RTC 에 직접 입력하여 대면적 혹은 가상 이미지 영역(Virtual Image Field)에 대한 MoF(Marking on the fly) 가공이 가능합니다.

이때 매우 정밀한 가공 위치 처리를 위해 스테이지의 위치 에러 보상 테이블 등의 추가 작업을 통해 아래와 같이 좀더 정밀한 제어가 가능하도록 적용합니다.


이렇게 구동축에 에러 매핑을 적용한 후 MoF 가공을 사용하게 되면 구동축에서 발생하는 엔코더값은 오히려 보정 이후의 값 만큼이 추가된 값이기 때문에 이를 사용한 스캐너 MoF 가공시 위치 편차가 누적되게 됩니다.
이전 글 참고 링크 (MOTF 사용하기) : http://www.spirallab.co.kr/?p=457
때문에 이번 버전에서는 MoF 입력 엔코더에 대한 추가적인 역(!)보정 테이블을 아래와 같이 설정 가능합니다.
var rtcMotf = rtc as IRtcMOTF;
// 실제 위치 (x, y), 에러량 (dx, dy)
var encCompensate2DTable = new List<KeyValuePair<(float posX, float posY), (float deltaX, float deltaY)>>
{
new KeyValuePair<(float, float), (float, float)>((0, 0), (0, 0)),
new KeyValuePair<(float, float), (float, float)>((50, 0), (0.001f, 0.002f)),
new KeyValuePair<(float, float), (float, float)>((0, 50), (-0.001f, -0.001f)),
new KeyValuePair<(float, float), (float, float)>((50, 50), (0.005f, 0.008f))
};
// 보정 테이블 설정
rtcMotf.CtlMotfCompensateTable(encCompensate2DTable.ToArray());