mstroink / solax-inverter
此软件包最新版本(v1.1.0)没有提供许可证信息。
从Solax逆变器收集数据
v1.1.0
2019-07-19 06:36 UTC
Requires
- php: >=7.1
- php-http/client-common: ^1.9 || ^2.0
- php-http/client-implementation: ^1.0
- php-http/discovery: ^1.6
- psr/http-client: ^1.0
Requires (Dev)
- guzzlehttp/psr7: ^1.5
- php-http/guzzle6-adapter: ^1.0
- phpunit/phpunit: ^5.7|^6.0
- symfony/var-dumper: ^4.3
Suggests
- guzzlehttp/psr7: PSR-7 message implementation that also provides common utility methods
- php-http/curl-client: cURL client for PHP-HTTP
This package is auto-updated.
Last update: 2024-09-06 23:26:58 UTC
README
Solax Inverter
用于从Solax逆变器读取实时数据的简单PHP客户端
目录
安装
通过Composer:如果您想快速开始,应运行以下命令
$ composer require mstroink/solax-inverter php-http/guzzle6-adapter php-http/message
为什么使用 php-http/guzzle6-adapter php-http/message
?我们在HTTPlug的帮助下与任何HTTP消息客户端解耦。在HTTPlug文档中了解有关客户端的信息。
使用
确保逆变器连接到您的网络。指南(pdf) 通过检查您是否可以访问以下URL并获取响应来确认逆变器数据流。http://INVERTERIP/api/historyData.htm
默认适配器
使用guzzle6-adapter和默认设置(超时等)初始化逆变器客户端
require 'vendor/autoload.php'; use MStroink\Solax\Inverter; $inverter = Inverter:create('192.168.178.10');
其他适配器
以下是HTTPlug官方支持的所有客户端和适配器的列表:http://docs.php-http.org/en/latest/clients.html
注意超时:夜间没有足够的阳光来为逆变器供电。
require 'vendor/autoload.php'; use MStroink\Solax\Http\HttpClientConfigurator; use MStroink\Solax\Inverter; use Cake\Http\Client as CakeClient; $clientConfigurator = (new HttpClientConfigurator()) ->setHost('192.168.178.10'); ->setClient(new CakeClient(['timeout' => 10])); $inverter = new Inverter($clientConfigurator)
响应
try { $response = $inverter->getRealTimeData(); echo $response->Inverter->getYieldToday() . "\n"; echo $response->Inverter->getYieldTotal() . "\n"; echo $response->Inverter->getInnerTemperature() . "\n"; $response->Grid->getCurrent(); $response->Grid->getExported(); $response->Grid->getFeedInPower(); $response->Grid->getFrequency(); $response->Grid->getImported(); $response->Grid->getPower(); $response->Grid->getVoltage(); $response->Meta->getMethod(); $response->Meta->getSerialNumber(); $response->Meta->getStatus(); $response->Meta->getType(); $response->Meta->getVersion(); $response->Pv->getPv1Current(); $response->Pv->getPv1Power(); $response->Pv->getPv1Voltage(); $response->Pv->getPv2Current(); $response->Pv->getPv2Power(); $response->Pv->getPv2Voltage(); $response->toArray(); } catch (HttpServerException $e) { //inverter is offline? }
测试
vendor/bin/phpunit
支持
请打开一个问题以获取支持。