엣지 디바이스에서 머신러닝을 활용한 해충 탐지
Nicla Vision 및 Adrastea-I FeatherWing 시작하기

이미지 출처: 마우저 일렉트로닉스
라픽 미트리(Rafik Mitry), 마우저 일렉트로닉스 / 샤샹크 헤그데(Shashank Hegde), Würth Elektronik eiSos
2025년 9월 10일
스마트 농업 분야에서 해충 탐지는 전통적으로 노동 집약적인 방식에 의존해왔다. 이로 인해 작물은 피해에 취약해졌고, 농가는 예측하기 어려운 수확량 문제에 직면해왔다. 그러나 셀룰러 사물인터넷 (IoT) 기술과 엣지 컴퓨팅의 등장은 이러한 상황에 큰 변화를 가져왔다. 산업 환경에서 예지 정비에 활용되는 것과 마찬가지로, 셀룰러 IoT는 센서 디바이스를 사용해 작물 상태를 실시간으로 모니터링할 수 있게 한다. 또한 엣지 디바이스에서 머신 비전을 활용하면 데이터를 로컬에서 분석할 수 있어, 배터리 기반 디바이스에서도 실시간 모니터링 기능을 구현할 수 있다. 이를 통해 해충 확산을 막기 위한 적절한 시점의 개입이 가능해지며, 농업 생산성을 극대화하고 손실을 최소화할 수 있다. 이 글에서는 셀룰러 IoT와 엣지 컴퓨팅이 데이터 수집부터 예측 분석에 이르기까지 해충 탐지를 어떻게 변화시키고 있으며, 정밀 농업의 새로운 시대를 어떻게 열고 있는지 살펴본다.
프로젝트 자재 및 리소스
프로젝트 자재 명세서(BOM)
- Würth Elektronik Setebos-I Wireless FeatherWing
- Würth Elektronik Adrastea-I FeatherWing
- Adafruit Feather M0 Express
- Arduino Nicla Vision
- Adafruit 수-수 점퍼 와이어
- Adafruit USB Type-C 케이블
- PC
프로젝트 코드/소프트웨어
- Arduino IDE
- Arduino 명령줄 인터페이스
- OpenMV
- Edge Impulse
- Edge Impulse 명령줄 인터페이스
- Visual Studio Code
- Visual Studio Code용 PlatformIO IDE 확장 프로그램
- Würth Elektronik FeatherWings GitHub 저장소
프로젝트 기술 개요
다음 섹션에서는 이 프로젝트에서 사용할 개발 보드와 기술에 대한 정보를 제공한다.
개발 보드
Würth Elektronik Setebos-I Wireless FeatherWing (그림 1) 은 Würth Proteus-III 무선 모듈을 기반으로 하는 고급 Bluetooth® Low Energy 5.1 기능을 통해 매끄러운 무선 연결을 제공한다. 또한 Würth Thyone-I 모듈 기반의 독자적인 2.4GHz 무선 기능을 갖추고 있어, 통합 보안 요소와 +6dBm 송신 전력을 통해 견고한 통신을 보장한다. 또 다른 Setebos-I 디바이스와 페어링하고 투명 모드로 구성하면, 케이블을 대체하는 매끄럽고 안전한 연결을 구현할 수 있다.

그림 1: Würth Elektronik Setebos-I Wireless FeatherWing. (출처: Würth Elektronik)
Bluetooth Low Energy 모드에서는 SPP(Serial Port Profile)와 유사한 직렬 프로파일을 제공하며, 독자 모드에서는 메시 네트워킹 기능을 지원한다. 이를 통해 다양한 애플리케이션에서 투명 모드를 사용할 수 있다. Adafruit Feather 폼 팩터로 설계되어 Würth Elektronik FeatherWing 및 기존의 수많은 Feather 호환 보드와 쉽게 확장할 수 있다.
Würth Elektronik Adrastea-I FeatherWing 보드 (그림 2)는 LTE-M/NB-IoT 기능, 외부 LTE 및 GNSS 안테나, USB 케이블을 제공한다. LTE-M과 NB-IoT 간의 유연한 모드 선택, GPS 및 GLONASS를 지원하는 통합 GNSS, Arm® Cortex®-M4 MCU, 다양한 프로토콜 및 주파수 대역과의 호환성을 갖추고 있다.

그림 2: Würth Elektronik Adrastea-I FeatherWing. (출처: Mouser Electronics)
Adafruit Feather M0 Express (그림 3)는 Microchip Technology ATSAMD21G18 48MHz Arm Cortex-M0 프로세서를 기반으로 하는 Feather MCU 보드다. 이 칩은 256KB 플래시 메모리와 32KB RAM을 제공하며, USB-직렬 프로그래밍 및 디버그 기능을 내장하고 있다.

그림 3: Adafruit Feather M0 Express. (출처: Mouser Electronics)
Arduino Nicla Vision (그림 4)은 강력한 STM32H747AII6 듀얼 Arm Cortex-M7/M4 IC 프로세서와 2MP 컬러 카메라를 탑재해 TinyML을 지원할 수 있다. 또한 스마트 6축 모션 센서, 통합 마이크, 거리 센서를 갖추고 있다. 이 보드는 OpenMV와 완전히 통합되며, MicroPython을 지원하고 Wi-Fi® 및 Bluetooth Low Energy 연결 기능도 제공한다.

그림 4: Arduino Nicla Vision. (출처: Mouser Electronics)
Edge Impulse
Edge Impulse는 임베디드 디바이스에서 머신러닝(ML)을 개발하기 위한 환경이다. 실제 센서 데이터를 수집하고, ML 알고리즘을 개발하며, 엣지 디바이스에 모델을 쉽게 배포할 수 있게 한다 (그림 5).

그림 5: Edge Impulse 머신러닝 흐름도. (출처: Edge Impulse)
하드웨어 설정
하드웨어를 조립하기 전에 먼저 프로젝트 아키텍처를 살펴본다 (그림 6). Nicla Vision은 시스템의 비전 구성요소로 사용되며, ML 모델을 실행하는 역할을 한다. 이 보드는 Setebos-I 보드에 연결되어 메인 노드, 즉 게이트웨이로 데이터를 전송한다. 이 메인 노드는 Setebos-I 보드, Adafruit Feather M0 Express, Adrastea 보드로 구성되며, 수집된 데이터를 셀룰러 IoT 연결을 통해 클라우드로 전송하는 역할을 한다.

그림 6: 게이트웨이와 두 개의 센서 노드를 보여주는 프로젝트 아키텍처. (출처: 마우저 일렉트로닉스)
센서 노드의 핀은 표 1과 같이 연결한다.
표 1: 센서 노드 핀 할당
|
Nicla Vision |
FeatherWing Setebos-I |
|---|---|
|
GND |
GND |
|
3V3 |
3V3 |
|
TX |
RX |
|
RX |
TX |
- Setebos-I FeatherWing을 투명 모드로 설정한다.
- JP1 점퍼의 3번 핀을 3V3에 연결한다.
- 게이트웨이를 만들려면 투명 모드의 Setebos-I FeatherWing을 Adrastea FeatherWing 위에 쌓고, 이어서 Adrastea FeatherWing을 Adafruit Feather M0 Express 위에 쌓는다.
소프트웨어 설정
Edge Impulse 내에서 Arduino Nicla Vision을 구성하기 전에 Edge Impulse 명령줄 인터페이스 와 Arduino 명령줄 인터페이스를 설치해야 한다. 그다음 Würth Elektronik FeatherWings GitHub 저장소의 소프트웨어 설치 섹션에 나온 지침에 따라 Visual Studio Code와 PlatformIO IDE 확장 프로그램을 다운로드한다.
마지막으로 예제 코드를 Adafruit Feather M0 Express에 업로드한다.
- FeatherWings 저장소를 복제하거나 다운로드한다.
- AdrasteaThyoneBridge를 연다.
- 코드를 빌드하고 Adafruit Feather M0 Express에 업로드한다.
머신 비전 모델 학습
Edge Impulse를 사용하면 머신 비전 모델을 매우 쉽게 구축할 수 있다. 단 몇 장의 이미지로 모델을 학습시키는 Impulse를 만들 수 있다.
- Edge Impulse 웹사이트에서 계정을 만든다.
- 새 프로젝트를 생성한다.
- Data acquisition을 클릭한 다음, Connect a new device를 클릭한다.
- Edge Impulse 화면에 표시되는 QR 코드를 스캔한다. 그런 다음 휴대폰을 사용해 다양한 각도와 조명 조건에서 해충 사진을 촬영한다. 이미지는 자동으로 Edge Impulse 계정과 동기화된다.
- 이미지를 수집한 후 Labeling queue (그림 7)를 클릭해 해충에 라벨을 지정한다.

그림 7: Edge Impulse 플랫폼의 Labeling queue 버튼. (출처: 마우저 일렉트로닉스)
- 마우스로 해충 이미지 주변을 드래그해 바운딩 박스를 만든다. 표시되는 텍스트 상자에 해충에 대한 설명을 입력한다 (그림 8).

그림 8: Edge Impulse 해충 라벨링. (출처: 마우저 일렉트로닉스)
이제 해충 데이터를 수집했으므로, Impulse를 통해 모델을 학습시킨다.
Impulse 생성
Impulse는 신호 처리를 사용해 원시 데이터에서 특징을 추출한 뒤, 러닝 블록 (그림 9)을 사용해 새로운 데이터를 분류한다.
- 이미지 데이터를 자신의 이미지에 맞게 조정한다.
- 처리 블록으로Image를 선택한다.
- 러닝 블록으로 Object Detection을 선택한다.
- Save Impulse를 클릭한다.

그림 9: Impulse 생성. (출처: 마우저 일렉트로닉스)
신경망 분류기
신경망 분류기는 입력 데이터를 받아 해당 데이터가 특정 클래스에 속할 가능성을 나타내는 확률 점수를 출력한다. 이 프로젝트에서는 학습 사이클을 60으로 설정한다. 학습 결과와 정확도는 창 오른쪽에 표시된다.

그림 10: 신경망 학습 및 출력. (출처: 마우저 일렉트로닉스)
Impulse를 OpenMV 펌웨어로 내보낸 뒤 OpenMV IDE로 이동한다. 마우저 GitHub 페이지에서 파일을 다운로드하고 Nicla Vision을 컴퓨터에 연결한다. 그런 다음 학습된 모델을 사용한다.
참고: 플래싱 프로세스를 시작하려면 Arduino Nicla Vision의 RESET 버튼을 두 번 누른다.
- 펌웨어를 로드한다:
- Tools를 클릭한 다음, Run Bootloader (Load Firmware)를 클릭한다.
- 다운로드한 펌웨어 .bin 파일을 선택하고 Erase internal file system을 선택한다.
- Run을 클릭하고 보드의 파란색 LED가 깜빡일 때까지 기다린다.
- 확인 화면에서 OK를 클릭한다.
- 스크립트를 연다:
- File을 클릭한 다음, Open File을 클릭한다.
- 마우저의 학습된 모델 일부로 다운로드한 .zip 파일에서 py 스크립트를 연다.
- IDE 왼쪽 아래의 Play 버튼을 클릭해 스크립트 (그림 11)를 실행한다.

그림 11: OpenMV에서 실행 중인 머신 비전 모델. (출처: 마우저 일렉트로닉스)
무선 연결
센서에서 게이트웨이로: 투명 모드로 동작하는 Setebos-I Wireless FeatherWing은 케이블을 대체하는 2.4GHz 무선 링크 역할을 한다. 이 동작 모드에서는 UART(Universal Asynchronous Receiver-Transmitter) 인터페이스를 통해 Nicla Vision에서 들어오는 모든 데이터가 무선으로 전송된다. 마찬가지로 무선 링크에서 수신된 정보도 UART로 전달된다.
게이트웨이에서 클라우드로: 게이트웨이에는 노드에서 메시지를 수신하는 피어 Setebos-I FeatherWing이 포함된다. 무선 장치에서 전달된 데이터는 UART를 통해 Feather M0 Express로 투명하게 전송된다. 부팅 시 M0 MCU는 Adrastea-I FeatherWing을 구성해 클라우드 MQTT 브로커에 연결한다. M0 MCU가 센서 노드에서 메시지를 수신하면 해당 데이터를 클라우드로 직접 게시한다. 클라우드 MQTT 브로커는 구독 중인 모든 클라이언트에 메시지를 게시한다. 사용자는 어떤 공개 MQTT 모바일 애플리케이션을 사용하더라도 이 메시지를 수신할 수 있다.
맺음말
전자 기술과 ML의 발전은 제한된 하드웨어 리소스에서도 객체 탐지와 같은 복잡한 작업을 가능하게 한다. 이러한 복잡한 기능은 무선 연결과 결합되어 환경을 원격으로 모니터링하고 제어할 수 있는 견고한 메커니즘을 만들어낸다. 이 예제에서는 이러한 기술을 사용해 스마트하고 연결된 농업에 적용할 수 있는 해충 탐지 시스템 프로토타입을 구축했다.
저자 약력
라피크 미트리(Rafik Mitry)는 뮌헨 공과대학교(Technical University of Munich)에서 전기공학 석사 학위를 마친 후 2019년 마우저 일렉트로닉스에 합류했다. 그는 같은 대학에서 3년 동안 에너지 하베스팅 분야 연구에도 참여했다. 마우저의 기술 마케팅 엔지니어로서 라피크는 전자 산업의 현재 및 미래 기술 트렌드를 반영하는 독창적인 기술 콘텐츠를 제작하고 있다. 최신 기술 트렌드를 꾸준히 살피는 것 외에도, 라피크는 항공과 테니스를 매우 좋아한다.
Shashank Hegde는 뮌헨 공과대학교(Technical University of Munich) 석사과정 학생이다. 그는 2022년부터 Würth Elektronik eiSos GmbH & Co. KG에서 무선 연결 및 센서 부문 인턴/워킹 스튜던트로 근무해왔다. 그의 연구 관심 분야는 임베디드 시스템, 사물인터넷, 차량 통신이다.
저자 소개
1964년에 설립된 마우저 일렉트로닉스는 1,200개 이상의 업계 선도적인 제조업체 브랜드를 취급하는 반도체 및 전자 부품의 글로벌 공인 유통기업이다. 마우저는 설계 엔지니어와 바이어 커뮤니티를 대상으로 최신 제품과 기술을 신속하게 소개하는 데 주력하고 있다. 마우저는 전 세계에 28개의 지사를 두고 있으며, 23개 언어와 34개 통화로 비즈니스를 수행한다. 마우저의 글로벌 물류 센터는 연중무휴 24시간 주문을 처리하고 거의 완벽에 가까운 피킹 및 배송(pick-and-ship) 작업을 가능하게 하는 최첨단 무선 창고 관리 시스템을 갖추고 있다.