资料介绍
描述
让我们假设一个情况,假设你是一个国际农业组织的首席执行官,该组织在全球拥有农田,你必须通过采取足够的措施来确保所有人都装备精良。如果 Simple Bolt 模块可以大规模减轻这种责任负担怎么办?好的!不是吗?是的,即使不使用传感器,这个项目也能让您通知您所选城市的天气!这只是一种情况,它还可以用于您的个人生活,当您即将离开家时发出警报,并在您享受美丽的雨时自动在社交媒体上发布一些美丽的想法,从而为您的天气做好准备!
一、简介
该项目非常有用,它提供当前天气并通过 SMS 警报和针对不同天气条件的不同频率的 BUZZER 警报进行通知,并且还通过针对不同天气以不同强度为 LED 供电。twilio消息服务用于向用户发送 SMS 。有趣的是,这里的天气数据是通过Openweathermap提供的api而不使用任何传感器收集的。只需在 api 链接中更改城市名称,我们就可以获取世界任何地方的天气。在这里,Integromat应用程序用于通过创建不同的场景在 Twitter 上创建关于“你的想法”的不同天气的帖子。这Bolt Wi-fi 模块通过系统中ubuntu OS终端编写的python 代码连接。
2. 工作
2.1 开放天气地图
在这里,我们使用该组织提供的 URL,其中包含一个api ,可以帮助我们全天候收集任何地方的天气数据。网址如下,
url = https://api.openweathermap.org/data/2.5/weather?q=cityname,country-code&appid="your api id"
您可以在这里使用您的凭据简单地登录到他们的门户网站,然后您将收到一封带有您的 api 密钥的邮件,
在这里,您还可以通过不同的订阅付费和免费使用。在这里,我们使用免费订阅。一旦 URL 准备好,我们就可以简单地将它应用到我们在 ubuntu 终端中编写的 python 代码中。
2.2 Python编码
下面给出的代码从“ OWM ”中检索天气数据并将其存储在变量weather中,
json_data=requests.get(url).json()
weather = json_data['weather'][0]['id']
另一个任务是从 URL 提供的数值中检测天气。那就是我们使用的 URL 给出了一个数值,该数值旨在检测特定的天气状况,只需参考下面给出的链接,
链接:- https://openweathermap.org/weather-conditions
在这里,我们可以看到代表特定天气情况的几个值,例如800表示晴天,502表示大雨等。所以我们可以根据这些值编写代码,即我们可以将变量weather的值与这些特定的数值并确定天气,然后我们可以据此发送短信并设置警报。下面给出了单个条件的代码,
if weather==200:
print("Turning the Alert ON!")
mybolt.analogWrite('1', '200') and mybolt.analogWrite('0', '220')
print("Making request to Twilio to send a SMS")
response = sms.send_sms("There is Light rain with Thunderstorm outside, sir" + str(weather))
print("Response received from Twilio is: " + str(response))
print("Status of SMS at Twilio is :" + str(response.status))
time.sleep(5)
mybolt.analogWrite('1', '0') and mybolt.analogWrite('0', '0')
这里 LED 和蜂鸣器是使用analogeWrite() 函数操作的,这样我们就可以分别在值0 和255 之间以不同的强度和频率操作它们,并且使用twilio 消息服务发送SMS。短信内容和在analogWrite 函数中传递的值对于每种天气条件都是不同的。
底部给出了完整的python代码。
2.3 使用的应用
现在接下来的任务是根据天气值向用户的手机发送短信。为此,我们需要在名为“ twilio ”的在线消息平台上创建一个帐户。
当您成功创建帐户后,您可以在仪表板中找到一个 SID、AUTH_TOKEN 和一个 Trial_NUMBER,这些应该添加到实际程序的配置文件中。您的 Bolt 云帐户的 api 密钥和您的 Bolt Wifi 模块的 DEVICE_ID 也应添加到配置文件中。
- 这是可以在您的 Bolt 云中找到的 BOLT_ID:- https://cloud.boltiot.com/
- 您可以在下方仪表板的 API 部分找到您的 Bolt 云 API 密钥,
最终的配置文件将如下所示(命名为 conf.py),
SID = 'your twilio SID'
AUTH_TOKEN = 'your twilio AUTH_TOKEN'
FROM_NUMBER = 'Your twilio trial number'
TO_NUMBER = 'Your mobile number regitered in twilio'
API_KEY = 'Your Bolt cloud API key'
DEVICE_ID = 'BOLT7XXXX' //Your Bolt module ID
现在,还有一项任务是将 integromat 与此代码链接,以便在 twitter 中创建帖子。为此,请在下面给出的 integromat 网站上创建一个帐户,
链接:- https://www.integromat.com/
现在通过包括 webhook 和 twitter 在您的帐户中创建一个新场景。为此,请按照以下步骤操作,
- 在这里创建一个新场景,
- 现在在其中添加 webhook 和 twitter。
- 现在按 webhooks 图标并按添加,然后您将获得一个 URL,该 URL 应添加到 python 代码中的函数中,也按 twitter 图标并按添加,然后登录到您的 twitter 帐户并输入您的消息张贴在状态字段并保存。下面给出了屏幕截图和用python代码编写的函数
代码(功能): -
def trigger_integromat_webhook():
URL = "https://hook.integromat.com/xxxxxxxxxxx" # REPLACE WITH CORRECT URL
reply = requests.request("GET", URL)
print(reply.text)
//Here the URL given is the webhook URL from the Integromat.
代码(触发器):-
trigger_integromat_webhook()
//This calls the function defined above and thus the text given is posted on twitter.
如果我们需要获得不同天气条件的通知,那么我们需要创建具有不同场景和不同消息的不同场景。
2.4 硬件连接
- 首先使用公对公跳线将模块的接地引脚连接到面包板。
- 然后使用公对母线将蜂鸣器的 +ve 端连接到模块的 0 引脚,将 -ve 端连接到面包板上的接地引脚。
- 现在将 LED 的 -ve 端连接到接地引脚,并用 330 欧姆电阻包裹 +ve 端,并使用公对公线将电阻器的另一端连接到模块中的 1 引脚。
- 现在打开 Bolt Wifi 模块并确保它已连接到互联网(绿色和蓝色 LED 常亮)。
- 多功能汽车警报系统
- 比特币价格警报系统开源分享
- 如何构建灵敏的晨间警报系统
- 使用Google Assistant的警报系统
- 不速之客警报系统
- 自动发烧检测和警报系统
- 交货警报系统开源分享
- 烟囱粉尘警报系统开源分享
- 使用Arduino构建警报系统
- 烧伤预防警报系统
- 使用Arduino和LCD显示器的天气报告系统
- 唤醒警报系统
- 比特币警报系统开源分享
- 警报系统开源分享
- 家庭安全警报系统
- 电子警报器电路图分享 923次阅读
- 基于555的开门报警器电路 1709次阅读
- 笔记本防盗保护器电路图分享 757次阅读
- 如何使用IC555创建6个有趣的警报器和警报音效发生器电路 4071次阅读
- 制冷系统高压警报的原因及排除方法 1.9w次阅读
- Python如何爬取天气数据 1669次阅读
- 一种低成本的电子警报器电路图 2977次阅读
- 基于具有天气预报功能的温湿度压力测试装置系统 2234次阅读
- 单片机驱动蜂鸣器产生警报声的设计 5596次阅读
- 地震警报器制作详解 1w次阅读
- Bolt EV的系统整合情况与Tesla Model3对比 5684次阅读
- cr2016纽扣电池主要技术参数及用途 2.4w次阅读
- 天气雷达原理介绍 6237次阅读
- 基于Linux平台的天气雷达高速数据采集系统及数字信号处理设计与实现 1433次阅读
- 探访通用电池实验室 独家解密Bolt电池系统 1837次阅读
下载排行
本周
- 1山景DSP芯片AP8248A2数据手册
- 1.06 MB | 532次下载 | 免费
- 2RK3399完整板原理图(支持平板,盒子VR)
- 3.28 MB | 339次下载 | 免费
- 3TC358743XBG评估板参考手册
- 1.36 MB | 330次下载 | 免费
- 4DFM软件使用教程
- 0.84 MB | 295次下载 | 免费
- 5元宇宙深度解析—未来的未来-风口还是泡沫
- 6.40 MB | 227次下载 | 免费
- 6迪文DGUS开发指南
- 31.67 MB | 194次下载 | 免费
- 7元宇宙底层硬件系列报告
- 13.42 MB | 182次下载 | 免费
- 8FP5207XR-G1中文应用手册
- 1.09 MB | 178次下载 | 免费
本月
- 1OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 2555集成电路应用800例(新编版)
- 0.00 MB | 33566次下载 | 免费
- 3接口电路图大全
- 未知 | 30323次下载 | 免费
- 4开关电源设计实例指南
- 未知 | 21549次下载 | 免费
- 5电气工程师手册免费下载(新编第二版pdf电子书)
- 0.00 MB | 15349次下载 | 免费
- 6数字电路基础pdf(下载)
- 未知 | 13750次下载 | 免费
- 7电子制作实例集锦 下载
- 未知 | 8113次下载 | 免费
- 8《LED驱动电路设计》 温德尔著
- 0.00 MB | 6656次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935054次下载 | 免费
- 2protel99se软件下载(可英文版转中文版)
- 78.1 MB | 537798次下载 | 免费
- 3MATLAB 7.1 下载 (含软件介绍)
- 未知 | 420027次下载 | 免费
- 4OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 5Altium DXP2002下载入口
- 未知 | 233046次下载 | 免费
- 6电路仿真软件multisim 10.0免费下载
- 340992 | 191187次下载 | 免费
- 7十天学会AVR单片机与C语言视频教程 下载
- 158M | 183279次下载 | 免费
- 8proe5.0野火版下载(中文版免费下载)
- 未知 | 138040次下载 | 免费
评论
查看更多