ArduinoLoRa 休眠定时器唤醒 5.5uA

提示1:锐米所有 LoRa 产品严格遵循国际标准的 LoRaWAN 协议
提示2:您可以免费复制,修改和商用本项目,请注明锐米原创
提示3:如果您有其他 LoRa 需求或建议,欢迎联系锐米 [email protected]

运行效果

LoRa 模块入网后将自动休眠,Arduino 上电后休眠,将电流表串联在上述电路中测量值为 5.5uA。定时器每隔 4 秒唤醒 Arduino 电流增大,随后又进入休眠。

ArduinoLoRa 休眠定时器唤醒 5.5uA 演示视频

ArduinoLoRa 休眠定时器唤醒 5.5uA_第1张图片

低功耗是核心技术

超过 80% 的 LoRa 终端将由电池供电,这样一来,低功耗将是一个核心的技术挑战,一旦电能耗尽设备将“罢工”,在某些场合电能意味着 LoRa 终端的寿命。

ArduinoLoRa+ 是锐米推出的低成本快速开发 LoRa 终端方案,即使开启“定时器”精准唤醒,它也能达到令人满意的低功耗(5.5uA),延长电池续航能力。

下面,逐步解密 ArduinoLoRa+ 定时器唤醒低功耗是如何实现的。

组件和材料

ArduinoLoRa 休眠定时器唤醒 5.5uA_第2张图片LoRa 开发板 x 1 采购链接


电池盒电池盒 x 1 采购链接


南孚 7 号电池7 号电池 x 2 采购链接


鳄鱼夹鳄鱼夹 x 2 采购链接


ArduinoLoRa 休眠定时器唤醒 5.5uA_第3张图片杜邦线 x 8 采购链接

工具和软件

Arduino IDEArduino IDE 下载链接


下载烧录器下载器 采购链接


数字万用表数字万用表 采购链接


技术细节

烧录 Arduino 休眠唤醒代码

按下表连接 LoRa 开发板 和 下载烧录器

LoRa 开发板 杜邦线 下载烧录器
VCC 3.3
GND GND
RX 绿 TXD
TX RXD
DTR DTR
ArduinoLoRa 休眠定时器唤醒 5.5uA_第4张图片

设置 Arduino IDE

设置 Arduino IDE

添加 Narcoleptic 低功耗定时器库

使用 Arduino IDE 打开工程,点击"Sketch -> Include Library -> Add .ZIP Library…"
Narcoleptic 软件库 下载链接

编译和烧录下述休眠定时器唤醒代码

#include 

void setup () 
{  
  // disable ADC
  ADCSRA = 0;  
}  // end of setup

void loop () 
{ 
  flash();
  lowpwrDelay(4000); // During this time power consumption is minimised
}

void flash()
{
  pinMode(LED_BUILTIN, OUTPUT);
  
  for (byte count = 0; count < 10; ++count)
  {
    digitalWrite(LED_BUILTIN, HIGH);   // turn the LED on (HIGH is the voltage level)
    delay(50);                       // wait for 50ms
    digitalWrite(LED_BUILTIN, LOW);    // turn the LED off by making the voltage LOW
    delay(50);                       // wait for 50ms    
  }
  
  pinMode(LED_BUILTIN, INPUT);
}

void lowpwrDelay(long milliseconds)
{
  while(milliseconds > 0)
  {
    if(milliseconds > 8000)
    {
      milliseconds -= 8000;
      Narcoleptic.delay(8000);
    }
    else
    {
      Narcoleptic.delay(milliseconds);
      break;
    }//if
  }//while
}

硬件接线

如下图所示,连接 LoRa 开发板和电池即可。

ArduinoLoRa 休眠定时器唤醒 5.5uA_第5张图片

你可能感兴趣的:(LoRaDevice,LoRaWAN,LoRa,LoRaWAN,Arduino,物联网,超低功耗)