<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>関連製品 &#8211; sozorablog</title>
	<atom:link href="https://sozorablog.com/category/%E9%96%A2%E9%80%A3%E8%A3%BD%E5%93%81/feed/" rel="self" type="application/rss+xml" />
	<link>https://sozorablog.com</link>
	<description>Raspberry Piで電子工作をはじめよう</description>
	<lastBuildDate>Fri, 17 Apr 2026 08:50:47 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.4</generator>

<image>
	<url>https://sozorablog.com/wp-content/uploads/2025/04/cropped-ChatGPT-Image-2025年4月5日-15_25_36-32x32.png</url>
	<title>関連製品 &#8211; sozorablog</title>
	<link>https://sozorablog.com</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Raspberry PiとWhisplay HATで音声ガジェットを作ろう</title>
		<link>https://sozorablog.com/whisplay-hat/</link>
					<comments>https://sozorablog.com/whisplay-hat/#respond</comments>
		
		<dc:creator><![CDATA[そぞら]]></dc:creator>
		<pubDate>Thu, 16 Apr 2026 11:17:29 +0000</pubDate>
				<category><![CDATA[Raspberry Pi]]></category>
		<category><![CDATA[関連製品]]></category>
		<guid isPermaLink="false">https://sozorablog.com/?p=16651</guid>

					<description><![CDATA[PiSugarから音声と表示を一体で扱える拡張ボード「Whisplay HAT」が登場しました。Raspberry Piに差し込むだけで、マイクとスピーカーによる音声入出力、LCD表示、ボタン操作までをまとめて利用できま [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p><a href="https://www.pisugar.com/">PiSugar</a>から音声と表示を一体で扱える拡張ボード「Whisplay HAT」が登場しました。<a href="https://sozorablog.com/raspberry-pi/">Raspberry Pi</a>に差し込むだけで、マイクとスピーカーによる音声入出力、LCD表示、ボタン操作までをまとめて利用できます。</p>



<figure class="wp-block-image size-full is-resized"><img fetchpriority="high" decoding="async" width="714" height="694" src="https://sozorablog.com/wp-content/uploads/2026/04/IMG_0742.jpeg" alt="" class="wp-image-16798" style="aspect-ratio:1.0288522288522288;width:514px;height:auto"/><figcaption class="wp-element-caption">Raspberry Piと音声で会話できる</figcaption></figure>



<p>今までになかったコンセプトの製品で、昨今のAIブームとも相性が良く、音声インターフェースを使ったガジェットを手軽に作れる点が魅力です。</p>



<p>この記事では、Whisplay HATを使い、AIチャットボットとニュース読み上げガジェットの作り方を解説します。ラズパイの可能性がさらに広がる感覚をつかめるはずです。</p>



<p>私が購入した時点では、Amazonで在庫がなく、<a href="https://www.pisugar.com/products/whisplay-hat-for-pi-zero-2w-audio-display">公式サイト</a>から購入しました。</p>



<!-- START MoshimoAffiliateEasyLink -->
<script type="text/javascript">
(function(b,c,f,g,a,d,e){b.MoshimoAffiliateObject=a;
b[a]=b[a]||function(){arguments.currentScript=c.currentScript
||c.scripts[c.scripts.length-2];(b[a].q=b[a].q||[]).push(arguments)};
c.getElementById(a)||(d=c.createElement(f),d.src=g,
d.id=a,e=c.getElementsByTagName("body")[0],e.appendChild(d))})
(window,document,"script","//dn.msmstatic.com/site/cardlink/bundle.js?20220329","msmaflink");
msmaflink({"n":"Raspberry Pi Zero W\/2W用Whisplay HAT – オーディオ+ディスプレイ拡張ボード。","b":"PI PISUGAR","t":"","d":"https:\/\/m.media-amazon.com","c_p":"\/images\/I","p":["\/31ZWzMEzvgL._SL500_.jpg","\/41167B9024L._SL500_.jpg","\/21FWfK7GKUL._SL500_.jpg","\/31F9K0E1oML._SL500_.jpg","\/31A-oMe1qrL._SL500_.jpg","\/51glNP3UJEL._SL500_.jpg"],"u":{"u":"https:\/\/www.amazon.co.jp\/dp\/B0FPG8S6K6","t":"amazon","r_v":""},"v":"2.1","b_l":[{"id":1,"u_tx":"Amazonで見る","u_bc":"#f79256","u_url":"https:\/\/www.amazon.co.jp\/dp\/B0FPG8S6K6","a_id":3038653,"p_id":170,"pl_id":27060,"pc_id":185,"s_n":"amazon","u_so":0}],"eid":"oKnZh","s":"s"});
</script>
<div id="msmaflink-oKnZh">リンク</div>
<!-- MoshimoAffiliateEasyLink END -->



<h2 class="wp-block-heading">Whisplay HATは音声アシスタントに特化</h2>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="450" src="https://sozorablog.com/wp-content/uploads/2026/04/pico-6.jpg" alt="" class="wp-image-16802" srcset="https://sozorablog.com/wp-content/uploads/2026/04/pico-6.jpg 800w, https://sozorablog.com/wp-content/uploads/2026/04/pico-6-320x180.jpg 320w, https://sozorablog.com/wp-content/uploads/2026/04/pico-6-224x126.jpg 224w" sizes="(max-width: 800px) 100vw, 800px" /><figcaption class="wp-element-caption">Whisplay HATの裏面</figcaption></figure>



<p>Whisplay HATは、<a href="https://sozorablog.com/raspberry-pi-zero-2-w/">Raspberry Pi Zero 2 W</a>や<a href="https://sozorablog.com/pi5/">Raspberry Pi 5</a>に対応した、音声と表示をまとめて扱える拡張ボードです。Raspberry Piに取り付けることで、以下の機能が使えるようになります。</p>



<div class="wp-block-sbd-list"><ul class="sbd-list sbd-list-border"><li>音声の入出力（マイク・スピーカー）</li><li>LCD画面の表示</li><li>ボタン入力の取得</li><li>RGB LEDの制御</li></ul></div>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="800" height="583" src="https://sozorablog.com/wp-content/uploads/2026/04/IMG_0626-1.jpeg" alt="" class="wp-image-16800" style="width:638px;height:auto"/><figcaption class="wp-element-caption">Raspberry Pi 5でも使用可能</figcaption></figure>



<p>Raspberry PiのGPIOにそのまま差し込むだけで利用できる便利な設計です。複雑な配線を行う手間がなく、使い始められます。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="489" src="https://sozorablog.com/wp-content/uploads/2026/04/IMG_0745.jpeg" alt="" class="wp-image-16816"/><figcaption class="wp-element-caption">Raspberry Pi Zero 2 Wとのサイズ比較</figcaption></figure>



<p>Raspberry Pi Zero 2 Wと同サイズなので、一体感のあるスマートな見た目に仕上がる点が気に入っています。</p>



<h2 class="wp-block-heading">Whisplay HATの使用準備</h2>



<figure class="wp-block-image size-full is-resized"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/04/スクリーンショット-2026-04-12-20.17.09-1.png" alt="" style="width:766px;height:auto"/></figure>



<p><a href="https://sozorablog.com/raspberrypi_initial_setting/">Raspberry Pi OS</a>はTrixieのデスクトップ版を選択しました。</p>



<h3 class="wp-block-heading">Whisplay HATの取り付け</h3>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="554" src="https://sozorablog.com/wp-content/uploads/2026/04/IMG_0634.jpeg" alt="" class="wp-image-16799"/></figure>



<p>Raspberry PiのGPIOピンに差し込みます。この際、LCD部分を押さえないように注意しましょう。</p>



<h3 class="wp-block-heading">Whisplay HATの初期設定</h3>



<p>Raspberry Piを起動して、Whisplay HATの使用準備をします。</p>



<figure class="wp-block-image size-full"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/01/pico-1-6.jpg" alt=""/></figure>



<p>Whisplay HATのプログラムをダウンロードします。<code>--depth 1</code>は最新版だけを取得する指定です。以下を入力したあとにEnterキーを押すと実行されます<strong>。</strong></p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>git clone https://github.com/PiSugar/Whisplay.git --depth 1</code></pre></div>



<p>フォルダを移動します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>cd Whisplay/Driver</code></pre></div>



<p>以下を実行すると、音声チップの設定や、I2C・I2Sといった通信機能の有効化が自動で行われます。先頭のyesは、途中で表示される確認メッセージに対して自動的に「yes」と答えるためのものです。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>yes | sudo bash install_wm8960_drive.sh</code></pre></div>



<p>Raspberry Piを再起動して、設定を反映させます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>sudo reboot</code></pre></div>



<h3 class="wp-block-heading">Whisplay HATの動作確認</h3>



<p>再起動したら、Whisplay HATの動作を確認するためのテストプログラムを実行してみましょう。以下のコマンドでtest.pyを起動します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>cd /home/pi/Whisplay/example && python3 test.py</code></pre></div>



<p><br>プログラムを起動すると、data/test.pngの画像がLCDに表示されます。Whisplay HATの右側面に付いている白いボタンを押すと、サンプルの音声が再生され、画面とLEDの色が赤・緑・青の順に切り替わります。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/04/IMG_0624.jpeg" alt="" style="aspect-ratio:0.8222213491533414;width:283px;height:auto"/></figure>



<p>この動作により、画面表示、音声再生、LED制御、ボタン入力といった機能が正常に動いているかを確認できます。<a href="https://github.com/PiSugar/Whisplay/blob/main/example/test.py">テストコード</a>の中身を確認することで、Whisplay HATの動かし方が理解でき、オリジナルのプロジェクトを作る際のヒントにもなります。</p>



<h4 class="wp-block-heading">音量の調整</h4>



<p>スピーカーの音量は、デスクトップ画面右上のスピーカーのアイコンをクリックして変更できます。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/04/pico.jpg" alt="" style="width:548px;height:auto"/></figure>



<h2 class="wp-block-heading">AIチャットボットを動かす</h2>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="748" height="788" src="https://sozorablog.com/wp-content/uploads/2026/04/IMG_0744.jpg" alt="" class="wp-image-16803" style="aspect-ratio:0.9492530988452167;width:560px;height:auto"/><figcaption class="wp-element-caption">音声で会話できる</figcaption></figure>



<p>メーカーが公開している音声チャットボット「Whisplay AI Chatbot」を使うことで、会話デバイスを簡単に構築できます。ボタンを押して話しかけると、AIが音声で返答する仕組みです。</p>



<p>Whisplay AI Chatbotは、複数のAIサービスに対応しています。クラウド型ではOpenAIやGeminiなどが使えます。ローカル型ではOllamaやWhisper、Piperなどを使ってオフライン動作も可能です。</p>



<div class="wp-block-sbd-balloon sbd-balloon sbd-balloon--id-4 sbd-balloon--flat sbd-balloon--l sbd-balloon--green block-box"><div class="sbd-balloon__profile"><figure class="sbd-balloon__icon"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2021/09/アイコン.jpg" alt="そぞら" class="sbd-balloon__img"/></figure><div class="sbd-balloon__name">そぞら</div></div><div class="sbd-balloon__text-box sbd-inner-block-init">
<p>ここでは、最も簡単に設定できるOpenAIのサービスを使って設定します。</p>
</div></div>



<p>まずは<a href="https://github.com/PiSugar/whisplay-ai-chatbot">GitHub</a>に公開されているソースコード（プログラム一式）をダウンロードします。<code>whisplay-ai-chatbot</code>フォルダが作成され、その中にソースコードが保存されます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>git clone https://github.com/PiSugar/whisplay-ai-chatbot.git</code></pre></div>



<p>ダウンロードしたフォルダへ移動します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>cd whisplay-ai-chatbot</code></pre></div>



<p>プログラムを動かすために必要なソフトをまとめてインストールします。以下を実行すると、音声処理やAIの動作に必要なライブラリ、Node.jsやPython関連のパッケージが自動でインストールされます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>bash install_dependencies.sh</code></pre></div>



<p>設定ファイル（.bashrc）の内容を反映します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>source ~/.bashrc</code></pre></div>



<p><code>.env.template</code>をコピーして<code>.env</code>というファイルを作成します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>cp .env.template .env</code></pre></div>



<div class="wp-block-sbd-balloon sbd-balloon sbd-balloon--id-4 sbd-balloon--flat sbd-balloon--l sbd-balloon--green block-box"><div class="sbd-balloon__profile"><figure class="sbd-balloon__icon"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2021/09/アイコン.jpg" alt="そぞら" class="sbd-balloon__img"/></figure><div class="sbd-balloon__name">そぞら</div></div><div class="sbd-balloon__text-box sbd-inner-block-init">
<p>チャットボットは、設定が書かれた<code>.env</code>というファイルを読み込んで動きます。</p>
</div></div>



<p>次のコマンドで<code>.env</code>を開きます。nanoはターミナル上でテキストファイルを編集できるシンプルなエディタです。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>nano .env</code></pre></div>



<h3 class="wp-block-heading">APIキーを準備する</h3>



<p>ここでは詳細を説明しませんが、以下の手順でOpenAIのAPIキーを作成します。事前に<a href="https://openai.com/ja-JP/api/pricing/">API利用料金</a>も確認しておきましょう。使用するモデルはデフォルトで<span class="sbd-text-red">gpt-4o</span>が設定されています。</p>



<ol class="wp-block-list">
<li><a href="https://platform.openai.com/overview">管理画面（APIプラットフォーム）</a>を開く</li>



<li>アカウントを作成またはログインする</li>



<li>金額を選んでクレジットを購入（$5 creditsで十分）</li>



<li><a href="https://platform.openai.com/overview">OpenAI developer platform</a>の画面右上の歯車マークをクリック</li>



<li>「API keys」ページに移動する </li>



<li>「Create new secret key」をクリックしてAPIキーを発行する </li>



<li>表示されたキーをコピーして保存する</li>
</ol>



<h3 class="wp-block-heading">APIキーを設定する</h3>



<p>テンプレートはデフォルトで音声認識・会話処理・音声出力のすべてをOpenAIで行う設定になっています。.envの下の方までスクロールして、OpenAIのAPIキーを入力します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>OPENAI_API_KEY=ここに自分のAPIキー</code></pre></div>



<figure class="wp-block-image size-full"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/04/pico-1.jpg" alt=""/></figure>



<p><code>nano .env</code>で編集したあと、Ctrlキーを押しながらOを押して保存します。画面下にファイル名が表示されるので、そのままEnterキーを押すと保存が確定します。その後、Ctrlキーを押しながらXを押すとnanoが終了します。</p>



<p>プロジェクトをビルドします。依存パッケージの準備や必要なファイルの生成が行われ、チャットボットを起動できる状態になります。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>bash build.sh</code></pre></div>



<h3 class="wp-block-heading">チャットボットを動かしてみる</h3>



<p>以下のコマンドでチャットボットが起動します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>bash run_chatbot.sh</code></pre></div>



<figure class="wp-block-image size-full is-resized"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/04/IMG_0729.jpeg" alt="" style="aspect-ratio:1.2441987897269737;width:469px;height:auto"/></figure>



<p>起動後は、Whisplay HATの右側面に付いている白いボタンを押している間に話しかけます。話し終えたらボタンを離すと、音声がOpenAIに送信され、内容が解析されます。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/04/IMG_0730.jpeg" alt="" style="width:491px;height:auto"/></figure>



<p>その後、AIが返答を生成し、その内容が音声として再生されます。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/04/IMG_0731.jpeg" alt="" style="aspect-ratio:1.2779953014878622;width:495px;height:auto"/></figure>



<p>終了する場合は、ターミナルでCtrlキーとCを押すと停止します。</p>



<p>Raspberry Piを再起動したあとは、以下のコマンドでチャットボットを起動できます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>cd ~/whisplay-ai-chatbot && bash run_chatbot.sh</code></pre></div>



<h2 class="wp-block-heading">ニュースを読み上げるガジェットを作ろう</h2>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="800" height="583" src="https://sozorablog.com/wp-content/uploads/2026/04/IMG_0741.jpeg" alt="" class="wp-image-16784" style="width:668px;height:auto"/><figcaption class="wp-element-caption">最新ニュースを音声とテキスト表示で教えてくれる</figcaption></figure>



<p>ここからはWhisplay HATの独自の使い方を紹介します。API料金を気にせず使える方法として、<span class="sbd-text-bg-yellow">ローカル環境だけで音声を生成する構成</span>を考えました。今回はインターネットからニュースを取得し、その見出しを音声で読み上げるガジェットを作成します。</p>



<h3 class="wp-block-heading">テキストをしゃべらせてみよう</h3>



<p>OpenJTalkをインストールします。OpenJTalkは、名古屋工業大学を中心に開発された、日本語の文章を音声に変換して読み上げるオープンソースの音声合成エンジンです。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>sudo apt install -y open-jtalk open-jtalk-mecab-naist-jdic hts-voice-nitech-jp-atr503-m001</code></pre></div>



<p>音声対話ソフトMMDAgentのサンプルに含まれる音声を取得します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>wget https://downloads.sourceforge.net/project/mmdagent/MMDAgent_Example/MMDAgent_Example-1.8/MMDAgent_Example-1.8.zip</code></pre></div>



<p>ZIP形式のファイル「MMDAgent_Example-1.8.zip」を解凍します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>unzip MMDAgent_Example-1.8.zip</code></pre></div>



<p>meiフォルダをシステムの音声データ用ディレクトリ（/usr/share/hts-voice/）にコピーします。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>sudo cp -r MMDAgent_Example-1.8/Voice/mei /usr/share/hts-voice/</code></pre></div>



<p>Thonnyを開いて、Pythonのプログラムを実行します。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/04/pico-2.jpg" alt="" style="width:555px;height:auto"/></figure>



<p>以下のコードをコピーペーストして実行してみましょう。Whisplay HATのスピーカーから「こんにちは」の音声が流れるはずです。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/04/pico-3.jpg" alt="" style="aspect-ratio:1.5444307750544146;width:564px;height:auto"/></figure>



<div class="hcb_wrap"><pre class="prism line-numbers lang-python" data-lang="Python"><code>import subprocess

def speak_japanese(text, voice=&quot;normal&quot;, speed=0.8):
    # voiceで選択できる種類
    # &quot;normal&quot;   : 標準
    # &quot;happy&quot;    : 明るい
    # &quot;angry&quot;    : 怒り
    # &quot;sad&quot;      : 悲しい
    # &quot;bashful&quot;  : 照れ
    voice_path = f&quot;/usr/share/hts-voice/mei/mei_{voice}.htsvoice&quot;

    subprocess.run(
        [
            &quot;open_jtalk&quot;,
            &quot;-x&quot;, &quot;/var/lib/mecab/dic/open-jtalk/naist-jdic&quot;,
            &quot;-m&quot;, voice_path,
            &quot;-r&quot;, str(speed),
            &quot;-ow&quot;, &quot;/tmp/test.wav&quot;
        ],
        input=text,
        text=True
    )

    subprocess.run([&quot;aplay&quot;, &quot;/tmp/test.wav&quot;])

speak_japanese(&quot;こんにちは&quot;, &quot;happy&quot;)</code></pre></div>



<h4 class="wp-block-heading">エラーが出る場合</h4>



<p>Whisplay HATのテストプログラム実行後の場合などは、音声デバイス（/dev/snd）が解放されず、以下のエラーが出ることがあります。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="591" height="119" src="https://sozorablog.com/wp-content/uploads/2026/04/スクリーンショット-2026-04-17-4.58.17.png" alt="" class="wp-image-16847" style="width:814px;height:auto"/></figure>



<p>この場合は、以下のコマンドで使用中のプロセスを強制終了してデバイスを解放します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>sudo fuser -k /dev/snd/*</code></pre></div>



<h4 class="wp-block-heading">プログラムの解説</h4>



<p>日本語テキストをOpenJTalkで音声に変換し、/tmp/test.wavに保存してから再生する処理です。読み上げる内容はtextに入れた文字で決まり、voiceで声の種類（normal・happyなど）を選べます。speedで話す速さを調整でき、数値が小さいほどゆっくり、大きいほど速くなります。</p>



<p>最後の<code>speak_japanese("こんにちは", "happy")</code>は、「こんにちは」を明るい声で再生する指定です。</p>



<h3 class="wp-block-heading">ニュースを取得してみよう</h3>



<p><a href="https://www.nhk.or.jp/toppage/rss/index.html">NHKのRSS</a>を使い、ニュースの見出しを取得する手順を確認します。RSSはニュースサイトが更新情報を公開している仕組みで、その中に含まれる見出しデータを読み取ることでニュースの見出しを取得できます。</p>



<p>仮想環境を作成</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>python3 -m venv venv --system-site-packages</code></pre></div>



<p>仮想環境を有効化</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>source venv/bin/activate</code></pre></div>



<p>RSSはXML形式なので、解析用ライブラリをインストールします。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>pip install feedparser</code></pre></div>



<p>Thonnyを仮想環境に切り替える</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="800" height="450" src="https://sozorablog.com/wp-content/uploads/2026/04/pico.png" alt="" class="wp-image-16751" style="width:601px;height:auto" srcset="https://sozorablog.com/wp-content/uploads/2026/04/pico.png 800w, https://sozorablog.com/wp-content/uploads/2026/04/pico-320x180.png 320w, https://sozorablog.com/wp-content/uploads/2026/04/pico-224x126.png 224w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>「Python executable」の右側にある「…」ボタンをクリックして、使用するPython（仮想環境のpython）を選択します。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="800" height="672" src="https://sozorablog.com/wp-content/uploads/2026/04/pico-1.png" alt="" class="wp-image-16752" style="aspect-ratio:1.1904925938684119;width:370px;height:auto"/></figure>



<p>ホームをクリック。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="800" height="493" src="https://sozorablog.com/wp-content/uploads/2026/04/pico-2.png" alt="" class="wp-image-16753" style="aspect-ratio:1.6227630345277404;width:487px;height:auto"/></figure>



<p>venvを選択</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="800" height="524" src="https://sozorablog.com/wp-content/uploads/2026/04/pico-3.png" alt="" class="wp-image-16754" style="width:513px;height:auto"/></figure>



<p>binを選択。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="391" height="255" src="https://sozorablog.com/wp-content/uploads/2026/04/スクリーンショット-2026-04-13-20.13.05.png" alt="" class="wp-image-16755"/></figure>



<p>pythonを選択。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="286" height="296" src="https://sozorablog.com/wp-content/uploads/2026/04/スクリーンショット-2026-04-13-20.13.57.png" alt="" class="wp-image-16756"/></figure>



<p>OKをクリック。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="800" height="674" src="https://sozorablog.com/wp-content/uploads/2026/04/pico-4.png" alt="" class="wp-image-16757" style="aspect-ratio:1.1869554393826238;width:304px;height:auto"/></figure>



<p>仮想環境に切り替えたら、Thonnyで以下を実行します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-python" data-lang="Python"><code>import feedparser

url = &quot;https://www.nhk.or.jp/rss/news/cat0.xml&quot;

feed = feedparser.parse(url)

for entry in feed.entries[:5]:
    print(entry.title)</code></pre></div>



<p>このコードは、インターネット上のニュースを取得して表示するプログラムです。まず、NHKが公開しているRSSのURLからニュース情報を読み込みます。URLに含まれる<code>cat0</code>はニュースのカテゴリを表しており、主要ニュース（総合）の見出しを取得できます。この数値を変更すれば、さまざまなジャンルのニュースに切り替え可能です。</p>



<figure class="wp-block-table wp-block-sbd-table wp-block-sbd-table-horizontal"><table class="has-fixed-layout"><tbody><tr><td>cat番号</td><td>ジャンル</td></tr><tr><td>cat0</td><td>主要ニュース</td></tr><tr><td>cat1</td><td>社会</td></tr><tr><td>cat2</td><td>文化・エンタメ</td></tr><tr><td>cat3</td><td>科学・医療</td></tr><tr><td>cat4</td><td>政治</td></tr><tr><td>cat5</td><td>経済</td></tr><tr><td>cat6</td><td>国際</td></tr><tr><td>cat7</td><td>スポーツ</td></tr></tbody></table></figure>



<p><code>eedparser.parse(url)</code>でデータを取得すると、その中にニュースの一覧が含まれます。<code>feed.entries</code>には記事ごとの情報が入っており、<code>[:5]</code>とすることで最初の5件だけを取り出しています。</p>



<h3 class="wp-block-heading">動画とアイコンを準備する</h3>



<p>ニュースの取得方法がわかったら、画面表示の準備をします。ニュースの文字を表示するだけでは味気ないので、アイコンと背景動画で気分を盛り上げることにしました。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="373" src="https://sozorablog.com/wp-content/uploads/2026/04/スクリーンショット-2026-04-14-18.12.21.jpg" alt="" class="wp-image-16771"/><figcaption class="wp-element-caption"><a href="https://pixabay.com/ja/videos/%e3%83%9e%e3%83%88%e3%83%aa%e3%83%83%e3%82%af%e3%82%b9-%e3%83%80%e3%82%a6%e3%83%b3%e3%83%ad%e3%83%bc%e3%83%89-75043/">Pixabay</a></figcaption></figure>



<p>映画マトリックス風の動画は、<a href="https://pixabay.com/ja/videos/%e3%83%9e%e3%83%88%e3%83%aa%e3%83%83%e3%82%af%e3%82%b9-%e3%83%80%e3%82%a6%e3%83%b3%e3%83%ad%e3%83%bc%e3%83%89-75043/">Pixabay</a>で公開されているものをダウンロードして使用します。Pixabayは著作権フリーの画像、動画、音声などを共有するサイトです。サイズは<strong>640×360</strong>のものをダウンロードしました。</p>



<p>スピーカーのアイコン画像は以下からダウンロードできます。私がCanvaで作成したものです。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="90" height="90" src="https://sozorablog.com/wp-content/uploads/2026/04/icon_speaker.png" alt="" class="wp-image-16777"/><figcaption class="wp-element-caption">icon_speaker.png</figcaption></figure>


<div class='w3eden'><!-- WPDM Link Template: Default Template -->

<div class="link-template-default card mb-2">
    <div class="card-body">
        <div class="media">
            <div class="mr-3 img-48"><img decoding="async" class="wpdm_icon" alt="アイコン" src="https://sozorablog.com/wp-content/plugins/download-manager/assets/file-type-icons/png.svg" /></div>
            <div class="media-body">
                <h3 class="package-title"><a href='https://sozorablog.com/download/%e3%82%b9%e3%83%94%e3%83%bc%e3%82%ab%e3%83%bc%e3%82%a2%e3%82%a4%e3%82%b3%e3%83%b3/'>スピーカーアイコン</a></h3>
                <div class="text-muted text-small"><i class="fas fa-copy"></i> 1 ファイル <i class="fas fa-hdd ml-3"></i> 4.69 KB</div>
            </div>
            <div class="ml-3">
                <a class='wpdm-download-link download-on-click btn btn-primary ' rel='nofollow' href='#' data-downloadurl="https://sozorablog.com/download/%e3%82%b9%e3%83%94%e3%83%bc%e3%82%ab%e3%83%bc%e3%82%a2%e3%82%a4%e3%82%b3%e3%83%b3/?wpdmdl=16773&refresh=69e55362aa56b1776636770">ダウンロード</a>
            </div>
        </div>
    </div>
</div>

</div>



<p>動画とアイコンはRaspberry Piの「/home/pi」ディレクトリに保存します。動画のファイル名は<span class="sbd-text-red">matrix.mp4</span>に必ず変更してください。スクリプトから参照できなくなります。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="800" height="614" src="https://sozorablog.com/wp-content/uploads/2026/04/pico-5.png" alt="" class="wp-image-16781" style="width:414px;height:auto"/></figure>



<p>Pythonで画像や映像を扱えるOpenCVライブラリをインストールします。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>sudo apt install -y python3-opencv</code></pre></div>



<h3 class="wp-block-heading">日本語フォントの準備</h3>



<p>LCDにニュースをテキスト表示するために、日本語対応のフォント（Noto）をインストールします。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>sudo apt install -y fonts-noto-cjk</code></pre></div>



<h3 class="wp-block-heading">完成したプログラム</h3>



<p>以下はWhisplay HATを使い、RSSから取得したニュースを音声で読み上げながらテキスト表示するプログラムです。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-python" data-lang="Python"><code>import cv2
import time
import sys
import os
import numpy as np
from PIL import Image, ImageDraw, ImageFont
import subprocess
import feedparser
import unicodedata
import threading

mode = 0
speech_ready = False

sys.path.append(os.path.abspath(&quot;/home/pi/Whisplay/Driver&quot;))
from WhisPlay import WhisPlayBoard

# =========================
# TTS
# =========================
def speak(text, voice=&quot;normal&quot;, speed=0.9):

    voice_path = f&quot;/usr/share/hts-voice/mei/mei_{voice}.htsvoice&quot;

    subprocess.run(
        [
            &quot;open_jtalk&quot;,
            &quot;-x&quot;, &quot;/var/lib/mecab/dic/open-jtalk/naist-jdic&quot;,
            &quot;-m&quot;, voice_path,
            &quot;-r&quot;, str(speed),
            &quot;-ow&quot;, &quot;/tmp/test.wav&quot;
        ],
        input=text,
        text=True
    )

    subprocess.run([&quot;aplay&quot;, &quot;/tmp/test.wav&quot;])
    
# =========================
# Init
# =========================
board = WhisPlayBoard()
board.set_backlight(100)

VIDEO_PATH = &quot;/home/pi/matrix.mp4&quot;

font = ImageFont.truetype(
    &quot;/usr/share/fonts/truetype/noto/NotoSansCJK-Regular.ttc&quot;, 26
)

show_text = False
current_text = &quot;&quot;

# RSS source list (expandable)
RSS_FEEDS = [
    &quot;https://www3.nhk.or.jp/rss/news/cat5.xml&quot;
    #&quot;https://news.yahoo.co.jp/rss/topics/it.xml&quot;
]

def fetch_news():
    headlines = []

    for url in RSS_FEEDS:
        feed = feedparser.parse(url)
        for entry in feed.entries:
            headlines.append(entry.title)

    return headlines

def get_headlines(n=1):
    news = fetch_news()
    return news[:n]

# =========================
# Overlay icon
# =========================
def overlay_icon(frame, icon_path, x, y, size=None):
    base = Image.fromarray(frame).convert(&quot;RGBA&quot;)
    icon = Image.open(icon_path).convert(&quot;RGBA&quot;)

    if size:
        icon = icon.resize(size)

    datas = icon.getdata()
    new_data = []
    for item in datas:
        if item[0] &gt; 240 and item[1] &gt; 240 and item[2] &gt; 240:
            new_data.append((255, 255, 255, 0))
        else:
            new_data.append(item)
    icon.putdata(new_data)

    base.paste(icon, (x, y), icon)
    return np.array(base.convert(&quot;RGB&quot;))


# =========================
# Button handler
# =========================
def on_button():
    global show_text, current_text, mode, speech_ready

    if mode == 0:
        mode = 1
        show_text = False
        speech_ready = False

        headlines = get_headlines(3)

        for text in headlines:
            current_text = text
            print(text)
            
            speech_ready = True
            show_text = True
            speak(text)

    else:
        mode = 0
        show_text = False
        current_text = &quot;&quot;

board.on_button_press(on_button)

# =========================
# Image processing
# =========================
def zoom_center(frame, zoom=1.2):
    h, w, _ = frame.shape
    new_w = int(w / zoom)
    new_h = int(h / zoom)
    x1 = (w - new_w) // 2
    y1 = (h - new_h) // 2
    cropped = frame[y1:y1+new_h, x1:x1+new_w]
    return cv2.resize(cropped, (w, h))

def frame_to_rgb565(frame):
    frame = cv2.cvtColor(frame, cv2.COLOR_BGR2RGB)
    r = (frame[:, :, 0] &gt;&gt; 3).astype(&#39;uint16&#39;)
    g = (frame[:, :, 1] &gt;&gt; 2).astype(&#39;uint16&#39;)
    b = (frame[:, :, 2] &gt;&gt; 3).astype(&#39;uint16&#39;)
    rgb565 = (r &lt;&lt; 11) | (g &lt;&lt; 5) | b
    high = (rgb565 &gt;&gt; 8).astype(&#39;uint8&#39;)
    low = (rgb565 & 0xFF).astype(&#39;uint8&#39;)
    return np.dstack((high, low)).flatten().tolist()

def resize_and_crop(frame):
    h, w, _ = frame.shape
    screen_w = board.LCD_WIDTH
    screen_h = board.LCD_HEIGHT
    aspect = w / h
    screen_aspect = screen_w / screen_h

    if aspect &gt; screen_aspect:
        new_h = screen_h
        new_w = int(new_h * aspect)
        frame = cv2.resize(frame, (new_w, new_h))
        x = (new_w - screen_w) // 2
        frame = frame[:, x:x + screen_w]
    else:
        new_w = screen_w
        new_h = int(new_w / aspect)
        frame = cv2.resize(frame, (new_w, new_h))
        y = (new_h - screen_h) // 2
        frame = frame[y:y + screen_h, :]

    return frame

def split_text(text, max_width=18):
    lines = []
    current = &quot;&quot;
    width = 0

    for ch in text:
        w = 2 if unicodedata.east_asian_width(ch) in &quot;FWA&quot; else 1

        if width + w &gt; max_width:
            lines.append(current)
            current = ch
            width = w
        else:
            current += ch
            width += w

    if current:
        lines.append(current)

    return lines

# =========================
# Draw text
# =========================
def draw_text(frame, text, x, y):
    pil_img = Image.fromarray(frame)
    draw = ImageDraw.Draw(pil_img)

    lines = split_text(text, max_width=18)

    for i, line in enumerate(lines):
        draw.text((x, y + i * 40), line, font=font, fill=(180, 255, 255))

    return np.array(pil_img)

# =========================
# Main loop
# =========================
cap = cv2.VideoCapture(VIDEO_PATH)

if not cap.isOpened():
    print(&quot;Failed to open video&quot;)
    sys.exit()

try:
    while True:
        ret, frame = cap.read()

        if not ret:
            cap.set(cv2.CAP_PROP_POS_FRAMES, 0)
            continue
        frame = cv2.resize(frame, (160, 120))
        frame = resize_and_crop(frame)
        frame = zoom_center(frame, 1.5)

        if show_text and speech_ready:
            frame = overlay_icon(
                frame,
                &quot;/home/pi/icon_speaker.png&quot;,
                75,
                0
            )

            frame = draw_text(frame, current_text, 5, 110)

        rgb565 = frame_to_rgb565(frame)

        board.draw_image(
            0, 0,
            board.LCD_WIDTH,
            board.LCD_HEIGHT,
            rgb565
        )

        time.sleep(0.08)

except KeyboardInterrupt:
    pass

finally:
    cap.release()
    board.cleanup()
</code></pre></div>



<p>ボタンを押すとRSSからニュースを3件取得し、見出しを順番に処理します。取得件数は<code>get_headlines(3)</code>で指定しており、この数値を変更することで取得するニュースの件数を調整できます。取得したテキストはOpen JTalkで音声に変換され、スピーカーから再生されます。表示処理ではOpenCVで動画を再生し、その上にPillowでテキストとアイコンを重ねて描画します。</p>



<p>再度ボタンを押すと表示がリセットされ、ニュースの表示が終了します。その後にもう一度ボタンを押すことで、最新のニュースを再取得できます。つまり、ボタン操作のたびに最新のニュースを取得できる仕様にしました。</p>



<h2 class="wp-block-heading">ローカル環境でチャットボットを動かす</h2>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="750" height="922" src="https://sozorablog.com/wp-content/uploads/2026/04/IMG_0747.jpeg" alt="" class="wp-image-16813" style="aspect-ratio:0.8134532655455612;width:377px;height:auto"/></figure>



<p>Raspberry Pi上で音声入力からAIの応答生成、音声出力までを一通り動かすことで、ローカル環境だけで会話できるチャットボットを構築してみました。マイクで入力した音声をテキストに変換し、LLMで応答を生成し、その結果を音声として再生する仕組みです。</p>



<p>今回の構成ではRaspberry Pi 5と<a href="https://sozorablog.com/ai-hat-2/">AI HAT＋2</a>を使用しています。処理性能の関係からRaspberry Pi Zero 2での動作は現実的ではありません。</p>



<figure class="wp-block-embed is-type-rich is-provider-twitter wp-block-embed-twitter"><div class="wp-block-embed__wrapper">
<blockquote class="twitter-tweet" data-width="500" data-dnt="true"><p lang="ja" dir="ltr">Raspberry Pi AI HAT+ 2で、音声対話型チャットボットを作ってみました。<br><br>すべてローカルで動いています。精度が課題ではあるけど、音声認識→文章生成→音声合成がこの速さ動くのは驚きです。 <a href="https://t.co/tgGoQ6Yhv2">pic.twitter.com/tgGoQ6Yhv2</a></p>&mdash; そぞら@Raspberry Pi 電子工作 (@sozoraemon) <a href="https://twitter.com/sozoraemon/status/2041460961673097486?ref_src=twsrc%5Etfw">April 7, 2026</a></blockquote><script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>
</div></figure>



<p>認識精度や返答内容はまだ高いとは言えず、意図しない変換や不自然な応答になることもありますが、ローカル環境でここまでの処理が実現できる点は大きな魅力です。今後のモデルや音声認識技術の進化によって、より自然な会話ができるようになることが期待されます。</p>



<div class="wp-block-sbd-background-block sbd-bg-color sbd-inner-block-init is-style-yellow">
<p>実際の構築手順や設定方法については、以下の記事の後半部分で詳しく解説しています。<br><a href="https://sozorablog.com/ai-hat-2/#toc19"><strong>»【生成AIに特化】Raspberry Pi AI HAT+ 2レビュー</strong></a></p>
</div>



<h2 class="wp-block-heading">音声インターフェースが変えるラズパイ活用</h2>



<figure class="wp-block-image size-full is-resized"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/04/IMG_0623.jpeg" alt="" style="width:377px;height:auto"/></figure>



<p>以前から音声で操作・応答できるデバイス制作に興味があったものの、なかなかコンパクトなスピーカーが見つからずに二の足を踏んでいました。Whisplay HATはLCD、ボタンまで一体化されており、この1枚で表示と音声の両方を手軽に扱える点が大きな魅力です。</p>



<p>ニュースの取得と音声読み上げを組み合わせることで、実用的なガジェットも無理なく作れました。</p>



<p>今後はエッジAIの進化により、音声インターフェースを活用する場面はさらに増えていくことが予想されます。これまでクラウドに依存していた処理も、ローカルで完結できるケースが増えてきました。Raspberry Piの可能性を広げる一歩として、ぜひ体験してみてはいかがでしょうか。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://sozorablog.com/whisplay-hat/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>【生成AIに特化】Raspberry Pi AI HAT+ 2レビュー</title>
		<link>https://sozorablog.com/ai-hat-2/</link>
					<comments>https://sozorablog.com/ai-hat-2/#comments</comments>
		
		<dc:creator><![CDATA[そぞら]]></dc:creator>
		<pubDate>Thu, 15 Jan 2026 09:00:40 +0000</pubDate>
				<category><![CDATA[Raspberry Pi]]></category>
		<category><![CDATA[関連製品]]></category>
		<guid isPermaLink="false">https://sozorablog.com/?p=16076</guid>

					<description><![CDATA[Raspberry Piで生成AIを動かす。これまで何度か試しましたが、短い文章であれば数秒で生成できても、長文になると待ち時間が気になることも。ラズパイで動くこと自体は興味深いものの、実用面では一歩足りない印象がありま [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p><a href="https://sozorablog.com/raspberry-pi/">Raspberry Pi</a>で生成AIを動かす。これまで何度か試しましたが、短い文章であれば数秒で生成できても、長文になると待ち時間が気になることも。ラズパイで動くこと自体は興味深いものの、実用面では一歩足りない印象がありました。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="3019" height="2220" src="https://sozorablog.com/wp-content/uploads/2026/01/IMG_0251.jpg" alt="" class="wp-image-16469"/></figure>



<p>そんな中で登場したのが、<a href="https://sozorablog.com/pi5/">Raspberry Pi 5</a>に取り付けて使う<a href="https://www.raspberrypi.com/products/ai-hat-plus-2/">Raspberry Pi AI HAT+ 2</a>です。従来の<a href="https://www.switch-science.com/products/9998?srsltid=AfmBOoqP4Mexlcwv7c7tslBvIu9QIIhGU8HMUvFcI_mVVQ-zrUqGT8rz">AI HAT+</a>が画像認識などの推論AIを得意としてきたのに対し、本製品はLLM（大規模言語モデル）やVLM（視覚言語モデル）といった<span class="sbd-text-red">生成AIの実行を主目的に設計</span>されています。</p>



<figure class="wp-block-video"><video controls src="https://sozorablog.com/wp-content/uploads/2026/01/画面収録-2026-01-15-10.23.27.mov"></video><figcaption class="wp-element-caption">高速な文章生成が可能</figcaption></figure>



<p>今回、<a href="https://www.raspberrypi.com/">Raspberry Pi Ltd</a>さまより製品の提供をいただき、実機を試用する機会を賜りました。本記事では実際に触ってみて分かった処理時間の感覚や使い勝手を中心に、AI HAT+ 2の可能性に迫ります。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="327" src="https://sozorablog.com/wp-content/uploads/2026/01/スクリーンショット-2026-03-24-6.25.42.jpg" alt="" class="wp-image-16531"/><figcaption class="wp-element-caption">バナナの熟し具合を推測</figcaption></figure>



<h2 class="wp-block-heading">AI HAT+ 2 は Raspberry Pi 5 専用の拡張ボード</h2>



<figure class="wp-block-image size-full"><img decoding="async" width="775" height="612" src="https://sozorablog.com/wp-content/uploads/2026/01/AI_HAT2.jpg" alt="" class="wp-image-16462"/></figure>



<p>近年、クラウドに頼らずデバイス単体でAI処理を行うエッジAIが注目されています。通信遅延やプライバシーの問題を避けられる点から、Raspberry PiにはAI処理を担うプラットフォームとしての期待が高まっています。AI HAT+ 2 は、その流れの中で登場した拡張ボードです。</p>



<div class="wp-block-sbd-balloon sbd-balloon sbd-balloon--id-4 sbd-balloon--flat sbd-balloon--l sbd-balloon--green block-box"><div class="sbd-balloon__profile"><figure class="sbd-balloon__icon"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2021/09/アイコン.jpg" alt="そぞら" class="sbd-balloon__img"/></figure><div class="sbd-balloon__name">そぞら</div></div><div class="sbd-balloon__text-box sbd-inner-block-init">
<p><a href="https://hailo.ai/lp/the-worlds-best-performing-ai-processor-for-edge-devices/?utm_term=hailo&amp;utm_campaign=brand_phrase_ww&amp;utm_source=adwords&amp;utm_medium=ppc&amp;hsa_acc=6640877786&amp;hsa_cam=20270381401&amp;hsa_grp=149790458563&amp;hsa_ad=753850024499&amp;hsa_src=g&amp;hsa_tgt=kwd-104989908&amp;hsa_kw=hailo&amp;hsa_mt=e&amp;hsa_net=adwords&amp;hsa_ver=3&amp;gad_source=1&amp;gad_campaignid=20270381401&amp;gbraid=0AAAAACSXbO0q0844SBlHbe06ZdeIRQmYk&amp;gclid=EAIaIQobChMIzM6qxf-PkgMVjxp7Bx0yeyxyEAAYASAAEgLo_fD_BwE">Hailo</a>は、エッジデバイス向けに高性能かつ低消費電力のAIアクセラレータを開発している半導体メーカーです。</p>
</div></div>



<h3 class="wp-block-heading">従来の AI HAT+ との違い</h3>



<figure class="wp-block-table wp-block-sbd-table wp-block-sbd-table-vertical"><table class="has-fixed-layout"><thead><tr><th>項目</th><th>AI HAT+<br><img decoding="async" width="100" height="87" class="wp-image-16244" style="width: 100px;" src="https://sozorablog.com/wp-content/uploads/2026/01/AI_HAT.png" alt=""></th><th><span class="sbd-text-red">AI HAT+ 2</span><br><img decoding="async" width="97" height="97" class="wp-image-16260" style="width: 97px;" src="https://sozorablog.com/wp-content/uploads/2026/01/ChatGPT-Image-2026年1月11日-09_26_24.png" alt=""></th></tr></thead><tbody><tr><td>搭載チップ</td><td>Hailo-8 / Hailo-8L</td><td>Hailo-10H</td></tr><tr><td>処理性能</td><td>13 TOPS / 26 TOPS</td><td><span class="sbd-table-bg-circle">40 TOPS</span></td></tr><tr><td>対応機種</td><td>Raspberry Pi 5</td><td>Raspberry Pi 5</td></tr><tr><td>専用オンボードRAM</td><td>なし</td><td><span class="sbd-table-bg-circle">8GB 搭載</span></td></tr><tr><td>価格</td><td>13 TOPS：$70<br>26 TOPS：$110</td><td>$130</td></tr><tr><td>販売ページ</td><td><span class="sbd-table-btn"><a href="https://www.switch-science.com/products/9998?srsltid=AfmBOoqP4Mexlcwv7c7tslBvIu9QIIhGU8HMUvFcI_mVVQ-zrUqGT8rz" target="_blank" rel="noreferrer noopener">詳細を見る</a></span></td><td><span class="sbd-table-btn"><a href="https://www.switch-science.com/collections/ai/products/10916?srsltid=AfmBOoqwd2BeEPvRZmxKclvQw9atHfz2acsnye0up28y2ySwzpnDt1fi">詳細を見る</a></span></td></tr></tbody></table></figure>



<p>AI HAT+ 2は<a href="https://sozorablog.com/pi5/">Raspberry Pi 5</a>の上部に取り付け、PCIe（PCI Express）で接続して高速にデータ通信を行う拡張ボードです。</p>



<p>AI HAT+ 2は、従来モデルの単なる上位版ではありません。推論AIを高速に処理するための製品から、<span class="sbd-text-red">生成AIを扱うための製品へと役割が分かれた</span>と考えるのが適切です。</p>



<p>従来のAI HAT+ が推論処理でRaspberry Pi本体のメモリを使用するのに対して、AI HAT+ 2は<span class="sbd-text-bg-yellow">8GBの専用オンボードRAMを搭載</span>しており、AI処理用のメモリが独立しています。そのため、メモリ競合が起きにくく、AI処理そのものが安定して高速に動作します。</p>



<h3 class="wp-block-heading">Hailo-10H を搭載した AI アクセラレーター</h3>



<figure class="wp-block-image size-full"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/01/IMG_0244.jpg" alt="" class="wp-image-4"/></figure>



<p>従来の AI HAT+ が採用していた Hailo-8 / 8L は、画像認識などの推論AIを主用途としていました。一方、AI HAT+ 2 の<a href="https://hailo.ai/ja/products/ai-accelerators/hailo-10h-ai-accelerator/#hailo-10-overview">Hailo-10H</a> は、<span class="sbd-text-bg-yellow">より大規模で複雑なAI処理を扱うことを前提に設計されたチップ</span>です。AI HAT+ 2 は、このチップの特性を生かすための構成になっています。</p>



<h2 class="wp-block-heading">AI HAT+ 2の取り付け</h2>



<figure class="wp-block-image size-full is-resized"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/01/IMG_0237.jpg" alt="" class="wp-image-4" style="aspect-ratio:1.3778706171826942;width:584px;height:auto"/><figcaption class="wp-element-caption">カメラとActive Coolerを取り付け</figcaption></figure>



<p>今回、Raspberry Pi本体は<a href="https://www.switch-science.com/products/9250">Raspberry Pi 5</a>を使用しました。</p>



<!-- START MoshimoAffiliateEasyLink -->
<script type="text/javascript">
(function(b,c,f,g,a,d,e){b.MoshimoAffiliateObject=a;
b[a]=b[a]||function(){arguments.currentScript=c.currentScript
||c.scripts[c.scripts.length-2];(b[a].q=b[a].q||[]).push(arguments)};
c.getElementById(a)||(d=c.createElement(f),d.src=g,
d.id=a,e=c.getElementsByTagName("body")[0],e.appendChild(d))})
(window,document,"script","//dn.msmstatic.com/site/cardlink/bundle.js?20220329","msmaflink");
msmaflink({"n":"Raspberrypi5 8G ラズベリーパイ5 技適取得済マーク入り商品","b":"Raspberry Pi","t":"","d":"https:\/\/m.media-amazon.com","c_p":"\/images\/I","p":["\/31ulVhoF7LL._SL500_.jpg","\/31Paz5taW5L._SL500_.jpg","\/31wPYoxjgCL._SL500_.jpg","\/31ArwA0xXgL._SL500_.jpg","\/31wPYoxjgCL._SL500_.jpg","\/314jAZZTefL._SL500_.jpg"],"u":{"u":"https:\/\/www.amazon.co.jp\/dp\/B0CQZHN2K4","t":"amazon","r_v":""},"v":"2.1","b_l":[{"id":1,"u_tx":"Amazonで見る","u_bc":"#f79256","u_url":"https:\/\/www.amazon.co.jp\/dp\/B0CQZHN2K4","a_id":3038653,"p_id":170,"pl_id":27060,"pc_id":185,"s_n":"amazon","u_so":1}],"eid":"6dQw8","s":"s"});
</script>
<div id="msmaflink-6dQw8">リンク</div>
<!-- MoshimoAffiliateEasyLink END -->



<p>カメラを使用する場合はこの段階で取り付けておきます。僕は<a href="https://raspberry-pi.ksyic.com/main/index/pdp.id/908/pdp.open/908">Raspberry Pi Camera Module 3</a>を使用しました。<a href="https://www.switch-science.com/products/9253?pr_prod_strat=jac&amp;pr_rec_id=600fa0a5e&amp;pr_rec_pid=7821219463366&amp;pr_ref_pid=8373989703878&amp;pr_seq=uniform">Raspberry Pi Active Cooler</a>（別売り）を装着します。AI HAT+ 2は十分な性能を発揮するため、Active Coolerと一緒に使うことが推奨されています。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/01/IMG_0238.jpg" alt="" class="wp-image-4" style="aspect-ratio:1.3895523159636063;width:549px;height:auto"/><figcaption class="wp-element-caption">スペーサーとGPIOピン延長用ヘッダの取付</figcaption></figure>



<p>付属のネジでスペーサーを取り付け、GPIOピン延長用ヘッダをRaspberry PiのGPIOピンに差し込みます。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/01/IMG_0239.jpg" alt="" class="wp-image-4" style="aspect-ratio:1.3840074144633525;width:544px;height:auto"/><figcaption class="wp-element-caption">ヒートシンクの取り付け</figcaption></figure>



<p>AI HAT+ 2本体にチップを冷却するためのヒートシンクを取り付けます。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/01/IMG_0240.jpg" alt="" class="wp-image-4" style="aspect-ratio:0.8579613463349239;width:480px;height:auto"/></figure>



<p>フラットケーブルをRaspberry Pi側のPCIeポートに入れつつ、GPIOピン延長用ヘッダに差し込みます。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/01/IMG_0241.jpg" alt="" class="wp-image-4" style="aspect-ratio:1.2794421182992275;width:487px;height:auto"/></figure>



<p>スペーサー部分をネジで固定したら取付完了です。</p>



<h3 class="wp-block-heading">GPIOピンを使用する場合</h3>



<p>キットに付属しているスペーサーを使うと、GPIOピンが隠れてしまい、電子パーツをピンに接続できなくなります。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="3019" height="2373" src="https://sozorablog.com/wp-content/uploads/2026/01/IMG_0254.jpg" alt="" class="wp-image-16475"/></figure>



<p>そこで、別売りのM2.5×11mmのスペーサーに交換することで、GPIOピンの先端を外に出せます。</p>



<!-- START MoshimoAffiliateEasyLink -->
<script type="text/javascript">
(function(b,c,f,g,a,d,e){b.MoshimoAffiliateObject=a;
b[a]=b[a]||function(){arguments.currentScript=c.currentScript
||c.scripts[c.scripts.length-2];(b[a].q=b[a].q||[]).push(arguments)};
c.getElementById(a)||(d=c.createElement(f),d.src=g,
d.id=a,e=c.getElementsByTagName("body")[0],e.appendChild(d))})
(window,document,"script","//dn.msmstatic.com/site/cardlink/bundle.js?20220329","msmaflink");
msmaflink({"n":"Entaniya 六角スペーサー M2.5 長さ11mm (メス-メス) 真鍮 10本入り 【HBF25046-11】","b":"Entaniya","t":"XBF25046","d":"https:\/\/m.media-amazon.com","c_p":"\/images\/I","p":["\/41LMofwfEKL._SL500_.jpg","\/318w89qjVeL._SL500_.jpg","\/41Asi16eWHL._SL500_.jpg","\/41J9-E1mf2L._SL500_.jpg","\/51JeQcvKd2L._SL500_.jpg"],"u":{"u":"https:\/\/www.amazon.co.jp\/dp\/B0D7HPP8ZM","t":"amazon","r_v":""},"v":"2.1","b_l":[{"id":1,"u_tx":"Amazonで見る","u_bc":"#f79256","u_url":"https:\/\/www.amazon.co.jp\/dp\/B0D7HPP8ZM","a_id":3038653,"p_id":170,"pl_id":27060,"pc_id":185,"s_n":"amazon","u_so":1},{"id":2,"u_tx":"楽天市場で見る","u_bc":"#f76956","u_url":"https:\/\/search.rakuten.co.jp\/search\/mall\/Entaniya%20%E5%85%AD%E8%A7%92%E3%82%B9%E3%83%9A%E3%83%BC%E3%82%B5%E3%83%BC%20M2.5%20%E9%95%B7%E3%81%9511mm%20(%E3%83%A1%E3%82%B9-%E3%83%A1%E3%82%B9)%20%E7%9C%9F%E9%8D%AE%2010%E6%9C%AC%E5%85%A5%E3%82%8A%20%E3%80%90HBF25046-11%E3%80%91\/","a_id":3038654,"p_id":54,"pl_id":27059,"pc_id":54,"s_n":"rakuten","u_so":2}],"eid":"pJ0du","s":"s"});
</script>
<div id="msmaflink-pJ0du">リンク</div>
<!-- MoshimoAffiliateEasyLink END -->



<p>ただし、この方法ではRaspberry PiとAI HAT+ 2の間隔が狭くなり、Active Coolerが基板に接触するおそれがあります。そのため、<span class="sbd-text-red">Active Coolerは取り外して使用する</span>方が無難です。</p>



<h2 class="wp-block-heading">セットアップ手順</h2>



<figure class="wp-block-image size-full is-resized"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/01/IMG_0245.jpg" alt="" class="wp-image-4" style="aspect-ratio:1.5505465662945979;width:685px;height:auto"/><figcaption class="wp-element-caption">microSDカードは64GB以上を推奨します</figcaption></figure>



<p>AI HAT+ 2を使う場合、32GBのmicroSDカードでは途中で容量が足りなくなりました。ファイルサイズの大きいモデルを複数ダウンロードしていくため、余裕を持って使うなら<span class="sbd-text-bg-yellow">64GB以上のmicroSDカード</span>をおすすめします。<br></p>



<figure class="wp-block-image size-full"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/01/スクリーンショット-2026-01-11-7.04.15.png" alt="" class="wp-image-4"/><figcaption class="wp-element-caption">Raspberry Pi OS(64-bit)を使用</figcaption></figure>



<p>Raspberry Pi OS Trixie を<span class="sbd-text-bg-yellow">新しくインストールした状態</span>から作業を進めます。別の用途で使っていた環境では、過去の設定などが影響し、AI HAT+ 2 がうまく動作しないことがあるようです。</p>



<p>準備ができたら、Hailo関連のソフトをインストールするための設定を行います。</p>



<figure class="wp-block-image size-full"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/01/pico-1-6.jpg" alt="" class="wp-image-4"/></figure>



<p>以下のコマンドは途中で分けず、<span class="sbd-text-bg-yellow">最初から最後までの行を一度に実行</span>します。aptが参照するソフト配布先の一覧にHailo用のパッケージ配布先が追加されます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>sudo tee /etc/apt/sources.list.d/hailo.sources &lt;&lt;EOF
Types: deb
URIs: https://hailo:chahy5Zo@extranet.raspberrypi.org/hailo
Suites: trixie
Components: main
Signed-By: /usr/share/keyrings/raspberrypi-archive-keyring.pgp
EOF
</code></pre></div>



<p>ここで使っているEOFは、「ここまでを書き込む」という区切りを示す目印です。 &lt;&lt;EOF から始まり、最後に書かれた EOFまでの内容が保存されます。</p>



<p>次に、Raspberry Piに登録した内容を反映し、システムを最新の状態に更新します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>sudo apt update</code></pre></div>



<div class="wp-block-sbd-balloon sbd-balloon sbd-balloon--id-4 sbd-balloon--flat sbd-balloon--l sbd-balloon--green block-box"><div class="sbd-balloon__profile"><figure class="sbd-balloon__icon"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2021/09/アイコン.jpg" alt="そぞら" class="sbd-balloon__img"/></figure><div class="sbd-balloon__name">そぞら</div></div><div class="sbd-balloon__text-box sbd-inner-block-init">
<p>Raspberry Pi では<span class="sbd-text-red">apt</span>という管理システムを使ってソフトを管理しています。</p>
</div></div>



<p>必要な更新をまとめて適用します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>sudo apt full-upgrade -y</code></pre></div>



<p>Raspberry Piを再起動し、更新内容を反映させます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>sudo reboot</code></pre></div>



<h3 class="wp-block-heading">Dockerのインストール</h3>



<p>ブラウザから生成AIを操作するためのWebUI（Webベースの操作画面）を使うには、Dockerのインストールが必須です。WebUIの土台となる Dockerを、Hailoを入れる前に準備しておきます。</p>



<div class="wp-block-sbd-balloon sbd-balloon sbd-balloon--id-4 sbd-balloon--flat sbd-balloon--l sbd-balloon--green block-box"><div class="sbd-balloon__profile"><figure class="sbd-balloon__icon"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2021/09/アイコン.jpg" alt="そぞら" class="sbd-balloon__img"/></figure><div class="sbd-balloon__name">そぞら</div></div><div class="sbd-balloon__text-box sbd-inner-block-init">
<p>Dockerは必要なソフトや設定をまとめて用意し、Raspberry Pi OSの違いに影響されずにプログラムを実行するための仕組みです。</p>
</div></div>



<div class="wp-block-sbd-checkpoint-block"><p class="sbd-checkpoint-title">チェックポイント</p><div class="sbd-checkpoint-content sbd-inner-block-init"><p>Raspberry Pi OS TrixieではPython 3.13 が使われていますが、WebUIはこのバージョンに対応していません。そのため、Python環境に依存しないDockerを使ってWebUIを動かします。</p></div></div>



<p>まず、環境の競合を防ぐため、すでに入っている Docker 関連パッケージを削除します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>sudo apt remove $(dpkg --get-selections docker.io docker-compose docker-doc podman-docker containerd runc | cut -f1)</code></pre></div>



<p>Dockerを正しくインストールするため、公式リポジトリを追加します。HTTPS通信に必要な証明書と、データ取得用のツール（curl）をインストールします。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>sudo apt install ca-certificates curl</code></pre></div>



<p>リポジトリの署名キーを保存するためのディレクトリを作成します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>sudo install -m 0755 -d /etc/apt/keyrings</code></pre></div>



<p>Dockerの公式署名キーをダウンロードして保存します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>sudo curl -fsSL https://download.docker.com/linux/debian/gpg -o /etc/apt/keyrings/docker.asc</code></pre></div>



<p>保存した署名キーをシステムから読み取れるように設定します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>sudo chmod a+r /etc/apt/keyrings/docker.asc</code></pre></div>



<p>Docker の配布先を <code>apt</code> に登録します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>sudo tee /etc/apt/sources.list.d/docker.sources &lt;&lt;EOF
Types: deb
URIs: https://download.docker.com/linux/debian
Suites: $(. /etc/os-release && echo &quot;$VERSION_CODENAME&quot;)
Components: stable
Signed-By: /etc/apt/keyrings/docker.asc
EOF</code></pre></div>



<p>パッケージ一覧を更新します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>sudo apt update</code></pre></div>



<p>Docker 本体と関連ツールをインストールします。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin</code></pre></div>



<p>Docker を起動します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>sudo systemctl start docker</code></pre></div>



<p>Docker が正しく動作するかを確認します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>sudo docker run hello-world</code></pre></div>



<p>「Hello from Docker!」を含むメッセージが表示されれば、Dockerのセットアップは完了です。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="634" height="345" src="https://sozorablog.com/wp-content/uploads/2026/01/スクリーンショット-2026-01-16-10.45.10.png" alt="" class="wp-image-16433"/></figure>



<h3 class="wp-block-heading">Hailo-10Hドライバとランタイムの導入</h3>



<p>Hailo-10HをOSから利用できるようにします。ドライバを自動で再構築する仕組み（DKMS）を導入します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>sudo apt install dkms</code></pre></div>



<p>Hailo-10H を使用するためのドライバとランタイム一式をインストールします。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>sudo apt install -y hailo-h10-all</code></pre></div>



<div class="wp-block-sbd-balloon sbd-balloon sbd-balloon--id-4 sbd-balloon--flat sbd-balloon--l sbd-balloon--green block-box"><div class="sbd-balloon__profile"><figure class="sbd-balloon__icon"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2021/09/アイコン.jpg" alt="そぞら" class="sbd-balloon__img"/></figure><div class="sbd-balloon__name">そぞら</div></div><div class="sbd-balloon__text-box sbd-inner-block-init">
<p>この処理は7分かかりました。</p>
</div></div>



<p>再起動します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>sudo reboot</code></pre></div>



<h3 class="wp-block-heading">Hailo Gen-AI Model Zooのインストール</h3>



<p>Hailoが提供する<strong>Gen-AI Model Zoo</strong>を導入します。Gen-AI Model ZooはCLIやREST APIから利用できる、事前学習済みの生成AIモデルを集めたライブラリです。</p>



<p>この手順は<span class="sbd-text-red">内容が更新される可能性がある</span>ため、<a href="https://github.com/hailo-ai/hailo_model_zoo_genai">公式の手順</a>に従ってインストールします。2026年1月11日時点では以下のコマンドを1行づつ実行してインストールしました。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>sudo apt install -y libssl-dev
git clone https://github.com/hailo-ai/hailo_model_zoo_genai.git
cd /home/pi/hailo_model_zoo_genai
mkdir build && cd build
cmake -DCMAKE_BUILD_TYPE=Release ..
cmake --build .
mkdir -p ~/.local/bin
cp ./src/apps/server/hailo-ollama ~/.local/bin/
mkdir -p ~/.config/hailo-ollama/
cp ../config/hailo-ollama.json ~/.config/hailo-ollama/
mkdir -p ~/.local/share/hailo-ollama
cp -r ../models/ ~/.local/share/hailo-ollama
echo &#39;export PATH=&quot;$HOME/.local/bin:$PATH&quot;&#39; &gt;&gt; ~/.bashrc
source ~/.bashrc</code></pre></div>



<h3 class="wp-block-heading">hailo-ollamaサーバーの起動</h3>



<p>LLMのリクエストを受け付けるサーバーを起動します。hailo-ollamaは、Hailo-10H上でLLMやVLMを動かすためのサーバープログラムです。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>hailo-ollama</code></pre></div>



<div class="wp-block-sbd-checkpoint-block"><p class="sbd-checkpoint-title">チェックポイント</p><div class="sbd-checkpoint-content sbd-inner-block-init"><p>私の場合、ここで<code>hailo-ollama</code>を実行した際にコマンドが見つからないと表示されました。<code>hailo-ollama</code> 本体を <code>~/.local/bin</code> に配置していましたが、そのパスが反映されていなかったため、コマンドとして認識されなかったためです。</p><p>解決方法として、「echo &#8216;export PATH=&#8221;$HOME/.local/bin:$PATH&#8221;&#8216; &gt;&gt; ~/.bashrc」を実行して、 PATH を追加したあと、「source ~/.bashrc」を実行して設定を読み込み直すことで、<code>hailo-ollama</code> を実行できるようになりました。</p></div></div>



<figure class="wp-block-image size-full"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/01/スクリーンショット-2026-01-11-13.22.32.png" alt="" class="wp-image-4"/></figure>



<p><span class="sbd-text-red">新しいターミナルを開き</span>、次を実行します。使用可能な LLMモデルの一覧が表示されます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>curl --silent http://localhost:8000/hailo/v1/list</code></pre></div>



<p>上記で表示された使用可能なモデルを以下にまとめました。</p>



<figure class="wp-block-table wp-block-sbd-table wp-block-sbd-table-horizontal"><table class="has-fixed-layout"><tbody><tr><td>モデル名</td><td>特徴</td><td>用途</td><td>開発元</td></tr><tr><td>DeepSeek-R1:1.5B</td><td>大規模モデルの思考パターンを小型に凝縮したモデル</td><td>推論・汎用生成</td><td>DeepSeek</td></tr><tr><td>Llama3.2:1b</td><td>シンプルで軽量、基本的な文章生成向け</td><td>一般生成・会話</td><td>Meta</td></tr><tr><td>qwen2.5-coder:1.5b</td><td>コード生成や解析に強い専門モデル</td><td>コード生成</td><td>Alibaba Cloud</td></tr><tr><td>qwen2.5:1.5b</td><td>Qwen2.5の基本版、小〜中規模の生成タスク向け</td><td>汎用言語生成・会話</td><td>Alibaba Cloud</td></tr><tr><td><span class="sbd-text-red">qwen2:1.5b</span></td><td><span class="sbd-table-bg-circle">Qwenシリーズの前世代で、バランスの取れた生成能力</span></td><td>一般生成・会話</td><td>Alibaba Cloud</td></tr></tbody></table></figure>



<p>私が実際に使ってみたところ、<span class="sbd-text-red">qwen2:1.5b</span>モデルが<span class="sbd-text-bg-yellow">日本語のやり取りにおいて</span>最も安定しており、回答精度が高いと感じました<strong>。</strong>他のモデルでは、日本語で質問しても英語で返ってきたり、不自然な日本語になったりすることが多いです。</p>



<h2 class="wp-block-heading">LLMを動かしてみる</h2>



<p>Qwen2 1.5Bモデルをダウンロードします。モデル名は先ほど表示された一覧にあるものへ変更できます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>curl --silent http://localhost:8000/api/pull \
     -H &#39;Content-Type: application/json&#39; \
     -d &#39;{ &quot;model&quot;: &quot;qwen2:1.5b&quot;, &quot;stream&quot; : true }&#39;</code></pre></div>



<div class="wp-block-sbd-balloon sbd-balloon sbd-balloon--id-4 sbd-balloon--flat sbd-balloon--l sbd-balloon--green block-box"><div class="sbd-balloon__profile"><figure class="sbd-balloon__icon"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2021/09/アイコン.jpg" alt="そぞら" class="sbd-balloon__img"/></figure><div class="sbd-balloon__name">そぞら</div></div><div class="sbd-balloon__text-box sbd-inner-block-init">
<p>ダウンロードは10分程度かかります。</p>
</div></div>



<p>以下のコマンドを実行すると、LLMに直接質問できます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>curl --silent http://localhost:8000/api/chat \
     -H &#39;Content-Type: application/json&#39; \
     -d &#39;{&quot;model&quot;: &quot;qwen2:1.5b&quot;, &quot;messages&quot;: [{&quot;role&quot;: &quot;user&quot;, &quot;content&quot;: &quot;Translate to French: The cat is on the table.&quot;}]}&#39;</code></pre></div>



<p>エラーが出ずに結果が返ってくれば、LLMの実行は成功です。</p>



<h3 class="wp-block-heading">WebUI（ChatGPT風UI）で動かす</h3>



<p>WebUIのDockerイメージを取得します。以下のコマンドでChatGPTのような画面を表示するためのプログラム一式をインターネットから取得します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>sudo docker pull ghcr.io/open-webui/open-webui:main</code></pre></div>



<div class="wp-block-sbd-balloon sbd-balloon sbd-balloon--id-4 sbd-balloon--flat sbd-balloon--l sbd-balloon--green block-box"><div class="sbd-balloon__profile"><figure class="sbd-balloon__icon"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2021/09/アイコン.jpg" alt="そぞら" class="sbd-balloon__img"/></figure><div class="sbd-balloon__name">そぞら</div></div><div class="sbd-balloon__text-box sbd-inner-block-init">
<p>このダウンロードも10分以上かかります。</p>
</div></div>



<p>WebUIコンテナを起動します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>sudo docker run -d \
  -e OLLAMA_BASE_URL=http://127.0.0.1:8000 \
  -v open-webui:/app/backend/data \
  --name open-webui \
  --network=host \
  --restart always \
  ghcr.io/open-webui/open-webui:main</code></pre></div>



<div class="wp-block-sbd-checkpoint-block"><p class="sbd-checkpoint-title">チェックポイント</p><div class="sbd-checkpoint-content sbd-inner-block-init"><p>このコマンドを実行する前に、別のターミナルでhailo-ollamaが起動していることを確認してください。</p></div></div>



<p>初回起動は数分かかります。次のコマンドで起動状況を確認できます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>sudo docker logs open-webui -f</code></pre></div>



<p>起動完了したら、Raspberry Piのブラウザで次のURLを開きます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>http://127.0.0.1:8080</code></pre></div>



<figure class="wp-block-image size-full"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/01/スクリーンショット-2026-01-13-12.35.40.png" alt="" class="wp-image-4"/></figure>



<p>ChatGPTのような画面が表示されます<strong>。</strong></p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/01/スクリーンショット-2026-01-11-14.45.18.png" alt="" class="wp-image-4" style="width:607px;height:auto"/></figure>



<p>「はじめる」をクリックします。</p>



<figure class="wp-block-image size-full"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/01/スクリーンショット-2026-01-11-14.49.05.png" alt="" class="wp-image-4"/></figure>



<p>WebUIの初回起動時には、ローカルで使用するユーザー情報の登録が必要です。これは外部サービスへのサインインではなく、Raspberry Pi上でWebUIを管理するための設定です。</p>



<div class="wp-block-sbd-balloon sbd-balloon sbd-balloon--id-4 sbd-balloon--flat sbd-balloon--l sbd-balloon--green block-box"><div class="sbd-balloon__profile"><figure class="sbd-balloon__icon"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2021/09/アイコン.jpg" alt="そぞら" class="sbd-balloon__img"/></figure><div class="sbd-balloon__name">そぞら</div></div><div class="sbd-balloon__text-box sbd-inner-block-init">
<p>登録した情報は<span class="sbd-text-red">Raspberry Pi本体内に保存</span>され、以後はそのユーザーでログインします。</p>
</div></div>



<p>ログインすると、ChatGPTで馴染みのある画面が登場しました。</p>



<figure class="wp-block-image size-full"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/01/スクリーンショット-2026-01-11-14.56.20.png" alt=""/></figure>



<p>「あなたは誰ですか」の質問に回答してくれました。回答完了までの時間は7秒でした。</p>



<figure class="wp-block-image size-full"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/01/スクリーンショット-2026-01-11-15.03.49.png" alt=""/></figure>



<p>ブログに掲載するスクリーンショットでは、明るい画面のままだと文字やUIが見にくいため、ダークモードに切り替えました。</p>



<p>「Qwen2 1.5B」以外のモデルを使用したい場合は、以下の手順でダウンロードします。</p>



<div class="wp-block-sbd-checkpoint-block"><p class="sbd-checkpoint-title">qwen2.5:1.5bをWebUIで使えるようにする手順</p><div class="sbd-checkpoint-content sbd-inner-block-init"><p>①ターミナルを開き、<code>hailo-ollama</code>を実行。</p><p>②別のターミナルで、次を実行。<br><code>curl --silent http://localhost:8000/api/pull -H 'Content-Type: application/json' -d '{ "model": "qwen2.5:1.5b", "stream": true }'</code></p><p>③<code>sudo docker start open-webui</code>を実行</p><p>④ブラウザで<code>http://127.0.0.1:8080</code>にアクセスし、モデル一覧からqwen2.5:1.5bを選択</p></div></div>



<figure class="wp-block-image size-full"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/01/スクリーンショット-2026-01-11-16.39.33.png" alt="" class="wp-image-4"/><figcaption class="wp-element-caption">モデル一覧からqwen2.5:1.5bを選択</figcaption></figure>



<p>Raspberry Piの再起動後など、次回以降は以下の手順でWebUIを立ち上げます。</p>



<div class="wp-block-sbd-checkpoint-block"><p class="sbd-checkpoint-title">再起動後の実行手順</p><div class="sbd-checkpoint-content sbd-inner-block-init"><p>①再起動後はターミナルを2つ開き、1つ目で<code>hailo-ollama</code>を実行してLLMサーバーを起動。</p><p>②もう1つのターミナルで<code>sudo docker start open-webui</code>を実行。</p><p>③ブラウザで<code>http://127.0.0.1:8080</code>にアクセスすればWebUIを利用できます。</p></div></div>



<h3 class="wp-block-heading">PythonからLLMを動かす</h3>



<p>ローカルLLMは、Pythonから制御することで電子工作やアプリに組み込みやすくなります。ここでは、PythonからローカルLLMを動かすための基本的な流れを説明します。</p>



<p>PythonからローカルLLMを使う前に、ターミナルから<span class="sbd-text-red">hailo-ollama</span>を実行しておく必要があります。</p>



<figure class="wp-block-image size-full"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/01/スクリーンショット-2026-01-13-11.17.26.png" alt="" class="wp-image-4"/></figure>



<p>以下のコードはPythonからローカルLLMを呼び出し、回答を生成途中から受け取りつつ最終結果もまとめて取得するためのコードです。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-python" data-lang="Python"><code>import requests
import json
import time

# ローカルで起動しているLLMのAPIエンドポイント
url = &quot;http://localhost:8000/api/chat&quot;

# ユーザーの質問
question = &quot;おすすめの気分転換の方法を教えてください。&quot;

payload = {
    # 使用するLLMモデルを指定
    &quot;model&quot;: &quot;qwen2:1.5b&quot;,
    # &quot;model&quot;: &quot;qwen2.5:1.5b&quot;,
    # &quot;model&quot;: &quot;llama3.2:1b&quot;,
    # &quot;model&quot;: &quot;deepseek_r1:1.5b&quot;,

    # LLMに送る会話内容を指定
    &quot;messages&quot;: [
        {&quot;role&quot;: &quot;user&quot;, &quot;content&quot;: question}
    ]
}

# 質問内容を表示
print(f&quot;質問: {question}\n&quot;)

# 思考開始時刻を記録
think_start_time = time.time()
print(&quot;思考開始\n&quot;)

# LLM APIにPOSTリクエストを送信（ストリーミング）
res = requests.post(url, json=payload, stream=True)

answer_started = False        # 回答開始検知フラグ
final_answer = &quot;&quot;             # 回答全文を格納する変数

for line in res.iter_lines():
    if not line:
        continue

    data = json.loads(line.decode(&quot;utf-8&quot;))
    content = data.get(&quot;message&quot;, {}).get(&quot;content&quot;, &quot;&quot;)

    # 回答が初めて返ってきた瞬間
    if content and not answer_started:
        print(&quot;回答開始\n&quot;)
        answer_started = True

    # 回答内容を逐次表示しつつ、変数に蓄積
    if content:
        print(content, end=&quot;&quot;, flush=True)
        final_answer += content

    # 回答終了を検知
    if data.get(&quot;done&quot;):
        elapsed = time.time() - think_start_time
        print(f&quot;\n\n処理時間: {elapsed:.2f}秒&quot;)
        break
</code></pre></div>



<p>13～16行目で使用するLLMモデルを変更できますが、Raspberry Piにダウンロードしたモデルのみ利用できます。</p>



<p>ローカルLLMに質問を送信し、返ってくる文章をその場で表示しながら、同時に後続処理用として1つの変数に保存する構成になっています。</p>



<figure class="wp-block-image size-full"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/01/スクリーンショット-2026-01-15-12.48.17.png" alt="" class="wp-image-4"/><figcaption class="wp-element-caption">出力結果</figcaption></figure>



<h2 class="wp-block-heading">VLMで画像を説明してもらう</h2>



<figure class="wp-block-image size-full is-resized"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/01/pico-1-7.jpg" alt="" style="width:800px;height:auto"/><figcaption class="wp-element-caption">カメラの映像を文章で説明できる</figcaption></figure>



<p>VLMを使うと、<span class="sbd-text-red">画像をもとに状況や特徴を言葉で表現させる</span>ことができます。保存した写真だけでなくカメラ映像もそのまま渡せるため、精度次第ではリアルタイムの状況に応じた判断や提案にも使えそうです。実際に試しながら、回答の精度や処理にかかる時間を確認していきます。</p>



<p>Hailoデバイスが認識されていることを確認する。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>hailortcli scan</code></pre></div>



<p>以下のようにデバイスアドレスが表示されれば、Hailoデバイスは正しく認識されています。</p>



<figure class="wp-block-image size-full"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/01/スクリーンショット-2026-01-14-10.09.35.png" alt="" class="wp-image-4"/></figure>



<p>hailo-apps リポジトリを取得します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>git clone https://github.com/hailo-ai/hailo-apps.git</code></pre></div>



<p>hailo-appsディレクトリに移動</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>cd hailo-apps</code></pre></div>



<p>venvという名前のPython仮想環境を作成します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>python3 -m venv venv --system-site-packages</code></pre></div>



<p>仮想環境を有効化します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>source venv/bin/activate</code></pre></div>



<p>PortAudioをOS側にインストールします。これをしないと、PyAudioのビルドでエラーが出てしまいます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>sudo apt update
sudo apt install -y portaudio19-dev</code></pre></div>



<p>hailo-appsが定義しているGenAI用の追加依存関係をまとめてインストールします。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>pip install -e &quot;.[gen-ai]&quot;</code></pre></div>



<p>モデルのダウンロードや保存時に権限エラーが発生するのを防ぐため、事前にディレクトリを作成し、所有者を<code>pi</code>に変更します。まず、<code>/usr/local/hailo</code>ディレクトリを作成します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>sudo mkdir -p /usr/local/hailo</code></pre></div>



<p>以下を実行して、<code>/usr/local/hailo</code>以下のファイルとディレクトリの所有者をユーザー<code>pi</code>とグループ<code>pi</code>に変更します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>sudo chown -R pi:pi /usr/local/hailo</code></pre></div>



<h3 class="wp-block-heading">保存した画像を説明させる</h3>



<p>simple_vlm_chat を実行します。初回実行時はVLMモデル（Qwen2-VL-2B-Instruct for hailo10h）のダウンロードが行われるため、時間がかかります。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>python -m hailo_apps.python.gen_ai_apps.simple_vlm_chat.simple_vlm_chat</code></pre></div>



<p>このコマンドは、リポジトリ内の doc/images/barcode-example.png という画像を使って、HailoのVision Language Modelを試すデモを実行します。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/01/barcode-example.jpg" alt="" style="aspect-ratio:0.9968924798011187;width:265px;height:auto"/><figcaption class="wp-element-caption">barcode-example.png</figcaption></figure>



<p><br>この画像に対して “How many people in the image?”（この画像には何人の人が写っていますか？） という質問を行います。</p>



<p>「There is one person in the image.（この画像には1人の人物が写っています）」<br>と回答されました。</p>



<figure class="wp-block-image size-full"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/01/スクリーンショット-2026-01-14-11.11.48.png" alt=""/><figcaption class="wp-element-caption">VLMからの回答を表示</figcaption></figure>



<p>VLMモデルには Alibaba Cloud開発の<span class="sbd-text-bg-yellow">Qwen2-VL-2B-Instruct</span>が使われており、これが Hailo-10H 向けに最適化された形で提供されています。</p>



<p>「/home/pi/hailo-apps/hailo_apps/python/gen_ai_apps/simple_vlm_chat/simple_vlm_chat.py」のコードの一部を変更することで、渡す画像や質問の変更ができます。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="359" src="https://sozorablog.com/wp-content/uploads/2026/01/pico-1-9.jpg" alt="" class="wp-image-16458"/></figure>



<p>質問を日本語に変えてみました。ざっくりとした回答ですが、赤い帽子と白いマスクが認識されており、悪くない結果です。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/01/スクリーンショット-2026-01-14-11.35.05.png" alt="" style="width:621px;height:auto"/></figure>



<h3 class="wp-block-heading">カメラの映像を説明させる</h3>



<figure class="wp-block-image size-full is-resized"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/01/IMG_0242.jpg" alt="" style="aspect-ratio:1.1815943908389563;width:676px;height:auto"/></figure>



<p>以下を実行すると、Raspberry Piカメラの映像についてVLMに質問できます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>python -m hailo_apps.python.gen_ai_apps.vlm_chat.vlm_chat --input rpi</code></pre></div>



<p>Raspberry Piカメラが起動し、ライブ映像が画面に表示されます。</p>



<figure class="wp-block-image size-full"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/01/スクリーンショット-2026-01-14-12.26.17.jpg" alt=""/></figure>



<p>Enterキーを押すと、その時点の映像が静止画として取得されます。静止した画像に対してターミナル上で質問を入力すると、VLMが画像を解析して回答を返します。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/01/スクリーンショット-2026-01-14-12.25.02.png" alt="" class="wp-image-4" style="width:807px;height:auto"/></figure>



<p>応答が始まるまでにかかる時間は<span class="sbd-text-red">約2秒</span>で、その速さに驚きました。「日本語で答えてください」を質問に含めると日本語で回答が返ってきます。</p>



<p>プログラムをそのまま実行すると、カメラ映像中の<span class="sbd-text-bg-yellow">オレンジ色の部分が青色に変換されてしまう不具合があった</span>ため、「/home/pi/hailo-apps/hailo_apps/python/gen_ai_apps/vlm_chat/vlm_chat.py」の105行目をコメントアウト（行の先頭に#をつけて無効化）し、その下の行に「get_frame = lambda: picam2.capture_array()」を追加しました。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="270" src="https://sozorablog.com/wp-content/uploads/2026/01/スクリーンショット-2026-01-17-8.48.34.jpg" alt="" class="wp-image-16473"/><figcaption class="wp-element-caption">vlm_chat.pyの変更箇所</figcaption></figure>



<p>不要な色の変換処理を無効にし、カメラで取得した画像をそのまま使うように変更することで、正しい色で表示されるようになりました。</p>



<div class="wp-block-sbd-checkpoint-block"><p class="sbd-checkpoint-title">Raspberry Pi再起動後の実行手順</p><div class="sbd-checkpoint-content sbd-inner-block-init"><p>「cd hailo-apps」でディレクトリに移動</p><p>「source venv/bin/activate」でPythonの仮想環境を有効化</p><p>Pythonスクリプトを実行</p></div></div>



<p>今回使用したVLMでは、<span class="sbd-text-red">日本語で質問した場合に誤った物体名を返す</span>ことがあり、ミカンの映像を「にんにく」と回答する例が見られました。一方、同じ画像に対して英語で質問すると、「orange」と正しく認識され、英語で回答させた方が精度が高いようです。</p>



<h3 class="wp-block-heading">PythonからVLMを動かす</h3>



<p>以下はカメラで取得した画像をHailoのVLMで解析し、内容をテキストとして生成するPythonプログラムです。日本語で回答させると精度が悪いので、英語のVLM回答をローカルLLMのQwen2:1.5bで日本語に翻訳する処理も行います。</p>



<div class="wp-block-sbd-background-block sbd-bg-color sbd-inner-block-init is-style-yellow">
<p>Qwen2:1.5bをダウンロードして、フォルダに配置する方法は<a href="#qwen">LLMを「Qwen2 1.5B」に変更する</a>で解説しています。</p>
</div>



<p>以下はカメラで取得した映像をHailoで解析して内容を英語で説明し、その結果を日本語に翻訳して表示するプログラムです。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-python" data-lang="Python"><code>import subprocess
import time

# エラー回避のための強制開放（前回プロセスの残骸対策）
subprocess.run(
    &quot;sudo fuser -k /dev/video* /dev/media* /dev/v4l-subdev*&quot;,
    shell=True,
    stdout=subprocess.DEVNULL,
    stderr=subprocess.DEVNULL
)
time.sleep(1)

import sys
import time
import signal
import os
import cv2
from typing import Optional

from hailo_apps.python.gen_ai_apps.vlm_chat.backend import Backend
from hailo_apps.python.core.common.core import (
    get_standalone_parser,
    handle_list_models_flag,
    resolve_hef_path,
)
from hailo_apps.python.core.common.defines import (
    VLM_CHAT_APP,
    HAILO10H_ARCH,
)
from hailo_platform import VDevice
from hailo_platform.genai import LLM

def translate_to_japanese(text: str) -&gt; str:
    vdevice_llm = VDevice()
    llm = LLM(vdevice_llm, &quot;/home/pi/models/Qwen2-1.5B-Instruct.hef&quot;)
    
    prompt = f&quot;以下の英文を自然で正しい日本語の表現で翻訳してください。難しい漢字を使わないこと\n\n{text}&quot;    
    #print(prompt)

    messages = [
        {&quot;role&quot;: &quot;user&quot;, &quot;content&quot;: prompt}
    ]

    result = &quot;&quot;
    for chunk in llm.generate(messages):
        result += chunk

    llm.release()
    return result.replace(&quot;&lt;|im_end|&gt;&quot;, &quot;&quot;).strip()

# =========================
# 設定
# =========================
WAIT_SECONDS = 3  # 撮影までの待機時間

QUESTION = &quot;&quot;&quot;
Look at the camera image carefully.
Describe what is happening in the image.
Be concise and clear.
Mention the main subject and important details.
&quot;&quot;&quot;
MAX_TOKENS = 30
TEMPERATURE = 0.1
SEED = 42

# 画像説明用のシステムプロンプト
SYSTEM_PROMPT = &quot;&quot;&quot;
You see images from a camera.
You describe the image clearly and objectively.
Focus on what is visible.
&quot;&quot;&quot;
INFERENCE_TIMEOUT = 60
WINDOW_NAME = &quot;Captured Frame&quot;

def extract_model_name(hef_path: str) -&gt; str:
    # hefファイル名からモデル名を取得
    return os.path.splitext(os.path.basename(hef_path))[0]

class OneShotVLMApp:
    def __init__(self, hef_path: str):
        self.hef_path = hef_path
        self.backend: Optional[Backend] = None
        self.running = True
        signal.signal(signal.SIGINT, self._signal_handler)

    def _signal_handler(self, sig, frame):
        self.running = False

    def _init_camera(self):
        from picamera2 import Picamera2
        from libcamera import controls

        picam2 = Picamera2()
        config = picam2.create_preview_configuration(
            main={&quot;size&quot;: (320, 240), &quot;format&quot;: &quot;RGB888&quot;}
        )
        picam2.configure(config)
        picam2.start()
        
        # オートフォーカス設定
        picam2.set_controls({
            &quot;AfMode&quot;: controls.AfModeEnum.Continuous,
            &quot;AfSpeed&quot;: controls.AfSpeedEnum.Fast,
        })
        return picam2

    def _init_backend(self):
        # Hailo VLMバックエンド初期化
        self.backend = Backend(
            hef_path=self.hef_path,
            max_tokens=MAX_TOKENS,
            temperature=TEMPERATURE,
            seed=SEED,
            system_prompt=SYSTEM_PROMPT,
        )

    def run(self):
        
        picam2 = self._init_camera()
        self._init_backend()

        cv2.namedWindow(WINDOW_NAME, cv2.WINDOW_AUTOSIZE)

        # ---------- ライブ表示 ----------
        while self.running:

            start_time = time.time()
            captured_frame = None
            
            while self.running and captured_frame is None:
                frame = picam2.capture_array()
                rgb_frame = Backend.convert_resize_image(frame)
                bgr_frame = cv2.cvtColor(rgb_frame, cv2.COLOR_RGB2BGR)

                cv2.imshow(WINDOW_NAME, bgr_frame)
                
                # 指定時間経過で撮影
                if (time.time() - start_time) &gt;= WAIT_SECONDS:
                    captured_frame = cv2.cvtColor(rgb_frame, cv2.COLOR_RGB2BGR)
                    break

                if cv2.waitKey(1) & 0xFF == ord(&quot;q&quot;):
                    self.running = False
                    break
                
            if not self.running:
                break
        
            loop_start = time.perf_counter()
            t0 = time.perf_counter()
                    
            # VLM推論を実行（画像→テキスト生成）
            result = self.backend.vlm_inference(
                captured_frame,
                QUESTION,
                INFERENCE_TIMEOUT,
            )
            t1 = time.perf_counter()
            inference_time = t1 - t0
            
            answer_text = result.get(&quot;answer&quot;, &quot;回答を取得できませんでした&quot;)

            model_name = extract_model_name(self.hef_path)

            print(&quot;\n=====================================\n&quot;)
            print(&quot;---------- 実行情報 ----------&quot;)
            print(f&quot;モデル名   ：{model_name}&quot;)
            print(f&quot;VLM推論時間   ：{inference_time:.2f}秒&quot;)
            print(&quot;------------------------------\n&quot;)
                    
            # Hailoデバイス解放
            self.backend.close()
                             
            # 翻訳 -----------------------------------------------
            t2 = time.perf_counter()

            translated_text = translate_to_japanese(answer_text)
            print(translated_text)
            
            t3 = time.perf_counter()
            llm_time = t3 - t2            
                    
            total_time = time.perf_counter() - loop_start # トータル時間計算
                    
            print(&quot;\n---------- 処理時間 ----------&quot;)
            print(f&quot;LLM推論時間   ：{llm_time:.2f}秒&quot;)
            print(f&quot;トータル時間 ：{total_time:.2f}秒&quot;)
            print(&quot;------------------------------\n&quot;)

            self._init_backend()
            time.sleep(1)

            if cv2.waitKey(30) & 0xFF == ord(&quot;q&quot;):
                break

if __name__ == &quot;__main__&quot;:
    parser = get_standalone_parser()
    handle_list_models_flag(parser, VLM_CHAT_APP)
    options = parser.parse_args()

    hef_path = resolve_hef_path(
        options.hef_path if hasattr(options, &quot;hef_path&quot;) else None,
        app_name=VLM_CHAT_APP,
        arch=HAILO10H_ARCH,
    )

    if hef_path is None:
        sys.exit(1)

    OneShotVLMApp(str(hef_path)).run()
    sys.exit(0)
</code></pre></div>



<p>VLMからLLMへ処理を切り替える際に、プロセスの起動やメモリ確保、モデルのロードが行われるため時間がかかります。結果、VLMの推論自体は速くても、全体の処理時間は長くなります。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="459" src="https://sozorablog.com/wp-content/uploads/2026/01/スクリーンショット-2026-03-18-9.00.19.jpg" alt="" class="wp-image-16512"/><figcaption class="wp-element-caption">実行結果</figcaption></figure>



<h2 class="wp-block-heading">VLM作例紹介</h2>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="590" src="https://sozorablog.com/wp-content/uploads/2026/01/IMG_0556.jpeg" alt="" class="wp-image-16515"/></figure>



<p>ローカルVLMを使って、カメラに映った物や人物をひたすら褒めてくれる装置を作りました。使用したのは<a href="https://www.raspberrypi.com/products/touch-display-2/">Touch Display 2</a>の5インチモデルです。カメラを固定できるスタンドは、3Dプリンターで自作しました。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="800" height="819" src="https://sozorablog.com/wp-content/uploads/2026/01/IMG_0565.jpeg" alt="" class="wp-image-16516" style="aspect-ratio:0.9768097951814027;width:490px;height:auto"/></figure>



<p>背景で流れている映画マトリックス風の動画は、<a href="https://pixabay.com/ja/videos/%e3%83%9e%e3%83%88%e3%83%aa%e3%83%83%e3%82%af%e3%82%b9-%e3%83%80%e3%82%a6%e3%83%b3%e3%83%ad%e3%83%bc%e3%83%89-75043/">Pixabay</a>で公開されているものを使用しました。これがあるだけで、近未来感が増します。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="300" height="214" src="https://sozorablog.com/wp-content/uploads/2026/01/IMG_0560-1.gif" alt="" class="wp-image-16522"/></figure>



<p>英語のVLM回答をローカルLLMで日本語に翻訳させているので、英文と日本語文が交互に流れます。日本語回答までの処理時間は合計で30秒くらいです。</p>



<div class="wp-block-sbd-balloon sbd-balloon sbd-balloon--id-4 sbd-balloon--flat sbd-balloon--l sbd-balloon--green block-box"><div class="sbd-balloon__profile"><figure class="sbd-balloon__icon"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2021/09/アイコン.jpg" alt="そぞら" class="sbd-balloon__img"/></figure><div class="sbd-balloon__name">そぞら</div></div><div class="sbd-balloon__text-box sbd-inner-block-init">
<p>繰り返し動かしても、API利用料金を気にせずに済むところが良いですね。</p>
</div></div>



<h2 class="wp-block-heading">テキストをしゃべらせる</h2>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="583" src="https://sozorablog.com/wp-content/uploads/2026/01/IMG_0626.jpeg" alt="" class="wp-image-16545"/><figcaption class="wp-element-caption">AI HAT ＋2の上部に取り付けた<a href="https://sozorablog.com/whisplay-hat/">Whisplay Hat</a></figcaption></figure>



<p>音声合成（TTS）はRaspberry PiのCPUで動作します。PiperはONNX Runtimeという仕組みで動いており、これはCPUやGPU向けに作られているため、Hailo（Raspberry Pi AI HAT+ 2）では動かないようです。</p>



<p>音声を出力させるためにスピーカーが必要です。今回は<a href="https://sozorablog.com/whisplay-hat/">PiSugar Whisplay Hat</a>を使用します。コンパクトですが、スピーカーとマイクが搭載されています。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="800" height="450" src="https://sozorablog.com/wp-content/uploads/2026/04/pico-6.jpg" alt="" class="wp-image-16802" style="width:455px;height:auto" srcset="https://sozorablog.com/wp-content/uploads/2026/04/pico-6.jpg 800w, https://sozorablog.com/wp-content/uploads/2026/04/pico-6-320x180.jpg 320w, https://sozorablog.com/wp-content/uploads/2026/04/pico-6-224x126.jpg 224w" sizes="(max-width: 800px) 100vw, 800px" /><figcaption class="wp-element-caption">Whisplay HATの裏面</figcaption></figure>



<p>以下を1行ずつ実行すると、Whisplay HATのスピーカーとマイクが使える状態になります。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>git clone https://github.com/PiSugar/Whisplay.git --depth 1
cd Whisplay/Driver
sudo bash install_wm8960_drive.sh
sudo reboot</code></pre></div>



<h3 class="wp-block-heading">Piperで音声を再生する</h3>



<p>音声合成エンジンであるPiperのTTSモデルをダウンロードします。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>hailo-audio-troubleshoot --install-tts</code></pre></div>



<p>以下を実行すると、「Hello, how are you today?」というテキストが音声に変換され、スピーカーから再生されます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>python -c &quot;from hailo_apps.python.gen_ai_apps.gen_ai_utils.voice_processing.text_to_speech import TextToSpeechProcessor as T; t=T(); t.queue_text(&#39;Hello, how are you today?&#39;); t.wait_for_completion()&quot;</code></pre></div>



<h3 class="wp-block-heading">OpenJTalkで日本語音声を再生する</h3>



<p>Piperでは日本語対応しているモデルを使用できないようです。そこで、OpenJTalkをインストールすることにしました。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>sudo apt install -y open-jtalk open-jtalk-mecab-naist-jdic hts-voice-nitech-jp-atr503-m001</code></pre></div>



<div class="wp-block-sbd-balloon sbd-balloon sbd-balloon--id-4 sbd-balloon--flat sbd-balloon--l sbd-balloon--green block-box"><div class="sbd-balloon__profile"><figure class="sbd-balloon__icon"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2021/09/アイコン.jpg" alt="そぞら" class="sbd-balloon__img"/></figure><div class="sbd-balloon__name">そぞら</div></div><div class="sbd-balloon__text-box sbd-inner-block-init">
<p>OpenJTalkは、名古屋工業大学を中心に開発された、日本語の文章を音声に変換して読み上げるオープンソースの音声合成エンジンです。</p>
</div></div>



<p>OpenJTalkで日本語を音声合成するための辞書と音声モデルをインストールします。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>sudo apt install -y open-jtalk-mecab-naist-jdic hts-voice-nitech-jp-atr503-m001</code></pre></div>



<p>以下で日本語がしゃべれます。「こんにちは」というテキストを音声に変換してWAVファイルに保存し、その音声を再生しています。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>echo &quot;こんにちは&quot; | open_jtalk -x /var/lib/mecab/dic/open-jtalk/naist-jdic -m /usr/share/hts-voice/nitech-jp-atr503-m001/nitech_jp_atr503_m001.htsvoice -ow /tmp/test.wav && aplay /tmp/test.wav</code></pre></div>



<p>女性の声のモデルもインストールしてみます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>wget https://downloads.sourceforge.net/project/mmdagent/MMDAgent_Example/MMDAgent_Example-1.8/MMDAgent_Example-1.8.zip</code></pre></div>



<p>ZIP形式のファイル「MMDAgent_Example-1.8.zip」を解凍します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>unzip MMDAgent_Example-1.8.zip</code></pre></div>



<p>meiフォルダをシステムの音声データ用ディレクトリ（/usr/share/hts-voice/）にコピーします。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>sudo cp -r MMDAgent_Example-1.8/Voice/mei /usr/share/hts-voice/</code></pre></div>



<p>Pythonからは以下のように再生します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>import subprocess

def speak_japanese(text, voice=&quot;normal&quot;, speed=0.8):
    # voiceで選択できる種類
    # &quot;normal&quot;   : 標準
    # &quot;happy&quot;    : 明るい
    # &quot;angry&quot;    : 怒り
    # &quot;sad&quot;      : 悲しい
    # &quot;bashful&quot;  : 照れ
    voice_path = f&quot;/usr/share/hts-voice/mei/mei_{voice}.htsvoice&quot;

    subprocess.run(
        [
            &quot;open_jtalk&quot;,
            &quot;-x&quot;, &quot;/var/lib/mecab/dic/open-jtalk/naist-jdic&quot;,
            &quot;-m&quot;, voice_path,
            &quot;-r&quot;, str(speed),
            &quot;-ow&quot;, &quot;/tmp/test.wav&quot;
        ],
        input=text,
        text=True
    )

    subprocess.run([&quot;aplay&quot;, &quot;/tmp/test.wav&quot;])

speak_japanese(&quot;こんにちは&quot;, &quot;happy&quot;)</code></pre></div>



<p>日本語テキストをOpenJTalkで音声に変換し、/tmp/test.wavに保存してから再生する処理です。読み上げる内容はtextに入れた文字で決まり、voiceで声の種類（normal・happyなど）を選べます。speedで話す速さを調整でき、数値が小さいほどゆっくり、大きいほど速くなります。<br><br>最後の<code>speak_japanese("こんにちは", "happy")</code>は、「こんにちは」を明るい声で再生する指定です。</p>



<h2 class="wp-block-heading">AIと音声で会話する</h2>



<p>hailo-appsのvoice_assistant.pyを使うことで、マイク入力から音声認識・LLM処理・音声出力まで一連の流れを実行できます。</p>



<p>引き続き、<a href="https://www.pisugar.com/products/whisplay-hat-for-pi-zero-2w-audio-display">PiSugar Whisplay Hat</a>をスピーカー・マイクとして使用します。</p>



<p>hailo-appsディレクトリに移動し、仮想環境venvを有効化。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>cd hailo-apps && source venv/bin/activate</code></pre></div>



<p>voice_assistant.pyを起動します。初回実行時は音声認識モデルのダウンロードが行われるため、10分程度かかります。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>python -m hailo_apps.python.gen_ai_apps.voice_assistant.voice_assistant</code></pre></div>



<div class="wp-block-sbd-balloon sbd-balloon sbd-balloon--id-4 sbd-balloon--flat sbd-balloon--l sbd-balloon--green block-box"><div class="sbd-balloon__profile"><figure class="sbd-balloon__icon"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2021/09/アイコン.jpg" alt="そぞら" class="sbd-balloon__img"/></figure><div class="sbd-balloon__name">そぞら</div></div><div class="sbd-balloon__text-box sbd-inner-block-init">
<p><code>-m</code>は指定したモジュールをパッケージとして実行するためのオプションです。</p>
</div></div>



<p>起動すると待機状態になり、SPACEキーを押すと録音が始まります。話し終わったらもう一度SPACEキーを押すと録音が止まり、その内容がテキストに変換されてAIの応答が表示・音声再生されます。会話の履歴をリセットしたいときはCキー、アプリを終了したいときはQキーを押します。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="800" height="162" src="https://sozorablog.com/wp-content/uploads/2026/01/pico-1.png" alt="" class="wp-image-16562" style="width:840px;height:auto"/></figure>



<p>デフォルトの構成では日本語で会話できないので、以下に変更します。</p>



<p>マイク → 音声認識（日本語） → LLM（qwen2:1.5b） → TTS（open_jtalk）</p>



<h3 class="wp-block-heading">日本語の音声を認識できるようにする</h3>



<p>音声認識を日本語で動作させるための設定を追加します。</p>



<p>/home/pi/hailo-apps/hailo_apps/python/gen_ai_apps/voice_assistant/voice_assistant.pyを開いて、language=&#8221;ja&#8221;を追加します。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="475" src="https://sozorablog.com/wp-content/uploads/2026/01/pico-2-2.jpg" alt="" class="wp-image-16567"/></figure>



<p>これにより、音声入力が日本語として処理されるようになります。認識精度は決して高くはありませんが、処理の速さには驚きました。</p>



<p>以下の投稿は日本語音声認識をWhisplayHATのボタン操作で動くようにして、結果をLCDに表示させたものです。</p>



<figure class="wp-block-embed is-type-rich is-provider-twitter wp-block-embed-twitter"><div class="wp-block-embed__wrapper">
<blockquote class="twitter-tweet" data-width="500" data-dnt="true"><p lang="ja" dir="ltr">Raspberry Pi AI HAT+ 2を使った音声認識。<br><br>短い言葉なら、短時間で正確に認識できる。長文や一般用語以外は苦手。日本語より英語の方が精度は良さそう。とはいえ、ローカルでこの処理速度は、なかなか良い。 <a href="https://t.co/RelJFBglK5">pic.twitter.com/RelJFBglK5</a></p>&mdash; そぞら@Raspberry Pi 電子工作 (@sozoraemon) <a href="https://twitter.com/sozoraemon/status/2040729870947561658?ref_src=twsrc%5Etfw">April 5, 2026</a></blockquote><script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>
</div></figure>



<h3 class="wp-block-heading" id="qwen">LLMを「Qwen2 1.5B」に変更する</h3>



<p>認識した音声を回答させる際にデフォルトのモデルでは回答が安定しません。そこで、比較的日本語に強いqwen2:1.5bモデルを使用します。</p>



<p><a href="https://hailo.ai/products/hailo-software/model-explorer/generative-ai/qwen2-1-5b/">https://hailo.ai/products/hailo-software/model-explorer/generative-ai/qwen2-1-5b/</a>のページ下部から<span class="sbd-text-bg-yellow">Compiled Model</span>をダウンロードします。ファイルサイズが大きいため、かなり時間がかかります。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="800" height="530" src="https://sozorablog.com/wp-content/uploads/2026/01/pico-3.png" alt="" class="wp-image-16571" style="width:507px;height:auto"/><figcaption class="wp-element-caption"><a href="https://hailo.ai/products/hailo-software/model-explorer/generative-ai/qwen2-1-5b/">Hailo公式のダウンロードページ</a></figcaption></figure>



<p>モデルを保存するフォルダを作成</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>mkdir -p /home/pi/models</code></pre></div>



<p>ダウンロードしたモデルを移動</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>mv /home/pi/ダウンロード/Qwen2-1.5B-Instruct.hef /home/pi/models/</code></pre></div>



<p>/home/pi/hailo-apps/hailo_apps/python/gen_ai_apps/voice_assistant/voice_assistant.pyを開いて、モデルのパスを変更します。</p>



<p>以下の行にmodel_path = &#8220;/home/pi/models/Qwen2-1.5B-Instruct.hef&#8221;を追加します。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="450" src="https://sozorablog.com/wp-content/uploads/2026/01/pico-4-1.jpg" alt="" class="wp-image-16574" srcset="https://sozorablog.com/wp-content/uploads/2026/01/pico-4-1.jpg 800w, https://sozorablog.com/wp-content/uploads/2026/01/pico-4-1-320x180.jpg 320w, https://sozorablog.com/wp-content/uploads/2026/01/pico-4-1-224x126.jpg 224w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>日本語で回答してもらうために、import文の下に以下を追加します。from hailo_apps.python.core.common.defines import LLM_PROMPT_PREFIX, SHARED_VDEVICE_GROUP_ID, HAILO10H_ARCH, VOICE_ASSISTANT_APP, VOICE_ASSISTANT_MODEL_NAMEの行より下に記述します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>LLM_PROMPT_PREFIX = &quot;日本語で答えてください。\n&quot;</code></pre></div>



<h3 class="wp-block-heading">TTSを日本語対応させる</h3>



<p>先ほどインストールしたOpenJTalkを使用するために日本語TTS用ファイルを作成します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>nano ~/hailo-apps/hailo_apps/python/gen_ai_apps/voice_assistant/tts_openjtalk.py</code></pre></div>



<p>tts_openjtalk.pyに、以下のコードを保存します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>import subprocess

def speak_japanese(text, voice=&quot;normal&quot;, speed=0.8):
    voice_path = f&quot;/usr/share/hts-voice/mei/mei_{voice}.htsvoice&quot;

    subprocess.run(
        [
            &quot;open_jtalk&quot;,
            &quot;-x&quot;, &quot;/var/lib/mecab/dic/open-jtalk/naist-jdic&quot;,
            &quot;-m&quot;, voice_path,
            &quot;-r&quot;, str(speed),
            &quot;-ow&quot;, &quot;/tmp/test.wav&quot;
        ],
        input=text,
        text=True
    )

    subprocess.run(
        [&quot;aplay&quot;, &quot;/tmp/test.wav&quot;],
        stdout=subprocess.DEVNULL,
        stderr=subprocess.DEVNULL
    )</code></pre></div>



<p>voice_assistant.pyの先頭付近に以下を追加</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>from .tts_openjtalk import speak_japanese</code></pre></div>



<p>speak_japanese(response_text)を追加</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="388" src="https://sozorablog.com/wp-content/uploads/2026/01/pico-4-2.jpg" alt="" class="wp-image-16582"/></figure>



<p>response_text = &#8220;&#8221;を追加</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="386" src="https://sozorablog.com/wp-content/uploads/2026/01/pico-4-3.jpg" alt="" class="wp-image-16585"/></figure>



<p>以下を追加</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>def collect_callback(chunk: str):
    nonlocal response_text
    response_text += chunk</code></pre></div>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="450" src="https://sozorablog.com/wp-content/uploads/2026/01/pico-1-1-1.jpg" alt="" class="wp-image-16588" srcset="https://sozorablog.com/wp-content/uploads/2026/01/pico-1-1-1.jpg 800w, https://sozorablog.com/wp-content/uploads/2026/01/pico-1-1-1-320x180.jpg 320w, https://sozorablog.com/wp-content/uploads/2026/01/pico-1-1-1-224x126.jpg 224w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>&#8221;token_callback=tts_callback&#8221;を&#8221;token_callback=collect_callback&#8221;に変更</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="450" src="https://sozorablog.com/wp-content/uploads/2026/01/pico-4-4.jpg" alt="" class="wp-image-16589" srcset="https://sozorablog.com/wp-content/uploads/2026/01/pico-4-4.jpg 800w, https://sozorablog.com/wp-content/uploads/2026/01/pico-4-4-320x180.jpg 320w, https://sozorablog.com/wp-content/uploads/2026/01/pico-4-4-224x126.jpg 224w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>voice_assistant.pyを以下のコマンドで実行します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>python -m hailo_apps.python.gen_ai_apps.voice_assistant.voice_assistant --no-tts</code></pre></div>



<p>日本語の音声を認識し、日本語で返答を生成し、そのまま音声として再生できるようになりました。</p>



<div class="wp-block-sbd-balloon sbd-balloon sbd-balloon--id-4 sbd-balloon--flat sbd-balloon--l sbd-balloon--green block-box"><div class="sbd-balloon__profile"><figure class="sbd-balloon__icon"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2021/09/アイコン.jpg" alt="そぞら" class="sbd-balloon__img"/></figure><div class="sbd-balloon__name">そぞら</div></div><div class="sbd-balloon__text-box sbd-inner-block-init">
<p>一連の流れがすべてRaspberry Pi上で動作しており、実際に声でやり取りできる体験はとても新鮮です。</p>
</div></div>



<p>認識精度や返答内容については、<span class="sbd-text-red">意図しない変換や不自然な応答になる</span>こともあります。それでも、この速度で会話のようなやり取りが成立するのは、触っていて面白さを感じられるレベルです。</p>



<p>現時点では英語と比べて日本語の精度が低い傾向があり、初期のChatGPTと似た印象を受けます。今後のモデルや音声認識の進化によって、より自然で正確な会話ができるようになることが期待されます。</p>



<p>以下の投稿はvoice_assistantをWhisplayHATのボタン操作で動くようにして、結果をLCDに表示させたものです。</p>



<figure class="wp-block-embed is-type-rich is-provider-twitter wp-block-embed-twitter"><div class="wp-block-embed__wrapper">
<blockquote class="twitter-tweet" data-width="500" data-dnt="true"><p lang="ja" dir="ltr">Raspberry Pi AI HAT+ 2で、音声対話型チャットボットを作ってみました。<br><br>すべてローカルで動いています。精度が課題ではあるけど、音声認識→文章生成→音声合成がこの速さ動くのは驚きです。 <a href="https://t.co/tgGoQ6Yhv2">pic.twitter.com/tgGoQ6Yhv2</a></p>&mdash; そぞら@Raspberry Pi 電子工作 (@sozoraemon) <a href="https://twitter.com/sozoraemon/status/2041460961673097486?ref_src=twsrc%5Etfw">April 7, 2026</a></blockquote><script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>
</div></figure>



<h2 class="wp-block-heading">まとめ</h2>



<figure class="wp-block-image size-full is-resized"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/01/IMG_0249.jpg" alt="" style="aspect-ratio:1.2631640781033389;width:527px;height:auto"/></figure>



<p>Raspberry Pi AI HAT+ 2を使ってみると、Raspberry Pi上でも<span class="sbd-text-bg-yellow">LLMの回答が数秒で返ってくる</span>ことがわかり、エッジAIとしての可能性にワクワクしました。カメラを使った生成AIでは、さまざまなシチュエーションや質問を次々に試してみたくなるような楽しさがあります。API利用料金を気にせず実行できるため、プロンプトや処理の調整を気軽に繰り返せる点も大きな利点です。</p>



<p>一方で、<span class="sbd-text-red">日本語の回答精度が安定しない</span>場面があり、現時点では用途を選びながら使う必要があると感じました。ただ、この点はAI HAT+ 2自体の問題ではなく、モデルやソフトウェアの進化によって改善される余地があり、今後に期待したい部分です。</p>



<p>生成AIを単体で使うだけでなく、電子工作やセンサー、カメラと組み合わせることで、Raspberry Piならではの使い方に広げられそうです。実際にいろいろ試してみて、面白い形になったものがあれば、この記事に追記していきます。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://sozorablog.com/ai-hat-2/feed/</wfw:commentRss>
			<slash:comments>2</slash:comments>
		
		<enclosure url="https://sozorablog.com/wp-content/uploads/2026/01/画面収録-2026-01-15-10.23.27.mov" length="229866" type="video/quicktime" />

			</item>
		<item>
		<title>【レビュー】ハードケース型Raspberry Pi学習キットCrowPiを使ってみた</title>
		<link>https://sozorablog.com/crowpi/</link>
					<comments>https://sozorablog.com/crowpi/#respond</comments>
		
		<dc:creator><![CDATA[そぞら]]></dc:creator>
		<pubDate>Sun, 11 Jan 2026 10:13:34 +0000</pubDate>
				<category><![CDATA[Raspberry Pi]]></category>
		<category><![CDATA[関連製品]]></category>
		<guid isPermaLink="false">https://sozorablog.com/?p=16081</guid>

					<description><![CDATA[Raspberry Piの学習キットは数あれど、見た目のインパクトがここまで強烈な製品はまずないでしょう。ハードケース型のオールインワン学習キット「CrowPi」が以前から気になっており、レビュー記事がほとんど見当たらな [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p><a href="https://sozorablog.com/raspberry-pi/">Raspberry Pi</a>の学習キットは数あれど、見た目のインパクトがここまで強烈な製品はまずないでしょう。ハードケース型のオールインワン学習キット「CrowPi」が以前から気になっており、レビュー記事がほとんど見当たらないこともあって、半ば使命感のような気持ちで購入を決意しました。</p>



<!-- START MoshimoAffiliateEasyLink -->
<script type="text/javascript">
(function(b,c,f,g,a,d,e){b.MoshimoAffiliateObject=a;
b[a]=b[a]||function(){arguments.currentScript=c.currentScript
||c.scripts[c.scripts.length-2];(b[a].q=b[a].q||[]).push(arguments)};
c.getElementById(a)||(d=c.createElement(f),d.src=g,
d.id=a,e=c.getElementsByTagName("body")[0],e.appendChild(d))})
(window,document,"script","//dn.msmstatic.com/site/cardlink/bundle.js?20220329","msmaflink");
msmaflink({"n":"ELECROW Raspberry Pi 5 8GBキット用 Pi 5 8GB シングルボードコンピューター付き Crowpi Pi 5 ケースキット 9インチディスプレイ付き Raspberry Pi 5 ラーニングプログラミングキット(8GB RAM)対応","b":"Elecrow","t":"","d":"https:\/\/m.media-amazon.com","c_p":"\/images\/I","p":["\/410FwKdoR5L._SL500_.jpg","\/51SgAgmc4HL._SL500_.jpg","\/51ZjF8UoB8L._SL500_.jpg","\/51jroFvN0LL._SL500_.jpg","\/51feD1Y3g7L._SL500_.jpg","\/41LJlUjd2YL._SL500_.jpg"],"u":{"u":"https:\/\/www.amazon.co.jp\/dp\/B0D4LPCKCF","t":"amazon","r_v":""},"v":"2.1","b_l":[{"id":1,"u_tx":"Amazonで見る","u_bc":"#f79256","u_url":"https:\/\/www.amazon.co.jp\/dp\/B0D4LPCKCF","a_id":3038653,"p_id":170,"pl_id":27060,"pc_id":185,"s_n":"amazon","u_so":1},{"id":2,"u_tx":"楽天市場で見る","u_bc":"#f76956","u_url":"https:\/\/search.rakuten.co.jp\/search\/mall\/ELECROW%20Raspberry%20Pi%205%208GB%E3%82%AD%E3%83%83%E3%83%88%E7%94%A8%20Pi%205%208GB%20%E3%82%B7%E3%83%B3%E3%82%B0%E3%83%AB%E3%83%9C%E3%83%BC%E3%83%89%E3%82%B3%E3%83%B3%E3%83%94%E3%83%A5%E3%83%BC%E3%82%BF%E3%83%BC%E4%BB%98%E3%81%8D%20Crowpi%20Pi%205%20%E3%82%B1%E3%83%BC%E3%82%B9%E3%82%AD%E3%83%83%E3%83%88%209%E3%82%A4%E3%83%B3%E3%83%81%E3%83%87%E3%82%A3%E3%82%B9%E3%83%97%E3%83%AC%E3%82%A4%E4%BB%98%E3%81%8D%20Raspberry%20Pi%205%20%E3%83%A9%E3%83%BC%E3%83%8B%E3%83%B3%E3%82%B0%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E3%82%AD%E3%83%83%E3%83%88(8GB%20RAM)%E5%AF%BE%E5%BF%9C\/","a_id":3038654,"p_id":54,"pl_id":27059,"pc_id":54,"s_n":"rakuten","u_so":2}],"eid":"U496C","s":"s"});
</script>
<div id="msmaflink-U496C">リンク</div>
<!-- MoshimoAffiliateEasyLink END -->



<p>スパイグッズのようなケースを開くと、9インチタッチディスプレイと電子工作で定番のLCDやセンサー、スイッチ類が整然と配置されています。メカ好きな方なら、この外観だけで心をつかまれるはずです。</p>



<figure class="wp-block-image size-full"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/01/IMG_0209.jpg" alt="" class="wp-image-4"/></figure>



<p>本記事ではCrowPiの外観の魅力を入口に、実際に動かして感じた楽しさや、初心者でも無理なく始められるかといった点から、<strong>高額なこの製品に購入する価値があるのか</strong>をレビューしていきます。</p>



<h2 class="wp-block-heading">公式サイトから購入</h2>



<figure class="wp-block-image size-full is-resized"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/01/IMG_0165.jpg" alt="" class="wp-image-4" style="aspect-ratio:0.9930727454095393;width:663px;height:auto"/></figure>



<p><a href="https://www.elecrow.com/crowpi-compact-raspberry-pi-educational-kit.html">Elecrowの公式サイト</a>から購入したCrowPi。注文から到着までは7日間でした。購入したタイミングでは5ドルオフのクーポンが配布されており、送料込みで約36,000円。価格は購入時の為替レートによって前後します。CrowPiは<a href="https://ja.aliexpress.com/item/1005006958783387.html?spm=a2g0o.productlist.main.4.2434db28kXL4yS&amp;algo_pvid=48729ff9-d98b-4ac3-8916-f683819cf87d&amp;algo_exp_id=48729ff9-d98b-4ac3-8916-f683819cf87d-3&amp;pdp_ext_f=%7B%22order%22%3A%223%22%2C%22eval%22%3A%221%22%2C%22fromPage%22%3A%22search%22%7D&amp;pdp_npi=6%40dis%21JPY%2155053%2140170%21%21%21344.00%21251.00%21%402140ec5d17676441857174406e38c8%2112000038859699847%21sea%21JP%210%21ABX%211%210%21n_tag%3A-29910%3Bd%3A5c23aefc%3Bm03_new_user%3A-29895%3BpisId%3A5000000197845725&amp;curPageLogUid=6evfMaUbcAP5&amp;utparam-url=scene%3Asearch%7Cquery_from%3A%7Cx_object_id%3A1005006958783387%7C_p_origin_prod%3A">AliExpress</a>でも購入可能です。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2025/12/image.png" alt="" class="wp-image-4" style="width:315px;height:auto"/><figcaption class="wp-element-caption">出典：<a href="https://www.elecrow.com/crowpi-compact-raspberry-pi-educational-kit.html">CrowPi販売ページ</a></figcaption></figure>



<p>購入時にACアダプターの<span class="sbd-text-red">電源プラグの規格</span>を選択します。USプラグは日本のコンセントと形状が同じであるため、そのまま使用できます。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/01/IMG_0202.jpg" alt="" class="wp-image-4" style="aspect-ratio:1.374769844517185;width:430px;height:auto"/><figcaption class="wp-element-caption">付属のACアダプター（USプラグを選択）</figcaption></figure>



<h2 class="wp-block-heading">CrowPiの基本情報</h2>



<figure class="wp-block-image size-full"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/01/IMG_0181.jpg" alt="" class="wp-image-4"/></figure>



<p>CrowPiを手がけている<a href="https://www.elecrow.com/">Elecrow</a>は、中国・深圳を拠点に、電子工作やRaspberry Pi関連の製品を多く展開しています。</p>



<h3 class="wp-block-heading">ハードケース型デザインと作り</h3>



<figure class="wp-block-image size-full"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/01/pico-2.jpg" alt="" class="wp-image-4"/><figcaption class="wp-element-caption">Basic KitはRaspberry Pi本体が別売り</figcaption></figure>



<p>ハードケース型の筐体に9インチのタッチディスプレイや各種センサー、操作用の基板が組み込まれており、ケースを開いた状態で使う前提の構成になっています。</p>



<p>CrowPiには、<strong>Basic Kit</strong>と<strong>Advanced Kit</strong>の2種類があります。私が購入したBasic KitはRaspberry Pi本体が付属しない構成で、すでに本体を持っている人向けです。Advanced KitはRaspberry Pi 5（8GB）が同梱され、その分価格が上がります。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/01/IMG_0193.jpg" alt="" class="wp-image-4" style="aspect-ratio:1.006685142878544;width:465px;height:auto"/></figure>



<p>CrowPiで使用できるモデルは<a href="https://sozorablog.com/pi5/">Raspberry Pi 5</a>または<a href="https://sozorablog.com/raspberry-pi-4-revue/">Raspberry Pi 4</a>となっています。</p>



<h3 class="wp-block-heading">搭載されているパーツ</h3>



<figure class="wp-block-image size-full"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2025/12/image-1.jpg" alt="" class="wp-image-4"/><figcaption class="wp-element-caption">出典：<a href="https://www.elecrow.com/crowpi-compact-raspberry-pi-educational-kit.html">CrowPi販売ページ</a></figcaption></figure>



<p>ケース内には9インチのタッチディスプレイをはじめ、カメラ、LEDマトリクス、ブザー、各種ボタン、温度・湿度センサー、距離センサー、モーター制御系、ブレッドボードなどがまとめられています。</p>



<div class="wp-block-sbd-balloon sbd-balloon sbd-balloon--id-4 sbd-balloon--flat sbd-balloon--l sbd-balloon--green block-box"><div class="sbd-balloon__profile"><figure class="sbd-balloon__icon"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2021/09/アイコン.jpg" alt="そぞら" class="sbd-balloon__img"/></figure><div class="sbd-balloon__name">そぞら</div></div><div class="sbd-balloon__text-box sbd-inner-block-init">
<p>配線を個別に行わなくても、多くのセンサーや入出力デバイスをすぐ試せるよう設計されているのが特徴です。</p>
</div></div>



<figure class="wp-block-image size-full is-resized"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/01/IMG_0207.jpg" alt="" class="wp-image-4" style="aspect-ratio:0.9422476951659831;width:509px;height:auto"/><figcaption class="wp-element-caption">ステッピングモーターを動かしている様子</figcaption></figure>



<p>モーターなどの一部のパーツはCrowPi側の専用コネクタに挿して使用します。コネクタは向きを間違えて挿せない形状になっているため、接続で迷うことはありません。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/01/スクリーンショット-2026-01-06-18.10.01.jpg" alt="" class="wp-image-4" style="width:526px;height:auto"/><figcaption class="wp-element-caption">出典：<a href="https://www.elecrow.com/crowpi-compact-raspberry-pi-educational-kit.html">CrowPi販売ページ</a></figcaption></figure>



<p>本体のほかに、電源アダプターとOSを書き込んだmicroSDカードが付属しており、Raspberry Piを用意すればすぐに起動できます。加えて、モーター類やIRリモコン、RFIDカード、GPIOケーブルなど、Raspberry Piでの入出力や制御を試すための基本パーツがひと通りそろっています。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/01/IMG_0219.jpg" alt="" class="wp-image-4" style="aspect-ratio:1.2056561035232904;width:524px;height:auto"/></figure>



<p>ユーザーマニュアルは英語ですが、<a href="https://www.elecrow.com/download/product/SES14002K/CrowPi_User_Manual_New.pdf">PDF版</a>をダウンロードして<a href="https://translate.google.co.jp/?hl=ja&amp;sl=en&amp;tl=ja&amp;op=docs">Google翻訳</a>を利用すれば、日本語で内容を把握できます。</p>



<h2 class="wp-block-heading">使用開始までの準備</h2>



<figure class="wp-block-image size-full is-resized"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/01/IMG_0197-1.jpg" alt="" class="wp-image-4" style="width:466px;height:auto"/><figcaption class="wp-element-caption">付属のmicroSDカード（CrowPi用OS書き込み済）</figcaption></figure>



<p>CrowPiは付属のmicroSDカードをRaspberry Piにセットするだけで、そのまま起動して使い始めることができます。ただし私の環境では、付属カードを使った場合、Webページの表示や VNC操作、パッケージのインストールが非常に遅く感じられました。そこで付属のmicroSDカードにCrowPi専用OSイメージを書き直して起動したところ、動作が明らかに軽くなりました。</p>



<div class="wp-block-sbd-balloon sbd-balloon sbd-balloon--id-4 sbd-balloon--flat sbd-balloon--l sbd-balloon--green block-box"><div class="sbd-balloon__profile"><figure class="sbd-balloon__icon"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2021/09/アイコン.jpg" alt="そぞら" class="sbd-balloon__img"/></figure><div class="sbd-balloon__name">そぞら</div></div><div class="sbd-balloon__text-box sbd-inner-block-init">
<p><span class="sbd-text-red">まずは付属のmicroSDカードでそのまま起動し</span>、重さを感じた場合は、次の手順でOSイメージを書き直してみると良いと思います。</p>
</div></div>



<h3 class="wp-block-heading">CrowPi専用OSイメージをダウンロード</h3>



<figure class="wp-block-image size-full"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/01/スクリーンショット-2026-01-06-4.11.55.png" alt="" class="wp-image-4"/></figure>



<p>通常はこの手順を省略し、下の<a href="#microSD">microSDカードの取り付け</a>から始めて問題ありません。<span class="sbd-text-bg-yellow">OSを書き直す場合は</span>、<a href="https://drive.google.com/drive/u/0/folders/1omz8i4UVU-chItRekNViZEYqbhsLtCnn">公式サイト</a>からRaspberry Pi 5用イメージのファイルをPCにダウンロードします。</p>



<h3 class="wp-block-heading">microSDカードにOSイメージを書き込み</h3>



<p>PCにmicroSDカードをセットします。カードリーダーもキットに付属していました。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/01/IMG_0218.jpg" alt="" class="wp-image-4" style="aspect-ratio:1.16404304614252;width:349px;height:auto"/></figure>



<p><a href="https://www.raspberrypi.com/software/">Raspberry Pi Imager</a>というソフトを使って、microSDにOSイメージを書き込みます。OSの選択画面で、「カスタムイメージを使う」をクリック後して、ダウンロードしたimgファイルを選択します。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2025/12/スクリーンショット-2025-12-31-12.52.42.png" alt="" class="wp-image-4" style="width:498px;height:auto"/><figcaption class="wp-element-caption">Raspberry Pi Imagerの操作画面</figcaption></figure>



<p>OSイメージの書き込みは1時間かかりました。</p>



<h3 class="wp-block-heading" id="microSD">microSDカードの取り付け</h3>



<p>書き込みが完了したら、microSDをRaspberry Piにセットします。今回使用したのはRaspberry Pi 5の8GBモデルです。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/01/IMG_0198.jpg" alt="" class="wp-image-4" style="aspect-ratio:1.2369480683831482;width:463px;height:auto"/></figure>



<h3 class="wp-block-heading">Raspberry PiをCrowPiに取り付け</h3>



<p>Raspberry Piに電源やHDMIのケーブルを接続して、CrowPiに固定します。ドライバーはキットに付属しています。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/01/IMG_0199.jpg" alt="" class="wp-image-4" style="aspect-ratio:0.984651171309779;width:462px;height:auto"/></figure>



<p>キーボードとマウスUSBポートを接続。Basic Kitにはキーボードとマウスが付属しないので、手持ちのものを使用しました。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/01/IMG_0212.jpg" alt="" class="wp-image-4" style="aspect-ratio:0.9943953238873886;width:440px;height:auto"/></figure>



<p>フラットケーブルはGPIOピンへの取り付け前に、山折りに曲げておくと接続しやすいです。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/01/IMG_0200.jpg" alt="" class="wp-image-4" style="width:289px;height:auto"/></figure>



<h2 class="wp-block-heading">実際に動かしてみる</h2>



<p>ここからは、CrowPiを実際に起動し、基本的な使い方を一通り試していきます。</p>



<h3 class="wp-block-heading">電源を接続して起動</h3>



<figure class="wp-block-image size-full is-resized"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/01/IMG_0203.jpg" alt="" class="wp-image-4" style="aspect-ratio:0.8017508799140965;width:516px;height:auto"/></figure>



<p>CrowPiに電源ケーブルを接続すると、Raspberry Piやディスプレイを含むシステムが起動します。CrowPiの電源スイッチはありません。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/01/IMG_0204.jpg" alt="" class="wp-image-4" style="aspect-ratio:0.9287367839126529;width:579px;height:auto"/></figure>



<p>Raspberry Piが起動すると、ディスプレイにデスクトップ画面が表示され、すぐに操作を始められます。CrowPiを動かすためのソフトウェアは最初から入っており、必要な設定も済んだ状態になっていました。</p>



<h3 class="wp-block-heading">センサーやモジュールをPythonで操作する</h3>



<figure class="wp-block-image size-full"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/01/スクリーンショット-2026-01-07-18.37.42.png" alt="" class="wp-image-4"/><figcaption class="wp-element-caption">温湿度センサーから取得した数値を表示</figcaption></figure>



<p>まずはデモコードを動かして、ディスプレイやセンサーなどのデバイスを動かしてみましょう。<a href="https://www.elecrow.com/download/product/SES14002K/CrowPi_Python_Lessons_bookworm_version.pdf">公式チュートリアル</a>の通りに進めていけば問題ありませんが、以下の手順だとコマンド入力不要で簡単にプログラムを実行できます。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/01/pico-3.jpg" alt="" class="wp-image-4" style="width:526px;height:auto"/></figure>



<p>デスクトップの「CrowPi」フォルダを開いて「Examples」を開きます。</p>



<p>「Examples」には各デバイスを動かすための基本的なコードが、あらかじめ保存されています。ファイル名を見れば、どのデバイス用のコードかがわかりようになっています。</p>



<h4 class="wp-block-heading">マトリクスLEDの動作確認</h4>



<figure class="wp-block-image size-full is-resized"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/01/pico-2-1.jpg" alt="" class="wp-image-4" style="width:476px;height:auto"/></figure>



<p>ここでは例として「matrix_demo.py」（マトリクスLEDのデモコード）を右クリックして、Thonnyで開きます。ThonnyはPython初心者向けに作られた統合開発環境で、コードの編集と実行を一つの画面で行えます。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/01/pico-4.jpg" alt="" class="wp-image-4" style="width:491px;height:auto"/></figure>



<p>実行ボタンを押すと、マトリクスLEDに「Hello World」がスクロール表示されました。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/01/1v6uw-cq1pf.gif" alt="" class="wp-image-4" style="width:184px;height:auto"/></figure>



<p>使用する部品によっては、以下の物理スイッチの切り替えが必要なものもあります。これは、Raspberry Piが使える<a href="https://sozorablog.com/gpio_pinout/">GPIOピン</a>の数に限りがあり、複数の部品で同じピンを共有しているためです。</p>



<figure class="wp-block-image size-full"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/01/IMG_0215.jpg" alt="" class="wp-image-4"/></figure>



<h4 class="wp-block-heading">RFIDリーダーの動作確認</h4>



<p>RFIDリーダー（MFRC522）を使うと、カードやタグに書き込まれたIDの読み取りや、文字データの読み書きができます。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/01/IMG_0216.jpg" alt="" class="wp-image-4" style="aspect-ratio:1.3759987008769081;width:399px;height:auto"/></figure>



<p>デモコードを実行して、RFIDタグをリーダーに近づけます。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/01/IMG_0217.jpg" alt="" class="wp-image-4" style="aspect-ratio:1.0565633537076708;width:397px;height:auto"/></figure>



<p>読み取りに成功すると、タグのIDがThonnyのShell画面に表示されます。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2026/01/pico.png" alt="" class="wp-image-4" style="width:506px;height:auto"/></figure>



<p>RFIDは本来、通信や制御などの複雑な処理が必要な仕組みです。しかし、このプログラムでは、そうした面倒な処理をまとめて引き受けてくれる仕組み（ライブラリ）を使っているため、わずか<span class="sbd-text-bg-yellow">8行のコード</span>でタグの読み取りができ、すぐに動作を確認できます。</p>



<h4 class="wp-block-heading">RFIDリーダーの活用方法を模索</h4>



<p>この仕組みを応用して、RFIDタグをかざすことでCrowPiを使える<span class="sbd-text-bg-yellow">認証機能</span>を実装してみました。Raspberry Piの起動時にプログラムが自動で立ち上がるように設定し、RFIDタグ認証が成功したときだけデスクトップ画面が開く仕組みです。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="308" src="https://sozorablog.com/wp-content/uploads/2026/01/pico-1-5.jpg" alt="" class="wp-image-16250"/></figure>



<p>待機中の画面には映画「マトリックス」をイメージした動画を表示し、タグをかざすとサイバーパンク調の認証完了画面に切り替わります。このとき、7セグメントLEDやマトリクスLEDも同時に点灯させ、演出を盛り上げます。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="150" height="200" src="https://sozorablog.com/wp-content/uploads/2026/01/Videotogif.gif" alt="" class="wp-image-16332"/></figure>



<h3 class="wp-block-heading">Scratchでプログラミングもできる</h3>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="688" height="474" src="https://sozorablog.com/wp-content/uploads/2026/01/スクリーンショット-2026-01-07-16.17.15.jpg" alt="" class="wp-image-16209" style="width:454px;height:auto"/></figure>



<p>CrowPiはPythonだけでなく、Scratchを使ったプログラミングにも対応しています。画面上でブロックを組み合わせるだけなので、コードを書く必要はありません。操作は直感的で、プログラミングが初めてでも動かしやすいように設計されています。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="468" src="https://sozorablog.com/wp-content/uploads/2026/01/スクリーンショット-2026-01-07-16.24.45-1.jpg" alt="" class="wp-image-16211"/><figcaption class="wp-element-caption">ブザーを鳴らすプログラムを作成</figcaption></figure>



<p>ブザーが鳴る、LEDが光るといった動作を、画面を見ながら確認できます。処理の流れを視覚的に理解しやすく、「なぜ動いたのか」が分かりやすい点が特徴です。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="800" height="649" src="https://sozorablog.com/wp-content/uploads/2026/01/pico-1-3.jpg" alt="" class="wp-image-16214" style="width:516px;height:auto"/></figure>



<p>一方で、すべてのパーツをScratchで制御できるわけではありません。カメラを使った画像処理や、複雑な制御が必要なパーツは、Scratchでは扱えません。そうした処理はPython向けです。CrowPiは、Scratchで基礎を学び、必要に応じてPythonに進める構成になっています。</p>



<h3 class="wp-block-heading">マインクラフトでも遊べる</h3>



<p>CrowPiではRaspberry Pi向けに用意された<strong>Minecraft Pi Edition</strong>を使って遊ぶこともできます。Raspberry Piで快適に動作するよう調整された特別版で、シンプルな構成が特徴です。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="392" height="240" src="https://sozorablog.com/wp-content/uploads/2026/01/スクリーンショット-2026-01-06-5.57.48.png" alt="" class="wp-image-16152" style="width:392px;height:auto"/></figure>



<p>「Minecraft Pi」はスタートメニューのゲームから起動できます。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="800" height="500" src="https://sozorablog.com/wp-content/uploads/2026/01/スクリーンショット-2026-01-06-10.25.56.jpg" alt="" class="wp-image-16154" style="width:454px;height:auto"/></figure>



<p>Minecraft Pi EditionはPythonと連携できる点が特徴です。コードを書いてブロックを配置したり、ゲーム内の情報を取得したりできます。まずはゲームとして遊び、興味が出てきたらプログラミングにも踏み込める構成です。</p>



<h2 class="wp-block-heading">デモコードを応用して遊ぶ</h2>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="800" height="450" src="https://sozorablog.com/wp-content/uploads/2026/01/pico-1-1.jpg" alt="" class="wp-image-16140" style="width:708px;height:auto" srcset="https://sozorablog.com/wp-content/uploads/2026/01/pico-1-1.jpg 800w, https://sozorablog.com/wp-content/uploads/2026/01/pico-1-1-320x180.jpg 320w, https://sozorablog.com/wp-content/uploads/2026/01/pico-1-1-224x126.jpg 224w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>用意されているデモコードをそのまま動かすだけでなく、少し手を加えながら遊んでみます。</p>



<div class="wp-block-sbd-balloon sbd-balloon sbd-balloon--id-4 sbd-balloon--flat sbd-balloon--l sbd-balloon--green block-box"><div class="sbd-balloon__profile"><figure class="sbd-balloon__icon"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2021/09/アイコン.jpg" alt="そぞら" class="sbd-balloon__img"/></figure><div class="sbd-balloon__name">そぞら</div></div><div class="sbd-balloon__text-box sbd-inner-block-init">
<p>コードを組み合わせることで、独自の使い方を生み出すのが電子工作の醍醐味です。</p>
</div></div>



<p>ここでは、カメラで顔を検出し、その結果を複数の表示デバイスに同時に出す構成を試しました。</p>



<h3 class="wp-block-heading">顔認識した結果を表示デバイスで可視化</h3>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="800" height="365" src="https://sozorablog.com/wp-content/uploads/2025/09/pico-29-1.jpg" alt="" class="wp-image-15813" style="width:581px;height:auto"/></figure>



<p>以下のコマンドをターミナルで実行して、PythonからOpenCVという画像処理ライブラリを使えるようにします。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>sudo apt install python3-opencv</code></pre></div>



<p>OpenCVで顔認識などを行うための<strong> </strong>学習済みデータ一式をインストールします。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>sudo apt install -y opencv-data</code></pre></div>



<p>以下のプログラムはカメラ映像から顔を検出し、そのステータスを7セグメントLEDやLEDマトリクス、LCDに表示するものです。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-python" data-lang="Python"><code>import cv2
import smbus
from ht16k33segment_python import HT16K33Segment
from luma.led_matrix.device import max7219
from luma.core.interface.serial import spi, noop
from luma.core.legacy import show_message
from luma.core.legacy.font import proportional, CP437_FONT
import HD44780MCP
import MCP230XX
import threading
import time

# -----------------------------
# Haar Cascade configuration
# -----------------------------
HAAR_FILE = &quot;/usr/share/opencv4/haarcascades/haarcascade_frontalface_default.xml&quot;
cascade = cv2.CascadeClassifier(HAAR_FILE)

if cascade.empty():
    raise RuntimeError(&quot;Failed to load Haar Cascade XML file&quot;)

# -----------------------------
# 7-segment display (HT16K33) configuration
# -----------------------------
i2c = smbus.SMBus(1)
led = HT16K33Segment(i2c)
led.set_brightness(10)

# Initialize MCP
i2cAddr = 0x21
MCP = MCP230XX.MCP230XX(&#39;MCP23008&#39;, i2cAddr)

# Backlight ON
blPin = 7
MCP.set_mode(blPin, &#39;output&#39;)
MCP.output(blPin, True)

# Initialize LCD (16x2)
LCD = HD44780MCP.HD44780(MCP, 1, -1, 2, [3,4,5,6], rows = 2, characters = 16, mode = 0, font = 0)

LCD.clear_display()
LCD.cursor(False)

def display_count(value):
    &quot;&quot;&quot;Display a count value (0?9999) on the 7-segment LED.&quot;&quot;&quot;
    value = max(0, min(9999, value))
    bcd = int(str(value), 16)

    led.set_number((bcd & 0xF000) &gt;&gt; 12, 0)
    led.set_number((bcd & 0x0F00) &gt;&gt; 8, 1)
    led.set_number((bcd & 0x00F0) &gt;&gt; 4, 2)
    led.set_number((bcd & 0x000F), 3)
    led.update()
    
def show_detect_message():
    &quot;&quot;&quot;Show &#39;detect&#39; message on MAX7219 LED matrix.&quot;&quot;&quot;
    serial = spi(port=0, device=1, gpio=noop())
    device = max7219(
        serial,
        cascaded=1,
        block_orientation=90,
        rotate=0
    )

    show_message(
        device,
        &quot;detect&quot;,
        fill=&quot;white&quot;,
        font=proportional(CP437_FONT),
        scroll_delay=0.05
    )    

def lcd_show_detect():
    LCD.clear_display()
    LCD.set_cursor(0, 0)
    LCD.display_string(&quot;detect!&quot;)

# -----------------------------
# Camera configuration
# -----------------------------
cap = cv2.VideoCapture(0)
cap.set(cv2.CAP_PROP_FOURCC, cv2.VideoWriter_fourcc(*&#39;MJPG&#39;))
cap.set(cv2.CAP_PROP_FRAME_WIDTH, 800)
cap.set(cv2.CAP_PROP_FRAME_HEIGHT, 600)

detect_count = 0
prev_detected = False
lcd_active = False

cooldown_frames = 20
cooldown_counter = 0

display_count(detect_count)

# -----------------------------
# Main loop
# -----------------------------
while True:
    ret, frame = cap.read()
    if not ret:
        break

    gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)

    faces = cascade.detectMultiScale(
        gray,
        scaleFactor=1.2,
        minNeighbors=5,
        minSize=(80, 80)
    )

    detected = len(faces) &gt; 0

    # Case 1: detection starts (False -&gt; True) and cooldown is over
    if detected and not prev_detected and cooldown_counter == 0:
        detect_count += 1
        display_count(detect_count)     # 7-segment update
        lcd_show_detect()               # LCD update
        #lcd_active = True
        # Run MAX7219 message in a separate thread
        threading.Thread(
            target=show_detect_message,
            daemon=True
        ).start()            

    # Case 2: detection ends (True -&gt; False), start cooldown
    if not detected and prev_detected:
        cooldown_counter = cooldown_frames
        
    if cooldown_counter == 0 and not detected:
        LCD.clear_display()
        #lcd_active = False        

    # Decrease cooldown after detection has ended
    if cooldown_counter &gt; 0:
        cooldown_counter -= 1

    prev_detected = detected

    for (x, y, w, h) in faces:
        cv2.rectangle(frame, (x, y), (x + w, y + h), (0, 0, 255), 2)

    cv2.imshow(&quot;Face Detection Counter&quot;, frame)

    if cv2.waitKey(1) & 0xFF == ord(&quot;q&quot;):
        break

# -----------------------------
# Cleanup
# -----------------------------
cap.release()
cv2.destroyAllWindows()
led.clear()
led.update()
</code></pre></div>



<p>コードを実行するとウィンドウにはカメラ映像が映し出され、検出された顔には赤い枠が描画されます。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="800" height="450" src="https://sozorablog.com/wp-content/uploads/2026/01/pico.jpg" alt="" class="wp-image-16118" style="width:452px;height:auto" srcset="https://sozorablog.com/wp-content/uploads/2026/01/pico.jpg 800w, https://sozorablog.com/wp-content/uploads/2026/01/pico-320x180.jpg 320w, https://sozorablog.com/wp-content/uploads/2026/01/pico-224x126.jpg 224w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>顔が検出された回数を数え、その数値を7セグメントLEDに表示します。さらに、顔を検出した瞬間には、LCDに「detect!」という文字を表示し、LEDマトリクスには「detect」という文字が流れるようにしています。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="800" height="409" src="https://sozorablog.com/wp-content/uploads/2026/01/pico-1.jpg" alt="" class="wp-image-16139" style="width:800px;height:auto"/></figure>



<p>同じ顔を連続して検出した場合に回数が増えすぎないよう、少し待ち時間を入れる工夫もしています。</p>



<p>画像処理の結果を複数の表示方法で見せることで、「認識した情報をどう表現するか」まで踏み込めるのが面白い点です。デモコードを組み合わせることで、CrowPiを使った遊び方の幅が広がります。</p>



<h2 class="wp-block-heading">CrowPiはどんな人向けか</h2>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="3018" height="3175" src="https://sozorablog.com/wp-content/uploads/2026/01/IMG_0221.jpg" alt="" class="wp-image-16207" style="aspect-ratio:0.9505445929697999;width:452px;height:auto"/></figure>



<p>Raspberry Piや電子工作に興味はあるものの、</p>



<div class="wp-block-sbd-list"><ul class="sbd-list sbd-list-border"><li>何を買えばいいのか分からない</li><li>部品や配線の扱いが不安</li><li>プログラミングに自信がない</li></ul></div>



<p><br>といった理由で、これまで踏み出せなかった人に適しています。</p>



<p>ケースを開くと、何かすごいことができそうなワクワク感があり、実際に約20種類のパーツを手軽に動かすことができます。Raspberry Piの使い方に慣れるという意味でも有用です。</p>



<div class="wp-block-sbd-balloon sbd-balloon sbd-balloon--id-4 sbd-balloon--flat sbd-balloon--l sbd-balloon--green block-box"><div class="sbd-balloon__profile"><figure class="sbd-balloon__icon"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2021/09/アイコン.jpg" alt="そぞら" class="sbd-balloon__img"/></figure><div class="sbd-balloon__name">そぞら</div></div><div class="sbd-balloon__text-box sbd-inner-block-init">
<p>ただし、入門用としては<span class="sbd-text-red">価格が高め</span>なのは気になるところ。</p>
</div></div>



<p>パーツはあらかじめ固定されており、構成を自由に組み替えたり、発展させたりする余地は限られています。そのため、すでに電子工作に慣れていて、自分で部品を選び構成を考えたい人には向きません。</p>



<p>CrowPiはソフトウェアの設計やマニュアルのわかりやすさも含め、全体としてよく作り込まれている印象を受けました。コンセプトに惹かれる部分があれば、自分の用途に合うかを考えたうえで検討してみるとよいでしょう。</p>



<!-- START MoshimoAffiliateEasyLink -->
<script type="text/javascript">
(function(b,c,f,g,a,d,e){b.MoshimoAffiliateObject=a;
b[a]=b[a]||function(){arguments.currentScript=c.currentScript
||c.scripts[c.scripts.length-2];(b[a].q=b[a].q||[]).push(arguments)};
c.getElementById(a)||(d=c.createElement(f),d.src=g,
d.id=a,e=c.getElementsByTagName("body")[0],e.appendChild(d))})
(window,document,"script","//dn.msmstatic.com/site/cardlink/bundle.js?20220329","msmaflink");
msmaflink({"n":"ELECROW Raspberry Pi 5 8GBキット用 Pi 5 8GB シングルボードコンピューター付き Crowpi Pi 5 ケースキット 9インチディスプレイ付き Raspberry Pi 5 ラーニングプログラミングキット(8GB RAM)対応","b":"Elecrow","t":"","d":"https:\/\/m.media-amazon.com","c_p":"\/images\/I","p":["\/410FwKdoR5L._SL500_.jpg","\/51SgAgmc4HL._SL500_.jpg","\/51ZjF8UoB8L._SL500_.jpg","\/51jroFvN0LL._SL500_.jpg","\/51feD1Y3g7L._SL500_.jpg","\/41LJlUjd2YL._SL500_.jpg"],"u":{"u":"https:\/\/www.amazon.co.jp\/dp\/B0D4LPCKCF","t":"amazon","r_v":""},"v":"2.1","b_l":[{"id":1,"u_tx":"Amazonで見る","u_bc":"#f79256","u_url":"https:\/\/www.amazon.co.jp\/dp\/B0D4LPCKCF","a_id":3038653,"p_id":170,"pl_id":27060,"pc_id":185,"s_n":"amazon","u_so":1},{"id":2,"u_tx":"楽天市場で見る","u_bc":"#f76956","u_url":"https:\/\/search.rakuten.co.jp\/search\/mall\/ELECROW%20Raspberry%20Pi%205%208GB%E3%82%AD%E3%83%83%E3%83%88%E7%94%A8%20Pi%205%208GB%20%E3%82%B7%E3%83%B3%E3%82%B0%E3%83%AB%E3%83%9C%E3%83%BC%E3%83%89%E3%82%B3%E3%83%B3%E3%83%94%E3%83%A5%E3%83%BC%E3%82%BF%E3%83%BC%E4%BB%98%E3%81%8D%20Crowpi%20Pi%205%20%E3%82%B1%E3%83%BC%E3%82%B9%E3%82%AD%E3%83%83%E3%83%88%209%E3%82%A4%E3%83%B3%E3%83%81%E3%83%87%E3%82%A3%E3%82%B9%E3%83%97%E3%83%AC%E3%82%A4%E4%BB%98%E3%81%8D%20Raspberry%20Pi%205%20%E3%83%A9%E3%83%BC%E3%83%8B%E3%83%B3%E3%82%B0%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E3%82%AD%E3%83%83%E3%83%88(8GB%20RAM)%E5%AF%BE%E5%BF%9C\/","a_id":3038654,"p_id":54,"pl_id":27059,"pc_id":54,"s_n":"rakuten","u_so":2}],"eid":"U496C","s":"s"});
</script>
<div id="msmaflink-U496C">リンク</div>
<!-- MoshimoAffiliateEasyLink END -->



<p><br><br><br><br></p>
]]></content:encoded>
					
					<wfw:commentRss>https://sozorablog.com/crowpi/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Touch Display 2【レビュー】手軽さと拡張性を備えた公式ディスプレイ</title>
		<link>https://sozorablog.com/touch-display-2/</link>
					<comments>https://sozorablog.com/touch-display-2/#respond</comments>
		
		<dc:creator><![CDATA[そぞら]]></dc:creator>
		<pubDate>Fri, 08 Nov 2024 14:46:57 +0000</pubDate>
				<category><![CDATA[Raspberry Pi]]></category>
		<category><![CDATA[関連製品]]></category>
		<guid isPermaLink="false">https://sozorablog.com/?p=13251</guid>

					<description><![CDATA[Raspberry Pi Touch Displayの後継モデルとして登場したTouch Display 2。キーボードやマウスを使わず、指先だけで直感的に操作できるRaspberry Pi公式ディスプレイです。 5イン [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p><a href="https://www.switch-science.com/products/9588">Raspberry Pi Touch Display</a>の後継モデルとして登場した<a href="https://www.raspberrypi.com/products/touch-display-2/">Touch Display 2</a>。キーボードやマウスを使わず、指先だけで直感的に操作できるRaspberry Pi公式ディスプレイです。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="800" height="800" src="https://sozorablog.com/wp-content/uploads/2024/11/IMG_9560.jpeg" alt="" class="wp-image-15724" style="width:453px;height:auto"/><figcaption class="wp-element-caption">5インチモデル</figcaption></figure>



<p>5インチと7インチの2種類があり、いずれも背面に<a href="https://sozorablog.com/raspberry-pi/">Raspberry Pi</a>の基板を取り付けて使用します。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="800" height="637" src="https://sozorablog.com/wp-content/uploads/2024/11/IMG_9561.jpeg" alt="" class="wp-image-15726" style="width:457px;height:auto"/><figcaption class="wp-element-caption">5インチモデルの背面</figcaption></figure>



<p>本記事では両モデルをレビューしますが、7インチモデルは<a href="https://www.raspberrypi.com/">Raspberry Pi財団</a>から製品を提供いただいています。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="800" height="602" src="https://sozorablog.com/wp-content/uploads/2024/11/IMG_8015.jpeg" alt="" class="wp-image-13331" style="width:453px;height:auto"/><figcaption class="wp-element-caption">7インチモデル</figcaption></figure>



<p>記事の後半では、このディスプレイを活用した情報表示用サイネージの作成方法も紹介しています。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="800" height="655" src="https://sozorablog.com/wp-content/uploads/2024/11/IMG_8001.jpeg" alt="" class="wp-image-13358" style="width:452px;height:auto"/><figcaption class="wp-element-caption">7インチモデルに自作スタンドを取り付けて情報表示用サイネージとして活用</figcaption></figure>



<h2 class="wp-block-heading">Touch Display 2のスペック</h2>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="800" height="747" src="https://sozorablog.com/wp-content/uploads/2024/11/pico-2025-08-22T091629.563.jpg" alt="" class="wp-image-15708" style="width:454px;height:auto"/><figcaption class="wp-element-caption">画面サイズの比較</figcaption></figure>



<p>Touch Display 2には5インチと7インチの2種類がありますが、どちらも画面サイズ以外の仕様や使い方はほぼ同じです。</p>



<figure class="wp-block-table wp-block-sbd-table wp-block-sbd-table-vertical"><table><thead><tr><th>ディスプレイサイズ</th><th>5インチ</th><th>7インチ</th></tr></thead><tbody><tr><td>解像度</td><td>1280 x 720</td><td>1280 x 720</td></tr><tr><td>視野角</td><td>85°</td><td>85°</td></tr><tr><td>画面有効エリア</td><td>110.4 mm × 62.1 mm</td><td>155 mm x 88 mm</td></tr><tr><td>サイズ</td><td>143.5 mm（W） x 92 mm（L） x 15 mm（H）</td><td>189.3 mm（W） ×120.2 mm （L） × 15 mm（H）</td></tr><tr><td>重さ</td><td>143g</td><td>248g</td></tr><tr><td>価格</td><td><a href="https://raspberry-pi.ksyic.com/main/index/pdp.id/1218/pdp.open/1218/">KSY</a>：7,480円<br><a href="https://www.switch-science.com/products/10672">スイッチサイエンス</a>：8,250円</td><td><a href="https://raspberry-pi.ksyic.com/main/index/pdp.id/1104/pdp.open/1104/">KSY</a>：12,100円<br><a href="https://www.switch-science.com/products/9940?variant=44095651020998&amp;country=JP&amp;currency=JPY&amp;utm_medium=product_sync&amp;utm_source=google&amp;utm_content=sag_organic&amp;utm_campaign=sag_organic&amp;srsltid=AfmBOoovvOxMeffGR2U8aZCAa3k0jTAkm2DZN6x2pbkIghYTWIiOr1VJ6lU">スイッチサイエンス</a>：13,090円</td></tr></tbody></table></figure>



<p>5インチと7インチの両モデルに、1280 x 720のフルカラー静電容量式タッチスクリーンを採用しています。前モデルの800 x 480と比較して、解像度が大幅に向上しました。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="800" height="692" src="https://sozorablog.com/wp-content/uploads/2024/11/IMG_9556.jpeg" alt="" class="wp-image-15727" style="width:471px;height:auto"/><figcaption class="wp-element-caption">5インチモデル</figcaption></figure>



<p>5インチモデルは画面が小さいため、タッチ操作では細かなUIが押しにくく感じることがあります。快適に操作したいなら7インチモデルが適しています。マウス併用で、コンパクトさやコスパを重視するなら5インチモデルが便利です。</p>



<h2 class="wp-block-heading">開封</h2>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="800" height="674" src="https://sozorablog.com/wp-content/uploads/2024/11/Touch_Display_2_4.jpg" alt="" class="wp-image-13261" style="width:840px;height:auto"/><figcaption class="wp-element-caption">7インチモデルの箱</figcaption></figure>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="800" height="717" src="https://sozorablog.com/wp-content/uploads/2024/11/IMG_8007.jpeg" alt="" class="wp-image-13322" style="width:470px;height:auto"/><figcaption class="wp-element-caption">7インチモデル</figcaption></figure>



<p>ディスプレイ本体の重さは5インチが143g、7インチが248gです。バッテリーは内蔵していません。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="800" height="661" src="https://sozorablog.com/wp-content/uploads/2024/11/Touch_Display_2_5.jpg" alt="" class="wp-image-13262" style="width:839px;height:auto"/><figcaption class="wp-element-caption">7インチモデルの背面</figcaption></figure>



<p>裏面にRaspberry Piを取り付けます。<span class="sbd-text-red">Zeroシリーズ以外</span>でDSIポートを持つ全モデルに対応しているようです。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="800" height="641" src="https://sozorablog.com/wp-content/uploads/2024/11/Touch_Display_2_6.jpg" alt="" class="wp-image-13263" style="width:840px;height:auto"/><figcaption class="wp-element-caption">付属品は5インチ、7インチで共通</figcaption></figure>



<p>ディスプレイ以外の付属品は以下の通りです。</p>



<div class="wp-block-sbd-list"><ul class="sbd-list sbd-list-border"><li>FFC（Flat Flexible Cable）</li><li>電源ケーブル</li><li>8×M2.5ネジ</li></ul></div>



<p>FFC（Flat Flexible Cable）は２種類付いています。これはRaspberry Piのモデルに合わせた接続を可能にするためです。Raspberry Pi 5では22ピンから15ピンに変換するFFCを使用。他のモデルには15ピン同士のFFCを使用します。</p>



<h2 class="wp-block-heading">準備</h2>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="619" src="https://sozorablog.com/wp-content/uploads/2024/06/IMG_7008.jpeg" alt="" class="wp-image-12567"/></figure>



<p>今回は<a href="https://sozorablog.com/pi5/">Raspberry Pi 5</a>をTouch Display 2に取り付けて使用しました。</p>



<p>Raspberry Pi OSは、2024/11/6時点で最新のバージョンを使用しています。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="502" src="https://sozorablog.com/wp-content/uploads/2024/11/Touch_Display_2_12.jpg" alt="" class="wp-image-13275"/></figure>



<p>OSのインストール方法の詳細は、<a href="https://sozorablog.com/raspberrypi_initial_setting/">OSインストールから初期設定まで｜ラズベリーパイ セットアップ手順のすべて</a>をご覧ください。新たにOSのインストールをする場合は、Wi-Fi接続などの初期設定を済ませておきます。</p>



<h2 class="wp-block-heading">取り付け</h2>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="800" height="549" src="https://sozorablog.com/wp-content/uploads/2024/11/Touch_Display_2_7.jpg" alt="" class="wp-image-13264" style="width:840px;height:auto"/><figcaption class="wp-element-caption">7インチモデル</figcaption></figure>



<p>電源コネクタをディスプレイの裏面側に差し込みます。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="800" height="458" src="https://sozorablog.com/wp-content/uploads/2024/11/Touch_Display_2_8.jpg" alt="" class="wp-image-13266" style="width:840px;height:auto"/><figcaption class="wp-element-caption">Raspberry Pi 5 用のFFC</figcaption></figure>



<p>付属のFFCをディスプレイに接続します。Raspberry Pi 5 用は両端の幅が異なるタイプを使います。両端の幅が同じタイプは Raspberry Pi 5 以外のモデル用です。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="800" height="532" src="https://sozorablog.com/wp-content/uploads/2024/11/Touch_Display_2_9.jpg" alt="" class="wp-image-13267" style="width:840px;height:auto"/><figcaption class="wp-element-caption">7インチモデル</figcaption></figure>



<p>Raspberry Pi 5を取り付けます。このとき、microSDカードは先にセットしておくと安心です。ディスプレイに固定すると出し入れがしづらくなります。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="800" height="545" src="https://sozorablog.com/wp-content/uploads/2024/11/Touch_Display_2_11.jpg" alt="" class="wp-image-13270" style="width:840px;height:auto"/><figcaption class="wp-element-caption">7インチモデル</figcaption></figure>



<p>FFCをラズパイ側に取り付けます。DSIポートが2か所ありますが、どちらに差し込んでも使用できました。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="800" height="535" src="https://sozorablog.com/wp-content/uploads/2024/11/Touch_Display_2_10.jpg" alt="" class="wp-image-13269" style="width:840px;height:auto"/><figcaption class="wp-element-caption">7インチモデル</figcaption></figure>



<p>電源ケーブルをRaspberry Piの5VとGNDのピンに差し込みます。ディスプレイはこのピンから給電されるため、<span class="sbd-text-red">追加の電源は必要ありません</span>。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="800" height="468" src="https://sozorablog.com/wp-content/uploads/2024/11/IMG_8016.jpeg" alt="" class="wp-image-13333" style="width:840px;height:auto"/><figcaption class="wp-element-caption">7インチモデル</figcaption></figure>



<p>Touch Display 2自体は、わずか15mmの厚みですが、ラズパイ本体を取り付けると32ｍｍになりました。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="800" height="454" src="https://sozorablog.com/wp-content/uploads/2024/11/IMG_8010.jpeg" alt="" class="wp-image-13330" style="width:840px;height:auto" srcset="https://sozorablog.com/wp-content/uploads/2024/11/IMG_8010.jpeg 800w, https://sozorablog.com/wp-content/uploads/2024/11/IMG_8010-224x126.jpeg 224w" sizes="(max-width: 800px) 100vw, 800px" /><figcaption class="wp-element-caption">7インチモデル</figcaption></figure>



<p>公式パーツである<a href="https://www.switch-science.com/products/9253?_pos=1&amp;_sid=c4d745b8a&amp;_ss=r">アクティブクーラ</a>ーも取り付けて使用できます。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="800" height="657" src="https://sozorablog.com/wp-content/uploads/2024/11/Touch_Display_2_2.jpg" alt="" class="wp-image-13260" style="width:840px;height:auto"/><figcaption class="wp-element-caption">7インチモデル</figcaption></figure>



<p>取り付けが完了し、USB電源ケーブルを差し込んだ状態。基板むき出しの状態で使用するのは心もとないので、できれば保護カバーが欲しいところです。</p>



<p>試しに<a href="https://www.switch-science.com/products/9251?pr_prod_strat=e5_desc&amp;pr_rec_id=8b28df634&amp;pr_rec_pid=7821219397830&amp;pr_ref_pid=7821219463366&amp;pr_seq=uniform">Raspberry Pi 5用公式ケース</a>を取り付けてみました。別途「8x M2.5ネジ」を4本用意すれば、ラズパイ本体とケースを一緒に固定できます。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="622" src="https://sozorablog.com/wp-content/uploads/2024/11/IMG_8011.jpeg" alt="" class="wp-image-13329"/><figcaption class="wp-element-caption">7インチモデル</figcaption></figure>



<p>ケースのフタ部分はフラットケーブルがあり、取り付け不可でした。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="533" src="https://sozorablog.com/wp-content/uploads/2024/11/IMG_8014.jpeg" alt="" class="wp-image-13327"/><figcaption class="wp-element-caption">7インチモデル</figcaption></figure>



<p>デスクにおいて使用する際に安定感が増します。ただ、ケースの厚みがやや気になります。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="757" src="https://sozorablog.com/wp-content/uploads/2024/11/IMG_8012.jpeg" alt="" class="wp-image-13328"/><figcaption class="wp-element-caption">7インチモデル</figcaption></figure>



<p>ケース部分を握ることで、手持ちで使いやすくなりましたが、見た目はあまり洗練されていません。</p>



<p>Touch Display 2（7インチ）に対応したRaspberry Pi 5専用ケースも市販されているので、あわせて検討すると良いでしょう。</p>



<!-- START MoshimoAffiliateEasyLink -->
<script type="text/javascript">
(function(b,c,f,g,a,d,e){b.MoshimoAffiliateObject=a;
b[a]=b[a]||function(){arguments.currentScript=c.currentScript
||c.scripts[c.scripts.length-2];(b[a].q=b[a].q||[]).push(arguments)};
c.getElementById(a)||(d=c.createElement(f),d.src=g,
d.id=a,e=c.getElementsByTagName("body")[0],e.appendChild(d))})
(window,document,"script","//dn.msmstatic.com/site/cardlink/bundle.js?20220329","msmaflink");
msmaflink({"n":"Waveshare保護ケース、RPi 7インチタッチディスプレイ2とRaspberry Pi 5、複数の7インチスクリーンと互換性があり、Raspberry Pi帽子の取り付けをサポート、予約済みのリッチインターフェイス。","b":"WaveShare","t":"PI5-CASE-TD2","d":"https:\/\/m.media-amazon.com","c_p":"\/images\/I","p":["\/417xPr7irqL._SL500_.jpg","\/41R0gCkLuPL._SL500_.jpg","\/412-3MlPeZL._SL500_.jpg","\/41ZaTVJM9XL._SL500_.jpg","\/51cH5Mz5KAL._SL500_.jpg","\/41Ko4qk6KML._SL500_.jpg"],"u":{"u":"https:\/\/www.amazon.co.jp\/dp\/B0F99G2GND","t":"amazon","r_v":""},"v":"2.1","b_l":[{"id":1,"u_tx":"Amazonで見る","u_bc":"#f79256","u_url":"https:\/\/www.amazon.co.jp\/dp\/B0F99G2GND","a_id":3038653,"p_id":170,"pl_id":27060,"pc_id":185,"s_n":"amazon","u_so":1},{"id":4,"u_tx":"楽天市場で見る","u_bc":"#f76956","u_url":"https:\/\/search.rakuten.co.jp\/search\/mall\/Waveshare%E4%BF%9D%E8%AD%B7%E3%82%B1%E3%83%BC%E3%82%B9%E3%80%81RPi%207%E3%82%A4%E3%83%B3%E3%83%81%E3%82%BF%E3%83%83%E3%83%81%E3%83%87%E3%82%A3%E3%82%B9%E3%83%97%E3%83%AC%E3%82%A42%E3%81%A8Raspberry%20Pi%205%E3%80%81%E8%A4%87%E6%95%B0%E3%81%AE7%E3%82%A4%E3%83%B3%E3%83%81%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%BC%E3%83%B3%E3%81%A8%E4%BA%92%E6%8F%9B%E6%80%A7%E3%81%8C%E3%81%82%E3%82%8A%E3%80%81Raspberry%20Pi%E5%B8%BD%E5%AD%90%E3%81%AE%E5%8F%96%E3%82%8A%E4%BB%98%E3%81%91%E3%82%92%E3%82%B5%E3%83%9D%E3%83%BC%E3%83%88%E3%80%81%E4%BA%88%E7%B4%84%E6%B8%88%E3%81%BF%E3%81%AE%E3%83%AA%E3%83%83%E3%83%81%E3%82%A4%E3%83%B3%E3%82%BF%E3%83%BC%E3%83%95%E3%82%A7%E3%82%A4%E3%82%B9%E3%80%82\/","a_id":3038654,"p_id":54,"pl_id":27059,"pc_id":54,"s_n":"rakuten","u_so":2}],"eid":"OTkoU","s":"s"});
</script>
<div id="msmaflink-OTkoU">リンク</div>
<!-- MoshimoAffiliateEasyLink END -->



<h2 class="wp-block-heading">起動</h2>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="708" src="https://sozorablog.com/wp-content/uploads/2024/11/Touch_Display_2_1.jpg" alt="" class="wp-image-13257"/><figcaption class="wp-element-caption">7インチモデル</figcaption></figure>



<p>ソフトウェアの特別な設定は必要ありません。アダプターからRaspberry Piに給電すれば、自動的に画面が表示され、タッチパネルもそのまま利用できます。</p>



<h3 class="wp-block-heading">画面の向きを変更する</h3>



<p>画面の向きは設定により変更できます。メニューを開き「設定」、「Screen Configuration」の順にタップします。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="690" src="https://sozorablog.com/wp-content/uploads/2024/11/pico-89.jpg" alt="" class="wp-image-13296"/></figure>



<p>「Screens」をタップします。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="800" height="647" src="https://sozorablog.com/wp-content/uploads/2024/11/pico-90.jpg" alt="" class="wp-image-13298" style="width:506px;height:auto"/></figure>



<p>「DSI-2」、「向き」の順にタップし、向きを選択します。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="800" height="889" src="https://sozorablog.com/wp-content/uploads/2024/11/pico-91.png" alt="" class="wp-image-13299" style="width:506px;height:auto"/></figure>



<p>「Apply」をタップします。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="800" height="692" src="https://sozorablog.com/wp-content/uploads/2024/11/pico-92.png" alt="" class="wp-image-13300" style="width:506px;height:auto"/></figure>



<p>10秒以内にOKをタップすると、画面の向きが切り替わります。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="800" height="691" src="https://sozorablog.com/wp-content/uploads/2024/11/pico-93.png" alt="" class="wp-image-13302" style="width:495px;height:auto"/></figure>



<p>「Brightness」の設定では、画面の明るさの変更も可能です。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="413" height="482" src="https://sozorablog.com/wp-content/uploads/2024/11/Touch_Display_2_17.png" alt="" class="wp-image-13297"/></figure>



<h3 class="wp-block-heading">文字入力も可能</h3>



<p>文字入力ではスクリーンキーボードを利用可能です。スクリーンキーボードを表示するには、画面右上のキーボードのアイコンをタップします。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="450" src="https://sozorablog.com/wp-content/uploads/2024/11/pico-94.jpg" alt="" class="wp-image-13303" srcset="https://sozorablog.com/wp-content/uploads/2024/11/pico-94.jpg 800w, https://sozorablog.com/wp-content/uploads/2024/11/pico-94-320x180.jpg 320w, https://sozorablog.com/wp-content/uploads/2024/11/pico-94-224x126.jpg 224w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>スクリーンを消す場合も、同じく画面右上のキーボードのアイコンをタップします。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="662" src="https://sozorablog.com/wp-content/uploads/2024/11/Touch_Display_2_3.jpg" alt="" class="wp-image-13259"/><figcaption class="wp-element-caption">7インチモデル</figcaption></figure>



<p>キーボードが表示されない場合は以下のコマンドを実行して、画面上で使えるスクリーンキーボード「squeekboard」をインストールします。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>sudo apt install squeekboard</code></pre></div>



<p>「fcitx5」と「mozc」をインストールすれば、ローマ字入力に切り替え可能です。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="450" src="https://sozorablog.com/wp-content/uploads/2024/11/image.png" alt="" class="wp-image-15697" srcset="https://sozorablog.com/wp-content/uploads/2024/11/image.png 800w, https://sozorablog.com/wp-content/uploads/2024/11/image-320x180.png 320w, https://sozorablog.com/wp-content/uploads/2024/11/image-224x126.png 224w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>Raspberry Piで日本語入力の設定をする方法は、<a href="https://sozorablog.com/raspberrypi_initial_setting/#toc14">https://sozorablog.com/raspberrypi_initial_setting/#toc14</a>で解説しています。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="623" src="https://sozorablog.com/wp-content/uploads/2024/11/IMG_9568.jpeg" alt="" class="wp-image-15737"/><figcaption class="wp-element-caption">5インチモデル</figcaption></figure>



<h2 class="wp-block-heading">【活用事例】インフォメーションパネル</h2>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="800" height="602" src="https://sozorablog.com/wp-content/uploads/2024/11/Touch_Display_2_13.jpg" alt="" class="wp-image-13283" style="width:840px;height:auto"/><figcaption class="wp-element-caption">7インチモデル</figcaption></figure>



<p>Touch Display 2の画面に時計、カレンダー、天気、ニュースを表示するインフォメーションパネルを作成しました。画面中央にレーダー風のアニメーションを配置し、文字の色もレーダーに合わせて統一しています。また常時表示しておけるようにスタンドも自作しています。</p>



<figure class="wp-block-embed is-type-rich is-provider-twitter wp-block-embed-twitter"><div class="wp-block-embed__wrapper">
<blockquote class="twitter-tweet" data-width="500" data-dnt="true"><p lang="ja" dir="ltr">Raspberry Pi 公式の「Touch Display 2」を使って、自分専用サイネージを作りました。 <a href="https://t.co/XpjoRXxY8j">pic.twitter.com/XpjoRXxY8j</a></p>&mdash; そぞら@Raspberry Pi 電子工作 (@sozoraemon) <a href="https://twitter.com/sozoraemon/status/1854842611498139736?ref_src=twsrc%5Etfw">November 8, 2024</a></blockquote><script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>
</div></figure>



<p>ここからは制作の過程を紹介していきます。</p>



<h3 class="wp-block-heading">スタンドの作成</h3>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="800" height="602" src="https://sozorablog.com/wp-content/uploads/2024/11/Touch_Display_2_14.png" alt="" class="wp-image-13284" style="width:840px;height:auto"/></figure>



<p><a href="https://sozorablog.com/ankermake-m5c/">3Dプリンター</a>で自分好みのデザインのスタンドを作成します。まずはCADソフトでスタンドを設計します。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="597" src="https://sozorablog.com/wp-content/uploads/2024/11/Touch_Display_2_16.jpg" alt="" class="wp-image-13287"/></figure>



<p>プリント時間は約3時間。Touch Display 2に付属のM2.5ネジ4本で固定する仕様にしました。寸法の調整をするため、2回作り直しています。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="800" height="669" src="https://sozorablog.com/wp-content/uploads/2024/11/IMG_7991.jpeg" alt="" class="wp-image-13365" style="width:805px;height:auto"/><figcaption class="wp-element-caption">7インチモデル</figcaption></figure>



<p>イメージ通りに仕上がりました。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="602" src="https://sozorablog.com/wp-content/uploads/2024/11/Touch_Display_2_15.jpg" alt="" class="wp-image-13286"/><figcaption class="wp-element-caption">7インチモデル</figcaption></figure>



<p>前面から電源のケーブルが目立たないように、L字型のアダプターを使用しました。</p>



<!-- START MoshimoAffiliateEasyLink -->
<script type="text/javascript">
(function(b,c,f,g,a,d,e){b.MoshimoAffiliateObject=a;
b[a]=b[a]||function(){arguments.currentScript=c.currentScript
||c.scripts[c.scripts.length-2];(b[a].q=b[a].q||[]).push(arguments)};
c.getElementById(a)||(d=c.createElement(f),d.src=g,
d.id=a,e=c.getElementsByTagName("body")[0],e.appendChild(d))})
(window,document,"script","//dn.msmstatic.com/site/cardlink/bundle.js?20220329","msmaflink");
msmaflink({"n":"usb変換アダプター usb c l字 タイプcアダプタ 2個セット 40Gbps高速転送 PD 100W\/5A急速充電 8K@60Hz映像出力 usb-c l字 タイプc l字アダプター USB Cコネクター ドライブレコーダー、Thunderbolt 3、Mac Book Pro、Nintendo Switch、Nexus 6P 5XなどのType Cデバイスに対応（メスオス 二番 二個)","b":"WYMECT","t":"Ｍ12","d":"https:\/\/m.media-amazon.com","c_p":"\/images\/I","p":["\/31ofjuKh-XL._SL500_.jpg","\/51BoAaJsZPL._SL500_.jpg","\/516vhV87SuL._SL500_.jpg","\/51yKLFOsjfL._SL500_.jpg","\/51JmqYR71kL._SL500_.jpg","\/512UT1wZvmL._SL500_.jpg","\/519ad-WvR7L._SL500_.jpg","\/414-2MdEUiL._SL500_.jpg","\/61hFq-5NlpL._SL500_.jpg"],"u":{"u":"https:\/\/www.amazon.co.jp\/dp\/B0BFWNR3KX","t":"amazon","r_v":""},"v":"2.1","b_l":[{"id":1,"u_tx":"Amazonで見る","u_bc":"#f79256","u_url":"https:\/\/www.amazon.co.jp\/dp\/B0BFWNR3KX","a_id":3038653,"p_id":170,"pl_id":27060,"pc_id":185,"s_n":"amazon","u_so":1},{"id":3,"u_tx":"楽天市場で見る","u_bc":"#f76956","u_url":"https:\/\/search.rakuten.co.jp\/search\/mall\/usb%E5%A4%89%E6%8F%9B%E3%82%A2%E3%83%80%E3%83%97%E3%82%BF%E3%83%BC%20usb%20c%20l%E5%AD%97%20%E3%82%BF%E3%82%A4%E3%83%97c%E3%82%A2%E3%83%80%E3%83%97%E3%82%BF%202%E5%80%8B%E3%82%BB%E3%83%83%E3%83%88%2040Gbps%E9%AB%98%E9%80%9F%E8%BB%A2%E9%80%81%20PD%20100W%2F5A%E6%80%A5%E9%80%9F%E5%85%85%E9%9B%BB%208K%4060Hz%E6%98%A0%E5%83%8F%E5%87%BA%E5%8A%9B%20usb-c%20l%E5%AD%97%20%E3%82%BF%E3%82%A4%E3%83%97c%20l%E5%AD%97%E3%82%A2%E3%83%80%E3%83%97%E3%82%BF%E3%83%BC%20USB%20C%E3%82%B3%E3%83%8D%E3%82%AF%E3%82%BF%E3%83%BC%20%E3%83%89%E3%83%A9%E3%82%A4%E3%83%96%E3%83%AC%E3%82%B3%E3%83%BC%E3%83%80%E3%83%BC%E3%80%81Thunderbolt%203%E3%80%81Mac%20Book%20Pro%E3%80%81Nintendo%20Switch%E3%80%81Nexus%206P%205X%E3%81%AA%E3%81%A9%E3%81%AEType%20C%E3%83%87%E3%83%90%E3%82%A4%E3%82%B9%E3%81%AB%E5%AF%BE%E5%BF%9C%EF%BC%88%E3%83%A1%E3%82%B9%E3%82%AA%E3%82%B9%20%E4%BA%8C%E7%95%AA%20%E4%BA%8C%E5%80%8B)\/","a_id":3038654,"p_id":54,"pl_id":27059,"pc_id":54,"s_n":"rakuten","u_so":2}],"eid":"Vzg5f","s":"s"});
</script>
<div id="msmaflink-Vzg5f">リンク</div>
<!-- MoshimoAffiliateEasyLink END -->



<h3 class="wp-block-heading">ソフトウェアの準備</h3>



<p>MagicMirror<sup>2</sup>という情報表示が可能なスマートミラーを作成するためのオープンソースソフトウェアを使用します。MagicMirror<sup>2</sup>を使えば、ミラーがなくてもクールな見た目のディスプレイ表示を作れます。</p>



<p>設定操作はタッチパネルでは難しいため、<a href="https://sozorablog.com/vnc/">VNC接続</a>やマウス・キーボードを使って行います。</p>



<h4 class="wp-block-heading">MagicMirror<sup>2</sup>のインストール</h4>



<p>ターミナルを開きます。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="800" height="415" src="https://sozorablog.com/wp-content/uploads/2024/02/mm3.jpg" alt="" class="wp-image-11712" style="width:840px;height:auto"/></figure>



<p>以下のコマンドを順に実行していきます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -</code></pre></div>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>sudo apt install -y nodejs</code></pre></div>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>git clone https://github.com/MichMich/MagicMirror</code></pre></div>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>cd MagicMirror/</code></pre></div>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>npm run install-mm</code></pre></div>



<h4 class="wp-block-heading">設定ファイルの作成</h4>



<p>config.jsを作成します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>nano config/config.js</code></pre></div>



<p>nanoエディタが開いたら、以下のコードを貼り付けて保存します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-js" data-lang="JavaScript"><code>let config = {
	address: &quot;localhost&quot;,	// Address to listen on, can be:
							// - &quot;localhost&quot;, &quot;127.0.0.1&quot;, &quot;::1&quot; to listen on loopback interface
							// - another specific IPv4/6 to listen on a specific interface
							// - &quot;0.0.0.0&quot;, &quot;::&quot; to listen on any interface
							// Default, when address config is left out or empty, is &quot;localhost&quot;
	port: 8080,
	basePath: &quot;/&quot;,	// The URL path where MagicMirrorﾂｲ is hosted. If you are using a Reverse proxy
									// you must set the sub path here. basePath must end with a /
	ipWhitelist: [&quot;127.0.0.1&quot;, &quot;::ffff:127.0.0.1&quot;, &quot;::1&quot;],	// Set [] to allow all IP addresses
									// or add a specific IPv4 of 192.168.1.5 :
									// [&quot;127.0.0.1&quot;, &quot;::ffff:127.0.0.1&quot;, &quot;::1&quot;, &quot;::ffff:192.168.1.5&quot;],
									// or IPv4 range of 192.168.3.0 --&gt; 192.168.3.15 use CIDR format :
									// [&quot;127.0.0.1&quot;, &quot;::ffff:127.0.0.1&quot;, &quot;::1&quot;, &quot;::ffff:192.168.3.0/28&quot;],

	useHttps: false,			// Support HTTPS or not, default &quot;false&quot; will use HTTP
	httpsPrivateKey: &quot;&quot;,	// HTTPS private key path, only require when useHttps is true
	httpsCertificate: &quot;&quot;,	// HTTPS Certificate path, only require when useHttps is true

	language: &quot;en&quot;,
	locale: &quot;en-US&quot;,
	logLevel: [&quot;INFO&quot;, &quot;LOG&quot;, &quot;WARN&quot;, &quot;ERROR&quot;], // Add &quot;DEBUG&quot; for even more logging
	timeFormat: 24,
	units: &quot;metric&quot;,

	modules: [
		{
			module: &quot;alert&quot;,
		},
		{
			module: &quot;updatenotification&quot;,
			position: &quot;top_bar&quot;
		},
		{
			module: &quot;clock&quot;,
			position: &quot;top_left&quot;
		},
		{
			module: &quot;calendar&quot;,
			header: &quot;Japanese Holidays&quot;,
			position: &quot;top_left&quot;,
			config: {
				calendars: [
					{
						fetchInterval: 7 * 24 * 60 * 60 * 1000,
						symbol: &quot;calendar-check&quot;,
						url: &quot;https://www.google.com/calendar/ical/ja.japanese%23holiday%40group.v.calendar.google.com/public/basic.ics&quot;
					}
				]
			}
		},
		{
			module: &quot;MMM-VideoLoop&quot;,
			position: &quot;middle_center&quot;, // Central position
			config: {
				videoPath: &quot;http://localhost:8081/radar.mp4&quot;
			}
		},
		{
			module: &quot;weather&quot;,
			position: &quot;top_right&quot;,
			config: {
				weatherProvider: &quot;openmeteo&quot;,
				type: &quot;current&quot;,
				lat: 35.6895,
				lon: 139.6917
			}
		},
		{
			module: &quot;weather&quot;,
			position: &quot;top_right&quot;,
			header: &quot;Weather Forecast&quot;,
			config: {
				weatherProvider: &quot;openmeteo&quot;,
				type: &quot;forecast&quot;,
				lat: 35.6895,
				lon: 139.6917
			}
		},
		{
			module: &quot;newsfeed&quot;,
			position: &quot;bottom_bar&quot;,
			config: {
				feeds: [
					{
						title: &quot;NHK news&quot;,
						url: &quot;https://www3.nhk.or.jp/rss/news/cat0.xml&quot;
					}
				],
				showSourceTitle: true,
				showPublishDate: true,
				broadcastNewsFeeds: true,
				broadcastNewsUpdates: true
			}
		},
	]
};

/*************** DO NOT EDIT THE LINE BELOW ***************/
if (typeof module !== &quot;undefined&quot;) { module.exports = config; }
</code></pre></div>



<p>nanoエディタでファイルを保存して終了するには、<code>Ctrl + O</code>を押して保存し、<code>Enter</code>を押してから、<code>Ctrl + X</code>で終了します。</p>



<p>このコードは、MagicMirrorの設定ファイルです。MagicMirrorでは<span class="sbd-text-bg-yellow">モジュール</span>という独立した機能を使用して表示内容を設定します。このモジュールごとに表示内容を設定でき、必要な情報を自由にカスタマイズして表示できます。</p>



<p>今回の表示内容は以下の通りです。</p>



<div class="wp-block-sbd-list"><ul class="sbd-list sbd-list-border"><li>alert・・・システムの通知や警告を表示するモジュール</li><li>updatenotification・・・MagicMirrorの更新情報をトップバーに表示するモジュール</li><li>clock・・・時刻を表示するモジュール</li><li>calendar・・・日本の祝日を表示するカレンダーモジュール</li><li>MMM-VideoLoop　動画をループ再生するモジュール</li><li>weather (current weather)　現在の天気情報を表示。緯度と経度から情報を取得。ここでは<span class="sbd-text-red">東京の緯度・経度</span>を設定</li><li>weather (weather forecast)　天気予報を表示するモジュール</li><li>newsfeed　下部にニュースフィードを表示するモジュール</li></ul></div>



<p><br></p>



<h4 class="wp-block-heading">レーダーアニメーション表示用モジュールを作成する</h4>



<p>レーダーの動画をループ再生するために、MMM-VideoLoopという名前のモジュールを作成します。</p>



<p>MagicMirrorのモジュールディレクトリに移動します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>cd modules</code></pre></div>



<p><code>MMM-VideoLoop</code>フォルダを作成します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>mkdir MMM-VideoLoop</code></pre></div>



<p><code>MMM-VideoLoop</code>フォルダに移動します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>cd MMM-VideoLoop</code></pre></div>



<p><code>MMM-VideoLoop.js</code>ファイルを作成して編集モードに入ります。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>nano MMM-VideoLoop.js</code></pre></div>



<p>nanoエディタが開いたら、以下のコードを貼り付けます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-js" data-lang="JavaScript"><code>Module.register(&quot;MMM-VideoLoop&quot;, {
    defaults: {
        videoPath: &quot;http://localhost:8081/radar.mp4&quot; //
    },

    getDom: function() {
        const wrapper = document.createElement(&quot;div&quot;);
        wrapper.style.textAlign = &quot;center&quot;;

        const video = document.createElement(&quot;video&quot;);
        video.src = this.config.videoPath;
        video.autoplay = true;
        video.loop = true;
        video.muted = true;
        video.style.width = &quot;100%&quot;;
        video.style.maxWidth = &quot;800px&quot;;

        video.onerror = () =&gt; {
            wrapper.innerText = &quot;Failed to load video. Please check the path.&quot;;
            console.error(&quot;Failed to load video:&quot;, this.config.videoPath);
        };

        wrapper.appendChild(video);
        return wrapper;
    }
});
</code></pre></div>



<p><br><br>このコードでは「MMM-VideoLoop」モジュールを定義し、指定されたURLから動画をループ再生する設定をしています。<code>videoPath</code>プロパティで動画のURLを設定し、<code>getDom</code>関数で動画要素を作成、表示します。</p>



<h4 class="wp-block-heading">デザインを調整する</h4>



<p>custom.cssを作成して、テキストの色や表示位置など、デザインの設定をします。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>cd</code></pre></div>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>nano /home/pi/MagicMirror/css/custom.css</code></pre></div>



<p>nanoエディタが開いたら、以下のコードを貼り付けて保存します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-css" data-lang="CSS"><code>/* Set all text to a more greenish yellow-green */
* {
    color: #7FFF00 !important; /* Chartreuse */
}

/* Adjust text for the weather module (specify further if necessary) */
.weather .bright,
.weather .dimmed,
.weather .normal,
.weather .small,
.weather .large {
    color: #7FFF00 !important;
}

/* Apply to other modules if text remains */
.clock .bright,
.clock .dimmed,
.calendar .event,
.compliments .compliment,
.newsfeed .newsfeed-title,
.newsfeed .newsfeed-source {
    color: #7FFF00 !important;
}
/* MMM-VideoLoop module to be placed at the back */
.MMM-VideoLoop {
    position: absolute;
    top: -5px;
    left: -110px;
    width: 120%;
    height: auto;
    z-index: 0; /* Set a low z-index to place it behind */
    pointer-events: none; /* Make sure it doesn&#39;t interfere with clicks */
    transform: scale(1.2);
}

/* Ensure other modules are above */
.module {
    position: relative;
    z-index: 10; /* Set higher z-index for other modules */
}
.calendar {
    position: relative !important;
    z-index: 120 !important;
</code></pre></div>



<p>このCSSコードは、MagicMirrorの画面デザインを調整するための設定です。まず、全体のテキスト色を黄緑色（#7FFF00）に変更します。次に、天気やカレンダー、ニュースフィードなど特定のモジュールのテキスト色も同じ黄緑色に設定しています。また、動画モジュール（MMM-VideoLoop）は画面の最背面に配置し、他のモジュールがその上に表示されるように<code>z-index</code>を調整しています。</p>



<h3 class="wp-block-heading">レーダー動画をダウンロードする</h3>



<p><br>回転するレーダーの動画は、<a href="https://pixabay.com/ja/videos/%E3%83%AC%E3%83%BC%E3%83%80%E3%83%BC-%E3%82%BD%E3%83%8A%E3%83%BC-ping-2420/">Pixabay</a>で公開されているものをダウンロードして使用します。Pixabayは著作権フリーの画像、動画、音声などを共有するサイトです。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="310" src="https://sozorablog.com/wp-content/uploads/2024/03/radar2.jpg" alt="" class="wp-image-12122"/><figcaption class="wp-element-caption">出典：<a href="https://pixabay.com/ja/videos/%E3%83%AC%E3%83%BC%E3%83%80%E3%83%BC-%E3%82%BD%E3%83%8A%E3%83%BC-ping-2420/">Pixabay</a></figcaption></figure>



<p>動画のサイズは640×360を選択します。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="473" height="425" src="https://sozorablog.com/wp-content/uploads/2024/03/radar1.png" alt="" class="wp-image-12123"/></figure>



<p>ダウンロードしたら、<span class="sbd-text-bg-yellow">ファイル名を「radar.mp4」に変更しておきます。</span>名前が違うと表示できません。</p>



<p>radar.mp4を<span class="sbd-text-red">/home/pi/MagicMirror</span>フォルダに移動します。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="800" height="450" src="https://sozorablog.com/wp-content/uploads/2024/11/pico-88.png" alt="" class="wp-image-13289" style="width:503px;height:auto" srcset="https://sozorablog.com/wp-content/uploads/2024/11/pico-88.png 800w, https://sozorablog.com/wp-content/uploads/2024/11/pico-88-320x180.png 320w, https://sozorablog.com/wp-content/uploads/2024/11/pico-88-224x126.png 224w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<h3 class="wp-block-heading">表示を起動する</h3>



<p>MagicMirrorディレクトリに移動します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>cd /home/pi/MagicMirror</code></pre></div>



<p>Pythonの簡易サーバーを立ち上げて、MagicMirrorに動画（radar.mp4）を提供します。最初はファイルのパスを直接指定して読み込もうとしましたが、うまくいきませんでした。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>python3 -m http.server 8081</code></pre></div>



<p>別のターミナルを開き、MagicMirrorを起動します。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="782" height="399" src="https://sozorablog.com/wp-content/uploads/2024/11/Touch_Display_2_18.png" alt="" class="wp-image-13305" style="width:841px;height:auto"/><figcaption class="wp-element-caption">ターミナルを2つ開く</figcaption></figure>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>cd MagicMirror/ && npm run start</code></pre></div>



<p>以下のように表示が開始されれば成功です。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="800" height="438" src="https://sozorablog.com/wp-content/uploads/2024/11/Touch_Display_2_19.jpg" alt="" class="wp-image-13307" style="width:840px;height:auto"/></figure>



<p>表示を中断するには、CtrlキーとQキーを同時に押します。</p>



<h2 class="wp-block-heading">まとめ</h2>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="642" src="https://sozorablog.com/wp-content/uploads/2024/11/Touch_Display_2_20.jpg" alt="" class="wp-image-13320"/><figcaption class="wp-element-caption">7インチモデル</figcaption></figure>



<p>Touch Display 2は簡単に取り付けられ、特別な設定不要ですぐに使用を始められる手軽さが魅力です。7インチモデルならデスクトップ画面のタッチ操作が快適に行える一方、Raspberry Piのコンパクトさを損なうこともありません。5インチモデルだと、スタートメニューを開く際やアプリを閉じる✕ボタンの操作など<span class="sbd-text-red">細かいUI操作が難しく感じました。</span></p>



<p>また、Raspberry Piがむき出しの状態になるため、保護用のカバーやスタンドを自作する必要がある点はデメリットです。タブレットのような使い心地を期待して購入すると、少し物足りなく感じるかもしれません。ただ、<span class="sbd-text-bg-yellow">カスタマイズの自由度が広がる</span>点においては、これもまた<span class="sbd-text-red">Raspberry Piらしさ</span>と言えるのかもしれません。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="800" height="647" src="https://sozorablog.com/wp-content/uploads/2024/11/IMG_9569.jpeg" alt="" class="wp-image-15739" style="width:840px;height:auto"/><figcaption class="wp-element-caption">3Dプリンターで自作したスタンド（5インチモデル）</figcaption></figure>



<p>以下の投稿では、Touch Display 2を使った3Dホログラム投影装置を紹介しています。</p>



<figure class="wp-block-embed is-type-rich is-provider-twitter wp-block-embed-twitter"><div class="wp-block-embed__wrapper">
<blockquote class="twitter-tweet" data-width="500" data-dnt="true"><p lang="ja" dir="ltr">Raspberry Pi Touch Display 2を使って、空中に浮かび上がる時計を作ってみた。 <a href="https://t.co/fzhYdOsG3d">pic.twitter.com/fzhYdOsG3d</a></p>&mdash; そぞら@Raspberry Pi 電子工作 (@sozoraemon) <a href="https://twitter.com/sozoraemon/status/1861356514000384199?ref_src=twsrc%5Etfw">November 26, 2024</a></blockquote><script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>
</div></figure>



<p>透明なプラスチック板（ダイソーで購入）を切り出して台形のパーツを4枚用意し、テープで組み立てるだけで、ディスプレイ上の映像が立体的に浮かび上がって見えます。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://sozorablog.com/touch-display-2/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>犬型ロボットPiDog【レビュー】Raspberry Piで作る未来のペット</title>
		<link>https://sozorablog.com/pidog/</link>
					<comments>https://sozorablog.com/pidog/#comments</comments>
		
		<dc:creator><![CDATA[そぞら]]></dc:creator>
		<pubDate>Sun, 04 Feb 2024 11:25:43 +0000</pubDate>
				<category><![CDATA[Raspberry Pi]]></category>
		<category><![CDATA[関連製品]]></category>
		<guid isPermaLink="false">https://sozorablog.com/?p=11505</guid>

					<description><![CDATA[Raspberry Piを買ったら、一度は作ってみたいのがロボット。でも、キットを探してみると、どれも似たり寄ったりで欲しいものが見つからないことも。 そんな中、SunFounderから犬型ロボットキット「PiDog」が [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p><a href="https://sozorablog.com/raspberry-pi/">Raspberry Pi</a>を買ったら、一度は作ってみたいのがロボット。でも、キットを探してみると、どれも似たり寄ったりで欲しいものが見つからないことも。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="536" src="https://sozorablog.com/wp-content/uploads/2024/01/pidog15.jpg" alt="" class="wp-image-11558"/></figure>



<p>そんな中、<a href="https://www.sunfounder.com/?ref=cDXZo4Vb">SunFounder</a>から犬型ロボットキット「PiDog」が新登場しました。PiDogは、Raspberry Piの可能性を広げ、未来のペットとして日常に新たな楽しさをもたらします。革新を追求するSunFounderが生み出した「新しい相棒」に注目です。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="188" height="213" src="https://sozorablog.com/wp-content/uploads/2024/01/pigog_tail.gif" alt="" class="wp-image-11613"/></figure>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="450" src="https://sozorablog.com/wp-content/uploads/2024/02/pidog49.jpg" alt="" class="wp-image-11671" srcset="https://sozorablog.com/wp-content/uploads/2024/02/pidog49.jpg 800w, https://sozorablog.com/wp-content/uploads/2024/02/pidog49-320x180.jpg 320w, https://sozorablog.com/wp-content/uploads/2024/02/pidog49-224x126.jpg 224w" sizes="(max-width: 800px) 100vw, 800px" /><figcaption class="wp-element-caption">PiDogの主要部品</figcaption></figure>



<!-- START MoshimoAffiliateEasyLink -->
<script type="text/javascript">
(function(b,c,f,g,a,d,e){b.MoshimoAffiliateObject=a;
b[a]=b[a]||function(){arguments.currentScript=c.currentScript
||c.scripts[c.scripts.length-2];(b[a].q=b[a].q||[]).push(arguments)};
c.getElementById(a)||(d=c.createElement(f),d.src=g,
d.id=a,e=c.getElementsByTagName("body")[0],e.appendChild(d))})
(window,document,"script","//dn.msmstatic.com/site/cardlink/bundle.js?20220329","msmaflink");
msmaflink({"n":"SunFounder PiDog ロボット犬キット for Raspberry Pi 4\/3B+\/3B\/Zero W, 歩行, セルフバランス, ボールトレース, 顔認識, 超音波, カメラ, バッテリー付属 （Raspberry Piは含まれていません）","b":"SUNFOUNDER","t":"Pidog","d":"https:\/\/m.media-amazon.com","c_p":"\/images\/I","p":["\/41W1M1afErL._SL500_.jpg","\/51LwGLv1AVL._SL500_.jpg","\/51myIe4TIgL._SL500_.jpg","\/51jbref7h0L._SL500_.jpg","\/61110TsjRoL._SL500_.jpg","\/51holtXUMhL._SL500_.jpg","\/51Q2EKns8xL._SL500_.jpg"],"u":{"u":"https:\/\/www.amazon.co.jp\/dp\/B0CGJF4SSC","t":"amazon","r_v":""},"v":"2.1","b_l":[{"id":1,"u_tx":"Amazonで見る","u_bc":"#f79256","u_url":"https:\/\/www.amazon.co.jp\/dp\/B0CGJF4SSC","a_id":3038653,"p_id":170,"pl_id":27060,"pc_id":185,"s_n":"amazon","u_so":1}],"eid":"f5Pt7","s":"s"});
</script>
<div id="msmaflink-f5Pt7">リンク</div>
<!-- MoshimoAffiliateEasyLink END -->



<div class="pb-compare-box" data-colset="1"><div class="pb-compare-box__head"><div class="pb-compare-box__head__l">メリット</div><div class="pb-compare-box__head__r">デメリット</div></div>
<div class="pb-compare-box__body">
<div class="pb-compare-box__body__l">
<ul class="pb-list -icon-dot"><li>愛着の湧くデザイン</li><li>癒されるかわいい動き</li><li>リアルな鳴き声が出せる</li><li>5種類のセンサー搭載</li><li>バッテリー付属</li><li>13種類のサンプルコードが動かせる</li><li>スマホからも操作可能</li></ul>
</div>



<div class="pb-compare-box__body__r">
<ul class="pb-list -icon-dot"><li>他製品より高額</li><li>部品点数が多い</li></ul>
</div>
</div>
</div>



<p>公式のプロモーション動画はこちらからご覧いただけます。</p>



<figure class="wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio"><div class="wp-block-embed__wrapper">
<iframe loading="lazy" title="SunFounder PiDog Robot Dog Kit for Raspberry Pi" width="500" height="281" src="https://www.youtube.com/embed/5nuhfxtredE?feature=oembed" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
</div></figure>



<div class="wp-block-sbd-background-block sbd-bg-color sbd-inner-block-init is-style-yellow">
<p>本記事は<a href="https://www.sunfounder.com/?ref=cDXZo4Vb">SUNFOUNDER</a>様から商品をご提供いただき作成しています。</p>
</div>



<h2 class="wp-block-heading">PiDogを開封する</h2>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="648" src="https://sozorablog.com/wp-content/uploads/2024/01/pidog3.jpg" alt="" class="wp-image-11522"/></figure>



<p>箱は意外とコンパクトに感じました。シンプルで洗練されたデザインに気分が高まります。</p>



<h3 class="wp-block-heading">パッケージ内容</h3>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="461" src="https://sozorablog.com/wp-content/uploads/2024/01/pidog4.jpg" alt="" class="wp-image-11523"/></figure>



<p>部品一式です。一見すると量が少ないように見えますが、小さな部品が多く含まれているため、総数ではかなりのボリュームです。ドライバーが2種類とレンチも付いています。</p>



<p>制御に関する主要な部品は次の通りです。名称をクリックすると公式の解説ページをご覧いただけます。</p>



<div class="wp-block-sbd-list"><ul class="sbd-list sbd-list-border"><li><a href="https://docs.sunfounder.com/projects/pidog/ja/latest/hardware/cpn_camera.html">カメラモジュール</a></li><li><a href="https://docs.sunfounder.com/projects/pidog/ja/latest/hardware/cpn_ultrasonic.html">超音波距離センサー</a></li><li><a href="https://docs.sunfounder.com/projects/pidog/ja/latest/hardware/cpn_dual_touch.html">タッチセンサー</a></li><li><a href="https://docs.sunfounder.com/projects/pidog/ja/latest/hardware/cpn_6dof_imu.html">6軸IMU（Inertial Measurement Unit）</a></li><li><a href="https://docs.sunfounder.com/projects/pidog/ja/latest/hardware/cpn_sound_direction.html">音方位センサー</a></li></ul></div>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="500" src="https://sozorablog.com/wp-content/uploads/2024/01/pidog5.jpg" alt="" class="wp-image-11524"/></figure>



<p>取扱説明書は組み立て方についてのもので、表裏に印刷されています。基本的には英語表記ですが、組み立てるうえで間違いやすいポイントは日本語で書かれているため、理解しやすいです。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="576" src="https://sozorablog.com/wp-content/uploads/2024/01/pidog6.png" alt="" class="wp-image-11525"/><figcaption class="wp-element-caption"><a href="https://docs.sunfounder.com/projects/pidog/ja/latest/">日本語版オンラインマニュアル</a></figcaption></figure>



<p>Raspberry Piの設定方法やPiDogの動かし方については、オンラインでマニュアルが提供されています。<a href="https://docs.sunfounder.com/projects/pidog/ja/latest/">日本語版マニュアル</a>もあるので、大変便利です。</p>



<h3 class="wp-block-heading">Raspberry Piは別売り</h3>



<p>PiDogを制御するためのRaspberry Piは、キットに付属していません。使用できるモデルは次の通りです。</p>



<div class="wp-block-sbd-list"><ul class="sbd-list sbd-list-border"><li>Raspberry Pi 4 Model B</li><li>Raspberry Pi 3 Model B</li><li>Raspberry Pi 3 Model B+</li><li>Raspberry Pi Zero W</li><li>Raspberry Pi Zero 2W</li></ul></div>



<p>PiDogはカメラが搭載されており、物体を追跡できます。スムーズな動作を求める方は、<a href="https://www.switch-science.com/collections/raspberry-pi/products/6370">Raspberry Pi 4 Model B　8GB</a>といった高性能なモデルを選ぶことをおすすめします。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="531" src="https://sozorablog.com/wp-content/uploads/2024/01/pidog25.jpg" alt="" class="wp-image-11592"/><figcaption class="wp-element-caption"><a href="https://sozorablog.com/raspberry-pi-4-revue/">Raspberry Pi 4</a></figcaption></figure>



<p>僕は<a href="https://sozorablog.com/raspberry-pi-4-revue/">Raspberry Pi 4</a>の2GBモデルを使用しました。</p>



<h3 class="wp-block-heading">バッテリー付属</h3>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="532" src="https://sozorablog.com/wp-content/uploads/2024/01/pidog2.jpg" alt="" class="wp-image-11519"/><figcaption class="wp-element-caption">PiDogのバッテリー</figcaption></figure>



<p>このタイプのロボットキットはバッテリー別売りのものが多いですが、PiDogには<a href="https://docs.sunfounder.com/projects/pidog/ja/latest/hardware/cpn_battery.html">バッテリー</a>が付属しています。USB Type-Cでの充電可能です。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="563" src="https://sozorablog.com/wp-content/uploads/2024/01/pidog8.jpeg" alt="" class="wp-image-11529"/><figcaption class="wp-element-caption">バッテリーを充電している様子</figcaption></figure>



<p>組み立て後でもバッテリーを外さずに、そのまま充電可能です。充電中は赤いLEDが点灯し、充電が完了するとLEDが消えます。</p>



<h2 class="wp-block-heading">Raspberry Piの準備をする</h2>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="564" src="https://sozorablog.com/wp-content/uploads/2024/01/pidog1.jpg" alt="" class="wp-image-11511"/></figure>



<p>Bullseye 32-bit Desktop版のRaspberry Pi OSを使用しました。最新のOSであるBookwormには対応していないようです。 </p>



<h4 class="wp-block-heading">言語設定を英語にする</h4>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="431" src="https://sozorablog.com/wp-content/uploads/2024/01/pidog8.jpg" alt="" class="wp-image-11532"/></figure>



<p>システムの言語設定は<span class="sbd-text-red">英語</span>にしておくことが必要です。日本語に設定されていると、音声アンプの設定に問題が生じ、PiDogが正常に動作しなくなることがあります。</p>



<h3 class="wp-block-heading">VNC環境を用意する</h3>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="450" src="https://sozorablog.com/wp-content/uploads/2024/01/pidog7.jpg" alt="" class="wp-image-11527" srcset="https://sozorablog.com/wp-content/uploads/2024/01/pidog7.jpg 800w, https://sozorablog.com/wp-content/uploads/2024/01/pidog7-320x180.jpg 320w, https://sozorablog.com/wp-content/uploads/2024/01/pidog7-224x126.jpg 224w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>マニュアルには記載されていませんが、Raspberry Piは<a href="https://sozorablog.com/vnc/">VNC</a>で操作するのが圧倒的に便利です。VNC（Virtual Network Computing）はネットワークを通じて別のコンピュータにアクセスし、そのデスクトップ画面を呼び出して操作する技術です。これにより、Pidog（Raspberry Pi）にマウスやキーボード、ディスプレイを接続することなく操作できるようになります。</p>



<div class="wp-block-sbd-background-block sbd-bg-color sbd-inner-block-init is-style-yellow">
<p>VNC環境の設定方法は以下の記事で詳しく解説しています。<br><a href="https://sozorablog.com/vnc/">≫【ラズベリーパイを遠隔操作】VNCでＰＣからリモート接続する方法</a></p>
</div>



<h2 class="wp-block-heading">PiDogの組み立て</h2>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="494" src="https://sozorablog.com/wp-content/uploads/2024/01/pidog9.jpg" alt="" class="wp-image-11537"/></figure>



<p>まずは<a href="https://docs.sunfounder.com/projects/pidog/ja/latest/hardware/cpn_sound_direction.html">音方位センサー</a>を取り付けます。このセンサーは音がしている方向を検出して、0から359の数値で出力します。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="532" src="https://sozorablog.com/wp-content/uploads/2024/01/pidog10.jpg" alt="" class="wp-image-11539"/></figure>



<p>音方位センサーの上にRaspberry Pi を取り付けます。microSDは組み立て後でも交換可能です。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="532" src="https://sozorablog.com/wp-content/uploads/2024/01/pidog42.jpeg" alt="" class="wp-image-11633"/></figure>



<p>メインの基板です。裏側にはスピーカーが付いており、PiDogの<span class="sbd-text-red">鳴き声</span>はここから出力されます。</p>



<figure class="wp-block-embed is-type-rich is-provider-twitter wp-block-embed-twitter"><div class="wp-block-embed__wrapper">
<blockquote class="twitter-tweet" data-width="500" data-dnt="true"><p lang="ja" dir="ltr">スピーカー搭載のロボット犬「 PiDog」。遠吠えだってできるのです。 <a href="https://t.co/AOuuFzycf2">pic.twitter.com/AOuuFzycf2</a></p>&mdash; そぞら@Raspberry Pi 電子工作 (@sozoraemon) <a href="https://twitter.com/sozoraemon/status/1752624526075302016?ref_src=twsrc%5Etfw">January 31, 2024</a></blockquote><script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>
</div></figure>



<p>メインの基板はHATと呼ばれる形状のコネクターで、Raspberry Piの40ピンに直接挿入します。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="533" src="https://sozorablog.com/wp-content/uploads/2024/01/pidog11.jpg" alt="" class="wp-image-11540"/></figure>



<p></p>



<h3 class="wp-block-heading">組み立ての途中でラズパイを起動する</h3>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="532" src="https://sozorablog.com/wp-content/uploads/2024/01/pidog12.jpg" alt="" class="wp-image-11542"/></figure>



<p>Raspberry Piの電源を入れて、ソフトウェアの準備をします。これは、<a href="https://docs.sunfounder.com/projects/pidog/ja/latest/python/python_start/py_servo_adjust.html">サーボモーター</a>を適切な角度に設定し取り付けるためです。サーボモーターには稼働範囲が決まっており、正確な角度での取り付けが行われない場合、ロボットの正常な動作が妨げられることがあります。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="565" height="351" src="https://sozorablog.com/wp-content/uploads/2024/01/pidog21.png" alt="" class="wp-image-11573" style="width:840px;height:auto"/></figure>



<p>オンラインマニュアルの手順に沿って、Raspberry Piへソフトウェアをインストールします。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="432" height="210" src="https://sozorablog.com/wp-content/uploads/2024/01/pidog22.png" alt="" class="wp-image-11574" style="width:840px;height:auto"/></figure>



<p>servo_zeroing.pyというプログラムを実行した状態でサーボモーターをピンに接続します。すると、サーボモーターが基準位置に動きます。この状態でサーボモーターを固定していきます。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="800" height="530" src="https://sozorablog.com/wp-content/uploads/2024/01/pidog41.jpeg" alt="" class="wp-image-11634" style="width:846px;height:auto"/><figcaption class="wp-element-caption">サーボモーターのコネクターをピンに差し込む様子</figcaption></figure>



<h3 class="wp-block-heading">楽ちんなリベット止め</h3>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="535" src="https://sozorablog.com/wp-content/uploads/2024/01/pidog13.jpg" alt="" class="wp-image-11543"/><figcaption class="wp-element-caption">プラスチック製のリベット</figcaption></figure>



<p>強度が不要な接合部分は、プラスチック製のリベットで止める仕様になっています。手で簡単に押し込むだけでカチッとはまり、作業がスムーズに進みます。</p>



<h3 class="wp-block-heading">完成</h3>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="548" src="https://sozorablog.com/wp-content/uploads/2024/01/pidog14.jpg" alt="" class="wp-image-11546"/></figure>



<p>組み立てにかかった時間は<span class="sbd-text-red">4時間</span>。しかし、その時間を忘れさせるほど、完成した瞬間の<span class="sbd-text-bg-yellow">感動と達成感</span>は格別でした。犬型ロボットの愛らしいデザインと、自分で組み立てたという事実が相まって、特別な愛着が生まれてきます。</p>



<p>組み立ての様子はこちらの公式動画で確認できます。</p>



<figure class="wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio"><div class="wp-block-embed__wrapper">
<iframe loading="lazy" title="Mount Raspberry Pi Zero W on PiDog" width="500" height="281" src="https://www.youtube.com/embed/Zfv-8O_Sq9s?feature=oembed" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
</div></figure>



<h2 class="wp-block-heading">PiDogを動かしてみる</h2>



<p>ここからはPiDogを動かしていきます。その機能性と心を引きつけるアクションをご覧ください。</p>



<h3 class="wp-block-heading">サーボモーターの校正</h3>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="536" src="https://sozorablog.com/wp-content/uploads/2024/01/pidog24.jpg" alt="" class="wp-image-11586"/><figcaption class="wp-element-caption">サーボモーターを校正している様子</figcaption></figure>



<p>完成したPiDogをすぐに動かしたいところですが、まずは<a href="https://docs.sunfounder.com/projects/pidog/ja/latest/python/py_0_calibrate.html">サーボモーターの校正</a>が必要です。この作業によって、<span class="sbd-text-red">サーボモーターの基準角度</span>を細かく調整します。校正を怠ると、PiDogの歩行が不安定になるなどの問題が生じることがあります。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="558" height="358" src="https://sozorablog.com/wp-content/uploads/2024/01/pidog23.png" alt="" class="wp-image-11585" style="width:840px;height:auto"/><figcaption class="wp-element-caption">校正用プログラムのUI</figcaption></figure>



<p>校正用のプログラムを動かして、12個のサーボモーターをひとつずつ調整していきます。校正時はキットに付属している直角のゲージを使用します。</p>



<h3 class="wp-block-heading">13種類のサンプルプログラム</h3>



<p>校正が終わったら、いよいよPiDogで遊んでいきます。前項でインストールした「/home/pi/pidog/examples」のフォルダー内には13種類のサンプルプログラムがあります。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="547" height="336" src="https://sozorablog.com/wp-content/uploads/2024/01/pidog27.png" alt="" class="wp-image-11597" style="width:840px;height:auto"/><figcaption class="wp-element-caption">サンプルプログラム</figcaption></figure>



<p>サンプルプログラムの種類は次の通りです。</p>



<figure class="wp-block-table wp-block-sbd-table wp-block-sbd-table-horizontal sbd-table--scroll sbd-table--scroll-none"><table class="has-fixed-layout"><tbody><tr><td></td><td>プロジェクト名</td><td>動作</td><td>詳細</td></tr><tr><td><img decoding="async" width="150" height="112" class="wp-image-11580" style="width: 150px;" src="https://sozorablog.com/wp-content/uploads/2024/01/IMG_6136.jpeg" alt=""><a href="#"><br></a></td><td>Wake Up</td><td>伸びをする、体をねじる、座る、尻尾を振る、ハアハアする。</td><td><span class="sbd-table-btn"><a href="https://docs.sunfounder.com/projects/pidog/ja/latest/python/py_1_wakeup.html">詳細を見る</a></span></td></tr><tr><td><img decoding="async" width="150" height="114" class="wp-image-11594" style="width: 150px;" src="https://sozorablog.com/wp-content/uploads/2024/01/pidog26.png" alt=""><a href="http://blockeditor.local/wp-admin/post.php?post=847&amp;action=edit#"><br></a></td><td>Function Demonstration</td><td>15種類の動作と12種類のサウンドを実行できる</td><td><span class="sbd-table-btn"><a href="https://docs.sunfounder.com/projects/pidog/ja/latest/python/py_2_function_demonstration.html">詳細を見る</a></span></td></tr><tr><td><img decoding="async" width="150" height="116" class="wp-image-11606" style="width: 150px;" src="https://sozorablog.com/wp-content/uploads/2024/01/pidog29.jpg" alt=""><a href="http://blockeditor.local/wp-admin/post.php?post=847&amp;action=edit#"><br></a></td><td>Patrol</td><td>超音波センサーで距離を測定しながら前進</td><td><span class="sbd-table-btn"><a href="https://docs.sunfounder.com/projects/pidog/ja/latest/python/py_3_patrol.html">詳細を見る</a></span></td></tr><tr><td><img decoding="async" width="150" height="137" class="wp-image-11607" style="width: 150px;" src="https://sozorablog.com/wp-content/uploads/2024/01/pidog30.jpg" alt=""><a href="http://blockeditor.local/wp-admin/post.php?post=847&amp;action=edit#"><br></a></td><td>Response</td><td>PiDogに接近すると警戒して吠える。頭をなでると喜ぶ</td><td><span class="sbd-table-btn"><a href="https://docs.sunfounder.com/projects/pidog/ja/latest/python/py_4_response.html">詳細を見る</a></span></td></tr><tr><td><img decoding="async" width="150" height="119" class="wp-image-11611" style="width: 150px;" src="https://sozorablog.com/wp-content/uploads/2024/01/pidog34.jpg" alt=""><a href="http://blockeditor.local/wp-admin/post.php?post=847&amp;action=edit#"><br></a></td><td>Rest</td><td>音に反応して立ち上がり、キョロキョロする</td><td><span class="sbd-table-btn"><a href="https://docs.sunfounder.com/projects/pidog/ja/latest/python/py_5_rest.html">詳細を見る</a></span></td></tr><tr><td><img decoding="async" width="150" height="106" class="wp-image-11608" style="width: 150px;" src="https://sozorablog.com/wp-content/uploads/2024/01/pidog31.jpg" alt=""><a href="http://blockeditor.local/wp-admin/post.php?post=847&amp;action=edit#"><br></a></td><td>Be Picked Up</td><td>PiDogを持ち上げると、スーパーマンのポーズをする</td><td><span class="sbd-table-btn"><a href="https://docs.sunfounder.com/projects/pidog/ja/latest/python/py_6_be_picked_up.html">詳細を見る</a></span></td></tr><tr><td><img decoding="async" width="150" height="104" class="wp-image-11579" style="width: 150px;" src="https://sozorablog.com/wp-content/uploads/2024/01/IMG_6134.jpeg" alt=""></td><td>Face Track</td><td>顔を認識して頭を動かす。音のする方向に頭を向ける</td><td><a href="https://docs.sunfounder.com/projects/pidog/ja/latest/python/py_7_face_track.html"><span class="sbd-table-btn">詳細を見る</span></a></td></tr><tr><td><img decoding="async" width="150" height="105" class="wp-image-11581" style="width: 150px;" src="https://sozorablog.com/wp-content/uploads/2024/01/IMG_6135.jpeg" alt=""><a href="http://blockeditor.local/wp-admin/post.php?post=847&amp;action=edit#"><br></a></td><td>Push Up</td><td>腕立て伏せをする</td><td><span class="sbd-table-btn"><a href="https://docs.sunfounder.com/projects/pidog/ja/latest/python/py_8_pushup.html">詳細を見る</a></span></td></tr><tr><td><img decoding="async" width="150" height="122" class="wp-image-11609" style="width: 150px;" src="https://sozorablog.com/wp-content/uploads/2024/01/pidog32.jpg" alt=""></td><td>Howling</td><td>遠吠えする</td><td><span class="sbd-table-btn"><a href="https://docs.sunfounder.com/projects/pidog/ja/latest/python/py_9_howling.html">詳細を見る</a></span></td></tr><tr><td><img decoding="async" width="150" height="112" class="wp-image-11610" style="width: 150px;" src="https://sozorablog.com/wp-content/uploads/2024/01/pidog33.jpg" alt=""></td><td>Balance</td><td>地面の角度に応じてバランスを取る</td><td><span class="sbd-table-btn"><a href="https://docs.sunfounder.com/projects/pidog/ja/latest/python/py_10_balance.html">詳細を見る</a></span></td></tr><tr><td><img decoding="async" width="150" height="109" class="wp-image-11603" style="width: 150px;" src="https://sozorablog.com/wp-content/uploads/2024/01/IMG_6150.jpeg" alt=""></td><td>Play PiDog with Keyboard</td><td>キーボードでPiDogを操作する</td><td><span class="sbd-table-btn"><a href="https://docs.sunfounder.com/projects/pidog/ja/latest/python/py_11_keyboard_control.html">詳細を見る</a></span></td></tr><tr><td><img decoding="async" width="150" height="84" class="wp-image-11563" style="width: 150px;" src="https://sozorablog.com/wp-content/uploads/2024/01/pidog18.jpg" alt="" srcset="https://sozorablog.com/wp-content/uploads/2024/01/pidog18.jpg 800w, https://sozorablog.com/wp-content/uploads/2024/01/pidog18-320x180.jpg 320w, https://sozorablog.com/wp-content/uploads/2024/01/pidog18-224x126.jpg 224w" sizes="(max-width: 150px) 100vw, 150px" /></td><td>Play PiDog with APP</td><td>スマートフォンやタブレットからPiDogを操作する</td><td><span class="sbd-table-btn"><a href="https://docs.sunfounder.com/projects/pidog/ja/latest/python/py_12_app_control.html">詳細を見る</a></span></td></tr><tr><td><img decoding="async" width="150" height="125" class="wp-image-11599" style="width: 150px;" src="https://sozorablog.com/wp-content/uploads/2024/01/pidog28.jpg" alt=""></td><td>Ball Track</td><td>赤い物体を追いかけて歩く</td><td><span class="sbd-table-btn"><a href="https://docs.sunfounder.com/projects/pidog/ja/latest/python/py_13_ball_track.html">詳細を見る</a></span></td></tr></tbody></table></figure>



<h4 class="wp-block-heading">プログラムの実行方法</h4>



<p>ターミナル画面を開いて、サンプルプログラムが保存してあるフォルダに移動します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>cd ~/pidog/examples</code></pre></div>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="490" height="302" src="https://sozorablog.com/wp-content/uploads/2024/01/pidog19.png" alt="" class="wp-image-11568" style="width:840px;height:auto"/></figure>



<p>「sudo python3 1_wake_up.py」のようにコマンドを打ち込むと、プログラムが実行されます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>sudo python3 1_wake_up.py</code></pre></div>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="480" height="294" src="https://sozorablog.com/wp-content/uploads/2024/01/pidog20.png" alt="" class="wp-image-11569" style="width:841px;height:auto"/></figure>



<p>以下は「Ball Track」を実行した様子です。赤い物体を発見すると、その方向に顔を向けて歩きだします。歩く方向もゆっくりと変わっていきます。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="300" height="278" src="https://sozorablog.com/wp-content/uploads/2024/01/pigog_run_red.gif" alt="" class="wp-image-11600"/><figcaption class="wp-element-caption">赤い物体を追いかける様子</figcaption></figure>



<p>以下は「Play PiDog with Keyboard」というプログラムでscratchという動作をさせた様子です。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="243" height="287" src="https://sozorablog.com/wp-content/uploads/2024/01/pigog_scrach.gif" alt="" class="wp-image-11601"/><figcaption class="wp-element-caption">頭をかくしぐさ</figcaption></figure>



<p>同じく「Play PiDog with Keyboard」でtrotを実行した様子です。通常の歩行はゆっくりですが、軽快に走ることもできます。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="237" height="203" src="https://sozorablog.com/wp-content/uploads/2024/01/pigog_run.gif" alt="" class="wp-image-11595"/><figcaption class="wp-element-caption">小走りしている様子</figcaption></figure>



<p>Push Up（腕立て伏せ）をしている姿もかわいいです。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="180" height="184" src="https://sozorablog.com/wp-content/uploads/2024/02/pigog_pop-1.gif" alt="" class="wp-image-11669"/><figcaption class="wp-element-caption">腕立て伏せ</figcaption></figure>



<figure class="wp-block-embed is-type-rich is-provider-twitter wp-block-embed-twitter"><div class="wp-block-embed__wrapper">
<blockquote class="twitter-tweet" data-width="500" data-dnt="true"><p lang="ja" dir="ltr">ラズパイロボットキットの「PiDog」。<br><br>身体を持ち上げると、手足を伸ばして喜びます。 <a href="https://t.co/yT9ctvEpCf">pic.twitter.com/yT9ctvEpCf</a></p>&mdash; そぞら@Raspberry Pi 電子工作 (@sozoraemon) <a href="https://twitter.com/sozoraemon/status/1753733540997677196?ref_src=twsrc%5Etfw">February 3, 2024</a></blockquote><script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>
</div></figure>



<h4 class="wp-block-heading">スマホやタブレットから操作する</h4>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="800" height="531" src="https://sozorablog.com/wp-content/uploads/2024/01/pidog16.jpg" alt="" class="wp-image-11561" style="width:800px;height:auto"/><figcaption class="wp-element-caption">スマホのアプリ画面</figcaption></figure>



<p><a href="https://docs.sunfounder.com/projects/pidog/en/latest/python/py_12_app_control.html">SunFounder Controller</a>という専用アプリをスマホやタブレットにインストールして、PiDogを操作できます。SunFounder ControllerはAPP Store（iOS）またはGoogle Play（Android）からインストール可能です。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="800" height="450" src="https://sozorablog.com/wp-content/uploads/2024/01/pidog17.jpg" alt="" class="wp-image-11562" style="width:840px;height:auto" srcset="https://sozorablog.com/wp-content/uploads/2024/01/pidog17.jpg 800w, https://sozorablog.com/wp-content/uploads/2024/01/pidog17-320x180.jpg 320w, https://sozorablog.com/wp-content/uploads/2024/01/pidog17-224x126.jpg 224w" sizes="(max-width: 800px) 100vw, 800px" /><figcaption class="wp-element-caption">SunFounder ControllerからPiDogに接続</figcaption></figure>



<p>PiDogでプログラムを起動後、SunFounder Controllerを開くと、自動でネットワーク上からPiDogを探してくれます。</p>



<p>カメラの映像を通じてPiDogを操作することができます。歩いたり頭部を動かしたりすることで視界が変化します。まるでPiDogの目線で周囲を見ているかのような体験が可能です。インターフェイスは洗練されており非常にスタイリッシュな印象を与えます。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="450" src="https://sozorablog.com/wp-content/uploads/2024/01/pidog18.jpg" alt="" class="wp-image-11563" srcset="https://sozorablog.com/wp-content/uploads/2024/01/pidog18.jpg 800w, https://sozorablog.com/wp-content/uploads/2024/01/pidog18-320x180.jpg 320w, https://sozorablog.com/wp-content/uploads/2024/01/pidog18-224x126.jpg 224w" sizes="(max-width: 800px) 100vw, 800px" /><figcaption class="wp-element-caption">SunFounder ControllerからPiDogに接続</figcaption></figure>



<p>コントローラーを使えば、歩行、頭の動き、座る、立つ、伏せる、尻尾を振る、頭をかくなどのさまざまな操作が行えます。個人的には、サンプルプログラムの中で「Play PiDog with APP」が一番気に入っています。</p>



<h2 class="wp-block-heading">自分でもプログラミングできる</h2>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="484" src="https://sozorablog.com/wp-content/uploads/2024/02/pidog51.png" alt="" class="wp-image-11694"/></figure>



<p>PiDogはサンプルプログラムだけでも十分に楽しむことができます。しかし、ラズパイ経験者であれば独自のプログラムを作って動かしたくなるものです。PiDogのオンラインマニュアルには、プログラミングの手引きとなる<a href="https://docs.sunfounder.com/projects/pidog/ja/latest/python/py_easy_coding.html">チュートリアル</a>が用意されており、プログラム作成に役立ちます。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="1364" height="747" src="https://sozorablog.com/wp-content/uploads/2024/02/pidog52.png" alt="" class="wp-image-11700" style="width:840px;height:auto"/><figcaption class="wp-element-caption"><a href="https://docs.sunfounder.com/projects/pidog/ja/latest/python/py_b1_init.html">PiDog Initialization</a></figcaption></figure>



<h3 class="wp-block-heading">「お手」のプログラムを作ってみる</h3>



<figure class="wp-block-image size-full"><img decoding="async" width="750" height="615" src="https://sozorablog.com/wp-content/uploads/2024/02/pidog43.jpg" alt="" class="wp-image-11646"/></figure>



<p>以下のプログラムはPiDogを操作し、「お手」の動作を実行するためのものです。上述したチュートリアルを参考に作成しました。基本的にはプリセットされた動作を呼び出して、PiDogを動かします。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-python" data-lang="Python"><code>from pidog import Pidog  # PiDogライブラリからPidogをインポート
from preset_actions import hand_shake  # hand_shakeアクションをインポート
import time

# カスタムの初期化サーボ角度でPiDogのインスタンスを作成
# 初期化することで、PiDogが特定の姿勢で起動します
my_dog = Pidog()

try:
    my_dog.do_action(&quot;sit&quot;, speed=60)  # PiDogに座る動作を指示（速度は60）
    
    time.sleep(1)  # 次の動作まで1秒待機
    
    hand_shake(my_dog)  # PiDogに「お手！」の動作を実行させる
    
    my_dog.do_action(&quot;sit&quot;, speed=60)  # 再び座る動作を指示（速度は60）
    
    time.sleep(1)  # 次の動作まで1秒待機
    

# キーボード割り込み（Ctrl + C）があった場合の処理
except KeyboardInterrupt:
    pass  # 特に何もしない

# その他の例外が発生した場合の処理
except Exception as e:
    print(f&quot;\033[31mERROR: {e}\033[m&quot;)  # エラーメッセージを表示

# プログラム終了時に実行される処理
finally:
    print(&quot;closing ...&quot;)  # 終了することを表示
    my_dog.close()  # PiDogの接続を適切に閉じる

</code></pre></div>



<p>最初にPiDogを起動し、その後、速度を60に設定して座る動作を指示します。1秒待ってから、「お手」という動作を実行し、再び座る動作を指示します。最後にPiDogの接続を閉じて、プログラムが終了します。</p>



<p>プログラムはサンプルプログラムと同じフォルダーの「/home/pi/pidog/examples」に保存して実行します。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="227" height="306" src="https://sozorablog.com/wp-content/uploads/2024/02/pigog_hand.gif" alt="" class="wp-image-11706"/></figure>



<h3 class="wp-block-heading">音声で「お手」をさせてみる</h3>



<p>最近のロボットは音声での操作が主流になってきています。マイクを接続すればRaspberry Piでも音声認識ができます。そこで、声を出して「お手」と指示してPiDogを動かしてみることにしましょう。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="545" src="https://sozorablog.com/wp-content/uploads/2024/02/pidog41.jpg" alt="" class="wp-image-11639"/><figcaption class="wp-element-caption">マイク（別売り）</figcaption></figure>



<p>音声認識を利用するには、別売りのUSBマイクを使います。上記のようなコンパクトなマイクを選ぶと良いでしょう。千円以下で販売されています。</p>



<!-- START MoshimoAffiliateEasyLink -->
<script type="text/javascript">
(function(b,c,f,g,a,d,e){b.MoshimoAffiliateObject=a;
b[a]=b[a]||function(){arguments.currentScript=c.currentScript
||c.scripts[c.scripts.length-2];(b[a].q=b[a].q||[]).push(arguments)};
c.getElementById(a)||(d=c.createElement(f),d.src=g,
d.id=a,e=c.getElementsByTagName("body")[0],e.appendChild(d))})
(window,document,"script","//dn.msmstatic.com/site/cardlink/bundle.js?20220329","msmaflink");
msmaflink({"n":"SunFounder 超小型 USBミニマイク,無指向性 PCマイク,ドライバー不要,USB2.0 Skype\/VOIP音声認識ソフトウェア,Windows PC\/Mac\/Raspberry Pi 4B\/3B+\/3B\/2B\/1B+\/1B\/用","b":"SUNFOUNDER","t":"SF-00046","d":"https:\/\/m.media-amazon.com","c_p":"\/images\/I","p":["\/51mJG9E0NpL._SL500_.jpg","\/51VdQYNIeuL._SL500_.jpg","\/41VpYN40vZL._SL500_.jpg","\/41aABMoZobL._SL500_.jpg","\/41axdMf7B5L._SL500_.jpg","\/41dN-aRE3FL._SL500_.jpg","\/41aPaxv0aRL._SL500_.jpg"],"u":{"u":"https:\/\/www.amazon.co.jp\/dp\/B08K9348F6","t":"amazon","r_v":""},"v":"2.1","b_l":[{"id":1,"u_tx":"Amazonで見る","u_bc":"#f79256","u_url":"https:\/\/www.amazon.co.jp\/dp\/B08K9348F6","a_id":3038653,"p_id":170,"pl_id":27060,"pc_id":185,"s_n":"amazon","u_so":1}],"eid":"TjjU9","s":"s"});
</script>
<div id="msmaflink-TjjU9">リンク</div>
<!-- MoshimoAffiliateEasyLink END -->



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="514" src="https://sozorablog.com/wp-content/uploads/2024/02/pidog42.jpg" alt="" class="wp-image-11640"/><figcaption class="wp-element-caption">Raspberry Piにマイクを取り付けた様子</figcaption></figure>



<h4 class="wp-block-heading">音声認識エンジンをインストールする</h4>



<p>音声認識には「Julius（ジュリアス）」を使用します。Juliusはリアルタイムで日本語音声認識を行う無料のソフトウェアです。</p>



<h5 class="wp-block-heading">必要なパッケージをインストール</h5>



<p>ターミナルを開いて、以下のコマンドを1行ずつ実行していきます。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>sudo apt update
sudo apt upgrade
sudo apt install build-essential zlib1g-dev libsdl2-dev libasound2-dev</code></pre></div>



<h5 class="wp-block-heading">Juliusのインストール</h5>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>git clone https://github.com/julius-speech/julius.git
cd julius
wget -O support/config.guess &#39;http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD&#39;
wget -O support/config.sub &#39;http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD&#39;
cd jcontrol
wget -O config.guess &#39;http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD&#39;
wget -O config.sub &#39;http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD&#39;
cd ..
./configure --enable-words-int
make -j4</code></pre></div>



<h5 class="wp-block-heading">日本語モデルのダウンロード</h5>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>git clone https://github.com/julius-speech/dictation-kit.git</code></pre></div>



<p>「dictation-kit」のフォルダーに移動します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>cd dictation-kit</code></pre></div>



<h4 class="wp-block-heading">USBマイクの設定</h4>



<p>以下のコマンドでUSBマイクが認識されているか確認します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>arecord -l</code></pre></div>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="454" height="153" src="https://sozorablog.com/wp-content/uploads/2024/02/pidog46.png" alt="" class="wp-image-11654" style="width:840px;height:auto"/></figure>



<p>マイクのカード番号とデバイス番号を読み取ります。「card 4」はシステムが認識しているサウンドカードの番号です。「USB PnP Sound Device」 は、デバイスの名前です。これはUSBマイクを指しています。「device 0」 はそのサウンドカード上のデバイス番号を示しています。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="296" height="181" src="https://sozorablog.com/wp-content/uploads/2024/02/pidog47.png" alt="" class="wp-image-11657" style="width:840px;height:auto"/></figure>



<p>マイクの音量を最大に設定します。音量が小さいと、うまく言葉の認識ができなくなります。</p>



<h4 class="wp-block-heading"><strong>Juliusの起動</strong></h4>



<p>Juliusを起動して、音声認識ができることを確認します。以下のコマンドでJuliusが起動します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>/home/pi/julius/julius/julius -C main.jconf -C am-dnn.jconf -demo -dnnconf julius.dnnconf
</code></pre></div>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="525" height="164" src="https://sozorablog.com/wp-content/uploads/2024/02/pidog50.png" alt="" class="wp-image-11690" style="width:840px;height:auto"/></figure>



<p>以下の画面になれば起動成功です。マイクに向かって話しかけると、認識結果が表示されます。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="459" height="318" src="https://sozorablog.com/wp-content/uploads/2024/01/pidog39.png" alt="" class="wp-image-11629" style="width:840px;height:auto"/><figcaption class="wp-element-caption">音声認識実行中の画面</figcaption></figure>



<p>認識精度はそれほど高くないようです。<span class="sbd-text-red">「お手」という言葉を「大手」と誤認識してしまいました。</span>しかし、PiDogを操作する上では大きな支障はありません。「大手」と認識された際にPiDogを動かすプログラムを設定すれば問題なく対応できます。</p>



<h4 class="wp-block-heading">Juliusをモジュールモードで起動</h4>



<p><br>Juliusをモジュールモードで起動すると、<span class="sbd-text-red">Pythonプログラムを介して</span>音声認識結果をテキストで取得できます。これにより、得られたテキストを用いてPiDogの制御を行うことが可能になります。</p>



<p>まず、Juliusの設定ファイルである 「<code>main.jconf」</code> を編集します。これらの手順を踏まないとエラーが発生して、動作しませんでした。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>nano main.jconf</code></pre></div>



<p><code>-fvad</code> オプションを探し、その行をコメントアウトします。コメントアウトするには、行の先頭に <code>#</code> 記号を追加します。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="452" height="291" src="https://sozorablog.com/wp-content/uploads/2024/01/pidog39-1.png" alt="" class="wp-image-11631" style="width:840px;height:auto"/></figure>



<p>「-h model/phone_m/jnas-tri-3k16-gid.hmmdefs」を追加する。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="501" height="266" src="https://sozorablog.com/wp-content/uploads/2024/01/pidog40.png" alt="" class="wp-image-11632" style="width:840px;height:auto"/></figure>



<p>必要に応じて「cd /home/pi/julius/dictation-kit」で「/home/pi/julius/dictation-kit」に移動してください。</p>



<p>以下のコマンドを実行することにより、Juliusをモジュールモードで起動します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>/home/pi/julius/julius/julius -C main.jconf -C am-dnn.jconf -dnnconf julius.dnnconf -module</code></pre></div>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="519" height="219" src="https://sozorablog.com/wp-content/uploads/2024/02/pidog44.png" alt="" class="wp-image-11650" style="width:840px;height:auto"/></figure>



<p>以下の画面になれば、起動成功です。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="524" height="359" src="https://sozorablog.com/wp-content/uploads/2024/02/pidog45.png" alt="" class="wp-image-11652" style="width:840px;height:auto"/><figcaption class="wp-element-caption">Juliusをモジュールモードで起動</figcaption></figure>



<p>この状態のまま、次の手順に進んでいきます。</p>



<h4 class="wp-block-heading">Pythonプログラムからテキストを取得</h4>



<p>Juliusをモジュールモードで、起動した状態で以下のコードを実行します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-python" data-lang="Python"><code>import socket
import sys

# Juliusサーバの設定
host = &quot;localhost&quot;
port = 10500

# ソケットの作成と接続
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.connect((host, port))

res = &#39;&#39;
while True:
    # 音声認識の区切りである「改行+.」がくるまで待つ
    while (res.find(&#39;\n.&#39;) == -1):
        # Juliusから取得した値を格納していく
        res += sock.recv(1024).decode(&#39;utf-8&#39;)

    word = &#39;&#39;
    for line in res.split(&#39;\n&#39;):
        # Juliusから取得した値から認識文字列の行を探す
        index = line.find(&#39;WORD=&#39;)
        # 認識文字列があったら...
        if index != -1:
            # 認識文字列部分だけを抜き取る
            line = line[index + 6 : line.find(&#39;&quot;&#39;, index + 6)]
            # 文字列の開始記号以外を格納していく
            if line != &#39;[s]&#39;:
                word = word + line
                print(&#39;word：&#39; + word)

        # 特定の文字列を認識した時の処理
        if word == &#39;お手&#39;or word == &#39;大手&#39;:
            print(&quot;発見&quot;)

        res = &#39;&#39;</code></pre></div>



<p><br>このコードは、Julius音声認識エンジンからリアルタイムでデータを受信し、認識された単語を処理するためのPythonスクリプトです。ローカルサーバー上のJuliusからデータを受け取り、認識された各単語を抽出して表示します。特定の単語（「お手」または「大手」）が認識されると、「発見」と出力します。</p>



<h4 class="wp-block-heading">本番用プログラム</h4>



<div class="hcb_wrap"><pre class="prism line-numbers lang-python" data-lang="Python"><code>import socket
import sys
from pidog import Pidog  # PiDogライブラリからPidogをインポート
from preset_actions import hand_shake  # hand_shakeアクションをインポート
import time

# Juliusサーバの設定
host = &quot;localhost&quot;
port = 10500

# ソケットの作成と接続
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.connect((host, port))

# カスタムの初期化サーボ角度でPiDogのインスタンスを作成
# 初期化することで、PiDogが特定の姿勢で起動します
my_dog = Pidog()
my_dog.do_action(&quot;sit&quot;, speed=60)  # PiDogに座る動作を指示（速度は60）
my_dog.head_move([[0, 0, -20]], roll_comp=0, pitch_comp=0, immediately=True, speed=50)

res = &#39;&#39;
while True:
    # 音声認識の区切りである「改行+.」がくるまで待つ
    while (res.find(&#39;\n.&#39;) == -1):
        # Juliusから取得した値を格納していく
        res += sock.recv(1024).decode(&#39;utf-8&#39;)

    word = &#39;&#39;
    for line in res.split(&#39;\n&#39;):
        # Juliusから取得した値から認識文字列の行を探す
        index = line.find(&#39;WORD=&#39;)
        # 認識文字列があったら...
        if index != -1:
            # 認識文字列部分だけを抜き取る
            line = line[index + 6 : line.find(&#39;&quot;&#39;, index + 6)]
            # 文字列の開始記号以外を格納していく
            if line != &#39;[s]&#39;:
                word = word + line
                print(&#39;word：&#39; + word)

        # 文字列を認識したらPiDogを動かす
        if word == &#39;お手&#39;or word == &#39;大手&#39;:
            my_dog.rgb_strip.set_mode(&#39;breath&#39;, &#39;pink&#39;, bps=1)
            my_dog.head_move([[-40, 0, -30]], roll_comp=0, pitch_comp=0, immediately=True, speed=50)
            hand_shake(my_dog)  # PiDogに「お手！」の動作を実行させる
    
            my_dog.do_action(&quot;sit&quot;, speed=60)  # 再び座る動作を指示（速度は60）
            my_dog.head_move([[0, 0, -20]], roll_comp=0, pitch_comp=0, immediately=True, speed=50)
            my_dog.rgb_strip.set_mode(&#39;breath&#39;, &#39;white&#39;, bps=0.5)

        res = &#39;&#39;</code></pre></div>



<p>このコードは前述したものに、PiDogを操作するためのスクリプトを追加したものになります。認識された単語が「お手」または「大手」と認識された場合、PiDogのLEDストリップがピンク色で点滅し、PiDogが頭を動かして「お手」の動作をします。その後、PiDogは再び座る姿勢をとり、LEDストリップが白色でゆっくりと点滅します。</p>



<figure class="wp-block-embed is-type-rich is-provider-twitter wp-block-embed-twitter"><div class="wp-block-embed__wrapper">
<blockquote class="twitter-tweet" data-width="500" data-dnt="true"><p lang="ja" dir="ltr">音声認識ができた！<br><br>「お手」と声をかけると、ロボットが動きます。ラズパイを搭載したロボットキットの「 PiDog」。マイクなどのデバイスを追加して、機能を拡張できます。 <a href="https://t.co/BJ5vNtxX60">pic.twitter.com/BJ5vNtxX60</a></p>&mdash; そぞら@Raspberry Pi 電子工作 (@sozoraemon) <a href="https://twitter.com/sozoraemon/status/1753362239732814208?ref_src=twsrc%5Etfw">February 2, 2024</a></blockquote><script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>
</div></figure>



<h2 class="wp-block-heading">PiDogならラズパイがもっと楽しくなる</h2>



<figure class="wp-block-image size-full is-resized"><img decoding="async" width="750" height="578" src="https://sozorablog.com/wp-content/uploads/2024/01/pidog29.jpg" alt="" class="wp-image-11606" style="width:840px;height:auto"/></figure>



<p>PiDogが手元に届いてから、組み立て、動作確認、プログラミングといった一連の作業を経て、いつも「次に何が起こるんだろう？」と楽しみで仕方がありませんでした。時間が足りないくらい、ずっとPiDogと遊んでいたいと思わせる魅力がそこにはありました。</p>



<p>PiDogはRaspberry Piで何から手をつけていいか迷っている方や、電子工作には興味があるけれど初めの一歩が踏み出せない方にぴったりのキットです。親しみやすい工夫がたくさんされており、使う人を魅了します。こんなに夢中になれるアイテムとの出会いは、そうはありません。</p>



<p>さて、次はPiDogと何をして遊ぼうかな？</p>



<!-- START MoshimoAffiliateEasyLink -->
<script type="text/javascript">
(function(b,c,f,g,a,d,e){b.MoshimoAffiliateObject=a;
b[a]=b[a]||function(){arguments.currentScript=c.currentScript
||c.scripts[c.scripts.length-2];(b[a].q=b[a].q||[]).push(arguments)};
c.getElementById(a)||(d=c.createElement(f),d.src=g,
d.id=a,e=c.getElementsByTagName("body")[0],e.appendChild(d))})
(window,document,"script","//dn.msmstatic.com/site/cardlink/bundle.js?20220329","msmaflink");
msmaflink({"n":"SunFounder PiDog ロボット犬キット for Raspberry Pi 4\/3B+\/3B\/Zero W, 歩行, セルフバランス, ボールトレース, 顔認識, 超音波, カメラ, バッテリー付属 （Raspberry Piは含まれていません）","b":"SUNFOUNDER","t":"Pidog","d":"https:\/\/m.media-amazon.com","c_p":"\/images\/I","p":["\/41W1M1afErL._SL500_.jpg","\/51LwGLv1AVL._SL500_.jpg","\/51myIe4TIgL._SL500_.jpg","\/51jbref7h0L._SL500_.jpg","\/61110TsjRoL._SL500_.jpg","\/51holtXUMhL._SL500_.jpg","\/51Q2EKns8xL._SL500_.jpg"],"u":{"u":"https:\/\/www.amazon.co.jp\/dp\/B0CGJF4SSC","t":"amazon","r_v":""},"v":"2.1","b_l":[{"id":1,"u_tx":"Amazonで見る","u_bc":"#f79256","u_url":"https:\/\/www.amazon.co.jp\/dp\/B0CGJF4SSC","a_id":3038653,"p_id":170,"pl_id":27060,"pc_id":185,"s_n":"amazon","u_so":1}],"eid":"f5Pt7","s":"s"});
</script>
<div id="msmaflink-f5Pt7">リンク</div>
<!-- MoshimoAffiliateEasyLink END -->
]]></content:encoded>
					
					<wfw:commentRss>https://sozorablog.com/pidog/feed/</wfw:commentRss>
			<slash:comments>2</slash:comments>
		
		
			</item>
		<item>
		<title>【レビュー】ElectroCookie Raspberry Pi 4ケースのクールすぎる実力とは</title>
		<link>https://sozorablog.com/electrocookie/</link>
					<comments>https://sozorablog.com/electrocookie/#respond</comments>
		
		<dc:creator><![CDATA[そぞら]]></dc:creator>
		<pubDate>Fri, 30 Jun 2023 02:08:30 +0000</pubDate>
				<category><![CDATA[Raspberry Pi]]></category>
		<category><![CDATA[関連製品]]></category>
		<guid isPermaLink="false">https://sozorablog.com/?p=11232</guid>

					<description><![CDATA[Amazonでラズパイケースを検索すると、真っ先に目に飛び込んでくるのがElectroCookieのRaspberry Pi 4用ケース。ゲーミングPCを思わせる洗練されたデザインは気になるものの、聞いたことのないメーカ [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>Amazonでラズパイケースを検索すると、真っ先に目に飛び込んでくるのが<a href="https://www.amazon.co.jp/s?me=A306QFJ0IHRDQ1&amp;marketplaceID=A1VC38T7YXB528">ElectroCookie</a>の<a href="https://sozorablog.com/raspberry-pi-4-revue/">Raspberry Pi 4</a>用ケース。<span class="sbd-text-red">ゲーミングPCを思わせる洗練されたデザイン</span>は気になるものの、聞いたことのないメーカーの製品で購入をためらう人も多いはずです。</p>



<!-- START MoshimoAffiliateEasyLink -->
<script type="text/javascript">
(function(b,c,f,g,a,d,e){b.MoshimoAffiliateObject=a;
b[a]=b[a]||function(){arguments.currentScript=c.currentScript
||c.scripts[c.scripts.length-2];(b[a].q=b[a].q||[]).push(arguments)};
c.getElementById(a)||(d=c.createElement(f),d.src=g,
d.id=a,e=c.getElementsByTagName("body")[0],e.appendChild(d))})
(window,document,"script","//dn.msmstatic.com/site/cardlink/bundle.js?20220329","msmaflink");
msmaflink({"n":"ElectroCookie Raspberry Pi 4ケース アルミニウムミニタワーケース 冷却ファンと色が変わる環境ライト付き (マットブラック\u0026ダークグレー)","b":"ElectroCookie","t":"Raspi DT Case_Neon","d":"https:\/\/m.media-amazon.com","c_p":"\/images\/I","p":["\/41Ipq0IY0vL._SL500_.jpg","\/41YGrh2kEeL._SL500_.jpg","\/51LdPp31-kL._SL500_.jpg","\/41CWMX3mRTL._SL500_.jpg","\/41OVR5vAQoL._SL500_.jpg","\/419uilb8VBL._SL500_.jpg","\/4156CZ7BI1L._SL500_.jpg","\/41AF7ie9i2L._SL500_.jpg","\/41ORNpJJwIL._SL500_.jpg"],"u":{"u":"https:\/\/www.amazon.co.jp\/dp\/B09QG349ZL","t":"amazon","r_v":""},"v":"2.1","b_l":[{"id":1,"u_tx":"Amazonで見る","u_bc":"#f79256","u_url":"https:\/\/www.amazon.co.jp\/dp\/B09QG349ZL","a_id":3038653,"p_id":170,"pl_id":27060,"pc_id":185,"s_n":"amazon","u_so":1},{"id":2,"u_tx":"楽天市場で見る","u_bc":"#f76956","u_url":"https:\/\/search.rakuten.co.jp\/search\/mall\/ElectroCookie%20Raspberry%20Pi%204%E3%82%B1%E3%83%BC%E3%82%B9%20%E3%82%A2%E3%83%AB%E3%83%9F%E3%83%8B%E3%82%A6%E3%83%A0%E3%83%9F%E3%83%8B%E3%82%BF%E3%83%AF%E3%83%BC%E3%82%B1%E3%83%BC%E3%82%B9%20%E5%86%B7%E5%8D%B4%E3%83%95%E3%82%A1%E3%83%B3%E3%81%A8%E8%89%B2%E3%81%8C%E5%A4%89%E3%82%8F%E3%82%8B%E7%92%B0%E5%A2%83%E3%83%A9%E3%82%A4%E3%83%88%E4%BB%98%E3%81%8D%20(%E3%83%9E%E3%83%83%E3%83%88%E3%83%96%E3%83%A9%E3%83%83%E3%82%AF%26%E3%83%80%E3%83%BC%E3%82%AF%E3%82%B0%E3%83%AC%E3%83%BC)\/","a_id":3038654,"p_id":54,"pl_id":27059,"pc_id":54,"s_n":"rakuten","u_so":2}],"eid":"2wxKD","s":"s"});
</script>
<div id="msmaflink-2wxKD">リンク</div>
<!-- MoshimoAffiliateEasyLink END -->



<p>今回は、その魅力的なラズパイケースのすべてをレビューします。後半では、類似商品である<a href="https://sozorablog.com/pironman/">Pironman</a>との違いにも触れながら、どんな人がこの製品を買うべきなのかを解説していきます。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="534" src="https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie22.jpg" alt="" class="wp-image-11268" srcset="https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie22.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie22-300x200.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie22-768x513.jpg 768w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<div class="pb-compare-box" data-colset="1"><div class="pb-compare-box__head"><div class="pb-compare-box__head__l">メリット</div><div class="pb-compare-box__head__r">デメリット</div></div>
<div class="pb-compare-box__body">
<div class="pb-compare-box__body__l">
<ul class="pb-list -icon-dot"><li>シンプルデザインにLEDの輝きが映える外観</li><li>黒好きにはたまらないアルミの風合い</li><li>コスパ良好</li><li>ラズパイのソフト設定は不要。組み立てればすぐに使える</li></ul>
</div>



<div class="pb-compare-box__body__r">
<ul class="pb-list -icon-dot"><li>ファンの運転停止ができない</li><li>LEDの点灯パターンは変更不可</li></ul>
</div>
</div>
</div>



<figure class="wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio"><div class="wp-block-embed__wrapper">
<iframe loading="lazy" title="ElectroCookie | Raspberry Pi 4 Case, Aluminum Mini Tower Case with Cooling Fan" width="500" height="281" src="https://www.youtube.com/embed/ogjFkrOSeqM?feature=oembed" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
</div></figure>



<h2 class="wp-block-heading">開封～組み立て</h2>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="618" src="https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie7.jpg" alt="" class="wp-image-11242" srcset="https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie7.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie7-300x232.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie7-768x593.jpg 768w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>ElectroCookie Raspberry Pi 4ケースの箱です。意外とコンパクトなサイズです。組み立て時間は<span class="sbd-text-red">30分</span>でした。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="613" src="https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie8.jpg" alt="" class="wp-image-11243" srcset="https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie8.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie8-300x230.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie8-768x588.jpg 768w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>キットの部品数は少なめです。組み立てが得意でない方でも、安心して作業できます。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="598" src="https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie9.jpg" alt="" class="wp-image-11244" srcset="https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie9.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie9-300x224.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie9-768x574.jpg 768w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>取説は両面になっています。組み立ての指示については図だけで十分に理解できます。特に迷うことはありませんでした。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="451" src="https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie10.jpg" alt="" class="wp-image-11245" srcset="https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie10.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie10-300x169.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie10-768x433.jpg 768w, https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie10-320x180.jpg 320w, https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie10-224x126.jpg 224w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>付属のドライバーは、なぜかマイナスドライバーでしたが、特に不便に感じることなく作業できました。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="449" src="https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie11.jpg" alt="" class="wp-image-11246" srcset="https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie11.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie11-300x168.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie11-768x431.jpg 768w, https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie11-320x180.jpg 320w, https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie11-224x126.jpg 224w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>Raspberry Pi 4のSoCの部分に背の高いヒートシンクを取り付けます。ファンが高い位置に付くので、高さをかせぐ必要あるようです。ここをしっかりと冷却することで、ラズパイは本来の能力を発揮できます。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="604" src="https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie12.jpg" alt="" class="wp-image-11247" srcset="https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie12.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie12-300x227.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie12-768x580.jpg 768w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>ラズパイ本体をケースに入れます。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="535" src="https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie13.jpg" alt="" class="wp-image-11248" srcset="https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie13.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie13-300x201.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie13-768x514.jpg 768w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>サイドパネルは透け感のあるブラックです。このパネル越しに光るLEDがサイバー感を盛り上げます。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="536" src="https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie14.jpg" alt="" class="wp-image-11251" srcset="https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie14.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie14-300x201.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie14-768x515.jpg 768w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>冷却ファンをパネルに取り付けます。ファンにはフルカラーLEDが入っています。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="530" src="https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie15.jpg" alt="" class="wp-image-11252" srcset="https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie15.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie15-300x199.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie15-768x509.jpg 768w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>上の写真はLEDの基板とGPIOピンを延長するための基板が一緒になったものです。左側に<span class="sbd-text-red">LEDの明るさを調整する青いツマミ</span>が付いています。このツマミはケース組み立て後でも調整可能です。また右端には冷却ファンの電源用のピンが付いています。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="532" src="https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie16.jpg" alt="" class="wp-image-11253" srcset="https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie16.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie16-300x200.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie16-768x511.jpg 768w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>LEDの基板はラズパイ本体のGPIOピンにまるごと差し込むだけなので、楽ちんです。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="532" src="https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie17.jpg" alt="" class="wp-image-11257" srcset="https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie17.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie17-300x200.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie17-768x511.jpg 768w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>サイドパネルを両面取り付けて完成。早く光らせたい。</p>



<h2 class="wp-block-heading">いざ起動</h2>



<p>ACアダプターのUSBケーブルを接続します。サイドパネルには穴が開いており、コネクターにアクセス可能です。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="534" src="https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie25.jpg" alt="" class="wp-image-11271" srcset="https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie25.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie25-300x200.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie25-768x513.jpg 768w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>電源を入れるとすぐに、冷却ファンが稼働し始め、LEDも点灯します。<span class="sbd-text-bg-yellow">ラズベリーパイの設定は一切必要なく</span>、簡単に使用開始できます。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie24.jpg" alt="" class="wp-image-11270" style="width:800px;height:566px" width="800" height="566"/></figure>



<p>半透明のパネルから透けるLEDがかっこいいです。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="533" src="https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie27.jpg" alt="" class="wp-image-11274" srcset="https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie27.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie27-300x200.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie27-768x512.jpg 768w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>LEDの色は周期的に変化します。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="532" src="https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie28.jpg" alt="" class="wp-image-11275" srcset="https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie28.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie28-300x200.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie28-768x511.jpg 768w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>見た目のクールさとコンパクトさのギャップがたまりません。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="534" src="https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie29.jpg" alt="" class="wp-image-11276" srcset="https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie29.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie29-300x200.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie29-768x513.jpg 768w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>LEDの明るさはドライバーを使って調整できます。左いっぱいに回せば、LEDを消灯することも可能です。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="534" src="https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie23.jpg" alt="" class="wp-image-11269" srcset="https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie23.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie23-300x200.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie23-768x513.jpg 768w" sizes="(max-width: 800px) 100vw, 800px" /><figcaption class="wp-element-caption">LEDの明るさを調節</figcaption></figure>



<p>冷却ファンは連続運転です。環境によっては、少し音が気になるかもしれません。冷却ファン側にもLEDが付いており、こちらも周期的に色が変化します。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="665" src="https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie26.jpg" alt="" class="wp-image-11272" srcset="https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie26.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie26-300x249.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie26-768x638.jpg 768w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>背面の穴からmicroSDカードを交換できるのも、便利なポイントです。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie30.jpg" alt="" class="wp-image-11277" style="width:800px;height:563px" width="800" height="563"/></figure>



<p>また、GPIOピンはすべて使用できます。電子パーツを接続して、動作確認するときに便利です。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="534" src="https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie31.jpg" alt="" class="wp-image-11281" srcset="https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie31.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie31-300x200.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie31-768x513.jpg 768w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>以下の動画は<a href="https://sozorablog.com/servo/">サーボモーター</a>をつないで動かした様子です。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="151" height="174" src="https://sozorablog.com/wp-content/uploads/2023/06/servo-test.gif" alt="" class="wp-image-11280"/></figure>



<h2 class="wp-block-heading">冷却効果の検証</h2>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="749" src="https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie32.jpg" alt="" class="wp-image-11298" srcset="https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie32.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie32-300x281.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie32-768x719.jpg 768w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>発熱しやすいRaspberry Pi 4にとっては、冷却効果が重要な要素となります。ここからはケースに搭載された冷却ファンの効果を検証していきましょう。</p>



<p>冷却ファンは電源が供給されている間は運転を継続します。今回のテストでは電源ワイヤーとファンの間に手持ちの<span class="sbd-text-bg-yellow">スイッチ</span>を追加して、<strong><span class="sbd-text-red">ファンの運転前後のCPU温度を比較します</span></strong>。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie4.jpg" alt="" class="wp-image-11237" style="width:800px;height:566px" width="800" height="566"/><figcaption class="wp-element-caption">使用したスイッチ</figcaption></figure>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="643" src="https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie5.jpg" alt="" class="wp-image-11238" srcset="https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie5.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie5-300x241.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie5-768x617.jpg 768w" sizes="(max-width: 800px) 100vw, 800px" /><figcaption class="wp-element-caption">スイッチを追加した様子</figcaption></figure>



<p>テストの条件は以下の通りです。</p>



<figure class="wp-block-table wp-block-sbd-table wp-block-sbd-table-vertical"><table class="has-fixed-layout"><tbody><tr><td>CPU使用率</td><td>30％前後</td></tr><tr><td>室内温度</td><td>26℃</td></tr><tr><td>テスト方法</td><td>ファンの運転して温度の変化を測定<br>（Pythonスクリプトでグラフを表示）</td></tr></tbody></table><figcaption class="wp-element-caption">テストの条件</figcaption></figure>



<p>以下はテストで使用したPythonスクリプトです。CPU温度をリアルタイムでプロットします。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-python" data-lang="Python"><code>import numpy as np
import sys
import time
import matplotlib.pyplot as plt
import datetime
import pandas as pd
import subprocess
import re

count = 0

max_plot_num = 1500
history_x = []
history_y = []
ax = plt.subplot()

while True:
    # 現在のcpu温度の取得
    proc = subprocess.run([&quot;vcgencmd&quot;, &quot;measure_temp&quot;], stdout = subprocess.PIPE, stderr = subprocess.PIPE)
    proc_tmp = re.split(&quot;[=\&#39;]&quot;, proc.stdout.decode(&quot;utf8&quot;))
    print(proc_tmp[1],&quot; &quot;,count)
    temp_c = proc_tmp[1]
    
    date1 = datetime.datetime.now()
    date_p = pd.to_datetime(date1.strftime(&quot;%H:%M:%S.%f&quot;))
    history_x.append(date_p)
    history_y.append(float(temp_c))
    ax.clear()
    ax.plot(history_x[-max_plot_num:],history_y[-max_plot_num:], &#39;-&#39;)
    plt.ylim(30,50.0)
    plt.grid(True)
    plt.xticks(rotation=30)
    plt.xlabel(&#39;date&#39;)
    plt.ylabel(&#39;cpu temp&#39;)
    plt.pause(0.3)
    
    count = count+1</code></pre></div>



<p>上記のPythonスクリプトを実行後、しばらくしてからスイッチを入れて、ファンを運転します。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="625" src="https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie6.jpg" alt="" class="wp-image-11239" srcset="https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie6.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie6-300x234.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie6-768x600.jpg 768w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="450" src="https://sozorablog.com/wp-content/uploads/2023/06/temp-test3.png" alt="" class="wp-image-11236" srcset="https://sozorablog.com/wp-content/uploads/2023/06/temp-test3.png 800w, https://sozorablog.com/wp-content/uploads/2023/06/temp-test3-300x169.png 300w, https://sozorablog.com/wp-content/uploads/2023/06/temp-test3-768x432.png 768w, https://sozorablog.com/wp-content/uploads/2023/06/temp-test3-320x180.png 320w, https://sozorablog.com/wp-content/uploads/2023/06/temp-test3-224x126.png 224w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>テスト結果は3分で50℃から41℃になり、<span class="sbd-text-red">9℃低下</span>しました。見た目だけではなく、ファンの冷却効果は確実にあるといえます。</p>



<h2 class="wp-block-heading">類似製品「Pironman」との比較</h2>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="450" src="https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie21.jpg" alt="" class="wp-image-11263" srcset="https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie21.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie21-300x169.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie21-768x432.jpg 768w, https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie21-320x180.jpg 320w, https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie21-224x126.jpg 224w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>同じくAmazonで販売されているラズパイ４用ケース<a href="https://sozorablog.com/pironman/">Pironman</a>との違いを見ていきましょう。</p>



<figure class="wp-block-table wp-block-sbd-table wp-block-sbd-table-vertical sbd-table--scroll sbd-table--scroll-none"><table class="has-fixed-layout"><thead><tr><th></th><th><img decoding="async" width="90" height="90" class="wp-image-11259" style="width: 90px;" src="https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie18.jpg" alt="" srcset="https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie18.jpg 483w, https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie18-300x300.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie18-150x150.jpg 150w" sizes="(max-width: 90px) 100vw, 90px" /><br>ElectroCookie</th><th><img decoding="async" width="95" height="99" class="wp-image-11260" style="width: 95px;" src="https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie19.jpg" alt="" srcset="https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie19.jpg 537w, https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie19-287x300.jpg 287w" sizes="(max-width: 95px) 100vw, 95px" /><br>Pironman</th></tr></thead><tbody><tr><td>参考価格</td><td>4,890円</td><td>9,980円</td></tr><tr><td>メーカー</td><td>ElectroCookie</td><td>SunFounder</td></tr><tr><td>サイズ</td><td>9.8×9.8×6.2cm</td><td>16×14×9cm</td></tr><tr><td>冷却方式</td><td>冷却ファン</td><td><span class="sbd-table-bg-circle">アイスタワー<br>冷却ファン</span></td></tr><tr><td>冷却ファンの<br>運転条件</td><td>常時運転</td><td>運転条件の<br>設定が可能</td></tr><tr><td>電源ボタン</td><td>なし</td><td>あり</td></tr><tr><td>インフォメーション<br>ディスプレイ</td><td>なし</td><td>あり</td></tr><tr><td>LEDの点灯<br>パターン</td><td>変更不可</td><td><span class="sbd-table-bg-circle">変更可能</span></td></tr><tr><td>専用ソフトウェア<br>のインストール</td><td>不要</td><td>必要</td></tr></tbody></table></figure>



<div class="wp-block-sbd-background-block sbd-bg-color sbd-inner-block-init is-style-yellow">
<p>PIRONMANの詳細は以下の記事で詳しく解説しています。<br><span class="sbd-text-bold"><a href="https://sozorablog.com/pironman/">≫【ゲーミングPC風】Raspberry Pi 4用ミニPCケースPIRONMANをレビュー</a></span></p>
</div>



<p>ElectroCookieとPironmanの大きな違いは、それが<span class="sbd-text-red">「単なるケース」であるかどうか</span>という観点になります。ElectroCookieは、ラズベリーパイを保護する基本的なケースの役割に、冷却ファンとLEDの電飾を追加した製品です。これに対して、Pironmanは単なる保護ケースではなく、ラズベリーパイの便利さを高める機能や、<span class="sbd-text-bg-yellow">カスタマイズを楽しむための様々なオプション</span>が組み込まれています。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="534" src="https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie21-1.jpg" alt="" class="wp-image-11265" srcset="https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie21-1.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie21-1-300x200.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/06/ElectroCookie21-1-768x513.jpg 768w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>Pironmanは多機能である反面、初心者にとっては組み立てや設定が少々難しく感じるかもしれません。一方、シンプルな設計のElectroCookieは、その手軽さから<span class="sbd-text-red">すぐに組み立てて使用開始できる</span>メリットがあります。</p>



<p>黒が好きで、ケースにあまりお金をかけたくない方はElectroCookieがおすすめです。予算に余裕があり、<span class="sbd-text-bg-yellow">ワクワクしながらラズベリーパイを使いたい方</span>はPironmanを選ぶと良いでしょう。</p>



<!-- START MoshimoAffiliateEasyLink -->
<script type="text/javascript">
(function(b,c,f,g,a,d,e){b.MoshimoAffiliateObject=a;
b[a]=b[a]||function(){arguments.currentScript=c.currentScript
||c.scripts[c.scripts.length-2];(b[a].q=b[a].q||[]).push(arguments)};
c.getElementById(a)||(d=c.createElement(f),d.src=g,
d.id=a,e=c.getElementsByTagName("body")[0],e.appendChild(d))})
(window,document,"script","//dn.msmstatic.com/site/cardlink/bundle.js?20220329","msmaflink");
msmaflink({"n":"ElectroCookie Raspberry Pi 4ケース アルミニウムミニタワーケース 冷却ファンと色が変わる環境ライト付き (マットブラック\u0026ダークグレー)","b":"ElectroCookie","t":"Raspi DT Case_Neon","d":"https:\/\/m.media-amazon.com","c_p":"\/images\/I","p":["\/41Ipq0IY0vL._SL500_.jpg","\/41YGrh2kEeL._SL500_.jpg","\/51LdPp31-kL._SL500_.jpg","\/41CWMX3mRTL._SL500_.jpg","\/41OVR5vAQoL._SL500_.jpg","\/419uilb8VBL._SL500_.jpg","\/4156CZ7BI1L._SL500_.jpg","\/41AF7ie9i2L._SL500_.jpg","\/41ORNpJJwIL._SL500_.jpg"],"u":{"u":"https:\/\/www.amazon.co.jp\/dp\/B09QG349ZL","t":"amazon","r_v":""},"v":"2.1","b_l":[{"id":1,"u_tx":"Amazonで見る","u_bc":"#f79256","u_url":"https:\/\/www.amazon.co.jp\/dp\/B09QG349ZL","a_id":3038653,"p_id":170,"pl_id":27060,"pc_id":185,"s_n":"amazon","u_so":1},{"id":2,"u_tx":"楽天市場で見る","u_bc":"#f76956","u_url":"https:\/\/search.rakuten.co.jp\/search\/mall\/ElectroCookie%20Raspberry%20Pi%204%E3%82%B1%E3%83%BC%E3%82%B9%20%E3%82%A2%E3%83%AB%E3%83%9F%E3%83%8B%E3%82%A6%E3%83%A0%E3%83%9F%E3%83%8B%E3%82%BF%E3%83%AF%E3%83%BC%E3%82%B1%E3%83%BC%E3%82%B9%20%E5%86%B7%E5%8D%B4%E3%83%95%E3%82%A1%E3%83%B3%E3%81%A8%E8%89%B2%E3%81%8C%E5%A4%89%E3%82%8F%E3%82%8B%E7%92%B0%E5%A2%83%E3%83%A9%E3%82%A4%E3%83%88%E4%BB%98%E3%81%8D%20(%E3%83%9E%E3%83%83%E3%83%88%E3%83%96%E3%83%A9%E3%83%83%E3%82%AF%26%E3%83%80%E3%83%BC%E3%82%AF%E3%82%B0%E3%83%AC%E3%83%BC)\/","a_id":3038654,"p_id":54,"pl_id":27059,"pc_id":54,"s_n":"rakuten","u_so":2}],"eid":"2wxKD","s":"s"});
</script>
<div id="msmaflink-2wxKD">リンク</div>
<!-- MoshimoAffiliateEasyLink END -->



<!-- START MoshimoAffiliateEasyLink -->
<script type="text/javascript">
(function(b,c,f,g,a,d,e){b.MoshimoAffiliateObject=a;
b[a]=b[a]||function(){arguments.currentScript=c.currentScript
||c.scripts[c.scripts.length-2];(b[a].q=b[a].q||[]).push(arguments)};
c.getElementById(a)||(d=c.createElement(f),d.src=g,
d.id=a,e=c.getElementsByTagName("body")[0],e.appendChild(d))})
(window,document,"script","//dn.msmstatic.com/site/cardlink/bundle.js?20220329","msmaflink");
msmaflink({"n":"Raspberry Pi 4 ケース、Raspberry Pi Mini PC - アルミ合金製タワーケース、タワークーラー、M.2 SATA SSD 拡張ボード、0.96\u0022 OLED、IR レシーバー、Raspberry Pi 4 用電源ボタン付き","b":"SUNFOUNDER","t":"","d":"https:\/\/m.media-amazon.com","c_p":"\/images\/I","p":["\/41wDLRdxs8L._SL500_.jpg","\/5123YGbQmBL._SL500_.jpg","\/516E7BCndlL._SL500_.jpg","\/51qJwfEEwZL._SL500_.jpg","\/51ex8rehqXL._SL500_.jpg","\/51T8noj-uML._SL500_.jpg","\/51UNDj8c7jL._SL500_.jpg"],"u":{"u":"https:\/\/www.amazon.co.jp\/dp\/B0BL7QLX8W","t":"amazon","r_v":""},"v":"2.1","b_l":[{"id":3,"u_tx":"Amazonで見る","u_bc":"#f79256","u_url":"https:\/\/www.amazon.co.jp\/dp\/B0BL7QLX8W","a_id":3038653,"p_id":170,"pl_id":27060,"pc_id":185,"s_n":"amazon","u_so":1}],"eid":"0sI6l","s":"s"});
</script>
<div id="msmaflink-0sI6l">リンク</div>
<!-- MoshimoAffiliateEasyLink END -->
]]></content:encoded>
					
					<wfw:commentRss>https://sozorablog.com/electrocookie/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>【Kickstarterで大人気】ラズパイがタブレットになるキットRasPad3レビュー</title>
		<link>https://sozorablog.com/raspad3/</link>
					<comments>https://sozorablog.com/raspad3/#respond</comments>
		
		<dc:creator><![CDATA[そぞら]]></dc:creator>
		<pubDate>Wed, 08 Feb 2023 01:29:50 +0000</pubDate>
				<category><![CDATA[Raspberry Pi]]></category>
		<category><![CDATA[関連製品]]></category>
		<guid isPermaLink="false">https://sozorablog.com/?p=10427</guid>

					<description><![CDATA[エンジニアやDIY愛好家に大人気のRaspberry Pi（通称ラズパイ）。ただ、基盤むき出しという見た目のイメージで、「難しそう」と思われることも多いでしょう。 RasPad3はSUNFOUNDER社が製造・販売してい [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>エンジニアやDIY愛好家に大人気の<a href="https://sozorablog.com/what-is-raspberry-pi/">Raspberry Pi</a>（通称ラズパイ）。ただ、基盤むき出しという見た目のイメージで、「難しそう」と思われることも多いでしょう。</p>



<p>RasPad3は<a href="https://www.sunfounder.com/?ref=cDXZo4Vb">SUNFOUNDER</a>社が製造・販売している、<a href="https://sozorablog.com/raspberry-pi-4-revue/">Raspberry Pi 4</a>を<span class="sbd-text-red">タブレット化できるキット</span>です。ラズパイを中に入れてタブレットのように使用できます。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="450" src="https://sozorablog.com/wp-content/uploads/2023/02/raspad33-4.jpg" alt="" class="wp-image-10734" srcset="https://sozorablog.com/wp-content/uploads/2023/02/raspad33-4.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/02/raspad33-4-300x169.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/02/raspad33-4-768x432.jpg 768w, https://sozorablog.com/wp-content/uploads/2023/02/raspad33-4-320x180.jpg 320w, https://sozorablog.com/wp-content/uploads/2023/02/raspad33-4-224x126.jpg 224w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>ITが苦手な方でも思わず手に取ってしまうような、スタイリッシュで親しみやすいデザインが特徴です。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="597" src="https://sozorablog.com/wp-content/uploads/2023/02/raspad48.png.jpg" alt="" class="wp-image-10649" srcset="https://sozorablog.com/wp-content/uploads/2023/02/raspad48.png.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/02/raspad48.png-300x224.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/02/raspad48.png-768x573.jpg 768w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>通常のラズパイと同様に、コンピューター教育や電子工作などに利用できるRasPad3。エンジニアが使う<a href="https://sozorablog.com/raspberry-pi-os/">LinuxベースのOS</a>を気軽に触ることができるため、お子様の学習用タブレットにも適しています。</p>



<div class="wp-block-sbd-balloon sbd-balloon sbd-balloon--id-4 sbd-balloon--flat sbd-balloon--l sbd-balloon--green block-box"><div class="sbd-balloon__profile"><figure class="sbd-balloon__icon"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2021/09/アイコン.jpg" alt="そぞら" class="sbd-balloon__img"/></figure><div class="sbd-balloon__name">そぞら</div></div><div class="sbd-balloon__text-box sbd-inner-block-init">
<p>この記事ではRasPad3のデザインやスペック、使用感などを詳しくレビューします。</p>
</div></div>



<div class="wp-block-sbd-background-block sbd-bg-color sbd-inner-block-init is-style-yellow">
<p>本記事は<a href="https://www.sunfounder.com/?ref=cDXZo4Vb">SUNFOUNDER</a>様から商品をご提供いただき作成しています。</p>
</div>



<p>RasPad3のキットには<span class="sbd-text-red">Raspberry Pi 4は含まれていません</span>。ラズパイ本体とmicroSDカードは別途用意する必要があります。</p>



<!-- START MoshimoAffiliateEasyLink -->
<script type="text/javascript">
(function(b,c,f,g,a,d,e){b.MoshimoAffiliateObject=a;
b[a]=b[a]||function(){arguments.currentScript=c.currentScript
||c.scripts[c.scripts.length-2];(b[a].q=b[a].q||[]).push(arguments)};
c.getElementById(a)||(d=c.createElement(f),d.src=g,
d.id=a,e=c.getElementsByTagName("body")[0],e.appendChild(d))})
(window,document,"script","//dn.msmstatic.com/site/cardlink/bundle.js?20220329","msmaflink");
msmaflink({"n":"SunFounder Raspberry Pi 4B タブレット、RasPad3.0、ポータブルRaspberry Pi ディスプレイ、バッテリー、冷却ファン、スピーカー内蔵、一体型タッチモニター、,IoT\/自動操縦プロジェクト、ゲーム\/3Dプリント\/プログラミング学習用(!!!※Raspberry Pi 4Bメインボード、SDカードは付属されていません)","b":"SUNFOUNDER","t":"SF-00066","d":"https:\/\/m.media-amazon.com","c_p":"\/images\/I","p":["\/41Y30Qf30HS._SL500_.jpg","\/41c-ruP7eiS._SL500_.jpg","\/51lt0dOCpfS._SL500_.jpg","\/519ObJfdSqS._SL500_.jpg","\/51oCwEVSJJL._SL500_.jpg","\/41k4yRFpgML._SL500_.jpg","\/41u5r+frdOL._SL500_.jpg","\/51xnnuCJi3L._SL500_.jpg","\/51uFVu3yJrL._SL500_.jpg"],"u":{"u":"https:\/\/www.amazon.co.jp\/dp\/B09RWHQL9K","t":"amazon","r_v":""},"v":"2.1","b_l":[{"id":3,"u_tx":"Amazonで見る","u_bc":"#f79256","u_url":"https:\/\/www.amazon.co.jp\/dp\/B09RWHQL9K","a_id":3038653,"p_id":170,"pl_id":27060,"pc_id":185,"s_n":"amazon","u_so":0}],"eid":"HRqlr","s":"s"});
</script>
<div id="msmaflink-HRqlr">リンク</div>
<!-- MoshimoAffiliateEasyLink END -->



<div class="pb-compare-box" data-colset="1"><div class="pb-compare-box__head"><div class="pb-compare-box__head__l">メリット</div><div class="pb-compare-box__head__r">デメリット</div></div>
<div class="pb-compare-box__body">
<div class="pb-compare-box__body__l">
<ul class="pb-list -icon-dot"><li>持ち運びしやすい</li><li>バッテリー内蔵なので、どこでもすぐにラズパイを使える</li><li>Scratchを使ったプログラミングが快適にできる</li><li>お子様の学習用途にも最適</li><li>スピーカー内蔵</li></ul>
</div>



<div class="pb-compare-box__body__r">
<ul class="pb-list -icon-dot"><li>価格が高め</li><li>ファンの音が気になる</li><li>重い</li></ul>
</div>
</div>
</div>



<h2 class="wp-block-heading">RasPad3のスペックとデザイン</h2>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="450" src="https://sozorablog.com/wp-content/uploads/2023/02/raspad18-1.jpg" alt="" class="wp-image-10601" srcset="https://sozorablog.com/wp-content/uploads/2023/02/raspad18-1.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/02/raspad18-1-300x169.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/02/raspad18-1-768x432.jpg 768w, https://sozorablog.com/wp-content/uploads/2023/02/raspad18-1-320x180.jpg 320w, https://sozorablog.com/wp-content/uploads/2023/02/raspad18-1-224x126.jpg 224w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>世界中で販売されている<span class="sbd-text-bold">RasPad3</span>。クラウドファンディングサイト<a href="https://www.kickstarter.com/projects/raspad3/raspad-3-portable-raspberry-pipad-for-hardware-programming?">Kickstarter</a>において、目標金額を大きく上回る$313,431の調達に成功しています。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="553" src="https://sozorablog.com/wp-content/uploads/2023/02/raspad49.jpg" alt="" class="wp-image-10689" srcset="https://sozorablog.com/wp-content/uploads/2023/02/raspad49.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/02/raspad49-300x207.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/02/raspad49-768x531.jpg 768w" sizes="(max-width: 800px) 100vw, 800px" /><figcaption class="wp-element-caption">出典：<a href="https://www.kickstarter.com/projects/raspad3/raspad-3-portable-raspberry-pipad-for-hardware-programming?">Kickstarter</a></figcaption></figure>



<h3 class="wp-block-heading">タブレットのスペック</h3>



<figure class="wp-block-table wp-block-sbd-table wp-block-sbd-table-vertical"><table class="has-fixed-layout"><thead><tr><th>製品名</th><th>RasPad 3</th></tr></thead><tbody><tr><td>価格</td><td>23,998円</td></tr><tr><td>ディスプレイ</td><td>10.1 インチ IPS タッチスクリーン LCD モニター<br>（1280 × 800）</td></tr><tr><td>サイズ</td><td>258 × 170 × 48mm</td></tr><tr><td>重さ</td><td>942g</td></tr><tr><td>オーディオ</td><td>3.5mmステレオジャック<br>ステレオ スピーカー</td></tr><tr><td>バッテリー</td><td>最大5時間<br>実測2時間30分</td></tr></tbody></table></figure>



<p>画面サイズは10.1インチ。タップ操作が問題なくできる<span class="sbd-text-red">ちょうどいいサイズ</span>だと感じました。</p>



<h3 class="wp-block-heading">CPU（ラズパイ）のスペック</h3>



<p>CPUやメモリのスペックは、中に入れる<a href="https://sozorablog.com/raspberry-pi-4-revue/">Raspberry Pi 4</a>のスペックに依存します。</p>



<figure class="wp-block-table wp-block-sbd-table wp-block-sbd-table-vertical"><table><thead><tr><th>製品名</th><th>Raspberry Pi 4 Model B</th></tr></thead><tbody><tr><td>SoC</td><td>Broadcom BCM2711</td></tr><tr><td>CPU</td><td><a href="https://www.arm.com/ja/products/silicon-ip-cpu/cortex-a/cortex-a72">Cortex-A72</a> (ARM v8) 64-bit SoC @ 1.5GHz × 4（4コア）</td></tr><tr><td>メモリ</td><td><a href="https://www.switch-science.com/collections/raspberry-pi/products/5681">2GB</a>、<a href="https://www.switch-science.com/collections/raspberry-pi/products/5680">4GB</a>、<a href="https://www.switch-science.com/collections/raspberry-pi/products/6370">8GB</a></td></tr><tr><td>参考価格<br>（<a href="https://www.switch-science.com/collections/raspberry-pi/products/6370">スイッチサイエンス</a>）</td><td>2GB：8,250円<br>4GB：9,900円<br>8GB：13,200円</td></tr></tbody></table></figure>



<h4 class="wp-block-heading">ラズパイは自分で用意する</h4>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="450" src="https://sozorablog.com/wp-content/uploads/2022/07/Appearance-of-Raspberry-Pi.jpg" alt="" class="wp-image-10119" srcset="https://sozorablog.com/wp-content/uploads/2022/07/Appearance-of-Raspberry-Pi.jpg 800w, https://sozorablog.com/wp-content/uploads/2022/07/Appearance-of-Raspberry-Pi-300x169.jpg 300w, https://sozorablog.com/wp-content/uploads/2022/07/Appearance-of-Raspberry-Pi-768x432.jpg 768w, https://sozorablog.com/wp-content/uploads/2022/07/Appearance-of-Raspberry-Pi-320x180.jpg 320w, https://sozorablog.com/wp-content/uploads/2022/07/Appearance-of-Raspberry-Pi-224x126.jpg 224w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>RasPad3に組み込むことができるラズパイは<a href="https://sozorablog.com/raspberry-pi-4-revue/">Raspberry Pi 4 Model B</a>だけです。Raspberry Pi 3 Model Bなどは基板サイズが同じでも使用できません。</p>



<div class="wp-block-sbd-balloon sbd-balloon sbd-balloon--id-4 sbd-balloon--flat sbd-balloon--l sbd-balloon--green block-box"><div class="sbd-balloon__profile"><figure class="sbd-balloon__icon"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2021/09/アイコン.jpg" alt="そぞら" class="sbd-balloon__img"/></figure><div class="sbd-balloon__name">そぞら</div></div><div class="sbd-balloon__text-box sbd-inner-block-init">
<p>Raspberry Pi 4 Model Bは<span class="sbd-text-bold">メモリ</span>が3種類ありますが、どれでも使用可能です。</p>
</div></div>



<p>使用できるラズベリーパイは次の３種類です。</p>



<div class="wp-block-sbd-list"><ul class="sbd-list sbd-list-border"><li>Raspberry Pi 4 Model B 2GB</li><li>Raspberry Pi 4 Model B 4GB</li><li>Raspberry Pi 4 Model B 8GB</li></ul></div>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="450" src="https://sozorablog.com/wp-content/uploads/2023/01/3-types-raspberry-pi-4.jpg" alt="" class="wp-image-10542" srcset="https://sozorablog.com/wp-content/uploads/2023/01/3-types-raspberry-pi-4.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/01/3-types-raspberry-pi-4-300x169.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/01/3-types-raspberry-pi-4-768x432.jpg 768w, https://sozorablog.com/wp-content/uploads/2023/01/3-types-raspberry-pi-4-320x180.jpg 320w, https://sozorablog.com/wp-content/uploads/2023/01/3-types-raspberry-pi-4-224x126.jpg 224w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<div class="wp-block-sbd-background-block sbd-bg-color sbd-inner-block-init is-style-yellow">
<p>Raspberry Pi 4の<span class="sbd-text-bold">メモリ</span>の選び方について以下の記事で詳しく解説しています。<br><a href="https://sozorablog.com/how-to-choose-raspberry-pi-4-memory/"><span class="sbd-text-bold">≫【徹底比較】Raspberry Pi 4は2GB、４GB、８GBどれを選ぶ？</span></a></p>
</div>



<p>僕はRaspberry Pi 4 Model Bの<span class="sbd-text-bold">2GBモデル</span>を使用しました。</p>



<h3 class="wp-block-heading">充実したインターフェース</h3>



<p>USBポートは高速なデータ通信が可能な規格であるUSB3.0が3か所あります。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="450" src="https://sozorablog.com/wp-content/uploads/2023/02/raspad15.jpg" alt="" class="wp-image-10550" srcset="https://sozorablog.com/wp-content/uploads/2023/02/raspad15.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/02/raspad15-300x169.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/02/raspad15-768x432.jpg 768w, https://sozorablog.com/wp-content/uploads/2023/02/raspad15-320x180.jpg 320w, https://sozorablog.com/wp-content/uploads/2023/02/raspad15-224x126.jpg 224w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>バッテリー残量は3段階のLED点灯で確認できます。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="450" src="https://sozorablog.com/wp-content/uploads/2023/02/raspad16.jpg" alt="" class="wp-image-10551" srcset="https://sozorablog.com/wp-content/uploads/2023/02/raspad16.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/02/raspad16-300x169.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/02/raspad16-768x432.jpg 768w, https://sozorablog.com/wp-content/uploads/2023/02/raspad16-320x180.jpg 320w, https://sozorablog.com/wp-content/uploads/2023/02/raspad16-224x126.jpg 224w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>microSDカードのスロットは外側に付いているため、カード交換が容易です。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="450" src="https://sozorablog.com/wp-content/uploads/2023/02/raspad17.jpg" alt="" class="wp-image-10552" srcset="https://sozorablog.com/wp-content/uploads/2023/02/raspad17.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/02/raspad17-300x169.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/02/raspad17-768x432.jpg 768w, https://sozorablog.com/wp-content/uploads/2023/02/raspad17-320x180.jpg 320w, https://sozorablog.com/wp-content/uploads/2023/02/raspad17-224x126.jpg 224w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>冷却ファンは起動中ずっと回転を継続します。運転・停止や回転数の制御はできません。</p>



<h2 class="wp-block-heading">開封～組み立て</h2>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="599" src="https://sozorablog.com/wp-content/uploads/2023/01/raspad3.jpg" alt="" class="wp-image-10446" srcset="https://sozorablog.com/wp-content/uploads/2023/01/raspad3.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/01/raspad3-300x225.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/01/raspad3-768x575.jpg 768w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>タブレット本体は組み立てられた状態で入っています。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="604" src="https://sozorablog.com/wp-content/uploads/2023/01/raspad5.jpg" alt="" class="wp-image-10447" srcset="https://sozorablog.com/wp-content/uploads/2023/01/raspad5.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/01/raspad5-300x227.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/01/raspad5-768x580.jpg 768w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>パーツリストが入っています。デザインがおしゃれです。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="602" src="https://sozorablog.com/wp-content/uploads/2023/01/razupad4.jpg" alt="" class="wp-image-10448" srcset="https://sozorablog.com/wp-content/uploads/2023/01/razupad4.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/01/razupad4-300x226.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/01/razupad4-768x578.jpg 768w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>主な付属品は以下の通りです。</p>



<div class="wp-block-sbd-list"><ul class="sbd-list sbd-list-border"><li>冷却ファン</li><li>ヒートシンク</li><li>加速度センサーモジュール</li><li>プラスドライバー</li><li>充電用アダプター</li></ul></div>



<p>パーツの点数はそこまで多くはありません。子供と一緒に楽しみながら作るのも良さそうです。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="530" src="https://sozorablog.com/wp-content/uploads/2023/01/raspad9.jpg" alt="" class="wp-image-10541" srcset="https://sozorablog.com/wp-content/uploads/2023/01/raspad9.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/01/raspad9-300x199.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/01/raspad9-768x509.jpg 768w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>ドライバーが付属しているため、自分で工具を用意する必要はありません。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="531" src="https://sozorablog.com/wp-content/uploads/2023/01/raspad8.jpg" alt="" class="wp-image-10540" srcset="https://sozorablog.com/wp-content/uploads/2023/01/raspad8.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/01/raspad8-300x199.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/01/raspad8-768x510.jpg 768w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>タブレット用の「タッチペン」を連想させる気の利いたデザインのドライバーです。</p>



<h3 class="wp-block-heading">組み立て</h3>



<p>組み立てから使用方法までを解説した<a href="https://docs.raspad.com/en/latest/">オンラインマニュアル</a>があります。英語表記ですが、ブラウザの翻訳機能を使えば問題なく使用可能です。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="450" src="https://sozorablog.com/wp-content/uploads/2023/01/raspad2.jpg" alt="" class="wp-image-10443" srcset="https://sozorablog.com/wp-content/uploads/2023/01/raspad2.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/01/raspad2-300x169.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/01/raspad2-768x432.jpg 768w, https://sozorablog.com/wp-content/uploads/2023/01/raspad2-320x180.jpg 320w, https://sozorablog.com/wp-content/uploads/2023/01/raspad2-224x126.jpg 224w" sizes="(max-width: 800px) 100vw, 800px" /><figcaption class="wp-element-caption"><a href="https://docs.raspad.com/en/latest/">オンラインマニュアル</a></figcaption></figure>



<p><span class="sbd-text-red">組み立て時間は20分</span>かかりました。特に難しい箇所はありません。</p>



<p>まず裏面のふたを取り外します。バッテリーや基板、スピーカーが<span class="sbd-text-bg-yellow">すでに取り付けられています</span>。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="598" src="https://sozorablog.com/wp-content/uploads/2023/02/raspad23-1.jpg" alt="" class="wp-image-10576" srcset="https://sozorablog.com/wp-content/uploads/2023/02/raspad23-1.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/02/raspad23-1-300x224.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/02/raspad23-1-768x574.jpg 768w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>ラズパイ本体を取り付けてケーブルを接続します。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="601" src="https://sozorablog.com/wp-content/uploads/2023/02/raspad25.jpg" alt="" class="wp-image-10577" srcset="https://sozorablog.com/wp-content/uploads/2023/02/raspad25.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/02/raspad25-300x225.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/02/raspad25-768x577.jpg 768w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>加速度センサーをラズパイのGPIOに差し込みます。加速度センサーは<a href="#kaiten">画面の自動回転機能</a>で使う重要なパーツです。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="450" src="https://sozorablog.com/wp-content/uploads/2023/02/raspad26.jpg" alt="" class="wp-image-10578" srcset="https://sozorablog.com/wp-content/uploads/2023/02/raspad26.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/02/raspad26-300x169.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/02/raspad26-768x432.jpg 768w, https://sozorablog.com/wp-content/uploads/2023/02/raspad26-320x180.jpg 320w, https://sozorablog.com/wp-content/uploads/2023/02/raspad26-224x126.jpg 224w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>以下の動画を見ていただくと、組み立ての様子がイメージしやすくなります。</p>



<figure class="wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio"><div class="wp-block-embed__wrapper">
<iframe loading="lazy" title="【RasPad 3】Raspberry Pi 4B をタブレットにするキットが面白い！" width="500" height="281" src="https://www.youtube.com/embed/5CWB3KEnEok?start=13&#038;feature=oembed" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
</div></figure>



<h3 class="wp-block-heading">完成</h3>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="599" src="https://sozorablog.com/wp-content/uploads/2023/02/raspad35.jpg" alt="" class="wp-image-10607" srcset="https://sozorablog.com/wp-content/uploads/2023/02/raspad35.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/02/raspad35-300x225.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/02/raspad35-768x575.jpg 768w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>中身がラズパイとは思えないほどスタイリッシュで高級感のある外観です。その一方で、気になるのは重さです。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="537" src="https://sozorablog.com/wp-content/uploads/2023/02/raspad34.jpg" alt="" class="wp-image-10606" srcset="https://sozorablog.com/wp-content/uploads/2023/02/raspad34.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/02/raspad34-300x201.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/02/raspad34-768x516.jpg 768w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>重量は実測値で942g。一般的な同サイズのタブレットの2倍近い重さであり、片手で長時間持つには重く感じます。</p>



<h3 class="wp-block-heading">使用前に充電する</h3>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="533" src="https://sozorablog.com/wp-content/uploads/2023/02/raspad27.jpg" alt="" class="wp-image-10580" srcset="https://sozorablog.com/wp-content/uploads/2023/02/raspad27.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/02/raspad27-300x200.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/02/raspad27-768x512.jpg 768w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>キットに付属しているアダブターで充電できます。最初の充電時間は2時間かかりました。<span class="sbd-text-red">フル充電から電源が切れるまでの時間は2時間30分</span>。YouTubeの視聴など負荷のかかる使い方をしなければ、3時間前後は使えます。</p>



<h3 class="wp-block-heading">Raspberry Pi OSで使用する</h3>



<p>使用したOSのバージョンは以下の通りです。</p>



<figure class="wp-block-table wp-block-sbd-table wp-block-sbd-table-vertical"><table class="has-fixed-layout"><tbody><tr><td>OSの種類</td><td>Raspberry Pi&nbsp;OS（32-bit）</td></tr><tr><td>デスクトップ画面の有無</td><td>デスクトップ画面有り</td></tr><tr><td>OSのバージョン</td><td>Bullseye</td></tr></tbody></table></figure>



<p>Raspberry Piは別売りの<a href="https://www.amazon.co.jp/gp/product/B08K4214KB/ref=ppx_yo_dt_b_asin_image_o00_s00?ie=UTF8&amp;psc=1">microSDカード</a>にOSをインストールして使用します。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="450" src="https://sozorablog.com/wp-content/uploads/2023/02/raspad29-1.jpg" alt="" class="wp-image-10584" srcset="https://sozorablog.com/wp-content/uploads/2023/02/raspad29-1.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/02/raspad29-1-300x169.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/02/raspad29-1-768x432.jpg 768w, https://sozorablog.com/wp-content/uploads/2023/02/raspad29-1-320x180.jpg 320w, https://sozorablog.com/wp-content/uploads/2023/02/raspad29-1-224x126.jpg 224w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<div class="wp-block-sbd-background-block sbd-bg-color sbd-inner-block-init is-style-yellow">
<p>OSのインストール方法は以下の記事で詳しく解説しています。<br><strong><a href="https://sozorablog.com/raspberrypi_initial_setting/">≫【2023年最新版】OSインストールから初期設定まで｜セットアップ手順のすべて</a></strong></p>
</div>



<p><span class="sbd-text-bold"></span></p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="535" src="https://sozorablog.com/wp-content/uploads/2023/02/raspad28.jpg" alt="" class="wp-image-10582" srcset="https://sozorablog.com/wp-content/uploads/2023/02/raspad28.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/02/raspad28-300x201.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/02/raspad28-768x514.jpg 768w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>microSDカードは裏面を上にしてセットします。</p>



<h2 class="wp-block-heading">RasPad3起動</h2>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="450" src="https://sozorablog.com/wp-content/uploads/2023/02/raspad31-1.jpg" alt="" class="wp-image-10589" srcset="https://sozorablog.com/wp-content/uploads/2023/02/raspad31-1.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/02/raspad31-1-300x169.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/02/raspad31-1-768x432.jpg 768w, https://sozorablog.com/wp-content/uploads/2023/02/raspad31-1-320x180.jpg 320w, https://sozorablog.com/wp-content/uploads/2023/02/raspad31-1-224x126.jpg 224w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>初期設定の済んでいないmicroSDカードを使う場合は、以下の画面が立ち上がります。別売りの<a href="https://www.amazon.co.jp/gp/product/B077MJ1RYM/ref=ppx_yo_dt_b_asin_title_o00_s00?ie=UTF8&amp;psc=1">USBキーボード</a>を使って<a href="https://sozorablog.com/raspberrypi_initial_setting/">初期設定</a>をしましょう。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="693" src="https://sozorablog.com/wp-content/uploads/2023/02/raspad51.jpg" alt="" class="wp-image-10759" srcset="https://sozorablog.com/wp-content/uploads/2023/02/raspad51.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/02/raspad51-300x260.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/02/raspad51-768x665.jpg 768w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<div class="wp-block-sbd-background-block sbd-bg-color sbd-inner-block-init is-style-yellow">
<p>初期設定の方法は以下の記事で詳しく解説しています。<br><strong><a href="https://sozorablog.com/raspberrypi_initial_setting/">≫【2023年最新版】OSインストールから初期設定まで｜セットアップ手順のすべて</a></strong></p>
</div>



<p>解像度1280×800のIPS液晶パネルはどの角度から見ても美しいです。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="537" src="https://sozorablog.com/wp-content/uploads/2023/02/raspad32.jpg" alt="" class="wp-image-10591" srcset="https://sozorablog.com/wp-content/uploads/2023/02/raspad32.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/02/raspad32-300x201.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/02/raspad32-768x516.jpg 768w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>電源を入れると、裏面の冷却ファンが回転します。そこまで大きい音ではありませんが、電源を切ったときにファンが停止すると、静かになったなと感じます。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="450" src="https://sozorablog.com/wp-content/uploads/2023/02/raspad30.jpg" alt="" class="wp-image-10586" srcset="https://sozorablog.com/wp-content/uploads/2023/02/raspad30.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/02/raspad30-300x169.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/02/raspad30-768x432.jpg 768w, https://sozorablog.com/wp-content/uploads/2023/02/raspad30-320x180.jpg 320w, https://sozorablog.com/wp-content/uploads/2023/02/raspad30-224x126.jpg 224w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>発熱しやすいことが特徴であるRaspberry Pi 4。タブレットの内部という<span class="sbd-text-red">密閉された空間で使用するには冷却ファンが必須です</span>。安定した処理能力を維持するためならば、ファンの音は目をつぶれるレベルといえます。</p>



<h3 class="wp-block-heading">タブレットとして使用するための設定をする</h3>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="599" src="https://sozorablog.com/wp-content/uploads/2023/01/raspad7.jpg" alt="" class="wp-image-10538" srcset="https://sozorablog.com/wp-content/uploads/2023/01/raspad7.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/01/raspad7-300x225.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/01/raspad7-768x575.jpg 768w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>画面のタップはすぐに使える状態になっています。このほかに、<span class="sbd-text-bold">タブレットの基本的な機能</span>を利用するために以下の設定をします。</p>



<div class="wp-block-sbd-list"><ul class="sbd-list sbd-list-border"><li>仮想キーボード</li><li>右クリックメニュー</li><li>画面の自動回転</li></ul></div>



<p>設定の段階では、コマンドを入力するために、別売りの<a href="https://www.amazon.co.jp/gp/product/B077MJ1RYM/ref=ppx_yo_dt_b_asin_title_o00_s00?ie=UTF8&amp;psc=1">USBキーボード</a>が必要です。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="601" src="https://sozorablog.com/wp-content/uploads/2023/02/raspad22.jpg" alt="" class="wp-image-10564" srcset="https://sozorablog.com/wp-content/uploads/2023/02/raspad22.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/02/raspad22-300x225.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/02/raspad22-768x577.jpg 768w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<h4 class="wp-block-heading">仮想キーボード</h4>



<p>仮想キーボードを設定すると、文字入力の場面で画面上にキーボードが自動で出ます。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="502" src="https://sozorablog.com/wp-content/uploads/2023/02/raspad20.jpg" alt="" class="wp-image-10560" srcset="https://sozorablog.com/wp-content/uploads/2023/02/raspad20.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/02/raspad20-300x188.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/02/raspad20-768x482.jpg 768w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>仮想キーボードを使うには、<span class="sbd-text-bg-yellow">本体を起動するたびに</span>以下のように「Onboard」を立ち上げる必要があり、少し面倒に感じます。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="450" src="https://sozorablog.com/wp-content/uploads/2023/02/raspad21.jpg" alt="" class="wp-image-10561" srcset="https://sozorablog.com/wp-content/uploads/2023/02/raspad21.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/02/raspad21-300x169.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/02/raspad21-768x432.jpg 768w, https://sozorablog.com/wp-content/uploads/2023/02/raspad21-320x180.jpg 320w, https://sozorablog.com/wp-content/uploads/2023/02/raspad21-224x126.jpg 224w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<h4 class="wp-block-heading">右クリックメニュー</h4>



<p>マウスで右クリックしたときのメニューを表示させるときは、2本の指で画面をタップします。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="314" height="279" src="https://sozorablog.com/wp-content/uploads/2023/02/raspad-tap-1.gif" alt="" class="wp-image-10569"/></figure>



<h4 class="wp-block-heading" id="kaiten">画面の自動回転</h4>



<p>タブレットの向きを変えたときに画面が自動で回転する設定ができます。組み立てのときに取り付けた<span class="sbd-text-red">加速度センサーで本体の傾きを検知して画面を回転する</span>仕組みです。</p>



<p>画面が回転する様子は以下のツイートの動画を参考にしてください。</p>



<figure class="wp-block-embed is-type-rich is-provider-twitter wp-block-embed-twitter"><div class="wp-block-embed__wrapper">
<blockquote class="twitter-tweet" data-width="500" data-dnt="true"><p lang="ja" dir="ltr">ラズパイを「タブレット」にできるキット「Ras Pad3」。<br><br>加速度センサーを搭載しているので、画面の「自動回転機能」が使えます。 <a href="https://t.co/OqYV42Hwop">pic.twitter.com/OqYV42Hwop</a></p>&mdash; そぞら@Raspberry Pi 電子工作 (@sozoraemon) <a href="https://twitter.com/sozoraemon/status/1621403819539333120?ref_src=twsrc%5Etfw">February 3, 2023</a></blockquote><script async src="https://platform.twitter.com/widgets.js" charset="utf-8"></script>
</div></figure>



<p>180°回転させるとタブレットが直立するので、立てた状態で使用したいときに便利です。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="598" src="https://sozorablog.com/wp-content/uploads/2023/02/raspad24-1.jpg" alt="" class="wp-image-10567" srcset="https://sozorablog.com/wp-content/uploads/2023/02/raspad24-1.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/02/raspad24-1-300x224.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/02/raspad24-1-768x574.jpg 768w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<h3 class="wp-block-heading">「RasPad Launcher」をインストール</h3>



<p>RasPad3には専用のソフトである<span class="sbd-text-red">RasPad Launcher</span>が用意されています。RasPad Launcherをインストールするとスタートメニューの表示が変わり、タブレットでの操作性が向上します。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>wget https://github.com/raspad-tablet/raspad-launcher/releases/latest/download/raspad-launcher.zip
unzip raspad-launcher.zip
cd raspad-launcher</code></pre></div>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>chmod +x install
sudo ./install</code></pre></div>



<p>上記のコマンドを実行して再起動すると、スタートメニューのアイコンが変更されます。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="450" src="https://sozorablog.com/wp-content/uploads/2023/02/raspad37.jpg" alt="" class="wp-image-10615" srcset="https://sozorablog.com/wp-content/uploads/2023/02/raspad37.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/02/raspad37-300x169.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/02/raspad37-768x432.jpg 768w, https://sozorablog.com/wp-content/uploads/2023/02/raspad37-320x180.jpg 320w, https://sozorablog.com/wp-content/uploads/2023/02/raspad37-224x126.jpg 224w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>スタートメニューをタップすると以下のような画面が開きます。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="528" src="https://sozorablog.com/wp-content/uploads/2023/02/raspad38.png" alt="" class="wp-image-10616" srcset="https://sozorablog.com/wp-content/uploads/2023/02/raspad38.png 800w, https://sozorablog.com/wp-content/uploads/2023/02/raspad38-300x198.png 300w, https://sozorablog.com/wp-content/uploads/2023/02/raspad38-768x507.png 768w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>大きめのアイコンでタップしやすいように配慮されたインターフェースです。ただし、RasPad Launcherをインストールすることにより変わる部分はメニュー表示のみで、アプリを起動すると通常のOS画面に戻ります。</p>



<div class="wp-block-sbd-balloon sbd-balloon sbd-balloon--id-4 sbd-balloon--flat sbd-balloon--l sbd-balloon--green block-box"><div class="sbd-balloon__profile"><figure class="sbd-balloon__icon"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2021/09/アイコン.jpg" alt="そぞら" class="sbd-balloon__img"/></figure><div class="sbd-balloon__name">そぞら</div></div><div class="sbd-balloon__text-box sbd-inner-block-init">
<p>RasPad Launcherをインストールするメリットはあまり感じませんでした。</p>
</div></div>



<h3 class="wp-block-heading">YouTube視聴が快適</h3>



<p>ブラウザを開けば<span class="sbd-text-red">YouTubeも見れます</span>。画面の大きさがちょうど良く、画質もキレイです。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="603" src="https://sozorablog.com/wp-content/uploads/2023/02/raspad39.jpg" alt="" class="wp-image-10619" srcset="https://sozorablog.com/wp-content/uploads/2023/02/raspad39.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/02/raspad39-300x226.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/02/raspad39-768x579.jpg 768w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>スピーカーは2個搭載されているので、迫力のある音量で動画が楽しめます。</p>



<h2 class="wp-block-heading">プログラミングでLEDを点滅させる</h2>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="535" src="https://sozorablog.com/wp-content/uploads/2023/02/raspad50.jpg" alt="" class="wp-image-10707" srcset="https://sozorablog.com/wp-content/uploads/2023/02/raspad50.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/02/raspad50-300x201.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/02/raspad50-768x514.jpg 768w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p><a href="https://scratch.mit.edu/">スクラッチ</a>（Scratch）という<span class="sbd-text-bold">ビジュアルプログラミング言語</span>で遊んでみます。ビジュアルプログラミング言語は、プログラミングを行う際に<span class="sbd-text-red">グラフィックスや図形を使って視覚的に表現する言語</span>です。</p>



<div class="wp-block-sbd-balloon sbd-balloon sbd-balloon--id-4 sbd-balloon--flat sbd-balloon--l sbd-balloon--green block-box"><div class="sbd-balloon__profile"><figure class="sbd-balloon__icon"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2021/09/アイコン.jpg" alt="そぞら" class="sbd-balloon__img"/></figure><div class="sbd-balloon__name">そぞら</div></div><div class="sbd-balloon__text-box sbd-inner-block-init">
<p>難しい文法を覚える必要がなく、未経験者や子供でもすぐにプログラミングを楽しめます。</p>
</div></div>



<p>また文字入力不要でプログラミングできるため、<span class="sbd-text-bg-yellow">タブレットでも快適に操作できます</span>。</p>



<h3 class="wp-block-heading">スクラッチをインストールする</h3>



<p>まずはターミナルで以下のコマンドを実行してスクラッチをインストールします。</p>



<div class="hcb_wrap"><pre class="prism line-numbers lang-plain"><code>sudo apt install scratch3</code></pre></div>



<figure class="wp-block-image size-full"><img decoding="async" width="512" height="315" src="https://sozorablog.com/wp-content/uploads/2023/02/raspad40.png" alt="" class="wp-image-10622" srcset="https://sozorablog.com/wp-content/uploads/2023/02/raspad40.png 512w, https://sozorablog.com/wp-content/uploads/2023/02/raspad40-300x185.png 300w" sizes="(max-width: 512px) 100vw, 512px" /></figure>



<p>インストール後、Programmingのメニューを開くとScratch 3が追加されています。タップして開きます。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="450" src="https://sozorablog.com/wp-content/uploads/2023/02/raspad41-2.jpg" alt="" class="wp-image-10624" srcset="https://sozorablog.com/wp-content/uploads/2023/02/raspad41-2.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/02/raspad41-2-300x169.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/02/raspad41-2-768x432.jpg 768w, https://sozorablog.com/wp-content/uploads/2023/02/raspad41-2-320x180.jpg 320w, https://sozorablog.com/wp-content/uploads/2023/02/raspad41-2-224x126.jpg 224w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>見ているだけでワクワクするような画面が立ち上がります。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="457" src="https://sozorablog.com/wp-content/uploads/2023/02/raspad42.png" alt="" class="wp-image-10625" srcset="https://sozorablog.com/wp-content/uploads/2023/02/raspad42.png 800w, https://sozorablog.com/wp-content/uploads/2023/02/raspad42-300x171.png 300w, https://sozorablog.com/wp-content/uploads/2023/02/raspad42-768x439.png 768w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>この画面ですぐにプログラムを作ることができます。</p>



<h3 class="wp-block-heading">LEDを配線する</h3>



<p>LEDはRaspberry Piの<span class="sbd-text-bold"><a href="https://sozorablog.com/gpio_pinout/">GPIO</a></span>と呼ばれるピンに接続します。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="450" src="https://sozorablog.com/wp-content/uploads/2023/02/image.jpg" alt="" class="wp-image-10627" srcset="https://sozorablog.com/wp-content/uploads/2023/02/image.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/02/image-300x169.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/02/image-768x432.jpg 768w, https://sozorablog.com/wp-content/uploads/2023/02/image-320x180.jpg 320w, https://sozorablog.com/wp-content/uploads/2023/02/image-224x126.jpg 224w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>タブレット内部に収納されたRaspberry PiのGPIOにアクセスするために、別売りの<a href="https://www.amazon.co.jp/Genericd-GPIO%E3%83%96%E3%83%AC%E3%83%BC%E3%82%AF%E3%82%A2%E3%82%A6%E3%83%88%E6%8B%A1%E5%BC%B5%E3%83%9C%E3%83%BC%E3%83%89-%E3%83%AA%E3%83%9C%E3%83%B3%E3%82%B1%E3%83%BC%E3%83%96%E3%83%AB-%E7%B5%84%E3%81%BF%E7%AB%8B%E3%81%A6%E6%B8%88%E3%81%BFT%E3%82%BF%E3%82%A4%E3%83%97GPIO%E3%82%A2%E3%83%80%E3%83%97%E3%82%BF20cm-40pin%E3%83%A9%E3%82%BA%E3%83%99%E3%83%AA%E3%83%BC%E3%83%91%E3%82%A43%E7%94%A8%E3%83%95%E3%83%A9%E3%83%83%E3%83%88%E3%83%AA%E3%83%9C%E3%83%B3%E3%82%B1%E3%83%BC%E3%83%96%E3%83%AB2%E3%83%A2%E3%83%87%E3%83%ABB%EF%BC%86B/dp/B09TCZGQG1/ref=sr_1_8?__mk_ja_JP=%E3%82%AB%E3%82%BF%E3%82%AB%E3%83%8A&amp;crid=970XDVTR6BA4&amp;keywords=%E6%8B%A1%E5%BC%B5%E3%83%9C%E3%83%BC%E3%83%89+GPIO&amp;qid=1675628075&amp;sprefix=%E6%8B%A1%E5%BC%B5%E3%83%9C%E3%83%BC%E3%83%89+gpio%2Caps%2C181&amp;sr=8-8">拡張ボード</a>を使用します。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="642" src="https://sozorablog.com/wp-content/uploads/2023/02/raspad23.jpg" alt="" class="wp-image-10565" srcset="https://sozorablog.com/wp-content/uploads/2023/02/raspad23.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/02/raspad23-300x241.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/02/raspad23-768x616.jpg 768w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>タブレットを分解して拡張ボードを取り付けるのは手間に感じます。できれば<a href="https://sozorablog.com/raspberry-pi-400-explanation/">Raspberry Pi 400</a>のように、常時GPIOにアクセスできるようなデザインにしてほしかったです。</p>



<figure class="wp-block-image size-full is-resized"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2023/02/raspberypi400-Electronicwork.jpg" alt="" class="wp-image-10629" style="width:400px;height:400px" width="400" height="400" srcset="https://sozorablog.com/wp-content/uploads/2023/02/raspberypi400-Electronicwork.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/02/raspberypi400-Electronicwork-300x300.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/02/raspberypi400-Electronicwork-150x150.jpg 150w, https://sozorablog.com/wp-content/uploads/2023/02/raspberypi400-Electronicwork-768x767.jpg 768w" sizes="(max-width: 400px) 100vw, 400px" /><figcaption class="wp-element-caption">参考：Raspberry Pi 400のGPIO</figcaption></figure>



<p>LEDを拡張ボードのピンに接続します。接続には<a href="https://www.amazon.co.jp/KKHMF-1P-1P-%E3%83%96%E3%83%AC%E3%83%83%E3%83%89%E3%83%9C%E3%83%BC%E3%83%89%E3%83%BB%E3%82%B8%E3%83%A3%E3%83%B3%E3%83%91%E3%83%BC%E3%83%AF%E3%82%A4%E3%83%A4%EF%BC%88%E3%83%A1%E3%82%B9-%E3%82%AA%E3%82%B9-%E3%83%A1%E3%82%B9-%E3%82%AA%E3%82%B9-%E3%82%AA%E3%82%B9-%E3%82%AA%E3%82%B9%EF%BC%89120%E6%9C%AC/dp/B072KH53HR/ref=sr_1_5?keywords=%E3%82%B8%E3%83%A3%E3%83%B3%E3%83%91%E3%83%BC%E3%83%AF%E3%82%A4%E3%83%A4%E3%83%BC&amp;qid=1675629315&amp;sr=8-5">ジャンパーワイヤー</a>を使用します。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="602" src="https://sozorablog.com/wp-content/uploads/2023/02/raspad46.jpg" alt="" class="wp-image-10630" srcset="https://sozorablog.com/wp-content/uploads/2023/02/raspad46.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/02/raspad46-300x226.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/02/raspad46-768x578.jpg 768w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>今回は<a href="https://akizukidenshi.com/catalog/g/gI-12519/">抵抗内蔵LED</a>という、内部に抵抗が入っているLEDを使用しました。普通のLEDを使用する場合は抵抗を接続しないとLEDが壊れるため、注意が必要です。</p>



<p>LEDには極性があります。足の長いほう（プラス）をGPIO18に、足の短いほう（マイナス）をGNDに接続します。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="603" src="https://sozorablog.com/wp-content/uploads/2023/02/raspad45.jpg" alt="" class="wp-image-10631" srcset="https://sozorablog.com/wp-content/uploads/2023/02/raspad45.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/02/raspad45-300x226.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/02/raspad45-768x579.jpg 768w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<h3 class="wp-block-heading">Raspberry PiのGPIOを使えるようにする</h3>



<p>スクラッチの初期状態では、Raspberry PiのGPIOを扱うためのブロックが用意されていません。ブロックを追加するにはメイン画面左下の拡張ボタンをタップします。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="450" src="https://sozorablog.com/wp-content/uploads/2023/02/ラズベリーパイの選び方-36.png" alt="" class="wp-image-10632" srcset="https://sozorablog.com/wp-content/uploads/2023/02/ラズベリーパイの選び方-36.png 800w, https://sozorablog.com/wp-content/uploads/2023/02/ラズベリーパイの選び方-36-300x169.png 300w, https://sozorablog.com/wp-content/uploads/2023/02/ラズベリーパイの選び方-36-768x432.png 768w, https://sozorablog.com/wp-content/uploads/2023/02/ラズベリーパイの選び方-36-320x180.png 320w, https://sozorablog.com/wp-content/uploads/2023/02/ラズベリーパイの選び方-36-224x126.png 224w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p><span class="sbd-text-bold">Raspberry Pi GPIO</span>をタップします。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="450" src="https://sozorablog.com/wp-content/uploads/2023/02/ラズベリーパイの選び方-37.jpg" alt="" class="wp-image-10633" srcset="https://sozorablog.com/wp-content/uploads/2023/02/ラズベリーパイの選び方-37.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/02/ラズベリーパイの選び方-37-300x169.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/02/ラズベリーパイの選び方-37-768x432.jpg 768w, https://sozorablog.com/wp-content/uploads/2023/02/ラズベリーパイの選び方-37-320x180.jpg 320w, https://sozorablog.com/wp-content/uploads/2023/02/ラズベリーパイの選び方-37-224x126.jpg 224w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>するとGPIOに関するブロックが追加されます。</p>



<h3 class="wp-block-heading">プログラミングをする</h3>



<figure class="wp-block-image size-full"><img decoding="async" width="180" height="178" src="https://sozorablog.com/wp-content/uploads/2023/02/raspad-led1.gif" alt="" class="wp-image-10643"/></figure>



<p>プログラミングはとても簡単です。画面左側からブロックを選び、中央で組み合わせていきます。</p>



<p>LEDを点滅させるプログラムは以下のようになります。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="450" src="https://sozorablog.com/wp-content/uploads/2023/02/raspad47.png" alt="" class="wp-image-10644" srcset="https://sozorablog.com/wp-content/uploads/2023/02/raspad47.png 800w, https://sozorablog.com/wp-content/uploads/2023/02/raspad47-300x169.png 300w, https://sozorablog.com/wp-content/uploads/2023/02/raspad47-768x432.png 768w, https://sozorablog.com/wp-content/uploads/2023/02/raspad47-320x180.png 320w, https://sozorablog.com/wp-content/uploads/2023/02/raspad47-224x126.png 224w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>プログラムの内容は以下の通りです。</p>



<div class="wp-block-sbd-list"><ol class="sbd-list sbd-list-border"><li>旗のボタンが押されたら</li><li>GPIO18の出力をhighにする（電圧をかける）</li><li>１秒待機</li><li>GPIO18の出力をlowにする（電圧をかけない）</li><li>１秒待機</li><li>①～⑤の動作を10回繰り返す</li></ol></div>



<p>参考にさせていただいたサイト。<a href="https://growplants.jp/scratch-led/">ラズパイでスクラッチ3を使ってLチカする</a></p>



<h3 class="wp-block-heading">プログラムの実行</h3>



<p>旗のボタンをタップするとLEDが10回点滅します。</p>



<figure class="wp-block-image size-full"><img decoding="async" width="320" height="322" src="https://sozorablog.com/wp-content/uploads/2023/02/raspad-LED.gif" alt="" class="wp-image-10636"/></figure>



<p><span class="sbd-text-red">スクラッチとタブレットは非常に相性が良い</span>と感じました。画面のタッチでブロックをスムーズに動かせるからです。</p>



<p>一般的なタブレットやパソコンでも無料で楽しめるスクラッチ。ブロックを組み合わせて画面上のキャラクターを動かすといった操作により、プログラミングの基本的な概念が学べます。</p>



<div class="wp-block-sbd-balloon sbd-balloon sbd-balloon--id-4 sbd-balloon--flat sbd-balloon--l sbd-balloon--green block-box"><div class="sbd-balloon__profile"><figure class="sbd-balloon__icon"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2021/09/アイコン.jpg" alt="そぞら" class="sbd-balloon__img"/></figure><div class="sbd-balloon__name">そぞら</div></div><div class="sbd-balloon__text-box sbd-inner-block-init">
<p>しかし、<strong>タブレットに繋いだLEDを点滅できる</strong>のはRasPad3だけの強みです。</p>
</div></div>



<p><span class="sbd-text-bg-yellow">自分の作ったプログラムで「実在するモノの状態が変化する」というかけがえのない体験を得られる</span>ことでしょう。</p>



<h2 class="wp-block-heading">まとめ　ラズパイ入門用タブレットとして秀悦</h2>



<figure class="wp-block-image size-full"><img decoding="async" width="800" height="531" src="https://sozorablog.com/wp-content/uploads/2023/01/raspad6.jpg" alt="" class="wp-image-10535" srcset="https://sozorablog.com/wp-content/uploads/2023/01/raspad6.jpg 800w, https://sozorablog.com/wp-content/uploads/2023/01/raspad6-300x199.jpg 300w, https://sozorablog.com/wp-content/uploads/2023/01/raspad6-768x510.jpg 768w" sizes="(max-width: 800px) 100vw, 800px" /></figure>



<p>本記事はRasPad3のレビューについて書きました。</p>



<p>レビューをすることが決まって以来「ラズパイをタブレットにするメリットは何だろう」という疑問を持ち続けていました。しかし、スクラッチでLEDを点滅させた瞬間に、はっきりとした答えが見えました。</p>



<div class="wp-block-sbd-balloon sbd-balloon sbd-balloon--id-4 sbd-balloon--flat sbd-balloon--l sbd-balloon--green block-box"><div class="sbd-balloon__profile"><figure class="sbd-balloon__icon"><img decoding="async" src="https://sozorablog.com/wp-content/uploads/2021/09/アイコン.jpg" alt="そぞら" class="sbd-balloon__img"/></figure><div class="sbd-balloon__name">そぞら</div></div><div class="sbd-balloon__text-box sbd-inner-block-init">
<p>RasPad3ならプログラミング経験のない方やお子様でも、電子工作の楽しさを手軽に体感できます。</p>
</div></div>



<p>最も楽しいラズパイの使い方は電子工作だと思います。これは長い間ラズパイを使ってきた僕の結論です。</p>



<p>RasPad3でラズパイの使い方や電子工作に慣れてきたら、いつか基板だけのラズパイでPythonなどのプログラミングで電子工作にチャレンジしてほしい。そう思いながらこの記事を書きました。</p>



<p><span class="sbd-text-red">ラズパイや電子工作の入門用タブレットとして最適なRasPad3</span>。興味のある方はぜひ、お手に取っていただきたいアイテムです。</p>



<!-- START MoshimoAffiliateEasyLink -->
<script type="text/javascript">
(function(b,c,f,g,a,d,e){b.MoshimoAffiliateObject=a;
b[a]=b[a]||function(){arguments.currentScript=c.currentScript
||c.scripts[c.scripts.length-2];(b[a].q=b[a].q||[]).push(arguments)};
c.getElementById(a)||(d=c.createElement(f),d.src=g,
d.id=a,e=c.getElementsByTagName("body")[0],e.appendChild(d))})
(window,document,"script","//dn.msmstatic.com/site/cardlink/bundle.js?20220329","msmaflink");
msmaflink({"n":"SunFounder Raspberry Pi 4B タブレット、RasPad3.0、ポータブルRaspberry Pi ディスプレイ、バッテリー、冷却ファン、スピーカー内蔵、一体型タッチモニター、,IoT\/自動操縦プロジェクト、ゲーム\/3Dプリント\/プログラミング学習用(!!!※Raspberry Pi 4Bメインボード、SDカードは付属されていません)","b":"SUNFOUNDER","t":"SF-00066","d":"https:\/\/m.media-amazon.com","c_p":"\/images\/I","p":["\/41Y30Qf30HS._SL500_.jpg","\/41c-ruP7eiS._SL500_.jpg","\/51lt0dOCpfS._SL500_.jpg","\/519ObJfdSqS._SL500_.jpg","\/51oCwEVSJJL._SL500_.jpg","\/41k4yRFpgML._SL500_.jpg","\/41u5r+frdOL._SL500_.jpg","\/51xnnuCJi3L._SL500_.jpg","\/51uFVu3yJrL._SL500_.jpg"],"u":{"u":"https:\/\/www.amazon.co.jp\/dp\/B09RWHQL9K","t":"amazon","r_v":""},"v":"2.1","b_l":[{"id":3,"u_tx":"Amazonで見る","u_bc":"#f79256","u_url":"https:\/\/www.amazon.co.jp\/dp\/B09RWHQL9K","a_id":3038653,"p_id":170,"pl_id":27060,"pc_id":185,"s_n":"amazon","u_so":0}],"eid":"HRqlr","s":"s"});
</script>
<div id="msmaflink-HRqlr">リンク</div>
<!-- MoshimoAffiliateEasyLink END -->
]]></content:encoded>
					
					<wfw:commentRss>https://sozorablog.com/raspad3/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
