AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / unix / 问题 / 788155
Accepted
Jaroslav Kucera
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 1 个回答
  • 12 Views

1 个回答

  • Voted
  1. 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 的电力,但天气仍然不是很晴朗。)

    • 0

相关问题

  • 无法使用 git 克隆 https 网址

  • VirtualBox 无法在 Fedora 26 中安装

  • 使用触摸屏时如何禁用屏幕键盘?

  • 如何找出 nmcli 中缺少的插件?

  • 如何正确分区 SSD 以进行双启动设置

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    模块 i915 可能缺少固件 /lib/firmware/i915/*

    • 3 个回答
  • Marko Smith

    无法获取 jessie backports 存储库

    • 4 个回答
  • Marko Smith

    如何将 GPG 私钥和公钥导出到文件

    • 4 个回答
  • Marko Smith

    我们如何运行存储在变量中的命令?

    • 5 个回答
  • Marko Smith

    如何配置 systemd-resolved 和 systemd-networkd 以使用本地 DNS 服务器来解析本地域和远程 DNS 服务器来解析远程域?

    • 3 个回答
  • Marko Smith

    dist-upgrade 后 Kali Linux 中的 apt-get update 错误 [重复]

    • 2 个回答
  • Marko Smith

    如何从 systemctl 服务日志中查看最新的 x 行

    • 5 个回答
  • Marko Smith

    Nano - 跳转到文件末尾

    • 8 个回答
  • Marko Smith

    grub 错误:你需要先加载内核

    • 4 个回答
  • Marko Smith

    如何下载软件包而不是使用 apt-get 命令安装它?

    • 7 个回答
  • Martin Hope
    user12345 无法获取 jessie backports 存储库 2019-03-27 04:39:28 +0800 CST
  • Martin Hope
    Carl 为什么大多数 systemd 示例都包含 WantedBy=multi-user.target? 2019-03-15 11:49:25 +0800 CST
  • Martin Hope
    rocky 如何将 GPG 私钥和公钥导出到文件 2018-11-16 05:36:15 +0800 CST
  • Martin Hope
    Evan Carroll systemctl 状态显示:“状态:降级” 2018-06-03 18:48:17 +0800 CST
  • Martin Hope
    Tim 我们如何运行存储在变量中的命令? 2018-05-21 04:46:29 +0800 CST
  • Martin Hope
    Ankur S 为什么 /dev/null 是一个文件?为什么它的功能不作为一个简单的程序来实现? 2018-04-17 07:28:04 +0800 CST
  • Martin Hope
    user3191334 如何从 systemctl 服务日志中查看最新的 x 行 2018-02-07 00:14:16 +0800 CST
  • Martin Hope
    Marko Pacak Nano - 跳转到文件末尾 2018-02-01 01:53:03 +0800 CST
  • Martin Hope
    Kidburla 为什么真假这么大? 2018-01-26 12:14:47 +0800 CST
  • Martin Hope
    Christos Baziotis 在一个巨大的(70GB)、一行、文本文件中替换字符串 2017-12-30 06:58:33 +0800 CST

热门标签

linux bash debian shell-script text-processing ubuntu centos shell awk ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve