README 문장 정리
This commit is contained in:
1 parent
dca2df556a
commit
49157b3bc3
1 file changed
+44
-39
@@ -1,59 +1,64 @@
|
|||||||
<img width="1260" height="891" alt="Image" src="https://github.com/user-attachments/assets/600a07b7-64cd-4822-b122-ef01c0ea5cd6" />
|
|
||||||
|
|
||||||
# Intel Geti + AI QC Conveyor
|
# Intel Geti + AI QC Conveyor
|
||||||
인텔 Geti + 인공지능 QC 컨베이어
|
|
||||||
|
|
||||||
|
<img width="1260" height="891" alt="AI QC Conveyor" src="https://github.com/user-attachments/assets/600a07b7-64cd-4822-b122-ef01c0ea5cd6" />
|
||||||
|
|
||||||
## 프로젝트 소개
|
Intel Geti로 학습한 모델을 사용해 컨베이어 위 병뚜껑 상태를 분류하는 프로젝트입니다.
|
||||||
인건비 절감을 위한 생산 공장 컨베이어 자동화 장치 입니다.
|
|
||||||
<br>
|
|
||||||
|
|
||||||
## 개발 기간
|
카메라로 병뚜껑 이미지를 받고, Python 프로그램에서 ONNX 모델을 실행합니다. 판정 결과는 Arduino Mega로 보내 컨베이어와 액추에이터 동작에 사용합니다.
|
||||||
* 25.09.24 - 25.10.22
|
|
||||||
|
## 기간
|
||||||
|
|
||||||
|
- 2025.09.24 ~ 2025.10.22
|
||||||
|
|
||||||
|
## 맡은 부분
|
||||||
|
|
||||||
### 맴버구성
|
|
||||||
| 이름 | 담당 |
|
| 이름 | 담당 |
|
||||||
|------|------|
|
| --- | --- |
|
||||||
| 서채건 | PM, GUI 구성, 코드 통합 |
|
| 서채건 | PM, GUI 구성, 코드 통합 |
|
||||||
| 김동현 | 코드 통합, PPT 제작, 발표 |
|
| 김동현 | 코드 통합, PPT 제작, 발표 |
|
||||||
|김선곤|GUI 구성, DB 읽기 쓰기 로직|
|
| 김선곤 | GUI 구성, DB 읽기/쓰기 |
|
||||||
|박서정|데이터셋 학습 및 검증, 스티커 유무 감별|
|
| 박서정 | 데이터셋 학습, 스티커 유무 판정 |
|
||||||
|조민재|데이터셋 학습 및 검증, 오염 비율 계산|
|
| 조민재 | 데이터셋 학습, 오염 비율 계산 |
|
||||||
|
|
||||||
|
## 사용한 것
|
||||||
|
|
||||||
### 개발 환경
|
|
||||||
- `Intel Geti`
|
|
||||||
- `Python 3.12.3`
|
- `Python 3.12.3`
|
||||||
|
- `Intel Geti`
|
||||||
|
- `OpenVINO / ONNX`
|
||||||
|
- `Tkinter`
|
||||||
- `Arduino Mega`
|
- `Arduino Mega`
|
||||||
- `MariaDB 10`
|
- `MariaDB 10`
|
||||||
- `Tkinter`
|
- `PySerial`
|
||||||
|
|
||||||
## 주요 기능
|
## 동작
|
||||||
#### 모델 1 작동
|
|
||||||
- Pink 병뚜껑 QC 스티커 유무, 오염 유무
|
|
||||||
- No 스티커 or 오염 30% 초과 or Purple 병뚜껑 -> 완전불량
|
|
||||||
- 스티커 and 오염 0% 초과 30% 이하 -> 부분불량
|
|
||||||
- 스티커 and 오염 0% -> 정상
|
|
||||||
|
|
||||||
#### 모델 2 작동
|
- 카메라 이미지를 받아 병뚜껑 색상과 상태를 확인합니다.
|
||||||
- Purple 병뚜껑 QC 스티커 유무, 오염 유무
|
- 모델 1은 Pink 병뚜껑을 기준으로 스티커 유무와 오염 여부를 봅니다.
|
||||||
- No 스티커 or 오염 30% 초과 or Pink 병뚜껑 -> 완전불량
|
- 모델 2는 Purple 병뚜껑을 기준으로 스티커 유무와 오염 여부를 봅니다.
|
||||||
- 스티커 and 오염 0% 초과 30% 이하 -> 부분불량
|
- 스티커가 없거나 오염 비율이 30%를 넘으면 완전불량으로 봅니다.
|
||||||
- 스티커 and 오염 0% -> 정상
|
- 스티커가 있고 오염 비율이 0% 초과 30% 이하이면 부분불량으로 봅니다.
|
||||||
|
- 스티커가 있고 오염이 없으면 정상으로 봅니다.
|
||||||
|
- 관리자 화면에서 컨베이어와 액추에이터를 수동으로 움직일 수 있습니다.
|
||||||
|
|
||||||
#### 관리자 모드
|
## 파일
|
||||||
- 수동 컨베이어 제어
|
|
||||||
- 수동 엑츄에이터 조작
|
|
||||||
|
|
||||||
## 파일 구조
|
```text
|
||||||
```
|
.
|
||||||
team2/
|
├─ run.py
|
||||||
|
├─ arduino/arduino.ino
|
||||||
├─ iotdemo/
|
├─ iotdemo/
|
||||||
│ ├─ __init__.py
|
|
||||||
│ ├─ debounce.py
|
|
||||||
│ ├─ factory_controller.py
|
│ ├─ factory_controller.py
|
||||||
│ ├─ pins.py
|
|
||||||
│ ├─ pyduino.py
|
│ ├─ pyduino.py
|
||||||
│ └─ pyft232.py
|
│ ├─ pyft232.py
|
||||||
├─ MODEL_FILE
|
│ ├─ debounce.py
|
||||||
└─ run.py
|
│ └─ pins.py
|
||||||
|
├─ class.onnx
|
||||||
|
├─ det.onnx
|
||||||
|
└─ seg.onnx
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## 메모
|
||||||
|
|
||||||
|
- 모델 파일은 repo에 포함되어 있습니다.
|
||||||
|
- Arduino 코드는 컨베이어와 액추에이터 제어를 맡습니다.
|
||||||
|
- Python 코드는 모델 실행, 화면 표시, 장치 통신을 묶습니다.
|
||||||
Reference in new issue
Block a user