센서와 휴대폰 사이에 가능한 유선통신방법

topics 504 네트워킹

일단 apple폰 (ios)와 센서간의 통신을 이용하려면 MFI에 등록해야한다.
표준 USB 장치의 경우는 안해도 된다고 한다.
하드웨어간의 통신은 ios, android 분기처리해서 개발해야함
ios : https://mfi.apple.com/

센서와의 직접 통신(유선)

  • CDC(Communication Device Class)를 사용하는 것을 말함
  • USB Host Mode를 이용하여 앱이 usb를 제어하고 통신할 수 있다.
    https://accessories.android.com/demokit/?hl=ko
  • 디바이스에 센서가 직접 쓰고 저장하고 센서의 상태를 확인하려면 이 통신을 이용해야할 것으로 보인다.
  • 각 기기의 이용 내부 프레임 워크
    • android : UsbManager
    • ios : External Accessory
  • 시리얼 통신도 이 센서 통신중 하나
    • UART를 이용하여 데이터를 직렬방식으로 전송하는 것
    • 직접통신을 한다면 아마 시리얼 통신을 이용하지않을까..
  • 장점
    • 빠르다
    • 앱이 usb를 제어할 수 있다.
  • 단점
    • ios까지 고려한다면 mfi 인증을 위한 비용, 시간 나감

표준 usb장치

여기서의 표준 usb장치는 USB Mass Storage 장치(예: USB 드라이브)나 HID 장치(예: 키보드, 마우스) 를 말함

  • USB Mass Storage 장치
    • 파일로 인식함
    • 장점
      • mfi인증 안해도되는듯함
    • 단점
      • 센서의 상태를 확인할 수 없음
      • 파일형태로 데이터를 주고받을 수는 있을 듯함..
        • 예를들어 최근 수정일과 제목이 맞는다면 이를 금방 측정한 데이터로 간주하고 사용할 수는 있을것
  • HID
    • 시스템(os)이 관리하는 장치로 앱에서 직접 처리가 불가능함
    • 따라서 이방식은 고려사항이 아님

어떤 곳에 저장하는 것이 편한가

이걸 알아보게 된 계기는 회사분이 어떤 저장소에 저장하는 것이 편하냐는 질문에서 비롯되었다.
일단 지금까지 알아본 바로는 로컬기기에 직접 저장하지는 못함(통신할 수는 있음)
하지만 일단 쓸수 있다고 가정하고 csv를 로컬내 어느저장소를 쓸지에 대해 알아보도록함.

결론

표준 usb를 이용할 경우 센서의 상태가 확인 불가능하며 데이터의 무결성을 보장하지 못하며 추가적인 기능을 추가하기도 힘듭니다. 따라서 일단 android를 타겟으로하여 센서와 직접통신을 이용하여 개발하는것이 용이해보입니다.