搭建个人智能家居 开篇(搭建Home Assistant)

搭建个人智能家居 开篇(搭建Home Assistant)

  • 前言
  • Home Assistant
    • 搭建Home Assistant
      • Ubuntu系统搭建
      • Windows系统搭建
        • VM安装方法
        • VirtualBox安装方法:
    • 配置Home Assistant控制页面

前言

随着科技的进步、发展,物联网给我们的生活带来了翻天覆地的变化,使我们的日常生活变得更加的方便的同时,也增加了乐趣。
物联网听起来就像什么“高大上”的东西,实则我们伸手可触,从今天开始,我们将开展一个系列的文章记录我们用“Home Assistant”和“ESP Home”搭建个人的智能家居。
今天进行的是第一步,搭建智能家居的控制平台“Home Assistant”。
在这里插入图片描述

Home Assistant

在这里插入图片描述

HomeAssistant是构建智慧空间的神器。是一个成熟完整的基于 Python 的智能家居系统,设备支持度高,支持自动化(Automation)、群组化(Group)、UI 客制化(Theme) 等等,这个还有可以接入几乎市面上所有的智能家居设备,可玩性非常高。

搭建Home Assistant

Home Assistant的搭建有很多种,可以在windows、Linux平台搭建,其中linux平台搭建可以通过树莓派直接烧录官方提供的Home Assistant,或者在Ubuntu系统里通过指令搭建,而Windows搭建则需要在虚拟机里搭建。
本次将会演示Windows搭建和Ubuntu系统下面搭建

Ubuntu系统搭建

本次演示使用的是Ubuntu 23.04版本的系统
在这里插入图片描述

  1. 打开命令终端
    Ubuntu安装Home Assistant需要通过指令安装,所以我们需要从命令终端输入相应的环境依赖和Home Assistant的安装指令。
    在这里插入图片描述
  2. 安装pipx
    在指令终端中输入
sudo apt install pipx

安装pipx,安装过程需要输入用户密码,输入您的Ubuntu系统登陆的用户密码即可。等待片刻,安装完成。
在这里插入图片描述

  1. 把pipx添加到环境变量中
    打开指令终端输入以下指令
pipx ensurepath

在这里插入图片描述

  1. 安装Python 3
    先更新本地软件包列表,在指令终端输入
sudo apt-get update

在这里插入图片描述
安装Python 3在指令终端输入

sudo apt-get isntall python3 python3-pip

输入指令,按下回车,开始安装Python 3
在这里插入图片描述

  1. 安装Home Assistant
    上面安装完Python 3后开始安装Home Assistant,在指令终端输入
sudo pipx install homeassistant

开始安装
在这里插入图片描述
出现这个表示正在安装,可能需要一点时间,耐心等待安装完成。
在这里插入图片描述
安装完成

  1. 添加环境变量
    打开Ubuntu的文件管理页面,选择“其他位置”,再选择“Ubuntu”
    在这里插入图片描述

找到“root”文件夹并打开
在这里插入图片描述

打开“root”文件夹可能会弹出认证窗口,输入Ubuntu的系统登录密码即可。
进入“root”文件夹后,点击窗口最小化左边的“三条横杠”的符号,选择“显示隐藏文件”。选择后我们就可以看到“root”文件夹下的所以文件和文件夹了
在这里插入图片描述
把“root”文件夹里的内容显示出来后找到名为“.bashrc”的文件,双击打开,如果需要认证就同样输入登录密码即可。
在这里插入图片描述
打开“.bashrc”文件后,拉到最底,隔几个空行后输入

export PATH=$PATH:$HOME/.local/bin

输入后“Ctrl+S”保存然后关闭窗口即可。
在这里插入图片描述

  1. 启动Home Assistant
    重新回到指令终端,进入管理员权限输入
sudo su

需要输入登录密码,按指令终端提示输入即可
在这里插入图片描述
圈起来的这个“$”符号变成了“#”号就说明我们已经进入管理员权限了。
进入管理员权限后输入

hass

启动Home Assistant
在这里插入图片描述
打开浏览器,输入

localhost:8123

进入Home Assistant管理页面
在这里插入图片描述
Ubuntu系统搭建Home Assistant完成。

Windows系统搭建

上面演示完了Ubuntu系统搭建,接线来在Windows系统下也搭建一次,毕竟对于大多数人来说,使用更多的应该是Windows系统。
Windows系统搭建Home Assistant需要在虚拟机里搭建,官方分别提供了以下几个虚拟机软件的虚拟磁盘包
VirtualBox 虚拟磁盘下载传送门
VMware Workstation 虚拟磁盘下载传送门
Hyper-V 虚拟磁盘下载传送门
用的什么软件就下载相应的虚拟磁盘包,在虚拟机里安装即可

VM安装方法

第一步:下安装相应的虚拟磁盘
第二步:点击新建一个虚拟机

  1. 配置类型:自定义(高级)
  2. 虚拟机硬件兼容性:默认
  3. 安装客户机操作系统:稍后安装操作系统
  4. 选择客户机操作系统:Linux
    版本:其他Linux 5.X内核64位
  5. 命名虚拟机:
    虚拟机名称:自定义命名
    位置:选择安装位置
  6. 处理器配置:根据自己的电脑配置情况配置、分配
  7. 此虚拟机的内存:根据自己的电脑配置情况配置、分配
  8. 网络类型:使用桥接网络(保证虚拟机桥接模式下网络是通的)
  9. 选择I/O控制器类型:默认
  10. 选择磁盘类型:默认
  11. 选择磁盘:使用现有的虚拟磁盘(这里很重要)
  12. 选择磁盘:选择第一步下载并解压好的虚拟磁盘(如果提示更新虚拟磁盘格式,选择“保存现有格式”即可)
  13. 点击完成,结束虚拟机创建

第三步
选择刚才新建的虚拟机,点击“编辑虚拟机设置”,弹出虚拟机配置端口后,点击右上角的“选项”,窗口切换后再点击“高级”,在窗口的右侧找到“固件类型”,然后选择“UEFI”,点击“确定”关闭窗口。

第四步
点击新建的虚拟机,等待自动启动
出现这个画面表示启动成功
在这里插入图片描述
现在可以在电脑的浏览器上输入这个虚拟的IP地址加8123端口号即可进入Home Assistant控制页面了。(虚拟机的网络模式必须是桥接模式,并且测试网络是通的)
比如上面图片显示虚拟机的本地地址是192.168.3.165,那么在电脑的浏览器上输入

http://192.168.3.165:8123

在这里插入图片描述

VirtualBox安装方法:

首先把VirtualBox和相应的虚拟磁盘下载下来,安装好VirtualBox后打开。
第一步:注册虚拟硬盘
打开VirtualBox后点击工具,选择“虚拟硬盘”,再点击“注册”。
在这里插入图片描述

点击“注册”后会弹出选择注册文件的窗口,找到上面下载的VirtualBox的虚拟磁盘包点击打开即可
在这里插入图片描述
添加成功后会出现一个虚拟磁盘

第二步:新建虚拟机
在这里插入图片描述
跟着引导配置安装就好
虚拟电脑名称和系统类型:
名称:自定义
文件夹:这是安装的目录,自定义就好
虚拟光盘:默认,未指定
类型:Linux
版本:Oracle Linux 5.X(64-bit)

在这里插入图片描述

自动安装:
默认
在这里插入图片描述

硬件:
根据自己 的电脑硬件配置情况分配
勾选上启用EFI
在这里插入图片描述
虚拟硬盘:
选择使用现有的虚拟硬盘文件

在这里插入图片描述
点击完成,结束新建虚拟机

第三步:配置网络
点击一下刚才新建的虚拟机,选择右边的“网络”选项
在这里插入图片描述
弹出网络设置窗口后选择“网卡1”,勾选“启用网络连接”,连接方式“桥接网卡”,桥接的网卡就选择电脑在用的网卡。最后点击“确定”关闭网络配置窗口。
在这里插入图片描述

第四步:启动虚拟机
双击虚拟机,等待Home Assistant启动完成
在这里插入图片描述
出现这个界面后,表示启动成功。
我们可以再电脑的浏览器输入这个虚拟机的本地地址加上8123端口去访问这台虚拟机上面搭建的Home Assistant控制页面

配置Home Assistant控制页面

在这里插入图片描述
点击“创建我的智能家居”,创建后自己的账户和定位好自己所在的城市,定位城市后Home Assistant的控制面板会显示当地天气等信息。
账号位置等信息填完后点击完成,开启Home Assistant的控制页面
在这里插入图片描述
在这里插入图片描述
Home Assistant搭建完成。
本文演示了Ubuntu和Windows两个系统的Home Assistant搭建,选择合适自己的搭建即可。后续会继续记录用Home Assistant搭配ESP Home驱动各种传感器做属于自己的智能家居。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/246842.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

使用 ClassFinal 对 java class 文件进行加密防止反编译

ClassFinal 是一款 java class文件安全加密工具,支持直接加密 jar 包或 war 包,无需修改任何项目代码,兼容 spring-framework;可避免源码泄漏或字节码被反编译 特点 无需修改原项目代码,只要把编译好的jar/war包用本工…

【C语言】二分查找(详解)

🎥 岁月失语唯石能言的个人主页 🔥个人栏专:秒懂C语言 ⭐若在许我少年时,一两黄金一两风 一、二分查找的思路 二分查找是一种高效的查找算法,尤其适用于有序数组。它的基本思想是通过将查找区间逐步缩小…

Windows更改远程桌面端口并添加防火墙入站规则

1.运行 快捷键winR组合键,win就是键盘上的windows系统图标键。 2.打开注册表 Regedit,在对话框中输入regedit命令,然后回车 3.打开注册表,输入命令后,会打开系统的注册表,左边是目录栏,右边是…

什么是MVCC?看看它的实现原理

大家好,我是归思君~ 之前在讲 MySQL 事务隔离性提到过,对于写操作给读操作的影响这种情形下发生的脏读、不可重复读、虚读问题,是通过MVCC 机制来进行解决的,那么MVCC到底是如何实现的,其内部原理是怎样的呢&#xff1…

Idea执行bat使用maven打包springboot项目成docker镜像并push到Harbor

如果执行以下命令失败,先把mvn的-q参数去掉,让错误输出到控制台。 《idea配置优化、Maven配置镜像、并行构建加速打包、解决maven打包时偶尔几个文件没权限的问题》下面的使用company-repo私有仓库和阿里云镜像仓库同时使用的配置参考。 bat echo off …

四六级高频词组10

目录 词组 其他链接 词组 401. instead of (in place of) 代替,而不是… 402. instruct…in (teach) 教。指导。训练某人… 403. insure…for 把…保险(多少钱); ensure 使安全…

状态码及常用注解

状态码 1.200 请求成功 2.404 请求资源不存在 检查请求路径 3.400 表示请求参数不合法(页面上参数的key和controller方法参数名字不一致、传的参数数量不对应) 4.405 表示请求方式与接收方式不匹配 5.500 程序报错检查java代码和控制台日志 6.403 表示没有权限访问 MVC常…

web网络安全

web安全 一,xss 跨站脚本攻击(全称Cross Site Scripting,为和CSS(层叠样式表)区分,简称为XSS)是指恶意攻击者在Web页面中插入恶意javascript代码(也可能包含html代码),当用户浏览网页之时&…

国际语音通知系统有哪些应用场景?

国际语音通知系统操作简单、安全性高、实用性强,可广泛应用于国际航空、国际银行、出海游戏、跨国旅游、跨国金融等行业。 1.会议通知 企业人事管理人员使用语音通知的方式,快速通知参会人员。 2.订单通知 企业通过语音通知向客户发送订单确认通知&a…

RCE漏洞基础及CTF绕过

1.漏洞成因 可以对系统命令执行函数和调用代码函数传递的值进行控制。 2.系统执行命令函数 system() exec() exec会执行系统命令,保存回显最后一行而且单exec不输出结果 shell_exec() 不会输出结果,保存所有回显 passthru() 和system一样 popen() …

STM32F407-14.3.2-03 中心对齐模式

中心对齐模式(递增/递减计数) 在中心对齐模式下,计数器从 0 开始计数到自动重载值(TIMx_ARR 寄存器的内容)— 1,生成计数器上溢事件;然后从自动重载值开始向下计数到 1 并生成计数器下溢事件。之…

LLM(七)| Mamba:LLM新架构的浅探

目前大型语言模型(LLM)领域发展如火如荼,本文将重点探索在单个消费级GPU上可以有效运行的小型模型(≤7B个参数)。 我们将从以下几个方面重点介绍基于新架构的语言模型:🐍Mamba模型(h…

HTTP 302错误:临时重定向

在Web开发中,HTTP状态码是用于表示Web服务器响应的各种状态。其中,HTTP 302错误表示临时重定向,这意味着请求的资源已被临时移动到其他位置,并且服务器已经提供了新的URL,以便客户端可以重新发送请求。 了解HTTP 302错…

「Verilog学习笔记」RAM的简单实现

专栏前言 本专栏的内容主要是记录本人学习Verilog过程中的一些知识点,刷题网站用的是牛客网 timescale 1ns/1ns module ram_mod(input clk,input rst_n,input write_en,input [7:0]write_addr,input [3:0]write_data,input read_en,input [7:0]read_addr,output reg…

2023PCTF Double_SS

记录一下 ssrf配合 ssti的结合 首先开启环境 明显的ssrf 让我们访问 5555端口 使用http协议访问 url127.0.0.1:5555 告诉我们去访问 name 并且给我们key url127.0.0.1:5555/name 出现报错 说我们不是admin 然后我们往下看 我们使用file协议读取app/app.py urlfile:///app…

基于ssm的汽车服务商城系统设计与实现论文

摘 要 本课题是根据用户的需要以及网络的优势建立的一个基于Vue的汽车服务商城系统,来更好的为用户提供服务。 本基于Vue的汽车服务商城系统应用Java技术,MYSQL数据库存储数据,基于SSMVue框架开发。在网站的整个开发过程中,首先对…

Python自动化:selenium常用方法总结

使用的Python版本为3.8,selenium版本为4.15.2 Python自动化:selenium常用方法总结 1. 三种等待方式2. 浏览器操作3. 8种查找元素的方法4. 高级事件 1. 三种等待方式 强制等待 使用模块time下的sleep()实现等待效果隐式等待 使用driver.implicitly_wait()方法&#…

大数据云计算——使用Prometheus-Operator进行K8s集群监控

大数据云计算——使用Prometheus-Operator进行K8s集群监控 一、 背景 在非operator配置的普罗中我们监控k8s集群都是通过配置configmap进行服务发现和指标拉取。切换到prometheus-operator难免会有些使用问题。不少用户已经习惯底层配置自动发现的方式。当过渡到servicemonit…

【docker】常用命令

启动docker服务 systemctl start docker 停止docker服务 systemctl stop docker 重启docker服务 systemctl restart docker 查看docker服务状态 systemctl status docker 设置开机启动docker服务 systemctl enable docker 设置关闭开机启动docker服务 systemctl disable …

Excel实现字母+数字拖拉自动递增,步长可更改

目录 1、带有字母的数字序列自增加(步长可变) 2、仅字母自增加 3、字母数字同时自增 1、带有字母的数字序列自增加(步长可变) 使用Excel通常可以直接通过拖拉的方式,实现自增数字&#xf…