Jaroslav Kucera Asked: 2024-12-15 18:07:36 +0800 CST2024-12-15 18:07:36 +0800 CST 2024-12-15 18:07:36 +0800 CST USBtoSerial 监控和修改充电控制器 Epever XTRA 系列的设置 772 我该如何使用 Epever XTRA(可能还有 Tracer)系列太阳能充电控制器的 RS485 端口?我想用它来进行监控以及轻松修改参数。目前我的笔记本上安装的系统是 Fedora 39。 fedora 1 个回答 Voted Best Answer Jaroslav Kucera 2024-12-15T18:07:36+08:002024-12-15T18:07:36+08:00 是的,有可能。 最简单的方法是购买兼容 XTRA/Tracer 系列和 PWM LSxxxxB 系列的 Epever/EPsolar MPPT 控制器的 USB/RS485 电缆。在我的情况下,它被标记为 CC-USB-RS485-150U 并将lsusb其报告为: Bus 001 Device 007: ID 1a86:55d3 QinHeng Electronics USB Single Serial # lsusb -t /: Bus 001.Port 001: Dev 001, Class=root_hub, Driver=xhci_hcd/15p, 480M |__ Port 001: Dev 007, If 0, Class=Communications, Driver=cdc_acm, 12M Fedora 39(可能更新)可以检测到它并使用cdc_acm模块作为驱动程序。它创建/dev/ttyACM0设备。在我的情况下不需要特殊的模块编译(有这样的项目,可以在互联网上找到 - 如果是较旧的发行版或不同的电缆型号,则可能需要)。 我尝试连接的充电控制器是 Epever XTRA4210N-XDS2。 我成功使用epevermodbus项目版本 0.0.18 进行连接: https: //pypi.org/project/epevermodbus/0.0.18/ 通过 Python pip 安装非常简单:pip install epevermodbus 需要权限epevermodbus才能root运行。对于简单读取,只需指定设备端口(/dev/ttyACM0)和从属地址(通常为 1): # epevermodbus --portname /dev/ttyACM0 --slaveaddress 1 Real Time Data Solar voltage: 13.82V Solar current: 0.47A Solar power: 6.23W Load voltage: 12.46V Load current: 0.08A Load power: 1.37W Battery voltage: 12.46V Battery current: 0.45A Battery power: 6.72W Battery state of charge: 51% Battery temperature: 16.95°C Remote battery temperature: 0°C Controller temperature: 21.95°C Battery status: {'wrong_identifaction_for_rated_voltage': False, 'battery_inner_resistence_abnormal': False, 'temperature_warning_status': 'NORMAL', 'battery_status': 'NORMAL'} Charging equipment status: {'input_voltage_status': 'NORMAL', 'charging_mosfet_is_short_circuit': False, 'charging_or_anti_reverse_mosfet_is_open_circuit': False, 'anti_reverse_mosfet_is_short_circuit': False, 'input_over_current': False, 'load_over_current': False, 'load_short_circuit': False, 'load_mosfet_short_circuit': False, 'disequilibrium_in_three_circuits': False, 'pv_input_short_circuit': False, 'charging_status': 'BOOST', 'fault': True, 'running': True} Discharging equipment status: {'input_voltage_status': 'NORMAL', 'output_power_load': 'LIGHT', 'short_circuit': False, 'unable_to_discharge': False, 'unable_to_stop_discharging': False, 'output_voltage_abnormal': False, 'input_over_voltage': False, 'short_circuit_in_high_voltage_side': False, 'boost_over_voltage': False, 'output_over_voltage': False, 'fault': False, 'running': True} Day time: True Night time: False Maximum battery voltage today: 14.18V Minimum battery voltage today: 12.32V Maximum PV voltage today: 20.96V Minimum PV voltage today: 0V Device over temperature: False Consumed energy today: 0.11kWh Consumed energy this month: 0.25kWh Consumed energy this year: 0.25kWh Total consumed energy: 0.25kWh Generated energy today: 0.02kWh Generated energy this month: 0.43kWh Generated energy this year: 0.43kWh Total generated energy: 0.43kWh Current device time: 2013-01-14 23:58:31 Battery Parameters: Rated charging current: 40A Rated load current: 40A Battery real rated voltage: 12V Battery type: GEL Battery capacity: 200AH Temperature compensation coefficient: 3mV/°C/Cell Over voltage disconnect voltage: 16V Charging limit voltage: 15V Over voltage reconnect voltage: 15V Equalize charging voltage: 15V Boost charging voltage: 14.2V Float charging voltage: 13.8V Boost reconnect charging voltage: 13.2V Low voltage reconnect voltage: 12.6V Under voltage recover voltage: 12.2V Under voltage warning voltage: 12V Low voltage disconnect voltage: 11.1V Discharging limit voltage: 10.6V Battery rated voltage: AUTO Default load on/off in manual mode: ON Equalize duration: 120 min Boost duration: 120 min Battery discharge: 30% Battery charge: 100% Charging mode: VOLTAGE_COMPENSATION 除了以人类可读的形式读取外,该工具还支持带--json参数的 JSON 格式导出。完整的参数列表可通过--help参数访问。 以下是更改日期和“均衡充电电压”控制器设置的示例: # epevermodbus --portname /dev/ttyACM0 --slaveaddress 1 --set-time Old RTC value: 2013-01-15 00:03:09 New RTC value: 2024-12-14 10:51:34 # epevermodbus --portname /dev/ttyACM0 --slaveaddress 1 --set-equalize-charging-voltage 14.1 Old equalize charging voltage: 15V New equalize charging voltage: 14.1V 要检查值是否真的发生了变化,只需再读一遍: # epevermodbus --portname /dev/ttyACM0 --slaveaddress 1 ... Current device time: 2024-12-14 10:55:03 ... Equalize charging voltage: 14.1V ... 使用此工具,您可以轻松修改充电参数以最适合您的电池设置 - 通过控制器监控 LCD 进行这样做是一场噩梦...... (低值解释 - 这个安装相当小(400Wp),并且在冬季多云的天气条件下以及大部分是西南方向时它不会产生太多电力 - 当天气晴朗时,能量产量要好得多 - 那天晚些时候它产生了大约 40W 的电力,但天气仍然不是很晴朗。)
是的,有可能。
最简单的方法是购买兼容 XTRA/Tracer 系列和 PWM LSxxxxB 系列的 Epever/EPsolar MPPT 控制器的 USB/RS485 电缆。在我的情况下,它被标记为 CC-USB-RS485-150U 并将
lsusb
其报告为:Fedora 39(可能更新)可以检测到它并使用
cdc_acm
模块作为驱动程序。它创建/dev/ttyACM0
设备。在我的情况下不需要特殊的模块编译(有这样的项目,可以在互联网上找到 - 如果是较旧的发行版或不同的电缆型号,则可能需要)。我尝试连接的充电控制器是 Epever XTRA4210N-XDS2。
我成功使用
epevermodbus
项目版本 0.0.18 进行连接: https: //pypi.org/project/epevermodbus/0.0.18/通过 Python pip 安装非常简单:
pip install epevermodbus
需要权限
epevermodbus
才能root
运行。对于简单读取,只需指定设备端口(/dev/ttyACM0
)和从属地址(通常为 1):除了以人类可读的形式读取外,该工具还支持带
--json
参数的 JSON 格式导出。完整的参数列表可通过--help
参数访问。以下是更改日期和“均衡充电电压”控制器设置的示例:
要检查值是否真的发生了变化,只需再读一遍:
使用此工具,您可以轻松修改充电参数以最适合您的电池设置 - 通过控制器监控 LCD 进行这样做是一场噩梦......
(低值解释 - 这个安装相当小(400Wp),并且在冬季多云的天气条件下以及大部分是西南方向时它不会产生太多电力 - 当天气晴朗时,能量产量要好得多 - 那天晚些时候它产生了大约 40W 的电力,但天气仍然不是很晴朗。)