Page 370 - MDP2020-3
P. 370
364
| 인천전자마이스터고등학교 ·············································································································
제 3 장 소프트웨어 설계
1. 개요
라즈베리파이모니터에서 문열림 버튼을 누르면 문에 연결된 모터가 동작한다. 문 안 쪽에서는
적외선 센서를 사용하여 감지 범위 내에 사람이 들어올 시 모터가 동작하여 자동으로 문이 열
린다. 기본적으로 라즈베리파이와 ATmega2560이 UART통신으로 서로 데이터를 주고 받는다.
ATmega2560에 블루투스 모듈을 사용하여 안드로이드폰과 블루투스 통신을 통해 휴대폰의 고
유한 주소를 얻어 데이터베이스에 등록시킨다. 라즈베리파이모니터에서는 데이터베이스에 직원
의 이름, 직위 등을 등록시키고 우측의 버튼을 누르면 직원의 상태를 정할 수 있으며 상태가 설
정될 시 메인화면의 내부 직원 수와 아래 표에 추가된다.
2. 소프트웨어
소프트웨어는 Python을 사용하여 코딩하였다.
from tkinter import *
from tkinter import font
from PIL import Image, ImageTk
import pymysql as sql
import time as timer
import cv2
from datetime import datetime
import sys
from os import makedirs, listdir
import numpy as np
from os.path import isdir, isfile, join
# conn = sql.connect(host='192.168.137.97', user='root', passwd='darker0723',
db='raspMDP', charset='utf8')
conn = sql.connect(host='localhost', user='root', passwd='apmsetup', db='raspmdp',
charset='utf8')
cursor = conn.cursor(sql.cursors.DictCursor)
tm = timer.localtime()
numsColor = "floral white"
statusColor = "LavenderBlush"
numsLabelColor = "LavenderBlush4"
barColor = "ivory2"
statusButtonColor = "misty rose"