집의 사용 전력을 보이게 해 보았습니다.
4944 단어 5grafanainfluxdbRaspberryPi
사용한 것
하드웨어
소프트웨어
참고한 기사
절차
아래 준비는 참고 기사 의 하드웨어 준비와 같습니다.
소프트웨어 설치
5
golang-1.7-src_1.7.1-2_armhf.deb
golang-1.7-go_1.7.1-2_armhf.deb
설치가 끝나면 path를 통해 둡니다.
$ export PATH=${PATH}:/usr/lib/go-1.7/bin
$ export GOROOT=/usr/lib/go-1.7
빌드 도구도 설치합니다.
$ export GOPATH=~/.go
$ go get github.com/constabulary/gb/...
$ go get github.com/constabulary/gb/cmd/gb-vendor
InfluxDB
influxdb_1.0.0-1_armhf.deb
Grafana
grafana_3.1.1-1470786449_armhf.deb
빌드
출처는 github에 게시되었습니다.
$ git clone https://github.com/hadanas/smartmeter.git
$ cd smartmeter
$ gb vendor restore
$ pushd vendor/src/golang.org/x/sys/unix
$ chmod +x *.sh *.pl
$ GOOS=linux GOARCH=arm ./mkall.sh
$ popd
$ gb build
설치
$ sudo install bin/smartmeter /usr/local/bin/smartmeter
$ sudo install smartmeter.conf /etc/smartmeter.conf
설정
InfluxDB
udp 섹션을 다음과 같이 편집합니다.
/etc/influxdb/influxdb.conf[[udp]]
enabled = true
bind-address = "127.0.0.1:8089"
database = "wattmeter"
systemd
/lib/systemd/system/smartmeter.service[Unit]
Description=Smartmeter
After=influxdb.service
[Service]
ExecStart=/usr/local/bin/smartmeter -c /etc/smartmeter.conf
WorkingDirectory=/var/lib/smartmeter
Restart=always
Type=simple
User=smartmeter
Group=smartmeter
[Install]
WantedBy=multi-user.target
설정 파일을 작성하면 systemd에 반영합니다.
$ systemctl daemon-reload
스마트미터
B 루트 ID와 암호를 설정합니다.
/etc/smartmeter.conf[routeb]
id = "00000000000000000000000000000000"
password = "************"
시작
설정이 끝나면 시작합니다.
# systemctl start influxdb
# systemctl start smartmeter
# systemctl start grafana-server
Grafana가 그래프를 작성하는 방법에 대한 설명은 할애
Watt, WattHour에는 각각 전력, 전력량의 값이 들어 있습니다.
$ influx
Visit https://enterprise.influxdata.com to register for updates, InfluxDB server management, and monitoring.
Connected to http://localhost:8086 version 1.0.0
InfluxDB shell version: 1.0.0
> use wattmeter
Using database wattmeter
> show measurements
name: measurements
------------------
name
Watt
WattHour
> select * from Watt limit 1
name: Watt
----------
time watt
1472351032206787174 292
> select * from WattHour limit 1
name: WattHour
--------------
time watthour
1472351400000000000 3074.8
브라우저에서 표시한 곳
Raspberry PI라고 이런 느낌.
Reference
이 문제에 관하여(집의 사용 전력을 보이게 해 보았습니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/hadanas/items/24a113dab2578b70c682
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
$ export PATH=${PATH}:/usr/lib/go-1.7/bin
$ export GOROOT=/usr/lib/go-1.7
$ export GOPATH=~/.go
$ go get github.com/constabulary/gb/...
$ go get github.com/constabulary/gb/cmd/gb-vendor
$ git clone https://github.com/hadanas/smartmeter.git
$ cd smartmeter
$ gb vendor restore
$ pushd vendor/src/golang.org/x/sys/unix
$ chmod +x *.sh *.pl
$ GOOS=linux GOARCH=arm ./mkall.sh
$ popd
$ gb build
$ sudo install bin/smartmeter /usr/local/bin/smartmeter
$ sudo install smartmeter.conf /etc/smartmeter.conf
[[udp]]
enabled = true
bind-address = "127.0.0.1:8089"
database = "wattmeter"
[Unit]
Description=Smartmeter
After=influxdb.service
[Service]
ExecStart=/usr/local/bin/smartmeter -c /etc/smartmeter.conf
WorkingDirectory=/var/lib/smartmeter
Restart=always
Type=simple
User=smartmeter
Group=smartmeter
[Install]
WantedBy=multi-user.target
$ systemctl daemon-reload
[routeb]
id = "00000000000000000000000000000000"
password = "************"
# systemctl start influxdb
# systemctl start smartmeter
# systemctl start grafana-server
$ influx
Visit https://enterprise.influxdata.com to register for updates, InfluxDB server management, and monitoring.
Connected to http://localhost:8086 version 1.0.0
InfluxDB shell version: 1.0.0
> use wattmeter
Using database wattmeter
> show measurements
name: measurements
------------------
name
Watt
WattHour
> select * from Watt limit 1
name: Watt
----------
time watt
1472351032206787174 292
> select * from WattHour limit 1
name: WattHour
--------------
time watthour
1472351400000000000 3074.8
Reference
이 문제에 관하여(집의 사용 전력을 보이게 해 보았습니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/hadanas/items/24a113dab2578b70c682텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)