[마이크로 프로세서 및 실습 Ⅰ] 8051 어셈블리어를 이용한 자동인식거울
본 자료는 4페이지 의 미리보기를 제공합니다. 이미지를 클릭하여 주세요.
닫기
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
해당 자료는 4페이지 까지만 미리보기를 제공합니다.
4페이지 이후부터 다운로드 후 확인할 수 있습니다.

소개글

[마이크로 프로세서 및 실습 Ⅰ] 8051 어셈블리어를 이용한 자동인식거울에 대한 보고서 자료입니다.

목차

1. 작품명 : 자동 인식 거울
→ 센서에 물체가 감지되면 그 곳을 따라가는 거울입니다.

2. 동작 개요 및 그림

3. 사용 입출력 포트

4. 부품

5. 회로도

6. 플로우 차트

7. 하드웨어 작품 사진

8. PROGRAM 소스

본문내용

울)
담당교수
학 과
학 년
학 번
성 명
제출일
1. 작품명 : 자동 인식 거울
→ 센서에 물체가 감지되면 그 곳을 따라가는 거울입니다.
2. 동작 개요 및 그림
→ 거울을 보기 위해서는 고정되어있는 거울 앞에 자신의 얼굴을 가져가야 자신의 모습을 볼 수 있습니다. 하지만 이 자동 인식 거울을 이용하면 내가 거울 근처에 가면, 거울이 자동으로 나의 얼굴을 향해 방향을 틉니다.
그리고 거울 밑은 RC 서보 모터 2개를 사용하여 거울을 상 하 좌 우 180도 회전 할 수 있도록 하고, 거울 위, 아래, 양 옆은 센서 네 개를 장착하여, 거울 근처에 물체가 감지되면 RC 서보 모터를 이용하여 거울이 그 물체로 향하게 합니다.
양옆(좌, 우)이 아닌 상하좌우로 방향을 틀 수 있도록 예정입니다. 하지만 360도 거울 회전은 불가능 할 것 같습니다. 거울 뒤쪽에는 센서와 RC 서보 모터를 이을 선을 장착해야하고, RC 서보 모터의 범위가 180도이기 때문입니다.
센서는 적외선 거리 센서를 사용할 예정인데, 범위는 10 ~ 80cm 짜리 센서를 사용할 것 입니다.
8051 보드
4방향에서 나온 센서 비교
RC 서보 모터
거울
3. 사용 입출력 포트
사용 포트
입출력
사용 디바이스(부품)
P 1.0 ~ P 1.3
입력
A/D 변환 회로를 위한 입력
P 1.4 ~ P 1.5
입력
적외선 거리 감지 센서 1(위)
P 1.6
입력
적외선 거리 감지 센서 2(아래)
Input Con D0 ~ D2
입력
적외선 거리 감지 센서 3(왼쪽)
Input Con D5 ~ D7
입력
적외선 거리 감지 센서 4(오른쪽)
P 1.7
출력
RC 서보 모터(좌.우)
출력
RC 서보 모터(상.하)
LCD
출력
거리 감지 센서에 대한 값 표시
4. 부품
품명
규격
개수
조달방법
적외선 거리 센서
(GP2Y0A21YK)
4
인터넷 구매(엘레파츠)
RC 서보 모터
2
인터넷 구매(엘레파츠)
ADC0804LCN
4
인터넷 구매(엘레파츠)
거울
1
소유
아크릴
(거울 밑에 받침)
1
소유
저항
10K
8
부품실
캐패시터
150pF
4
부품실
5. 회로도
A/D 변환 회로 X 4
센서 부분
A/D 변환 회로
A/D 변환 회로
A/D 변환 회로
A/D 변환 회로
모터 부문
이 작품은 하드웨어 쪽 부분이 8051, 센서, RC 서보 모터 부분이기 때문에, 회로도는 센서, RC 서보 모터 두 부분만 작성했습니다. 그리고 AD 변환 회로를 작성했습니다.
6. 플로우 차트
7. 하드웨어 작품 사진
적외선 센서 장착 부분
◎ 아크릴 판을 이용하여 적외선 센서를 거울에 부착하였습니다.
거울 앞면
◎ 위, 아래에 적외선 센서 2개를 더 부착할 예정입니다.
거울 뒷면
◎ RC 서보모터를 거울 오른쪽과 밑에 각각 부착할 예정입니다.
완성 사진
거울 앞부분
거울 뒷부분
8. PROGRAM 소스
ORG4000H
JMPM_START
ORG400BH
JMPM_TIMER
;------------------------------- 초기설정
M_START:MOVPSW, #8
SETBET0
MOVTMOD, #1
MOVTL0, #0C5H ; 0.1 ms
MOVTH0, #0FFH ; -------
SETBEA
CALLLCD_INIT
CLRP1.0
MOV30H, #0
MOVR7, #0
SETBTR0
;-------------------------------- 초기값 설정 끝
LOOP:CALLDELAY
; 모터 구동 파트 (거울 회전 알고리즘)
CALLAN_READ
CPLP1.4
MOVA, 21H
CJNEA, 22H, GO1
GO1:JCSUB1
CLRC
MOVA, 22H
SUBBA, 21H
JMPNXT_MOV1
SUB1:SUBBA, 22H
JMPNXT_MOV2
NXT_MOV1:MOVB, #2
MULAB
ADDA, #15
JMPOP1
NXT_MOV2:MOVB, #2
MULAB
MOV41H, A
MOVA, #15
CLRC
SUBBA, 41H
OP1:MOV35H, A; 돌릴 각도 15 +-
; 여기까지 35H에 따라 특정 각도로 고정
CALLAN_READ ; 아날로그 신호 READ -> 20H 에 저장
MOVA, 20H
MOVB, #32
DIVAB
MOV22H, A ; Right
MOVA, 20H
MOVB, #8
DIVAB
MOVA, B
MOV21H, A; Left
; 여기까지 통틀어서 22H에 오른쪽 센서 신호 저장, 21H에 왼쪽 센서 신호, LCD에 출력은 아래
;--------- LCD Display ---------
CALLLN11
MOVA, 21H ; Left Display
MOVB, #10
DIVAB
MOVR2, B
ADDA, #30H
CALLLCD_DAT
MOVA, R2
ADDA, #30H
CALLLCD_DAT
CALLLN21 ; Right Display
MOVA, 22H
MOVB, #10
DIVAB
MOVR2, B
ADDA, #30H
CALLLCD_DAT
MOVA, R2
ADDA, #30H
CALLLCD_DAT
;--------- Display End -----------
LP_END:JMPLOOP
AN_READ:SETBP1.1; 아날로그 읽기명령
CLRP1.2
CALLD10US
CLRP1.1; 디지털신호 출력
SETBP1.2
MOVDPTR, #0C000H; D0-D2 왼쪽 D5-D7 오른쪽
MOVXA, @DPTR
MOV20H, A
RET
; 실시간 모터 제어 파트 (타이머로 구동)
M_TIMER:MOV40H, A
CLREA
INC30H
MOVA, 30H
CJNEA, #200, DEL_OUT
SETBP1.7
MOV30H, #0
MOVR7, 35H
DEL_OUT:MOVA, R7
JZST_M
DECR7
JMPM_T_END
ST_M:CLRP1.7
M_T_END:MOVTL0, #0C5H
MOVTH0, #0FFH
SETBEA
MOVA, 40H
RETI
; 딜레이 서브루틴
DELAY:MOVR4, #0
LP1:MOVR5, #0
LP2:NOP
NOP
NOP
NOP
DJNZR5, LP2
DJNZR4, LP1
RET
END_POINT:MOVPSW, #0
JMP0057H
$INCLUDE (LCD.INC) ; LCD구동 INC 로드
END
  • 가격20,000
  • 페이지수14페이지
  • 등록일2013.11.06
  • 저작시기2012.7
  • 파일형식한글(hwp)
  • 자료번호#890792
본 자료는 최근 2주간 다운받은 회원이 없습니다.
청소해
다운로드 장바구니