« Manjaro Linuxをリモートデスクトップ経由で日本語入力可にする | メイン | 『Linux Mint 19.2』を入れてみた »

2019年08月07日

RaspberryPiのCPU温度を計測し、SVG画像として表示する

RaspberryPi上のWebページにアクセスした際、その時点のCPU温度を表示できるようにします。
以下のPHPファイルを作成

--------------------- ここから ---------------------
<?php
header('Content-type: image/svg+xml');

$text1 =<<<SVG
<?xml version="1.0" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg
xmlns="http://www.w3.org/2000/svg"
width="200"
height="40"
viewBox="0 0 200 40">

<rect x="0" y="0" width="200" height="40" stroke="black" fill="white"/>
SVG;

//CPU温度を取得するコマンドを実行(www-dataのサブグループとしてvideoグループを追加済み…【 # usermod -aG video www-data [Enter] 】)
$cmd = "vcgencmd measure_temp";
$result = exec($cmd);

//正規表現で小数点付き数値のみを抽出
preg_match('/\d+\.\d+/', $result, $match);

$text2 = '<text x="40" y="25">CPU温度: '.$match[0].'°C</text>';
$text3 = '</svg>';

echo $text1.$text2.$text3;

?>
--------------------- ここまで ---------------------

このPHPファイルを画像ファイル(SVG)として、IMGタグで指定するだけ。

投稿者 masatsu : 2019年08月07日 10:10

コメント