『瀚思彼岸』» 智能家居技术论坛

 找回密码
 立即注册
楼主: involute

[插件集成] 支持HA2021.8.X能源功能的培正用电信息采集方案

  [复制链接]

2

主题

105

帖子

1890

积分

金牌会员

Rank: 6Rank: 6

积分
1890
金钱
1785
HASS币
0
发表于 2021-8-31 14:28:35 | 显示全部楼层
involute 发表于 2021-8-31 02:28
看来这还是我的问题呢,我看看怎么弄

在研读大神的插件,能分享下插件开发的资料,想学习下
回复

使用道具 举报

20

主题

550

帖子

3603

积分

元老级技术达人

积分
3603
金钱
3013
HASS币
210

教程狂人突出贡献

 楼主| 发表于 2021-8-31 22:58:43 | 显示全部楼层
foxwywh 发表于 2021-8-31 14:28
在研读大神的插件,能分享下插件开发的资料,想学习下

哪有什么资料,除了简单得不能再简单的https://developers.home-assistant.io/以外,
就是看homeassistant自己的github,https://github.com/home-assistant/core,读他的源码

再就是看看别的大神的github
回复

使用道具 举报

20

主题

550

帖子

3603

积分

元老级技术达人

积分
3603
金钱
3013
HASS币
210

教程狂人突出贡献

 楼主| 发表于 2021-9-2 02:24:34 | 显示全部楼层
BH4WHN 发表于 2021-8-31 00:01
一语点醒梦中人,我总算是搞明白了,我是用官网推荐方式之一core venv方式安装,hass存储路径是/home/home ...

我看HomeAssistant的源代码,

path取得是这样的
    def path(self, *path: str) -> str:
        """Generate path to the file within the configuration directory.
        Async friendly.
        """
        if self.config_dir is None:
            raise HomeAssistantError("config_dir is not set")
        return os.path.join(self.config_dir, *path)


如果没有定义,应该是当当场报错啊?你方便在你原来的报错的地方加个输出
_LOGGER.debug(hass.config.path)


然后打开插件的调试输出,看看hass.config.path到底是啥内容吗?
回复

使用道具 举报

0

主题

37

帖子

613

积分

高级会员

Rank: 4

积分
613
金钱
576
HASS币
0
发表于 2021-9-2 06:48:46 | 显示全部楼层
dscao 发表于 2021-8-21 01:32
牛,把这个改成插件形式了,硬件接好后,使用上就更方便了。
之前我用的PZ004电表误差太大,达到了10%左右 ...

之前我的PZ004误差也可大,后来自己买了个20A的互感器换上后很准
回复

使用道具 举报

5

主题

267

帖子

2851

积分

金牌会员

Rank: 6Rank: 6

积分
2851
金钱
2584
HASS币
0
发表于 2021-9-2 20:23:20 | 显示全部楼层
involute 发表于 2021-9-2 02:24
我看HomeAssistant的源代码,

path取得是这样的

久等了,调试输出信息如下
2021-09-02 20:17:28 DEBUG (MainThread) [custom_components.peacefair_energy] protocol=rtuoverudp
2021-09-02 20:17:28 DEBUG (MainThread) [custom_components.peacefair_energy] Got Data {'voltage': 225.9, 'current': 0.079, 'power': 5.1, 'energy': 0.417, 'frequency': 50.0, 'power_factor': 0.29}
2021-09-02 20:17:28 DEBUG (MainThread) [custom_components.peacefair_energy] Finished fetching peacefair_energy data in 0.369 seconds
2021-09-02 20:17:28 DEBUG (MainThread) [custom_components.peacefair_energy.sensor] <bound method Config.path of <homeassistant.core.Config object at 0x7fe4842f15e0>>
2021-09-02 20:17:44 DEBUG (MainThread) [custom_components.peacefair_energy] Got Data {'voltage': 225.9, 'current': 0.079, 'power': 5.0, 'energy': 0.417, 'frequency': 50.0, 'power_factor': 0.28}
2021-09-02 20:17:44 DEBUG (MainThread) [custom_components.peacefair_energy] Finished fetching peacefair_energy data in 0.360 seconds
2021-09-02 20:17:57 ERROR (MainThread) [homeassistant.components.updater] Timeout fetching Home Assistant update data
回复

使用道具 举报

20

主题

550

帖子

3603

积分

元老级技术达人

积分
3603
金钱
3013
HASS币
210

教程狂人突出贡献

 楼主| 发表于 2021-9-2 21:14:19 | 显示全部楼层
本帖最后由 involute 于 2021-9-2 21:17 编辑
BH4WHN 发表于 2021-9-2 20:23
久等了,调试输出信息如下
2021-09-02 20:17:28 DEBUG (MainThread) [custom_components.peacefair_energ ...
_LOGGER.debug(hass.config.path("."))
看看呢
回复

使用道具 举报

17

主题

320

帖子

2491

积分

金牌会员

Rank: 6Rank: 6

积分
2491
金钱
2171
HASS币
20
发表于 2021-9-2 21:25:09 | 显示全部楼层
花落花空 发表于 2021-8-31 00:18
感谢大神的集成,之前用esphome读的培正,得自己搞月用电数据啥的。看到帖子试了下改成透传,很容易就成功 ...

uart_id: pzem请问这个pzem是固定的还是随意编的
回复

使用道具 举报

5

主题

267

帖子

2851

积分

金牌会员

Rank: 6Rank: 6

积分
2851
金钱
2584
HASS币
0
发表于 2021-9-2 21:28:23 | 显示全部楼层

来了
2021-09-02 21:27:38 DEBUG (MainThread) [custom_components.peacefair_energy] protocol=rtuoverudp
2021-09-02 21:27:38 DEBUG (MainThread) [custom_components.peacefair_energy] Got Data {'voltage': 221.5, 'current': 0.078, 'power': 5.0, 'energy': 0.428, 'frequency': 50.0, 'power_factor': 0.29}
2021-09-02 21:27:38 DEBUG (MainThread) [custom_components.peacefair_energy] Finished fetching peacefair_energy data in 0.363 seconds
2021-09-02 21:27:39 DEBUG (MainThread) [custom_components.peacefair_energy.sensor] /home/homeassistant/.homeassistant/.
回复

使用道具 举报

17

主题

320

帖子

2491

积分

金牌会员

Rank: 6Rank: 6

积分
2491
金钱
2171
HASS币
20
发表于 2021-9-2 21:31:22 | 显示全部楼层
楼主 我尝试着将你的插件改成正泰DDSU666的现在遇到一个问题,怎么输出result(对Python不熟悉),ttl转485模块收发指示灯都是闪烁的,说明发送指令应该是没问题的,但是日志总是提示error in gathering,timed out  想看看获取到的数据是怎么样的
IMG_20210902_204922.jpg
IMG_20210902_204957.jpg
回复

使用道具 举报

20

主题

550

帖子

3603

积分

元老级技术达人

积分
3603
金钱
3013
HASS币
210

教程狂人突出贡献

 楼主| 发表于 2021-9-2 21:39:42 | 显示全部楼层
本帖最后由 involute 于 2021-9-2 21:42 编辑
BH4WHN 发表于 2021-9-2 21:28
来了
2021-09-02 21:27:38 DEBUG (MainThread) [custom_components.peacefair_energy] protocol=rtuoveru ...

我了解错误所在了,谢谢你

事实是96行应该是
os.makedirs(hass.config.path(STORAGE_PATH), exist_ok=True)


结果我写成了
os.makedirs(STORAGE_PATH, exist_ok=True)


我的错我的错

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Hassbian

GMT+8, 2024-11-22 01:58 , Processed in 1.007932 second(s), 33 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表