D
DCSFM
Double Click Smart Factory Mechanic

About DCSFM

DCSFM(Double Click Smart Factory Mechanic)은 스마트 팩토리 환경에서 주문·작업·운송·적재 흐름을 통합 관리하는 시스템입니다.

Goal

자동화된 생산 및 물류 흐름을 실시간으로 모니터링하고, 로봇 기반 공정을 효율적으로 제어하는 것을 목표로 합니다.

System Dashboard

서버, 주문, 공정 및 터틀봇 상태를 확인합니다.

대기중 Last Update: -
        { "message": "아직 서버 연결 전입니다." }
        

Server

Status UNKNOWN
Last Check -

TurtleBot

ROS DISCONNECTED
Battery -
Last Update -

E-Stop

Status UNKNOWN

Process

State UNKNOWN
Current Order -

Pending Orders

0

현재 대기 중인 주문

Total Cubes

0
Red 0 Green 0 Blue 0

Recent Orders

순서 주문 ID 타워 Red Green Blue 총수량 상태
주문 데이터가 없습니다.

Order Monitor

주문 목록, 색상별 누적 수량 및 공정 상태를 확인합니다.

대기중
Red 0 누적 수량
Green 0 누적 수량
Blue 0 누적 수량
Total 0 전체 큐브

주문 목록

등록된 전체 주문과 현재 처리 상태입니다.

0 orders
순서 주문 ID 타워 Red Green Blue 총수량 상태 생성 시간
주문 데이터가 없습니다.

수신 정보

API 상태 UNKNOWN
마지막 갱신 -
E-Stop UNKNOWN
공정 상태 UNKNOWN
{}

TurtleBot Monitor

터틀봇의 ROS 연결, 주행 상태, 위치 및 카메라 상태를 확인합니다.

대기중 Last Update: -

Connection

ROS DISCONNECTED
Robot ID -
Mode UNKNOWN

Battery

-

Velocity

Linear 0.00 m/s
Angular 0.00 rad/s

Position

X 0.00 m
Y 0.00 m

Current Task

Order -
Destination -

Safety

E-Stop RELEASED
Camera DISCONNECTED

EEF Raw Camera

/eef_camera/image_raw 실시간 화면

No Signal
TurtleBot EEF Camera
NO CAMERA SIGNAL 카메라 스트림 연결 전입니다.
Detected Object -
Confidence -
FPS -
Frame Time -

UWB Position Monitor

앵커 4개를 기준으로 터틀봇 태그 위치를 시각화합니다.

Disconnected
A01 · (0.04, 1.09)
A02 · (0.04, 0.04)
A03 · (1.71, 1.09)
A04 · (1.71, 0.04)
Conveyor · A01
TurtleBot
UWB Status DISCONNECTED
Tag ID turtlebot_1
X Position 0.00 m
Y Position 0.00 m
Last Update -
ROS Topic /turtlebot3_position/uwb/raw
기준 평면: X 0–1.75 m · Y 0–1.13 m

Raw Status

        { "message": "아직 상태를 불러오지 않았습니다." }
            

System Architecture

시스템 전체 구성/데이터 구조도

DCSFM System Architecture Diagram

전체 흐름: 주문/관리(UI) → 서버(큐/명령/API) → 로봇 노드(Mirobot, Turtlebot + OpenManipulator, Tower) → 완료 토픽 기반 상태 갱신

물품 주문

사용자가 주문 정보를 입력하고 서버로 주문을 등록하는 흐름

물품 주문 플로우
  • tower 선택 및 r/g/b 수량 입력
  • 유효성 검사(예: r+g+b 조건) 후 서버로 주문 전송
  • POST /order로 주문 생성 → 서버 큐에 적재

관리 메뉴

큐 확인 및 Start/E-Stop 같은 제어 명령을 서버로 전달

관리 메뉴 플로우
  • GET /admin/queue로 현재 주문 큐 조회
  • estop 버튼 → POST /command type="estop"
  • start 버튼 → POST /command type="start"
  • 조회 결과를 표/리스트로 갱신

서버

주문 큐/현재 작업/current/명령(estop/start)을 관리하는 중앙 허브

서버 플로우
  • Order/Queue/current 상태 관리
  • 주문 생성(POST /order) → 큐 업데이트
  • 관리자 큐 조회(GET /admin/queue)
  • 명령 처리(POST /command) → estop/start 상태 반영
  • 로봇 토픽 구독/발행 결과 기반으로 다음 단계 진행

Mirobot

공정 로봇(아두이노 모터) 제어 및 완료 토픽 발행

Mirobot 플로우
  • topic /estop 구독 → 즉시 정지(안전)
  • topic /mr_move 구독 → 아두이노 모터 구동
  • 큐브 위치(카메라 중앙) 확인 → 정지
  • 인식 결과/공정 완료 후 topic /mr_done 발행

Turtlebot + OpenManipulator

자율주행 + 집기/적재 + 배송 완료 상태를 토픽으로 통지

Turtlebot+OpenManipulator 플로우
  • topic /tb_move 구독 → 배송지로 이동
  • 배송 완료 신호를 기다리며 topic /delivery_done 구독
  • 완료 수신 시 다음 루프/작업 단계로 전환

Tower

타워(수령/거리 판단) 이벤트 처리 후 배송 완료 토픽 발행

Tower 플로우
  • topic /tower_delivery 구독 → 배송 이벤트 수신
  • 앵커-태그 거리 판단 로직 수행
  • 조건 만족 시 topic /delivery_done 발행

Project Details

프로젝트의 주요 기능 및 진행 사항입니다.

  • 주문 처리 시스템
  • 로봇 작업 할당
  • 실시간 상태 모니터링
  • WebSocket 기반 통신

Member

DCSFM 프로젝트 팀 구성

권택주

  • 터틀봇 제어 및 서버 개발
  • 이동형 매니퓰레이터 제어 및 공정

김사림

  • 매니퓰레이터 캘리브레이션
  • 로봇팔 제어 Path Planning

신하나

  • 터틀봇 상태 GUI 표현
  • 터틀봇 컨트롤러 조종

김정윤

  • 서버 관리
  • 고정형 매니퓰레이터 제어 및 공정

Contact

Email dcsfm.lab@gmail.com

Github https://github.com/DCSFM-Lab