경고 : 태양 전지판이나 배터리를 연결할 때 핀의 극성은 다음과 같습니다.

경고 : Li-ion 배터리의 충전 컨트롤러가 필요한 경우 배터리 점퍼를 연결해야합니다.

Arduino IDE는 Micro USB 포트를 통해 소프트웨어를 업로드하는 데 사용할 수 있습니다. 사용하기 전에 IDE를 구성해야합니다. 첫 번째는 보드 관리자를 통해 보드를 설치하는 것입니다.
파일 -> 환경 설정으로 이동하십시오. 추가 보드 관리자 URL에 다음 링크를 추가하십시오 : https://github.com/skylabiot/loraedge_basictracking/raw/master/package_skylab_index.json.
보드 패키지는 Skylab을 검색하여 도구 -> 보드 -> 보드 관리자를 통해 다운로드 할 수 있습니다.
도구 -> 보드 -> Skylab 보드 -> Skylab Lora Edge를 통해 보드를 선택하십시오.
예제 스케치는 파일 -> 예제 -> skylab lora edge-> basicloraa를 통해로드 할 수 있습니다.
Basicloraa 스케치 종속성은 다음과 같습니다.
Arduino Samd21 저전력 라이브러리 : https://www.arduino.cc/en/reference/arduinolowpower
Arduino RTC 라이브러리 : https://www.arduino.cc/en/reference/rtc
Adafruit BME280 라이브러리 : https://github.com/adafruit/adafruit_bme280_library
Adafruit LMS303 가속도계 라이브러리 : https://github.com/adafruit/adafruit_lsm303_accel
cmaglie의 FlashStorage 라이브러리 : https://github.com/cmaglie/flashstorage
모드를 업로드 한 후 예제 예제 스케치 직렬 모니터는 9600 보드 속도로 열 수 있습니다. 시스템은 구성된 Dev_eui, Join_eui 및 App_key (MSB First)를 표시하는 것으로 시작합니다. Dev_eui는 LR1110 칩에서 요청되며 해당 특정 칩에 고유합니다. 이 키는 중고 네트워크의 콘솔에서 사용해야합니다. join_eui 및 app_key는 코드에서 구성되며 중고 네트워크 콘솔에서 제공하는 올바른 키에 대해 변경해야합니다. 올바르게 구성되면 장치가 자동으로 결합됩니다.
Wi-Fi 및 GNSS 스캔 페이로드를 요청하려면 0x01을 보내십시오 (답변은 포트 2 및 3에 있습니다).
현재 구성을 요청하려면 0x02를 보내십시오 (답변은 포트 44에 있습니다).
현재 배터리 전압을 요청하려면 0x03을 보내십시오 (답변은 포트 10에 있습니다).
구성 다운 링크 형식은 다음과 같습니다.
| 0 | 1-2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
|---|---|---|---|---|---|---|---|---|
| 주도의 | 간격 | 봉홧불 | Wi-Fi | GNSS | 모션 활성화 / 시간 | 모션 간격 기간 | 모션 센서 임계 값 레지스터 | 모션 센서 지속 시간 레지스터 |
바이트 0 : LED이 바이트는 상태 LED를 구성합니다.
바이트 1 및 2 : 간격이 2 바이트는 메시지 사이의 표준 간격 시간을 몇 분입니다. 간격이 0으로 설정되면 현재 설정을 유지하고 새로운 간격 시간이 설정되지 않습니다. 최대 시간은 65535 분입니다.
바이트 3 : 비콘이 바이트는 DE Beacon이 켜지는 시간을 구성합니다. 시간은 몇 분입니다. 최대 시간은 255 분입니다. 0으로 설정하면 비콘이 켜지지 않습니다.
바이트 4 : Wi-Fi이 바이트는 Wi-Fi 페이로드를 켜거나 끕니다.
바이트 5 : GNSS이 바이트는 GNSS 페이로드를 켜거나 끄는 경우.
바이트 6 : 모션 활성화 / 시간이 바이트는 모션이 감지되면 보내기 간격을 설정합니다. 시간은 최대 255의 시간으로 몇 분입니다. 0으로 설정하면 모션 감지 인터럽트가 비활성화됩니다.
바이트 7 : 모션 간격 기간이 바이트는 시스템이 마지막 모션 감지 후 모션 간격을 사용하는 지속 시간을 설정합니다. 시간은 최대 255의 시간입니다. 0으로 설정하면이 바이트는 무시됩니다 (현재 설정이 사용됩니다).
바이트 8 : 모션 센서 임계 값 레지스터이 바이트는 모션 센서 임계 값 레지스터를 설정합니다. 바이트 7이 0으로 설정되면이 바이트는 무시됩니다 (현재 설정이 사용됩니다).
바이트 9 : 모션 센서 지속 시간 등록이 바이트는 모션 센서 지속 시간 레지스터를 설정합니다. 바이트 7이 0으로 설정되면이 바이트는 무시됩니다 (현재 설정이 사용됩니다)
이 시스템은 포트 44의 업 링크에서 설정 구성을 다운 링크와 동일한 형식으로 전송하여 다운 링크를 확인합니다.
LED ON, 5 분의 간격, 비콘, Wi-Fi 및 GNSS 페이로드 켜짐, 모션 감지 : :
01 00 05 00 01 01 00 00 00 00
꺼짐, 간격 600 분, 비콘 없음, Wi-Fi 페이로드, GNSS 페이로드, 모션 감지 끄기 :
00 15 36 00 01 00 00 00 00 00
현재 LED 및 간격 설정, 비콘 없음, Wi-Fi 페이로드, GNSS 페이로드, 모션 감지 오프를 유지하십시오.
02 00 00 00 00 01 00 00 00 00
5 분 동안 비콘을 켜고 모션 감지를 끄고 다른 모든 현재 설정을 유지하십시오.
02 00 00 05 02 02 00 00 00 00
현재 LED 및 간격 설정, 비콘 없음, Wi-Fi 페이로드, GNSS 페이로드, 1 분 전송 간격으로 모션 감지, 마지막 동작 후 4 분 동안 사용 된 모션 간격, 7로 설정된 모션 임계 값 레지스터, 모션 지속 시간 등록 3 :
02 00 00 00 01 00 01 04 07 03
예제 스케치 모드는 4 가지 유형의 페이로드를 보낼 수 있습니다. 이 페이로드 유형은 사용 된 포트 번호로 식별 할 수 있습니다. 예제 TTN 디코더 스크립트는이 GitHub 페이지 (exampledeCoderttn.js)에서 찾을 수 있습니다.
이것은 Wi-Fi 및 센서 페이로드입니다. 이 페이로드에는 3 개의 Wi-Fi 포인트와 센서 데이터의 정보가 있습니다. 형식은 다음과 같습니다.
| 0 | 1-6 | 7 | 8-13 | 14 | 15-20 | 21 | 22-23 | 24-25 | 26 | 27 |
|---|---|---|---|---|---|---|---|---|---|---|
| RSSI 1 | 맥 1 | RSSI 2 | 맥 2 | RSSI 3 | 맥 3 | 배터리 전압 | 온도 | 압력 | 습기 | 모션 활성화 |
바이트 0, 7 및 14 : Wi-Fi RSSI
이 바이트는 스캔 한 Wi-Fi 지점의 RSSI / 신호 강도를 갖습니다. 이 값은 서명 된 정수로 해석되어야합니다.
바이트 1 ~ 6, 8 ~ 13 및 15 ~ 20 : Wi-Fi Mac
이 바이트는 스캔 한 Wi-Fi 포인트의 MAC 주소가 있습니다.
바이트 21 : 배터리 전압
이 바이트에는 원시 배터리 전압 값이 있습니다. 정확한 전압은 다음과 같이 계산할 수 있습니다. 전압 = (float) ((3.3 / 255) * ((4.7 + 10) / 10) * (배터리 전압);
바이트 22 ~ 23 : 온도
이 바이트는 온도 값을 갖습니다. 섭씨 정도의 정확한 온도 (◦C)는 다음과 같이 계산할 수 있습니다. 온도 = (플로트) (온도 / 100);
바이트 24 ~ 25 : 압력
이 바이트는 공기압 값을 갖습니다. 헥터 파스칼 (HPA) 정도의 정확한 압력은 다음과 같이 계산할 수 있습니다. 공기 압력 = (float) (압력 / 10);
바이트 26 : 습도
이 바이트의 습도는 %입니다.
바이트 27 : 모션 활성화
이 바이트는 정상 간격 일 때 0을 보여줍니다. 움직임 간격이있을 때이 바이트는 모션 간격에 남은 시간을 제공합니다.
이것은 GNSS 페이로드입니다. 이 페이로드에는 RAW GNSS 데이터가 있으며 크기가 다양합니다.
이 페이로드는 "I Am Awake"메시지로 사용됩니다. 기본적으로 24 시간마다 설정됩니다. "컨트롤 타임"값을 변경하여 변경할 수 있습니다. 형식은 다음과 같습니다.
바이트 0 : 배터리 전압
이 바이트에는 원시 배터리 전압 값이 있습니다. 정확한 전압은 다음과 같이 계산할 수 있습니다. 전압 = (float) ((3.3 / 255) * ((4.7 + 10) / 10) * (배터리 전압);
LR1110은 가입 할 때 및 그 후 24 시간마다 자동화 된 메시지를 보냅니다. 이 메시지는 무시할 수 있습니다.
비콘 설정이 1으로 설정되면 비콘이 활성화됩니다. 장치는 네트워크를 떠나 869800000 Hz 주파수 (공식 LORA 주파수 외부)에서 2 초마다 임의의 LORA 페이로드를 보냅니다. LED 활성화가 1으로 설정되면 녹색 LED가 켜집니다. 설정 시간에 도달하면 비콘이 중지됩니다. 시스템은 네트워크에 다시 합류하여 이전과 같이 작동합니다.
| UC 핀 | 보드 핀 | Arduino Ide의 이름 |
|---|---|---|
| PA02 | A0 | A0, DAC0 |
| PA05 | AIN5 (배터리) | AIN5 |
| PA06 | D0 | D0 |
| PA07 | D8 | D8 |
| PA08 | D3 | D3 |
| PA09 | D4 | D4 |
| PA10 | 바쁜 (LR1110) | 바쁘다 |
| PA11 | 이벤트 (LR1110) | 이벤트 |
| PA14 | NRESET (LR1110) | nreset |
| PA15 | LED RED | LEDR |
| PA16 | 모시 | 모시 |
| PA17 | SCK | SCK |
| PA18 | NSS (LR1110) | NSS |
| PA19 | 된장 | 된장 |
| PA20 | int2 (LSM303AGR) | int2 |
| PA21 | int1 (LSM303AGR) | int1 |
| PA22 | SDA | SDA |
| PA23 | SCL | SCL |
| PA24 | D- (USB) | PIN_USB_DM |
| PA25 | D+ (USB) | PIN_USB_DP |
| PA27 | PA27 (PAD) | PA27 |
| PA28 | PA28 (PAD) | PA28 |
| PA30 | SWDCLK/TCK (디버그 핀) | - |
| PA31 | SWDIO/TMS (디버그 핀) | - |
| PB02 | PB02 (PAD) | PB02 |
| PB03 | PB03 (PAD) | PB03 |
| PB08 | LNA (GNSS) | LNA |
| PB09 | int3 (LSM303AGR) | int3 |
| PB10 | LED Green | ledg |
| PB11 | LED 블루 | ledb |
| PB22 | TX | PIN_SERIAL_TX |
| PB23 | RX | PIN_SERIAL_RX |
| 버전 | 변화 |
|---|---|
| 1.0 | 첫 번째 릴리스. |
| 1.2 | 다운 링크, Wi-Fi 페이로드 및 라디오 비콘의 센서 통합을 통한 더 많은 구성을 지원합니다. |
| 1.3 | Basicloraa Sketch의 변경 사항 : 다운 링크가 변경되어 바이트가 적습니다. LORA 적용 범위가 없을 때 배터리 배수 결합 문제를 수정하십시오. 모션 검출에 대한 지원이 추가되었으며, 모션 활성화를 1로 설정하여 가능합니다. |
| 1.3.1 | Basicloraa Sketch에 실패한 후 결합 문제를 해결했습니다. |
| 1.4 | 업데이트 된 포트 2 업 링크 (바이트 27). 예를 포함하여 다운 링크 형식을 업데이트했습니다. 다운 링크가 추가되었습니다. 업 링크를 확인하십시오. 설정시 설정을 저장하여 재부팅시 재설정되지 않습니다. |
| 1.4.1 | 파일 정리. |
| 1.5 | 가입을 시도 할 때 자주색 LED가 켜집니다. 누락 된 Wi-Fi 페이로드 버그에 대한 수정. 향후 사용을위한 ALC Sync 지원. 주석을 추가하여 코드를 더 읽기 쉽게 만들었습니다. |
| 1.5.1 | 직렬 모니터에 0이있는 패딩 EUI / 키. Lorawan, 펌웨어 및 부트 로더 버전은 이제 직렬 모니터에서 16 진로 인쇄합니다. |
| 1.5.2 | 시작 후 및 첫 번째 모션 감지 후 첫 번째 페이로드를 보내지 않도록 수정했습니다. |
| 1.5.3 | 요청 설정을 위해 다운 링크 함수가 추가되었습니다. 모션 간격 타이머가 수정되었습니다. |
| 1.5.4 | 고정 간격 값 재부팅 후 항상 올바르게로드되는 것은 아닙니다. |