数码之家

 找回密码
 立即注册
搜索
查看: 1623|回复: 9

[电脑] 智能家居制作实操篇之DOMOTICZ及MQTT服务系统安装

[复制链接]
发表于 2024-8-21 10:42:05 | 显示全部楼层 |阅读模式
昨天发了个3路触摸智能开关的贴,在这https://www.mydigit.cn/thread-468419-1-1.html,它需要连接DOMOTICZ及MQTT服务系统才能实现智能功能。本贴就是它的的后续贴,主要介绍它所需服务系统。智能家居服务系统比较多,本人采用的是DOMOTICZ,它是开源系统,它的中文站在这https://www.domoticz.cn/,安装文件下载也是在它的中文站里。由于是采用MQTT协议,所以也需要安装MQTT的服务软件,MQTT服务软件本人测试的有2种,分别是EMQX及activemq,看情况使用。本贴主要介绍在WIN系统下安装及树莓派的安装,也试过用docker来安装,但由于源的问题,没法下载对应的镜象,没安装成功。由于这些安装是在2个月前的,已把过程写成文档,所以本贴大部份图片是从文档复出来的,所以清晰度不高。

本人在单位是用虚拟服务器虚拟台WIN电脑进行安装,在家是用树莓派,主要是台NAS系统比较旧且配置过低,没法虚拟个win系统,且本人的的ALL in ONE系统还未开始搞,如专门找台电脑来安装系统,过于浪费电,就用原制作数播拆下来的树莓派来作为智能家居服务器,它才几W的功率,比较方便。

以下介绍的是在WIN下的安装过程。

WIN下安装过程十分简单,就是去Domoticz中文站下载win安装包,双击安装文件,就下一步下一步安装就行了,安装完成后桌面有个Domoticz图标,双击运行就会弹出Domoticz网页,也可用浏览器输入本机的IP,加端口号8080,输入用户名:admin,密码:domoticz。进入Domoticz的工作界面,先在设置中找到经纬度,输入本地的经纬度,如不想查本地的经纬度的话,直接输入112及24就行了,然后在语言中选择中文保存后就成中文界面,这样就完成Domoticz的安装。
  

以下就是安装MQTT软件,有两个选择,一个是activemq,另一个是EMQX,喜欢那个用那个,下面介始activemq的安装,activemq先去官网下载win版文件,地址在这https://activemq.apache.org/components/classic/download/  。

activemq的运行环境是JAVA,所以需下载安装新版JDK,去官网下载对应的2.0版安装。在这https://www.oracle.com/cn/java/t ... oads/#jdk22-windows


下载下来后安装,安装完成需配置环境才能用。右击我的电脑,选择高级系统设置,进入环境变量后,新建个系统变量,变量名为JAVA_HOME,变量值为JDK安装位置,如下图为已增加好的参数。


然后在用户变量修改Path变量值。在最前面新建增加%JAVA_HOME%\bin,如下图。


配置完成后,进入CMD,输入命令java –version,如出现以下java版本号就表示安装成功。


把下载ActiveMQ后解压,在bin文件夹找到win64,注意是WIN64文件夹内的才行。运行activemq.bat。等待命令行出现端口等信息即可,如有报错,应是没安装JDK。



使用浏览器访问 ActiveMQ 管理应用, 地址如下: http://ip:8161/admin/ ,用户名: admin 密码: admin  ,出现如下界面代表服务启动成功。


由于ActiveMQ安全设置限制,只能在本机浏览,如在其它电脑上浏览需设置,需找到conf/jetty.xml,用记事本修改jetty.xml文件。


把127.0.0.1改成0.0.0.0就行了。


另一个MQTT软件EMQX的安装,  由于EMQX最新版已没有win版下载了,官网找不到旧版程序下载,所以上网找它的旧版,我下载的是emqx-5.3.2-windows-amd64这个版本,解压在没有中文字符的文件夹内。我是把它直接解压在E盘上,然后用CMD进入它的bin文件夹内,运行emqx start 命令,显示如下图,服务启动成功。


然后用浏览器访问http://127.0.0.1:18083,用户名:admin ,密码:public 。进入系统后需改密码。


2个MQTT只能安装一个,看自己的情况安装,一个是完全英文,一个是国内软件是全中文,比较易使用。把所有的软件安装好后,再在WIN的启动设置好开机启动,就完成整个家居服务系统安装完成了,就可以对DOMOTICZ进行增加设备等操作,以下针对昨天发3路开关贴的对应设置。
登入DOMOTICZ后,点设置-硬件,然后增加MQTT客户端,IP选择本机,其它参数默认就行,如下图。


再增加个虚拟硬件。


然后点击虚拟硬件里的创建虚拟传感器。


创建3个开关。


下图就是建好的3个开关。


在设备里有详细的参数,主要是IDX必需与触摸开关对应才能受控。


以上为3路触摸智能开关的加入设置,完成后就可以对它进行网控了。


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x

打赏

参与人数 1家元 +60 收起 理由
家睦 + 60

查看全部打赏

 楼主| 发表于 2024-8-21 10:42:55 | 显示全部楼层
本层为树莓派的安装。由于我的ALL in ONE系统还未开始搞,NAS太旧,为了省电,所以就用原制作数播拆下来的树莓派来作为智能家居服务器,如下图。工作环境比较差。

以下为安装方法,树莓派先安装好最新系统,我是用2023-05-03-raspios-bullseye-arm64-full.img这版本安装的,且已升级,如已安装了系统的,需运行升级命令把它升成最新的。然后开启SSH,方便远程操作。在树莓派的本机操作终端程序。输入sudo raspi-config,选择interfacing iptions,选择ssh,启用后确定就行了。



完成开启SSH后,就找台同网段的电脑运行putty等SSH软件连接树莓派,采用命令式安装DOMOTICZ。命令如下。
sudo curl -L install.domoticz.cn | sudo bash






安装完成,用浏览器输入树莓派地址:8080,就可以看到工作界面了,修改成中文就行了。经测试,domoticz系统已设置开机自动开启,不用编写开机启动domoticz的脚本命令了。

以下为安装MQTT,也是两种选择,先介绍安装activemq。需要的依赖项是在系统中安装JAVA。由于新树莓派系统已经安装了JAVA。从Apache ActiveMQ的官方发布页面获得最新的稳定版本。找到连接地址及文件名,然后在终端运行下载命令,需修改命令里的连接地址及文件名对应才行。由于需设置启动自动运行ActiveMQ,所以操作麻烦些,如手动启动的话,就直接解压就行,再用命令行启动服务就行,如需自动启动运行,就需按下面步骤操作。
运行下载命令,如下。
wget https://dlcdn.apache.org//activemq/6.1.2/apache-activemq-6.1.2-bin.tar.gz
多试几次,网站难连。

下载完成之后,接着进行解压,把该压缩包解压到/opt目录下。命令如下。
sudo tar -zvxf apache-activemq-6.1.2-bin.tar.gz -C /opt

为了方便起见,创建一个与版本无关的软链接,指向当前Apache ActiveMQ版本所在的目录。命令如下
sudo ln -s /opt/apache-activemq-6.1.2 /opt/activemq
接着创建完软连接之后,我们进入到对应的/opt/activemq目录下,进行启动mq。
先进入目录命令  cd /opt/activemq/   
启动Mq命令    . /bin/activemq start   

通过以下命令来创建系统服务,在/usr/lib/systemd/system/创建一个activemq.service的文件。
命令:sudo vi /usr/lib/systemd/system/activemq.service
把以下内容写到文件中。
[Unit]
Description=activemq message queue
After=network.target
[Service]
PIDFile=/opt/activemq/data/activemq.pid
ExecStart=/opt/activemq/bin/activemq start
ExecStop=/opt/activemq/bin/activemq stop
User=root
Group=root
Restart=always
RestartSec=9
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=activemq

[Install]
WantedBy=multi-user.target


按命令:   :wq 保存退出
保存完毕,接着我们来检验一下启动及停止是否能够成功,以下为对应命令。
sudo systemctl enable activemq  使能
sudo systemctl start activemq   启动
sudo systemctl status activemq   查状态
sudo systemctl stop activemq      停止


启动后在服务主机上浏览器运行http://127.0.0.1:8161/admin,(用户名及密码都是admin),就出现它的界面。
注意:由于activemq的安全设置,初始化的只能在本机上浏览。
Activemq开机自动启动设置,采用修改编辑 /etc/rc.local 文件,需要使用 root 权限才能写入。命令如下
sudo nano /etc/rc.local
在文件的 exit 0 这行之前加入下面的命令文本之后保存这个配置文件,
    sudo systemctl start activemq

按CTRL+X键,退出并按提示保存就行。就设置完成开机自动启动了。
由于activemq的安全设置,初始化的只能在本机上浏览,如设置其它电脑能访问的方法如下。
进入conf文件夹,修改jetty.xml,把127.0.0.1改为0.0.0.0 。重启MQ,或重启系统就行了。命令看下图。


完成了activemq的安装,这服务器可使用了。
以下为EMQX的MQTT服务器安装过程。
EMQX官网有详细的安装方法。地址在这 https://www.emqx.com/zh/downloads-and-install/broker?os=Ubuntu

按住官网介绍安装就行了。
配置 EMQX Apt 源,命令如下
curl -s https://assets.emqx.com/scripts/install-emqx-deb.sh | sudo bash

安装 EMQX
sudo apt-get install emqx

启动 EMQX
sudo systemctl start emqx

完成 EMQX,经测试 EMQX开机已设置自动启动了,本人的树莓派是用EMQX。






智能家居制作实操篇之4路带遥控的开关制作:
https://www.mydigit.cn/thread-469699-1-1.html




本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复 支持 反对

使用道具 举报

发表于 2024-8-21 13:53:38 | 显示全部楼层
什么都要自己搞什么都要会,少了分工合作的结果就是极高成本,世界工厂也就会因此而倒塌。
回复 支持 反对

使用道具 举报

发表于 2024-8-22 08:56:34 | 显示全部楼层
图文并茂,谢谢分享!
回复 支持 反对

使用道具 举报

发表于 2024-8-22 09:03:53 | 显示全部楼层
插个眼,能docker安装的话就好了
回复 支持 反对

使用道具 举报

发表于 2024-8-22 09:30:23 | 显示全部楼层
这就是极致精神,万分佩服
回复 支持 反对

使用道具 举报

发表于 2024-8-22 12:28:34 | 显示全部楼层
顶起来,大佬就是66666
回复 支持 反对

使用道具 举报

发表于 2024-8-22 23:15:51 | 显示全部楼层
太高深了,玩不了。
回复 支持 反对

使用道具 举报

发表于 2024-8-23 19:48:39 | 显示全部楼层
这个比较专业
回复 支持 反对

使用道具 举报

发表于 2024-8-24 07:34:24 | 显示全部楼层
膜拜大佬,现在电脑装个系统都不想搞
回复 支持 反对

使用道具 举报

发表于 2024-10-10 09:51:08 | 显示全部楼层
楼主,使用Home Assistant  平台,更适合你,可玩性更高。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

APP|手机版|小黑屋|关于我们|联系我们|法律条款|技术知识分享平台

闽公网安备35020502000485号

闽ICP备2021002735号-2

GMT+8, 2025-5-2 05:06 , Processed in 0.140401 second(s), 10 queries , Redis On.

Powered by Discuz!

© 2006-2025 MyDigit.Net

快速回复 返回顶部 返回列表