接入更多设备,打造动环监测系统
书接上回打造一个智能温湿度监测平台
前言在上次的文章里面,我们介绍了 HA 平台的搭建,ESPHome 环境的搭建,连接了两款温湿度传感器,但是机房监控不仅仅有这两种设备,还有门禁、漏水、气体、电池、电表、UPS监控……各种各样的设备。本篇我们就介绍一下怎么把这些稀奇古怪的设备对接到我们的平台上面
对接各种设备选择什么协议?上回说到,HA 能够支持的协议非常之多,比如 TCP/IP 、BLE、ZigBee 等等,还能与米家等平台对接。不过考虑到数据安全和断网的可能性(或者说是云平台的稳定性,比如米家的服务器就炸过几回),加上现有设备的协议考虑,我们选择统一使用工业上常用的 Modbus RTU 协议,用 esp32-c3 来采集并统一上报
设备类型?去机房挨个翻了一下设备,目前已有设备主要是两种,一种是直接能通过 Modbus 上报数据的设备,一种是“开关量”设备,通过 Python 写的监测程序和一套“南瓜”(Niagara)物联网监测平台监测。直接通过 Modbus 上报数据的设备很简单,我们上次介绍过康耐德的温湿度传感器,而所谓“开关量”设备指的是通过开关的通断来表示某 ...
新年新气象,博客换新颜
前言之前去看富婆妹(ハミダシクリエイティブ)的 HP 的动效,感觉特别好看,就特别想整一个同款,于是在一月初花了点时间研究了一下,给博客换了个新主题,顺带做了个 Dark Mode 适配,这样晚上就看的舒服多了,不过做完之后基本上都在忙论文了,这两天论文答辩完等结果哩(应该比较乐观),所以来补档一下之前要写没写的内容(话说现在写这个标题真的好嘛,已经咕了快四个月才写)
ハミダシクリエイティブ 的 HP 动效长这个样子
主题
以下大量前端代码预警,不过没有前端知识也不要紧,我对前端也就只懂一点点,写 js 的时候还是靠着以前写爬虫的知识写的,不是很难,懂了核心思想就可以给自己的博客适配同款
效果可参照本博客,右下角两个按钮能切换主题
先来说主题怎么做,观察ハミダシクリエイティブ的前端代码,不难发现动效部分是用 css 实现的,代码位于 index.css?version=20191212 中,核心代码长下面这个样子
核心思想:在 index 里面给定一个 id 为 mv 的 section ,用 css 调整这个 section 的内容即可完成动效的制作
#mv .bg ...
【低价好物】50块钱的光纤交换机(一)?分组传送终端格林威尔GPN710
本篇为系列文章之第一篇
第三期传送门:【低价好物】50块钱的光纤交换机(三)?皖通邮电ZXWT CTNS 180X&150X
第二篇传送门:【低价好物】50块钱的光纤交换机(二)?瑞斯康达iTN系列分组传送终端
往期【低价好物】合集(从新到旧):
【低价好物】50块钱一个的移动IEG-100系列9口全千兆边缘智能网关,会翻车吗?
【低价好物】50块钱的光纤交换机(三)?皖通邮电ZXWT CTNS 180X&150X
【低价好物】50块钱的光纤交换机(二)?瑞斯康达iTN系列分组传送终端
【低价好物】50块钱的光纤交换机(一)?分组传送终端格林威尔GPN710
【低价好物】让10多年前的防火墙继续在今天发光发热——DPTech FW1000-GC-N
前言在1月的文章中我发现家里服务器经常死机的原因是室内侧设备漏电由无线传导到服务器导致服务器经常死机,在强电难以重新布线的情况下暂时使用光电转换器做“电->光->电”的转换,隔离漏电区域,但是因为加上了光电转换器,一下就在两侧各又增加了两个设备,增加了单点故障的可能性,同时占用了大量地方并使得线缆大量增加,正 ...
【低价好物】让10多年前的防火墙继续在今天发光发热——DPTech FW1000-GC-N
往期【低价好物】合集(从新到旧):
【低价好物】50块钱一个的移动IEG-100系列9口全千兆边缘智能网关,会翻车吗?
【低价好物】50块钱的光纤交换机(三)?皖通邮电ZXWT CTNS 180X&150X
【低价好物】50块钱的光纤交换机(二)?瑞斯康达iTN系列分组传送终端
【低价好物】50块钱的光纤交换机(一)?分组传送终端格林威尔GPN710
【低价好物】让10多年前的防火墙继续在今天发光发热——DPTech FW1000-GC-N
前言前段时间刚刚换上了华为的 USG6310S ,不过好景不长,刚刚上线没多久就发现这货的 CPU 有点撑不住了,在高峰期经常会因为 CPU 过高而开始进行会话抑制,就像这样
点击展开/收合图片
可以发现负载过高的是数据 CPU 而不是管理 CPU ,说明并不是策略过多或者开启防病毒策略等导致的 CPU 负荷过多。
参考华为的文档,华为的文档虽然很多地方说的很详细,但是却没有提到 CPU 的具体参数(指核心数量)和带机量
通过查询第三方资料,发现这个玩意儿带机量居然只有 50-100 ,局域网内大概有 50+ 台设备, ...
新年网络大改造(一)让优香酱接替软路由,管理网络大权
前言有人说过,新年第一发往往决定了一整年的质量,所以稍微微调了一下写作顺序,在打算写的八篇文章里面先挑出这篇来写,来一点儿浓厚的文章震撼
话说服务器在元旦那天是又不给力了(一开机几分钟就死机,最后查出原因真是让人哭笑不得,根本不是服务器的问题,后篇说),于是打算趁修服务器的同时改造一下网络,用硬路由换掉原先的软路由,防止服务器出问题家里就直接断网,也提高一下家里网络的稳定性,给自己远程排障预留一些余地
选型按理说这里可以选择的空间不是很大,海鲜市场随便找找淘汰二手企业级的路由器就行,于是最开始选中了菊厂的 AR169FGW-L ,只要 200 还包邮,支持双 WAN ,有 SFP 接口,甚至还支持 4G LTE ,带 4 个 AP 授权,成色相当不错
(下面截图这家已经卖出去了,本来打算买它的)
点击展开/收合图片
看了价格和成色,很是诱人,于是准备下单,先去整了一份产品文档,看看菊厂论坛,结果看负载均衡配置的时候发现这货带的负载均衡很简单,就是直接五五开分配到两条 WAN 上,想了一下,这还不如原先软路由呢,拉。又看帖子下面,人说用防火墙配置这个就好不少。想想学校 ...
使用Chromedp+GoQuery模拟人工操作,打通系统数字壁垒
前言在团体内部,往往有着多个系统,系统之间往往是一个个数据孤岛,各自互不连通,各自为政。为了打通各个系统,一方面可以通过统一认证(SSO,Single-Sing-On,单点登录);一方面,对于不太需要用户登录的系统,只需要从其中获取一些信息的系统,也可以做一个中间件去抓取并提供这些信息返回给用户。这次,我们就需要打通两个系统,要实现内部 VPN 系统的用户注册、删除用户、查询连接信息(也就是增删改),并把这些信息返回给另一个系统(比如 OA,或是其它系统/第三方调用)。我们这次就来做这样的一个中间件。
思路我们要对接的 VPN 系统是 django-sspanel ,由于没有数据表结构,大概看了一下增删改查都涉及到多个表的变更,所以直接去操作数据库显然是不明智的,而这个系统也没有接口文档,简单抓了一下包发现请求除了登录后的 cookies ,还需要携带一个 csrf-token ,而这个 token 也不知道是怎么生成出来的,感觉可能是根据时间为基础计算的,每次登录都不一样,和之前做的每日健康打卡不一样,那个只需要一个 Authorization 认证 Code 就行,而且有 ...
PluJS显身手,博客换新颜
前言换到 Plumemo 已经有一年多时间了,博客的轮播图也很久没有换过了,虽然图源辗转从 jsdelivr 先后换到了某第三方()和自建图床,但是轮播图的内容却一直没有换,究其原因主要是懒轮播图换起来太麻烦了,所以这次打算彻底解决一下这个问题
细心的朋友可能已经注意到从 12 月 14 号开始,博客上了一批必蓝碧蓝档案的新图,就是用我新做的工具安排上的,下面就来介绍一下我写的这个小工具 —— PluJS
PluJS简介PluJS 的名字来源于博客系统 Plumemo 和轮播图链接地址存储和调用方式(JavaScript)二者相结合,所以叫做 PluJS 。软件的图标是碧蓝档案的白洲梓。使用 Golang 编写,GUI 使用了 fyne 库,能够生成 Plumemo 轮播图的 JavaScript 文件,实现轮播图的增删改查。软件在 GitHub 上开源,可以在 GitHub 获取源码和编译好的小工具本体,项目地址:https://github.com/luckykeeper/PluJs,顺带求 Star ~
原理和需求Plumemo 的轮播图不能在系统后台配置,而是在主题文件夹内的 ...
打造一个智能温湿度监测平台
前言最近需要整一个智能物联网平台来接入机房温湿度监控,旧有的设备是 Konnad 的温湿度传感器 ,是 RS485 协议的 ModBus RTU 设备,通过 ZLAN 的串口服务器转成 ModBus 设备,这套价格比较贵,而且用起来非常麻烦,必须用十六进制的指令码去查数据,返回的数据还是一个低位前置的十六进制浮点,想用起来需要自己开发。所以趁这次机会换成低价方便的 ESPHome+小米米家蓝牙温湿度计2 的方案,平台选择了 Home Assistant(以下简称 HA)的方案
硬件准备HA
Home Assistant(HA) 是物联网智能系统的中枢,在各物联网平台中,目前 HA 是最广泛使用的物联网平台,有着最广泛的生态。能够将不同品牌厂商的设备连接到本地服务器上,而无需依赖厂商的云服务,也可以将不支持苹果 HomeKit 的设备接入 HomeKit 平台,能够在本地控制智能物联网设备(HA无需联网也可控制)。HA 能够连接 TCP/IP 设备、BLE 设备、ZigBee 设备、Z-Wave 设备等多种协议的设备。
在较大规模部署中,设备往往分布在多处,直接将蓝牙接收器设 ...
无人值守一键全自动装机?快来试试Cobbler
前言最近在研究 DHCP 服务,注意到 DHCP 可以配挺多 Option 的,其中我觉得最有意思的就是 Option66 和 Option67 了,指定这两个参数就可以实现网络启动,通过搭建 PXE 服务就可以实现无人值守一键装机,不需要 U 盘,不需要人看着,只需要插上网线就能搞定,是不是很有意思?今天咱们就来安装一套 PXE 服务!
准备阶段选型概述网上的教程基本上都是把 DHCP 服务和 PXE 服务安装在一台机器上面,在实际的网络环境中,往往已经存在了 DHCP 服务(路由器 or 交换机),而且这种通过手写配置的 DHCP 并不好进行管理,所以本次部署我们将 DHCP 和 PXE 分开。
顺带一提,如果需要把 DHCP 和 PXE 放在一台机器上运行,可以不装 dhcp 包,试试 ISC DHCP 加上 glass 管理界面,前几天搭了一套还挺好看。不过 glass 是一个 DashBoard ,只能看状态不能做设置,WEB 上给了一个写设置的地方但是其实是一个网页编辑器,还是要写文本的配置,不小心改错了就寄()
DHCPDHCP 的话,可以用内网现有的 DHCP 服务 ...
用Go来完成每日健康自动打卡
前言快开学了怎么还是没有动静捏,让天天打卡哩,整一个自动打卡节省自己的时间,写完之后在这里记录一下思路供各位参考
思路概述学校使用耶鲁大学的 CAS 来做 SSO 统一身份认证,调整了 CAS 的默认加密方法,有点复杂,前端看不懂啦(看了一下,加盐了,而且可能拼接了一个字段上去,没看出来具体是哪种方式,应该是SHA系列的加密),所以打算用 Chrome 模拟点击的方式来登录系统,拿到认证 Code 或者直接去填写
旧版旧版做起来比较简单,因为有 WEB 版的,就直接在 WEB 上填写,Go 的话有个 chromedp 库可以调用并操作一个无头(Headless)的 Chrome 浏览器,通过 HTML 的选择器可以选择相应元素并进行操作,登录那里选择用户名和密码的框框,然后把用户的学工号和密码输入进去敲个回车即可完成登录流程,需要特别注意的是,用程序操作时浏览器不会自动跳转到登录后页面,需要手动跳转一下到 OA 首页,就可以直接进入,不会再跳回到 CAS 页面。接下来直接跳转到旧版填报页面填报即可
新版新版的情况比较复杂,通过 Fiddler 抓包可以发现新版只能在 APP(Andr ...