명령 줄과 bash가 편하기 때문에 Apache/nginx/웹 서버를 설치하면 json의 json 명령 줄 인코더/파서와 함께 json에서 data.json
파일을 포맷합니다.
파일에서 제목과 강의 시간과 같은 메타 데이터가있는 json 구조로 센서 판독 값을 저장합니다. 코드 뒤의 예 :
최소한의 HTML 페이지 구조, 자바 스크립트로 검색된 데이터의 형식을 지정하는 CSS.
데이터의 게이지 또는 기타 그래픽 렌더링을 빠르고 쉽게 얻을 수있는 방법으로 c3.js 또는 유사한 라이브러리를 추가하십시오. 나는 나 자신이 그것을하기에는 너무 게으 르다.
function popolate_dashboard(data) {
document.getElementById("title").innerHTML = data.title;
document.getElementById("timestamp").innerHTML = data.timestamp;
var target = document.getElementById("content");
data.sensors.forEach(function(sensor){
target.innerHTML = target.innerHTML +
"<div class='sensor'>" +
"<span>" + sensor.name + "</span>" +
"<span>" + sensor.reading + "</span>" +
"</div>";
});
}
/* Read the data via ajax every minute*/
setInterval(
function(){
aja().url('data.json')
.on('success', popolate_dashboard)
.go();
}
, 60000 /* 60 seconds * 1000 */
);
div.sensor {
border: 2px solid #a6a6a6;
border-radius: 0.25em;
display: inline-block;
margin-left: 1em;
max-width: 8em;
width: 8em;
}
div.sensor span {
display:inline-block;
padding-bottom:1em;
padding-top:1em;
text-align: center;
width: 100%;
}
div.sensor span:nth-child(2) {
background: #a6a6a6;
}
<html>
<head><title>Sensor Readings</title>
<script src="https://cdnjs.cloudflare.com/ajax/libs/aja/0.4.1/aja.min.js"></script>
<link rel="stylesheet" type="text/css" href="readings.css"/>
</head>
<body>
<h1 id="title">loading...</h1>
<h2 id="timestamp"></h2>
<div id="content"></div>
</body>
</html>
는 다음 나는 data.json 파일을로드하는 간단한 snapshot.html 페이지를 작성하고 당신이 필요로하는 대시 보드를 만들 것입니다.
{
"title": "raspberry my",
"timestamp": "20171227T23:45:00Z01",
"sensors": [
{ "name":"cpu temperature",
"reading":"57.6C"},
{"name":"motherboard temp.",
"reading":"34.02C"}
/*, other sensors objects */
]
}
aja 라이브러리는 페이지가로드되면 dinamically 데이터를 검색 할 상품은 다음과 같습니다
data.json 파일의 형식이 하나 (사용하기 전에 주석 라인을 제거)과 같다. 누락 된 x
은 의도적입니다.
C3.js 라이브러리는 데이터 형식을 지정하는 데 더 많은 작업이 필요하지만 더 멋진 출력을 얻을 수 있습니다.
더 많은 지침이 필요하고 아무도 더 정교한 솔루션을 제공하지 못한다면 다음 번에 더 많은 아이디어를 개발할 수 있습니다. – Eineki
이것은 프로그래밍 능력과 관련이 있으며 아이디어를 좋아합니다 ... 추가 입력 사항은 많이 부탁드립니다. – jake9115
개념을 확장하려면 컴퓨터와 다소 충전 된 배터리가 필요합니다. – Eineki