0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Air8000-LuatOS exvib扩展库使用全流程:实战驱动的操作解析

合宙LuatOS 来源:合宙LuatOS 作者:合宙LuatOS 2025-11-04 18:28 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

在振动传感领域,Air8000-LuatOS的exvib扩展库具备显著优势。本文以实战驱动,详细解析其全流程使用方法,包括环境配置、核心功能实现及数据验证,确保开发者能快速构建稳定可靠的解决方案。

一、GSENSOR 概述

gsensor 即 G-sensor,重力传感器,又名加速度传感器。Air8000 使用的 G-sensor 传感器型号是 da221。

da221 传感器是一种低功耗、高性能的电容式三轴线性加速度计,采用微机械技术开发。该器件采用 2x2x1.1 mm 的 LGA 封装,保证在 -40°C 至 +85°C 的宽温度范围内工作。传感器元件采用单晶硅通过 DRIE 工艺制造,并通过密封的硅帽保护免受环境影响。该器件具有用户可选的 ±2g/±4g/±8g 满量程测量范围,数据输出速率从 1Hz 到 1 kHz,并集成了信号调节和主动检测功能。da221 具有断电模式,非常适合手机电源管理。一个独立且灵活的中断大大简化了各种运动状态检测的算法

二、演示功能概述

使用 Air8000 开发板,本示例主要是展示 exvib 库的使用,提供了三种场景应用:

1,微小震动检测:用于检测轻微震动的场景,例如用手敲击桌面;加速度量程 2g;

2,运动检测:用于电动车或汽车行驶时的检测和人行走和跑步时的检测;加速度量程 4g;

3,跌倒检测:用于人或物体瞬间跌倒时的检测;加速度量程 8g;

在震动检测方面提供了两种模式,有效震动模式和持续震动检测模式:

持续震动检测模式:震动强度超过设定阈值时,会进入中断处理函数,获取 xyz 三轴的数据

有效震动模式:当 10 秒内触发 5 次震动强度超过设定阈值时,持续触发震动事件,并执行相应的处理函数,30 分钟内只能触发一次,直到 30 分钟之后,再重新开始检测

三、准备硬件环境

本篇教程用 Air8000 开发板来开发调试。大家准备好硬件环境。

四、准备软件环境

1. 烧录工具Luatools;

2. 内核固件文件(底层 core 固件文件):LuatOS-SoC_V2014_Air8000;此页面有新版本固件的话选用最新版本固件,本次操作用的是 101 号固件,可以根据自己的需求选择自己需要的固件。

3. LuatOS 需要的脚本和资源文件:https://gitee.com/openLuat/LuatOS/tree/master/module/Air8000/demo/gsensor/vibration

4. lib 脚本文件:使用 Luatools 烧录时,勾选 添加默认 lib 选项,使用默认 lib 脚本文件,如果没有下载最新的 lib,可以在 luatos 库里面下载最新的 lib 使用:https://gitee.com/openLuat/LuatOS/tree/master/script/libs;

准备好软件环境之后,接下来查看如何烧录项目文件到 Air8000 开发板中,将本篇文章中演示使用的项目文件烧录到 Air8000 开发板中。(https://docs.openluat.com/air8000/common/Luatools/)

五、软硬件参考

5.1 API 接口介绍

本教程使用 api 接口为:

https://docs.openluat.com/osapi/ext/exvib/

六、代码示例介绍

6.1 代码讲解

main.lua

主要是加载 vibration 模块

wKgZPGkF8sSAVIoqAAoeSA5_vkU414.png

vibration.lua

加载了 exvib 库,开启 task 协程,调用 exvib.open(1)接口开启振动监测模式 1:微小震动检测,设置 gpio.WAKEUP2 防抖 100ms,防抖的作用是 100ms 只能触发一次,防止误触,然后设置中断模式触发,关于触发方式我们提供了两种场景的应用:

第一种场景是持续震动场景:只要检测到震动就会一直触发

第二种场景是有效震动场景:在 10 秒内检测到 5 次震动则判定为有效震动,有效震动触发之后,30 分钟之后才能再次触发,有效震动的逻辑大概是用循环定时器的方式每秒都把 tick 值 +1,然后每次触发震动则记录 tick 值到表里面,然后对表里面的最后一次触发的 tick 和第一次触发的 tick 进行对比,如果小于 10 并且第五次的值为有效值就判定为有效震动,也可以改动成自己项目的有效震动逻辑。

wKgZO2kF8yeANb5zAA30EqL1CGA935.png

6.2 效果展示

有效震动模式日志:

wKgZPGkF82eAas1TAAUGq0Bn3HU450.png

持续震动模式日志:

wKgZPGkF87yALlaeAAWi1MmmWV0376.png

七、总结

本示例介绍了如何用 Air8000 开发板展示内部三轴加速度传感器的震动触发功能。

八、注意事项与常见问题

1.exvib.lua 可适用于内部集成了 G-Sensor 加速度传感器 DA221 的模组型号,

目前仅有 Air8000 系列模组内置了 DA221,Air7000 推出时也会内置该型号 G-Sensor;

2.DA221 在 Air8000 内部通过 I2C1 与之通信,并通过 WAKEUP2 接收运动监测中断,

如您使用其它型号模组外接 DA221 时,比如 Air780EGH,建议与 Air8000 保持一致也选用 I2C1 和 WAKEUP2

(该管脚即为 Air780EGH 的 PIN79:USIM_DET),这样便可以无缝使用本扩展库,DA221 的供应商为苏州明皜

如需 DA221 或者其他更高端的加速度传感器可以联系他们;

3.DA221 作为加速度传感器,LuatOS 仅支持运动检测这一功能,主要用于震动检测,运动检测,跌倒检测,

搭配 GNSS 实现震动然后定位的功能,其余功能请自行研究,我们提供了三种应用场景,如果需要适配自己的场景需求,

请参考手册参数自行修改代码,调试适合自己场景的传感器值,我们不提供 DA221 任何其它功能的任何形式的技术支持;

da221 手册:da221.pdf


今天的内容就分享到这里了~

审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • gsensor
    +关注

    关注

    1

    文章

    2

    浏览量

    1819
  • LuatOS
    +关注

    关注

    0

    文章

    169

    浏览量

    2745
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    LuatOS:485 总线硬件设计要点与 exmodbus 开发实战

    与 UART 的关联、电平匹配处理及不同防护等级的 TVS 器件选型,同时介绍 LuatOS 轻量化的 exmodbus 扩展,并给出该实现 Modbus RTU 主站通信的代码示
    的头像 发表于 03-19 17:57 201次阅读
    <b class='flag-5'>LuatOS</b>:485 总线硬件设计要点与 exmodbus <b class='flag-5'>库</b>开发<b class='flag-5'>实战</b>

    AirCloud平台+excloud扩展:核心功能实战应用!

    扩展的负载均衡模块优化流量处理,或是利用安全扩展功能强化平台防护。所有示例均以实战落地为核心,拆解操作细节与配置逻辑,让用户直观感受二者协
    的头像 发表于 12-24 17:17 738次阅读
    AirCloud平台+excloud<b class='flag-5'>扩展</b><b class='flag-5'>库</b>:核心功能<b class='flag-5'>实战</b>应用!

    Air8000 BLE外围模式解析:数据收发实战指南!

    Air8000的BLE外围设备模式(peripheral)是实现低功耗蓝牙通信的关键功能,它既能主动向中心设备发送通知数据,也能接收中心设备传回的信息。本文将通过具体示例,详细拆解这一模式的操作流程
    的头像 发表于 11-24 14:26 2103次阅读
    <b class='flag-5'>Air8000</b> BLE外围模式<b class='flag-5'>全</b><b class='flag-5'>解析</b>:数据收发<b class='flag-5'>实战</b>指南!

    Air8000 LuatOS exgnss扩展应用秘籍:定位开发避坑指南!

    LuatOS exgnss扩展的使用中,开发者常因坐标系误区或模式管理不当踩坑。本秘籍结合实战经验,针对Air8000平台,系统总结常见
    的头像 发表于 11-14 15:26 1994次阅读
    <b class='flag-5'>Air8000</b> <b class='flag-5'>LuatOS</b> exgnss<b class='flag-5'>扩展</b><b class='flag-5'>库</b>应用秘籍:定位开发避坑指南!

    LuatOS exgnss扩展实战进阶:GNSS功能开发流程

    GNSS功能开发涉及多环节协同,LuatOS exgnss扩展是其中的关键枢纽。本文以流程探秘形式,从硬件准备、固件烧录到代码实现,详解
    的头像 发表于 11-14 15:24 6031次阅读
    <b class='flag-5'>LuatOS</b> exgnss<b class='flag-5'>扩展</b><b class='flag-5'>库</b><b class='flag-5'>实战</b>进阶:GNSS功能开发<b class='flag-5'>全</b><b class='flag-5'>流程</b>!

    Air8000-LuatOS exvib扩展实操指南:流程技术细节深度解读

    掌握exvib扩展的使用,是提升Air8000-LuatOS项目开发效率的关键。本文以流程
    的头像 发表于 11-01 20:09 387次阅读
    <b class='flag-5'>Air8000-LuatOS</b> <b class='flag-5'>exvib</b><b class='flag-5'>扩展</b><b class='flag-5'>库</b>实操指南:<b class='flag-5'>全</b><b class='flag-5'>流程</b>技术细节深度解读

    Air8000 模块 CAN 接口实战开发:从入门到配置的完整流程指南

    在工业通信与物联网应用中,CAN 总线以其高可靠性和实时性成为关键通信方式。Air8000 模块集成 CAN 接口后,为设备互联提供了强大支持。本文将带你进行一次完整的实战演练,系统解析
    的头像 发表于 10-29 14:05 639次阅读
    <b class='flag-5'>Air8000</b> 模块 CAN 接口<b class='flag-5'>实战</b>开发:从入门到配置的完整<b class='flag-5'>流程</b>指南

    BLE 5.4时代下,Air8000蓝牙通知与手机读写操作实战攻略

    随着BLE 5.4的普及,Air8000模块蓝牙通信性能再升级。本篇将从实战角度出发,讲解如何通过Air8000发送设备通知,以及如何利用手机APP对从机设备进行数据读写,助你高效完成蓝牙项目开发
    的头像 发表于 08-13 15:31 1054次阅读
    BLE 5.4时代下,<b class='flag-5'>Air8000</b>蓝牙通知与手机读写<b class='flag-5'>操作</b><b class='flag-5'>实战</b>攻略

    是否必须使用LuatIO?Air8000 GPIO配置与设计规范深度解析

    Air8000的GPIO应用开发中,LuatIO的角色至关重要。本文剖析其必要性,结合设计注意事项,为开发者提供从配置到优化的流程指南。 想要4G+GNSS+WiFi+BLE+TTS+VOLTE
    的头像 发表于 07-29 13:54 674次阅读
    是否必须使用LuatIO?<b class='flag-5'>Air8000</b> GPIO配置与设计规范深度<b class='flag-5'>解析</b>

    SFUD驱动实战手册:串行SPI Flash开发流程解析

    针对嵌入式系统中SPI Flash的多样化需求,SFUD提供了灵活且通用的解决方案。本文将从环境配置、初始化、基本操作到高级特性,完整展示SFUD的应用
    的头像 发表于 07-29 13:19 838次阅读
    SFUD<b class='flag-5'>驱动</b><b class='flag-5'>库</b><b class='flag-5'>实战</b>手册:串行SPI Flash开发<b class='flag-5'>全</b><b class='flag-5'>流程</b><b class='flag-5'>解析</b>

    高效开发:解锁Air8000 LuatOS softAP配网功能的核心技术!

    为缩短物联网项目开发周期,掌握高效的配网技术至关重要。本文聚焦Air8000平台,深入讲解如何利用LuatOS系统开发softAP配网功能,通过优化代码架构与协议设计,实现设备快速、稳定的网络接入
    的头像 发表于 07-17 15:49 769次阅读
    高效开发:解锁<b class='flag-5'>Air8000</b> <b class='flag-5'>LuatOS</b> softAP配网功能的核心技术!

    LuatOS蓝牙配网开发全攻略:以Air8000为核心实战教学

    聚焦Air8000核心板的蓝牙配网功能,本文整合开发流程:硬件准备、脚本编写、固件烧录及测试验证,为开发者提供一站式解决方案。 一、蓝牙配网概述   文章开篇先简单介绍下 Air8000
    的头像 发表于 07-10 17:17 742次阅读
    <b class='flag-5'>LuatOS</b>蓝牙配网开发全攻略:以<b class='flag-5'>Air8000</b>为核心<b class='flag-5'>实战</b>教学

    LuatOS蓝牙配网流程解析Air8000开发入门必备

    针对Air8000开发板的蓝牙配网功能,本文通过详细步骤分解技术要点,结合LuatOS系统特性,帮助开发者从零基础搭建蓝牙通信环境,掌握关键代码逻辑与调试技巧。 一、蓝牙配网概述   文章开篇先简单
    的头像 发表于 07-10 17:11 812次阅读
    <b class='flag-5'>LuatOS</b>蓝牙配网<b class='flag-5'>全</b><b class='flag-5'>流程</b><b class='flag-5'>解析</b>:<b class='flag-5'>Air8000</b>开发入门必备

    栈开发进阶指南:LuatOS-log从入门到实战

    本文将带你深入探索LuatOS系统中log的核心原理与实战技巧,通过代码示例解析日志管理、错误追踪及性能优化的最佳实践,助力栈工程师构建
    的头像 发表于 05-15 16:12 2994次阅读
    <b class='flag-5'>全</b>栈开发进阶指南:<b class='flag-5'>LuatOS</b>-log<b class='flag-5'>库</b>从入门到<b class='flag-5'>实战</b>!

    解锁LuatOS-log栈工程师的日志管理实战课!

    针对栈开发者设计的实战教程,本文聚焦LuatOS平台log的高效使用,从基础配置到高级调试策略,手把手教你搭建可扩展的日志系统,提升项目
    的头像 发表于 05-12 15:23 1624次阅读
    解锁<b class='flag-5'>LuatOS</b>-log<b class='flag-5'>库</b>:<b class='flag-5'>全</b>栈工程师的日志管理<b class='flag-5'>实战</b>课!