77
-1- C1-A-G-097 중소기업 기술혁신개발사업 최종보고서 곡선 가감속 기능을 갖는 독립형 모터 (S 컨트롤러 및 제어 프로그램 개발) 2002 6 27 주관기업 주식회사윌텍 한국산업기술평가원

곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 1 -

C1-A-G-097

중소기업 기술혁신개발사업 최종보고서

곡선 가감속 기능을 갖는 독립형 모터(S

컨트롤러 및 제어 프로그램 개발)

년 월 일2002 6 27

주 관 기 업 주 식 회 사 윌 텍

한국산업기술평가원

Page 2: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 2 -

제 출 문

경기지방중소기업청장 귀하

본 보고서를 곡선 가감속 기능을 갖는 독립형 모터 컨트롤러 및 제어프로그램 개"S

발에 관한 중소기업 기술혁신개발사업 개발기간" ( : 200 1. 5. 1 ~ 2002. 4. 30 )

과제의 최종보고서로 제출합니다.

년 월 일2002 6 27

주관기업 주식회사 웰텍 직인: ( )

과제책임자 류 경식 인: ( )

Page 3: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 3 -

요 약 서 초 록( )

과 제 명곡선 가감속 기능을 갖는 독립형 모터 컨트롤러 및S

제어프로그램 개발

주 관 기 업 주식회사 윌텍 총괄책임자 류 경식

개 발 기 간 월2001. 5. 1 ~ 2002. 4. 30 (12 )

총개발사업비

천원( )

정부출연금 천원47,000총개발

사업비천원62,668

기업부담금현금 천원9,401

현물 천원6,267

위탁연구기관

개발참여기업

주요기술용어

개(6~10 )모션제어 자동화 모터제어 시스템제어 곡선가감속, , , S

기술개발목표1.

시스템 및 모션 컨트롤러의 통합 시스템 설계(1)

확장성 있는 컨트롤러 설계(2)

고성능 초정밀의 모션제어 기능 구현(3) ,

타입의 터치패널을 갖는 티칭팬던트의 설계(4) LCD

개발된 하드웨어의 운영 프로그램 개발(5)

기술개발의 목적 및 중요성2.

기술개발의 목적(1)

현재 국내의 반도체장비 및 로봇산업은 기계설계 위주로 발전하였으며 핵심 메

카닉스 모듈이나 모션컨트롤러 주제어기 등은 주로 일본에서 수입하고 있는 실,

정이다 이러한 응용기술 위주의 산업상황 속에서 많은 경쟁사들이 발생하고 이.

에따라 가격경쟁이 치열해지게 되면서 결국 핵심메카닉스모듈이나 전장제어부

모션 비젼 주제어 의 자체개발 필요성이 크게 대두되면서 이에 따른 신규시장( , , )

의 형성이 예상된다 현재 전장제어부의 기술이나 제품화가 매우 저조하며 제품.

생산업체도 많지않은 상황이지만 반도체방지 로봇 장비들이 국산화 고급화, FA , ,

정밀화 되면서 점차 그 수요와 시장규모가 크게 확대되리라 예상된다 이러한 이.

유에서 기존 와 를 이용한 제어시스템과 모터제어 시스템을 통합하는 새PLC PC

로운 개념의 산업용 제어기를 개발함으로서 주로 일본에서 수입하는 제품의수입

대체를 통한 대일 무역수지 개선 및 당사의 매출 증대와 수출증대를 꾀하고 이

를 통하여 국내 반도체 장비 및 산업용 장비 시장의 활성화 및 대외 경쟁력 강

화를 도모하는데 그 목적이 있다.

Page 4: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 4 -

기술개발의 중요성(2)현재 산업용 장비 및 반도체 장비의 경우 국내 업체의 전장제어 수준은 비교적전기적인 제어 수준에 머무르고 있는 실정이다 이러한 상황에서 일본의 핵심 기.술 및 메카트로닉스의 사업화 중국 및 동남아의 자체 기계개발 능력 향상등의,요인으로 인하여 국내의 장비 시장의 경쟁력은 줄어들어가고 있는 상황이다 이.러한 상황에서 다가올 중국 및 동남아 산업기지에의 자동화 및 반도체 장비의수출 증대와 시장 점유율 제고를 위하여는 본 제품의 개발이 반드시 필요하다.

기술개발의 내용 및 범위2.시스템제어기 의 개발(1) (SC)주제어 모듈의 시스템 전체의 제어를 관장하는 모듈- (CPU) :모션제어 모듈 모터의 정밀제어를 위한 모듈 축 직선 및 원호보간- (MBD) : , 2

지원입출력제어 모듈 개의 포토커플러 절연의 입력 개의 달링턴 출력- (DIO) : 24 , 16

지원티칭팬던트 인치 컬러 그래픽 채택한 패널 터치스크린- : 5.6 LCD(320 * 240) ,

기능

소프트웨어의 개발(2)제어용 프로그램 언어로 제작하며 다양한 사용자용 라이브러리 함수- SC : C

지원제어용 프로그램 언어로 제작하며 다양한 그래픽용 프리미티브 함수- TP : C

지원사용자 프로그램 환경의 시스템 설정 및 제어용 프로그램 모듈- : GUI

기술개발 결과4.현재 개발 완료되어 협력업체로 시제품이 납품되어 동작 적용시험을 완료한 상태임.특허 및 실용신안 출원은 년 월중에 진행될 예정이며 해외 규격인중은2002 7

년 하반기 중소기업청의 해외규격인증 지원사업에 참여하여 인중 획득2002 CE을 진행할 예정임.

기대효과5.내수 매출 중대 현재 년 월 첫 시제품 출고 월 대 수주 총(1) : 2002 6 , 7 10 (만원 규모 현재 개 회사 제품에 적용 계약 진행중이며 년에 총 여2500 ) 3 2003 20

억원의 매출증대가 예상수출 중대 현재 년 월 말레이시아의 전시회 참가(2) : 2002 6 NEPCON PENANG

로 말레이시아 싱가폴 태국의 계약 및 공동 장비 개발 계약 등을 추진, , AGENT중에 있음.

년 하반기부터 현재 상황으로 년 의 수출은 무난하리라 예상함2003 US$200,000수입대체 효과 본 제품 적용으로 일본으로 대량 수입되는 모터 컨트롤러(3) :

및 의 대체가 가능하여 수입대체 효과가 발생함 당사 예상 매출인 여억PLC . 20원의 수입대체 가능본 제품 적용시 장비의 원가절감 및 작업공수의 절감이 가능하여 반도체 생(4)

산용 및 용 장비의 대외 경쟁력 제고로 인한 대일 무역적자 개선 및 수출 증FA대 효과를 예상

Page 5: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 5 -

목 차

제 장 기술개발 목표 및 추진현황1 .

제 절 기술개발 목표1 .

제 절 기술개발 기획배경2 .

제 절 기술개발 내용3 .

제 장 시스템제어기 개발2 . (SC)

제 절 전체시스템의 구성1 .

제 절 주제어 모듈2 . (CPU)

제 절 모션제어 모듈3 .

제 절 디지털 입출력 모듈4 .

제 절 티칭팬던트5 .

제 장 운영프로그램의 개발3 .

제 절 시스템제어기 운영프로그램1 . (SC)

제 절 티칭팬던트 운영프로그램2 .

제 장 결 론4 .

제 절 기대효과1 .

제 절 추후연구과제2 .

제 절 결론3 .

Page 6: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 6 -

제 장 기술개발 목표 및 추진현황1 .

제 절 기술개발 목표1 .

시스템 및 모션 컨트롤러의 통합 시스템 설계1.

자동화정비 및 반도체 장비의 전장부 역할은 다음 그림과 같이 크게 시스템제어부

와 제어부로 나눌 수가 있다 현재는 주로 시스템 제어는 혹은 로Motion . PC PLC

구현하고 제어기는 상용의 모터컨트롤러를 이용하여 구현하고있으나 이러한Motion

별개의 구현방법은 제품의 원가 및 기술에 있어서 많은 단점을 초래하게 된다 또.

한 점차 반도체 장비 및 설비들이 모션제어와 시스템 제어를 모두 필요로 하는, FA

추세이어서 이 두 기능의 통합은 반드시 필요한 상황이다 본 기술은 이러한 기존.

전장 시스템의 문제점을 해결하여 가격경쟁력과 전장제어부 구현의 편리성을 겸비

한 신개념의 모션 시스템 컨트롤러를 개발 하고자 하였다/ .

반도체장비및 로봇용

시스템Motion/컨트롤러

Motion컨트롤러

설비 및 반도체 장비등에서 사용되는 스테핑 및 서보모터를FA제어하는 시스템으로서 빠른 모션제어와 신뢰성있는

정밀제어를 주 목적으로 한다.

시스템컨트롤러

설비 및 반도체 장비등에서 기계부를 정밀제어하기 위한FA전장제어부로서 자체제어모듈 등이 사용된다PC, PLC, .

확장성 있는 컨트롤러 설계2.

기존의 모션제어기는 와 달리 독립적인 제품으로 되어 있어서 제어하려는 모터PLC

의 축수나 기타 입출력 점수의 확장이 매우 어려워서 유연한 시스템 설계에 대처하

지 못하는 단점을 갖고 있다 이러한 단점을 극복하고자 본 제품에서는 다음 그림.

과 같이 확장성을 고려하여 다양한 시스템에 적용이 가능한 유연성을 갖추도록 하

고자 하였다.

Page 7: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 7 -

즉 기존의 가 갖는 장점을 살려서 자체적인 확장커넥터를 이용하여 모션제어, PLC

카드를 매까지 확장가능하도록 하고 입출력 카드는 매까지 연결이 가능토록 하8 16

여 모터의 축수 최소 축에서 최대 축까지 입출력 점수 최소 점에서 최대( 2 16 ), ( 24

점까지 를 사용지가 원하는 만큼 확장하여 사용이 가능하도록 하고자 하였다512 ) .

이로서 기존의 간단한 로봇 및 장비의 제어뿐 아니라 다접점의 를 이용하는FA PLC

많은 산업용 설비에도 적용이 가능하게 된다.

고성능 초정밀의 모션제어 기능 구현3. ,

현대는 장비 및 반도체 장비 시장의 고급 정밀화 추세로 인하여 모션 제어기는FA ,

기존의 단순 모터 제어 및 위치 제어 기능을 벗어나 매우 정밀하고 높은 성능을 찾

는 시스템이 필요하다 따라서 본 제품 에서는 기존의 위치결정시스템이 갖는 단순.

한 위치제어 기능뿐 아니라 고급사양의 제품들이 갖는 기능들도 포함하고자 하였

다 이러한 기능을 요약하면 다음과 같다. .

가 커브 가감속 기능. S

모터의 급작스런 거속과 감속으로 인하여 발생하는 져크 현상을 극복하고 진(Jerk)

동과 소음을 현저히 감소시키는 기능으로서 모터의 가속과 감속 구간에서 자 형태S

의 속도 변화를 갖도록 한다 이러한 기능은 반도체 장비의 웨이퍼 이송 및. LCD

유리판의 이송 로봇에 필수적인 기능으로서 기존의 종속형 위치결정 유니트에PLC

서는 지원되지 않는 고급사양이다.

나 직선 곡선 보간 기능.

다축의 모터를 동시에 구동시킬 때 두개의 모터축이 직선으로 이동하던지 혹은 원

으로 이동할 때 사용되는 기능으로서 주로 가공 및 기계에 주로 사용되는CAM NC

기능이다 현대의 자동화 설비들은 이나 장비가 아니어도 이러한 보간 운동. CAM NC

을 많이 필요로 하는 추세이므로 이 기능의 지원은 반드시 필요하다.

Page 8: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 8 -

다 일반적인 모션제어 사양.

본 제품의 모션제어를 위하여 필요로 하는 기본적인 사양은 다음표와 같이 요약된

다.

항 목 사 양

제어 축수 축 동시운전 완전 독립 제어2 ( )

가 감속 방식. 커브 의사 커브 직선 가 감속S , S , .

지원모터종류 서보 모터 스테핑 모터AC ,

출력 주파수 모터구동 펄스 최대 7.5MHz

통신방식 지원RS-232, RS485

최대 동시연결 대수 대 대RS232 : 8 , RS485 : 15

입력 접점 수 및 방식 입력 개TTL 24V 8

출력 접점 수 출력 개Open-Collector 8

위치 정보표현 펄스16777215

프로그램 저장 스텝 스텝 스텝 개 프로그램5000 (1000 * 5 )

서브루틴 저장 스텝 스텝 스텝 개 서브루틴1500 (100 * 15 )

전원전압 DC 18V ~ DC 40V

소비전력 70mW

외관크기 100W * 60D * 33H

Page 9: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 9 -

제 절 기술개발 기획배경2 .

반도체 장비 및 장비 시장의 현황과 전망1. FA

현대 자동화 장비에서 필요한 시스템제어기의 제품 기획을 위하여는 현재 반도체

및 장비산업의 현황과 발전방향을 분석 할 필요가 있다 이를 위하여 먼저 현재FA .

반도체 장비 및 장비 시장을 보다 세분화하여 보면 다음 표와 같이 분류된다FA .

분 야 고급 제품 시장 중급 제품 시장 저급 제품 시장

반도체장비산업분야

자체적으로 전용시스템-개발 최적화제어시스템 구현,초고속 초정밀 모션-제어구현

주로 일본에서 정밀로봇을-수입

이나 다른- Application기구부 설계하여 적용

제어기 이용 정밀위치- NC (제어)다양한 모션구현 직선 원- ( , )서보 스테핑 모터 이용- /나 를- PC PLC + T/P

주제어기로 이용

로봇시스템산업분야

핵심모듈을 일본에서 수입-초정밀 편리한- ,

시용환경제공가격이 매우 고가제품이며-

대부분 진공로봇 등과 같이특수용도

범용 모션제어기를-사용하여 구축

와 를 주제어기로- PLC PC사용로봇 요소 전문업체는 주로-

자체 제작한 전용제어기 사용

스테핑 모터를 이용한-위치제어범용컨트롤러 보다 주로-등을 이용하여 저가로PLC

저속 모션 제어와 를 주제어기로- PLC T/P

이용

설비 및FA공작기계산업분야

고속의 정밀 위치 속도제어- /구현주로 일반모터에 일부-

스테핑적용모션제어기를 사용하여-

고성능화

단순이송 장치개념의 로봇-설계범용 모션 제어기 사용하여-

구현

모터 및 인버터- AC,DC이용단순한 위치 속도 제어- ,

구현를 이용하여- PLC제어On-OFF

특수시장를 이용한 네트워크 기반의 공장 및 장비간 자동화를 근간으로 하는 시스템 구현- Field Bus

기반의 구현 및 분산처리 시스템 구축 및 반도체 생산설비에 전반적으로 확대- S.I HMI , FA

위에서 분류한 분야들의 발전 추이 및 패러다임의 변화를 살펴보면 다음과 같다.

표에서 보이는 바와 같이 점차 각분야는 조립 및 기능구현 위주의 제품 설계에서

벗어나 제어성능이 우수한 고급제품 시장으로 변화하고 있으며 이로서 보다 더 높

은 수준의 제어기술과 전체 시스템의 가격 경쟁력은 시장 주도에 있어서 큰 변수로

작용하고 있는 현실이다.

Page 10: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 10 -

한국을 비롯한 아시아 지역의 반도체장비 장비의 로봇 산업 현황을 보면 다음/ FA

표에서 보이는 바와 같이 이미 일본은 인건비 비중이 높은 기계제작분야 보다는 핵

심솔루션 제공이나 고부가가치 분야인 특수장비 로봇등의 분야를 집중적으로 육성/

하고 있음을 알 수 가 있다.

국내 반도체 장비 및 장비 시장의 발전 방향2. FA

현재 국내의 반도체장비 및 로봇산업은 기계설계 위주로 발전하였으며 핵심 메카닉

스 모듈이나 모션컨트롤러 주제어기 등은 주로 일본에서 수입하고 있는 실정이다, .

이러한 응용기술 위주의 산업상황 속에서 많은 경쟁사들이 발생하고 이에따라 가격

경쟁이 치열해지게 되면서 결국 핵심메카닉스모듈 이나 전장제어부 모션 비젼 주( , ,

제어 의 자체개발 필요성이 크게 대두되면서 이에 따른 신규시장의 형성이 예상된)

다 현재 전장제어부의 기술이나 제품화가 매우 저조하며 제품생산업체도 많지않은.

상황이지만 반도체장비 로봇 장비들이 국산화 고급화 정밀화 되면서 점차 그, , FA , ,

수요와 시장규모가 크게 확대되리라 예상된다.

반도체 로봇 관련 특허분석3.

새로운 패러다임 변화에 맞는 시스템의 개발을 위하여 기존의 로봇 및 반도체 장비

관련 특허의 분석을 통하여 각국의 장단점 분석 대응기술의 모색등에 활요 할 수있

다 먼저 다음 표에 보이는 것은 본 특허 분석에 사용된 특허 분류 내용이다. .

특허 대분류 특허의 특징부에 따라 분류한 소분류

로봇구현방법(TM) 부 부 파지식핸드부TM01 : Hand , TM02 : ARM , TM03 :

로봇제어방법(TC) 위치 속도제어 모터구동부 시스템전반 웨이퍼제어TC01 : , , TC02: , TM03 : , TM04 :

기타 대분류 테스트용 로봇 지그 장비 등과 관련한 기타 특허TR : , ETC : ,

Page 11: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 11 -

가 미국특허 분석.

미국의 경우 로봇자체 기구물 위주 보다는 주로 위치 속도등 원천기술위주의 제어( )

부에 특허가 치중되어 있으며 상대적으로 응용과 관련한 분야 특허는 적은편임TM

나 일본특허 분석.

일본의 경우 제어분야와 기구분야가 비슷하게 특허가 출원되었으며 제어부는 원천

기술보다는 실제 응용에 필요한 분야의 특허가 상대적으로 많이 나타나(TC02,03)

고 있으며 이러한 이유로 일본의 반도체 장비가 전세계 시장에서 시장우위를 점할

수 있다 현재 국내에서는 많은 반도체 장비 업체들이 일본으로부터 장비를 들여와.

재가공하여 판매하거나 혹은 핵심 기계 및 전장부를 수입하여 전체장비를 생산하는

형태를 취하고 있다.

Page 12: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 12 -

다 한국특허 분석.

한국의 경우 제어부 보다는 기구부 특허가 월등히 많음 그간 국내에서는 응용 기,

술만 편파적으로 연구 개발되어 왔으며 현재 로봇 및 반도체장비가 핵심모듈은 수,

입하고 주변장치 만 국산화하여 조립하고 있는 실정을 반영하는 것으로 반도체장비

의 국산화율 제고와 대일 경쟁력 강화 동남아시장 개척을 위하여는 전장부의 연구,

개발이 필수적으로 필요하다.

라 국내 반도체 및 장비 전장 요소부품 국산화 현황. FA

Page 13: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 13 -

위의그림에서 보는바와 같이 현재 설비의 저급 중급 시장을 위한 전장 요소부품FA ,

들의 국산화는 상당히 진전되었으며 특히 산업용 모터 인덕션 등 및 산(AC, DC, )

업용컨트롤러 인버터 간이 위치제어기 는 시장을 확고하게 자리잡고 있다 하(PLC, , ) .

지만 반도체장비 및 로봇 용 고급설비에 소요되는 전장 요소부품들 특히 소형, , FA ,

정밀 모터 및 서보드라이버 정밀모션컨트롤러 등의 국산화는 상당히 미흡하다 이, .

는 현재 이부분의 시장이 기존 시장대비 크지 않기 때문이지만 현재 시장환경이

중 저급에서 고급 시장으로 이동하고 있는 상황을 감안하면 이들 요소부품들의 국,

산화는 시급하다 그나마 범정부적인 부품 소재 산업 육성계획에 따라 정밀급 모터. ,

의 국산화는 활기를 띠고 있으나 이를 구동하고 제어하는 정밀 모션컨트롤러 및 산

업용 제어기는 이론적인 연구는 활발하게 이루어지고 있으나 그 수요에 비하여 국

산화는 상당히 미흡한 실정이다.

마 현재 당사제품의 이미지맵.

당사 제품을 사용중인 업체를 대상으로 조사한 내용에 의하면 당사에서 제품 판매

전략 수립시 계획한 내용과 다르게 제품을 인식하고 있었으며 가격과 성능에 대하

여 많은 오해와 인식차이가 있음을 알수가 있었다 대체로 제품의 성능이나 신뢰도.

에는 만족하나 업체의 인지도와 가격경쟁력은 낮은 것으로 나타났다 의외로 기술.

지원 및 에는 매우 만족하였는데 이는 당사제품 적용 장비에 대하여 직접A/S 1:1

프로그래밍 지원 및 발생시 교환을 원칙으로 하기 때문인 것으로 사료됨A/S 1:1 .

이 내용을 바탕으로 이번에 기획하는 제품 및 기술의 경우 다음과 같은 제품 이미

지 포지셔닝을 목표로 하였다.

Page 14: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 14 -

이러한 목표 제품 포지셔닝 전략에 의거하여 그간 제품에서 소비자의 에서Needs

이탈한 업체인지도 항목을 나름대로 끌어 올리고 제품의고급사양은 오히려 낮추는

대신 가격을 다소 낮추어 소비자 불만을 개선시키도록 하고 제품의 다양화를 꾀하

여 보다 다양한 시장으로의 진입을 가능케 하여 당초 영업목표인 수입제품 대비 성

능과 가격경쟁력 우위 확보가 가능하여 시장점유율을 높일 수가 있게된다.

제 절 기술개발 내용3 .

개발제품의 개념1.

본 과제를 통하여 개발하는 제품은 그간 자동화 설비에서 전장제어를 위하여 주로

사용되는 나 의 장점을 취하여 각 자동화 설비마다 전용으로 제어부를 설계PC PLC

할 수 있도록 하기 위하여 성능과 가격면에서 최고의 경쟁력 있는 제품을 개발하고

자 하는 것으로 아래 표와 같은 목표를 갖는다.

구현방식 입출력(I/O) Motion Control Network 지령Display / 특수부가장치

신 규기획제품모션 시스템( /컨트롤러)

자체 입출력모듈카드 확장 사용

자체 모션 모듈카드 확장 사용축 축 모듈(2 , 4 )

LAN(Ehternet)Field Bus Card(Device Net)RS232,485,422

자체 전용모듈의 LCDTouch Pannel

신용 타입PC - 104특수카드 사용

카운터(ADC, DAC, )

장점PLC본 시스템의특장점

사용의 장점PC방식과PLC유사

의 장점PC

Page 15: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 15 -

확장성의 구현2.

본 과제를 통하여 개발하는 제품은 모션 제어 축수 및 입출력 접점수의 확장을 위

하여 다음 그림과 같이 각 카드별로 확장이 가능하도록 한다.

제품의 설계내용3.

가 시스템제어부 모듈 의 설계방안. (CPU )

모듈의 대략적인 구조 및 설계내용은 다음과 같다CPU .

고속 채택으로 모선제어 및 기능 수행CPU PLC▣

대용랑 채택 제품 성능을FLASH MEMORY :▣

업그레이드시 현장에서 직접 처리 가능

자동고장 진단기능 동작 수행 전에 항상 각:▣

모듈들의 고장상태 및 통신 이상 등을 자체 진단하여

오동작을 사전에 방지한다.

바코드 및 비젼장비 등의 인터페이스를 위하여▣

포트 및 아나로그 입력 보드 등 확장용RS232

보드들과의 인터페이스가 가능하도록 설계

경쟁사의 불법복제 방지를 위한 코드락 및 시큐리티▣

기능 보유 설계

Page 16: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 16 -

나 모션제어부 의 설계방안. (MBD)

모션제어를 위한 모듈의 구조 및 설계내용은 다음과 같다.

채택MCX213 Motion Controller Chip▣

축 서보 및 스테핑 모터 완벽지원2▣

커브 가감속 지원 떨림없는 모터 구동 가능S :▣

자체 리미트 스위치 및 원점 센서 인터페이스▣

축수 확장시는 이 보드를 개 개 개 사용하면 각각2 ,3 ,4▣

축으로 확장된다4,6,8 .

및 오동작에 의한 비상정지 기능Emergency▣

고속운전으로 서보 드라이버의 최대속도 지원 최고(▣

드라이브 속도 이상2Mpps )

직선 원호 보간 기능에 의한 운전 지원/▣

다 입출력제어부 의 설계방안. (DIO)

디지털 입력과 출력제어를 위한 모듈의 구조 및 설계내용은 다음과 같다.

출력Darlington Drive :▣

직접구동 포트24V Solenoid , 24

입력Photo Isolated :▣

포트의 입력 채터링 방지 및 노이즈 차단16 ,

및 대전류 드라이브를 위한 특수Relay▣

출력 모듈 인터페이스 기능

라 전체 시스템 평가 항목.

본 개발 기술의 평가를 위한 항목과 그 목표치는 다음표와 같다.

평 가 항 목      평가방법 적용기준개 발목표치

비중(%)

최소 입출력 응답시간1. 출력 피드백을 로 측정OSC대리점 및

업체 요구사양 및외국제품을기준으로 설정

최대 10 usec 20

모터제어 최대속도2. 출력을 로 측정Pulse OSC 최소 4Mpps 25

모터제어명령 수행시간3. 축교호왕복회전 시간측정2 최소 회 분500 / 25

정상 작동전압4. 정전원으로 가변후 측정DC +18V ~ +48V 5

원점이동 복귀 정확도5. 반복적으로 원점이동 측정 최소 만회 반복1 25

Page 17: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 17 -

제 장 시스템제어기 개발2 . (SC)

제 절 전체시스템의 구성1 .

시스템 제어기의 외관1.

본 과제를 통하여 개발 완료된 제품 의 전체 외관은 다음과 같다 본 제(DIMO-SC) .

품은 작용업체 별로 주문형 생산 할 예정인 관계로 특별히 에는 케이스를 부착SC

하지 않는다.

시스템 제어기의 구성2.

Page 18: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 18 -

가 모듈. CPU

모듈은 를 이용하여 모션 보드와 디지털 입출력보드를 제어하CPU AM188ES CPU

는 기능을 갖으며 다음과 같은 특징을 갖는다.

고속 채택으로 모션 제어 및 기능 수행(1) CPU PLC

대용량 채택 제품 성능을 업그레이드시 현장에서 직접 처리(2) Flash Memory :

가능

자동 고장 진단 기능 동작 수행전에 향상 각 모듈들의 고장상태 및 통신 이상(3) :

등을 자체 진단하여 오동작을 사전에 방지한다.

바코드 및 비젼 장비 등의 인터페이스를 위하여 포트 및 아날로그(4) (Vision) RS232

입력 보드등 확장용 보드들과의 인터페이스가 가능하도록 설계

경쟁사의 불법복제 방지를 위한 코드 락 및 시큐리티 기능 보유(5) (Code Lock)

설계

나 모션 제어 모듈. (Motion)

모션제어 모듈은 모듈로부터 명령을 받아서 두축의 모터를 정밀 제어하는 모CPU

듈로서 다음과 같은 특징을 갖는다 이 모션제어 모듈은 일본 사의. NOVA MCX312

모션 를 이용하여 모터를 제어 한다 한 보드가 두 축의 모터를 제어하며 최대IC . 8

개의 보드 개의 모터 축 를 제어할 수 있다(16 ) .

모션 컨트롤 칩 채택(1) MCX312 (Motion Controller Chip)

축 서보 및 스테핑 모터 완벽 지원(2) 2

커브 가감속 지원 떨림 없는 모터구동 가능(3) S :

자체 리미트 스위치 및 원점 센서 인터페이스(4)

최대 장의 보드 사용 가능 즉 축까지 확장 가능(5) 8 . , 16

및 오동작에 의한 비상정지 기능(6) Emergency

고속 운전으로 서보 드라이버의 최대속도 지원 최고 드라이브 속도 이(7) ( 2Mpps

상)

직선 원호 보간 기능에 의한 운전 지원(8) /

Page 19: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 19 -

다 디지털 입출력 제어 모듈. (DIO)

디지털 입출력 제어 모듈은 로부터 명렬을 받아 입력과 출력을 제어하는(DIO) CPU

모듈로서 다음과 같은 특징을 갖는다.

출력 직접 구동(1) Darlington Drive : 24V Solenoid

입력에 의한 노이즈 차단(2) Photo Isolated

입력 포트와 출력 포트(3) 24 16

최대 개의 보드 사용 가능(4) 8

대출력 신호제어를 위한 릴레이 및 인터페이스(5) SCR

제 절 주제어기 모듈2 . (CPU)

보드의 외관1. CPU

개발된 모듈의 외관과 내부 구성은 다음 그림과 같다CPU .

모듈의 설계2. CPU

가. CPU : Am188ES

는 사의 인 를 채택하며 시스템의 동작CPU AMD Embedded Controller Am80188ES

주파수는 시스템의 사양에 맞게 선택하여 사용이 가능하다 현재 사용이 가능한 시.

스템 주파수는 선정에 따라 다르게 되며 최고 까지의 속도가 지원된다CPU 40MHz .

Page 20: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 20 -

나 프로그램 메모리. (Program Memory)

프로그램 메모리 블럭은 전체 시스템 동작을 위한 프로그램이 저장되는 곳으로 시

스템의 전체 뱅크는 하나로 구성되어 있다.

크기(1) : 4Mbit(512KB)

종류(2) : Flash ROM

패키지 패키지 패키지 중 선택 가능(3) : TSOP DIP

다 시스템 데이터 메모리. (System Data Memory)

시스템이 사용하는 메모리 공간으로 컴파일러상의 변수 영역 및 스Am80188ES C

택 영역 등으로 구성 되는 공간이다.

크기(1) : 1Mbit(128KB)

종류 만 가능하도록 함(2) : SRAM .

패키지 패키지만 지원함(3) : SOJ

라 사용자 데이터 메모리. (User Data Memory)

시리얼 으로 사용자가 사용하는 공간이다EEPROM .

크기(1) : 128Byte

종류(2) : Serial EEPROM

패키지 타입(3) : SOIC

마 통신 인터페이스. (Interface)

모듈과 외부 통신을 위하여 시리얼 통신 포트 개를 설치하였다CPU 2 .

속도 의 속도에 따라 다르지만 중에서 설정이 가능하(1) : CPU 38400, 115200bps

다.

가능 보드는 용도에 따른 가능은 다음과 같다(2) : CPU .

COM1 RS232 와 통신PC

COM2 RS232 or RS488 티칭 패던트와 통신

가 포트는 만 지원하므로 와 신호만 이용한( ) RS232 : COM1 Null Modem RxD TxD

다.

나 포트는 만 지원하므로 와 신호만 이용한( ) RS488 : COM2 Null Modem RxD TxD

다.

Page 21: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 21 -

바 디지털 입출력 인터페이스. (Interface)

(1) Digital Input Block

로 외부회로와 되어 있다Photo Coupler Isolation .

가 입력 포트수 개( ) : 8

나 입력 전압( ) : 24V

다 입력 논리( )

외부 신호 입력 24V Open 0V

내부 신호 입력 논리 OFF OFF ON

(2) Digital Output Block

오픈 컬렉터 출력으로 되어 있다(Open Collector) .

가 출력 포트수 개( ) : 8

나 출력 논리( )

내부 신호 논리 ON OFF

외부 출력 논리 GND OPEN

Page 22: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 22 -

3. Am188ES CPU Block

가 의 주요 특징. Am188ES

속도(1) : 20-, 25-, 33-, and 40-MHz operating frequencies

(2) Zero Wait Memory Access : 70ns@40MHz, 100ns@24MHz

용량(3) Memory Space : 1MByte (8Mbit)

용량(4) I/O Space : 64KByte

내부 비트 외부 비트(5) Bus Width : 16 , 8

독립적인 두개의 시리얼 통신 포트(6)

개의 독립적인(7) 2 DMA Controller

개의 외부 인터럽트 지원(8) 8

개의 비트 타이머 내장(9) 3 16

패키지(10) : 100-pin, plastic quad flat pack (PQFP)

나 의 내부. Am188ES Block Diagram

의 블럭별로 사용되는 단자의 구성과 내부 블록도는 다음 그림과 같다Am 188ES .

Page 23: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 23 -

다 블럭의 메모리 맵. CPU

블럭의 메모리 맵은 다음 그림과 같다CPU .

그림 에서 프로그램 메모리 영역은 프로그램 메모리 시스템 데이터 메모리 사용7 , ,

자 데이터 메모리 전체 크기가 로 정의된 것으로 각 블럭의 메모리 구성에 따8Mbit

라서 그 메모리 주소는 변경이 있게 된다.

Page 24: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 24 -

프로그램 메모라 영역(1)

프로그램 메모리 영역은 메모라는 의 레지스터를 셋팅 함으로서Am188ES UMCS

메모리 크기를 설정 할 수가 있으며 이에 따라서 메모리 맵이 변경되게 된다 메모.

리 크기에 따리 변경되는 메모리 맵은 다음 그림과 같다.

현재 시스템에서는 가 가능하므로 그 주소는 번지부터 시작하여512KB 80000h

번지까지가 된다 따라서 영역에 해당하는 와 은FFFFFh . RAM Bank #0 Bank #1

영역의 주소 이하부터 번지까지가 된다ROM 00000h .

시스템 데이터 메모리 영역(2)

시스템 메모리 영역은 영역으로 의 레지스터를 셋팅 함으로SRAM Am188ES LMCS

서 메모리 크기를 설정할 수가 있다 이 메모리는 번지부터 위치하게 되며. 00000h

결정되는 크기에 따라 상위 주소가 결정이 된다 설정에 따른 메모리 맵은. LMCS

다음 그림과 같다.

Page 25: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 25 -

사용자 데이터 영역(3)

사용자 데이터 영역은 와 에 의하여 주소가 설정되고 나면 나머지 영역UMCS LMCS

에 대하여 메모리 설정이 가능하다 이 주소 영역의 지정은 레지스터에 의. MMCS

하여 설정이 가능하며 다음 그림과 같이 구성된다.

이때 하나의 메모리 크기가 결정이 되면 메모리 은 다시 개의 로 나Bank #1 4 Bank

뉘게 된다 그러나 본 시스템은 벵크를 여러개 사용하지 않으므로 이 메모. Bank #1

리 영역의 에 해당하는 영역을 소유하게 된다 의 시작Total Block Size . Bank #1

주소는 미리 지정되어 있지 않으므로 다른 레지스터를 별도로 셋팅 하여야 한다.

프로그램 메모리 블럭4.

프로그램 메모리 블럭에 사용 가능한 메모리의 종류와 은 다음과 같다Pin Out .

가 의 적용. Flash Memory

사용 가능한 는 그림 과 그림 에 보인다 그림 는Flash Memory 11 12 . 12

그림 은 이며 로 사용 하고자 하는 경우29F040(512KB) 11 29F010(128KB) 256KB

는 을 이용하고 점퍼 셋팅으로 만 선택되도록 하여야 한다 다음 각29F040 256KB .

그림에 해당하는 의 패키지를 보인다 메모리의 가격과Flash Memory TSOP . Flash

수급면에 있어서 패키지 보다 가 유리하다DlP TSOP .

Page 26: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 26 -

사용자 데이터 영역5.

사용자 데이터 영역에는 이 이용되며 아래와 같은 메모리가 이용된Serial EEPROM

다 의 작은 용량의 메모리로서 사용자가 필요로 하는 데이터를 저장한다. 128Byte .

아래는 의 그림이다93LC46A/B .

PACKAGE TYPE

시스템 데이터 영역6.

시스템 데이터 영역에는 이 이용이 되며 아래 그림과 같은 메모리가 이용된SRAM

다 은 이고 를 사용한다. SRAM 1Mbit A617308(AMIC) IC .

Page 27: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 27 -

제 절 모션제어 모듈3 .

모션제어 보드의 외관1.

개발된 모션제어 모듈의 외관과 내부 구성은 다음 그림과 같다.

모션제어 모듈의 설계2.

가 의 주요 특징. MCX312

독립 축 드라이브 으로 축의 모터 를 독립으로 제어할 수 있다(1) 2 : 1 chip 2 (motor)

속도 제어 최고 까지 출력 가능 정속 직선가감속 자 가감속 드라(2) : 4Mpps . / / S

이브 가능(drive) .

직선보간 보간좌표범위는 현재위치로부터 이고 속(3) : -8,388,607 ~ +8,388,607 ,

도는 최대 이며 보간위치정도는 이하임4Mpps ±0.5LSB .

원호보간 보간좌표범위는 현재위치로부터 이고 속(4) : -8,388,607 ~ +8,388,607 ,

도는 최대 이며 보간위치정도는 이하임4Mpps ±1LSB .

비트 패턴 보간 상위 에서 연산되어 화된 보간(5) (bit pattern) : CPU bit pattern

를 으로 받아들여 지정된 드라이브 속도로 보간 를 연속적으로 출data packet , pulse

력하는 보간 드라이브입니다 이 기능을 이용함으로서 상위 에서 만들어진 여. , CPU

러 가지 보간 를 그릴 수 있습니다curve .

연속보간동작 보간 드라이브를 각각의 보간 노드 마다 멈추지 않고 연(6) : (node) ,

속하여 행하게 할 수 있습니다 연속보간 때의 드라이브 속도는 최고 까지. 2Mpps

가능.

Page 28: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 28 -

선속 일정제어 선속 일정제어는 보간을 하고 있는 축의 합성속도를 항상 일정(7) :

하게 하는 기능입니다.

위치 관리기능 드라이브 펄스 출력을 내부에서 관리하는 논리위치(8) (position) : IC

카운터 와 외부 엔코더 로 부터의 펄스 를 관리하는 실위치(counter) (encoder) (pulse)

카운터 개의 비트 위치 카운터를 갖추고 있습니다2 32 .

원점 찾기용 입력 드라이브를 도중에 감속정지 시키기 위한 외부 입력신호를(9) :

각 축 점 가지고 있습니다 이 입력신호를 할당하는 것에 의해 원점 부근 고속 찾3 .

기 원점 찾기 엔코더 상 찾기 등을 할 수 있습니다, , Z .

서보 모터용 신호 상 엔코더 선호 인포지션 알람 등의(10) : 2 , (inposition). (alarm)

서보모터 드라이버 신호를 입력할 수 있다.

나 의 내부 블록 다이어그램. MCX312 (Block Diagram)

Page 29: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 29 -

제 절 디지털 입출력 모듈4 .

디지털 입출력 보드의 외관1.

개발된 디지털 입출력 제어 모듈의 외관과 내부 구성은 다음 그림과 같다.

Page 30: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 30 -

제 절 티칭 펜던트5 .

티칭 펜턴드의 외관1.

개발된 디지털 입출력 제어 모듈의 외관과 내부 구성은 다음 그림과 같다.

티칭 펜던트의 설계2.

가 티칭팬던트에 탑재된 마이크로프로세서 의 주요특징. (S3C44B0X)

(1) 2.5V Static ARM7TDMI CPU core with 8KB cache

(2) SAMBA bus architecture up to 66MHzⅡ

지원(3) Little / Big endian

(4) Address space : 32Mbytes per each bank (Total 256Mbyte)

개의 는 와 설정 가능 나머지 는 정해진(5) 8 Bank (Bank0 start address size , Bank

크기와 를 가짐start address )

각 마다 설정 가능(6) Bus Width : bank 8 / 16 / 32bit data bus width

독립적인 두개의 시리얼 통신 포트(7)

개의 독립적인(8) 2 DMA Controller

개의 외부 인터럽트 지원(9) 8

(10) 71 multiplexed input/ouput ports

개의 비트 타이에 내장(11) 5 16

Page 31: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 31 -

로 운영됨(12) RTC(Real Time Clock) : 32.768kHz (Full clock feature : msec,

sec, min, hour, day, week, month, year)

개의 내장(13) 8 multiplexed ADC (Max 500KSPS/10bit)

컨트롤러 내장(14) LCD (color(256 color levels) / monochrome / gray(16 gray

levels) LCD panel)

패키지(15) : 160 LQFP / 160 FBGA

나 의 내부. S3C44B0X Block Diagram

는 프로세서를 기반으로 하여 삼성에서 개발한 전용의 비S3C44BOX ARM PDA 32

트 마이크로 프로세서로서 내부 구조는 다음 그림과 같다.

Page 32: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 32 -

다 블록의 메모리 맵. S3C44B0X CPU

블럭의 메모리 맵은 다음 그림과 같다CPU .

영역은 부터 원하는 로 설정할 수 있다 최대Bank0(nGCS0) 0x0000_0000 Size (

까지 그 외에 까지는 로 정해져있고28MB ). Bank1 ~ Bank5 32MB , Bank6 ~ Bank7

은 두 가 같은 크기로 로 설정할 수 있다Bank 2/4/8/l6/32MB .

라 컨트롤러. LCD

컨트롤러는 시스템 메모리에 있는 비디오 버퍼의 이미지 데이터를 외부LCD LCD

의 드라이버에 전송한다LCD .

컬러 그레이 패널 을 지원함(1) / (gray)/monochrome LCD (panel) .

타입의 패널 지원 듀얼 스캔 싱글 스캔(2) 3 LCD : 4-bit (dual scan), 4-bit

싱글 스캔 디스플레이 타입을 지원(single scan), 8-bit

시스템 메모리를 디스플레이 메모리로 이용(3)

Page 33: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 33 -

스크린 사이즈 픽셀(4) : 320*240, 160*160, 640*480 (pixel)

그레이 레벨 지원(5) 4

그레이 레벨(6) 16 (Practically. some gray levels may not be available)

레벨의 컬러 지원(7) 256

Page 34: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 34 -

제 장 운영프로그램의 개발3 .

제 절 시스템제어기 운영프로그램1 . (SC)

운영프로그램의 계층 구성1.

개발된 시스템 제어기의 운영프로그램은 언어로 작성되어 있으며 응용계층과 응C

용인터페이스 계층 그리고 디바이스 드라이버 인터페이스 계층으로 구분(API) (DDI)

한다 이중 가장 상위의 응용 계층은 다음과 같은 개의 핸들러로 구성되며. (APP) 5

이들 핸들러간의 상태천이도는 다음 그림과 같다.

가 응용 계층의 핸들러. (APP)

(1) Program_Handler

(2) Com_Handler

(3) Executer

(4) Process_Handler

(5) Exception_Handler

나 상태천이도. (Status Transition Flow Diagram)

다 의 기능. Process_Handler

운전모드 파악 후 프로그램이나 호출(1) Com_Handler

모니터링 정보처리(2)

Page 35: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 35 -

타이머 처리(3)

(4) Setup loading

라 의 기능. Program_Handler

변수 관리(1)

프로그램 카운터 관리(2) (Program Counter)

멀티 태스킹 처리(3)

반복 분기 처리(4) /

명령(5) Fetch

마 의 기능. Executer

명령 실행(1)

명령 수행에 따른 에러의 검색(2)

바. Com_Handler

명령 그룹별 에 따른 데이터 추출(1) I, U, T

모드 실행 모드 실행 모드 설행 및 응답대기(2) I , T , U

프로그램 셋업 정보 각종 테이블 등 다운로드(3) / /

시스템 라이브러리 함수2. (Library)

시스템 제어기를 위한 계층의 함수들은 여러 가지 하부의 함수들을 호출하게APP

되며 이들은 주로 와 계층으로 구분되어 진다 이들 계층을 통합하여 라이브API DDI .

러리화 하여 자원의 재활용과 이식성을 높일 수 있도록 설계하였다 이들 라이브러.

리 함수들을 주요 기능별로 구분하여 요약하면 다음과 같다.

가 입출력 포트 관련 함수. (Port)

(1) unsigned long Read_INPUT_Port(unsigned int port)

기 능 입력포트에서 값 읽기 은(cpu board port0(8bits), port1 ~ port8 dio board(24bits))

argument1) unsigned int port

로 구성2 byte▶중간 는 각 의 주소 는 번호 을 통해 사용8bits port . LSB 4bits port bits making

호 출 DD 1) unsigned int Read_Data(unsigned int port)

Page 36: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 36 -

(2) void Write_OUTPUT_Port(unsigned int port, unsigned int write_data)

기 능 출력포트에 값 쓰기 은(cpu board port0(8bits), port1 ~ port8 dio board(l6bits))

return value void

argument

1) unsigned int port

로 구성2 byte▶

중간 는 각 의 주소 는 번호 을 통해 사용8bits port , LSB 4bits port bits making

2) unsigned int write_data

에 쓸output port word data▶

호 출 DD 1) void Write_Data(unsigned int port, unsigned int write_data)

(3) unsigned int Read_OUTPUT_Port(unsigned int port)

기 능출력포트에 쓴 값 읽기 은(cpu board port0(8bits), port1 ~ port8 dio

board(l6bits))

return valueunsigned int

값output port▶

argument

1) unsigned int port

로 구성2 byte▶

중간 는 각 의 주소 는 번호 을 통해 사용8bits port , LSB 4bits port bits making

호 출 DD

(4) void Write_OUTPUT_Bit(unsigned int port, unsigned char bit, unsigned char

data)

기 능출력포트에 한 비트 값 쓰기

은(cpu board port0(8bits), port1 ~ port8 dio board(16bits))

return value void

argument

1) unsigned int port

로 구성2 byte▶

중간 는 각 의 주소 는 번호 을 통해 사용8bits port , LSB 4bits port bits making

2) unsigned char bit

출력포트의 원하는 비트 번호▶

2) unsigned char data

출력포트의 원하는 비트번호에 쓸 값(ON / OFF)▶

호출 DDI 1) void Write_OUTPUT_Port(unsigned int port, unsigned int write_data)

Page 37: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 37 -

나 보드 제어관련 함수. CPU (Board)

(1) void Control_Pulse_MCX312(unsigned int motor_num, unsigned int control)

기 능 값 에 따라 펄스 출력 제어control (PULSE_ON / PULSL_OFF) (pulse)

return value void

argument

1) unsigned int motor_num구성2 byte▶

부터 는 각 보드에서의 축번호 부터 는 전체에서의 모터 번호msb 4bits , Isb 4bits (1 ~나머지 는 할당된 주소 비트 마스킹 해서 사용16) 8bits ( (bit masking) )

2) unsinged int control중 선택PULSE_ON / PULSE_OFF▶

호 출 DD1) void Write_Byte_Register_MCX312(unsigned int motor_num, unsigned chardata, unsigned int reg)

(2) void Control_LED_MCX312(unsigned int motor_num, unsigned int control)

기 능 값 에 따라control (LED_OFF, LED_RED, LED_GREEN, LED_ORAGE) led control.

return value void

argument

1) unsigned int motor_num구성2 byte▶

부터 는 각 보드에서의 축번호 부터 는 전체에서의 모터 번호msb 4bits , Isb 4bits (1 ~나머지 는 할당된 주소 비트 마스킹 해서 사용16) 8bits ( (bit masking) )

2) unsinged int control중 선택LED_OFF, LED_RED, LED_GREEN, LED_ORAGE▶

호 출 DD1) void Write_Byte_Register_MCX312(unsigned int motor_num, unsigned chardata, unsigned int reg)

(3) void Control_LED_CPU(unsigned int control)

기 능값 에 따라control (LED_OFF, LED_HED, LED_GREEN, LED_ORAGE) cpu led

control.

return value void

argument1) unsinged int control

중 선택LED_OFF, LED_RED, LED_GREEN, LED_ORAGE▶

호 출 DD1) void Write_PCB_Register(unsigned int port_num, unsigned int write_data)2) unsigned int Read_PCB_Register(unsigned int port_num)

Page 38: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 38 -

(4) void Alarm_Clear_MCX312(unsigned int motor_num)

기 능 driver alarm clear

return value void

argument

1) unsigned int motor_num구성2 byte▶

부터 는 각 보드에서의 축번호 부터 는 전체에서의 모터 번호msb 4bits ( , Isb 4bits (1나머지 는 할당된 주소 비트 마스킹 해서 사용~ 16) 8bits ( (bit masking) )

호 출 DD1) void Write_Word_Register_MCX312(unsigned int motor_num, unsigned intdata, unsigned int reg)

(5) void Servo_On_Off_MCX312(unsigned int motor_num, unsigned int control)

기 능 값 에 따라control (ON / OFF) servo on/off

return value void

argument

1) unsigned int motor_num구성2 byte▶

부터 는 각 보드에서의 축번호 부터 는 전체에서의 모터 번호msb 4bits , lsb 4bits (1나머지 는 할당된 주소 비트 마스킹 해서 사용~ 16) 8bits ( (bit masking) )

2) unsinged int control중 선택ON, OFF▶

호 출DD1) void Write_Word_Register_MCX312(unsigned int motor_num, unsigned intdata, unsigned int reg)

다 시스템설정 관련 함수.

(1) void Set_Drive(unsigned int motor_num, unsigned char * command)

기 능드라이브 설정 펄스 형식 인포지션 과 알람 사용(drive) ( (pulse) , (inposition) (alarm)유무 및 형식 설정,

설정alarm clear time )

return value void

argument

1) unsigned int motor_num구성2 byte

부터 는 각 보드에서의 축번호 부터 는 전체에서의 모터 번호msb 4bits , Isb 4bits (1나머지 는 할당된 주소 비트 마스킹 해서 사용~ 16) 8bits ( (bit masking) )

2) unsigned char * command설정값 의 는 펄스 형식*command MSB 4bits (pulse) (ONE_LOW, ONE_HIGH,TWO_LOW, TWO_HIGH)

의 중 각각 는 인포지션 과 알람 형식*command LSB 4bits 2bits (inposition) (alarm)설정 (NONE, LOW, HIGH)

의 값은 알람 시간 설정*Ccommand + 1) (alarm) clear

호 출 DD1) void Write_Word_Register_MCX312(unsigned int motor_num, unsigned intdata, unsigned int reg)

Page 39: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 39 -

(2) void Set_Limit_Sensor(unsigned int motor_num, unsigned char * command)

기 능시계방향 리미트 와 반시계방향 리미트 의 사용유무 및 형식(cw limit) (ccw limit)설정 정지모드 설정, (stop mode)

return value void

argument

1) unsigned int motor_num구성2 byte▶

부터 는 각 보드에서의 축번호 부터 는 전체에서의 모터 번호msb 4bits , Isb 4bits나머지 는 할당된 주소 비트 마스킹 해서 사용(1 ~ 16) 8bits ( (bit masking) )

2) unsigned char * command설정값▶

의 중 각각 는 시계방향 리미트 와 반시계방*command LSB 4bits 2bits (cw limit)향 리미트 형식 설정(ccw limit) (NONE, LOW, HIGH)

의 값은 정지모드 설정*(command + 1) (SLOW, EMG)

호 출 DD1) void Write_Byte_Register_MCX312(unsigned int motor_num, unsignedchar data, unsigned int reg)

(3) void Set_Home_Sensor(unsigned int motor_num, unsigned char * command)

기 능 원점센서의 형식과 검색모드 설정 값 변수에 저장(search mode)

return value void

argument

1) unsigned int motor_num구성2 byte▶

부터 는 각 보드에서의 축번호 부터 는 전체에서의 모터 번호msb 4bits , Isb 4bits나머지 는 할당된 주소 비트 마스킹 해서 사용(1 ~ 16) 8bits ( (bit masking) )

2) unsigned char * command설정값▶

의 는 원점센서 형식 설정*command MSB 2bits (NONE, LOW, HIGH)의 나머지 는 원점검색 모드 설정*command 6bits

(HOME_CW, HOME_CCW, HOME_ENCODER_Z_CW,HOME_ENCODER_Z_CCW)

호 출 DD

(4) void Setup_Near_Home_Sensor(unsigned int motor_num, unsigned int

near_horne_type)

기 능 근접 원점 센서 의 형식 설정(Near Home Sensor)

return value void

argument

1) unsigned int motor_num구성2 byte .▶

부터 는 각 보드에서의 축번호 부터 는 전체에서의 모터 번호msb 4bits , lsb 4bits나머지 는 할당된 주소 비트 마스킹 해서 사용(1 ~ 16) 8bits ( (bit masking) )

2) unsigned int neachome_type설정값 근접 원점센서 형식 설정. (NONE, LOW, HIGH)▶

호 줄 DD1) void Write_Byte_Register_MCX312(unsigned int motor_num, unsignedchar data, unsigned int reg)

Page 40: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 40 -

(5) void Setup_Home_Sensor(unsigned int motor_num, unsigned int home_type)

기 능 원점센서 의 형식 설정(Home Sensor)

return value void

argument

1) unsigned int motor_num구성2 byte .▶

부터 는 각 보드에서의 축번호 부터 는 전체에서의 모터 번호msb 4bits , Isb 4bits (1나머지 는 할당된 주소 비트 마스킹 해서 사용~ 16) 8bits ( (bit masking) )

2) unsigned int home_type설정값 원정센서 형식 설정(NONE, LOW, HIGH)▶

호 출 DD1) void Write_Byte_Register_MCX312(unsigned int motor_num, unsigned chardata, unsigned int reg)

(6) void Setup_Encoder_Z(unsigned int motor_num, unsigned int z_type)

기 능 엔코더 형식 설정(encoder) z

return value void

argument

1) unsigned int motor_num구성2 byte .▶

부터 는 각 보드에서의 축번호 부터 는 전체에서의 모터 번호msb 4bits , Isb 4bits (1나머지 는 할당된 주소 비트 마스킹 해서 사용~ 16) 8bits ( (bit masking) )

2) unsigned int z_type설정값 엔코더 형식 설정z (NONE, LOW, HIGH)▶

호 출 DD1) void Write_Byte_Register_MCX312(unsigned int motor_num, unsigned chardata, unsigned int reg)

(7) void Write_Speed(unsigned char * command)

기 능 속도 설정

return value void

argument

1) unsigned char * command설정값 부터 는. MSB 4bits motor_num_Group_Num,▶는 속도 테이블 번호 이 일 때 유효4bits ( Destination STBL ),는 모드3bits (STBL_SPEED, INL_SPEED, HONE_SPEED, CSPD_SPEED),는 영역13bits (Range) (1 - 500),

는 운전모드1bit (SCURYE, LINEAR),는1bit ACC_DEC (SYNC, ASYNC),는14bits SV,는2Byte V,는2Byte A,는2Byte D,는2Bvte K.

호 출 DD

1) void Write_Byte_Register_MCX312(unsigned int motor_num, unsigned chardata, unsigned int reg)2) void Write_Word_Command_MCX312(unsigned int motor_num, unsigned intdata, unsigned int command)3) void Write_Long_Command_MCX312(unsigned int motor_num, unsignedlong data, unsigned int command)

Page 41: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 41 -

(8) void Uniform_Speed_Mode(unsigned int group_num, unsigned int mode)

기 능 보간 운전시 선속 일정 사용 유무 설정

return value void

argument

1) unsigned int group_num구성2 byte .▶

부터 는 부터 는 그룹의 주축 모터 번호 나머지 는 할당msb 4bits 0, lsb 4bits , 8bits된 주소 비트 마스킹 해서 사용( (bit masking) )2) unsigned int mode선속일정 사용 유무 (ON / OFF)▶

호 출 DD1) void Write_Byte_Register_MCX312(unsigned int motor_num, unsigned chardata, unsigned int reg)

(9) void Int_Move_Conti_Mode_Flag(unsigned int group_num, unsigned int mode)

기 능 연속 보간 운전모드 사용 여부 설정

return value void

argument

1) unsigned int group_num구성2 byte .▶

부터 는 부터 는 그룹의 주축 모터 번호 나머지 는 할당msb 4bits 0, Isb 4bits , 8bits된 주소 비트 마스킹 해서 사용( (bit masking) )2) unsigned int mode연속 보간 운전모드 사용 여부 저장 (ON / OFF)▶

호 출 DD1) void Write_Command_MCX312(unsigned int motor_num, unsigned intcommand)

(10) void Int_Move_Conti_Mode(unsigned int group_num, unsigned int mode)

기 능 연속 보간 운전모드 사용모드 설정(AUTO / MANUAL)

return value void

argument

1) unsigned int group_num구성2 byte .▶

부터 는 부터 는 그룹의 주축 모터 번호msb 4bits 0,lsb 4bits ,나머지 는 할당된 주소 비트 마스킹 해서 사용8bits ( (bit masking) )2) unsigned int mode연속 보간 운전 모드 사용 모드(AUTO / MANUAL)▶

호 출 DD

(11) void Last_Move_Indicate(unsigned int group_num)

기 능 연속 보간 운전 모드 사용시 마지막 운전임을 알림

return value void

argument

1) unsigned int group_num구성2 byte .▶

부터 는 부터 는 그룹의 주축 모터 번호msb 4bits 0, Isb 4bits ,나머지 는 할당된 주소 비트 마스킹 해서 사용8bits ( (bit masking) )

호 출 DD1) void Write_Command_MCX312(unsigned int motor_num, unsigned intcommand)

Page 42: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 42 -

라 이동관련 함수.

(1) void Stop_Slow(unsigned int motor_num)

기 능 해당 모터를 감속 정지 시킴

return value void

argument

1) unsigned int motor_num구성2 byte .▶

부터 는 각 보드에서의 축번호 부터 는 전체에서의 모터 번호msb 4bits , Isb 4bits (1 ~16)나머지 는 할당된 주소 비트 마스킹 해서 사용8bits ( (bit masking) )

호 출 DD1) void Write_Command_MCX312(unsigned int motor_num, unsigned intcommand)

(2) void Stop_Emg(unsigned int motor_num)

기 능 해당 모터를 즉시 정지 시킴

return value void

argument

1) unsigned int motor_num구성2 byte .▶

부터 는 각 보드에서의 축번호 부터 는 전체에서의 모터 번호msb 4bits , Isb 4bits (1 ~16)나머지 는 할당된 주소 비트 마스킹 해서 사용Sbits ( (bit masking) )

호 출 DD1) void Write_Command_MCX312(unsigned int motor_num, unsigned intcommand)

(3) void Stop_Slow_All(void)

기 능 모든 모터를 감속 정지 시킴

return value void

argument void

호 출 DD1) void Write_Command_MCX312(unsigned int motor_num, unsigned intcommand)

(4) void Stop_Emg_All(void)

기 능 모든 모터를 즉시 정지 시킴

return value void

argument void

호 출 DD1) void Write_Command_MCX312(unsigned int motor_num, unsigned intcommand)

Page 43: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 43 -

(5) char Move_CW _Conti(unsigned int motor_num)

기 능 해당 모터를 방향으로 연속 운전 시킴CW(Clockwise)

return valuechar

해당 모터가 운전 중일 경우ERROR :ㆍ정상 처리NO ERROR :ㆍ

argument

1) unsigned int motor_num구성2 byte .▶

부터 는 각 보드에서의 축번호 부터 는 전체에서의 모터 번호msb 4bits , Isb 4bits (1 ~16)나머지 는 할당된 주소 비트 마스킹 해서 사용8bits ( (bit masking) )

호 출 DD1) void Write_Command_MCX312(unsigned int motor_num, unsigned intcommand)2) char Check_Busy(unsigned int motor_num)

(6) char Move_CCW_Conti(unsigned int motor_num)

기 능 해당 모터를 방향으로 연속 운전 시킴CCW(Counter Clockwise)

return valuechar

해당 모터가 운전 중일 경우ERROR :ㆍ정상 처리NO ERROR :ㆍ

argument

1) unsigned int motor_num구성2 byte .▶

부터 는 각 보드에서의 축번호 부터 는 전체에서의 모터 번호msb 4bits , Isb 4bits (1 ~16)나머지 는 할당된 주소 비트 마스킹 해서 사용8bits ( (bit masking) )

호 출 DD1) void Write_Command_MCX312(unsigned int motor_num, unsigned intcommand)2) char Check_Busy(unsigned int motor_num)

(7) char Move_Absolute(unsigned int motor_num, long position_value)

기 능 해당 모터를 절대위치 위치로 이동 시킴position_value( )

return valuechar

해당 모터가 운전 중일 경우ERROR :ㆍ정상 처리NO_ERROR :ㆍ

return value

1) unsigned int motor_num구성2 byte .▶

부터 는 각 보드에서의 축번호 부터 는 전체에서의 모터 번호msb 4bits , Isb 4bits (1 ~나머지 는 할당된 주소 비트 마스킹 해서 사용16) 8bits ( (bit masking) )

2) long position_value절대 위치 값▶

호 출 DD

1) void Write_Command_MCX312(unsigned int motor_num, unsigned intcommand)2) char Check_Busy(unsigned int motor_num)3) void Write_Long_Command_MCX312(unsigned int motor_num, unsigned longdata, unsigned int command)4) long Read_CPOS(unsigned int motor_num)

Page 44: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 44 -

(8) char Move_CW_Relative(unsigned int motor_num, long position_value)

기 능해당 모터를 상대위치 만큼 이동 시킴position_value( )

가 양수이면 방향으로 음수이면position_value CW(Clockwise) CCW(Counter방향으로 운전Clockwise)

return valuechar

해당 모터가 운전 중일 경우ERROR :ㆍ정상 처리NO_ERROR :ㆍ

argument

1) unsigned int motor_num구성2 byte .▶

부터 는 각 보드에서의 축번호 부터 는 전체에서의 모터 변호msb 4bits , lsb 4bits (1 ~나머지 는 할당된 주소 비트 마스킹 해서 사용16) 8bits ( (bit masking)

2) long position_value상대 위치 position▶

호 출 DD

1) void Write_Command_MCX312(unsigned int motor_num, unsigned intcommand)2) char Check_Busy(unsigned int motor_num)3) void Write_Long_Command_MCX312(unsigned int motor_num, unsigned longdata, unsigned int command)

(9) char Move_CCW_Relative(unsigned int motor_num, long position_value)

기 능해당 모터를 상대위치 만큼 이동 시킴position_value( )

가 양수이면 방향으로 음수이면position_value CCW(Counter Clockwise)방향으로 운전CW(Clockwise)

return valuechar

해당 모터가 운전 중일 경우ERROR:ㆍ정상 처리NO_ERROR:ㆍ

argument

1) unsigned int motor_num구성2 byte▶

부터 는 각 보드에서의 축번호 부터 는 전체에서의 모터 번호msb 4bits , lsb 4bits (1 ~나머지 는 할당된 주소 비트 마스킹 해서 사용16) 8bits ( (bit masking) )

2) long position_value상대 위 치 position▶

호 출 DD

1) void Write_Command_MCX312(unsigned int motor_num, unsigned intcommand)2) char Check_Busy(unsigned int motor_num)3) void Write_Long_Command_MCX312(unsigned int motor_num, unsigned longdata, unsigned int command)

Page 45: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 45 -

(10) char Search_CW_Limit_Sensor(unsigned int motor_num)

기 능 해당 모터 리미트 센서 찾기CW(Clockwise) (limit sensor)

return valuechar

리미트센서 찾기 실패한 경우ERROR : (limit sensor)ㆍ리미트 센서 찾기 성공NO_ERROR : (limit sensor)ㆍ

argument

1) unsigned int motor_num구성2 byte▶

부터 는 각 보드에서의 축번호 부 는 전체에서의 모터 번호msb 4bits , Isb El 4bits (1 ~나머지 는 할당된 주소 비트 마스킹 해서 사용16) 8bits ( (bit masking) )

호 출 DD

1) char Check_Busy(unsigned int motor_num)2) void Write_Speed(unsigned char * command)3) char Move_CW_Conti(unsigned int motor_num)4) char Check_Error(unsigned int motor_num)5) unsigned char Read_Byte_Register_MCX312(unsigned int motor_num,unsigned int reg)6) long Read_CPOS(unsigned int motor_num)

(11) char Search_CCW_Limit_Sensor(unsigned int motor_num)

기 능 해당 모터 리미트 센서 찾기CCW(Counter Clockwise) (limit sensor)

return valuechar

리미트 센서 찾기 실패한 경우ERROR : (limit sensor)ㆍ리미트 센서 찾기 성공NO_ERROR : (limit sensor)ㆍ

argument

1) unsigned int motor_num구성2 byte .▶구성2 byte .▶

부터 는 각 보드에서의 축번호 부터 는 전체에서의 모터 번호msb 4bits . Isb 4bits (1 ~나머지 는 할당된 주소 비트 마스킹 해서 사용16) 8bits ( (bit masking) )

호 출 DD

1) char Check_Busy(unsigned int motor_num)2) void Write_Speed(unsigned char * command)3) char Move_CCW_Conti(unsigned int motor_num)4) char Check_Error<unsigned int motor_num)5) unsigned char Read_Byte_Register_MCX312(unsigned int motor_num,unsigned int reg)6) long Read_CPOS(unsigned int motor_num)

Page 46: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 46 -

(12) char Search_Home(unsigned int motor_num)

기 능 해당 모터 원점 찾기

return valuechar

원점 찾기 실패했을 경우ERROR:ㆍ원점 찾기 성공NO ERROR:ㆍ

argument

1) unsigned int motor_num구성2 byte .▶구성2 byte .▶

부터 는 각 보드에서의 축번호 부터 는 전체에서의 모터 번호msb 4bits . Isb 4bits나머지 는 할당된 주소 비트 마스킹 해서 사용(1~16) 8bits ( (bit masking) )

호 출 DD

1) char Check_Busy(unsigned int motor_num)2) void Setup_Home_Sensor(unsigned int motor_num, unsigned inthome_type)3) void Write_Speed(unsigned char * command)4) char Check_Error(unsigned int motor_num)5) unsigned char Read_Byte_Register_MCX312(unsigned int motor_num,unsigned int reg)6) void Setup_Home_Sensor(unsigned int motor_num, unsigned inthome_type)7) char Move_CW_Relative(unsigned int motor_num, long position_value)8) char Move_CCW_Relative(unsigned int motor_num, long position_value)9) void Write_Long_Command_MCX312(unsigned int motor_num, unsignedlong data, unsigned int command)10) void Delay_Time(unsigned int delay-time)11) void Setup_Encoder_Z(unsigned int motor_num, unsigned int z_type)12) char Move_CW_Conti(unsigned jnt motor_num)13) char Move_CCW_Conti(unsigned int motor_num)

(13) void Write_Move_Position_2X(unsigned int group_num, long pos1, long

pos2)

기 능 직선 보간 운전 저장position

return value void

argument

1) unsigned int group_num구성2 byte .▶

부터 는 부터 는 그룹의 주축 모터 번호msb 4bits 0,Isb 4bits ,나머지 는 할당된 주소 비트 마스킹 해서 사용8bits ( (bit masking) )2) long posl주축 position▶

3) long pos2두 번째 축 position▶

호 출 DD

Page 47: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 47 -

(14) char Int_Move_CW_Relative_2X(unsigned int group_num)

기 능 직선 보간 운전

return valuechar

모터가 운전 중 일 경우ERROR :ㆍ정상 처리NO_ERROR :ㆍ

argument

1) unsigned int group_num구성2 byte▶

부터 는 부터 는 그룹의 주축 모터 번호MSB 4bits 0,LSB 4bits ,나머지 는 할당된 주소 비트 마스킹 해서 사용8bits ( (bit masking) )

호 출 DD

1) char Check_Busy(unsigned int motor_num)2) void Write_Long_Command_MCX312(unsigned int motor_num, unsigned longdata, unsigned int command)3) void Write_Command_MCX312(unsigned int motor_num, unsigned intcommand)

(15) char Arc_Move_CW_End_Position(unsigned int group_num)

기 능 원호 보간 방향으로 운전CW(Clockwise)

return valuechar

모터가 운전 중 일 경우ERROR :ㆍ정상 처리NO_ERROR :ㆍ

argument1) unsigned int group_num

구성 부터 는 부터 는 그룹의 주축 모터 번호2 byte . MSB 4bits 0,LSB 4bits ,▶나머지 는 할당된 주소 비트 마스킹 해서 사용8bits ( (bit masking) )

호 출 DD1) char Check_Busy(unsigned int motor_num)2) void Write_Command_MCX312(unsigned int motor_num, unsigned intcommand)

(16) char Write_Arc_Move_End_Position(UI group_num, UC *command)

기 능 원호 보간 운전의 중심점과 끝 위치저장

return valuechar

모터가 운전 중 일 경우ERROR :ㆍ정상 처리NO_ERROR :ㆍ

argument

1) unsigned int group_num구성2 byte .▶

부터 는 부터 는 그룹의 주축 모터 번호MSB 4bits 0,LSB 4bits ,나머지 는 할당된 주소 비트 마스킹 해서 사용8bjts ( (bit masking) )2) unsigned char * command

는 주축 중심점 위치 상대위치*command(4byte) ( )▶는 두 번째 축 중심점 위치 상대위치*(command + 4)(4byte) ( )는 주축 끝 위치 상대위치*(command + 8)(4byte) ( )는 두 번째 축 끝 위치 상대위치*(command+ 12)(4byte) ( )

호 출 DD1) char Check_Busy(unsigned int motor_num)2) void Write_Long_Command_MCX312(unsigned jnt motor_num, unsignedlong data, unsigned int command)

Page 48: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 48 -

(17) char Arc_Move_CCW_End_Position(unsigned int group_num)

기 능 원호 보간 방향으로 운전CCW(Counter Clockwise)

return valuechar

모터가 운전 중 일 경우ERROR :ㆍ정상 처리NO_ERROR :ㆍ

argument1) unsigned jnt group_num

구성 부터 는 부터 는 그룹의 주축 모터 번호2 byte . MSB 4bits 0, LSB 4bits ,▶나머지 는 할당된 주소 비트 마스킹 해서 사용8bits ( (bit masking) )

호 출 DD1) char Check_Busy(unsigned int motor_num)2) void Write_Command_MCX312(unsigned int motor_num, unsigned intcommand)

마 체크 관련 함수. (Check)

(1) long Read_CPOS(unsigned int motor_num)

기 능 해당 모터의 현재 위치 논리 절대 위치 를 읽어( ) return.

return valuelong논리 위치 현재 위치 절대 위치. ( )▶

argument

1) unsigned jnt motor_num구성2 byte .▶

부터 는 각 보드에서의 축번호 부터 는 전체에서의 모터 번호msb 4bits , Isb 4bits (1나머지 는 할당된 주소 비트 마스킹 해서 사용~ 16) 8bits ( (bit masking) )

호 출 DD1) unsigned long Read_Long_Command_MCX312(unsigned jnt motor_num,unsigned int command)

(2) long Read_ENCODER(unsigned int motor_num)

기 능 해당 모터의 현재 위치 실제 절대 위치 를 읽어( ) return.

return valuelong실제 위치 현재 위치 절대 위치. ( )▶

argument

1) unsigned int motor_num구성2 byte .▶

부터 는 각 보드에서의 축번호 부터 는 전체에서의 모터 번호msb 4bits , Isb 4bits (1 ~나머지 는 할당된 주소 비트 마스킹 해서 사용16) 8bits ( (bit masking) )

호 출 DD1) unsigned long Read_Long_Command_MCX312(unsigned int motor_num,unsigned int command)

Page 49: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 49 -

(3) char Check_Busy(unsigned int motor_num)

기 능 해당 모터의 운전중인 상태를 return(BUSY / READY)

return valuechar해당 모터의 운전 상태. (BUSY / READY)▶

argument

1) unsigned int motor_num구성2 byte .▶

부터 는 각 보드에서의 축번호 부터 는 전체에서의 모터 번호msb 4bits , Isb 4bits (1나머지 는 할당된 주소 비트 마스킹 해서 사용~ 16) 8bits ( (bit masking) )

호 출 DD1) unsigned int Read_Word_Register_MCX312(unsigned int motor_num,unsigned int reg)

(4) char Check_Error(unsigned int motor_num)

기 능 해당 모터의 에러 상태를(error) return (ERROR / NO_ERROR)

return valuechar해당 모터의 에러 상태. (ERROR / NO_ERROR)▶

argument

1) unsigned int motor_num구성2 byte .▶

부터 는 각 보드에서의 축번호 부터 는 전체에서의 모터 번호msb 4bits , 1sb 4bits (1나머지 는 할당된 주소 비트 마스킹 해서 사용~ 16) 8bits ( (bit masking) )

호 출 DD1) unsigned int Read_Word_Register_MCX312(unsigned int motor_num,unsigned int reg)

(5) char Check_Homing_Status(unsigned int motor_num)

기 능 해당 모터의 원점 찾기 상태를 return (YES / NO)

return valuechar해당 모터의 원점 찾기 상태. (YES / NO)▶

argument

1) unsigned int motor_num구성2 byte .▶

부터 는 각 보드에서의 축번호 부터 는 전체에서의 모터 번호msb 4bits , Isb 4bits (1나머지 는 할당된 주소 비트 마스킹 해서 사용~16) 8bits ( (bit masking) )

호 출 DD

(6) unsigned char Check_Next_lnt_Move_Enable(unsigned int group_num)

기 능 연속 보간 모드에서 다음 운전 명령의 기입 가능 여부를 return.

return value

unsigned char운전 명령 기입 불가능DISABLE :ㆍ운전 명령 기입 가능ENABLE :ㆍ

그외 나머지 값 에러:ㆍ

argument1) unsigned int group_num

구성 부터 는 부터 는 그룹의 주축 모터 번호2 byte . MSB 4bits 0,LSB 4bits ,▶나머지 는 할당된 주소 비트 마스킹 해서 사용8bits ( (bit masking) )

호 출 DD1) unsigned char Read_Byte_Register_MCX312(unsigned int motor_num,unsigned int reg)

Page 50: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 50 -

함수3. Device Drive

가 의 와 관련된 함수들. Am188 Peripheral Register

(1) unsigned int Read_Data(unsigned int port)

기 능인수 인 에 해당하는 포트에서 데이터 를(argument) unsigned int port (data)읽어 return.특정 입출력 포트에서 한 바이트 의 값을 읽음(Byte)

return valueunsigned int원하는 포트에서 읽은 데이터▶

(2) void Write_Data(unsigned int port, unsigned int write_data)

기 능인수 인 에 해당하는 포트에 데이터(argument) unsigned int port

를 씀(write_data) .특정 입출력 포트에 한 바이 를 씀s(Byte)

return value void

(3) unsigned int Read_PCB_Register(unsigned int port_num)

기 능인수 인 에 해당하는 포트의 데이터(argument) unsigned int port_num

를 읽어(data) return.특정 입출력포트에서 워드 단위 데이터를 읽음(Word)

return valueunsigned int원하는 포트에서 읽은 data▶

(4) void Write_PCB_Register(unsigned int port_num, unsigned int write_data)

기 능인수 인 에 해당하는 포트에 데이터(argument) unsigned int port

를 씀(write_data) .특정 입출력포트에 워드 단위 데이터를 씀(Word)

return value void

Page 51: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 51 -

나 모터보드 관련 함수. (MBD) Register

(1) void Write_Command_MCX312(unsigned int motor_num, unsigned int

command)

기 능 에mcx312 command write

return value void

(2) void Write_Byte_Register_MCX312(UI motor_num, UC data, UI reg)

기 능 의 에 기입mcx312 write register (1 byte data)

return value void

(3) void Write_Word_Register_MCX312(UI motor_num, UI data, UI reg)

기 능 의 에 기입mcx312 write register (2 byte data)

return value void

(4) void Write_Word_Command_MCX312(UI motor_num, UI data, UI command)

기 능 에 를 가진 기입mcx312 word data command (2 byte data)

return value void

(5) void Write_Long_Command_MCX312(UI motor_num, UL data, UI command)

기 능 에 를 가진 기입mcx312 long data command (4 byte data)

return value void

(6) unsigned char Read_Byte_Register_MCX312(UI motor_num, UI reg)

기 능 의 에서mcx312 read register byte data read(1 byte data)

return valueunsigned char해당 에서 읽은register byte data▶

(7) unsigned int Read_Word_Register_MCX312(UI motor_num, UI reg)

기 능 의 에서mcx312 read register word data read(2 byte data)

return valueunsigned int해당 에서 읽은register word data▶

Page 52: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 52 -

(8) unsigned int Read_Word_Command_MCX312(UI motor_num, UI command)

기 능 의 읽기mcx312 word data command (2 byte data)

return valueunsigned int

에 해당하는command word data▶

(9) unsigned long Read_Long_Command_MCX312(UI motor_num, UI command)

기 능 의 읽기mcx312 long data command (4 byte data)

return valueunsigned long

에 해당하는command long data

Page 53: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 53 -

제 절 티칭팬던트 운영프로그램2 .

티칭펜던트의 운영 프로그램의 계층 구조1.

개발된 티칭팬던트의 운영프로그램은 언어로 작성되어 있으며 응용계층과 응용인C

터페이스 계층 그리고 디바이스 드라이버 인터페이스 계층으로 구분한다(API) (DDI) .

이중 가장 상위의 응용 계층은 다음과 같은 개의 핸들러로 구성되며 이들(APP) 5

핸들러간의 상태천이도는 다음 그림과 같다.

가 응용 계층의 핸들러. (APP)

(1) Com_Handler

(2) Event_Handler

(3) Graphic_Handler

(4) Exception_Handler

상태도2. (Status Transition Flow Diagram)

가 의 기능. Com_Handler

모터 구동 및 모니터링 명령 송신(1) (motor) (monitoring) .

각 명령에 대한 응답 수신(2) .

통신불량일 경우 재 시도 및 통신불량 오류체크(3) .

Page 54: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 54 -

나 의 기능. Event_Handler

접촉된 영역의 유효성 판단(1) .

외부 동작 키 및 긴급정지 스위치의 눌림 및 중복 눌림 판단(2) (key) .

유효한 아이템 에 대해 해당 동작 수행(3) (item) .

다 의 기능. Graphic_Handler

페이지 의 전환 처리(1) (page) .

팝업 화면의 처리(2) (pop up) Load/Unload .

아이콘 의 상태 갱신(3) (icon) Press/Release .

문자열 내용 갱신(4) .

라 의 기능. Exception_Handler

예외 상태 발생시 대처 메시지 표시(1) .

비상상태일 경우에의 시스템 안전을 위한 비상 처리(2)

시스템 파일 의 구조3. (System File)

시스템 파일은 개발된 티칭펜던트 시스템의 운영을 위하여 내부적으로 관리되는 파

일을 말하는 것으로 시스템의 확장성과 이식성을 염두하여 설계하였다.

가 시스템 아이콘 파일. (System Icon)

Page 55: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 55 -

정의 사용된 아이콘들의 크기정보와 그림정보를 포함(1) : .

영역의 구성(2) Icon Description

요 소 크 기 설 명 비 고

Offset 4B 시작주소부터 해당 아이콘이 있는 곳의 값Icon Bitmap offset

Enable_Release 3b 아이콘의 위치 해당 아이콘 없음Enable Release (0: )

Enable_Press 3b 아이콘의 위치 해당 아이콘 없음Enable Press (0: )

X_WIDTH 2B 아이콘 파일의 가로크기

Disable_Release 3b 아이콘의 위치 해당 아이콘 없음Disable Release (0: )

Disable_Press 3b 아이콘의 위치 해당 아이콘 없음Disable Press (0: )

Y_WIDTH 2B 아이콘 파일의 세로크기

영역의 구성(3) Icon Bitmap

가 해당 아이콘의 데이터( ) Bitmap

메모리의 크기와 아이콘 수(4)

데이터 저장 장소(5)

가 비휘발성 메모리에 다운로드( ) (Nandflash)

나 동작시 영역에 되어 운영됨( ) SRAM Copy

Page 56: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 56 -

나 화면 배경그림 파일.

정의 사용된 배경의 그림 또는 바탕색 정보를 포함(1) : .

영역의 구성(2) Background Description

요소 크기 설 명 비고

Offset 4B시작 주소부터 배경그림이 있는 곳의Background Bitmp

값offset

Color 1B 로 사용될 색Background

Mode 1B 의 모드를 설정Background 아래표 참고

Reserved 2B 가 단색 배경일 경우 배경그림의 크기를 나타냄Mode +의 최대크기는(X, Y픽셀255 )

모 드 비 고

단색0 : 의 을 참고하여 배경색 채운다Description Color .

단색 배경그림1 : +를 참고하여 를 채우고 의 크기와 영역Color Background Description Bitmap

의 위치와 을 참고하여 를 그린다Bitmap Background .

배경그림2 : 을 참고하여 부터 데이터를 그린다Offset 0,0 Bitmap .

영역의 구성(3) Background Bitmap

가 가 단색 또는 배경그림 로 사용될 그림의 데이터( ) Mode : Background Bitmap .

나 가 단색 배경 그림이 그려질 위치 위치 로 사( ) Mode + : X (2B),Y (2B) + Background

용될 그림의 데이터Bitmap .

Page 57: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 57 -

메모리의 크기(4)

가 개( ) 320*240B*4 = 307.2K

나 개( ) 307.2K + (4B*4 )(Description Size) 307KB(307,216B)≒

데이터 저장 장소(5)

가 비휘발성 메모리에 다운로드( ) (Nandflash)

다. Page Event Map File / Pop up Event Map File

정의 터치된 아이콘을 찾아내기 위해 아이템 변호를 포함(1) : .(320*240 Pixel Max)

영역의 구성(2) Page Event Map / Pop up Event Map

가 현재 페이지 페이지 를 픽셀의 격자로 나누어 격자 안에 포함된 터치( ) (Pop up ) 4

가능한 아이템의 번호를 저장

나 터치가능한 아이템이 없는 영역은 으로 채워져 있음( ) 0 .

메모리의 크기(3)

가 한 페이지의( ) Event Map Size : (320/4)*(240/4) = 4.8KB

나 한 페이지의( ) Pop up Pop up Event Map Size : (320/4)*(240/4) = 4.8KB

다 총 페이지( ) Page Event Map Size : 4.8KB * 127 = 609.6KB

라 총 페이지( ) Popup Event Map Size : 4.8KB * 32 = 153.6KB

데이터 저장 장소(4)

가 비휘발성 메모리에 다운로드( ) (Nandflash)

나 동작시 영역에 되어 운영됨( ) SRAM Copy

Page 58: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 58 -

라 초기 그래픽 상태 파일.

정의 페이지가 로드될 때 아이템의 상태표시를 위한(1) : List.

영역의 구성(2) Item Status

요 소 크기 설 명 비 고

Item_Enable_List 4B 된 아이템 터치가능Enable List( )

Item_Disable_List 4B 된 아이템 터치불가Disable List( )

Item_Visible_List 4B 보이는 아이템 터치가능List( )

Item_Invisible-List 4B 보이지 않는 아이템 리스트 터치불가( )

Item_Press_List 4B 상태의 아이템 표시Press

Item_Release_List 4B 상태의 아이템 표시Release

Grp_On_Display_List 4B 사용자가 추가한 그래픽 중 인 그래픽ON List

Grp_Off_Displau_List 4B 사용자가 추가한 그래픽 중 일 그래픽OFF List

Instant_MSG_Num 2B 초기에 표시될 메시지 변호 표시

Reserved 2B 예비

메모리의 크기(3)

가 페이지( ) 36B * 127 4.5KB (4,572B)≒

데이터 저장 장소(4)

가 비휘발성 메모리에 다운로드( ) (Nandflash)

나 동작시 영역에 되어 운영됨( ) SRAM Copy

Page 59: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 59 -

마 . Page Description File

정의 현재 페이지의 로드된 아이콘의 개수와 크기 아이콘 특성이 포함(1) : .

영역(2) Page Offset

가 현주소부터 페이지의 이 있는 주소의( ) Description Offset

영역(3) Page Description

요소 크기 설명 비고

갯수Item 14b 해당 페이지의 아이템 갯수한 에 한번Description

Background Num 2b 해당 페이지의 번호Background

번호Item 10b 아이템의 번호

한 에 수만큼Description Item존재(Max 64)

Attribute 13b 아이템의 표 참조Attribute(Attribute )

X_Position 9b 아이템의 좌측 상단의 위치X

Y_Position 1B 아이템의 좌측 상단의 위치Y

메모리의 크기(4)

가 페이지 크기 페이지( ) Offset : 4B *127 = 508B

나 한 페이지 크기( ) : 2B + (8B * Max 64 Item) = 514B

다 총 메모리 크기 페이지( ) : 514B * 127 65KB(65,278B)≒

데이터 저장 장소(5)

가 비휘발성 메모리에 다운로드( ) (Nandflash)

Page 60: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 60 -

바. Pop up Description File

정의 현재 에 로드된 아이콘의 개수와 크기 아이콘 특성이 포함(1) : Pop up .

영역(2) Pop up Offset

가 현주소부터 팝업의 이 있는 주소의( ) Description Offset.

영역(3) Popup Description

요소 크기 설명 비고

수Item 1B 해당 의 아이템 갯수POP UP

한 에Description한번 나타나는데이터 (42B)

color 1B 해당 의 배경 색POP UP

Popup_X_Position 4B 이 나타날 좌측상단의 위치Pop UP X

Popup_Y_Position 4B 이 나타날 좌측상단의 위치Pop UP Y

Popup_X_Width 2B 의 크기Pop UP X

Popup_Y_Height 1B 의 크기Pop up Y

Instant_MSG_Num 1B 표시될 메시지 번호

Item_Enable_List 4B 된 아이템 터치가능Enable List( )

Item_Disable_List 4B 된 아이템 터치불가Disable List( )

Item_Visiblen_List 4B 보이는 아이템 터치가능List( )

Item_Invisible_List 4B 보이지 않는 아이템 리스트 터치불가( )

Item_Press_List 4B 상태의 아이템 표시Press

Item_Release_List 4B 상태의 아이템 표시Release

Grp_On_Display_List 4B 사용자가 추가한 그래픽 중 그래픽On List

Grp_Off_Display _List 4B 사용자가 추가한 그래픽 중 그래픽Off List

아이템 수만큼 존재

번호Item 10b 아이템의 번호

Attribute 13b 아이템의 Atribute

Item_X_Position 9b 아이템이 될 좌측상단의 위치Load X

Item_Y_Position 1B 아이템이 될 좌측상단의 위치Load Y

Page 61: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 61 -

메모리의 크기(4)

가 의 크기( ) Popup Offset : 4B * 32 Popup = 128B

나 한 의 크기( ) Popup : 46B + (8B * Max 64 Item) = 558B

다 총 메모리 크기( ) : 558B * 32 Popup 17KB(17,856B)≒

데이터 저장 장소 비휘발성 메모리에 내장(5) : (Nandflash)

완성된 기반의 사용자 프로그램 화면4. GUI

다음 그림은 티칭팬던트의 에 표시되는 화면의 일부 예를 보인다 앞의 그림은LCD .

입출력 시험 및 각종 기계장치의 수동제어를 위한 화면을 보이고 뒤의 그림은 티칭

팬던트를 이용하여 개의 파일을 관리할수 있는데 이의 관리 화면을 보이고 있다99 .

본 과제로 개발한 티칭팬던트는 이와 같이 사용자가 자신의 기계에 맞는 사양의 화

면 구성과 아이콘 구성을 원하는 경우에 주문형으로 개발이 가능하다.

Page 62: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 62 -

계층의 함수 정의5. APP

가. char Event_Handler(void)

기 능

각 의 유효성 적합성1) Event , Check(Key, Touch, EMG S/W, Touch Enable)통신 가부 갱신2) List, Flag그래픽 변경 갱신3) List

운전4) Setp Control금형5) File Manage

호출 API

1) void Key_Duplicate_Check(void)2) char EMG_Op(void)3) void Key_Press_Op(void)4) void Key_Releas_Op(void)5) void Item_Op(void)6) void Get_tem_Num(void)7) void Exe_Command(unsigned char)8) char Product_Count_Update(void)

값return 정상char( : 0 Error : Error_Code)

입력 파라미터 void

나. char Graphic_Handler(void)

기 능

그래픽 변경 에 따른 그래픽 변경1) List텍스트 변경 에 따른 텍스트 변경2) List패이지 및 팝업에 의한 화면 변경3)스텝운전에 따른 그래픽 및 텍스트 변경4)

호출 API

를 참조하여 페이지1) void Draw_Page(void) Cur_Mode_Stack[CurPage_Pointer]를 로드

현재 팝업윈도우를 닫음2) void Draw_Popup_Close(void):를 참조하여 표시3) void Key_Display_Op(void) : Key_Available_List Key LED

현재 페이지의 아이템의 상태를 갱신4) void Draw_Change_ltem(void) :현재페이지에 를 표시5) void Draw_Inst_MSG(void) Instant MSG현재 페이지의 를 참조하여 그래픽6) void Draw_Grp_Display(void) grp_display_list

표시현재페이지 특수동작 처리7) void User_page_Op(void)

팝업의 아이템 상태 갱신8) void Draw_Change_Popup_Item(void) :팝업 창을 그림9) void Draw_Popup(void) : .

팝업 창 특수 그래픽 처리10) void Popup_Page_Op(void) :

값return 정상char( 0, Error: Error_Code )

입력 파라미터 void

Page 63: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 63 -

다. char Com_Handler(void)

기 능 명령어 송신기능1)

호출 API

1) void I_Mode_Op(void)2) void Step_Op(void)3) char Check_POS(void)4) void Check_IO(void)5) char Command_From_Key(void)6) void Speed_Set(void)

값return 정상char( : 0, Error: Error_Code )

입력 파라미터 void

계층 함수 정의6. API

가 관련. Event_HandIer

(1) void Key_Duplicate_Check (void)

기 능

동시에 두 개의 가 눌리면 입력 무시1) Key두 개 이상의 가 눌려도 는 동작2) Key EMG(Emergency Stop)

를 참조하여 유효성 판단3) Key_Available_List터치 가능키 감시5) (Panel Enable Key)

만 동작 나 터치 상태로 변환- Release : EMG Key , Key Release정상동작- Press :

하나의 가 눌려 동작수행 중 다른 를 누르면 새로운 입력 무시하고 그중6) Key Key의 한 를 떼면 눌린 의 동작 수행Key Key

값return void

입력 파라미터 void

호출 DDI 의 를 읽어온다void Read_Key(void) : Key Status .

(2) char EMG_Op(void)

기 능각 초기화1) List이전상태가 였으면 아닌상태로 만듬2) EMG EMG이전상태가 상태가 아니었으면 상태로 만듬3) EMG EMG

값return 정상( : 0, Error : EMG_STOP_ERROR)

입력 파라미터 void

호출 DDI

Page 64: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 64 -

(3) void Popup_Item_Op(void)

기 능 함수의 포인터를 사용하여 현재 해당하는 함수를 호출1) Popup Popup_op

값return void

입력 파라미터 void

호출 API 각 팝업 동작 함수

(4) void Key_Press_Op(void)

기 능방향 체크1) Key

해당 키에 해당하는 명령 생성2)

값return void

입력 파라미터 void

호출 DDI

unsigned char Check_Key_Direction(void)unsigned char Make_Move_Motor(void)void Exe_Command(unsigned char command)void Speed_Set(void)

(5) void Key-Releas_Op(void)

기 능 에 따른 정지명령 생성1) Stop_Mode

값return 정상( : 0, E or : Error_Code)π

입력 파라미터 void

호출 DDI

(6) void Item_Op(void)

기 능관련 갱신1) Item Status List

아이템에 해당하는 통신코드 갱신2)

값return void

입력 파라미터 void

호출 API1) void Page_Item_Op(void)2) void Popup_Item_Op(void)

호출 DDI

(7) void Page_Item_Op(void)

기 능함수의 포인터를 사용하여 현재 페이지에 해당하는 함수를 호출1) Page_Op사용자는 해당 페이지함수의 해당 아이콘 해당 에 각 아이템의 상태와 명2) , Event

령을 추가 삭제 가능.

값return void

입력 파라미터 void

호출 API 각 페이지동작 함수

Page 65: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 65 -

(8) void Get_Item_Num(void)

기 능터치패널 좌표값 연산 유효한1) (Touch panel) , Key Check눌린 아이템의 유효성 판단2)눌린 아이템의 속성 생성3)

값return 없음 된 의(0 : Item , !0 : Press Item ID)

입력 파라미터 void

호출 API1) char Check_Available_Coord(void)2) unsigned char Find_Item_Num_From_Map(void)

호출 DDI

1) char Check_Visible_Item(void)2) char Check_Available_Item (void)3) unsigned long Read_Icon_Data(unsigned char, unsigned char, unsignedchar)4) unsigned long Read_Pop_Icon_Data(unsigned char, unsigned char, unsignedchar)

(9) void Exe_Command(unsigend char command)

기 능통신 명령의 경우 통신 코드 생성1)그래픽관련 명령 의 경우 각 플래그 갱신2) (Flag)

값return void

입력 파라미터 unsigned char command

호출 API 1) void I_Mode_Op(void)

호출DDI

1) void Ini_Page_Info(unsigned char page_num)2) unsigned long Read_File_Data(unsigned char file_num, unsigned char type)3) void Write_File_Data(unsigned char file_num, char type, unsigned long value)4) void Delete_File(void)5) unsigned char Find_File(unsigned char file_num)6) unsigned char Set_Top_File(char dir)7) void File_List_Update(void)8) void Open_File(void)9) void Write_Step_Data(unsigned char step, char type, unsigned long value);10) void Change_Step_Focus(char Focus)

호출 DD 1) unsigned char Read_Bvte_Memory(unsigned long address)

(10) void Del_Msg(void)

기 능 에의해 표시된 메시지를 지운다1) View_Msg .

값return void

입력 파라미터 void

Page 66: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 66 -

나 관련. Graphic_Handler

(1) void Key_Display_Op(void)

기 능 현재 유효한 의 를 표시한다1) Key LED .

값return void

입력 파라미터 void

호출 DDI void Display_Led(Key_Available_List);

(2) void Draw_Change_Item(void)

기 능 현재 페이지의 아이템중 바뀐 아이템을 표시1) .

값return void

입력 파라미터 void

호출 API

호출 DDI1) unsigned long Read_Grp_Status_Data(unsigned char page_num, unsignedchar data_type)2) void Draw_lcon(unsigned long icon_num, char status);

(3) void Draw_Popup_Close(void)

기 능 현재열려있는 팝업창을 닫는다1)

값return void

입력 파라미터

호출 DDI 1) void Replace_Screen(jnt x, int y, int w, int h)

(4) void Draw_Page(void)

기 능해당 페이지의 상태 테이블을 참조하여 아이템을 그린다1) .해당페이지 함수를 호출한다2) Draw .

값return void

입력 파라미터 void

호출 API 1) void Draw_Change_Item(void)

호출 DDI

1) void Fill_Color(jnt x, int y, int w, int h, char color)2) void Draw_Bitmap(unsinged long bit_addr, int x, int y, int w, int h)3) void Draw_lcon(char icon_num, char status)4) void Ini_Page_Info(Char page_num)5) void Titel_Name_Update(Char name_num)6) char Set_Empty_Buffer(void);7) unsigned long Read_BG_Data(unsigned char page_num, unsigned chardata_type, char bg_mode);8) unsigned char Read_Total_Page_lcon(unsigned char page_num);9) void Ini_Page_Info(unsigned char page_num);10) void Write_Grp_Status_Data(unsigned char page_num, unsigned chardata_type, unsigned long value);

Page 67: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 67 -

(5) void Draw_Inst_MSG(void)

기 능 를 표시1) Instant MSG

값return void

입력 파라미터 void

호출 DDI1) unsigned long Read_Grp_Status_Data(unsigned char page_num, unsignedchar data_type);2) void Draw_Bitmap(unsigned long bit_addr. int x, int Y, int w, int h);

(6) void Draw_Grp_Display(void)

기 능 로 세트된 아이템에 해당하는 를 표시1) 1 User Graphic Data

값return void

입력 파라미터 void

호출 DDI 1) void Draw_Icon(unsigned int icon_num, unsigned char state)

(7) void User_Page_Op(void)

기 능 함수포인터를 사용하여 해당 페이지에서 하고자 하는 작업 추가1)

값return void

입력 파라미터 void

호출 API 각 페이지 갱신 함수

(8) void Draw_Change_Popup_Item(void)

기 능 팝업 아이템 중 변화가 있는 아이템 표시1)

값return void

입력 파라미터 void

호출 DDI 1) void Draw_Icon(unsigned int icon_num, unsigned char state)

(9) void Draw_Popup(void)

기 능 에 따른 팝업창 표시1) Popup_Page

값return void

입력 파라미터 void

호출 API 각 함수Pop up Draw

호출 DDI1) void Copy_Screen(jnt x, int y, int w, int h)2) void Key_Led_AIl_Off(void)

Page 68: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 68 -

(10) void Popup_Page_Op(void)

기 능 함수포인터를 사용하여 해당 페이지에서 하고자 하는 작업 추가1)

값return void

입력파라미터

void

호출 API 각 팝업 갱신 함수

(11) void View_Msg(void * text)

기 능 화면중앙에 메시지를 표시한다1) .

값return void

입력파라미터

표시 할 문자열void * text :

호출 DDI1)void Draw_CBox(jnt x,int y,int w,int h,unsigned char crTop,unsigned charcrBottom, void * text, unsigned char align);2) void Draw_Manual_Pos(void);

다 관련. Com_Handler

(1) void I_Mode_Op(void)

기 능

통신코드를 참조하여 명령 송신1)응답 없거나 송수신 데이터 불량일 경우 통신 회 재 시도2) 3재 시도 실패 시 에러 리턴3)체크 명령에 대한 응답 데이터 수신4) (Check)

값return 정상( : 0, Error: Error_Code)

입력파라미터

void

호출 DDI1) void Send_Command(void)2) char Check_Ack_Receive(void)3) char Get_Data(void)

(2) char Check_POS(void)

기 능현재 체크할 모터 와 체크한 모터의 위치값 갱신1) (motor)모터의 동작 여부 체크2)

값return (0: RDY 1: BUSY)

입력 파라미터 void

호출 API 1) void I_Mode_Op(void)

호출 DDI

(3) void Check_IO(void)

기 능 입력데이터 를 갱신1) (Input_Value)

값return void

입력 파라미터 void

호출 API 1) void I_Mode_Op( void)

Page 69: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 69 -

제 장 결 론4 .

제 절 기대효과1 .

매출증대 효과1.

가 내수판매.

개발된 시스템제어기 제품명 와 티칭팬던트는 현재 한양정밀로보트 주( : DIMO-SC) ( )

의 차세대 주력 제품인 축 서보형 취출기 로봇에 탑재되어 시제품이 납품되었으며7

이외에 여러 회사와 납품관련 계약을 추진하고 있는 실정임 현재 내수 판매와 관,

련하여 진행되고 있는 상황을 정리하면 다음과 같다.

한양정밀로보트 주 취출 전문 로봇 생산업체 당사제품 적용으로 성능(1) ( ) : ,

업그레이드

가 현재 매출 규모 년 월 시제품 대 납품 완료 성공적으로 운전중( ) : 2002 6 1 , , 250

만원

나 예상 매출규모 년 월 대 납품 수주 만원 규모( ) : 2002 7 10 - 2,500

이후 지속적으로 월 대 대 가량의 물량 수주 가능 월 만원5 10 - 1,000 2,500~ ~

만원 선

다 년 예상 매출 규모 약 억원 정도의 년매출 기대( ) : 2

라 현재 이 회사와는 전장제어부 전체 납품을 추진하고 있어서 이 경우 예상 매( )

출은 년 억원 정도로 예상됨10

경림엔지니어링 주 장비용 로더 언로더 개발 전문업체(2) ( ) : SMD /

가 당사제품 적용으로 혁신적인 원가절감 기대 당사의 기본제품을 사용하여 원가( ) ,

절감 동남아 수출 예정,

나 예상매출규모 년 월부터 적용시험한 후 년 월부터 매출 예상 월( ) : 2002 7 2002 8

대 규모의 제품 생산으로 월 매출 약 만원선 예상 년 년 억원 정도 매출10 800 , 1

기대

로보텍 케이스 도장용 로봇 잔문 업체로서 현재 내수판매가 급증하고 있는(3) : PCS

업체

가 현재 당사제품 적용을 검토중인 회사로서 현재 생산중인 도장로봇보다 더욱( )

가격을 낮추는 제품을 개발하고자 당사 제품 적용을 희망함

나 예상매출규모 현재 월 생산수량 대 규모로서 약 만원선 예상 년매출( ) : 10 1000 ,

억원 기대1

Page 70: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 70 -

내수매출 전망(4)

가 현재 당사제품의 시장 출시가 년 월인 점을 감안할 때 보다 위의 회사들( ) 2002 6

이외에도 당사제품을 활용 할 경우 원가절감 및 성능향상 효과가 매우 크기 때문에

당사제품의 적용은 매우 확대될 전망임 년내에 당사제품 적용 업체는 여개로. 1 10

확장될 전망이며 이 경우 예상 년 매출은 약 억원 정도로 예상된다20 .

나 본격적인 영업은 한양정밀로보트 경림엔지니어링등의 회사의 납품이 완료되고( ) ,

문제점 발견시 이에대한 디버깅이 완전히 완료된 이후에 영업을 개시 할 예정이다.

나 수출판매.

현재 개발된 시스템제어기의 수출을 위하여 우선 년 월 일부터 일 까지2002 6 18 22

말레이시아 전시회에 참가하였으며 이를 통하여 현지 시장의NEPCON PENANG( )

진출 가능성 타진과 에이전트 혹은 취급점 개설을 위한 협의가 진행 되었음 이를.

토대로 현재 바이어 발굴과 에이전트 탐색을 진행중에 있음

사 미국의 반도체 시각검사장비(1) Professional Representation Enterprise :

수입업체

가 사업추진 방향 현재 이 업체는 미국 장비를 들여와서 인텔 암코등 많은 반( ) : ,

도체 업체들에게 공급중인 회사로서 이 제품의 경쟁력을 갖추기 위하여 자체 제품

으로 개발하고자 하며 현재 당사에게 제품의 제작을 위뢰한 상태임 당사는 전장부,

를 본 과제를 통하여 개발한 제품을 이용하여 설계하고 기계부는 말레이시아 현지

에서 개발하기로 함.

나 예상 매출 효과 현재 가격에 대한 협의는 진행되지 않았으며 년 월( ) : 2002 10

경에 초도셈플 출하가 가능할 것으로 사료됨 이 경우 예상 수량은 월 대 상기, 20 (

회사의 예상치는 대 규모 이며 이 경우 대당 으로 산출시 월40 ) US$500 US$10,000,

년 으로 예상된다US$120,000 .

또는 공급(2) AGENT DISTRIBUTOR

가 현재 및 사 등에서 자사의 제품을 수입하여 말레( ) AIMS FARNELL, PANAMECH

이시아와 싱가폴에 공급하고자 함 현재 구체적인 수량과 가격 등에 대한 협회는.

이루어지지 않고 있으나 전시회가 년 월 일 완료 되어 있어서 시기적으로( 2002 6 22

더 많은 협의가 필요 당사제품에 대한 관심이 매우높은편임) .

나 예상 매출 규모 개사와 독점으로 대리점 공급을 할 예정이며 예상 가격은( ) : 1

대당 이고 수량은 년 하반기부터 월 대 규모로 파악하고 있US$500 2003 20 50~

음 년도 하반기 이후부터 매출규모는 년 정도로 예상하고 있음. 2003 US$200,000

Page 71: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 71 -

태국 및 기타 지역의 판매(3)

가 현재 한국의 과 태국의 사에서 당사 제품을 태국에 독점( ) SIZI Coporation MTS

판매하는 것을 검토하고 있으며 이를 위하여 태국 사에서 조만간 방문이 이루MTS

어질 예정임 현재 태국은 세계 유수의 반도체 회사들이 조립공장을 이전하고 있는.

추세로서 이들 국가로의 진출은 매우 효과가 클것으로 에상됨

기타 기대 효과2.

가 대일본 무역수지 적자 개선 수입대체. ( )

본 과제로서 개발된 시스템 제어기는 그간 산업용 장비에 많이 사용이 되는 PLC

혹은 를 대체 하는 효과가 있는 제품으로서 그간 일본 미쯔비시 파나소닉 등에PC ,

서 수입되오던 와 모션제어기를 수입대체 하는 효과가 있음 수입대체 효과의PLC ,

규모는 당사의 내수판매 매출규모와 동일할것으로 판단되며 연간 약 억원 정도로20

예상됨.

나 산업용 장비시장의 대와 경쟁력 강화.

본 과제로서 개발된 시스템 제어기를 기존의 반도체 장비 및 용 설비 각종 공작FA ,

기계에 채택하여 사용하는 경우 및 전장부의 원가절감이 가능하고 또한 배선PLC

이 간편해져서 작업공수가 현저히 절감되는 장점이 있다 이로서 산업용 혹은 반도.

체 생산용 장비들의 대외 경쟁력을 강화시켜서 궁극적으로는 수출 증대 효과를 가

지올 수 있게 된다.

Page 72: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 72 -

제 절 추후연구과제2 .

본 과제를 통하여 개발된 시스템의 완성도를 높이고 산업용 기기 전반에 널리 쓰이

도록 하기 위하여는 다음과 같은 추후연구를 진행할 필요가 있다.

가 사용자 프로그래밍 저작도구 개발.

본 제품을 적용하고자 하는 사용자 장비 생산업체 가 주문형 기반의 제품 공급뿐( )

아니라 사용자 임의로 프로그램 작성이 가능하도록 하는 저작 도구의 개발이 필요

하다.

나 등의 인증의 획득. CE, UL

본 제품의 해외수출 증대를 위하여 및 등의 해외 인증의 획득이 필요하다CE UL .

이를 위하여 중소기업청 지원의 해외 유명 규격 및 인증 지원 사업의 참여를 통하

여 인증의 획득을 고려하고 있다CE .

다 특수모듈의 지속적인 개발.

본 제품의 판로 확산을 위하여는 현재 개발 완료된 기존 모듈이외에도 출력SSR

모듈 아나로그 출력모듈 릴레이 출력모듈 아나로그 입력모듈 대전류 제어 모듈, , , , ,

시리얼 통신 확장 모듈 등 산업용 시스템 전반에 활용이 가능한 특수 모듈의 지속

적인 개발과 공급이 필요하다.

이를 위하여 당사에서는 장비에 적용하는 시스템을 공급할 때마다 해당 장비에 필

요로하는 이러한 특수 모듈을 적기에 개발하여 공급하는 한편 이를 개발된 제품의

시리즈 모듈로서 판매토록 할 방침이다.

라 저가 제품군의 개발.

현재 개발된 제품을 산업용 기기 전반에 적용하기 위하여는 제품의 원가를 더욱 절

감할 필요가 있다 이를 위하여 현재 개발된 모션 제어기의 제품을 현재 고가 고성. ,

능 제품에서부터 저가 저성능의 제품까지 다양하게 개발하여 다양한 소비자의 욕,

구를 충족하도록 해야 한다.

Page 73: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 73 -

제 절 결론3 .

본 과제를 통하여 당사는 그동안 기획 단계에 머물던 의 약자DIMO(Digitial Motion )

시리즈의 개발이 완료되어 당사의 매출 신장 및 이미지 제고에 많은 도움이 되고

있다.

본 과제를 통하여 개발된 시리즈 제품은 당사 자체내의 시험 검사 및 한양정DIMO

밀로보트 주 의 제품 적합성 검사를 통하여 우수한 성능을 입증 받았다 이러한 우( ) .

수한 성능을 토대로 년 월에 개최된 고무 프라스틱 전시회에서 당사의 제품2002 4

이 적용하여 개발한 한국 최초의 축 고성능 취출로봇이 매우 높은 인기를 끌었으7

며 이를 통하여 삼성전자 납품 군업체인 세신전자 주 의 케이스 사출을 위하1 ( ) PCS

여 전시 제품이 납품 계약 되고 또한 대의 추가 발주를 비롯하여 년 월에만2 2002 7

대의 납품 계약을 올리는 성과를 거뒀다 이는 당사 제품 적용을 통하여 제품의10 .

생산 단가를 낮추는 한편 당사 제품이 초정밀 인서트용 사출기에 반드시 필요한 자

동보정 및 보간운전 정밀 위치제어등의 기능을 갖추고 있기 때문이다, .

앞으로 당사는 기 개발 완료된 제품을 더욱 성능 향상 시키고 소비자의 다양한 요

구에 부응하는 다양한 모듈을 개발하여 내수판매 및 수출 증대에 의한 매출 증대와

당사 제품을 채택하는 장비 및 업체를 더욱 확대하여 대일 무역 수지 적자의 개선

과 국산 반도체 및 용 장비의 대외 경쟁력 강화로 인한 관련 산업 전체의 수출FA

증대와 장비류의 수입 대체 효과가 극대화 될 수 있도록 노력할 것 이다.

Page 74: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 74 -

부 록

보드 전면 패턴1. CPU

보드 후면 패턴2. CPU

모션보드 전면 패턴3.

모션보드 후면 패턴4.

디지털 입출력 보드 전면 패턴5.

디지털 입출력 보드 후면 패턴6.

Page 75: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 75 -

보드 전면 패턴1. CPU

보드 후면 패턴2. CPU

Page 76: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 76 -

모션보드 전면 패턴3.

모션보드 후면 패턴4.

Page 77: 곡선가감속기능을갖는독립형모터 컨트롤러및제어프로그램개발) 2002 6 27 년월일 주관기업주식… · -1-c1-a-g-097 중소기업기술혁신개발사업최종보고서

- 77 -

디지털 입출력 보드 전면 패턴5.

디지털 입출력 보드 후면 패턴6.