Quakesense
Quakesense 프로젝트는 에너지 수확 시스템을 통해 구동되고 스타 토폴로지에서 게이트웨이에 연결된 에너지 자율 센서 노드로 만든 저전력 및 저렴한 IoT 네트워크로 구성된 오픈 소스 지진 및 환경 모니터링 시스템입니다.
이 프로젝트는 커버리지, 현재 소비, 페이로드 길이, 대역폭 및 데이터 속도간에 좋은 타협을 제공하는 가장 유망한 저전력 와이드 지역 네트워크 (LPWAN) 기술 중 하나 인 MQTT와 LORA의 두 가지 신흥 IoT 기술을 기반으로합니다.
수집 된 데이터는 전용 웹 기반 인터페이스 덕분에 사용자에게 제공되므로 지진 이벤트와 환경 매개 변수를 실시간으로 모니터링 할 수 있습니다.
프로젝트 이식
Quakesense 프로젝트의 주요 구성 요소는 하나 이상의 센서 노드, 단일 채널 LORA 게이트웨이 및 IoT 클라우드 플랫폼입니다.
구성 요소 설명
센서 노드
각 센서 노드는 다음 구성 요소로 구성됩니다.
- 부동 소수
- STM32F401RE MCU의 데이터 시트 : http://www.st.com/resource/en/datasheet/stm32f401re.pdf)
- X-Nucleo-IKS01A2 MOTE MEMS 및 환경 센서 확장 보드를 포함한 :
- LSM6DSL : MEMS 3D 가속도계 및 3D 자이로 스코프
- 데이터 시트 : http://www.st.com/resource/en/datasheet/lsm6dsl.pdf
- LSM303AGR : MEMS 3D 가속도계 및 자력계
- 데이터 시트 : http://www.st.com/resource/en/datasheet/lsm303agr.pdf
- LPS22HB : MEMS 압력 센서
- 데이터 시트 : http://www.st.com/resource/en/datasheet/lps22hb.pdf
- HTS221 : 용량 성 디지털 상대 습도 및 온도 센서
- 데이터 시트 : http://www.st.com/resource/en/datasheet/hts221.pdf
- Dragino Lora/GPS 방패를 포함한 :
- RFM95W 137 MHz ~ 1020 MHz 저전력, 장거리 LORA RF 트랜시버
- 데이터 시트 : http://www.hoperf.com/upload/rf/rfm95_96_97_98w.pdf
- 칩 (SOC)의 Mediatek MTK MT3339 올인원 GPS 시스템을 기반으로 한 Quectel L80 GPS 모듈
- 데이터 시트 : https://www.quectel.com/uploadimage/downlad/l80_hardware_design_v1.1.pdf
- 연결된 시드 스튜디오 태양열 충전기 방패 v2.2 :
- Adafruit 2000 MAH Lipo 배터리
- 데이터 시트 : https://cdn-shop.adafruit.com/datasheets/liion2000mah37v.pdf
- Seeed Studio 1.5 W 태양 전지판
- 데이터 시트 : http://wiki.seeedstudio.com/1.5w_solar_panel_81x137/
기본적으로 각 센서 노드는 저전력 모드로 실행됩니다. 이 구성에서 STM32 MCU는 정지 모드로 실행됩니다 (MCU가 중지되고 시계가 꺼져 있지만 SRAM 및 Registers 컨텐츠가 유지됨) GPS 모듈은 AlwaysLocate 모드 (GPS 모듈이 환경 및 모션 조건에 따라 정시에 정상을 조정할 수있는 지능형 전력 저장 모드)에 있습니다.
지진 이벤트가 발생하면 가속도계는 웨이크 업 이벤트와 관련된 인터럽트를 생성하고 노드는 실행 모드에서 실행되기 시작하여 STM32 MCU 및 GPS 모듈이 전체 On 모드로 깨어나고 LORA 모듈은 전송 모드로 설정됩니다. 3 개의 가속 구성 요소 중 하나 이상이 기준 임계 값 (수평 구성 요소의 경우 50 mg, 수직 1의 경우 1120 mg)을 초과하는 경우 웨이크 업 이벤트가 발생합니다.
실행 모드에 있으면 센서 노드는 가속 기간을 계산하기 위해 가속도 데이터를 읽고 기록하기 시작하며, 가속 임계 값의 첫 번째와 마지막 초과 사이의 시간 간격과 절대 값에서 가속도의 최대 진폭으로 정의 된 피크지면 가속도 (PGA)의 3 가지 구성 요소로 정의됩니다. 계산 된 강력한 모션 매개 변수는 GPS 모듈 덕분에 지리적으로 참조되므로 위도, 경도, 고도, 날짜 및 시간 매개 변수가 최종적으로 게이트웨이로 전송되는 LORA 패킷에 추가됩니다.
노드의 기준 동작은 LPS22HB 및 HTS221 MEMS 센서를 통한 환경 매개 변수 (온도, 상대 습도 및 압력)의 주기적 (기본적으로 15 분마다)을 예측합니다.
게이트웨이
단일 채널 로라 게이트웨이는 다음 구성 요소로 구성됩니다.
- B-L475E-OIT01A2 STM32L4 디스커버리 키트 특징 :
- STM32L475VG : 플로팅 포인트 유닛 (FPU), 1MB의 플래시 메모리 및 128KB의 SRAM을 포함하는 초 저장 ARM Cortex-M4 MCU
- 데이터 시트 : http://www.st.com/resource/en/datasheet/stm32l475vg.pdf
- Inventek ISM43362-M3G-L44 : Wi-Fi 모듈 (802.11 b/g/n)
- 데이터 시트 : http://www.inventeksys.com/wp-content/uploads/ism43362_m3g_l44_functional_spec
- SPSGRF-868 : Sub-GHZ (868 MHz) 저전력 RF 모듈
- 데이터 시트 : http://www.st.com/resource/en/datasheet/spsgrf.pdf
- SPBTLE-RF : Bluetooth v4.1 모듈
- 데이터 시트 : http://www.st.com/resource/en/datasheet/spbtle-rf.pdf
- M24SR64-Y : 인쇄 된 NFC 안테나를 포함한 동적 NFC 태그
- 데이터 시트 : http://www.st.com/resource/en/datasheet/m24sr64-y.pdf
- HTS221 : 용량 성 상대 습도 및 온도 센서
- 데이터 시트 : http://www.st.com/resource/en/datasheet/hts221.pdf
- LSM303AGR : MEMS 3D 가속도계 및 MEMS 3D 자력계
- 데이터 시트 : http://www.st.com/resource/en/datasheet/lsm303agr.pdf
- LSM6DSL : MEMS 3D 가속도계 및 MEMS 3D 자이로 스코프
- 데이터 시트 : http://www.st.com/resource/en/datasheet/lsm6dsl.pdf
- LSP22HB : 260-1260 HPA 절대 디지털 출력 기압계
- 데이터 시트 : http://www.st.com/resource/en/datasheet/lps22hb.pdf
- Dragino Lora Shield는 다음을 포함합니다.
- SX1276 기반 RFM95W 저전력, 장거리 LORA RF 트랜시버
- 데이터 시트 : http://www.hoperf.com/upload/rf/rfm95_96_97_98w.pdf
게이트웨이는 기능적으로 센서 노드가 전송하는 패킷을 수신하고 캡슐화 된 값을 구문 분석하고 MQTT 프로토콜을 통해 Adafruit IO 플랫폼으로 전달합니다.
게이트웨이는 또한 패킷 무결성을 다룹니다. 새로운 패킷이 수신 될 때마다 게이트웨이는 체크섬을 계산하고 수신 메시지 내의 패키지와 비교합니다. 불일치의 경우 패킷이 삭제되고 오류 메시지가 Adafruit IO 플랫폼으로 전송됩니다.
Adafruit io
Adafruit IO 플랫폼은 실시간 환경 데이터 및 지진 사건과 관련된 강력한 모션 매개 변수를 수집, 처리 및 시각화하는 데 사용됩니다.
사용자 인터페이스 (UI)는 대시 보드로 구성되며, 여기에는 라인 그래프, 게이지 및 기타 블록을 통해 구현 된 일부 위젯이 포함되어있어 환경 매개 변수의 값과 피크지면 가속도의 세 가지 구성 요소의 시간 추세를 보여줍니다.
소프트웨어 구성 요소
Quakesense 프로젝트를 구현하는 데 사용되는 소프트웨어 라이브러리 및 프레임 워크는 다음과 같습니다.
- Arduino Core STM32 : https://github.com/stm32duino/arduino_core_stm32
- STM32LOWPOWER 라이브러리 : https://github.com/stm32duino/stm32lowpower
- Adafruit GPS 라이브러리 : https://github.com/biagiom/adafruit_gps
- Arduino Lora 라이브러리 : https://github.com/sandeepmistry/arduino-lora
- Wifi-Im43362-M3G-L44 라이브러리 : https://github.com/stm32duino/wifi-ism43362-m3g-l44
- lsm6dsl 라이브러리 : https://github.com/stm32duino/lsm6dsl
- HTS221 라이브러리 : https://github.com/stm32duino/hts221
- LPS22HB 라이브러리 : https://github.com/stm32duino/lps22hb
저자
Biagio montaruli [email protected]
특허
이 소프트웨어는 GNU GPLV3의 조건에 따라 라이센스가 부여됩니다. 자세한 내용은 License.md 파일을 참조하십시오.
감사의 말
이 프로젝트는 Bari의 Polytechnic University (Poliba)의 사물 인터넷에서 학부 논문을 위해 개발되었습니다.
저는 교수이자 감독관 Luigi Alfredo Grieco 와이 프로젝트 개발 중에 저를 도와 준 Telematics 'Lab (@Telematics-Dev)의 모든 연구원과 사람들에게 특별한 감사를드립니다.