Requirement Definition Wheel Motor 작동하는경우장애물인식후 - Ultrasonic Sensor 홀수번누를경우 +10 Touch Sensor 누를경우 TouchSensor 계속누르고있을경우 (0.5) +10 짝수번누를경우 -10 계속누르고있을경

Similar documents
Requirement Definition Wheel Motor 작동하는경우장애물인식후 - Ultrasonic Sensor 홀수번누를경우 +10 Touch Sensor 누를경우 TouchSensor 계속누르고있을경우 (0.5) +10 짝수번누를경우 -10 빛이어두워졌다다

S A S D 발표 : 구태환

Structure Analysis & Structure Design 유진혁 이찬희 최현빈 한경미

RVC Robot Vaccum Cleaner

PowerPoint 프레젠테이션

차례 마인드스톰 NXT NXC 예제소스코드

Microsoft PowerPoint - T1 ERS (Elevator Reservation System)SASD2.pptx

PowerPoint Template

Index Process Specification Data Dictionary

PowerPoint Template

À̵¿·Îº¿ÀÇ ÀÎÅͳݱâ¹Ý ¿ø°ÝÁ¦¾î½Ã ½Ã°£Áö¿¬¿¡_.hwp

PowerPoint Template

UI TASK & KEY EVENT

Microsoft PowerPoint - T3 SASD(2).pptx

API 매뉴얼

API 매뉴얼

chap 5: Trees

Microsoft Word - Installation and User Manual_CMD V2.2_.doc

<4D F736F F F696E74202D20B8B6C0CCC5A9B7CEC7C1B7CEBCBCBCAD202839C1D6C2F7207E203135C1D6C2F >

Microsoft Word - logic2005.doc

untitled

슬라이드 1

untitled

Ver _Jong Software Requirement Analysis for Electronic Door Lock System Project Team 4 종중정강 Date Team Information Minku Kang,

<FEFF E002D B E E FC816B CBDFC1B558B202E6559E830EB C28D9>

<4D F736F F F696E74202D20BBB7BBB7C7D15F FBEDFB0A3B1B3C0B05FC1A634C0CFC2F72E BC8A3C8AF20B8F0B5E55D>

PowerPoint 프레젠테이션

Ver. DS-2012.T3.DWS.STR-1.0 System Test Report for Digital Watch System Test Cases Specification Test Summary Report Project Team 이동아 Latest update on

서보교육자료배포용.ppt

09-interface.key

Ver. T3_DWS.UTP-1.0 Unit Testing Plan for Digital Watch System Test Plan Test Design Specification Test Cases Specification Date Team Infor



용어사전 PDF

PowerPoint 프레젠테이션

쿠폰형_상품소개서

Ver. 2 Software Requirement Analysis for Point of Sale(POS) System Project Team T3 Date Team Information 현인수전상우장혁준허윤아 T3 1

Microsoft PowerPoint - ch10 - 이진트리, AVL 트리, 트리 응용 pm0600

슬라이드 1

hwp

Microsoft PowerPoint - chap04-연산자.pptx

thesis

Microsoft PowerPoint - chap06-2pointer.ppt

歯FDA6000COP.PDF

Mobile Service > IAP > Android SDK [ ] IAP SDK TOAST SDK. IAP SDK. Android Studio IDE Android SDK Version (API Level 10). Name Reference V

윈도우즈프로그래밍(1)

MAX+plus II Getting Started - 무작정따라하기

282서비스업관리-마트

학습목표 함수프로시저, 서브프로시저의의미를안다. 매개변수전달방식을학습한다. 함수를이용한프로그래밍한다. 2

목차 제 1 장 inexio Touch Driver소개 소개 및 주요 기능 제품사양... 4 제 2 장 설치 및 실행 설치 시 주의사항 설치 권고 사양 프로그램 설치 하드웨

Microsoft PowerPoint Android-SDK설치.HelloAndroid(1.0h).pptx

SMV Vending Machine Implementation and Verification 김성민 정혁준 손영석

Microsoft Word - USB복사기.doc

목차 BUG offline replicator 에서유효하지않은로그를읽을경우비정상종료할수있다... 3 BUG 각 partition 이서로다른 tablespace 를가지고, column type 이 CLOB 이며, 해당 table 을 truncate

Microsoft Word - [TP_3][T1]UTP.docx

다른 JSP 페이지호출 forward() 메서드 - 하나의 JSP 페이지실행이끝나고다른 JSP 페이지를호출할때사용한다. 예 ) <% RequestDispatcher dispatcher = request.getrequestdispatcher(" 실행할페이지.jsp");

PowerPoint 프레젠테이션

Ver. 2017SE-POS-SRS-3.0 Software Requirement Analysis for Point Of Sale System Project Team Team 6 Date Team Information 김병식 2016

<BFACBDC0B9AEC1A6C7AEC0CC5F F E687770>

UI TASK & KEY EVENT

KARAAUTO_4¿ù.qxd-ÀÌÆå.ps, page Normalize

(001~006)개념RPM3-2(부속)

4. #include <stdio.h> #include <stdlib.h> int main() { functiona(); } void functiona() { printf("hihi\n"); } warning: conflicting types for functiona

Microsoft PowerPoint - Java7.pptx

목차 1. 제품 소개 특징 개요 Function table 기능 소개 Copy Compare Copy & Compare Erase

Microsoft Word - PLC제어응용-2차시.doc

PowerPoint Presentation

Å©·¹Àγ»Áö20p

Lab 3. 실습문제 (Single linked list)_해답.hwp

I care - Do you?

PowerPoint 프레젠테이션

Java ...


Table of Contents 1. Introduction 1.1 Purpose 1.2 Scope 1.3 Definition, acronyms, and abbreviations 1.4 Reference 2. Overall Description 2.1 Product P

Microsoft PowerPoint - chap02-C프로그램시작하기.pptx

CANTUS Evaluation Board Ap. Note

Digital watch system

T100MD+

지도상 유의점 m 학생들이 어려워하는 낱말이 있으므로 자세히 설명해주도록 한다. m 버튼을 무리하게 조작하면 고장이 날 위험이 있으므로 수업 시작 부분에서 주의를 준다. m 활동지를 보고 어려워하는 학생에게는 영상자료를 접속하도록 안내한다. 평가 평가 유형 자기 평가

- 이 문서는 삼성전자의 기술 자산으로 승인자만이 사용할 수 있습니다 Part Picture Description 5. R emove the memory by pushing the fixed-tap out and Remove the WLAN Antenna. 6. INS

TEST BANK & SOLUTION

6주차.key

10주차.key

PowerPoint Template

untitled

¾ÈÀü°ü¸®¸Å´º¾óÃÖÁ¾11.8

Microsoft PowerPoint - C++ 5 .pptx

나사식볼밸브.indd

±Â¸ð´×ÀÎõ ÃÖÁ¾

RYWKVGWKJOFY.hwp

PowerPoint Presentation

Poison null byte Excuse the ads! We need some help to keep our site up. List 1 Conditions 2 Exploit plan 2.1 chunksize(p)!= prev_size (next_chunk(p) 3

istay

Microsoft PowerPoint - e pptx

UI TASK & KEY EVENT

var answer = confirm(" 확인이나취소를누르세요."); // 확인창은사용자의의사를묻는데사용합니다. if(answer == true){ document.write(" 확인을눌렀습니다."); else { document.write(" 취소를눌렀습니다.");

adfasdfasfdasfasfadf

PowerPoint 프레젠테이션

2002년 2학기 자료구조

Microsoft PowerPoint - hw8.ppt [호환 모드]

Transcription:

AutoDriveRobot Analysis

Requirement Definition Wheel Motor 작동하는경우장애물인식후 - Ultrasonic Sensor 홀수번누를경우 +10 Touch Sensor 누를경우 TouchSensor 계속누르고있을경우 (0.5) +10 짝수번누를경우 -10 계속누르고있을경우 (0.5) -10 빛이어두워졌다다시밝아졌을경우 - Light Sensor Break Motor 작동하는경우장애물인식후 - Ultrasonic Sensor 빛이어두워졌을경우 - Light Sensor (Enable) 빛이어두워졌다다시밝아졌을경우 - Light Sensor (Disable) Speaker 작동하는경우어두운빛감지후, 5초동안빛이계속어두울경우 - Light Sensor ("Night") 빛이어두워졌다다시밝아졌을경우 - Light Sensor ("Good Morning") 70이상의소리가감지되었을경우 - Sensor ("Thank You") 작동하는경우최초전원버튼이켜진후, 작동하는동안기본상태 - Touch Sensor ("Working") 어두운빛감지후, 5초동안빛이계속어두울경우 - Light Sensor ("Sleeping") 빛이어두워졌다다시밝아졌을경우 - Light Sensor ("Working")

Requirement Definition Touch Sensor 영향받는출력 홀수번누를경우 +10 Wheel Motor 계속누르고있을경우 (0.5) +10 짝수번누를경우 -10 계속누르고있을경우 (0.5) -10 - 최초 Touch시 ( Working") Sensor 영향받는출력 Speaker - 70이상의소리가감지될경우 ( Thank You") Light Sensor 영향받는출력 Wheel Motor - 빛이어두워졌다다시밝아졌을경우 Break Motor Speaker 어두운빛감지후, 5초동안빛이계속어두울경우 (Enable) 빛이어두워졌다다시밝아졌을경우 (Disable) 어두운빛감지후, 5초동안빛이계속어두울경우 ("Night") 빛이어두워졌다다시밝아졌을경우 ("GoodMorning") 어두운빛감지후, 5초동안빛이계속어두울경우 ("Sleeping") 빛이어두워졌다다시밝아졌을경우 ("Working") Ultrasonic Sensor 영향받는출력 Wheel Motor - 장애물감지하였을경우 (Turn) Break Motor - 장애물감지하였을경우 (Enable) Break Motor - 방향전환후, 장애물이없을경우 (Disable)

System Context Diagram Wheel Motor Sensor Touch Sensor Sensor Light Sensor Ultrasonic Sensor Auto Drive Robot Brake Motor Speaker

Touch Sensor DFD Level 0 Wheel Motor Sensor Light Sensor Auto Drive Robot Brake Motor Speaker UltraSonic Sensor Digital Clock

SCD Information Table 정보설명데이터형범위 Touch Touch Sensor 를사용자가눌렀음을나타낸다 Boolean True, False Bright Sensor를통해들어오는소리의정보를나타낸다. 주기적으로읽혀지며, 주기는 10ms이다. Light Sensor를통해들어오는밝기의정보를나타낸다. 주기적으로읽혀지며, 주기는 10ms이다. Integer 0 ~ 100 Integer 0 ~ 100 Distance Ultrasonic Sensor 를통해들어오는사물과의거리정보를나타낸다. 주기적으로읽혀지며, 주기는 10ms 이다. Integer 0 ~ 255 Time Timer Interrupt 로서 10ms 주기로입력된다. Trigger - Wheel Wheel Motor를통해 Robot의이동을나타낸다. Right와 Left Wheel이나뉘어있다. Right Wheel과 Left Wheel을통하여 Robot의 Direction을바꿔줄수있으며, Wheel의 Speed를통하여 Robot의 Speed를나타낼수있다. Integer, Integer -100 ~ 100-100 ~ 100

SCD Information Table 정보설명데이터형범위 Brake Brake Motor 를통해 Robot 의이동을제어한다. 상황에따라, Brake 를통해 Robot 의움직임을멈출수있다. Integer 0 ~ 100 Speaker 를통해외부로 Speak 정보를나타낸다. Thank You Speak Speak 정보는 Good Morning", "Night", "Thank You" String Good Morning 세가지정보로나타날수있다. Night 를통해외부로 정보를나타낸다. 정보는 Working, Sleeping" 두가지정보로나타날수있다. String Working Sleeping

DFD Level 1 Speed Bright Control Sensor 1 Noise Night Direction Control Unit 2 Break Speak Time

DFD Level 1 - Control Sensor Touch Touch 1. 1 [Asynchronous Device] ActionData Wheel 1. 6 [Asynchronous Device] Wheel Bright 1. 2 [Periodic Device] Bright 1. 3 [Periodic Device] Control Sensor 1. 5 Brake 1. 7 [Asynchronous Device] Speaker 1. 8 [Asynchronous Device] Brake Speak Distance Ultrasonic 1. 4 [Periodic Device] Time 1. 9 [Asynchronous Device]

ActionData Information Table 1 정보설명데이터형범위 현재의속도를저장하여터치입력이들어왔을때, 다음속도의값을 Speed Motor 에전달할수있도록한다. (0~100 이하의모터의최대속도에대 한비율값을가진다. Touch 가들어올때마다 10 씩증가하며, 100 이되 면다시 10 으로값을돌린다.) int 0 ~ 100 DirectionCount 현재까지 Turn 한횟수를저장하여, 장애물을감지했을때, 오른쪽, 왼 쪽,180 도턴의동작둥하나를결정할수있도록한다. int 0 ~ 2 Night Bright 값을기준으로하여, 로봇의진행상태를알아볼수있도록한다. True 가 Bright 값이 40 이하인상태이다. bool True / False Break 상태에서 Stop 상태로넘어간후 Night 가되어모든모터가정지 NightStop 된상태를나타낸다. Night 가되었을때지만, 모든모터가정지되기전 bool True / False 의상태는 False 이며, 모든모터가정지되었을때 True 가된다.

ActionData Information Table 2 정보설명데이터형범위 Touch 센서의버튼이눌릴때마다 TouchCount 가 증가하게된다. 홀수번눌렸을경우와짝수번눌렸 을경우를알수있게하기위해 %2 연산을사용 TouchCount 한다. 또한 overflow를방지하기위해 100회이상이되면, 다시 1로만들어준다. time값에비례하여속도의증가감소를시킬수있게한다. 또한, 1 이상일경우에는 에 Working 이뜨게된다. int 0 ~ 100 터치의입력여부를저장하여이전값과현재값을 TouchCheck 비교하여속도를계속증가시킬것인지, 감소시킬 Bool True / False 것인지를결정할수있도록한다.

DFD Level 2.1 - Control Sensor Touch Touch 1. 1 [Asynchronous Device] Speed Bright 1. 2 [Periodic Device] Bright 1. 3 [Periodic Device] Control Sensor 1. 5 Noise Night Direction Distance Ultrasonic 1. 4 [Periodic Device]

DFD Level 3.1 - Sensor Control Speed Save Speed 1. 5. 2 Sensor Control 1. 5. 1 [Control] Trigger Is Noise 1. 5. 3 Noise Is Night 1. 5. 4 Night Direction (Forward, Turn Back, Turn Left, Turn Right)

DFD Level 2.2 Control Unit Speed Wheel 2. 2 [Asynchronous Device] Wheel Noise Night Direction Control Unit 2. 1 Break Action Break 2. 3 [Asynchronous Device] Break Speaker 2. 4 [Asynchronous Device] Speak 2. 5 [Asynchronous Device]

DFD Level 3.2 - Unit Control Wheel Action Speed Move Forward 2. 1. 2 Turn Left 2. 1. 3 Wheel Action Wheel Action Turn Opposite 2. 1. 4 Wheel Action Noise Night Direction Unit Control 2. 1. 1 [Control] Sleeping 2. 1. 11 Working 2. 1. 10 Thank You 2. 1. 9 Turn Right 2. 1. 5 Night 2. 1. 8 Info Info Info Break 2. 1. 6 Good Morning 2. 1. 7 Info Break Action Info

DFD Level 2 - Sensor Control(1) Action Data Action Data Action Data Action 1.5.2 Move Forward 1.5.3 Wheel Action Sensor Controller 1.5.1 [Control] Time Time Turn Left 1.5.4 Turn Opposite 1.5.5 Wheel Action Wheel Action Time Turn Right 1.5.6 Wheel Action Time Brake 1.5.7 Brake Action

DFD Level 2 - Sensor Control(2) Good Morning 1.5.8 Info Sensor Controller 1.5.1 [Control] Night 1.5.9 Thank You 1.5.10 Info Info Working 1.5.11 Info Sleeping 1.5.12 Info

FiniteStateMachine Sensor Control Ready Touch / Trigger Save Speed Touch / Trigger Save Speed Forward [Bright < 40] / Enable IsNight TimeOut(5) & [Bright 40] / Disable IsNight Trigger IsNoise Blocked [ 70 & Bright 40 & Distance 20] / Trigger IsNoise [Bright 40 & Distance < 20] / Turn Left Turn Left & [Bright 40 & Distance < 20] / Turn Opposite Turn Left & Turn Opposite [Bright 40 & Distance < 20] / Turn Right Touch / Trigger Save Speed Stop

Finite State Machine Unit Control Ready Forward / Enable Working Enable Move Forward Stop / Disable Working Disable Move Forward Forward Stop Noise &!Night &!Turn Left &!Turn Right &!Turn Back / Trigger Thank You!Night & Direction / Trigger Turn Left!Night & Direction & Left / Trigger Turn Back!Night & Direction & Left & Back/ Trigger Turn Right Night / Disable Move Forward Disable Break Disable Working Enable Sleeping Trigger Night Break

FiniteStateMachine TimeOut(5) [Bright<=40 & Night = True & NightStop =True] / Enable Sleeping Stop Idle Touch [Bright < 40 & Distance > 10 & Night = False] / Action Enable MoveForward [Bright > 40 & Distance > 10 & >= 70 & Night = False & TouchCount > 0] / Action Trigger Thank you Enable Workiing Move Forward Touch [Bright < 40 & Night = False] / Action Enable MoveForward Enable Working [Bright<=40 & Night = False] / Action, Enable Forward, Enable Brake TimeOut(5) & [Bright > 40 & Night = False]] / Action TimeOut(1) Disable Brake Enable MoveForward Brake [Bright>40 & Distance <= 10 & DirectionCount = 0 & Night = False] / Action, Trigger Turn Left Turn Left TimeOut(0.5) [Bright > 40 & Distance > 10 & Night = False] /Action, Enable MoveForward Turn Opposite TimeOut(0.5) [Bright > 40 & Distance <= 10 & DirectionCount = 1 & Night = False] /Action, Trigger TurnOpposite Turn Right TimeOut(1) [Bright > 40 & Distance <= 10 & DirectionCount = 2 & Night = False] /Action, Trigger TurnRight

Touch Handle Table Touch TouchCheck TouchCount % 2 Speed Result False False 1 0 Don't care No Change True False 1 0 0 ~ 99 Speed +10 100 No Change 0 No Change 1 ~ 100 Speed -10 False True 1 0 Don't care TouchCount +1 0 Never Happen 1 1 ~ 99 TimeOut(0.5) Speed +10 True True 100 No Change 0 No Change 0 1 ~ 99 TimeOut(0.5) Speed -10 100 Never Happen

DFD Level 4 2. 1. 2 2. 2 2. 1. 3 1. 1 1. 5. 2 Speed 2. 1. 4 2. 1. 5 1. 2 [P] 1. 5. 1 [C] 1. 5. 3 2. 1. 1 [C] 2. 1. 6 2. 3 1. 3 [P] 1. 5. 4 2. 1. 7 2. 1. 8 1. 4 [P] 2. 1. 10 2. 1. 9 2. 4 : Asynchronous [P] : Periodic [C] : Control 2. 1. 11 2. 5

DFD Level 3 1. 5. 3 1. 6 1. 1 Data Store 1. 5. 2 1. 5. 4 1. 5. 5 1. 5. 6 1. 2 [P] 1. 5. 1 [C] 1. 5. 7 1. 7 1. 3 [P] 1. 5. 8 1. 5. 9 1. 4 [P] 1. 5. 11 1. 5. 10 1. 8 : Asynchronous [P] : Periodic [C] : Control 1. 5. 12 1. 9

Details Reference No. 1.1 Name Stereo Type Description Touch Asynchronous Function Touch (bool)touch Touch Sensor에서시간당 (10ms) Touch 을받아들이면 Control Sensor Proces s에 Touch Data를보낸다. Touch Data는 True/False로구분되며 True는눌려졌음을의미한다. Reference No. 1.2 Name Stereo Type Description Periodic Function, Time (int) Sensor에서시간당 (10ms) 을받아들이면 Control Sensor Proce ss에 Data를보낸다. Data는 Sensor에서감지한소리의크기정보데이터다.

Details Reference No. 1.3 Name Stereo Type Description Bright Periodic Function Bright, Time (int) Bright Bright Sensor에서시간당 (10ms) Bright 을받아들이면 Control Sensor Proces s에 Bright Data를보낸다. Bright Data는 Bright Sensor에서감지한밝기의크기정보데이터다. Reference No. 1.4 Name Stereo Type Description Ultrasonic Periodic Function Distance, Time (int) Distance Ultrasonic Sensor에서시간당 (10ms) Distance 을받아들이면 Control Sensor 에 Distance Data를보낸다. Distance Data는 Ultrasonic Sensor에서감지한물체와의거리정보데이터다.

Details Reference No. 1.5.1 Name Stereo Type Description Sensor Control Control (bool) Touch, (int), (int) Bright, (int) Distance, ActionData, time Trigger, Enable, Disable, Data 입력센서에서받아들인정보와 Action Data로부터들어온정보들을바탕으로 ADR의행동을결정하고, 다음프로세스로넘긴다. Reference No. 1.5.2 Name Stereo Type Action Synchronous Function Trigger, (int) Speed, (int) DirectionCount, (bool) Night, (int) TouchCount, (bool)touchche ck ActionData Description 로봇이움직이게할수있는전체적인정보를저장한후에관리한다.

Details Reference No. 1.5.3 Name Stereo Type Description Move Forward Synchronous Function Enable, Disable (int, int) Wheel Action Enable 이벤트가발생시수행되며 Wheel 에 Wheel Action 데이터를보내서로봇이앞으로움직이도록하는프로세스이다. Wheel Action은 A Motor와 C Motor의속도로구성된다. Reference No. 1.5.4 Name Stereo Type Description Turn Left Asynchronous Function Trigger (int, int) Wheel Action Trigger 이벤트가발생시수행되며 Wheel 에 Wheel Action 데이터를보내서앞에장애물이있을시로봇이왼쪽으로방향을돌리도록하는프로세스이다. Wheel Action은 A Motor와 C Motor의속도로구성된다.

Details Reference No. 1.5.5 Name Stereo Type Description Turn Opposite Asynchronous Function Trigger (int, int) Wheel Action Trigger 이벤트가발생시수행되며 Wheel 에 Wheel Action 데이터를보내서 Turn Left를수행했음에도장애물이있을시로봇이방향을 180 돌리도록하는프로세스이다. Wheel Action은 A Motor와 C Motor의속도로구성된다. Reference No. 1.5.6 Name Stereo Type Description Turn Right Asynchronous Function Trigger (int, int) Wheel Action Trigger 이벤트가발생시수행되며 Wheel 에 Wheel Action 데이터를보내서 Turn Left및 Turn Opposite을수행했음에도장애물이있을시로봇이오른쪽으로방향을돌리도록하는프로세스이다. Wheel Action은 A Motor와 C Motor의속도로구성된다.

Details Reference No. 1.5.7 Name Stereo Type Brake Synchronous Function Enable, Disable (bool, int) Brake Action Enable 이벤트가발생시수행되며, Night 가 True 가되었을시에브레이크를앞으로속도 Description 100 만큼작동시키고그후 5 초동안의대기시간을거친후에밝기가 40 이하면 1 초만큼브레 이크를뒤로속도 20 만큼작동시킨후작동을종료하고 40 이상이면곧바로작동을종요하게 Reference No. 1.5.8 만드는 이다. Name Stereo Type Description Good Moring Asynchronous Function Trigger Info "Good Morning" Enable 이벤트가발생시수행되며 Night가 True된후 5초후에도 True상태여서자동차가멈춘후에 Night가 False가되었을때작동하며 "Good Morning 소리를내게하는 이다.

Details Reference No. 1.5.9 Name Stereo Type Description Night Asynchronous Function Trigger Info "Night" Trigger 이벤트가발생시수행되며 Night가 True되었을때 5초후에도 True일때 Stop State로가서자동차가멈춘후에작동하며 "Night 소리를내게하는 이다. Reference No. 1.5.10 Name Stereo Type Description Thank You Asynchronous Function Trigger Info "Thank You" Trigger 이벤트가발생시수행되며 Bright가 40이상, 가 70이상, Distance가 10이상일때작동하며 "Thank You 소리를내게하는 이다.

Details Reference No. 1.5.11 Name Stereo Type Description Working Synchronous Function Enable, Disable Info "Working" Enable 이벤트가발생시수행되며 Bright가 40이상일때계속 되며 Night가 True된후 5초후에도 True 상태여서자동차가멈춘후에 Night가 False가되었을때작동하며 "Working 을 하는 이다. Reference No. 1.5.12 Name Stereo Type Description Sleeping Synchronous Function Enable, Disable Info "Sleeping" Enable 이벤트가발생시수행되며 Night가 True된후 5초후에도 True상태여서자동차가멈춘후에 Night가 False가되었을때작동하며 "Working 을 하는 이다.

Details Reference No. 1.6 Name Stereo Type Description Wheel Asynchronous Function Wheel Action Wheel Wheel Action 데이터를받아 Break Motor에 Break데이터를보내로봇을브레이크시키는 이다. Reference No. 1.7 Name Stereo Type Description Break Asynchronous Function Break Action Break Break Action 데이터를받아 Wheel Motor에 Wheel데이터를보내로봇을움직이게하는 이다.

Details Reference No. 1.8 Name Stereo Type Description Speaker Asynchronous Function Info Info 데이터를받아 Speaker에 데이터를보내로봇을움직이게하는 이다. Reference No. 1.9 Name Stereo Type Description Asynchronous Function Info Info 데이터를받아 에 데이터를보내로봇을움직이게하는 이다.

Data Dictionary Data Name Explanation Touch Touch Sensor 로부터 Touch 이들어왔음을나타내는이벤트이다. True / False 로구성되어 True 일 때가 Touch 이들어왔을때이다. Sensor 로부터들어오는 의크기데이터이다. Bright Light Sensor 로부터들어오는 Bright 의크기데이터이다. Distance Ultra Sonic Sensor 를통해들어오는 Distance 의크기데이터이다. Wheel Action Wheel Motor 의 A 와 C 모터각각의스피드를포함하는데이터이다. A, C 각각의 int 값 2 개로구성되어있다. Break Action Break Motor 를작동시키는데이터이다. True / False 로구성되어 True 일때에 Break 가작동한다. Info Speaker 가실제로낼소리데이터를나타낸다. NXT 에내장되어있는소리데이터베이스를이용하며프 로그램코드상에서지정할수있다. Info 에출력될영상데이터를나타낸다.

Data Dictionary Data Name Explanation Speed 0 이상 100 이하의값을가지며값은모터의최대속도에대한비율을나타낸다. Touch 를홀수번눌렀을 때 10 의속도가증가하며짝수번눌렀을때 10 의속도가감소한다. 만약계속누르고있었을시에는 0.5 초마다 10 의속도가증가혹은감소한다. Noise Sensor 를통해입력되는소리의크기가 70 을넘었음을알려, Speaker 를통해 Speak 를내기위해 보내는정보다. Night Bright 가 40 미만일경우에 Break 모터를작동시키며 5 초이후에다시 Bright 를확인했을때계속 40 미만 일경우와 40 이상일경우를판단하여다른결과를도출시킨다. True 와 False 로나타내며 True 는 Bright 가 40 미만임을나타낸다. Direction Distance 의정보에따라모터의방향을결정하기위해보내는정보다. Direction 의값은 Distance 가 10 미 만일때 Turn Left, Turn Opposite, Turn Right 를순차적으로 Trigger 시킨다.

Transform Analysis Touch Touch 1. 1 Data Store ActionData Action 1.5.2 Move Forward 1.5.3 Turn Left 1.5.4 WheelAction Turn Opposite 1.5.5 Wheel 1. 6 Wheel Turn Right 1.5.6 Bright 1. 2 [P] Bright 1. 3 [P] Sensor Controller 1.5.1 [Control] Brake 1.5.7 Good Morning 1.5.8 Brake Action Brake 1. 7 Brake Night 1.5.9 Distance Bright 1. 4 [P] : Asynchronous [P] : Periodic [C] : Control Time Sleeping 1.5.12 Working 1.5.11 Thank You 1.5.10 1. 9 Speaker 1. 8 Speak

Transform Analysis Touch Touch 1. 1 Data Store ActionData Action 1.5.2 Move Forward 1.5.3 Turn Left 1.5.4 WheelAction Turn Opposite 1.5.5 Wheel 1. 6 Wheel Turn Right 1.5.6 Bright 1. 2 [P] Bright 1. 3 [P] Sensor Controller 1.5.1 [Control] Brake 1.5.7 Good Morning 1.5.8 Brake Action Brake 1. 7 Brake Night 1.5.9 Distance Bright 1. 4 [P] : Asynchronous [P] : Periodic [C] : Control Time Sleeping 1.5.12 Working 1.5.11 Thank You 1.5.10 1. 9 Speaker 1. 8 Speak

Transform Analysis Touch Touch 1. 1 Data Store ActionData Action 1.5.2 Move Forward 1.5.3 Turn Left 1.5.4 WheelAction Turn Opposite 1.5.5 Wheel 1. 6 Wheel Turn Right 1.5.6 Bright 1. 2 [P] Bright 1. 3 [P] Sensor Controller 1.5.1 [Control] Brake 1.5.7 Good Morning 1.5.8 Brake Action Brake 1. 7 Brake Night 1.5.9 Distance Bright 1. 4 [P] : Asynchronous [P] : Periodic [C] : Control Time Sleeping 1.5.12 Working 1.5.11 Thank You 1.5.10 1. 9 Speaker 1. 8 Speak

Task Identification Task 프로세스 선별기준 모듈 Task 1 Touch interface 1.1 Asynchronous Touch Task 2 interface 1.2 Periodic Task 3 Light interface 1.3 Periodic Bright Task 4 Ultrasonic interface 1.4 Periodic Ultrasonic Task 5 Sensor Controller 1.5.1 Action 1.5.2 Move Forward 1.5.3 Turn Left 1.5.4 Turn Opposite 1.5.5 Turn Right 1.5.6 Brake 1.5.7 Good Morning 1.5.8 Night 1.5.9 Thank You 1.5.10 Working 1.5.11 Sleeping 1.5.12 Control 제어응집도제어응집도제어응집도제어응집도제어응집도제어응집도제어응집도제어응집도제어응집도제어응집도제어응집도 Sensor Controller Task 6 Wheel 1.6 Asynchronous Wheel Task 7 Brake 1.7 Asynchronous Brake Task 8 Speaker 1.8 Asynchronous Speaker Task 9 1.9 Asynchronous

Structured Charts Main SensorController Info Touch Bright Distance WheelAction BrakeAction Info GetTouch() Get() GetBright() GetDistance() SetWheel() SetBrake() Set() Set()

Module Definition 모듈 ID RC_AM01 모듈명 Main 모듈개요 Controller 를실행시킴 인터페이스 없음 - 프로그램구동시실행 모듈 ID RC_AM02 모듈명 Sensor Controller 모듈개요 인터페이스 센서에서들어온값과 ActionData 에저장된값들을이용하여 Wheel Moter, Brake, Speaker, 를제어함 SensorController() - main 함수에서실행 모듈 ID RC_AM03 모듈명 Touch 모듈개요 Touch Sensor 로부터입력을받아처리함 인터페이스 GetTouch() - Touch Sensor 로부터입력을받아 (bool)touch 로반환하는함수 모듈 ID RC_AM04 모듈명 모듈개요 Sensor 로부터입력을받아처리함 인터페이스 Get() - Sensor 로부터입력을받아 (int) 로변환하는함수

Module Definition 모듈 ID RC_AM05 모듈명 Bright 모듈개요 Light Sensor 로부터입력을받아처리함 인터페이스 GetBright() - Light Sensor 로부터입력을받아 (int)bright 로변환하는함수 모듈 ID RC_AM06 모듈명 Ultrasonic 모듈개요 Ultrasonic Sensor 로부터입력을받아처리함 인터페이스 GetDistance() - Ultrasonic Sensor 로부터입력을받아 (int)distance 로변환하는함수 모듈 ID RC_AM07 모듈명 Wheel 모듈개요 ActionData 에저장된값에맞게 Moter A, Moter C 의속도를결정함 인터페이스 SetWheel(int motora, int motorc) - ActionData 에저장된값에맞게 Motor A, Motor C 의속도를 받아저장된값에맞게모터를각각실행시키는함수 모듈 ID RC_AM08 모듈명 Brake 모듈개요 인터페이스 ActionData 에저장된값에맞게 Moter B 의속도를결정함 SetBrake(bool Night, int motorb) - ActionData 에저장된값에맞게 Motor B 의속도를받아저장 된값에맞게실행시키는함수

Module Definition 모듈 ID RC_AM09 모듈명 Speaker 모듈개요 소프트웨어에서처리된소리출력정보값을이용해외부 Speaker 로소리값을출력함 인터페이스 SetSpeaker(string Info) - Info 를받아서해당소리를외부스피커를통해동작하게 하는함수 모듈 ID RC_AM10 모듈명 모듈개요 소프트웨어에서처리된영상출력정보값을이용해외부 로영상정보값을출력함 인터페이스 Set(string Info) - Info 를받아서해당문구를외부모니터를통해동작하게 하는함수