Skip to content

Hongbeob/cellcheck

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

📌 담당 역할 (황홍법)

  • 하드웨어 설계 및 제어

    • Jetson Nano – Arduino 간 UART 통신 기반으로 로봇팔, 컨베이어, 센서 제어 구조 설계
    • 직렬 방전 회로 설계 및 INA219 센서를 통한 전압·전류 측정, SOC(잔량) 계산 구현
  • 통신 시스템 구축

    • ROS2 토픽 발행을 통해 하드웨어 상태 정보를 관리하고, MQTT 프로토콜로 서버에 실시간 전달
    • 센서 트리거 발생 시 카메라를 자동 구동하고 프레임을 WebSocket으로 서버에 전송
  • 시스템 통합 및 프로젝트 기여

    • 발열 제어 및 신뢰성 확보를 위한 임베디드 로직 구현
    • 발표 자료 제작 및 기술 설명 담당

🔧 문제와 해결 과정

1. IR 센서 트리거 반복 발동 문제

  • 문제: 로봇팔이 건전지를 방전시킨 뒤 원위치로 돌아오는 과정에서, 하드웨어 구조상 적외선 센서를 다시 지나면서 불필요하게 트리거가 여러 번 발동되는 문제가 발생.
  • 해결: ROS 노드에서 상태 변수를 관리하며 예외처리 로직을 추가.
    • 방전 완료 시 3초간 IR 신호 무시
    • 이상 판정 시 5초간 IR 신호 차단
      → 이 방법으로 불필요한 이벤트가 완전히 사라지고 안정적으로 동작함을 확인.

2. 방전 회로 발열 문제

  • 문제: 저렴한 직렬 저항 회로를 사용했을 때, 방전 과정에서 과열로 브레드보드가 손상되는 문제가 발생.
  • 해결:
    • 회로를 두 개로 분리
    • 쿨러와 온도 센서를 장착해 실시간 온도 모니터링
    • 27℃ 이상 시 → 쿨러 작동
    • 이후 온도가 계속 상승하면 → 릴레이 스위치를 통해 두 번째 회로로 자동 전환
      → 실험 결과, 설정 온도 이상으로 저항 온도가 올라가지 않아 발열 문제를 완전히 해소.

📋 목차

  1. 서비스 소개

  2. 팀원

  3. 주요 기능

  4. 주요 기술

  5. 산출물 (하드웨어, 아키텍쳐, API 명세서, ERD)


🔋 서비스 소개

🗓️ 프로젝트 기간 : 2025.04.14 ~ 2025.05.23 (6주)

개요

SSAFY 12기 2학기 자율 프로젝트 임베디드

CellCheck임베디드와 AI기술을 이용한 폐건전지 분류 자동화 시스템입니다.

CellCheck임베디드와 AI기술을 활용하여 관리자가 상주하지 않아도 자동으로 폐건전지를 분류할 수 있는 시스템입니다.

사용자는 CellCheck를 활용해 폐건전지의 외관 검사, 잔류 전하 측정, 방전 등의 과정을 자동화할 수 있으며, 이를 통해 폐건전지로 발생하는 화재 위험을 줄일일 수 있습니다. 또한 시스템 관리자는 관리자 페이지를 통해 원격으로 시스템 상태를 확인할 수 있습니다.

🤝 팀원

강민석 프로필 김동욱 프로필 김웅기 프로필 류현석 프로필 이진형 프로필 황홍법 프로필
강민석
Infra/BE/FE
김동욱
Embedded
김웅기
AI/FE
류현석
Embedded
이진형
Embedded
황홍법
Embedded

💻 주요 기능

👤사용자 페이지(토글을 눌러 펼쳐주세요)
  • 외관 검사 모니터링: 건전지 외관 검사 결과 및 배터리 타입(AA, AAA, C, D) 확인
  • 방전 상태 모니터링: 배터리 잔량(SoC) 및 방전 진행 상태 실시간 표시
  • 배터리 통 상태: 불량통/방전완료통 가득참 알림 확인
  • 환경 모니터링: 방전 회로 온도, 실내온도, 쿨링팬 작동 상태 표시
  • 공지사항 확인: 관리자가 등록한 시스템 점검, 긴급, 일반 공지 확인
🛠️관리자 페이지(토글을 눌러 펼쳐주세요)
  • 시스템 모니터링: Jetson Nano의 CPU/SOC 온도, CPU/메모리 사용률 실시간 확인
  • 배터리 처리 현황: 처리된 배터리 타입, 상태, 처리 결과 기록 조회
  • 사용자 관리: 시스템 사용자 등록 및 계정 정보 조회/관리
  • 공지사항 등록: 시스템 점검, 긴급, 일반 공지 등록 및 관리
  • 배터리 통 알림: 불량통/방전완료통 가득참 상태 알림 및 조치 안내
🔋 방전 기능 흐름
  1. 로봇팔이 배터리를 방전 회로에 연결 (핀을 통해 접촉).
  2. INA219 전류/전압 센서를 통해 방전 중 버스 전압과 전류를 측정.
  3. 측정된 값은 I2C 통신으로 모니터링용 아두이노에 전달됨.
  4. 아두이노는 수신된 값으로부터 로드 전압을 계산.
  5. 버스 전압, 로드 전압, 전류 데이터를 시리얼 통신을 통해 Jetson Nano에 전송.
  6. Jetson Nano는 이를 바탕으로 SoC(잔여 충전량) 계산 후, MQTT 통신으로 서버에 전송.
  7. SoC가 기준 이하로 판단되면, Jetson Nano는 방전 완료 메시지컨트롤러 아두이노에 전달.
  8. 아두이노는 로봇팔을 제어하여 배터리와 회로를 안전하게 분리.
🌡️ 과열 방지 기능 흐름
  1. 방전 회로에 저항이 연결되어 방전이 진행됨.
  2. 저항의 온도는 온도 센서를 통해 실시간 모니터링됨.
  3. 온도가 지정 임계값 이상이 되면, 릴레이를 제어하여 쿨링팬을 작동시킴.
  4. 온도가 위험 수준 이상이면, 해당 회로를 릴레이로 차단하고 다른 채널의 방전 회로로 전환.
  5. 과열된 회로의 온도가 정상 범위로 떨어지면, 다시 연결 가능 상태로 초기화됨.
로봇팔 방전 제어 흐름
  1. 카메라 사진의 bbox 좌표를 전달.
  2. bbox 좌표를 받아서 로봇팔 좌표계로 변환.
  3. 변환된 좌표를 목표로 로봇팔이 움직이도록 각각의 서보모터의 각도를 구함.
  4. **URDF(Unified Robot Description Format)**를 사용한 **역기구학(또는 직접 계산)**으로 각도를 구함.
  5. 구한 각도시리얼 통신으로 아두이노에 전송.
  6. 아두이노에서 각각의 서보모터순서대로 작동
로봇팔 복귀 제어 흐름
  1. 방전 완료 신호를 수신
  2. 수신한 신호에 맞춰서, 아두이노에 시리얼 통신으로로 명령 전달.
  3. 아두이노에서 받은 명령대로 서보모터 각 각도순서대로 움직여서 저장한 초기값으로 복구.
  4. 복귀 완료 후 완료 보고를 시리얼 통신으로 보고.

🧑‍💻 주요 기술

[ CellCheck ]

  • Embedded
  • AI

[ FRONT ]

  • WebSocket/MQTT - 실시간 데이터 통신 및 모니터링
  • Context API - 전역 상태 관리 (배터리 데이터, 시스템 상태)
  • 반응형 디자인 - 모바일/데스크톱 호환 UI

[ BACK ]

  • WebSocket 서버 - 실시간 데이터 스트리밍
  • MQTT 브로커 - 임베디드 장치와 서버 간 통신
  • JWT 인증 - 사용자/관리자 권한 관리
  • 시계열 데이터 관리 - 배터리 상태 및 시스템 모니터링 데이터 저장

[ AI ]

  • Yolov8-seg
  • OpenCV 기반 마스크 → bounding box 변환 및 비율 계산

📦 산출물 (Deliverables)

1️⃣ 하드웨어 (Hardware)
# 사진 구성품 설명
0 전체 시스템 주요 모듈이 한눈에 보이는 전경
1 Power Supply 200 W 12 V SMPS
2 컨베이어 / 스텝모터 이송 모듈 + 드라이버
3 MG946R Servo 차단판 A 구동
4 Arduino Mega 모터·센서 제어 MCU
5 Servo + Actuator 차단판 B & 불량 배출
6 Jetson Nano AI 추론 & 통합 제어
7 Arduino + INA219 + GY-906 + Resistance 방전회로 & 전류/전압 측정 & 온도 모니터링
8 Arduino + Power Supply + Relay 쿨링팬 전원 제어
9 4개의 MG996R Servo 4자유도 알루미늄 로봇팔 제어
2️⃣ 시스템 문서(아키텍처, API 명세서, ERD)
문서 미리보기
시스템 아키텍처
API 명세서
ERD

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published