lujiashun1 发表于 2021-9-3 14:24:31

这个设置可以读出来

involute 发表于 2021-9-3 14:36:20

本帖最后由 involute 于 2021-9-3 14:45 编辑

lujiashun1 发表于 2021-9-3 14:24
这个设置可以读出来
嗯哼,所以你在那一堆检查返回值的if and and and 之前输出一下,看看返回值到底是什么,为什么那一堆if不满足。
哦对你问的就是怎么输出对吧,在打开debug输出的前提下

_LOGGER.debug(f"result ={result}") //看看是不是None
_LOGGER.debug(f"result_type ={type(result)}")//看看类型对不对
_LOGGER.debug(f"result.registers ={result.registers}")//输出读取的寄存器内容


lujiashun1 发表于 2021-9-3 14:57:06

type(result) is not ModbusIOException加这句就不行了   怎么打印这个异常

involute 发表于 2021-9-3 16:09:49

lujiashun1 发表于 2021-9-3 14:57
type(result) is not ModbusIOException加这句就不行了   怎么打印这个异常
我建议你本地先用python写测试脚本啊,可以跟踪调试的,愿意停哪停哪的那种,愿意看哪个变量看哪个变量那种。

你把那个我的modbus.py文件拷贝下来,把HomeAssistant的引用全去掉,在本地写一段调用,就在本地运行不好么。直接线上搞,不累么。

lujiashun1 发表于 2021-9-3 16:30:43

involute 发表于 2021-9-3 16:09
我建议你本地先用python写测试脚本啊,可以跟踪调试的,愿意停哪停哪的那种,愿意看哪个变量看哪个变量那 ...

我现在改成用pycharm调试了   就是报Modbus Error: timed out

involute 发表于 2021-9-3 16:34:07

lujiashun1 发表于 2021-9-3 16:30
我现在改成用pycharm调试了   就是报Modbus Error:timed out

self._client = ModbusUdpClient(
                host = host,
                port = port,
                framer = ModbusRtuFramer,
                timeout = 2,
                retry_on_empty = False,
                retry_on_invalid = False
            )

初始化的时候不是有timeout参数么,设长一点呢

lujiashun1 发表于 2021-9-3 16:41:07

involute 发表于 2021-9-3 16:34
self._client = ModbusUdpClient(
                host = host,
                port = port,


不行 我在找其他原因   我设置成了10我找个别的透传固件试试

ptsa 发表于 2021-9-3 17:22:27

建议设置一个最后一次获取时间,
长时间不获取的话 默认好像显示最后一次数据的
这样故障了 有时候不能马上发现https://cdn.jsdelivr.net/gh/master-of-forums/master-of-forums/public/images/patch.gif

ptsa 发表于 2021-9-3 17:53:09

状态类错误
以下实体的 state class 不是“total_increasing”:
sensor.192_168_1_137_energy (measurement)

还有能源哪里加的时候 提示这个错误https://cdn.jsdelivr.net/gh/master-of-forums/master-of-forums/public/images/patch.gif

involute 发表于 2021-9-3 18:21:47

ptsa 发表于 2021-9-3 17:22
建议设置一个最后一次获取时间,
长时间不获取的话 默认好像显示最后一次数据的
这样故障了 有时候不能马 ...

并不需要我去设置什么最后一次获取时间,last-updated是所有传感器自带属性,要显示的话,只要取其last-updated即可。
比如这样:
type: entities
entities:
- entity: sensor.192_168_1_125_energy
    secondary_info: last-updated    # last-updated是最后一次更新,其它还可以是last-changed, 最后一次改变



效果


页: 1 2 3 4 5 6 7 8 9 [10] 11 12 13 14 15 16 17 18 19
查看完整版本: 支持HA2021.8.X能源功能的培正用电信息采集方案