다중 연결 자산 추적 응용 제품을 효율적으로 구현하는 방법

작성자: Jens Wallmann

가축 모니터링, 기업 차량 관리, 물류와 같은 고급 자산 추적 응용 제품은 추적 대상의 현재 상태 정보 및 위치 좌표를 자동으로 캡처합니다. 내장된 트랜스폰더는 로깅 데이터를 클라우드로 전달하고 제어 센터 또는 모바일 장치에서 이를 사용할 수 있도록 합니다. 작업 현장에서는 물류 데이터 교환, 공정 이력 및 모니터링 데이터 교환, 구성 변경 또는 트랜스폰더 메모리의 펌웨어 업데이트를 위해 단거리 무선 데이터 업데이트가 필요한 경우가 많습니다.

이러한 자산 추적 시스템 개발자는 다양한 장거리 및 단거리 무선 프로토콜을 통해 통신하고 광범위한 측정 데이터를 수집하며 배터리 교체 없이 수개월간 작동하고 인터넷 서비스를 통해 모든 데이터를 사용할 수 있게 하는 다기능 센서 트랜스폰더를 설계해야 하는 과제에 직면해 있습니다. 또한 설계자는 이러한 모든 과제를 비용을 줄이고 출시 기간을 단축하면서 달성해야 합니다.

방대한 작업량에 부담스러울 수도 있지만 설계자는 필요한 하드웨어와 소프트웨어의 대부분을 이미 통합시킨 개발 도구를 사용하여 많은 시간과 에너지를 절약할 수 있습니다.

이 기사에서는 여러 응용 제품을 보며 고급 자산 추적의 기술적 요구 사항에 대해 설명합니다. 그런 다음 시제품 설계, 테스트, 평가에 필요한 노력을 크게 줄여주는 STMicroelectronics의 다기능 개발 키트를 소개합니다. 또한 개발 키트의 주요 기능적인 특징에 대한 통찰력을 제공하고 개발자가 코딩할 필요 없는 결합된 단일 칩 시스템(SoC) 모듈의 기능을 쉽게 맞춤 설정한 다음 클라우드에서 데이터를 검색하고 시각화하는 방법을 보여줍니다.

무선 측정 트랜스폰더의 특징

자산 추적의 응용 분야는 광범위하며 각 응용 분야에는 트랜스폰더 및 연결된 네트워크를 위한 매우 특수한 기술 장비가 필요합니다. 그림 1은 네 가지 응용 카테고리로 무선 측정 트랜스폰더의 기술적 특징을 보여줍니다.

무선 측정 트랜스폰더의 특징 구성도(확대하려면 클릭)그림 1: 무선 측정 트랜스폰더의 특징은 자산 추적 응용 분야에 따라 다릅니다. (이미지 출처: STMicroelectronics)

물체와 함께 운반되는 자율 트랜스폰더는 환경적 영향, 물체의 위치 및 상태를 감지하여(감지, 그림 1) 이를 저장하고 다양한 무선 인터페이스(연결)를 통해 다음 기회에 동보 통신해야 합니다. 신호 처리와 다양한 무선 프로토콜의 변환은 고도의 데이터 보안(‘처리 및 보안’)을 갖춘 충분히 강력한 마이크로 컨트롤러(MCU)에 의해 처리되어야 합니다. 또한 MCU가 에너지 관리(‘전력 관리’)를 제어하므로 트랜스폰더 배터리의 작동 수명이 길어집니다.

자산 추적 응용 제품에 필요한 데이터 가용성은 센서의 복잡성에 영향을 미치며 적절한 연결이 필요합니다. 택배와 같이 이미 알고 있고 예측 가능한 운송 경로의 경우 단순히 측정 신호를 트랜스폰더에 저장하기만 하면 됩니다. 그 이후 다음 물류 확인 지점에서 Bluetooth 저에너지(BLE) 또는 근거리 무선 통신(NFC)을 사용하여 근거리에서 데이터를 읽어올 수 있습니다.

기업 차량 관리, 물류, 장거리 가축 모니터링의 경우 클라우드를 통한 트랜스폰더에서 최종 사용 응용 제품으로의 데이터 전송이 가능한 한 실시간에 가깝게 이루어져야 합니다. 따라서 트랜스폰더가 넓은 범위를 커버하려면 모바일 무선 통신 인터페이스가 필요합니다. 선택할 수 있는 프로토콜에는 장거리 광역 네트워크(LoRaWAN), Sigfox, 협대역 사물 인터넷(NB-IoT)이 있습니다. 선택 이유는 저처리량, 에너지 절약형 데이터 전송에 최적화되어 있기 때문입니다.

개발 노력을 줄일 수 있는 완벽한 자산 추적 에코시스템

자산 추적 응용 제품(ASTRA)을 비용과 시간에 효율적인 방식으로 실현하고자 하는 시스템 설계자는 STMicroelectronics의 다기능 STEVAL-ASTRA1B 개발 플랫폼을 사용할 수 있습니다. 여러 IC 및 SoC 모듈로 구성되어 있는 이 플랫폼은 혁신적인 추적 및 모니터링 솔루션의 시제품 제작, 프로그래밍, 테스트, 평가를 크게 간소화합니다. 이 개발 키트는 모듈식 평가 기판, 펌웨어 라이브러리, 프로그래밍 도구, 회로 설명서, 모바일 장치용 앱, 웹 기반의 시각화 인터페이스로 구성됩니다(그림 2).

즉시 사용 가능한 자산 추적 에코시스템(확대하려면 클릭)그림 2: 즉시 사용 가능한 자산 추적 에코시스템은 무선 측정 트랜스폰더에서 클라우드, 최종 응용 제품까지 확장되어 개발 노력을 줄여줍니다. (이미지 출처: STMicroelectronics)

STEVAL-ASTRA1B 기판은 NFC와 마찬가지로 단거리 및 장거리 연결을 위한 2개의 저전력 SoC 모듈을 기반으로 합니다. 기판에는 데이터 보안 기능을 위한 모듈이 온보드되어 있습니다. 캐리어 기판에는 여러 개의 환경 센서와 동작 센서 그리고 위치 좌표를 제공하고 지오펜싱을 가능하게 하는 글로벌 항법 위성 시스템(GNSS) 모듈이 있습니다. 전력 관리 시스템은 모든 장치 부품의 작동 모드를 조정하고 전원 공급 장치를 제어합니다. 전원 공급 장치는 스위칭 컨버터, 배터리, 배터리 수명을 최대한 연장하기 위한 USB-C 충전 컨트롤러로 구성됩니다. 배송 시 키트에는 480mAh 리튬 폴리머 배터리, 케이스, SMA 안테나(Lora), NFC 안테나가 포함되어 있습니다.

STEVAL-ASTRA1B 기판의 IC와 SoC는 다음과 같이 구성됩니다.

  • 2개의 무선 SoC:
    • STM32WB5MMGH6TR: 2.4GHz 무선 초저전력 Arm® Cortex®-M4/M0 + MCU를 기반으로 하는 이 SoC 모듈은 주 응용 프로세서 역할을 하며 802.15.4, BLE 5.0, Thread, Zigbee를 지원합니다.
    • STM32WL55JCI6: 이 무선 SoC는 무선 초저전력 Arm Cortex M0+ MCU를 기반으로 하며 1GHz 미만(150MHz ~ 960MHz)에서 LoRa, Sigfox, GFSK를 지원합니다.
  • ST25DV64K-JFR8D3: NFC 송신기
  • TESEO-LIV3F: 동시 다중 위성군을 지원하는 GNSS 모듈
  • 환경 및 모션 센서:
    • STTS22HTR: 디지털 온도 센서, -40°C ~ 125°C
    • LPS22HHTR: 압력 센서, 26kPa ~ 126kPa, 절댓값
    • HTS221TR: 습도 및 온도 센서, 0% ~ 100% 상대 습도(RH) I²C, SPI ±4.5% RH
    • LIS2DTW12TR: 가속도계 X축, Y축, Z축, ±2g, 4g, 8g, 16g 0.8Hz ~ 800Hz
    • LSM6DSO32XTR: 가속도계, 자이로스코프, 온도 센서 I²C, SPI 출력
  • STSAFE-A110: 보안 소자
  • 스마트 전력 관리 아키텍처를 갖춘 배터리 작동 솔루션:
    • ST1PS02BQTR: 벅 스위칭 조정기 IC, 포지티브 가변, 1.8V, 출력 1개, 400mA
    • STBC03JR: 리튬 이온 또는 리튬 폴리머용 배터리 충전 IC
    • TCPP01-M12: USB Type-C 및 전력 전송 보호

평가 기판은 +5°C ~ 35°C의 온도에서 작동하고 다음 주파수 대역을 사용합니다.

  • BLE: 2400MHz ~ 2480MHz, +6dBm(1mW 기준의 dB)
  • LoRaWAN: 863MHz ~ 870MHz, +14dBm(펌웨어에 의해 제한됨)
  • GNSS (수신기): 1559MHz ~ 1610MHz
  • NFC: 13.56MHz

STEVAL-ASTRA1B의 내부 구조

ASTRA 트랜스폰더는 데이터 로거처럼 동작하며 데이터 흐름을 세 개의 주요 블록으로 분할합니다. 각 블록은 하드웨어 드라이버, 소프트웨어 드라이버, 응용 제품 계층으로 구성됩니다(그림 3). 데이터 입력(그림 3에서 왼쪽)은 모든 온보드 센서 신호를 캡처합니다. 중앙 블록(그림 3에서 가운데)은 데이터를 처리하고 저장합니다. 마지막으로 저장된 데이터가 무선으로 동보 통신됩니다(그림 3에서 오른쪽). 재구성하거나 펌웨어 업데이트 또는 공정/물류 데이터 작성 시 신호 흐름은 반대 방향으로 실행됩니다.

무선 측정 트랜스폰더의 데이터 흐름 이미지그림 3: 무선 측정 트랜스폰더의 데이터 흐름: 센서 신호(왼쪽)가 처리되고 저장(가운데)된 다음 기회가 생길 때 전송(오른쪽)됩니다. (이미지 출처: STMicroelectronics)

FP-ATR-ASTRA1 펌웨어는 STMicroelectronics의 STM32Cube 개발 환경을 확장하고 장거리(LoRaWAN, Sigfox) 및 단거리(BLE, NFC) 연결을 지원하는 완벽한 자산 추적 응용 제품을 구현합니다. 기능 패키지는 환경 센서와 동작 센서에서 데이터를 읽고 GNSS 위치 정보를 검색한 후 BLE를 통해 모바일 장치로 전송하고 동시에 LoRaWAN 연결을 통해 클라우드로 전송합니다.

FP-ATR-ASTRA1 패키지는 자율성을 극대화하기 위해 긴 배터리 수명을 보장하는 저전력 프로파일을 지원합니다. 또한 보안 요소 관리, 맞춤 설정 알고리즘 추가 기능, 디버깅 인터페이스, 확장 기능과 같은 주요 기능을 제공합니다.

소프트웨어 패키지는 설명서, 드라이버 및 HAL, 미들웨어, 예제 프로젝트로 구분됩니다. 예제 프로젝트에는 Keil, IAR, STM32Cube 통합 개발 환경(IDE)에 대한 소스 코드와 컴파일된 이진 파일이 포함됩니다. 기업 차량 관리, 가축 모니터링, 제품 모니터링, 물류, 맞춤 설정과 같은 5가지 사전 정의된 사용 사례는 개별적으로 구성할 수 있습니다.

STEVAL-ASTRA1B는 이벤트에 따라 작동 모드를 변경하는 간단한 상태 신호 발생기로 작동합니다. 두 가지 주요 상태는 전체 작동(실행) 또는 저전력(LP)을 위해 설계되었습니다. 실행 모드에서는 모든 기능이 활성화되고 모든 데이터가 구성된 대로 동보 통신됩니다. LP 상태에서는 MCU를 제외한 모든 부품이 저전력 모드로 설정되거나 비활성화됩니다(그림 4).

STMicroelectronics STEVAL-ASTRA1B의 두 가지 주요 작동 모드 구성도그림 4: STEVAL-ASTRA1B의 두 가지 주요 작동 모드는 전체 작동(실행) 또는 LP 모드입니다. (이미지 출처: STMicroelectronics)

측면 키를 누르면 두 상태 간의 전환이 이루어집니다. 또 다른 입력으로는 초소형 전자 기계 시스템(MEMS) 이벤트의 출력이나 알고리즘의 결과가 있습니다. 이는 단지 장치의 동작을 변경하기 위해 상태 신호 발생기를 구현하는 방법을 보여주는 한 예일 뿐입니다. 또한 시스템 응답성과 배터리 수명의 균형을 맞추기 위해 여러 가지 중간 상태를 구현할 수도 있습니다.

가능한 이벤트는 다음과 같습니다.

  • BP: 버튼 누름 이벤트
  • SD: 종료 이벤트
  • ER: 오류 이벤트
  • EP: 다음 단계로 자동 전환
  • RN: 전체 실행 명령으로 이동
  • LP: 저전력 명령으로 이동

클라우드 데이터 검색 및 시각화

STEVAL-ASTRA1B 트랜스폰더에는 FP-ATR-ASTRA1 펌웨어 패키지가 사전 설치되어 있어 환경 측정 신호와 GNSS 위치 데이터를 몇 분 안에 시각화할 수 있습니다.

스마트폰 및 태블릿용 STAssetTracking 모바일 앱을 사용하여 Bluetooth를 활성화하고 인터넷에 연결하면 트랜스폰더가 myst.com 사용자 계정을 통해 TTN(The Things Network) V3 네트워크 서버에 LoRaWAN 참가자로 등록됩니다. AWS(Amazon Web Services)의 DSH-ASSETRACKING 웹 대시보드에도 연결되어 있습니다.

TTN 등록 후 모바일 앱의 업데이트된 장치 목록에서 STEVAL-ASTRA1B가 나타납니다. <Settings> 메뉴에서 'Start synchronization' 버튼을 누르면 트랜스폰더의 전송 모드가 활성화되어 저장된 데이터를 BLE와 LoRaWAN을 통해 병렬로 전송합니다. 모바일 앱은 메모리의 측정 데이터를 대시보드에 표시하고 트랜스폰더의 GNSS 위치를 출력하거나 지도에 마커로 표시할 수 있습니다(그림 5).

TTN에서 트랜스폰더 등록을 지원하는 모바일 앱의 이미지(확대하려면 클릭)그림 5: 모바일 앱은 TNN에 트랜스폰더를 등록하고 클라우드 대시보드에 연결할 수 있도록 도와줍니다. 기록된 센서 값을 시각화하고 구성과 디버깅을 지원합니다. (이미지 출처: STMicroelectronics)

ASTRA 트랜스폰더 외에도 웹 대시보드는 P-L496G-CELL02(LTE) 및 NUCLEO-S2868A2(Sigfox RF 송신기)와 같은 기타 많은 독립형 무선 추적기 또는 클라우드의 STEVAL-SMARTAG1(Wi-Fi), STEVAL-MKSBOX1V1(BLE 엔드 노드), STEVAL-SMARTAG1(NFC 엔드 노드)과 같은 인터넷 연결 노드를 통합할 수 있습니다. 이를 통해 클라우드 기반 멀티프로토콜 무선 에코시스템을 개발할 수 있습니다.

개인 구성 및 프로그래밍

ASTRA 트랜스폰더의 공장 설정이 초기 커미셔닝 중에 성공적으로 평가되면 다음 단계는 개발자가 자신의 자산 추적 응용 제품에 맞게 트랜스폰더를 맞춤 설정하는 것입니다.

하드웨어 추가 없이 간단한 맞춤 설정 작업을 수행하는 경우 BLE 또는 모바일 앱(모바일 앱에서 ‘hammer & wrench(망치와 렌치)’ 아이콘 터치, 그림 5)을 통해 다양한 파라미터와 기능을 구성하는 것으로 충분할 수 있습니다.

프로젝트를 구성하는 또 다른 방법은 명령줄과 디버그 콘솔을 사용하는 것입니다. PC 터미널 프로그램(예: Tera Term)이 가상 COM 포트를 거쳐 USB를 통해 통신하는 동안 모바일 장치는 STBLESensor(ST BLE 센서) 앱을 사용해 BLE를 통한 네트워크를 형성합니다(그림 6).

PC(왼쪽) 및 모바일 장치(오른쪽)의 명령줄과 디버그 콘솔 이미지(확대하려면 클릭)그림 6: PC(왼쪽) 및 모바일 장치(오른쪽)의 명령줄과 디버그 콘솔입니다. (이미지 출처: STMicroelectronics)

펌웨어 업데이트나 다른 라이브러리 기능의 통합 또는 개발자의 고유 응용 제품 코드 생성과 마찬가지로 Astra 기판을 다시 프로그래밍하려면 JTAG 인터페이스를 통한 액세스가 편리합니다. 이를 위해 별도로 제공되는 STLINK-V3MINIE 디버그 및 프로그래밍 어댑터는 14핀 리본 케이블을 통해 ASTRA 기판에 연결됩니다. 그런 다음 PC에 설치된 Keil, IAR 또는 STM32Cube 같은 IDE는 컴파일된 이진 파일을 응용 제품 프로그램 메모리에 쓰거나 프로그램 시퀀스를 디버깅할 수 있습니다.

STLINK-V3MINI는 또한 호스트 PC가 1개의 UART를 통해 대상 마이크로 컨트롤러와 통신하도록 하는 가상 COM 포트 인터페이스를 제공합니다.

다양한 Arm MCU는 펌웨어를 업데이트하는 방법도 여러 가지가 있습니다.

  • STM32Cube 프로그래머는 PC에서 JTAG 어댑터와 MCU 부트로더를 사용하여 이진 파일을 플래시 메모리에 씁니다.
  • STM32Cube 프로그래머는 PC에서 USB와 MCU 부트로더를 사용하여 이진 파일을 플래시 메모리에 씁니다.
  • 무선 펌웨어 업그레이드(FUOTA)는 모바일 장치의 STBLESensor 앱을 사용하여 BLE를 통해 이루어집니다.

응용 제품 컨트롤러 STM32WL55JC(LoRaWAN)가 STM32WB5MMG(BLE)의 마스터 역할을 하므로 업데이트할 각 MCU 코어를 점퍼를 통해 선택해야 합니다.

STM32CubeMX를 사용한 그래픽 소프트웨어 구성

STM32Cube는 개발 노력, 시간, 비용을 줄여 개발자의 삶을 더 쉽게 만들어 줍니다. IDE는 전체 STM32 MCU 포트폴리오를 다룹니다. 또한 STM32CubeMX를 사용하면 그래픽 마법사를 사용하여 C 코드를 구성하고 생성할 수 있습니다. FP-ATR-ASTRA1 소프트웨어 패키지는 STM32Cube 기능을 확장하며 STM32CubeMX IDE에 직접 설치할 수 있습니다.

그림 7은 STM32CubeMX 셸을 보여줍니다. 각 셸은 탐색(왼쪽 및 상단), FP-ATR-ASTRA1 팩 구성(가운데), 아키텍처(오른쪽)입니다. FP-ATR-ASTRA1 팩은 [Platform Settings], [Parameter Settings], [ASTRA ENGINE]의 세 가지 맞춤 설정 탭을 제공합니다.

STMicroelectronics의 STM32CubeMX 도구를 사용한 그래픽 소프트웨어 구성 이미지(확대하려면 클릭)그림 7: STM32CubeMX 도구를 사용한 그래픽 소프트웨어 구성입니다. 탐색(왼쪽 및 상단), FP-ATR-ASTRA1 팩 구성(가운데), 아키텍처(오른쪽)로 구성됩니다. (이미지 출처: STMicroelectronics)

모든 설정이 구성되면 <Generate Code> 버튼을 눌러 STM32CubeMX에서 코드를 생성할 수 있습니다. 원하는 IDE를 열면 펌웨어 코드를 맞춤 설정하고 컴파일한 다음 기판에서 업데이트할 수 있습니다.

생성된 소스 코드는 하드웨어 블록 및 기능 측면에서 모듈식 아키텍처를 가지며 하드웨어 블록 관리는 특정 정의(USE_GNSS)를 통해 식별됩니다. 기능은 시스템 초기화, 상태 신호 발생기 구성 또는 데이터 관리와 같은 다양한 파일에서 관리됩니다.

파일 트리의 복잡성에도 불구하고 다음 사용 사례의 응용 제품 구성에는 몇 개의 파일만 관여합니다.

  • app_astra.c/.h
    이 기본 파일은 진입점이며 MX_Astra_Init() 내에서 초기화 함수를 호출합니다(목록 1).

시스템 초기화에 사용되는 MX_Astra_Init() 함수의 이미지목록 1: MX_Astra_Init() 함수는 시스템 초기화에 사용됩니다. (목록 출처: STMicroelectronics)

  • astra_confmng.c/.h
    이 기판 구성 관리자는 각 하드웨어 블록과 사용 사례 구현 및 구성을 활성화/비활성화하기 위해 사용자가 선택한 변수를 포함합니다.
  • astra_datamng.c/.h
    이 파일에서는 센서 및 기타 입력으로부터 수집된 데이터가 RAM에 저장됩니다. 이러한 데이터는 예를 들어 데이터에 대한 특정 알고리즘을 실행할 수 있도록 조작할 준비가 되어 있습니다.
  • astra_sysmng.c/.h
    여기에서는 시스템 관련 기능을 구현합니다. 주요 기능은 명령줄 인터페이스, 버튼 콜백, 알고리즘, LED, 자산 추적 사용 사례 관리, 타이머 관리입니다.
  • SM_APP.c/.h
    이 파일에는 상태 신호 발생기의 구성 구조가 포함되어 있습니다.

결론

자산 추적 응용 제품 개발은 복잡한 다단계 공정이지만 다기능 STEVAL-ASTRA1B 개발 플랫폼은 이 작업을 간소화합니다. 필요한 모든 하드웨어와 소프트웨어가 탑재된 이 플랫폼은 웹 인터페이스 또는 모바일 장치 앱을 통해 무선 트랜스폰더에 기록된 데이터를 빠르고 쉽게 시각화할 수 있습니다. 위에서 살펴본 바와 같이 개발자는 코드 프로그래밍 없이 유연한 구성 도구를 사용하여 이 무선 데이터 로거를 추적하거나 모니터링 응용 제품에 맞게 간단히 맞춤 설정하거나 자동 코드 생성기를 사용할 수 있습니다.

면책 조항: 이 웹 사이트에서 여러 작성자 및/또는 포럼 참가자가 명시한 의견, 생각 및 견해는 DigiKey의 의견, 생각 및 견해 또는 DigiKey의 공식 정책과 관련이 없습니다.

작성자 정보

Jens Wallmann

Jens Wallmann

Jens Wallmann은 인쇄 및 온라인 전자 출판물에 기고하는 프리랜서 편집자로 활동하고 있습니다. 전기 엔지니어(통신 공학)이자 숙련된 산업 전자 엔지니어인 그는 측정 기술, 자동차 전자 장치, 공정 산업 및 무선 주파수를 전공으로, 전자 장비 개발 분야에서 25년 이상의 경력을 보유하고 있습니다.