树莓派智能家居系统:树莓派智能家居系统源码
信息来源:互联网 发布时间:2025-02-13
代码已分享,敬请展示吧。
不想错过我的推送,记得右上角-查看公众号-设为星标,摘下星星送给我
今天分享的项目是非常实用的远程控制智能家居,通过通过 Web 或手机应用程序APP向 Raspberry Pi远程发出请求,然后Raspberry Pi 通过蓝牙与 Arduino 通信,控制家中的设备运行。
先来看下最终的实现效果如何吧——关闭观看更多更多退出全屏视频加载失败,请刷新页面再试
刷新
视频详情 私信“达尔闻说”:远程智能家居,获取资料项目用到的硬件有:树莓派 3 B 型Arduino UNOAdafruit RGB 背光 LCD 旋转电位器(通用)HC-05 蓝牙模块
5V 8通道继电器模块制作这个项目的灵感背后的原因是有一天忘记在家里关掉电器,结果电器完全烧毁了那如果有这个远程的智能家居控制器的话,就不会出现电器烧毁的情况了整个项目可以分成三个部分,方便设(相关设计资料已经打包好,。
私信“达尔闻说”:远程智能家居,获取资料):1)Arduino控制部分Arduino 通过蓝牙(HC-05 蓝牙模块)接受树莓派发过来的请求,经过处理之后,相应地,它会激活 8 通道继电器来打开或关闭相应的设备,并在 LCD 上显示当前实时信息。
例如,我只使用了 8 个继电器中的 3 个
Arduino 、蓝牙 HC-05、LCD 和 8 通道继电器连接示意图如下:
Arduino 蓝牙链接可以参考下面的链接进行配置:https://www.instructables.com/id/Controlling-Arduino-UNO-Via-Smart-Phone-Using-HC-0/
确保为 LED 闪烁选择引脚 13将此代码上传到Arduino中即可:int ledPin = 13;voidsetup() { Serial.begin( 9600 ); // baud rate 9600 for the serial Bluetooth communication。
}voidloop() {// listen for the data from raspberry piif ( Serial.available() > 0 ) {// read a numbers from serial port
int inputVal = Serial.parseInt();if (inputVal > 0) { Serial.print("Your input is: "); Serial.println(String(inputVal));
// Here blink the LED blinkLED(inputVal); } }}voidblinkLED(int inputVal) {for (int i=0; i< inputVal; i++) {
digitalWrite(ledPin, HIGH); delay(500); digitalWrite(ledPin, LOW); delay(500); }}2)树莓派Raspberry Pi 负责通过 Web 或移动应用程序监听客户端的请求。
一个基于 python 的服务器运行,它监听客户端的请求并通过蓝牙将请求转发到 Arduino对于这个项目,你只需要一个装有最新 raspian OS 的 Raspberry pi 3就可以了按照以下步骤在树莓派端实现配置:
第1步:启动并运行 Raspberry Pi按照此链接获取装有 Raspian OS 的 Raspberry Pi:https ://thepi.io/how-to-install-noobs-on-the-raspberry-pi/
第2步:配置树莓派的内置蓝牙确保已启用串行端口和串行控制台转到主菜单-> 首选项-> Raspberry Pi 配置单击选项卡接口现在启用串行端口和串行控制台如需安装和配置蓝牙,可以在下载的文章中找相关的代码,也可以直接在GitHub下载:。
https://github.com/cloud-github/raspberry-pi-arduino-bluetooth-wireless-communication第3步:安装 Python和必要的许可
打开终端并输入:sudo apt-get install python3-flask完成 Python 安装和蓝牙配置后,克隆下面提供的存储库进入 /python_code 文件夹,现在在这里启动 Python 脚本。
sudopythonmain.py如果一切顺利,应该能够看到服务器在端口 0.0.0.0:80 上运行现在,检查本地 IP打开终端-> ifconfig复制该 IP 地址并粘贴到浏览器上,例如:192.168.0.104。
我们应该能够看到网页启动并运行
应用程序用户界面3)端口转发让我们了解什么是端口转发以及为什么需要它?端口转发是一种能够从世界任何地方的外部计算机访问本地主机或本地服务器的技术例如,本地 IP 地址是192.168.0.104 这是本地专用网络地址。
路由器分配给 Raspberry Pi 的地址只有当连接到该路由器时,才能连接到该网络所以,这就是为什么我们需要端口转发的原因不同的路由器可能有不同的用户界面来配置端口转发但主要逻辑保持不变如果TPLink 路由器,可以按照此链接进行端口转发。
https://www.noip.com/support/knowledgebase/setting-port-forwarding-tp-link-router/
8080 端口被重定向到 192.168.0.104:80配置成功后,进入路由器默认页面,查看它的WAN IP地址例如,就我而言,我有:100.66.208.221 因此,现在如果浏览100.66.208.221:8080 。
,它应该会自动将请求转发到本地 IP 地址,例如 192.168.0.1:80 ,应该能够看到的网页启动并运行整个系统的搭建就是这样!相对来说,比较简单,这里提供了相应的设计资料(私信“达尔闻说”:远程智能家居,获取资料。
),感兴趣的可以一试。此项目来自hackster.io,制作者是Mahesh JoshiEND
更多实战项目推荐:<<>><<>><<>><<>><<>><<>>
推荐阅读:项目分享 | 电赛系列 | 人工智能 | 考研必考知识点 | 毕业设计 | 开关电源 | 求职我们是妮mo,达尔闻创始人,只讲技术不撩汉的小姐姐达尔闻在线教育平台旨在服务电子行业专业人士,提供技能培训视频,覆盖各细分领域热门话题,比如嵌入式,FPGA,人工智能等。
并针对不同人群量身定制分层级学习内容,例如常用知识点,拆解评测,电赛/智能车/考研等,欢迎关注官网:www.darwinlearns.comB站:达尔闻QQ群:群1:786258064(已满) 群2:1057755357(已满)
群3:871373286
免责声明:本站所有信息均搜集自互联网,并不代表本站观点,本站不对其真实合法性负责。如有信息侵犯了您的权益,请告知,本站将立刻处理。联系QQ:1640731186

