この記事では、Arduinoマイコンで計測した温度をPythonを用いてPCで受け取って表示する方法をソースコード付きで解説します。
気温をリアルタイム表示
Arduinoマイコンと温度センサ(LM35DZ)を用いて気温(温度)を計測し、その結果をシリアル通信でPCに転送してPythonでリアルタイム表示してみました。
【関連記事】
①Arduino入門 サンプル集
②Python入門 サンプル集
回路構成(配線図)
Arduinoと電子部品の構成・配線は下記の通りです。
【電子部品】
・Arduino UNO (1個)
・温度センサ(LM35DZ)
・ジャンプワイヤー(数本)
ソースコード
サンプルプログラムのソースコードです。
【Arduino側】
float a_in; // アナログ入力値(0〜203) float temp_c = 0; // 摂氏値( ℃ ) void setup(){ Serial.begin(9600); // シリアル通信速度 } void loop(){ // アナログピンから計測値を取得(0〜203) a_in = analogRead(0); // 入力値を摂氏に換算 temp_c = ((5 * a_in) / 1024) * 100; // 改行しながら出力 Serial.println( temp_c ); // 1000ms待機 delay(1000); }
【Python(パソコン側)】
# -*- coding: utf-8 -*- import serial import datetime def main(): i = 0 ser = serial.Serial("COM5") # Arduinoが接続されているコムポートを指定 while(i != 10): todaydetail = datetime.datetime.today() line = ser.readline() # 行終端まで読み込む line = line.rstrip() # 行終端コード削除 print(todaydetail.strftime("%Y/%m/%d %H:%M:%S") + " > " + line + "[C]") i+=1 ser.close() print("End") if __name__ == '__main__': main()
実行結果
サンプルプログラムの実行結果です。
【おすすめ記事】
Arduino入門 サンプル集
Python入門 サンプル集
コメント