1. 칼라색상 인식하여 해당칼라 색을 LED에 색상으로 표시하고 LCD 에 인식 칼라 색상을 표시하기(통신은 기본)
2. 손가락 숫자를 인식하여 FND에 표시하고 해당 인식 숫자 만큼 LED 표시하기(통신은 기본)
3. 손바닥이나 임의의 물체를 인식하여 LED ON/OFF 하고 그 상태를 통신을 통하여 R-Pi로 전송하기
즉 카메라에 임의의 뮬체가 감지되면 (카메라 광량을 가리면) LED OFF 하고 손바닥이나 임의의 물체를
치우면 LED 들어오고 상황을 LCD에 표시하고 통시으로 R-Pi로 전송하기
4. 손 제스처를 인식하여 왼족으로 이동하면 LED 8개가 좌로 1개식 쉬프트하고, 손바닥이 오른족으로 이동하면 LED 8개
오른족으로 1개씩 쉬프트 되게한다.
5. 얼굴위치를 인식하여 위로하면 UP 카운터 하고 아래로 하면 다운 카운터하고 왼쪽은 짝수 업 카운터 하고, 오른쪽은 홀수
다운 카운터하고, 중앙이면 카운터는 정지하게 한다. 이때 표시는 FND 및 LCD, LED에표시하고, 라즈베리파이 에서도 표시한 후 서버로 전송한다.
6. 5번 안으로 얼굴위치로 상하좌우 4개의 위치 led에 표시한다.
7. 5번 안으로 얼굴 위치에 따른 금일 실습한 openCV Key 처리 코딩 프로그래멩서 적색원을 상하죄우로 얼굴 위치 인식에따라
적색원이 상하좌우로 이동하게한다
8. 5번안에서 좌우 눈 깜박임 을 인식하여 카운한 후 금일 실습한 Key 처리 프로그램의 적색 원 사이즈를 윈쪽 눈은 중가,
오른족 눈은 감소, 시키며, 이때,. FND, LCD, LED에서는 왼쪽눈은 업 카운트 되고, 오른족 눈은 다운까운트 되게 한다.
카운터 표시는 FND 및 LCD에 한다.
모든 정보는 네트워크 를 통해 서버로 전송한다
9 시스템 구성은 기존처럼 한다,
즉 arduio에는 led, fnd, lcd, 온습도 센서를 사용하고, 그 데이터를 라즈베리파이에 시리얼 통신으로 보내고
라즈베리파이에서는 서버인 PC 컴퓨터로 보내어 실시간으로 데시보드에서 표시한다.
10. 데시보드는 PC 영상화면, 카메라 입력화면을 표시하고, 인식상태를 표시한다, 시스템 상황을 표시한다.
11. PC는 서버로 활용하고 라즈베리파이는 클라이언트로 한다.
12. Arduino 프로그램은 Vs Code 에서 파이썬으로 코딩한다.
13. 라즈베리파이에서는 카메라로 얼굴을 인식하여 최대한 사용자하고 가까울때, 그때부터 라즈베리파이를 조작가능하게 하며,
클라이언트로 동작하게 프로그램 한다. 이때 사용하는 프로그램은 Python(카메라 부분 및 GPIO 제어 부분)으로 하고,
대시보드는 프로그램은 Node_RED로 한다.
13. PC 서버는 카메라 부분은 Python으로 코딩하고, 대시보드는 Node-RED로 프로그램 한다.
정리하면
디바이스단 : Arduino = Python 으로 코딩
라즈베리파이 : 클라이언트 단, 카메라 및 제어 부분은 Python으로 코딩
대시보드는 Node-RED로 코딩한다.
PC : 서버단, 원격 모니터링 및 제어, == 카메라 부분 : Python으로 코딩
대시보드 : Node_RED, Python으로 프로그램
PC, 라즈베리파이 : 카메라 OpenCV 활용
이 번 프로젝트는 C언어를 사용 안 한다.
네트워크 통신 : WiFi 사용
하다가 잘 안되면 라즈베리 파이 든, PC든 카메라 프로그램 부분하고 네트워크 통신 부분은 Processing으로
대체하고, 서버 대시보드는 웹에서 프로그램 한다
클라이언트 만 Node-RED로 대시보드 프로그램 한다. = 하다가 잘 안될경우