AS3935 Franklin Lightning Sensor

AS3935 雷电传感器模块资料

用于 Arduino / 气象站 / 户外监测项目的雷电传感器资料页。重点说明 I2C 接线、INT 中断脚、噪声/干扰判断、室内外模式和官方库例程。

模块类型 雷电传感器
主控芯片 AS3935
I2C/SPI通信接口
IRQ事件中断
40km资料标称范围

参数来自 AS3935 公开数据手册和 SparkFun Arduino 库。不同模块引脚顺序可能不同,实际以板子丝印为准。

AS3935 雷电传感器模块

淘宝 SKU:U2304-2

SKU U2304-2
进入淘宝购买

Overview

模块介绍

AS3935 是一颗可编程雷电传感器芯片,可以检测附近雷电活动,并估算到风暴前沿的距离。芯片带有噪声评估和人为干扰识别算法,因此串口里常见的结果不只有 Lightning,也可能是 Noise 或 Disturber。

不是普通测距模块

没有雷电或强电磁事件时,长期没有报警是正常现象,不能用手靠近来验证距离。

INT 必须接

官方 Basic 例程使用 INT 中断提示事件,Arduino 需要把模块 INT 接到数字脚,例如 D4。

环境影响明显

电机、继电器、开关电源、长导线和室内电器可能触发 Noise / Disturber,需要调阈值或远离干扰源。

Wiring

Arduino UNO / Nano I2C 接线图

自绘无水印示意图。先按这 5 根线接 I2C:VCC、GND、SDA/MOSI、SCL、IRQ/INT。MISO、CS 等 SPI 脚先不要接。

AS3935 雷电传感器模块接 Arduino UNO I2C 接线图
AS3935 模块Arduino UNO / Nano说明
VCC5V 或 3.3V按你手里模块丝印供电;芯片资料支持 2.4V 到 5.5V。
GNDGND必须共地。
SDA / MOSIA4 / SDAI2C 数据线。有些板子丝印写 MOSI,I2C 模式下就是 SDA。
SCLA5 / SCLI2C 时钟线。
IRQ / INTD4事件中断脚,SparkFun Basic I2C 例程默认使用 D4。
MISO / CS不接SPI 模式用脚,I2C 基础例程先不要接。
A0 / A1 / SI按模块默认A0/A1 决定地址;SI 决定 I2C/SPI 模式。模块已设好 I2C 时先不要动。

Arduino Examples

Arduino 例程

先放 SparkFun 官方库的 Basic I2C 例程,适合客户验证模块是否能通信、INT 是否触发、串口是否能输出 Noise / Disturber / Lightning。

库安装:Arduino IDE 打开库管理器,搜索并安装 SparkFun AS3935 Lightning Detector

串口:打开串口监视器,波特率设为 115200

常见地址:例程默认 AS3935_ADDR 0x03,如果模块跳线不同,需要改地址。

/* SparkFun AS3935 BasicLightning I2C */
#include <SPI.h>
#include <Wire.h>
#include "SparkFun_AS3935.h"

#define AS3935_ADDR 0x03
#define LIGHTNING_INT 0x08
#define DISTURBER_INT 0x04
#define NOISE_INT 0x01

SparkFun_AS3935 lightning(AS3935_ADDR);
const int lightningInt = 4;

void setup() {
  pinMode(lightningInt, INPUT);
  Serial.begin(115200);
  Wire.begin();
  if (!lightning.begin()) while (1);
}

void loop() {
  if (digitalRead(lightningInt) == HIGH) {
    int intVal = lightning.readInterruptReg();
    if (intVal == LIGHTNING_INT) {
      byte distance = lightning.distanceToStorm();
      Serial.print(distance);
      Serial.println("km away");
    }
  }
}
下载官方 Basic I2C 例程

FAQ

常见问题与售后排查

没有打雷时没有输出,是坏了吗?

不是。AS3935 不是普通触摸或距离传感器,没有雷电或强电磁事件时可能长时间没有报警。先看串口启动信息,确认能显示模块 Ready。

串口显示 Noise 或 Disturber 是什么意思?

Noise 表示环境噪声过高,Disturber 表示疑似人为干扰,不一定是真雷电。可以远离电机、继电器、开关电源、电脑电源线,再调整噪声/干扰阈值。

为什么一直显示模块启动失败?

优先检查 VCC/GND、SDA/SCL、I2C 地址和模块通信模式。UNO/Nano 的 I2C 是 A4/A5;如果地址跳线不是 0x03,需要改例程里的 AS3935_ADDR

室内和室外模式怎么选?

室内模式抗干扰更强但灵敏度较低;户外项目可以在例程里启用 lightning.setIndoorOutdoor(OUTDOOR),同时注意防水和远离金属外壳干扰。

References

公开资料链接

只放公开可访问链接和官方库入口,不放客户截图、订单信息或聊天隐私。

Datasheet

AS3935 数据手册

说明检测范围、I2C/SPI 接口、IRQ、供电范围、噪声和干扰判断等。

打开 PDF

GitHub

SparkFun AS3935 Arduino Library

包含 Basic I2C、Basic SPI、更多功能和天线调谐示例。

查看 GitHub

Library

Arduino Library List

可在 Arduino IDE 库管理器里搜索安装 SparkFun AS3935 库。

查看库