Pico PR

【計算方法あり】RaspberryPi Pico本体の温度センサをMicroPythonで使う方法

記事内に商品プロモーションを含む場合があります

はじめに

Raspberry Pi Pico に搭載されている温度センサの使い方について解説します。

~ この記事の内容 ~

こんなことに使える
  • 部屋などの環境温度を測れる。
  • 追加の部品の購入なしでセンサに触れる。
  • Pythonで組み込みプログラミングをさくっと体験できる。

以下の方は次の記事も合わせてご覧ください。

  • 買った後にどうやってセットアップするの?
  • Windows7だとPicoを認識しない。

環境

環境バージョンなど備考
開発PC Windows 7 手動のドライバインストールが必要です
開発環境thonny-3.3.11
ボードRaspberry Pi Pico  
ケーブルUSB2.0 TypeA – MicroB

RaspberryPi Picoとの接続

今回はPico本体に搭載されている温度センサのみを使います。外部の部品・回路に接続する必要はありません。

使用する部品

今回の記事では以下の部品を使用しています。

RaspberryPi Pico

Pico本体です。半導体不足が続いていますが、価格・納期とも安定しています。

USBケーブル Micro-B

本体にUSBケーブルが付属していないので、別途購入が必要です。PicoW側の形状は「Micro-B」、ひと昔前のスマホと同じタイプを使います。現在主流のTypeCではないので注意が必要です。

実行結果

後述する、温度センサの値を取得するコードを実行結果は以下の通りです。

全体コード

Picoに搭載されている温度センサから、温度情報を読み取るコードです。
公式のGitHubの以下ページに掲載されています。

import machine
import utime

# 温度センサが接続されている、
# 4つ目の ADC(アナログデジタルコンバータ) を取得します
sensor_temp = machine.ADC(4)

# ADCの最大電圧3.3Vを16bit(65535)で割って、
# 16bitの 1 目盛りのあたりの電圧(変換係数)を計算します( 約 0.00005V)
conversion_factor = 3.3 / (65535)

while True:

    # センサから取得した値(0~65535) を電圧に変換します。
    reading = sensor_temp.read_u16() * conversion_factor
   
    # 温度を計算します。センサは27度を基準にしているため、
    # 温度センサの数値を27度から引いて計算します。
    temperature = 27 - (reading - 0.706)/0.001721

    print(temperature)
    utime.sleep(2)

コードのポイント

変換係数の計算

センサから取得した16bitの値に変換係数をかけて、温度センサの値を電圧値に変換します。

    # センサから取得した値(0~65535) を電圧に変換します。
    reading = sensor_temp.read_u16() * conversion_factor

温度の計算

Picoに搭載されている温度センサは、27度(0.706V)を基準としているようで、
取得される電圧は、27度からの差分/傾き(どれだけ変化しているか?)の値として考える必要があります。

そのため、単純に取得した値をそのまま温度として積算するのではなく、
27度を基準とした際の変化量として計算することで、温度を算出することができます。

1度につき、0.001721V 変化するそうなので、以下の式で温度を計算します。計算の流れは以下の通りです。

    # 温度を計算します。センサは27度を基準にしているため、
    # 温度センサの数値を27度から引いて計算します。
    temperature = 27 - (reading - 0.706)/0.001721

基準分を引き算して、基準からの変化量を求めます
reading(電圧値) – 0.706

基準からの変化量が、何度分であるかを計算します。
(reading – 0.706)/0.001721

基準の27度からの温度の変化量を引いて、現在の温度を計算します。
temperature = 27 – (reading – 0.706)/0.001721

まとめ

Raspberry Pi Pico に搭載されている温度センサの使い方について解説しました。
参考になればうれしいです。

お知らせ

今月の雑誌 Interfaceは、Pico W記事が満載です

今月の雑誌「Interface」は、RaspberryPi Pico Wの特集!

PicoWでのBluetoothやWi-Fiの使い方が重点的に解説され、Bluetoothの基礎知識、アプリの開発方法(3言語)、スマホと連携した赤外線リモコンの作り方などなど、Pico Wだらけな一冊になっています。(ChatGPTと作るPico W用アプリ開発まである)

Pico WやBluetoothに詳しくなりたい人は、是非チェックしてみてください。

CQ出版
¥1,430 (2023/11/22 13:27時点 | Amazon調べ)

Pico/Pico W関連のおすすめ本

RaspberryPi Pico / Pico W関連のおすすめ本を独断と偏見で3つ選んでみました。Picoやるならとりあえずこれ買っとけ的な本や、電子工作全般で使える本などを厳選しています。

見た目のいい工具をお探しの方へ

工具は『見た目』も重要。モチベもあがりますし、仲間や同僚と話ののネタにもなりますよね。「いいものが見つからない」という方には以下のサイトごおすすめです

質問・要望 大歓迎です

「こんな解説記事作って」「こんなことがしたいけど、〇〇で困ってる」など、コメント欄で教えてください。 質問・要望に、中の人ができる限り対応します。

使えたよ・設定できたよの一言コメントも大歓迎。気軽に足跡を残してみてください。記事を紹介したい方はブログ、SNSにバシバシ貼ってもらってOKです。

ABOUT ME
えす
現役のソフトウェアエンジニアです。 C++ C# Python を使ってます。10年ちょい設計/開発部門にいましたが、今はQAエンジニアっぽいことをしています。

COMMENT

メールアドレスが公開されることはありません。 が付いている欄は必須項目です