저전력, 근거리 무선 통신을위한 최상의 선택


9

무선 통신에 의존하는 프로젝트를 진행 중이며 최선의 대안을 찾고 있습니다. 설계 요구 사항은 다음과 같습니다.

  • Arduino와의 인터페이스가 쉽습니다.
  • 작은 범위 (최대 5-6 미터)에서 작동
  • 적은 전력 소비-가능한 최소
  • 장치가 서로 간섭해서는 안됩니다
  • 실시간 일 필요는 없으며 지연은 수백 밀리 초 정도일 수 있습니다.
  • 일반적으로 장치가 서로 보이지 않는 경우 (IR 및 유사한 솔루션이 작동하지 않음)

시나리오는 다음과 같습니다.

같은 방에있는 약 10 개의 장치가 서로 통신하며 짧은 시간 (최대 30 자) 메시지를 몇 시간 동안 (배터리를 교체하지 않고) 서로에게 한 번에 보냅니다.

내가 찾을 수있는 가장 좋은 것은 Bluetooth (특히 BLE)입니다. 주로 기성품 Arduino + Bluetooth 모듈 과 유망한 "Low Energy"라벨 (일반 Bluetooth의 에너지 소비의 최대 절반)이 있기 때문입니다. 이 분야에서 더 많은 경험을 가진 사람들로부터 의견을 얻고 싶습니다.


2
Bluetooth에 투표합니다.
nidhin 2016 년

사용하지 않기로 결정한 내용 및 근거에 대한 정보를 제공해주십시오.
Jason_L_Bens

최대 5 ~ 6 미터-블루투스가 이보다 더 작동 할 수 있습니다-6m이 절대 한계를 넘지 않아야합니까? 아주 작은 힘-당신은 여기 몇 개의 숫자를 명명하고 수치스럽게 생각합니다. 서로 방해해서는 안됩니다-이것이 정확히 무엇을 의미합니까?
Andy 일명

@Andyaka : 아니요, 제 말은 장치가 최대 6 미터 떨어져 있기 때문에 더 먼 거리를 지원할 필요가 없다는 것입니다. "매우 적은 전력"에 관해서는, 각 장치 (Arduino + LCD + 무선 모듈)를 하나 또는 두 개의 AA 배터리로 작동시킬 계획이며, 이러한 장치는 배터리를 변경하지 않고 최소 1 시간 동안 통신 할 수 있어야합니다.
Giulio Muscarello 2016 년

1
나에게 블루투스 피코넷처럼 들린다.
Ignacio Vazquez-Abrams

답변:


3

XBee 트랜시버 라인을 살펴보십시오 . 전송 범위 및 원하는 전력 등급에 따라 다양한 유형이 있습니다.

이 장치는 또한 거의 사소한 Arduino 프로젝트와 인터페이스합니다. Serial라이브러리 차종은 XBee의 수신 핀에 직접 호환되는 AVR의 UART 하드웨어의 사용합니다. 또한 XBee Rx / Tx 핀이 5V에서 작동하므로 레벨 시프터가 필요하지 않습니다!

DO 노트는 간단한 3.3V의 LDO 전압 레귤레이터를 사용할 수 있도록하지만, XBee는 3.3V로 전원이 공급되어야합니다.


2

"최상의"는 정의하기 어렵지만 IEEE 802.15.4 트랜시버를 살펴 보겠습니다.

프로젝트 ( https://github.com/briksoftware/gradusnik )에 MRF24J40MA를 사용했습니다 . 사용할 수있는 코드가 있는지 확인할 수 있습니다. 이 프로젝트는 PIC를위한 것이지만, 많은 것들이 실제로 플랫폼에 독립적입니다 (특히 다른 프로젝트들).

이 모듈은 rx / tx에서 약 20mA를 소비하지만 그다지 많지 않습니다. 그러나 배터리 시간이 길어지면 대부분의 시간 동안 모듈을 휴면 상태로 만들어야합니다. 이를 위해 하나의 장치가 코디네이터 역할을하는 비콘 지원 네트워크를 사용할 수 있습니다. 이 모듈은 슬립 모드에서 약간의 µA를 소비합니다 (정확한 숫자는 데이터 시트를 확인하십시오)

Arduino와 인터페이스하는 유일한 문제는 5-> 3.3 레벨 시프터가 필요하다는 것입니다 (Arduino가 여전히 5v를 사용하는 경우).

IEEE 802.15.4 프로토콜에 널리 사용되는 또 다른 트랜시버는 XBee 모듈이지만 훨씬 비쌉니다.


2

무선 문제가 아니라 프로토콜 문제라고 생각합니다.

배터리 절약이 게임의 이름이고 하나의 장치가 적절한 프로그래밍을 통해 임시 "마스터"의 역할을 채택 할 수 있다면 서로의 장치에 타임 슬롯을 할당 할 수 있습니다. 할당이 완료되면 임시 마스터는 피어로 돌아갈 수 있지만 중요한 것은 타임 슬롯의 프레임 워크가 만들어지고 모든 피어가이 프레임 워크로 구매 한 것입니다.

이것은 무엇을 하는가? 타임 슬롯이 있다는 것은 수백 밀리 초 동안 무전기를 셧다운하고 깨어나서 진행중인 전송이 수신되고 있는지 확인할 수 있음을 의미합니다. 피어가 깨어날 때 다른 8 개 피어 중 하나가 메시지를 보내는 지 확인하기 위해 기다려야합니다. 타이밍은 중요하지만 배터리 수명을 연장하려면 프로토콜에 집중하십시오. 이 답변은 단지 아이디어에 지나지 않습니다. 웨이크 업 타임 슬롯은 다른 8 개 피어 각각이 전송하도록 할당 된 8 개의 다른 슬롯으로 세분화 될 것이며, 하나가 전송중인 경우 다른 사람이 먼저들을 수 있는지 여부를 확인하기 위해들을 수있다. 이 같은: -

여기에 이미지 설명을 입력하십시오

"다음"슬롯을 사용하면 새 피어가 그룹에 참여할 수 있습니다.

저전력 트랜시버가 일반적이므로 여기서는 다루지 않겠습니다.


2

저렴한 433 MHz txrx 모듈을 사용해보십시오. 그것들은 편리하고 arduino와 쉽게 인터페이스 할 수 있습니다. 개인 취미 로봇 프로젝트에 사용합니다.


2

NRF24L01 2.4GHz 무선 트랜시버 모듈이 언급되지 않은 이유가 궁금하십니까? 저전력 장치이며 더 낮은 그리기를 위해 대기 모드로 전환 할 수 있습니다. 3.3V에서 작동하므로 저전력 arduino 또는 스플리터를 사용할 수 있으며 무엇보다도 가장 저렴합니까?

다음은 샘플 코드와 함께 Arduino와 인터페이스하는 방법에 대한 정보가 포함 된 nRF24L01 사용 방법 과 함께 nRF24L01 + 제품 페이지 입니다.


0

RFM12B가 떠 오릅니다.

http://www.hoperf.com/rf/fsk_module/RFM12B.htm

일부 기능 :

  • SPI 호환 인터페이스
  • 높은 데이터 속도 (디지털 모드에서 최대 115.2kbps)
  • 2.2V-3.8V 전원 공급 장치
  • 자동 안테나 튜닝
  • 16 비트 RX 데이터 FIFO
  • 프로그래밍 가능한 TX 주파수 편차 (15 ~ 240 kHz)
  • 프로그래밍 가능한 수신기 대역폭 (67 ~ 400 kHz)
  • 아날로그 및 디지털 신호 강도 표시기
  • 외부 MCU 사용을위한 클록 및 리셋 신호 출력

SPI 통신 인터페이스는 Arduino와 공정하게 설정해야합니다.

RFM12B-S2 모델은 요즘 7 달러 미만으로 판매됩니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.