×

使用HDX和Nanoframework检测振动

消耗积分:0 | 格式:zip | 大小:0.25 MB | 2022-11-04

分享资料个

描述

嗨,大家好 :-)

让我们使用 HDX 振动传感器和 Esp32 和 NanoFramework 进行振动检测!

HDX 振动传感器是用于振动检测的小型传感器

你应该把它放在正确的方向。否则将无法正常工作!(它的方向是垂直的)

你可以用万用表找到它的方向。将电压表设置为二极管模式,然后将万用表线放在 HDX 引脚上,之后您必须摇动 HDX。现在您必须听到断开连接并重新连接序列的声音。

好的,现在我们必须将 HDX 连接到板(esp32)。

 

poYBAGNkWyGAF6KBAAJTXPiJK78042.png
 

在这里,我将 HDX 连接到 GPIO 21。

您必须在您的设备上安装 nanoframework

NanoFramework Esp32 - Hackster.io

好的,一切准备就绪;-)

我为振动传感器开发了一个包。目前我的包只支持 HDX 传感器。

(也许我会在这个包中添加另一个传感器)

你可以从 github (github/alirezap) 得到它

不幸的是,我无法将此包发布为 nugget 包(尝试将其发布为 nugget 包时会出现异常),因此您应该从 github 下载源代码并将其添加到您的项目中。

好的,现在让开发

打开 Gpio(这里是 21)

将其设置为输入

设置 gpio 事件处理程序

_shockDetection = s_GpioController.OpenPin(_pinNumberShockDetection);
_shockDetection.SetDriveMode(GpioPinDriveMode.Input);
_shockDetection.ValueChanged += _shockDetection_ValueChanged;

private static void VibrationObject_InvokeEvent(object sender, EventArgs e)
{
Debug.WriteLine("Vibrate!!!!!!");
}

将包添加到您的项目

 

poYBAGNkWySAX4scAAHGJAlgdQs761.png
 

从包创建实例

vibrationObject = newAP.NanoFrameWork.Vibration.HDX();

设置阈值。(默认为 15)

vibrationObject.Threshold = 20;

阈值是秒针状态变化的计数。

设置事件处理程序

vibrationObject.InvokeEvent += VibrationObject_InvokeEvent;

现在在 gpio valuechange 事件处理程序中将 gpio 状态传递给包

private static void _shockDetection_ValueChanged(object sender, GpioPinValueChangedEventArgs e)
{
vibrationObject.AnalyseSignal(e.Edge);
}

完整代码:

 

pYYBAGNkWyeAYkCOAAEGlTplSwM614.png
 

运行项目并享受

 

poYBAGNkWymAQqGGAADABOdCpGU249.png
 

谢谢微软

感谢 Nanoframework 团队。这是芯片发展的未来


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

评论(0)
发评论

下载排行榜

全部0条评论

快来发表一下你的评论吧 !