关于利用ESP-WROOM-02和天气API制作发光的圣诞节雪人教程讲解

为了启用esp-wroom-02开发板的arduino程序无线通信功能,我想首先尝试一个示例程序。选择file → sketch example → esp 8266 wifi → wifi web server。该示例程序负责处理与arduino的wifi通信。
图1 加载程序示例
这个示例程序能让esp-wroom-02成为服务器。程序启动后,它会一直等待来自其他终端的请求,当收到带有参数的请求后,程序就会处理该参数。在我们的例子中,我们将使用这个程序来点亮led。
我想使用上次的电路进行测试。将示例程序中的引脚“2”更改为引脚“13”。
图2 led控制电路
启动程序后,请尝试连至路由器。如果已经连接,那么系统会在串行监视器上显示ip地址等。所以,请尝试从浏览器访问该ip地址。连至/gpio/1时,led亮起;连至/gpio/0时,led熄灭。
图3 wifi访问成功
图4 智能手机连接
通过程序控制伺服电机
接下来我们通过一个实际例子试着用wifi控制伺服电机。伺服电机的控制基本上应与led控制相同。我将在led程序中添加一些修改,并通过从浏览器访问时添加一些html。
在这个程序中,浏览器显示的角度为0到150。当点击每个数值时,伺服电机会移动到一个指定角度。
图5 通过wifi进行伺服电机控制
让我们来制作我们的天气预报雪人吧!
圣诞节即将到来,我决定做一个圣诞节装饰品。大量的炫彩led装饰灯固然不错,但是桌子上的可爱饰品则更具圣诞节韵味。所以,我用123d设计创建了一个雪人模型。这款工具可以在组合不同形状的同时进行建模,所以即使是初学者也可以轻松创建3d模型。
雪人模型
图6 雪人建模
请根据个人喜好随意更改雪人的形状或大小。建模完成后,我试着用3d打印机输出自己设计的雪人。不幸的是,手臂没有打印出来。
图7 3d打印的雪人
现在我们需要一个全彩led。让我们将全彩led和wifi通信整合到一个桌面设备中,使得该设备能够根据特定位置的天气数据改变led的颜色。
设备配置
像往常一样,在创建程序或电路之前我们先考虑一下设备配置。总体结构如下图所示。
图8 整体设备配置
您也可以直接从arduino程序连至api来处理和检索数据,但由于arduino程序的容量很小,我们可以考虑外部扩展,arduino会安装一个外部服务器“server program”并提出请求。这个外部服务器程序连至api,以json格式获取数据,然后只将必要的数据返回给arduino。
从api获取天气信息
这次,我们使用的api名字叫做openweathermap。注册后,您就可以免费使用该api。通过该api,您可以通过输入位置信息和城市名称来获取具体地点的天气信息。
图9. http://openweathermap.org/
连接api的外部服务器程序用php创建。通过以下程序,我们可以利用国家、城市、appid-api密钥作为参数来获取天气信息。我们在运行php的环境中安装此程序并确认该操作。
外部服务器程序(php):从天气api获得数据
通过浏览器访问程序时,如果系统显示指定城市的天气信息,那么操作完成。
图10 浏览器确认
全彩led发光控制
接下来,我们来看看如何在输出端使用全彩led。虽然我们将其称为全彩led,其实是一块板上的rgb(即红、绿、蓝)led。
如图11所示,由于每种颜色的led都以+和-组合的形式发光,因此我们对其进行焊接,以便可以连接到面包板上。
图11 全彩led
图12 焊接全彩led
如果同时点亮3个全彩led,那么颜色会变成白色。由于每个颜色led所需的电压和电流量不同,所以需要为每个电路添加不同的电阻值。
· 91ω:红色
· 180ω:绿色
· 220ω:蓝色
从api获取数据时,根据以下天气信息显示颜色。
· 晴天 – 阳光充足 → 红色
· 云 – 阴天 → 绿色
· 下雨 – 下雨 → 绿色
· 下雪 – 下雪 → 浅绿色
图13 全彩led控制电路图
在这个程序中,每次获取数据以确认操作。请根据自己的喜好更改设置。启动程序后,设备会根据获取的天气数据发光。
图14 雪人根据获得的天气数据发光
最后我们对雪人进行了一些修饰,项目完成。
图15 完成雪人的装饰
这一次,我们利用天气api创建了一个可爱的圣诞装饰品。通过整合其他api、程序以及智能手机连接,我相信您能够创作更加有趣的设备。欢迎您在下方的评论中分享您想法!
#创意物语#device plus 文章内容及图片、视频素材均为原创,如有转载请注明出处,谢谢!
#创意物语#文章来源:http://www.deviceplus.com/
device plus网站由半导体和电子零件制造商rohm(罗姆)创建,为喜欢创造事物和有抱负的工程师们提供有用的信息,旨在让工程师生涯更有趣。
虽然我们说“好玩”,但不仅仅是娱乐。它可以加深你在某一领域的知识,获得灵感,继而用灵感来改变世界。device plus文章的主题都与电子套件和工程师生活相关。我们将讨论“技术”主题下的人、事件、黑客/提示、工具、设备等。在这里既有知识加深,又不忘妙趣横生。我们希望能吸引热爱电子和机电一体化的您,并帮助您找到灵感。

网站服务器通用和专用保护方法比较分析
你见过哪些与众不同的PCB板设计
2005年重庆冬季ARM免费培训班
LinkSwitch—TN系列节能型单片开关电源的电路设计
超声波气象传感器技术参数
关于利用ESP-WROOM-02和天气API制作发光的圣诞节雪人教程讲解
贸易战导致华为供应商誉铭新放假休整 捷荣技术受牵连
2023年第一届人工智能生成内容国际会议(AIGC2023)
车联网前景诱人 无线技术应用蕴商机
vb运行时错误429不能创建对象
通过两通道PWM混光技术实现LED的调光调色方法
2017年国产品牌手机出货量总榜:不同价段品牌竞争力分析
什么是深度强化学习?深度强化学习在自动驾驶领域的应用
信号源3401不开机维修
TBY2331KB贴片Y电容规格参数、规格书
如何从13个Kaggle比赛中挑选出的最好的Kaggle kernel
小米手表和AppleWatch5的区别
环保电源的优点总结
PCBA板清洗规则及注意事项
让你脑洞大开的旋转编码器新设计