아두이노를 이용하여 자판기 제작

by 김세훈 | 2016-06-06 01:54
아두이노

재료

  • Mega2560 1개

도구

  • Arduino Sketch

# 프로젝트 주제



아두이노 Mega2560보드를 사용하여 자판기의 기본 기능 구현 한다.


# 사용된 모듈


1) 적외선 장애물 감지 센서


2) Keypad


3) Passive Buzzer


4) TMP36 온도 센서


5) 1digit Segment


6) 4digit Segment


7) LCD


8) Light Blocking Sensor


9) LED


10) Stepper Motor


11) DC Motor





# 자판기의 기능


메뉴 버튼

4개의 메뉴가 존재

각각 하나의 LED사용

키패드로 입력 4, 5, 6, 7번 버튼 사용

반환 버튼

7Segment-4digit0000으로 초기화

LCD에 남은금액 표시

반환버튼 사용 시 LED점등

키패드의 B 버튼을 사용

반출 버튼

Stepper Motor을 사용하여 컵을 운반

라이트 블로킹 센서를 사용하여 컵의 유무 확인

돈입력

버튼

-키패드의 1, 2, 3을 이용하여 돈을 입력

 

부팅버튼

자판기를 부팅 시켜야 사용이 가능

키패드의 A를 이용하여 기능을 구현

종료버튼

키패드의 D버튼을 이용하여 자판기를 절전모드로

전환

LCD기능

자판기의 상태 메시지를

표시한다.

내용은 판매중과 현재의 물의 온도를 표시한다.

LCD10K의 가변저항을 이용한다.

인식버튼

적외선 센서를 이용하여 사람이 오면 전원이 들어온다.



# 자판기 기능 상세설명  (설명서)


- 적외선 센서로 사람이 오면 자판기의 전원이 들어옵니다.


- A버튼을 누르면 자판기의가 부팅이 되면서 버튼들이 활성화 됩니다. 그전까지는 버튼을 눌러도 아무런 기능도 동작하지 않습니다. 또한 부팅이 완료되면 LCD‘Choose Drink’ 라는 문구가 표시됩니다.


- 1, 2, 3번 버튼을 각각 누르면 100, 500, 1000원의 돈이 입력됩니다. 돈의 입력 상태는 4digit 7Segment에 표시됩니다. 입력금액이 9900원을 초과할 경우 금액은 0000으로 초기화 됩니다.


- 돈이 부족한 상태에서 메뉴를 선택 할 경우에는 LCD에서 ‘More Input Money’라는 문구 출력 후 부저음이 2회 울립니다.


- 입력금액이 메뉴의 금액보다 큰 경우 메뉴의 LED가 점등됩니다.


- 메뉴의 버튼은 4567번에 각각 할당되어 있습니다. 입력한 금액이 메뉴의 가격보다 클 경우 메뉴 버튼을 누르면 LCD‘Select xxxx’ 형태의 메시지가 출력됩니다. 또 한 Stepper Mode가 동작하면서 컵을 내리는 기능을 합니다.


- LightBlocking Sensor가 감지되면 온도 를 체크한 후 온도가 낮으면 히터가, 온도 가 높을 경우에는 쿨러가 작동합니다. 각 각의 상태는 LED를 이용하여 히터인지 쿨러 인지 구분할 수 있습니다.


- C 버튼을 사용하여 컵을 반출 할 수 있습니다. 반출 버튼을 사용하면 Stepper Motor가 반출의 동작을 합니다.


- B 버튼을 사용하면 반환이 됩니다. 반환 버튼을 사용 시 반환LED가 점등되고, LCD에 남은 금액이 표시되면 반환의 메시지가 표시됩니다.


- D버튼을 사용 시 자판기의 전원이 꺼집니다. LCD‘Bye Happy Day!’의 메시지가 출력되면서 자판기는 절전모드 상태가됩니다. 만약 다른사람이 접근한다면 적외선 센서로 인하여 자판기가 대기모드로 변경됩니다.



# 완성된 자판기 회로사진


그림입니다.

원본 그림의 이름: KakaoTalk_20160602_213700565.jpg

원본 그림의 크기: 가로 720pixel, 세로 960pixel

 

# 구현영상



댓글 2

자판기

아두이노를 이용하여 자판기 제작

by 김세훈

MADE BY

아두이노를 이용하여 자판기 제작 현재글