KR20030087810A - 로봇용 서보모터 구동모듈 및 제어방법 - Google Patents

로봇용 서보모터 구동모듈 및 제어방법 Download PDF

Info

Publication number
KR20030087810A
KR20030087810A KR1020020025748A KR20020025748A KR20030087810A KR 20030087810 A KR20030087810 A KR 20030087810A KR 1020020025748 A KR1020020025748 A KR 1020020025748A KR 20020025748 A KR20020025748 A KR 20020025748A KR 20030087810 A KR20030087810 A KR 20030087810A
Authority
KR
South Korea
Prior art keywords
servo motor
servomotor
signal
module
control
Prior art date
Application number
KR1020020025748A
Other languages
English (en)
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 KR1020020025748A priority Critical patent/KR20030087810A/ko
Publication of KR20030087810A publication Critical patent/KR20030087810A/ko

Links

Classifications

    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02PCONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
    • H02P7/00Arrangements for regulating or controlling the speed or torque of electric DC motors
    • H02P7/03Arrangements for regulating or controlling the speed or torque of electric DC motors for controlling the direction of rotation of DC motors
    • H02P7/04Arrangements for regulating or controlling the speed or torque of electric DC motors for controlling the direction of rotation of DC motors by means of a H-bridge circuit
    • 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
    • G05B19/19Numerical 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 characterised by positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path
    • G05B19/21Numerical 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 characterised by positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path using an incremental digital measuring device
    • G05B19/23Numerical 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 characterised by positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path using an incremental digital measuring device for point-to-point control
    • G05B19/231Numerical 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 characterised by positioning or contouring control systems, e.g. to control position from one programmed point to another or to control movement along a programmed continuous path using an incremental digital measuring device for point-to-point control the positional error is used to control continuously the servomotor according to its magnitude
    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02PCONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
    • H02P5/00Arrangements specially adapted for regulating or controlling the speed or torque of two or more electric motors
    • H02P5/46Arrangements specially adapted for regulating or controlling the speed or torque of two or more electric motors for speed regulation of two or more dynamo-electric motors in relation to one another
    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02PCONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
    • H02P2203/00Indexing scheme relating to controlling arrangements characterised by the means for detecting the position of the rotor

Landscapes

  • Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Control Of Electric Motors In General (AREA)
  • Manipulator (AREA)
  • Numerical Control (AREA)

Abstract

본 발명은 로봇용 서보모터 구동모듈 및 제어방법에 관한 것으로서, 본 발명에 따른 서보모터 구동모듈은, 메인제어모듈의 제어명령 신호를 송수신하고 피드백되는 위치신호를 출력하기 위한 시리얼 통신포트와, 상기 시리얼 통신포트와 연동하여 상기 제어명령 신호에 따라 서보모터를 제어하기 위한 마이크로컨트롤러와, 상기 마이크로컨트롤러의 제어신호에 따라 서보모터의 회전방향 및 속도를 제어하기 위한 H-브릿지(H-Bridge) 회로부 및 상기 서보모터로부터 피드백되는 위치신호를 검출하여 상기 마이크로컨트롤러에 전달하는 위치검출부를 포함하며, 상기 마이크로컨트롤러는 상기 제어명령 신호에 따라 내장된 독립적인 제어 알고리즘을 통해 상기 서보모터의 위치 및 속도를 제어할 수 있는 것을 특징으로 한다.
따라서, 상기 메인 제어모듈에 구비되는 하나의 시리얼 포트로 다수개의 서보모터를 제어할 수 있고 양방향 시리얼 통신을 통해 서보모터의 현재 위치를 피드백하여 상기 메인 제어모듈로 전달할 수 있는 효과가 있다.

Description

로봇용 서보모터 구동모듈 및 제어방법{Driving Module and Controlling Method of Servo-Motor for Robot}
본 발명은 로봇용 서보모터 구동모듈 및 제어방법에 관한 것으로서, 특히 PC 등 메인 제어모듈의 제어신호에 따른 시리얼(Serial) 통신을 통해 다수개의 서보모터의 속도 및 위치를 제어하기 위한 로봇용 서보모터 구동모듈 및 제어방법에 관한 것이다.
일반적으로, 로봇(Robot)은 구동방식에 따라 캠 등에 의해 동작되는 기계식, 에어와 에어실린더가 사용하는 공기식, 유압과 유압실린더를 이용한 유압식, 그리고 3상교류 유도전동기나 서보모터 등의 전동기를 사용한 전기식 등으로 분류할 수 있으며, 일반적으로 작업동작을 수행하기 위해 하나 이상의 팔 또는 다리를 구비하고 있다.
통상, 전기식 로봇에서 로봇의 팔 또는 다리 등을 구동하기 위해 사용되는 서보모터는 로봇제어기에 의해 구동제어 되는데, 상기 로봇제어기는 주제어부와 서보모터 드라이버(Servo-motor Driver)로 구성된다. 이때, 주제어부는 유저인터페이스(User Interface)를 담당하는 부분으로, 사용자가 프로그램 편집기를 이용하여 작성한 기계어를 전송받아 해석하여 제어신호를 생성하고, 상기 제어신호를 서보모터 드라이버에 전달하는 역할을 한다. 상기 주제어부로부터 전달된 제어신호에 따라 서보모터 드라이버는 로봇의 팔 또는 다리의 관절 등에 설치되어 있는 서보모터를 구동제어하고, 동시에 서보모터의 상태를 검사하여 이상 검출시 오동작신호를 발생시켜 이를 외부에 알리게 된다.
그러나, 종래의 상기 서보모터는 PWM(Pulse-Width Modulation: 펄스폭 변조, 이하 "PWM"이라 함) 신호를 통해 제어되기 때문에, 로봇의 관절용 등으로 다수개의 서보모터를 사용하여 제어하기 위해서는 상기 주제어부의 포트(Port)가 서보모터의 개수만큼 필요하게 되어 PWM 신호를 생성하는데 많은 제약을 받게 되고 이에 따라 제어알고리즘도 복잡해지는 문제점이 있었다.
상기한 문제를 해결하기 위한 본 발명의 목적은, PC 등과 같은 메인 제어모듈의 제어명령 신호를 시리얼 통신포트를 통해 송수신하고 내장되는 독립적인 제어 알고리즘을 통해 서보모터의 속도 및 위치를 제어함으로써 상기 메인 제어모듈에 구비되는 하나의 시리얼 포트로 다수개의 서보모터를 구동할 수 있게 하기 위한 로봇용 서보모터 구동모듈 및 제어방법을 제공하는데 있다.
또한, 본 발명의 다른 목적은, 상기 메인 제어모듈과의 양방향 시리얼 통신을 통해 서보모터의 현재 위치를 피드백하여 상기 메인 제어모듈로 전달할 수 있게 하기 위한 로봇용 서보모터 구동모듈 및 제어방법을 제공하는데 있다.
도 1은 본 발명에 따른 로봇용 서보모터 구동모듈 및 제어방법을 개략적으로 설명하기 위한 구성도이다.
도 2는 본 발명에 따른 로봇용 서보모터 구동모듈의 일 실시예를 나타내는 블록도이다.
도 3은 본 발명에 따른 로봇용 서보모터 구동모듈의 일 실시예를 나타내는 회로도이다.
도 4a는 본 발명에 따른 로봇용 서보모터 제어방법의 일 실시예를 나타내는 흐름도이다.
도 4b는 본 발명에 따른 로봇용 서보모터 제어방법의 일 실시예를 나타내는 흐름도이다.
도 5는 본 발명에 따른 도 4의 시리얼 제어명령 수신 알고리즘의 일 실시예를 나타내는 흐름도이다.
※도면의 주요부분에 대한 부호의 설명
1: 메인 제어모듈 10: 서보모터 구동모듈
13: 시리얼 통신포트 14: 마이크로컨트롤러
15: H-브릿지 회로부 16: 서보모터
17: 위치검출부 18: 보조 전원부
상기 목적을 달성하기 위한 본 발명에 따른 로봇용 서보모터 구동모듈은, 메인제어모듈의 제어명령 신호를 송수신하고 피드백(feed-back)되는 위치신호를 출력하기위한 시리얼 통신포트와, 상기 시리얼 통신포트와 연동하여 상기 제어명령 신호에 따라 서보모터를 제어하기 위한 마이크로컨트롤러와, 상기 마이크로컨트롤러의 제어신호에 따라 서보모터의 회전방향 및 속도를 제어하기 위한 H-브릿지(H-Bridge) 회로부 및 상기 서보모터로부터 피드백되는 위치신호를 검출하여 상기 마이크로컨트롤러에 전달하는 위치검출부를 포함하며, 상기 마이크로컨트롤러는 상기 제어명령 신호에 따라 내장된 독립적인 제어알고리즘을 통해 상기 서보모터의 위치 및 속도를 제어할 수 있는 것이 바람직하다.
상기 시리얼 통신포트는 송신부, 수신부, 전원부로 구성되며, 다수개의 다른 상기 서보모터 구동모듈과 연동되어 양방향 통신이 가능한 것이 바람직하다.
상기 메인제어모듈은 PC를 포함하는 CPU가 구비된 제어모듈이며, 상기 메인제어모듈의 하나의 시리얼 포트를 통해 다수개의 상기 서보모터 구동모듈이 연동되어 상기 서보모터의 위치 및 속도가 제어될 수 있는 것이 바람직하다.
또한, 상기 목적을 달성하기 위한 본 발명에 따른 로봇용 서보모터 제어방법은, 서보모터 구동모듈의 시리얼 통신포트를 통해 메인제어모듈의 시리얼 제어명령 신호를 수신하는 단계, 상기 서보모터 구동모듈의 마이크로컨트롤러와 연동되는 위치검출부를 통해 서보모터의 현재위치를 검출하는 단계, 상기 시리얼 제어명령 신호에 의해 전달된 상기 서보모터의 목표위치를 이용해 위치오차를 계산하는 단계 및 상기 계산된 위치오차에 따라 PWM 펄스폭을 결정하고 속도를 설정하여 상기 마이크로컨트롤러와 연동되는 H-브릿지회로부를 통해 상기 서보모터로 PWM 신호를 출력하는 단계를 포함하여 이루어진다.
상기 서보모터 구동모듈은 상기 서보모터 고유의 ID값을 설정하고 있는 것이 바람직하다.
상기 시리얼 통신포트를 통해 송수신되는 데이터는, 바이트 넘버, 상기 서보모터의 ID값, 상기 서보모터의 위치 및 속도 데이터를 포함하는 것이 바람직하다.
이하에서 본 발명에 따른 로봇용 서보모터 구동모듈의 일 실시예를 첨부한 도면을 참조로 상세히 설명한다.
도 1은 본 발명에 따른 로봇용 서보모터 구동모듈의 일 실시예를 개략적으로 설명하기 위한 구성도이다. 즉, 도면에서 나타낸 바와 같이, 본 발명에 따른 로봇용 서보모터 구동모듈(10)은 사용자 PC 등의 메인제어모듈(1)로부터 제어명령 신호를 입력받아 단방향 시리얼 통신(IN/OUT)을 통해 다른 다수개의 서보모터 구동모듈로 전송하거나, 서보모터 구동모듈(10)과 연동되는 서보모터(16)로부터 피드백되는 위치신호를 양방향 시리얼 통신을 통해 상기 메인제어모듈(1)로 출력할 수 있다.
본 발명에 따른 서보모터 구동모듈(10)은 한 개의 시리얼 통신포트로 최대 8개의 다른 서보모터 구동모듈을 연결하여 상기 메인제어모듈(1)의 제어명령 신호를 전달할 수 있다.
도 2 및 도 3은 본 발명에 따른 로봇용 서보모터 구동모듈을 나타내는 블록도 및 회로도이다.
즉, 도면에서 나타낸 것처럼, 본 발명에 따른 로봇용 서보모터 구동모듈은, 메인제어모듈의 제어명령 신호를 송수신하고 피드백되는 위치신호를 출력하기 위한 시리얼 통신포트(13)와, 시리얼 통신포트(13)와 연동하여 상기 제어명령 신호에 따라서보모터(16)를 제어하기 위한 마이크로컨트롤러(14)와, 마이크로컨트롤러(14)의 제어신호에 따라 서보모터(16)의 회전방향 및 속도를 제어하기 위한 H-브릿지 회로부(15) 및 상기 서보모터(16)로부터 피드백되는 위치신호를 검출하여 마이크로컨트롤러(14)에 전달하는 위치검출부(17)를 포함하여 이루어진다.
상기 시리얼 통신포트(13)는 데이지 체인(Daisy Chain) 직렬 연결방식이 가능하며, 메인제어모듈로부터 직접 혹은 다른 서보모터 구동모듈로부터 상기 제어명령 신호를 수신하고 또 다른 서보모터 구동모듈로 송신하거나 피드백되는 서보모터(16)의 위치신호를 상기 메인제어모듈로 출력하기 위한 시리얼 송수신포트(P1, P3)가 일체인 한 개의 시리얼 통신포트(13)로 이루어진다. 상기 시리얼 통신포트(13)는 각각 신호단자(RXD, TXD), 전원단자 및 접지(GND)로 이루어져 있고, 상기 신호단자(RXD, TXD)를 통해 송수신되는 데이터는 바이트 넘버, 한 개의 선에 연결된 서보모터를 구별하기 위해 각 서보모터가 갖는 서보모터(16)의 고유 ID값, 서보모터(16)의 위치 및 속도 데이터를 포함하고 있다.
상기 마이크로컨트롤러(14)는 8비트 CMOS 컨트롤러로서, 타임 인터럽트 요청을 위한 다수개의 타이머(Timer), 8비트 A/D(Analog-to-Digital) 컨버터, 본 발명에 따른 독립적인 제어알고리즘이 내장되는 내부ROM을 포함한다. 또한, 상기 마이크로컨트롤러(14)는 딥 스위치(DIP SW, S1)와 연동하여 서보모터(16) 고유의 ID값을 설정하여 저장할 수 있다.
또한, 상기 마이크로컨트롤러(14)는 메인제어모듈로부터 수신되는 상기 제어명령 신호에 따라 상기 서보모터(16)로 위치 및 속도 값을 출력한다.
상기 H-브릿지 회로부(15)는 마이크로컨트롤러(14)의 제어신호에 따라 서로 병렬 연결된 PNP 트랜지스터(Q2, Q3), NPN 트랜지스터(Q4, Q5) 및 다이오드(D2, D3, D5, D6))를 통해 상기 서보모터(16)의 회전방향 및 속도를 제어한다. 또한, 상기 위치검출부(17)는 상기 서보모터(16)로부터 피드백되는 위치신호를 검출하여 상기 마이크로컨트롤러(14)로 전달하게 된다. 상기 서보모터(16)는 서보모터 구동모듈(10)의 출력포트(P4)와 연동되며 감속기를 통해 출력 축과 회전각도 센서에 연결되어 있다.
본 발명에 따른 로봇용 서보모터 구동모듈(10)은, 기본적으로 메인제어모듈(1)의 전원을 사용하지만, 서보모터 구동모듈(10)의 개수가 일정 이상이 되면 내부의 보조 전원부(18)를 통해 전원을 공급할 수도 있다.
이하에서는 본 발명에 따른 로봇용 서보모터 구동모듈을 이용한 서보모터 제어방법을 첨부한 도면을 참조로 상세히 설명한다.
도 4a 및 도 4b는 본 발명에 따른 로봇용 서보모터 구동모듈을 이용한 서보모터 제어방법의 일 실시예를 나타내는 흐름도이다. 즉, 도면에서 나타낸 것처럼, 시리얼 신호가 입력되면, 프로그램에서는 인터럽트 서비스 루틴이 실행되어 제어명령을 수신한다(S100). 이 때, 상기 시리얼 신호는 서보모터(16)의 목표위치값을 포함한다. 상기 마이크로컨트롤러(14)와 연동되는 위치검출부(17)를 통해 서보모터(16)의 현재위치를 타임 인터럽트를 통하여 일정시간 간격으로 검출하여(S101), 상기 시리얼 신호에 의해 전달된 목표위치를 이용해 위치오차를 계산한다(S102). 상기 계산된 위치오차에 의해 PWM의 펄스폭을 결정하고(S103), 속도를 설정하여(S104) 상기 마이크로컨트롤러(14)와 연동되는 H-브릿지 회로부(15)를 통해 상기 서보모터(16)로 PWM 신호를 출력하게 된다(S105). 상기 마이크로컨트롤러(14)는 자신의 서보모터(16)에 대한 고유의 ID값을 기설정하고 있는 것이 바람직하다.
본 발명에 따른 로봇용 서보모터 구동모듈(10)의 시리얼 통신포트(13) 신호단자(RXD, TXD)를 통해 송수신되는 데이터는 바이트 넘버, 서보모터(16)의 ID값, 서보모터(16)의 위치 및 속도 데이터를 포함하며, 1개의 시작 비트(Start Bit), 8개 데이터 비트(Data Bit), 1개의 종료 비트(Stop Bit)로 구성되는 10비트를 하나의 바이트로 하며 총 2개의 바이트(바이트0, 바이트1)로 나누어 PC 등에서 범용 프로그래밍이 가능하도록 되어 있다.
다음의 표 1은 송수신되는 데이터의 구성을 나타낸다.
START BIT(1bit) BYTENo. ID BIT(3bit) 속도 BIT(3bit) STOP BIT(1bit) START BIT(1bit) BYTENo. 위치 BIT(7bit) STOP BIT(1bit)
0 0 b6 b5 b4 (b3) b2 b1 b0 1 0 1 b6 ~b0 1
표 1에서 바이트의 순서확인은 바이트 수신후, 바이트 넘버를 검사하여 바이트 넘버=0이면 0번 바이트(바이트0), 바이트 넘버=1이면 1번 바이트(바이트1)로 판별한다. 즉, 데이터 비트를 확장하여 1개의 바이트로 전송하지 않고 상기와 같이 두 개의 바이트(바이트0, 바이트1)로 나누는 것은 PC에서 같이 범용 프로그래밍을 이용하여 구동할 수 있도록 하기 위함이다. 상기 표 1의 시리얼 제어명령 데이터는 바이트0, 바이트1의 순서로 전송되며, 상기 첫 번째 시리얼 제어명령 데이터(바이트0및 바이트1)가 수신된 후 메인제어모듈(1)에서 정의된 제어명령 대기시간만큼 경과된 다음, 두 번째 시리얼 제어명령 데이터(바이트0, 바이트1)가 수신되는 순서로 반복된다.
도 5는 표 1과 같이 구성되는 상기 시리얼 제어명령 신호를 수신하는 알고리즘을 보다 상세하게 나타내는 흐름도이다. 즉, 도면에서 나타낸 바와 같이, 우선 마이크로컨트롤러(14)는 타이머 인터럽트(RB0/INT)를 통해 일정 시간마다 시리얼 통신포트(13)를 검사하고(S201), "L" 신호가 검출되는지 확인한다(S202). 만약, "L"신호가 검출되면(엑티브 로우, 비트0), 이것을 시작비트로 인식하고 시작비트 처리 루틴으로 가서 시작비트인지 확인한 후(S203), 시리얼 통신포트(13)의 플래그에서 비트넘버와 비트 지연시간을 카운트한다(S204). 상기 비트 넘버는 시작비트를 제외하고 수신되는 비트수를 의미하며, 상기 비트 지연시간은 각각의 수신 비트 간격을 유지하기 위한 지연시간으로 상기 타이머 인터럽트 시간의 정수배로 설정된다. 참고적으로, 본 발명에서 상기 타이머 인터럽트 간격은 104㎲이고, 통신속도는 4800bps로서 상기 비트 지연시간은 208㎲이다.
만약, "L"신호가 검출되지 않으면(엑티브 하이, 비트1) 비트 지연시간을 카운트하고(S205) 비트 지연시간이 0인지 확인하여(S206), 비트 지연시간이 0이면 비트 지연시간 및 비트 넘버를 카운트한다(S207). 즉, 송신측의 시작비트 검출시점으로부터 (비트 지연시간 + α지연시간) 후 비트0을 검출하고, 그 다음 비트 지연시간이 경과한 후, 각각 비트1 내지 비트7을 수신하게 된다(여기서 α는, 0< α<비트지연시간*1/4).
그리고, 상기와 같이 카운트된 비트 넘버가 0인지를 확인하고(S208), 비트 넘버가 0이 아니라면 수신된 데이터 비트를 리드하고(S209) 할당된 변수(시리얼 버퍼)에 저장한다(S210). 상기와 같이 시작비트 검출 시점으로부터 데이터를 수신하게 되면 0번 바이트(바이트0)와 1번 바이트(바이트1) 사이에 시간 지연이 발생하더라도 올바른 데이터를 수신할 수 있다.
만약, 상기 비트 넘버가 0이면, 상기 시리얼 통신포트(13)의 플래그에서 비트를 클리어하고(S211), 시리얼 명령수신 종료루틴으로 간다. 상기 시리얼 명령수신 종료루틴에서는 바이트 넘버 비트가 0(바이트0)인지 확인하여(S212) 비트0이면, 바이트0 저장루틴에서 할당된 변수의 비트7이 0인지 확인하고(S213) 바이트 넘버 비트를 1로 설정한 다음(S214), 상기 수신된 바이트0을 할당된 변수(임시 시리얼 버퍼)에 임시 저장한다(S215). 만약, 상기 바이트 넘버 비트가 0이 아니라면(바이트1), 할당된 변수의 비트7이 1인지 확인하고(S216) 수신된 바이트1을 할당된 변수(임시 시리얼 버퍼)에 임시 저장하고 상기 바이트 넘버 비트를 클리어 시킨다(S217).
상기와 같이 2개의 바이트(바이트0, 바이트1)를 모두 수신한 후에는, 수신요구가 없는 제어명령 대기시간을 이용하여 ID 검사루틴을 실행한다. 즉, 0번 바이트(바이트0)의 ID 비트가 기설정된 자신의 서보모터 ID와 같은지 확인하고(S218), 자신의 ID와 동일하면 상기 할당된 변수(임시 시리얼 버퍼)의 제어명령(속도 및 위치값)을 명령실행 변수에 복사하고(S219) 같지 않으면 무시한다. 1번 바이트(바이트1)는 상기 표1에서 나타낸 것처럼 ID 비트를 포함하고 있지 않지만, 항상 0번 바이트(바이트0)와 같이 한 쌍으로 0번 바이트, 1번 바이트의 순서로 수신된다.
전술한 바와 같이 본 발명에 따른 로봇용 서보모터 구동모듈 및 제어방법의 구체예에 의하면, 사용자 PC와 같은 메인 제어모듈의 제어명령 신호를 시리얼 통신포트를 통해 수신하여 다른 서보모터 구동모듈로 송신하고 상기 제어명령 신호에 따른 독립적인 제어 알고리즘를 통해 서보모터의 속도 및 위치를 제어함으로써, 메인 제어모듈에 탑재된 하나의 시리얼 포트로 다수개의 서보모터를 제어할 수 있다.
또한, 상기 시리얼 통신포트를 통해 상기 메인 제어모듈과 양방향 통신이 가능하므로 서보모터의 현재 위치를 피드백하여 상기 메인 제어모듈로 전달할 수도 있다.
이상에서 살펴본 바와 같이 본 발명에 따른 로봇용 서보모터 구동모듈 및 제어방법에 의하면, PC 등과 같은 메인 제어모듈의 제어명령 신호를 시리얼 통신포트를 통해 송수신하고 내장되는 독립적인 제어 알고리즘을 통해 서보모터의 위치 및 속도를 제어함으로써 상기 메인 제어모듈에 구비되는 하나의 시리얼 포트로 다수개의 서보모터를 구동할 수 있는 효과가 있다.
또한, 상기 메인 제어모듈과의 양방향 시리얼 통신을 통해 서보모터의 현재 위치를 피드백하여 상기 메인 제어모듈로 전달할 수 있는 효과가 있다.
이상에서 본 발명은 기재된 구체예에 대해서만 상세히 설명하였지만 본 발명의 기술사상 범위 내에서 다양한 변형 및 수정이 가능함은 당업자에게 있어서 명백한 것이며, 이러한 변형 및 수정이 첨부된 특허청구범위에 속함은 당연한 것이다.

Claims (6)

  1. 메인제어모듈의 제어명령 신호를 송수신하고 피드백되는 위치신호를 출력하기 위한 시리얼 통신포트와;
    상기 시리얼 통신포트와 연동하여 상기 제어명령 신호에 따라 서보모터를 제어하기 위한 마이크로컨트롤러;
    상기 마이크로컨트롤러의 제어신호에 따라 서보모터의 회전방향 및 속도를 제어하기 위한 H-브릿지 회로부; 및
    상기 서보모터로부터 피드백되는 위치신호를 검출하여 상기 마이크로컨트롤러에 전달하는 위치검출부;
    를 포함하며, 상기 마이크로컨트롤러는 상기 제어명령 신호에 따라 내장된 독립적인 제어알고리즘을 통해 상기 서보모터의 위치 및 속도를 제어할 수 있는 것을 특징으로 하는 로봇용 서보모터 구동모듈.
  2. 제 1 항에 있어서,
    상기 시리얼 통신포트는 송신부, 수신부, 전원부로 구성되며, 다수개의 다른 상기 서보모터 구동모듈과 연동되어 양방향 통신이 가능한 것을 특징으로 하는 상기 로봇용 서보모터 구동모듈.
  3. 제 1 항에 있어서,
    상기 메인제어모듈은 PC를 포함하는 CPU가 구비된 제어모듈이며, 상기 메인제어모듈의 하나의 시리얼 포트를 통해 다수개의 상기 서보모터 구동모듈이 연동되어 상기 서보모터의 위치 및 속도가 제어될 수 있는 것을 특징으로 하는 상기 로봇용 서보모터 구동모듈.
  4. 서보모터 구동모듈의 시리얼 통신포트를 통해 메인제어모듈의 시리얼 제어명령 신호를 수신하는 단계;
    상기 서보모터 구동모듈의 마이크로컨트롤러와 연동되는 위치검출부를 통해 서보모터의 현재위치를 검출하는 단계;
    상기 시리얼 제어명령 신호에 의해 전달된 상기 서보모터의 목표위치를 이용해 위치오차를 계산하는 단계; 및
    상기 계산된 위치오차에 따라 PWM 펄스폭을 결정하고 속도를 설정하여 상기 마이크로컨트롤러와 연동되는 H-브릿지회로부를 통해 상기 서보모터로 PWM 신호를 출력하는 단계;
    를 포함하여 이루어지는 로봇용 서보모터 제어방법.
  5. 제 4 항에 있어서,
    상기 서보모터구동모듈은 상기 서보모터 고유의 ID값을 설정하고 있는 것을 특징으로 하는 상기 로봇용 서보모터 제어방법.
  6. 제 4 항에 있어서,
    상기 시리얼 통신포트를 통해 송수신되는 데이터는 바이트 넘버, 상기 서보모터의 ID값, 상기 서보모터의 위치 및 속도 데이터를 포함하는 것을 특징으로 하는 상기 로봇용 서보모터 제어방법.
KR1020020025748A 2002-05-10 2002-05-10 로봇용 서보모터 구동모듈 및 제어방법 KR20030087810A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020020025748A KR20030087810A (ko) 2002-05-10 2002-05-10 로봇용 서보모터 구동모듈 및 제어방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020020025748A KR20030087810A (ko) 2002-05-10 2002-05-10 로봇용 서보모터 구동모듈 및 제어방법

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR2020020014350U Division KR200284495Y1 (ko) 2002-05-10 2002-05-10 로봇용 서보모터 구동모듈

Publications (1)

Publication Number Publication Date
KR20030087810A true KR20030087810A (ko) 2003-11-15

Family

ID=32382257

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020020025748A KR20030087810A (ko) 2002-05-10 2002-05-10 로봇용 서보모터 구동모듈 및 제어방법

Country Status (1)

Country Link
KR (1) KR20030087810A (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008030833A3 (en) * 2006-09-05 2008-05-22 Honeywell Int Inc Single line control for an hvac actuator
WO2008087153A1 (en) * 2007-01-19 2008-07-24 Inergy Automotive Systems Research Sa Method and system for controlling the operation of a pump
KR101437148B1 (ko) * 2007-09-12 2014-09-02 주식회사 로보빌더 기능확장이 용이한 로봇용 액츄에이터 모듈

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62137608A (ja) * 1985-12-11 1987-06-20 Hitachi Ltd シリアル通信式多関節ロボツト制御装置
KR950022018A (ko) * 1993-12-14 1995-07-26 김준성 절대위치제어시스템의데이타통신방법
KR19980067076A (ko) * 1997-01-31 1998-10-15 이종수 랜(lan)을 이용한 실시간 통신방법
KR19990039572A (ko) * 1997-11-13 1999-06-05 윤종용 H-브리지 형 모터 드라이버
KR20010065578A (ko) * 1999-12-30 2001-07-11 박호군 통신망 기반 개방형 모터 제어기

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62137608A (ja) * 1985-12-11 1987-06-20 Hitachi Ltd シリアル通信式多関節ロボツト制御装置
KR950022018A (ko) * 1993-12-14 1995-07-26 김준성 절대위치제어시스템의데이타통신방법
KR19980067076A (ko) * 1997-01-31 1998-10-15 이종수 랜(lan)을 이용한 실시간 통신방법
KR19990039572A (ko) * 1997-11-13 1999-06-05 윤종용 H-브리지 형 모터 드라이버
KR20010065578A (ko) * 1999-12-30 2001-07-11 박호군 통신망 기반 개방형 모터 제어기

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008030833A3 (en) * 2006-09-05 2008-05-22 Honeywell Int Inc Single line control for an hvac actuator
US7787994B2 (en) 2006-09-05 2010-08-31 Honeywell International Inc. Single line control for HVAC actuator
WO2008087153A1 (en) * 2007-01-19 2008-07-24 Inergy Automotive Systems Research Sa Method and system for controlling the operation of a pump
US8667783B2 (en) 2007-01-19 2014-03-11 Inergy Automotive Systems Research (Societe Anonyme) Method and system for controlling the operation of a pump
KR101443938B1 (ko) * 2007-01-19 2014-09-25 이너지 오토모티브 시스템즈 리서치 (소시에떼 아노님) 펌프의 작동을 제어하는 방법 및 시스템
KR101437148B1 (ko) * 2007-09-12 2014-09-02 주식회사 로보빌더 기능확장이 용이한 로봇용 액츄에이터 모듈

Similar Documents

Publication Publication Date Title
US6188190B1 (en) Multi-axis motor controller
KR200284495Y1 (ko) 로봇용 서보모터 구동모듈
WO2019024570A1 (zh) 一种数字舵机及其控制方法
US20150323909A1 (en) Servo motor drive
CN106208827A (zh) 一种机器人轮毂直流无刷电机控制器及其控制方法
JP3626152B2 (ja) モータ駆動用制御装置
US7174731B2 (en) Rotational speed control system, rotatingly driving system, air blow system, clean bench, outdoor unit of air conditioner
CN208196846U (zh) 一种扩展型数码舵机
KR20030087810A (ko) 로봇용 서보모터 구동모듈 및 제어방법
JP2004088208A (ja) データ伝送システム及びデータ伝送方法
JP2000006070A (ja) ロボット制御システム
TW202223565A (zh) 傳送線的控制系統、傳送線以及控制方法
WO1997028692A1 (en) Irrigation control system
US5621292A (en) Servo amplifier and servo system which reduce cable interface
JP3645668B2 (ja) モータ制御装置
CN211250041U (zh) 协作机器人专用伺服驱动器
EP1837131A1 (en) Manipulator, for example an industrial robot, and drive device for a manipulator
JPH10275006A (ja) 工業用ロボット
KR20070014515A (ko) 스마트 디지털 엔코더 센서를 이용한 로봇 동작 제어 방법및 시스템
CN110971153A (zh) 一种基于多协议的混联舵机控制设备
RU203797U1 (ru) Плата управления электродвигателем
KR200180392Y1 (ko) 기계설비의 배선 절감장치
JP2002197581A (ja) センサ装置及びセンサ信号出力方法並びにモータ装置
KR102317058B1 (ko) 모션 센서 네트워크 시스템
KR200395081Y1 (ko) 웨이퍼 이송용 로봇 제어장치

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application