使用pfodWeb来显示C1001人体检测传感器的输出
扫描二维码
随时随地手机看文章
Dfrobot C1001毫米波人体检测传感器提供两种操作模式,跌倒检测模式和睡眠检测模式。这个项目提供了一个显示睡眠检测模式的网页。html用于显示由pfodWebDesigner设计的简单GUI。定义显示的pfod消息非常紧凑,可以通过串行、BLE或HTTP连接提供给pfodWeb.html。串行连接和创建GUI所需的简单代码意味着即使是Arduino Mega也可以使用微处理器连接到C1001。
这里使用FireBeetle ESP32- e V1.0作为微处理器,因为ESP32支持BLE和HTTP连接以及串行连接。
该项目也在Dfrobot C1001毫米波人体检测传感器的网上显示。
pfodWeb和pfodWebDesigner的快速概述
pfodWebis是一款基于网页的免费应用,部分取代了付费Android应用pfodApp。pfodWeb在浏览器中运行,并通过串行或BLE或HTTP连接到您的Arduino板。使用Serial,您可以连接到任何Arduino板并显示其所服务的交互式控制。pfodWeb完全离线运行。不需要互联网连接。只需安装pfodParser库并在pfodParser库的pfodWeb子目录中打开index.html。交互控件完全由Arduino中的代码(由pfodWebDesigner生成)定义。非常紧凑的pfod消息用于发送控件和接收用户的命令。
如果您的Arduino板支持HTTP并且具有200Kb的文件系统,那么您可以将所有pfodWeb文件加载到微处理器上并直接从那里提供服务。
pfodWebDesigneris一个免费的基于web的替代免费的Android应用程序,pfodguide designer。pfodWebDesigner允许您为微处理器设计交互式和响应式用户界面。pfodWebDesigner生成Arduino代码,可与所有通过串行,蓝牙,BLE,短信和WiFi连接的pfodDevices一起工作,而不仅仅是那些具有WiFi支持的pfodDevices。看看如何安装pfodWebDesigner和使用pfodWebDesigner创建GUI。单个pfodWebDesigner控件存储为JSON文件,您可以在其他设计中复制,修改和重用。每个重用的控件都可以在最终设计中单独缩放和定位。
快速启动
安装Arduino IDE V2 -对于Windows,使用直接下载的“Windows ZIP”或普通的“Windows”可执行文件(EXE)。并允许它安装它建议的任何设备驱动程序。
从库管理器中安装最新的pfodParser和SafeString库,或者将libraries.zip解压缩到Arduino库目录
安装DFRobot_HumanDetection-master库(包含在libraries.zip中)
从Arduino IDE板管理器中安装Express Systems V3.3.2对ESP32的板支持
将C1001板连接到ESP,具体连接方法见下文
解压缩C1001_Presence_serial.zip到Arduino Sketch目录,并将草图上传到esp32。pfodWebDesigner还生成BLE和HTTP版本。c1001_presence_blel .zip和C1001_Presence_http.zip是完成的草图
在最新版本的Chrome或Edge或Opera浏览器中,从pfodParser库子目录pfodWeb中打开pfodWeb.html页面,然后选择Serial和Connect to your ESP32。Edge和Opera只适用于Serial。Chrome需要换一面旗帜。请参阅兼容的浏览器记住先关闭Arduino串行监视器。还提供了BLE和HTTP草图。HTTP可以在任何浏览器上工作。
从pfodParse库中,在子目录pfodWeb中,在Chrome或Edge浏览器(>V141)中打开pfodWeb.html,并选择串口连接,115200波特,然后单击连接并配对您的板的串口。
注意:如果Arduino IDE或其他应用程序已经打开了该端口,则此操作将失败。关闭Arduino Serial Monitor。
C1001启动需要超过20秒,所以如果串行连接超时,只需重新连接。
有一个原始消息查看器,您可以通过右键单击打开,其中显示了您的板发送的所有消息,包括调试输出。
连接传感器
连接取决于你的Arduino板。这里的代码有FireBeetle 2 ESP32 V1的设置
Serial1。开始(115200年,SERIAL_8N1 / * rx = * / D10, / * tx = * /这里);//本项目使用FireBeetle 2 ESP32 V1
状态GUI的设计
状态检测GUI非常简单。安装pfodWebDesigner,打开它并加载C1001_Presence。. json绘图文件并编辑它。
从那里你可以编辑你想要的显示。请参阅pfodWebDesigner上的详细教程
完成后,回到控制面板并使用Arduino Export生成完整的Arduino Sketch。可选择Serial、BLE或HTTP连接。
串行是最简单的草图,任何打印调试信息都与pfod消息一起发送,可以在原始消息视图中查看,但您需要最新版本的Chrome, Edge或Opera浏览器才能通过串行连接。
HTTP是最通用的连接。任何浏览器都可以连接,草图还包括端口4989上的tcp/ip服务器,pfodApp Android应用程序将连接到该服务器。然而,你需要一个WiFi功能的板,你需要连接到本地网络。
BLE是第三种选择,如果你的Arduino板支持北欧UART连接。pfodWebDesigner为ESP32生成完整的BLE草图。最新版本的Chrome和Edge浏览器将使用pfodWeb连接,Android也将使用pfodApp连接。
添加C1001代码
完整的代码在C1001_Presence_serial.zip中,BLE和HTTP版本在C1001_Presence_ble.zip和C1001_Presence_http.zip中
需要修改生成的代码以插入来自C1001的读数。文件C1001_basics.cpp /.h是C1001库的一个薄包装。在Dwg_C1001_Presence中,sendIndexedItems()在被请求时发送最新的值。生成的代码具有pfodWebDesigner中使用的典型值
此方法需要更新以使用C1001_basic.cpp文件get…()方法
需要进行的其他编辑是。进气阀打开文件。C1001需要初始化,需要定时请求一组新的读数。此外,每次读取C1001大约需要0.6秒,因此一次读取所有5个值将使循环和连接代码延迟约2.5秒。为了避免处理来自pfodWeb的请求的2.5秒延迟,每次读取一个,并在每次读取处理和接收到的请求之间调用handle_pfodParser()方法。
结论
本项目使用pfodWeb来显示C1001人体检测传感器的输出。使用pfodWebDesigner设计图形用户界面,并通过Serial提供服务。串行连接允许任何Arduino板提供自己的定制GUI来控制其操作并显示其测量值。还提供了BLE和HTTP版本(由pfodWebDesiger生成)。
本文编译自hackster.io





