SIM7500 GPS 사용

환경


  • NanoPi NEO 2
  • Armbian
  • SIM7500JC
  • GPS Antenna - External Active Antenna - 3-5V 28dB 5 Meter SMA
  • $ cat /etc/armbian-release 
    # PLEASE DO NOT EDIT THIS FILE
    BOARD=nanopineo2
    BOARD_NAME="NanoPi Neo 2"
    BOARDFAMILY=sun50iw2
    VERSION=5.49
    LINUXFAMILY=sunxi64
    BRANCH=next
    ARCH=arm64
    IMAGE_TYPE=user-built
    BOARD_TYPE=conf
    INITRD_ARCH=arm64
    KERNEL_IMAGE_TYPE=Image
    $ cat /etc/debian_version 
    9.4
    

    액티브 안테나 전원 회로



    sim7500a_sim7500e_sim7500je_sim7500jc_sim7500s_sim7500sa_hardware_design_v1.01.pdf 39p에 설명 된 그림 30부터.



    최저한 오렌지로 둘러싼 곳만 만들면 우선 액티브 안테나에 전원을 공급할 수 있다.
    (π 매치의 정수 어떻게 결정하면 좋은지 잘 모르기 때문에 매칭 회로는 생략했다)

    GPS 활성화



    GPS는 공장 출하값에서는 OFF와 같이,
    $ screen /dev/ttyUSB2 115200
    

    에서 SIM7500의 AT 포트를 열고,
    AT+CGPS=1
    

    에서 독립형 모드에서 GPS 세션 시작.
    (AGPS도 사용할 수 있는 것 같지만, 이번은 LTE가 off 상태에서도 GPS를 사용할 필요가 있었으므로 독립형 모드)
    AT+CGPSAUTO=1
    

    를 설정해 두면, 다음에 모듈 기동시부터 GPS 세션이 자동적으로 개시된다.
    $ cat /dev/ttyUSB1
    

    에서 NMEA 문장이 시끄럽게 흘러 오면 GPS는 움직이고있다 (실제로 위성을 잡을 수 있는지 여부를 제외하고)

    gpsd 설치



    NMEA 문장에 대해 배우고 자력으로 퍼스 해도 좋을 것 같지만, 그것은 조금 하고 싶지 않았기 때문에 정평의 gpsd를 사용한다.
    sudo apt-get update
    sudo apt-get install gpsd gpsd-clients
    

    gpsd 설정



    디폴트의 ​​unit 파일이 설정 파일로서 /etc/default/gpsd (을)를 읽어 가게 되어 있지만, /etc/gpsd/gpsd.conf (을)를 읽어 가도록(듯이) 변경하고 싶으므로, 디폴트의 unit 파일을 덧쓰기하는 설정을 작성한다.
    참고 : htps : // 이 m / n v 소 fts / ms / 529 422 b8 326401c39
    $ sudo systemctl edit --full gpsd
    

    나노가 시작되어 싫어서,
    sudo update-alternatives --config editor
    

    그런 다음 vim을 선택하면 vim에서 편집 할 수 있습니다.

    내용은 다음과 같이 한다.
    [Unit]
    Description=GPS (Global Positioning System) Daemon
    Requires=gpsd.socket
    # Needed with chrony SOCK refclock
    After=chronyd.service
    
    [Service]
    #EnvironmentFile=-/etc/default/gpsd
    EnvironmentFile=/etc/gpsd/gpsd.conf
    ExecStart=/usr/sbin/gpsd -N $GPSD_OPTIONS $DEVICES
    
    [Install]
    Also=gpsd.socket
    
    /etc/gpsd/gpsd.conf 는 다음과 같이 한다.

    /etc/gpsd/gpsd.conf
    # Start the gpsd daemon automatically at boot time
    START_DAEMON="true"
    
    # Use USB hotplugging to add new USB devices automatically to the daemon
    USBAUTO="false"
    
    # Devices gpsd should collect to at boot time.
    # They need to be read/writeable, either by user gpsd or the group dialout.
    DEVICES="/dev/ttyUSB1"
    
    # Other options you want to pass to gpsd
    GPSD_OPTIONS=""
    

    gpsd 동작 확인


    cgps
    

    왼쪽 테두리 안에
    Status:     3D FIX (X secs)
    

    라고 나오면, 측위 할 수 있는 상태입니다.
    콜드 스타트가 되므로, 3D fix 까지 몇 분 정도 걸린다.

    위도 경도 고도 읽기



    cgps에서도 출력되는 JSON 같은 부분만 원하는 경우 gpspipe 명령을 사용합니다.
    gpspipe -w
    

    계속 ...

    좋은 웹페이지 즐겨찾기