KR0168072B1 - 공구직경에 따른 이동경로 보정방법 - Google Patents

공구직경에 따른 이동경로 보정방법 Download PDF

Info

Publication number
KR0168072B1
KR0168072B1 KR1019920025791A KR920025791A KR0168072B1 KR 0168072 B1 KR0168072 B1 KR 0168072B1 KR 1019920025791 A KR1019920025791 A KR 1019920025791A KR 920025791 A KR920025791 A KR 920025791A KR 0168072 B1 KR0168072 B1 KR 0168072B1
Authority
KR
South Korea
Prior art keywords
tool
straight line
vector
movement path
arc
Prior art date
Application number
KR1019920025791A
Other languages
English (en)
Other versions
KR940015732A (ko
Inventor
강문
Original Assignee
윤종용
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 윤종용, 삼성전자주식회사 filed Critical 윤종용
Priority to KR1019920025791A priority Critical patent/KR0168072B1/ko
Publication of KR940015732A publication Critical patent/KR940015732A/ko
Application granted granted Critical
Publication of KR0168072B1 publication Critical patent/KR0168072B1/ko

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form

Landscapes

  • Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Numerical Control (AREA)

Abstract

본 발명은 컴퓨터수치 제어기기에 의한 공작물의 가공시, 첫 번째 가공블록이 직선이고, 두 번째 블록이 원호이며 그 교점각도()가 0

Description

공구직경에 따른 이동경로 보정방법
제1도는 CNC의 공구직경에 따른 이동경로 보정에 대한 개념도.
제2도는 사각형공작물의 경우 공구의 좌측이동방향으로의 보정개념도.
제3도는 사각형공작물의 경우 공구의 우측이동방향으로의 보정개념도.
제4도는 공작물가공시 공구직경이 제로인 경우 프로그램된 경로를 도시한 원리도.
제5도는 공구직경이 d인 경우 프로그램된 경로와 실제공구경로를 도시한 원리도.
제6도는 본 발명을 실현하기 위한 장치의 구성블록도.
제7도는 본 발명의 원호 및 원호의 고정각이 90˚ 이하일 경우에 대한 공구이동경로 보정방법도.
제8도는 본 발명의 동작순서를 도시한 플로우챠트.
* 도면의 주요부분에 대한 부호의 설명
10,30 : 마이크로 프로세서 20 : 램
40 : D/A변환기 50 : 서보제어부
60 : 서보모터
본 발명은 컴퓨터수치 제어기기(Computer Numerical Control, 이하 CNC라 칭함)에 의한 공작물의 가공시, 공구직경에 따른 공구이동경로를 생성하는 방법에 관한 것으로써 특히, 첫 번째 가공블록이 직선이고, 두 번째 블록이 원호이며 그 교점각도()가 090˚인 경우의 공구이동경로를 보정생성할 수 있는 공구직경에 따른 이동경로 보정방법에 관한 것이다.
일반적으로 CNC에 의해 공구는 지령된 위치로 움직이도록 제어되며, 이 위치가 공구의 중심이 된다.
이에 따라, 가공되는 공작물의 면은 공구의 중심으로부터 공구의 반지름만큼 떨어진 위치가 되므로 공작물 가공시 공작물을 원하는 형상으로 가공하기 위해서는 이에 사용되는 공구직경(d)에 따라 공구가 움직여야할 이동경로가 바뀌어야 한다.
즉, 실제로 원하는 형상의 가공물을 얻기 위해서는 공구반지름 만큼 공구이동경로가 보정되어야 하는 것이다.
구체적인 예로써 제1도에 도시한 바와 같이, 소정지름(d)을 갖는 공구(1)를 사용해서 가공할 수 있도록 본래 사용자에 의해 프로그램된 이동경로(2)로부터 공구의 반지름만큼 떨어진 또 다른 이동경로(3)를 따라 공구(1)가 움직여야만 공작물(4)을 원하는 형상으로 가공할 수 있는 것이다.
통상적으로 공작기계에 의한 공작물 가공시, 공구직경에 따른 이동경로 보정에 사용되는 G-코드(준비기능)는 공구직경에 따른 이동경로보정을 무시(cancel)하기 위한 G40, 제2도에 도시한 바와 같이 공구(1)가 공작물(4)에 대해 좌측으로 움직이면서 가공할 경우의 이동경로보정을 지령하기 위한 G41, 제3도에 도시한 바와 같이 공구(1)가 공작물(4)에 대해 우측으로 움직이면서 가공할 경우의 이동경로 보정을 지령하기 위한 G42 코드 등이 있다.
이와 같은 기능코드등을 이용해서 새로운 공구이동경로를 산출하는데 있어서, 만일 공구가 이동해야할 블록형태가(블록면이) 직선과 직선, 직선과 원호, 원호와 직선, 원호와 원호일 경우 두 블록형태 사이의 교점을 구해 두 교점간을 연결함으로써 새로운 보정된 공구이동경로를 산출해야 한다.
이때, 공구반지름 만큼 보정된 공구이동경로를 얻기 위해서는 각 블록마다 본래의 공구이동경로로 프로그램된 공구이동경로로부터 공구반지름만큼 직선 또는 원호를 이동시켜서 이들의 교점을 구해야 한다.
그럼에도 불구하고 종래에는 이와같은 공작물형태에 따른 정밀한 공구이동경로 보정방법이 제안되지 못함으로써 고도의 정밀성을 요구하는 공작물 가공에는 부적합하다는 단점이 있었다.
즉, 비록 미세한 차이이기는 하나 고도로 정밀한 공작물의 형태가 형성되지 못함으로써 전체적인 제품의 품질을 저하시키는 요인이 되어왔던 것이다.
따라서, 본 발명은 이와 같은 점을 감안해서 이루어진 것으로써, 첫 번째 블록이 원호이고, 두 번째 블록도 원호이며 그 교점각이 090˚인 경우에 공구이동방향에 대해 공구반지름 크기의 수직 및 수평벡터를 구하여 정확한 공구이동경로를 보정생성시킬 수 있는 공구직경에 따른 이동경로보정 방법을 제공하는데 그 목적이 있다.
상기 목적을 달성하기 위한 본 발명은, 공구직경에 따라 보정된 공구이동경로를 이동하면서 원하는 형상으로 공작물을 가공하는 CNC 공작기계에 있어서, 직선의 시작점, 직선 및 원호의 교점, 원호의 종료점을 설정한 상태에서 제1마이크로프로세서에 의해 이동경로보정무시, 공구이동방향의 좌측 또는 우측으로의 보정여부를 판단토록 해당코드를 읽어들이는 제1스텝과, NC프로그램에서 한블록의 프로그램을 제1마이크로 프로세서가 읽어들인 후 이동경로보정 진행중인지의 여부를 판별하는 제2스텝과, 이 판별결과 이동경로보정이 진행중일 경우에는 공구반지름 크기의 직선수평벡터 d1 및 원호수직벡터 V2를 구하는 제3스텝과, 제1마이크로프로세서에 의해 연산된 공구직경에 따른 공구반지름 크기의 직선수직벡터 V1 및 원호수평벡터 d2를 구하는 제4스텝과, 직선과 원호가 접하는 교점에서 각각 수직하는 벡터 V1' 및 V2'를 구하는 제5스텝과, 첫 번째 교점벡터 C1을 구하는 제6스텝과, 두 번째 직선과 원호간의 교점벡터 C2를 구하는 제7스텝과, 세 번째 직선과 원호간의 교점벡터 C3를 구하는 제8스텝과, 상기 각각의 스텝에서 구해진 점들을 서로 연결하여 보정된 공구이동경로에 따라 서보모터를 구동시키는 제9스텝으로 이루어진 것을 특징으로 한다.
이하, 본 발명의 실시예를 도면을 참조하여 상세히 설명한다.
제4도는 공작물가공시 공구직경이 제로인 경우 프로그램된 경로를 도시한 원리도, 제5도는 공구직경이 d인 경우 프로그램된 경로와 실제공구경로를 도시한 원리도, 제6도는 본 발명을 실현하기 위한 장치의 구성블록도, 제7도는 본 발명의 원호 및 원호의 교점각이 90˚ 이하일 경우에 대한 공구이동경로보정 방법도, 제8도는 본 발명의 동작순서를 도시한 플로우챠트이다.
다음과 같은 공작물을 가공하기 위한 G-코드 프로그램이 있다고 가정한다.
여기서 X-Y평면상에서 공구직경에 따른 이동경로 보정시 시작되는 좌표(X,Y)는 (200,200)이고, G90은 절대좌표계, G17은 X-Y평면, G41은 공구진행 방향의 좌측보정, D10은 공구직경이 10, G01은 두점간의 직선보간을 나타낸다.
이와같은 가공프로그램에 의해 X-Y평면상에서 공구를 움직이는 경로를 도시한 제4도에 있어서는 상기 D10이 없는 경우 즉, 공구직경이 0인 경우이다.
이때, 두 번째 블록(G90,G17,G41,X100,Y100)과 세 번째 블록(G01,X300,Y300)과의 교점의 각도()는 090˚라고 가정한다.
이와같은 초기조건하에서 공구직경인 d인 경우의 공구이동경로 보정동작이 제5도에 도시한 바와 같으며, 이때 본래 프로그램된 공구이동경로는 S→E→T이고, 보정된 이동경로는 S→S1→S2→S3이며, 이 동작은 제6도의 구성장치와 제8도의 동작순서에 따라 진행된다. 제6도에 있어서, (10)은 공구직경에 따른 이동경로보정 즉, 공구직경에 따라 보정된 경로를 움직일 수 있도록 보정경로에 대한 연산을 행하는 제1마이크로프로세서이고, (20)은 상기 제1마이크로프로세서(10)에 의해 연산된 보정경로 데이터를 지정하는 램이며, (30)은 상기 제1마이크로프로세서(10)에 의한 공구경에 따른 이동경로 보정의 연산결과 즉, 공구가 움직여야할 최종 목표위치를 램(20)으로부터 입력받아서 서보모터(60)의 위치제어를 위한 총괄적인 제어를 수행하는 제2마이크로프로세서이다. (40)은 상기 제2마이크로프로세서(30)로부터 출력되는 서보모터(60)의 속도제어 디지털 데이터를 아날로그 신호로 변환시키는 D/A변환기이고, (50)은 상기 D/A변환기(40)에 의해 아날로그 신호로 변환된 서보모터(60)의 속도제어 입력데이터를 이용하여 서보모터(60)의 속도 및 전류를 제어하는 서보제어부이고, (80)은 상기 엔코더(70)에 의해 검출된 서보모터(60)의 위치에 대한 펄스데이터의 증감을 행하여 제2마이크로프로세서(30)에 입력시킴으로써 제2마이크로프로세서(30)에 저장된 서보모터 위치 판별프로그램에 의해서 서보모터(60)의 현재위치를 판별토록하는 업/다운 카운터이다.
다음에, 제6도 내지 제8도를 참조하여 본 발명의 전체적인 동작을 설명한다.
본 발명이 시작되면 스텝S1에서는 원호의 시작점을 (Xs,Ys), 원호 및 직선의 교점(Xc,Yc), 직선의 종료점을 (Xe,Ye)로 설정한 상태에서 제1마이크로프로세서(10)에 의해 G-코드프로그램을 읽어들이는 동작을 수행한다.
즉, 공구이동방향의 좌측 또는 우측 또는 보정을 무시해도 좋은지의 여부를 의미하는 G40,G41,G42 코드중의 어느 하나의 코드를 읽어들이며, 본 발명에서는 편의상 G42 코드를 읽어들여서 우측 이동방향으로의 공구이동경로를 보정하는 것으로 한다.
스텝S2에서는 NC프로그램에서 한 블록의 프로그램을 읽어들이며, 스텝S3로 나아가서는 공구직경에 따른 이동경로보정이 진행중인지의 여부를 제1마이크로프로세서(10)가 판별하고, 이 판별결과 이동경로보정이 진행중일 경우(yes일 경우)에는 스텝S4에서 다음식(3)(4) 및 (3')(4')를 이용하여 공구반지름 크기의 직선수평벡터 d1 및 원로수직벡터 V2를 구한다.
여기서 d는 공구반지름이고, d1x,d1y는 d1벡터의 x 및 y성분이다.
여기서 d는 공구반지름이고, V2x,V2y는 V2벡터의 x 및 y성분이다.
또한, (Xcc,Ycc)는 원호의 중심이다.
이후, 스텝S5에서는 상기 스텝S4에서 제1마이크로프로세서(10)에 의해 연산된 공구직경에 따른 이동경로보정 시작점(Xs,Ys)과 종료점(Xe,Ye)까지의 공구반지름 크기의 직선수직벡터 V1 및 공구반지름 크기의 원호수평벡터 d2를 각각 수평벡터 d1을 시계방향으로 90˚ 회전시키고, 수직벡터 V2를 시계방향으로 90˚ 회전시켜서 다음식(5)(6)(5')(6')에 의해 구한다.
다음에, 스텝S6에서는 직선과 원호가 접하는 교점에서 각각 수직하는 벡터 V2' 및 V1'를 다음식(7)(8)(7')(8')를 이용하여 구한다.
다음에, 첫 번째 직선과 원호의 교점벡터 C1(Xc1,Yc1)을 스텝S7에서 구하는데 이 첫 번째 교점벡터 C1는 V1' 벡터와 d1 벡터의 합이 된다.
다음에, 스텝S8에서 두 번째 블록면의 형태인 직선과 원호간의 교점벡터 C2(Xc2,Yc2)를 다음식 (9')(10')에 의해 구한다.
다음에, 스텝S9에서는 세 번째 직선과 원호의 교점벡터 C3(Xc3,Yc3) 즉, 마지막 교점벡터를 다음식(11)(12)에 의해 구한다.
이상과 같이 직선과 원호간의 교점벡터들을 구하고 그점들을 서로 연결하면 공구반지름 만큼 보정된 새로운 공구이동경로가 생성된다.
즉, 제2마이크로프로세서(30)로부터 서보모터(60)의 속도제어용 디지털 데이터가 D/A변환기(40)에 입력되면 이 디지털 데이터가 D/A변환기(40)에 의해 아날로그 전압으로 변환되어서 서보제어부(50)에 인가됨으로써 서보모터(60)의 이동속도가 제어되도록 하는 것이다.
한편, 상기 스텝S3에서의 판별결과 공구직경에 따른 공구이동경로 보정진행중이 아닐 경우에는 스텝S11로 나아가서 본래 사용자에 의해 프로그램된 공구이동경로를 따라 공구가 이동하면서 공작물을 가공토록 한다.
이와 같이 본 발명의 공구직경에 따른 이동경로보정방법에 의하면, 첫 번째 블록이 직선이고, 두 번째 블록이 원호이며 그 교점각이 090˚일 경우에 공구이동방향에 대해 공구반지름 크기의 수직 및 수평벡터를 구하고 정확한 공구이동경로를 보정생성시킨 후 이 이동경로에 따라 공구가 이동하면서 공작물을 가공토록 함으로써 고도의 정밀한 가공이 행해지는 등의 뛰어난 효과가 있는 것이다.

Claims (4)

  1. 공구직경에 따라 보정된 공구이동경로를 이동하면서 원하는 형상으로 공작물을 가공하는 CNC 공작기계에 있어서, 직선의 시작점, 직선 및 직선의 교점, 직선의 종료점을 설정한 상태에서 제1마이크로프로세서에 의해 이동경로보정무시, 공구이동방향의 좌측 또는 우측으로의 보정여부를 판단토록 해당코드를 읽어들이는 제1스텝과, NC프로그램에서 한블록의 프로그램을 제1마이크로 프로세서가 읽어들인 후 이동경로보정 진행중인지의 여부를 판별하는 제2스텝과, 이 판별결과 이동경로보정이 진행중일 경우에는 공구반지름 크기의 직선수평벡터 d1 및 원호수직벡터 V2를 구하는 제3스텝과, 제1마이크로프로세서에 의해 연산된 공구직경에 따른 공구반지름 크기의 직선수직벡터 V1 및 원호수평벡터 d2를 구하는 제4스텝과, 직선과 원호가 접하는 교점에서 각각 수직하는 벡터 V1' 및 V2'를 구하는 제5스텝과, 첫 번째 교점벡터 C1을 구하는 제6스텝과, 두 번째 직선과 원호간의 교점벡터 C2를 구하는 제7스텝과, 세 번째 직선과 원호간의 교점벡터 C3를 구하는 제8스텝과, 상기 각각의 스텝에서 구해진 점들을 서로 연결하여 보정된 공구이동경로에 따라 써보모터를 구동시키는 제9스텝으로 이루어진 것을 특징으로 하는 공구직경에 따른 이동경로보정방법.
  2. 제1항에 있어서, 상기 제4스텝에서의 직선수직벡터 V1은 수평벡터 d1을 시계방향으로 90˚ 회전시킨 상태에서 구하는 것을 특징으로 하는 공구직경에 따른 이동경로보정방법.
  3. 제1항에 있어서, 상기 제4스텝에서의 원호수평벡터 d2는 수직벡터 V1를 시계방향으로 90˚ 회전시킨 상태에서 구하는 것을 특징으로 하는 공구직경에 따른 이동경로보정방법.
  4. 제1항에 있어서, 상기 제2스텝에서의 판별결과, 이동경로보정 진행중이 아닐 경우에는 본래 사용자에 의해 프로그램된 이동경로를 이동하면서 공작물을 가공하는 것을 특징으로 하는 공구직경에 따른 이동경로보정방법.
KR1019920025791A 1992-12-28 1992-12-28 공구직경에 따른 이동경로 보정방법 KR0168072B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019920025791A KR0168072B1 (ko) 1992-12-28 1992-12-28 공구직경에 따른 이동경로 보정방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019920025791A KR0168072B1 (ko) 1992-12-28 1992-12-28 공구직경에 따른 이동경로 보정방법

Publications (2)

Publication Number Publication Date
KR940015732A KR940015732A (ko) 1994-07-21
KR0168072B1 true KR0168072B1 (ko) 1999-03-20

Family

ID=19346906

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019920025791A KR0168072B1 (ko) 1992-12-28 1992-12-28 공구직경에 따른 이동경로 보정방법

Country Status (1)

Country Link
KR (1) KR0168072B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111221296A (zh) * 2020-01-13 2020-06-02 浙江工业大学 一种基于dxf文件的刀具半径补偿方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111221296A (zh) * 2020-01-13 2020-06-02 浙江工业大学 一种基于dxf文件的刀具半径补偿方法
CN111221296B (zh) * 2020-01-13 2021-02-19 浙江工业大学 一种基于dxf文件的刀具半径补偿方法

Also Published As

Publication number Publication date
KR940015732A (ko) 1994-07-21

Similar Documents

Publication Publication Date Title
JP3643098B2 (ja) 数値制御装置
US5204599A (en) Contour compensation method for numerically controlled machines
US20090228138A1 (en) Numerical controller controlling five-axis processing machine
JP5800888B2 (ja) テーブル形式データによる運転でのスムージング機能を備えた数値制御装置
JPH0252282B2 (ko)
JP4199103B2 (ja) 数値制御装置及び数値制御方法
CN106493469B (zh) 能够根据姿势来控制加工条件的数值控制装置
US10073432B2 (en) Numerical controller having tool tip point control function
JP3135738B2 (ja) 数値制御装置
JP2015035021A (ja) 数値制御装置
KR0161010B1 (ko) 공구직경에 따른 이동경로 보정방법
KR0168072B1 (ko) 공구직경에 따른 이동경로 보정방법
EP0453571A1 (en) Method of correcting positional fluctuations of machine
KR0168069B1 (ko) 공구직경에 따른 이동경로 보정방법
US5276777A (en) Locus correcting method for industrial robots
KR0168070B1 (ko) 공구직경에 따른 이동경로 보정방법
KR0168071B1 (ko) 공구직경에 따른 이동경로 보정방법
JPH07152417A (ja) 数値制御装置の工具径路および送り速度制御方式
JPS6211728B2 (ko)
JP3902353B2 (ja) 数値制御装置
JPS6311231A (ja) ワイヤ放電加工装置の制御方法
EP0371142B1 (en) Method of correcting loci of an industrial robot
JPS6351811B2 (ko)
JPH1173213A (ja) 工具経路データ生成方法
JPH04176516A (ja) ワイヤ放電加工におけるセカンドカット加工方法及びセカンドカット加工制御装置

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20050929

Year of fee payment: 8

LAPS Lapse due to unpaid annual fee