当我们在商店购物时,我们会检查顾客数量较少的柜台。如果我们不用靠近柜台就知道每个柜台的状态,这样我们就可以不用去柜台就可以选择柜台,从而节省我们宝贵的时间。同样的事情也适用于入口处。
介绍:
本项目主要基于Bolt 物联网平台。您可以获得 Bolt Wi-Fi 模块和亚马逊云的终身访问权限。
该项目的主要功能是读取传感器值并打开/关闭 LED。如果 PIR 传感器值为“零”,则 Bolt Wi-Fi 模块将关闭 LED,直到传感器读数变为 1。如果传感器值为“ONE”,则它将打开蜂鸣器进行警报无缘无故站在PIR传感器前的顾客。然后它关闭蜂鸣器并以较低的强度打开 LED 以表明状态已更新并且 LED 以全强度发光。因此,根据 LED 指示,我们可以选择排队较少的柜台来为我们的杂货开具账单。如果我们在离计费柜台不同的距离放置更多的传感器,那么每个柜台的客户流量指示就会更准确。
次要功能是向客户发送电子邮件或在 Telegram 频道中发布有关其商店入口处客户流量的信息。基本上,这在任何节日销售时都会有所帮助。不在店内的顾客可通过店内电报频道查询排队人数情况。VIP 客户也可以通过电子邮件获得更新。因此,客户可以管理他们的时间来商店购物。
构建电路的步骤:
拿一个 LED 和 330 欧姆电阻。借助 Bolt IoT 套件中提供的试验板,如图所示进行连接。确保 LED 的长脚(正极端子)连接到电阻器,LED 的负脚保持在另一端接地。
指示客户流量的 LED
现在添加蜂鸣器以提醒无故阻挡 PIR 传感器的人。确保将蜂鸣器的短腿接地。
蜂鸣器
接下来我们应该将 PIR 传感器添加到电路中,如下图所示。但对于 PIR 传感器,共有 3 个端子(Vcc、GND、输出),因此我们应该使用跳线。
PIR 传感器连接
现在使用 Bolt Wi-Fi 模块并按照示意图使用跳线进行连接,如下所示。
最终电路 - 硬件连接
软件应用简介:
1.Bolt IoT Bolt Cloud:在云端创建账户
第 1 步:创建 Bolt 云帐户
1.使用链接www.cloud.boltiot.com登录BOLT云
2.单击“注册”选项并填写所有凭据
3.点击“注册”
4.现在确认您的邮件并点击“开始”
第 2 步:将 Bolt Wi-Fi 模块连接到云端
1. 下载 Bolt IoT 应用程序并将其安装到您的手机中,该应用程序将在 Play 商店中可用。
2. 使用相同的 Bolt Cloud 凭据登录,并按照应用程序中给出的说明将您的模块链接到云。
您可以在https://trainings.boltiot.com中找到它
完成上述步骤后,您必须创建产品。
创建产品:
单击侧栏中的产品图标以配置您的设备。
单击添加产品,将产品名称命名为 Customer_Flow,同时选择“输入设备”和“GPIO”,然后单击“完成”。
现在如图所示进行硬件设置,不要忘记为 0 数字引脚指定变量名称为“pir”,如图所示。
现在单击代码并选择 js(java 脚本)。将名称命名为“customer_flow”并编写代码。
JavaScript 代码
代码:
setChartLibrary('google-chart'); setChartTitle('Customer flow'); setChartType('barGraph'); setAxisName('time_stamp','pir'); setAnimation(true); setCrosshair(true); plotChart('time_stamp','pir');
保存代码后,如下所示链接设备。只有当您的设备使用 Micro USB 数据线开机时,您才会收到在线指示。
还要确保蓝灯和绿灯都处于开启状态。
链接设备
现在通过单击“操作”按钮查看设备输出,输出图将如下所示。只有在那个特定时间有人站在 Pir 传感器前面时,输出值才会变高。
输出
API 密钥:
在 API 部分启用 Bolt API,无需云的帮助,即可在 Ubuntu 中使用它来控制设备。
1.点击Bolt云中的API部分
2.启用API密钥
3.生成API密钥
2. Ubuntu 服务器:
使用给定的链接下载并安装VMWARE 工作站和Ubuntu 服务器
https://my.vmware.com/web/vmware/free#desktop_end_user_computing/vmware_workstation_player/12_0
http://releases.ubuntu.com/16.04/ubuntu-16.04.6-server-i386.iso
安装 UBUNTU 软件包:
sudo apt-get -y update sudo apt install python3-pip sudo pip3 install boltiot
3.电报API:
创建电报频道
转到 TELEGRAM 应用程序的主屏幕。
从左侧滑动以显示菜单。
点击“新频道”。
在下一个屏幕中,将频道设置为公共频道,并为频道和链接命名,如下所示。
现在使用搜索栏搜索 Bot Father 并通过键入“/start”创建新的 bot
这里将机器人命名为“NoWait alert Bot”,将机器人用户名命名为“lesswait alert_bot”
记下机器人令牌,这是连接设备和应用程序最重要的令牌。
机器人令牌
现在让机器人成为频道的管理员。为此,请单击如下所示的添加管理员。
使用机器人名称搜索机器人并将其设置为管理员。确保授予管理员权限,如下所示。
如下图,Bot现在已经变成了Admin。
我们的机器人现在已经成为管理员
4. 创建 Mail-Gun 帐户:
使用此链接https://www.mailgun.com ,您可以按照说明创建 mailgun 帐户。
在 Ubuntu 中编写 PYTHON 代码:
登录到 ubuntu 并执行以下步骤。
在 python 库中创建一个新文件来保存我们的配置。
连接到 UBUNTU 操作系统并输入“ sudo mkdir waiting_line ”
输入“ cd waiting_line ”进入文件夹
在文件夹中创建一个 python 文件作为“ sudo nano waiting_line.py ”
添加以下代码:
1.您可以在Bolt物联网云平台中找到“API Key”和“Device Id”
2. 在 Telegram 中,您可以找到“聊天 ID”和“机器人 ID”。
3. Mailgun API 密钥、发件人电子邮件和沙盒 URL 可以在您的 Mailgun 帐户中找到。
在上面的代码中,“ get_sensor_value_from_pin() ”是声明从所选引脚返回传感器值的函数。
“ mybolt.digitalRead() ”行返回该引脚的值。
Bolt Cloud 从 pin 返回的响应需要转换为 JSON 以便于使用。
“ data= json.loads(response) ” 将来自云的响应转换为 JSON 对象
如果云返回1则请求成功
如果1中的任何其他内容表示请求失败。
现在向Telegram发送一个请求,向我们在使用该函数之前创建的频道发送一条消息,如下所示。
如上所示,函数“ send_telegram_message() ”用于通过电报发送消息。给出了带有 bot id 的 Url。
这里我们需要向电报服务器发出 HTTP 请求。因此,我们使用 Url。此处使用“ POST 请求”,其中包含所有数据,如 Url 和请求中包含的数据。
这里请求的状态存储在“ ok ”字段中,为 True 或 False
这里count = 0用于对传感器读取的读数进行计数。
现在不会有错误,因为我们已经使用Try – Except 块检查了错误。
获取传感器值并根据条件执行的代码:
我们使用 While 循环无限次运行此代码。要在运行时停止执行,我们必须使用 CNTRL+C 按钮。
当我将PIR传感器连接到GPIO-0引脚时,我使用了mybolt.digitalRead('0') 。
上面代码中使用ifcondition是为了找出任何错误。
如果传感器值等于“ ZERO ”,则传感器前将没有人站立,这表明客流较少。
在上面的代码中,mod函数用于通过Email和Telegram依次发送当前流的状态。
如果mod >0条件用于当读取传感器值奇数次为 0 时向客户发送电子邮件。对于第一,第三,第五等等。
同样,如果它是偶数次,如第 2、4、6 等。将发送电报。
也适用于我之前讨论过的计费柜台等情况。客流量减少的指示通过关闭 LED 和蜂鸣器来显示。
如果传感器值等于' ONE ',那么就会有一些人在排队,这表明客流。
如果传感器值为1 ,则它会如上所述发送电子邮件和电报。
为指示已确认的客户流量,LED将开始以 100 强度发光。经过一段时间的睡眠后,它会充满强度地发光。
蜂鸣器的优点:这里的蜂鸣器用于无故提醒任何站在 pir 传感器前面的人。因此,他们可以移到一边,PIR 传感器的下一个读数将为“零”。通过哪些客户可以与 Emial 或 Telegram 联系。
项目应用:
1.在账单柜台
2. 每当有节日特卖时,在入口处:
3.也可用作智能呼叫铃系统。
项目示意图:
黑线 - 接地
红线 - 5V 电源
黄色——GPIO 0 引脚
紫色 – GPIO 1 针
棕色 – GPIO 2 针
结果展示:
如果计费柜台有更多的客户流量,您将通过发光的 LED 通知您,如下所示
LED指示
如果在节日销售期间入口门前有更多的客户流量,并且您通过电子邮件通知。
高客户流量指示的电子邮件
如果在节日销售期间入口门前的客流量低,并且您通过电子邮件通知。
低客户流量指示的电子邮件
Telegram 频道帖子如下所示。
电报帖子
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
全部0条评论
快来发表一下你的评论吧 !