KR970005618B1 - Multi-axis control circuit of robot - Google Patents
Multi-axis control circuit of robot Download PDFInfo
- Publication number
- KR970005618B1 KR970005618B1 KR1019890016104A KR890016104A KR970005618B1 KR 970005618 B1 KR970005618 B1 KR 970005618B1 KR 1019890016104 A KR1019890016104 A KR 1019890016104A KR 890016104 A KR890016104 A KR 890016104A KR 970005618 B1 KR970005618 B1 KR 970005618B1
- Authority
- KR
- South Korea
- Prior art keywords
- interrupt
- signal
- output
- main controller
- control
- Prior art date
Links
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J13/00—Controls for manipulators
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Programmable Controllers (AREA)
Abstract
Description
제1도는 종래의 다축 제어 개략도.1 is a conventional multi-axis control schematic.
제2도는 본 발명에 따른 블럭도.2 is a block diagram according to the present invention.
제3도는 본 발명에 따른 구체회로도.3 is a detailed circuit diagram according to the present invention.
제4도는 본 발명에 따른 동작 파형도.4 is an operational waveform diagram according to the present invention.
본 발명은 로보트에 있어서 다축 제어방식에 관한 것으로, 특히 다관절을 갖는 로보트 다축을 동시에 제어함과 동시에 주제어기를 부하를 분산시키기 위한 다축 제어회로에 관한것이다.The present invention relates to a multi-axis control method in a robot, and more particularly, to a multi-axis control circuit for controlling loads of main controllers while simultaneously controlling a multi-axis robot having multiple joints.
종래의 로보트에 있어서 제어에 따라 다축을 제어하기 위해서는 제1도와 같이 각축제어용 AC서보모터(12a, 12b, 13c, 12d)가 기계적 메카니즘과 연결되고, 상기 AC서보모터(12a-12d)는 모터콘트롤러(11a-11d)에 의해 제어된다. 즉, 메인 콘트롤러(10)에서 처리되는 프로그램에 따라 제어데이타를 모터콘트롤러(11a-11d)에 입력되면 모터콘트롤러(11a-11d)에서 출력되는 값에 따라 AC서보모터(12a-12d)의 제어로 다관절을 구동하기 위한 다축모터가 제어하도록 되어 있었다.In the conventional robot, in order to control the multi-axis according to the control, the
그러나 메인 콘트롤러(10)에서 수행되는 프로그램의 제어처리에 의해 모든 기능이 일괄적으로 수행되므로 부하가 가중되며, 그리고 상기 메인 콘트롤러(10)의 일괄처리는 순차처리에 의해 진행되므로 소정의 AC서보모터(12a) 제어중 다른 AC서보모터 (12b-13d)의 제어를 위한 처리가 불가능하고, 메인콘트롤러(10)의 다른 기능의 프로그램처리가 불가능한 문제점이 있었다.However, the load is increased because all the functions are collectively performed by the control processing of the program performed by the
따라서 본 발명의 목적은 정확한 타이밍신호를 공급할 수 있어서 정밀제어가 가능하고, 주제어기의 여러기능을 중간 제어기로 분산시킴으로 주제어기에서 다른 응용기능의 삽입이 용이한 회로를 제공함에 있다.Accordingly, an object of the present invention is to provide a circuit that can provide precise timing signals, which enables precise control, and that it is easy to insert other application functions in the main controller by distributing various functions of the main controller to the intermediate controller.
본 발명의 다른 목적은 콘트롤러간 임터럽트 신호를 사용하여 주제어기의 프로그램 수행과 무관하게 다른 기능의 제어할 수 있으며 A/S가 용이하고, 각축의 위치를 동시 제어할 수 있는 회로를 제공함에있다.Another object of the present invention is to provide a circuit that can control other functions, easy A / S and simultaneously control the position of each axis regardless of program execution of main controller by using interrupt signal between controllers. .
이와 본 발명을 첨부된 도면을 참조하여 상세히 설명한다.The present invention will be described in detail with reference to the accompanying drawings.
제2도는 본 발명에 따른 블럭도로써, 로보트의 다축 제어에 따른 프로그램을 수행하여 제어데이타를 발생하는 주제어기(10)와, 다관절의 각축을 제어하는 AC서보모터(12a-12d)와, 상기 주제어부(10)에서 발생하는 인터럽트 신호에 의해 인터럽트루틴을 실행하여 상기 주제어부(10)의 명령을 해석하여 상기 해석명령에 따른 제어데이타를 발생하여 아나로그신호로 변환한 후 상기 모터제어기(11a-11d)로 전달하는 중간제어기(13a-13d)로 구성된다.2 is a block diagram according to the present invention, a
제3도는 본 발명에 따른 제2도의 주제어부(10) 및 중간제어부(13a-13d)간의 구제 회로도로써, 중앙처리장치(CPU)의 데이타버스(D0-D7)와 인터럽트단자()에 프로그램어블 인터럽트 콘트롤러(PIC)가 연결되고 상기 프로그램어블 인터럽트 콘트롤러(PIC)로 부터 프로그램어블 인터벌타이머(PIT)를 연결하며, 상기 중앙처리장치(CPU)의 입출력 라이트단(I/OW)과 중앙처리장치(CPU)의 데이타버스(D0-D2)를 디코더(DE1)의 입력단에 연결하고, 상기 디코더(DEC1)의 출력단(S1-S4)이 JK플립플롭(JF1-JF4)의 클럭단(CK)에 연결되며, 상기 JK플립플롭(JF1-JF4)의 출력단(Q)이 버스트랜시버(BT)의 입력단(D1-D4)에 연결되고, 상기 버퍼트랜시버(BT)의 출력단(Q1-Q4)을 프로그램어블 패리페럴 인터페이스회로(PP1)를 연결하며, 상기 JK플립플롭(JF1-JF4)의 클리어단(CLR)이 버스드라이버(BD)의 출력단(Q1-Q4)을 접속한 구성이 주제어기(10)에 대응하고, 상기 버퍼트랜시버(BT)의 출력단(Q4)으로 부터 인버터(N1)를 연결하여 마이크로프로세서(MIC)의 인터럽트단()이 연결되도록하고, 상기 버스드라이버(BD)의 입력단(D1)에 3스테이트 디플립플롭(3DF)의 출력단(Q)을 접속하며 상기 마이크로프로세서(MIC)의 데이타버스(D0-D7)사 상기 3스테이트디플립플롭(3DF)의 입력단에 연결하고, 상기 프로그램어블인터버라이머(PIT)의 출력단(OUT1)에 인버터(N2)를 연결하여 디플립플롭(DF)의 클럭단(CK)에 연결하며 상기 디플롭플롭(DF)의 출력단()이 상기 마이크로프로세서(MIC)의에 연결하고, 상기 마이크로프로세서(MIC)에서 발생하는 어드레스신호(A0-A4)를 디코더(DEC2)의 입력단(D)에 연결하고 상기 디코더(DEC2)의 출력단(Q1) 상기 3스테이트 디플립플롭(3DF)으 클럭단(CK)에 연결되고, 상기 마이크로프로세서(MIC)의 리세트단 ()과 상기 디코더(DEC2)의 출력단(Q2)을 앤드게이트(AN1)의 입력단에 연결하고, 상기 앤드게이트(AN1)의 출력단을 상기 디플립플롭(DF)의 클리어단(CLR)에 연결하고 상기 프로그램어블 패리패럴 인터페이스회로(pp1)와 마이크로프로세서(MIC)가 버퍼 (U1-U4)를 연결한 구성이 중간제어기(13a-13d)중의 한 부분에 해당되며, 상기 제3도에서 데이타 흐름의 연결관계는 버퍼(U1-U4)를 통해 전달된다.3 is a relief circuit diagram between the
제4도는 본 발명에 따른 동작 파형도로서, (4a)는 디코더(DEC1)의 출력단(S1-S4)의 소정 한부분의 출력단의 출력(S1-S4) 파형도이고, (4b)는 버스트랜시버(BT)의 출력단(Q4)의 출력(S5) 파형도이며, (4c)는 이버터(N1)는 출력(S6) 파형이고, (4d)는 3-스테이트 디플립플롭(3DF)의 출력단(Q)의 출력(S7) 파형이며, (4e)는 프로그램어블 인터벌타이머(PIT)의 출력단(OUT1)의 출력(S8)파형기이고, (4f)는 디플립플롭(DF)의 출력단()의 출력(SP) 파형이며, (4g)는 디코더(DEC2)의 출력단(Q2)의 출력(S10)파형이다.4 is an operational waveform diagram according to the present invention, where 4a is a waveform diagram of an output S1-S4 of a predetermined portion of an output terminal S1-S4 of the decoder DEC1, and 4b is a bus transceiver. The output S5 waveform diagram of the output terminal Q4 of (BT) is shown, (4c) is the output (S6) waveform of the ejector N1, and (4d) is the output terminal (3d) of the 3-state deflip-flop 3DF. Q is the output S7 waveform, 4e is the output S8 waveform of the output terminal OUT1 of the programmable interval timer PIT, and 4f is the output terminal of the flip-flop DF. (4g) is the output (Sg) waveform of the output terminal (Q2) of the decoder (DEC2).
따라서 본 발명의 구체적 일실시예를 제2도-제4도를 참조하여 상세히 설명하면, 주체어기(10)로 부터 중간제어기(13a-13d)로 코멘드와 데이타를 보내기 위해서는 주제어기(10)의 중앙처리장치(CPU)에서 프로그램어블 패리패럴 인터페이스회로(PPI)로 데이타버스(D0-D7)를 통해 코멘드와 데이타를 출력한 후 중앙처리장치(CPU)의 입출력라이트단(I/OW)으로 발생되는 신호에 따라 데이타버스(D0-D2)의 입력신호를 디코더(DEC1)로 입력하여 디코딩에 의해 출력단(S1-S4)중 S4가 (4a)와 같은 신호가 발생되어 JK플립플롭(JF1)의 클럭단(CK)으로 입력되면 (4c)의 네가티브 에지에서 출력단(Q)의 출력이 하이가 되어 버스트랜시버(BT)의 출력단(Q4)을 통해 (4b)와 같이 인터럽트 신호가 발생된다.Therefore, a specific embodiment of the present invention will be described in detail with reference to FIGS. 2 to 4, in order to send a command and data from the
상기 인터럽트 신호 프로그램어블 패리패럴 인터페이스회로(PPI로 입력됨과 동시에 인버터(N1)에 입력되어 반전된다. 상기 반전신호는 (4c)와 같이 출력되어 중간제어기(13a-13d)중의 하나의 중간 제어기의 마이크로프로세서(MIC)의 인터럽트단()으로 인가된다. 이때 상기 마이크로프로세서(MIC)는 인터럽트가 발생되므로 인터럽트 루틴을 실행한다.The interrupt signal is input to the programmable parallel interface circuit PPI and is inverted by being input to the inverter N1. The inversion signal is output as shown in (4c) to be used as the microcontroller of one of the intermediate controllers 13a to 13d. Interrupt stage of the processor (MIC) Is applied. At this time, the microprocessor MIC executes an interrupt routine because an interrupt is generated.
상기 버스트랜시버(BT)의 출력 인터럽트 신호를 받은 프로그램어블 패리패널 인터페이스회로(PPI)는 데이타 전송 제어신호를 발생하며 버퍼(U1,U2)의 클럭단으로 인가되어 클럭에 동기되어 프로그램어블 패리패널 인터페이스회로(PPI)로부터 출생되는 코멘드 데이타가 버퍼(U1)에 래치되어 마이크로프로세서(MIC)로 입력되고, 제어데이타가 버퍼(U2)에 래치되어 마이크로프로세서(MIC)에 입력된다.The programmable parity panel interface circuit (PPI) receiving the output interrupt signal of the bus transceiver (BT) generates a data transfer control signal and is applied to the clock terminals of the buffers (U1 and U2) to synchronize the clock to the programmable parity panel interface. Command data generated from the circuit PPI is latched in the buffer U1 and input to the microprocessor MIC, and control data is latched in the buffer U2 and input to the microprocessor MIC.
상기 마이크로프로세서(MIC)에서는 인터럽트 루틴에 따라 코멘드 및 데이타를 해석하여 상기 코멘드에 따라 프로그램을 수행하여 주제어기(10)로 부터 데이타를 요구하는 경우 마이크로프로세서(MIC)에서 발생하는 신호에 따라 출력되는 데이타를 버퍼(U3,U4)를 통해 프로그램어블 패리패널 인터페이스회로(PPI)로 전송하고, 중앙처리장치(CPU)가 디코더(DEC1)의 출력에 의해 버스트랜시버(BT)의 출력단(Q4)을 로우상태로 하면 인터럽트수행이 완료되고, 이때 프로그램어블 패리패럴 인터페이스(PPI)에 상기 버퍼(U3,U4)의 데이타를 읽어가서 중앙처리장치(CPU)에 전송시킨다.The microprocessor (MIC) interprets the command and data according to the interrupt routine, and executes a program according to the command to request data from the
상기 중간제어기의 마이크로프로세서(MIC)에서 모터제어기(11a-11d)중의 하나로 출력시키는 데이타버스(D0-D7)를 통해 출력하여 D/A변환기(도시하지 않았음)에서 변환하여 모터제어기(11a-11d)의 하나의 모터제어기로 입력한다.The microcontroller MIC of the intermediate controller outputs the data through one of the motor controllers 11a-11d and outputs the data from the D / A converter (not shown). Input to one motor controller of 11d).
주제어부(10)에서 중간제어부(13)에 각종제어부(13)에 각종 명령이나 위치데이타를 전송할 경우 디코더(DEC1)를 사용하여 (4a)신호를 순간적인 로우펄스로 만든다. 이때 (4d)신호와 같은 버스트랜시버(BT)에서 하이상태로 되고, 이를 인버터(N1)에서 반전되어 (4c)신호를 만들게 되며, 이 신호에 의해 마이크로프로세서(MIC)에 인터럽트가 발생된다. 이 인터럽트 처리루틴에서는 주제어부(10)의 명령을 해석하여 그 명령을 수행한 후 다음 인터럽트를 받아들이고, 주제어부(10)에 인터럽트 수행이 끝났음을 알려주기 위해 3-스테이트 디플립플롭(3DF)의 출력단(Q)를 (4d)와 로우펄스를 만든다. 이 신호에 의하여 (4c)의 신호는 하이상태가 되므로 다음 인터럽트를 받을수 있다. 이때 주제어부(10)에서는 프로그램어블 패리패럴 인터페이스회로(PPI)의 상태를 읽어 (4b)신호가 로우가 되었을 때 다음축에 인터럽트를 발생시키거나 중간제어부에서 인터럽트(INT)가 수행되었음을 알게된다.When the
주제어부(10)의 프로그램어블 인터벌타이머(PIT)로 부터 중간제어부(13)에 2ms주기의 클럭을 (4e)와 같이 공급되는데, 이 신호는 모터 드라이버로 부터 위치데이타 및 상태를 읽고 속도 명령을 출력하기 위해서 사용된다.From the programmable interval timer (PIT) of the
이러한 기능은 실제 모터를 제어하는 중요한 일이기 때문에 마이크로프로세서(MIC)의를 사용하였으며, 이 프로그램수행루틴에서 다음를 수행하기 위해 디코더(DEC2)에 의해 (4g)와 같이 로우펄스를 출력한다.This is important because it's important to control the actual motor. In this program execution routine, The low pulse is output by the decoder DEC2 as shown in (4g).
상술한 바와같이 정확한 타이밍을 공급할 수 있으므로 정밀제어가 가능하고, 주제어기의 여러기능을 중간제어기로 분산시킴으로서 주제어기에 다른 응용기능의 삽입이 용이하며, 인터럽트()를 주제어기에서 제어하기 때문에 주제어기의 프로그램 수행시간과는 무관하고, 각축 콘트롤러가 서로 무관하므로 A/S가 용이하고, 각축의 위치를 동시제어가 가능한 이점이 있다.As described above, accurate timing can be supplied, so precise control is possible, and by distributing various functions of the main controller to the intermediate controller, it is easy to insert other application functions into the main controller, and interrupt ( ) Is controlled by the main controller, so it is not related to the program execution time of the main controller, and since each controller is independent of each other, A / S is easy and the position of each axis can be controlled simultaneously.
Claims (1)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019890016104A KR970005618B1 (en) | 1989-11-07 | 1989-11-07 | Multi-axis control circuit of robot |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019890016104A KR970005618B1 (en) | 1989-11-07 | 1989-11-07 | Multi-axis control circuit of robot |
Publications (2)
Publication Number | Publication Date |
---|---|
KR910009392A KR910009392A (en) | 1991-06-28 |
KR970005618B1 true KR970005618B1 (en) | 1997-04-18 |
Family
ID=19291404
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019890016104A KR970005618B1 (en) | 1989-11-07 | 1989-11-07 | Multi-axis control circuit of robot |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR970005618B1 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR19990075160A (en) * | 1998-03-18 | 1999-10-15 | 김석태 | Casting tape |
KR100362611B1 (en) * | 2000-12-13 | 2002-11-29 | 삼성전자 주식회사 | Robot and Motor Speed Control Method Thereof |
-
1989
- 1989-11-07 KR KR1019890016104A patent/KR970005618B1/en not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
KR910009392A (en) | 1991-06-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4638452A (en) | Programmable controller with dynamically altered programmable real time interrupt interval | |
US5555413A (en) | Computer system and method with integrated level and edge interrupt requests at the same interrupt priority | |
JPH0534699B2 (en) | ||
EP3462255A1 (en) | Synchronization of control programs | |
US5475846A (en) | Apparatus for processing PCMCIA interrupt requests | |
KR970005618B1 (en) | Multi-axis control circuit of robot | |
WO1989001656A1 (en) | High-speed input/output module and plc apparatus | |
CN111654423A (en) | System, method and medium for realizing data transmission based on CAN bus | |
KR950002316B1 (en) | Data transmission device for fax | |
CN117226251B (en) | Laser focus position and energy synchronous control method, circuit and laser processing equipment | |
KR930004910Y1 (en) | Data bus arbitrator for multiprocessor system | |
EP0445288A1 (en) | Operation processing unit | |
JPS63141105A (en) | Programmable controller | |
CN1114160C (en) | Programmable controller | |
JPS62152045A (en) | Programmable controller | |
JPH0624901Y2 (en) | Input / output device of personal computer | |
KR890003115B1 (en) | Analog input modul of numerical program control | |
KR0126661Y1 (en) | Program loader communication of controller | |
KR890004812Y1 (en) | Interface circuit of computer & printer | |
JP2555580B2 (en) | Storage device control system | |
JPS6344266A (en) | Data transmission system | |
JP2850354B2 (en) | Distributed controller | |
JPS6478351A (en) | Dma controller | |
Achi | A low-cost computer numerical control machine system using LSI interfaces | |
KR970049174A (en) | PLC (PLC) |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
G160 | Decision to publish patent application | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
LAPS | Lapse due to unpaid annual fee |