玩转openrgb
缘由我的asus b760m有rgb但是华硕Armoury Crate 确实比较臃肿经常啥也没干它占用3-5%。而开源界有个openrgb虽然看似简陋但是它小啊。于是采用python脚本openrgb来玩转它。本方案应该也适用于其他rgb主板。准备工作1、下载openrgb直接去它官网下载openrgb.org安装好后第一次要扫描设备错过了用rescan这里注意我第一次打开的时候虽然扫描到了设备addressable 1 2 3但是有个size让我填其默认是0其实这个地方size指的灯珠数量。常见风扇有6个12个等面板很多是64数数量。这种灯就是ws2812灯珠5v供电io信号。定义为、io、空、-address可控制每个灯珠的设备在华硕主板上add_gen2_1 或add_gen2_2插针上这种灯珠的灯带比较贵好几块1米。搜索5v灯带ws2812即可灯珠4个脚。另外还有一个12v的接口4针定义分别为12v、green、red、blue。这个是12v共阳极只能整体变色不能控制到具体哪个灯珠。这种灯带比较便宜几块钱好几米。常搜索12vrgb灯带灯珠4个脚或6个脚。我自己用200欧电阻降压直接接3v灯珠也测试通过只是它不是我心里想的rgb而是grb线序。2、安装python并安装依赖和插件pip install psutil pip install openrgb-pythonpython脚本import time import psutil from openrgb import OpenRGBClient from openrgb.utils import RGBColor, DeviceType # 连接到 OpenRGB默认连接本地 6742 端口 client OpenRGBClient() # 找到你的主板设备 device None for dev in client.devices: if ASUS in dev.name or PRIME in dev.name: # 根据你的主板名称调整 device dev break if device is None: print(未找到主板设备请在脚本中修改设备名称匹配条件) print(可用的设备) for dev in client.devices: print(f - {dev.name}) exit() # 定义颜色映射规则 def get_color_by_cpu_usage(percent): if percent 5: return RGBColor(55, 55, 55) # 灰色 elif percent 10: return RGBColor(0, 0, 155) # 蓝 elif percent 15: return RGBColor(0, 155, 155) # 青 elif percent 20: return RGBColor(0, 155, 0) # 绿 elif percent 25: return RGBColor(155, 155, 0) # 黄 elif percent 30: return RGBColor(205, 165, 0) # 橙 elif percent 40: return RGBColor(155, 0, 0) # 红 elif percent 50: return RGBColor(128, 0, 128) # 紫 else: # 50% return RGBColor(0, 0, 0) # 黑 print(开始监控 CPU 占用率按 CtrlC 停止) print(颜色规则) print( 0-5% : 白色) print( 5-10% : 蓝色) print( 10-15% : 青色) print( 15-20% : 绿色) print( 20-25% : 黄色) print( 25-30% : 橙色) print( 35-40% : 红色) print( 40-50% : 紫色) print( 50%以上 : 黑色) print(- * 40) # 降低查询频率每 2 秒更新一次 UPDATE_INTERVAL 2 try: last_color None # 用于避免重复设置相同颜色 while True: # 获取 CPU 占用率采样间隔 2 秒 cpu_percent psutil.cpu_percent(interval2) # 根据占用率获取颜色 current_color get_color_by_cpu_usage(cpu_percent) # 只有颜色改变时才更新灯光减少通信开销 if last_color is None or (current_color.red ! last_color.red or current_color.green ! last_color.green or current_color.blue ! last_color.blue): device.set_color(current_color) last_color current_color # 在控制台显示当前状态 color_name { (255,255,255): 白色, (0,0,255): 蓝色, (0,255,255): 青色, (0,255,0): 绿色, (255,255,0): 黄色, (255,165,0): 橙色, (255,0,0): 红色, (128,0,128): 紫色, (0,0,0): 黑色 }.get((current_color.red, current_color.green, current_color.blue), 未知) print(fCPU占用率: {cpu_percent:5.1f}% - {color_name} RGB({current_color.red:3d}, {current_color.green:3d}, {current_color.blue:3d})) # 等待下一次更新 time.sleep(UPDATE_INTERVAL) except KeyboardInterrupt: print(\n\n已停止监控)注意上面代码里面ASUS之类的是根据自己的主板品牌搜索设备实际使用时要改成自己的。运行上面的代码前openrgb应该把SDK server打开。设置开机自启脚本winr 运行 输入shell:startup就可以打开老系统才看见的启动文件夹。里面添加bat文件内容如下echo off echo 正在启动 OpenRGB... start C:\Program Files\OpenRGB\OpenRGB.exe --server echo 等待 15 秒让 OpenRGB 初始化... timeout /t 15 /nobreak echo 启动 CPU 监控脚本... python d:\Documents\连接rgb.py pause注意openrgb安装的位置和python脚本的位置。这样一通操作就完成了。有些朋友可能觉得时刻要运行个框不安逸可以自行搜索如何让bat不显示运行。openrgb的隐藏是对小图标点击show/hide
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2474197.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!