Skip to content

Latest commit

 

History

History
156 lines (111 loc) · 3.61 KB

README_KO.md

File metadata and controls

156 lines (111 loc) · 3.61 KB

mowa-wifi-sensing-labelling

이 프로젝트는 CSI(채널 상태 정보) 데이터를 데이터베이스에 실시간으로 저장할 수 있게 해 주고, 이를 보다 용이하게 해 줍니다 CSI 데이터 처리를 위한 와이파이 센싱 연구

본문

시작하기

Dependencies

하드웨어

소프트웨어

  • Linux Ubuntu

    I did it on Linux for the experiment, but it is executable regardless of OS (Windows, macOS).

  • MySQL Server == 8.0.33
  • Python == 3.8

Python Libraries - Ubuntu

Open
  • Flask
  • mysql-connector-python

Python Libraries - Raspberry Pi 4

Open
  • pypcap
  • dpkt
  • keyboard
  • pandas
  • numpy
  • requests

설치

  1. project repository 복제

    git clone https://github.com/pjs990301/mowa-wifi-sensing-labelling.git
  2. Flask Server 설치

    pip install -r requirements_server.txt
  3. CSI 데이터 전송을 위한 Raspberry Pi 4 구성

    pip install -r requirements_pi.txt

사용

프로그램 실행

  1. 플라스크 서버용 app.py 실행

    python app.py 
  2. 모니터 모드를 활성화한 상태에서 csi_send_server.py를 실행

    sudo python3 csi_send_server.py 

구성

  1. CSI 데이터 추출 Mac 주소 필터링

    selected_mac = 'Enter your AP MAC Address'
  • CSI 데이터 추출을 위해 AP MAC 주소를 필터링하려면 csi_send_server.py에서 21번째 줄을 수정해야 합니다.
  1. 플라스크 및 데이터베이스 관리

    {
       "publish_SERVER": {
         "host": "0.0.0.0",
         "port": "SERVER_PORT"
       },
       "Database": {
         "host": "DATABASE_IP",
         "user": "USER_NAME",
         "password": "USER_PASSWORD!",
         "database": "DATABASE_NAME"
       },
       "private_SERVER": {
         "host": "SERVER_IP",
         "port": "SERVER_PORT"
       }
    }
  • 데이터베이스 이름이 변경되면 해당 이름에 따라 쿼리를 변경해야 합니다.
    현재 64개의 부반송파가 조회되고 있습니다. 부반송파를 더 저장하려면 columns_query를 수정해야 합니다

  • Table 생성 예제

    CREATE TABLE [Your Database Name].{table_name}(
    {
      columns_query
    });
  • Table name is default {label name}_{Collection start time}_{Collection end time}

Demo

Demo.mp4

라이선스

이 프로젝트는 MIT 라이선스로 라이선스가 부여됩니다. 자세한 내용은 LICENSE.md 파일을 참조하십시오