Nothing Special   »   [go: up one dir, main page]

KR930000128B1 - 원호보간에 있어서 평면이동 직교좌표위치 검출방법 - Google Patents

원호보간에 있어서 평면이동 직교좌표위치 검출방법 Download PDF

Info

Publication number
KR930000128B1
KR930000128B1 KR1019890017987A KR890017987A KR930000128B1 KR 930000128 B1 KR930000128 B1 KR 930000128B1 KR 1019890017987 A KR1019890017987 A KR 1019890017987A KR 890017987 A KR890017987 A KR 890017987A KR 930000128 B1 KR930000128 B1 KR 930000128B1
Authority
KR
South Korea
Prior art keywords
coordinate
point
radius
starting point
calculation
Prior art date
Application number
KR1019890017987A
Other languages
English (en)
Other versions
KR910012665A (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 KR1019890017987A priority Critical patent/KR930000128B1/ko
Publication of KR910012665A publication Critical patent/KR910012665A/ko
Application granted granted Critical
Publication of KR930000128B1 publication Critical patent/KR930000128B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01BMEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
    • G01B7/00Measuring arrangements characterised by the use of electric or magnetic techniques
    • G01B7/004Measuring arrangements characterised by the use of electric or magnetic techniques for measuring coordinates of points

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Numerical Control (AREA)
  • Image Analysis (AREA)

Abstract

내용 없음.

Description

원호보간에 있어서 평면이동 직교좌표위치 검출방법.
제1도는 본 발명을 수행하기 위한 하드웨어 블록도.
제2도는 본 발명에 따른 흐름도.
제3도는 본 발명을 설명하는 좌표이동 상태도.
* 도면의 주요부분에 대한 부호의 설명
10 : CPU 12 : 펜덴트
14 : 프로그램로더 16 : 인터페이스
18 : W축 모터 20 : 메모리
22 : DAC 24,26,28 : 제1, 제2, 제3모터
42 : 타코 제네레이터부 44 : 엔코더부
46 : 카운터
본 발명은 산업용 기기의 원호보간에 관한 것으로, 특히 산업용기기의 원호보간에 있어서 좌표측 회전을 이용한 정, 역방향의 평면이동 직교좌표 위치 검출방법에 관한 것이다.
통상적으로 원호를 따라서 동작하는 산업용기기, 예를들면 CNC등과 같은 수치제어기기, 로보트등의 원호보간에 있어서는 주어진 원호에 따라서 매 샘플링 시간마다 주제어장치에 컴퓨터에서 이동될 다음의 X,Y좌표의 위치를 계산하여야 한다.
종래의 산업용 기기에 있어서 상기와 같은 X,Y좌표의 위치 계산 방법은 미소 변위에 대한 현의 길이로부터 삼각함수 법칙으로부터 이동좌표위치(ΔX,ΔY)를 계산하는 방법과, 원의 방정식을 이용하여 이동좌표위치를 계산하였다.
그러나 상기와 같은 계산방식은 그 계산방법이 매우 복잡하여 마이크로프로세서가 계산치 매우 많은 시간이 요구되어 고속동작에 문제가 되어 왔다. 특히 로보트에서는 연산내용이 많기 때문에 각 부분의 빠른 계산이 절실히 요청되는데도 불구하고 계산시간이 길기 때문에 고속 동작상에 커다란 문제가 있어 왔다.
따라서 본 발명의 목적은 마이크로프로세서를 사용하는 산업용기기에 있어서 좌표측 회전을 이용하여 평면이동 직교좌표 위치를 고속계산하여 검출하는 방법을 제공함에 있다.
본 발명의 다른 목적은 좌표축 회전을 이용하여 정역방향 X,Y좌표의 계산을 간소화한 방법을 제공함에 있다.
이하 본 발명을 첨부한 도면을 참조하여 상세히 설명한다.
제1도는 본 발명을 수행하기 위한 하드웨어 블록도로서, 적어도 3개 이상의 원호 좌표값을 읽어들여 회전방향을 판별하고, 상기 원호좌표값에 의한 목표위치와 제어대상의 현위치를 비교하여 그 편차를 계산하며 제어대상이 목위치에 도달도록 속도 명령 데이터들을 출력하는 CPU(10)와 , 소망하는 목표위치 값을 원호좌표값으로 세팅하기 위한 펜덴트(pendent)(12)와, 프로그램을 상기 CPU(10)에 로딩하기 위한 프로그램로더(program loder)(14)와, 상기 펜덴트(12), 프로그램로더(14)의 출력을 상기 CPU(10)에 인터페싱하는 인터페이스(16)와, 상기 인터페이스(16)에 접속되며 상기 CPU(10)의 제어에 따라 회전하는 W축 모터(18)와, 소정의 프로그램 데이터를 저장하고 있고 상기 CPU(40)의 제어에 의해 소정 데이터를 리이드/라이트하는 메모리(20)와, 상기 CPU(10)로부터 출력되는 속도명령 데이터를 아나로그 전압으로 변환하여 출력하는 DAC(Didital to Analog Converter)(22)와, 상기 DAC(22)로부터 출력되는 아나로그 전압을 기준전압으로 입력하고 타코 제네레이터(Tacho generator)(42)로부터의 피이드 백신호를 입력하여 2차로서 모터속도를 제어하는 서보팩(Servo pack)을 내장하는 제1,제2,제3모터(24)(26)(28)와, 상기 제1,제2,제3모터(24)(26)(28)의 축에 연결되어 모터의 현재 속도를 상기 제1,제2,제3모터(24, 26, 28)의 서보팩으로 피이드백하는 타코 제너레이터부(42)와, 상기 제1,제2,제3모터(24, 26, 28)의 축에 연결되어 상기 모터들의 회전속도에 비례하는 주기의 펄스열을 각각 발생하는 엔코더부(44)와, 상기 엔코더부(44)의 각 펄스열을 업/다운카운트하여 상기 CPU(10)에 현재 위치값을 입력시키는 카운트(46)로 구성된다.
제2도는 본 발명에 따른 흐름도로서, 주어지는 시작점 X1, 통과점 X2, 도착점 X3과 미소변위에 대한 현의 길이 Δℓ을 리이드하는 조건 리이드 과정과, 상기 시작점 X1, 통과점 X2, 도착점 X3 및 원의 중심좌표로부터 반지름 r를 연산하는 원호에 대한 반경계산 과정과, 상기 반경계산 과정의 반경 r과 조건리이드 과정의 현의 길이 Δℓ로서 이동각 Δθ를 계산하여 저장하는 이동각 계산과정과, 상기 조건 리이드과정의 시작점 X1, 통과점 X2, 도착점 X3의 직교좌표로서 정,역 회전방향을 판별하는 회전방향 판별과정과, 상기한 이동각 계산과정에서 계산된 이동각과 상기 리이드과정의 시작점 X1의 좌표값으로서 좌표축 회전에 의한 위치좌표를 계산하여 저장하는 위치 좌표계산 과정과, 현재 계산된 위치좌표가 도착점 X3의 좌표에 도달할때까지 상기 위치 좌표계산 과정을 수행하고 근사점에 도달시 도착점 X3의 좌표값을 저장하는 저장과정으로 이루어진다.
제3도는 본 발명을 설명하기 위한 좌표이동 상태도로서, 3A는 미소변위 각 Δθ에 대한 이동거리 Δℓ만큼 좌표축을 이동한 예를 도시한 것이며, 3B는 시작점 X1, 중간점 X2, 도착점 X3를 지나는 원호의 X,Y좌표를 구하기 위해 Δθ만큼 이동된 좌표축 X'와 Y'를 도시한 것이다.
3C도는 매 샘플링 주기마다 좌표축 회전에 의해 계산된 좌표를 도시화한 것이다.
이하 본 발명에 따른 제2도의 동작예를 제1도 및 제3도를 참조하여 설명한다.
우선 좌표축 회전을 이용하여 X,Y좌표 계산 방법에 대하여 기술한다. 제3도 3A와 같이 이동길이 Δℓ이 주어지고, 반경 r이 주어지면, 상기 이동 길이 Δℓ=rΔθ의 식에 의해 상기 Δθ는 하기 식(A)와 같이 구하여진다.
Δθ=Δℓ/r………………………………………………(식1)
따라서 좌표축의 이동길이 Δℓ과 반경 r이 주어지면 미소변위 Δθ를 상기 식(A)에 의해 구할 수 있음을 알 수 있다.
제3도 3b와 같이 x,y평면 좌표상에서 시작점 X1(x1,y1), 통과점 X2(x2,y2), 도착점 X3(x3,y3)를 지나는 원호의 x,y좌표를 구하기 위해 Δθ각만큼 이동된 좌표축 x',y'를 가정하면 x,y축에서 본점 A의 이동점 B는 하기 식(2a)와 (2b)와 같이 구할 수 있다.
x=x'cos Δθ-y'sinΔθ………………………………(2a)
y=x'sin Δθ-y'sinΔθ………………………………(2b)
즉 A점이 B점으로 이동된, x,y좌표로 치환값을 구할 수 있다.
이때 Δθ의 값은 상수이므로, cos Δθ를 α라 하고, sin Δθ를 β라 하면, 상기 α와 β도 상수가 된다.
또 x',y'는 또 다른 이동 Δθ로 보면 x,y로 같으므로 전술한 식(2a,2b)는 하기식(3a,3b)와 같이 된다.
x(K+1)=α·x(K)-β·y(K)……………………………(3a)
y(K+1)=β·x(K)-α·y(K)……………………………(3b)
상기 식 3a와 3b에서 ˝K˝는 상수로서, x',y'의 이동좌표이다.
따라서 시간이 많이 걸리는 cos 및 sin함수의 계산은 한번만 하고, 곱과 +,-등의 연산을 순차적으로 계산하면 됨으로써 마이크로컴퓨터등을 적용하면 고속의 연산이 가능하다.
한편 원의 원점이 제3도 3b와 같이 (a,b)인 일반적인 경우에는 상기 (식 3a,3b)를 계산하기 전에 하기식(4a,4b)를 이용 원의 원점(0,0)로 이동시킨다.
x(K)=x(x)-a……………………………………………(4a)
y(K)=y(x)-b……………………………………………(4b)
그리고 식(4a,4b)를 계산 후 다시 x(K+1)=x(K+1)+a,y (K+1)=y(K+1) +b)로 원점 (a,b)로 이동시킴으로써 좌표축 회전에 의한 x,y의 좌표위치를 계산할 수 있다. 즉, x(K)=x1-a,y(K)=y1-b
단 X1=(x1,y1)로 하면 전술한 (식4a,4b)는 하기 식(5a,5b)와 같이 된다.
x(K+1)=α·x(K)-β·y(K)……………………………(5a)
y(K+1)=β·x(K)-α·y(K)……………………………(5b)
따라서 원의 원점이 (a,b)인 경우에 상기 (식 5a,5b)에 의해 좌표축 회전에 의한 x.y좌표를 구할 수 있다.
지금 유저가 소망하는 원호 제어를 위하여 제3도와 같이 X,Y평면 직교 좌표상에서 (X1,Y1)을 가지는 제1직교좌표 x1와, (X2,Y2)를 가지는 제2직교좌표 x2와, (x3,y3)의 좌표를 가지는 제3직교좌표 X3를 펜덴트(12)를 이용하여 세팅하면, 상기 직교좌표값 X1,X2,X3들은 인터페이스를 통해 CPU(10)에 입력되다.
상기 CPU(10)는 제2도 2A과정에서 입력된 직교 좌표값 X1과 X3를 리이드하고 메모리(20)내에 저장된 미소변위에 대한 현의 길이, 즉, 이동길이 Δℓ를 리이드한다. 이때 상기 이동길이 Δℓ은 사용자에 의해서 세팅되어 CPU(10)가 메모리(20)로부터 억세스하게 된다.
상기 제2도 2A과정에서 직표좌표값 X1,X2,X3를 리이드한 CPU(10)는 제2도 2B과정에서 하기식(6)에 의해 반경 r2를 계산하고 내부의 메모리 영역에 저장한다.
r2=(x-a)2+(y-b)2……………………………………(6)
상기 6식에서, a는 원의 중심의 x좌표, b는 원의 중심의 y좌표이다.
따라서 현의 이동길이 Δℓ과 반경 r를 상기 제2도 2A,2B과정에서 인지한 CPU(10)는 제2도 2C과정에서 하기 제7식과 같은 공식을 이용하여 미소변위 각 Δθ를 8식과 같이 구한다.
Δℓ=r·Δθ………………………………………………(7)
Δθ=Δℓ/r………………………………………………(8)
그러므로 CPU(10)는 소정반경 r에 대한 미소 이동거리 Δℓ의 미소변위 각 Δθ를 인지하게 되며, 상기 식(8)에 의해 계산된 미소 변위의 각 Δθ의 값을 cos Δθ 및 sinΔθ의 값으로 하여 내부 메모리에 저장한다.
상기한 과정들에 의해 Δθ를 구한 CPU(10)는 제2도 2D과정에서 주어진 시작점 X1, 통과점 X2, 도착점 X3의 직교좌표의 데이터로부터 회전방향이 정,역방향인가를 판별한다.
상기 2D과정의 검색결과 회전방향이 역방향인 경우 상기 제2도 2C과정에서 계산된 Δθ를 -Δθ로 2E과정에서 변환 세트한 후, 2F과정에서 좌표축 회전에 의한 위치계산을 하기 식(9a,9b)와 같이 실행한다.
만약 상기 제2도 2D과정에서의 회전방향 판별이 경방향인 경우 CPU(10)는 제2도 2F과정에서 직접 하기 식(9a,9b)와 같은 계산을 실행하여 좌표축 회전에 의한 위치를 검출한다.
x=x(K+1)+a…………………………………………(9a)
y=y(K+1)+y…………………………………………(9b)
상기 제2도 2F과정에 의해 전술한 식(5a,5b)와 동일한 식으로써 미소변위 Δθ만큼 좌표축이 회전된 x,y의 좌표값을 시작점 X1으로부터 매 샘플링의 주기마다 계산하여 회전방향에 따라 x,y의 좌표값을 산출하게 된다.
상기 제2도 2F과정에서 산출된 좌표축 회전에 의한 위치 계산값은 2G과정에서 CPU(10)가 메모리(20)에 저장하며, 2H과정에서 현재 계산된 위치가 사용자가 입력시킨 도착점 X3와 근접한가를 판단한다.
상기 2H과정의 검색결과 현재의 위치가 도착점 X3에 근접하지 않는다면 Δθ만큼 좌표축을 회전시키어 다음 샘플링 주기에서 전술한 과정을 수행하여 차기의 위치 좌표값을 산정한다.
만약 현재 계산된 좌표값이 도착점 X3의 좌표값과 일치한다면 도착점 X3의 좌표값을 2I과정에서 메모리(20)에 저장하고 좌표 위치계산을 종료한다.
따라서 상기 제2도에 의해 매 샘플링 주기마다 계산된 좌표축 회전에 의한 x,y좌표 위치를 도시적으로 표현하면 제3도 3C도와 같이 된다.
상술한 바와 같이 본 발명은 미소변위 Δθ에 대한 좌표축 회전에 의한 좌표 위치계산을 실행함으로써 원호보간에 있어서 좌표위치를 고속으로 계산할 수 있어 고속동작을 할 수 있다.

Claims (1)

  1. 원호보간을 행하는 시스템의 평면이동 직교 좌표위치 검출방법에 있어서, 주어지는 시작점 X1, 통과점 X2, 도착점 X3과 미소변위에 대한 현의 길이 Δℓ을 리이드하는 조건 리이드 과정과, 상기 시작점 X1, 통과점 X2, 도착점 X3 및 원의 중심좌표로부터 반지름 r를 연산하는 원호에 대한 반경계산 과정과, 상기 반경계산 과정의 반경 r과 조건리이드 과정의 현의 길이 Δℓ로서 이동각 Δθ를 계산하여 저장하는 이동각 계산과정과, 상기 조건 리이드과정의 시작점 X1, 통과점 X2, 도착점 X3의 직교좌표로서 정,역 회전방향을 판별하는 회전방향 판별과정과, 상기한 이동각 계산과정에서 계산된 이동각과 상기 리이드과정의 시작점 X1의 좌표값으로서 좌표축 회전에 의한 위치좌표를 계산하여 저장하는 위치 좌표계산 과정과, 현재 계산된 위치좌표가 도착점 X3의 좌표에 도달할때까지 상기 위치 좌표계산 과정을 수행하고 근사점에 도달시 도착점 X3의 좌표값을 저장하는 저장과정으로 이루어짐을 특징으로 하는 방법.
KR1019890017987A 1989-12-05 1989-12-05 원호보간에 있어서 평면이동 직교좌표위치 검출방법 KR930000128B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019890017987A KR930000128B1 (ko) 1989-12-05 1989-12-05 원호보간에 있어서 평면이동 직교좌표위치 검출방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019890017987A KR930000128B1 (ko) 1989-12-05 1989-12-05 원호보간에 있어서 평면이동 직교좌표위치 검출방법

Publications (2)

Publication Number Publication Date
KR910012665A KR910012665A (ko) 1991-08-08
KR930000128B1 true KR930000128B1 (ko) 1993-01-09

Family

ID=19292587

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019890017987A KR930000128B1 (ko) 1989-12-05 1989-12-05 원호보간에 있어서 평면이동 직교좌표위치 검출방법

Country Status (1)

Country Link
KR (1) KR930000128B1 (ko)

Also Published As

Publication number Publication date
KR910012665A (ko) 1991-08-08

Similar Documents

Publication Publication Date Title
JPS584377A (ja) 関節形産業用ロボツトの制御装置
US4617502A (en) Method and apparatus for controlling a robot hand along a predetermined path
US3720814A (en) Direct numerical control system
WO2020151406A1 (zh) 运动控制方法、装置和系统及存储介质
JP2010238174A (ja) 位置決め装置及び位置決め方法
JPS63291104A (ja) 産業用ロボットの端部エフェクターの制御方法
EP0227842A1 (en) Digitizing method
CN111496798B (zh) 机器人传送带跟踪方法、设备及存储装置
KR930000128B1 (ko) 원호보간에 있어서 평면이동 직교좌표위치 검출방법
JPH01121909A (ja) 直交座標型ロボットにおける動作速度制御方法
JPS6145306A (ja) 多関節型ロボツトの制御システム
JPS61199111A (ja) 障害物回避制御装置
JPH0247702A (ja) ロボットの高速動作制御方法
JPS60138611A (ja) ア−ムロボツトの制御装置
JP2687359B2 (ja) 産業用ロボットの動作制限方法
US4163932A (en) Numerical control system and method for a three axes movement
JPS60220408A (ja) 関節形ロボツト用制御装置
JPS63245507A (ja) マニピユレ−タ駆動装置
Sokolov Robot motion realisation using LabVIEW
JPH04123205A (ja) 制御対象物の初期位置検出装置
KR940003133B1 (ko) 로보트 엔드-이펙터(End-effector)의 이동궤적 판별방법
JP3457693B2 (ja) ロボットの軌跡制御方法
KR0160993B1 (ko) 로보트의 구동제어장치 및 그 정상구동체크방법
JP2802117B2 (ja) 教示機能を備えた加工機
JPS5995614A (ja) デジタルサ−ボ装置

Legal Events

Date Code Title Description
A201 Request for examination
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 19891205

PA0201 Request for examination

Patent event code: PA02012R01D

Patent event date: 19891205

Comment text: Request for Examination of Application

PG1501 Laying open of application
E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 19920529

Patent event code: PE09021S01D

G160 Decision to publish patent application
PG1605 Publication of application before grant of patent

Comment text: Decision on Publication of Application

Patent event code: PG16051S01I

Patent event date: 19921208

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

Patent event code: PE07011S01D

Comment text: Decision to Grant Registration

Patent event date: 19930319

GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 19930326

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 19930326

End annual number: 3

Start annual number: 1

PR1001 Payment of annual fee

Payment date: 19951227

Start annual number: 4

End annual number: 4

PR1001 Payment of annual fee

Payment date: 19961230

Start annual number: 5

End annual number: 5

PR1001 Payment of annual fee

Payment date: 19970826

Start annual number: 6

End annual number: 6

FPAY Annual fee payment

Payment date: 19970829

Year of fee payment: 7

PR1001 Payment of annual fee

Payment date: 19970829

Start annual number: 7

End annual number: 7

LAPS Lapse due to unpaid annual fee
PC1903 Unpaid annual fee