本書は、登場以来多くのユーザーの支持を集め続けているマイコンボード「Raspberry Pi」を使いこなすための実践レシピ集です。ハードウェアの基本、オペレーティングシステムの使い方、ネットワーク接続、Pythonプログラミングの基本から、高度なPythonプログラミング、GPIO(汎用入出力)、モーター、センサー、HAT、ディスプレイ、サウンド、コンピュータービジョン、IoTまで、幅広いニーズに応えます。第4版では新たに、機械学習やRaspberry Pi Pico/Pico Wのレシピも加わりました。すぐに使えるサンプルコードや回路図を豊富に収録しており、作品製作に役立ちます。
Raspberry Piクックブック 第4版
Simon Monk 著、水原 文 訳
- TOPICS
- クックブック , Make/Electronics/DIY
- 発行年月日
- 2024年01月
- PRINT LENGTH
- 560
- ISBN
- 978-4-8144-0050-8
- 原書
- Raspberry Pi Cookbook, 4th Edition
- FORMAT
- Print PDF EPUB
目次
まえがき 1章 設定と管理 レシピ1.1 Raspberry Piのモデルを選択する レシピ1.2 システムを接続する レシピ1.3 Raspberry Piをケースに入れる レシピ1.4 電源を選択する レシピ1.5 オペレーティングシステムを選択する レシピ1.6 Raspberry Pi Imagerを使ってマイクロ SDカードを作成する レシピ1.7 Raspberry Piを初めて起動する レシピ1.8 Raspberry Piをヘッドレスに設定する レシピ1.9 本物のハードディスクやUSBフラッシュドライブから起動する レシピ1.10 DVIやVGAのモニターを接続する レシピ1.11 コンポジットビデオのモニターやテレビを使う レシピ1.12 モニター上の画面サイズを調整する レシピ1.13 パフォーマンスを最大化する レシピ1.14 パスワードを変更する レシピ1.15 Raspberry Piをシャットダウンする レシピ1.16 Raspberry Piカメラモジュールをインストールする レシピ1.17 Bluetoothを使う 2章 ネットワーク接続 レシピ2.1 有線LANに接続する レシピ2.2 IPアドレスを知る レシピ2.3 スタティックなIPアドレスを設定する レシピ2.4 Raspberry Piのネットワーク名を設定する レシピ2.5 無線LAN接続を設定する レシピ2.6 コンソールケーブルで接続する レシピ2.7 SSHを使ってRaspberry Piを遠隔操作する レシピ2.8 VNCを使ってRaspberry Piを遠隔操作する レシピ2.9 Raspberry Piをネットワーク接続ストレージとして使う レシピ2.10 ネットワークプリンターを設定する 3章 オペレーティングシステム レシピ3.1 GUIでファイルを操作する レシピ3.2 ファイルをUSBメモリーにコピーする レシピ3.3 ターミナルセッションを開始する レシピ3.4 ターミナルを使ってファイルシステム内を移動する レシピ3.5 ファイルやフォルダーをコピーする レシピ3.6 ファイルやフォルダーの名前を変更する レシピ3.7 ファイルを編集する レシピ3.8 ファイルの内容を閲覧する レシピ3.9 エディターを使わずにファイルを作成する レシピ3.10 ディレクトリーを作成する レシピ3.11 ファイルやディレクトリーを削除する レシピ3.12 スーパーユーザー権限でタスクを実行する レシピ3.13 ファイルのパーミッションを理解する レシピ3.14 ファイルのパーミッションを変更する レシピ3.15 ファイルの所有者を変更する レシピ3.16 画面をキャプチャーする レシピ3.17 aptを使ってソフトウェアをインストールする レシピ3.18 aptを使ってインストールされたソフトウェアを削除する レシピ3.19 pip3を使ってPythonパッケージをインストールする レシピ3.20 コマンドラインからファイルを取得する レシピ3.21 gitを使ってソースコードを取得する レシピ3.22 この本のコード例を取得する レシピ3.23 起動時にプログラムを自動的に実行する レシピ3.24 プログラムをサービスとして自動的に実行する レシピ3.25 プログラムを自動的に一定の周期で実行する レシピ3.26 ファイルを見つける レシピ3.27 コマンドラインのヒストリー(履歴)を使う レシピ3.28 プロセッサーの使用状況を監視する レシピ3.29 ファイルアーカイブを取り扱う レシピ3.30 接続されたUSBデバイスをリストする レシピ3.31 コマンドラインの出力をファイルへリダイレクトする レシピ3.32 ファイルを連結する レシピ3.33 パイプを使う レシピ3.34 ターミナルへの出力を隠す レシピ3.35 プログラムをバックグラウンドで実行する レシピ3.36 コマンドのエイリアスを作成する レシピ3.37 日付と時間を設定する レシピ3.38 SDカードの空き容量を確認する レシピ3.39 実行中のオペレーティングシステムのバージョンを知る レシピ3.30 Raspberry Pi OSを更新する 4章 既存ソフトウェアの使い方 レシピ4.1 メディアセンターにする レシピ4.2 おすすめのソフトウェアをインストールする レシピ4.3 オフィスソフトウェアを使う レシピ4.4 ゲーム機のエミュレーターを動かす レシピ4.5 Raspberry PiをFMトランスミッターにする レシピ4.6 ビットマップ画像を編集する レシピ4.7 ベクター画像を編集する レシピ4.8 ブックシェルフを使う レシピ4.9 インターネットラジオを聴く レシピ4.10 Visual Studio Codeを使う レシピ4.11 レーザーカッターを制御する 5章 Pythonの基本 レシピ5.1 Python 2とPython 3のどちらを使うか レシピ5.2 Pythonのエディターを選ぶ レシピ5.3 Thonnyを使ってPythonプログラムを編集する レシピ5.4 Muを使ってPythonプログラムを書く レシピ5.5 Pythonコンソールを使う レシピ5.6 Pythonプログラムをターミナルから実行する レシピ5.7 名前に値を割り当てる(変数) レシピ5.8 出力を表示する レシピ5.9 ユーザーの入力を読み込む レシピ5.10 算術演算子 レシピ5.11 文字列を作成する レシピ5.12 文字列を連結(結合)する レシピ5.13 数値を文字列に変換する レシピ5.14 文字列を数値に変換する レシピ5.15 文字列の長さを求める レシピ5.16 文字列を検索し、その位置を求める レシピ5.17 文字列の一部を抽出する レシピ5.18 文字列に含まれる、ある文字列を別の文字列に置換する レシピ5.19 文字列を大文字または小文字に変換する レシピ5.20 条件付きでコマンドを実行する(if文) レシピ5.21 値を比較する レシピ5.22 論理演算子を使う レシピ5.23 決まった回数だけ命令を繰り返す レシピ5.24 ある条件が満たされるまで命令を繰り返す レシピ5.25 ループから脱出する レシピ5.26 Pythonで関数を定義する 6章 Pythonのリストとディクショナリー レシピ6.1 リストを作成する レシピ6.2 リストの要素にアクセスする レシピ6.3 リストの長さを求める レシピ6.4 リストに要素を追加する レシピ6.5 リストから要素を削除する レシピ6.6 文字列を解析してリストを作成する レシピ6.7 リスト上で反復処理を行う レシピ6.8 リストを数え上げる レシピ6.9 リストに特定の要素が含まれるかどうか調べる レシピ6.10 リストをソートする レシピ6.11 リストを分割する レシピ6.12 リストの内包表記を使う レシピ6.13 ディクショナリーを作成する レシピ6.14 ディクショナリーにアクセスする レシピ6.15 ディクショナリーから要素を削除する レシピ6.16 ディクショナリー上で反復処理を行う 7章 Pythonの高度な機能 レシピ7.1 数値の書式を指定する レシピ7.2 日付と時間の書式を指定する レシピ7.3 2つ以上の値を返す レシピ7.4 クラスを定義する レシピ7.5 メソッドを定義する レシピ7.6 継承 レシピ7.7 ファイルへの書き込み レシピ7.8 ファイルの読み出し レシピ7.9 ピクリングを利用してデータをファイルに保存する レシピ7.10 例外の取り扱い レシピ7.11 モジュールを使う レシピ7.12 乱数を生成する レシピ7.13 PythonからHTTPリクエストを送る レシピ7.14 Pythonプログラムにコマンドラインから引数を渡す レシピ7.15 PythonからLinuxコマンドを実行する レシピ7.16 Pythonから電子メールを送る レシピ7.17 Pythonでシンプルなウェブサーバーを作る レシピ7.18 Pythonで何もしない レシピ7.19 同時に複数の処理を行う レシピ7.20 JSONを構文解析する レシピ7.21 ディクショナリーをJSONファイルとして保存する レシピ7.22 ユーザーインターフェイスを作成する レシピ7.23 正規表現を利用してテキスト中のパターンを検索する レシピ7.24 正規表現を利用してデータ入力を検証する レシピ7.25 正規表現を利用してウェブスクレイピングする 8章 コンピュータービジョン レシピ8.1 OpenCVをインストールする レシピ8.2 USBカメラをコンピュータービジョン用に設定する レシピ8.3 コンピュータービジョンにRaspberry Piのカメラモジュールを使う レシピ8.4 コインを数える レシピ8.5 顔検出 レシピ8.6 動き検出 レシピ8.7 画像からテキストを抽出する 9章 機械学習 レシピ9.1 TensorFlow Liteでビデオ内の物体を認識する レシピ9.2 TensorFlow Liteでビデオ内の物体に反応する レシピ9.3 TensorFlow Liteで口笛に反応する レシピ9.4 Edge Impulseをインストールする レシピ9.5 音声による指示を(クラウドで)認識する レシピ9.6 音声による指示を(ローカルで)認識する レシピ9.7 音声による指示に応答する 10章 ハードウェアの基本 レシピ10.1 GPIOコネクターのピン配置 レシピ10.2 Raspberry Pi 400でGPIOコネクターを使う レシピ10.3 Raspberry PiのGPIOを安全に使う レシピ10.4 I2Cをセットアップする レシピ10.5 I2Cツールを使う レシピ10.6 SPIをセットアップする レシピ10.7 pySerialをインストールしてPythonからシリアルポートを使う レシピ10.8 Minicomをインストールしてシリアルポートをテストする レシピ10.9 ジャンパー線を使ってブレッドボードと接続する レシピ10.10 Raspberry Squidを使う レシピ10.11 Raspberry Squid Buttonを使う レシピ10.12 抵抗2本で5V信号を3.3Vに変換する レシピ10.13 レベル変換モジュールを使って5V信号を3.3Vに変換する レシピ10.14 リチウムイオン電池からRaspberry Piの電源を供給する レシピ10.15 Sense HATを使う レシピ10.16 Explorer HAT Proを使う レシピ10.17 HATを自作する レシピ10.18 Raspberry Pi Zero 2とPi Zero 2 W 11章 ハードウェアの制御 レシピ11.1 LEDを接続する レシピ11.2 GPIOピンを安全な状態に保つ レシピ11.3 LEDの明るさを制御する レシピ11.4 トランジスターを使って大電力DCデバイスをスイッチする レシピ11.5 リレーを使って大電力デバイスをスイッチする レシピ11.6 ソリッドステートリレーを使ってスイッチする レシピ11.7 高電圧ACデバイスを制御する レシピ11.8 AndroidとBluetoothを使ってハードウェアを制御する レシピ11.9 スイッチをオン・オフするユーザーインターフェイスを作る レシピ11.10 LEDやモーターの電力をPWMで制御するユーザーインターフェイスを作る レシピ11.11 RGB LEDの色を変化させるユーザーインターフェイスを作る レシピ11.12 アナログメーターをディスプレイとして使う 12章 モーター レシピ12.1 サーボモーターを制御する レシピ12.2 精密にサーボモーターを制御する レシピ12.3 精密に複数のサーボモーターを制御する レシピ12.4 DCモーターの速度を制御する レシピ12.5 DCモーターの回転方向を制御する レシピ12.6 ユニポーラーステッピングモーターを使う レシピ12.7 バイポーラーステッピングモーターを使う レシピ12.8 Stepper Motor HATを使ってバイポーラーステッピングモーターを駆動する 13章 デジタル入力 レシピ13.1 押しボタンスイッチを接続する レシピ13.2 押しボタンスイッチで状態を切り替える レシピ13.3 2ポジションのトグルスイッチやスライドスイッチを使う レシピ13.4 3ポジションのトグルスイッチやスライドスイッチを使う レシピ13.5 ボタンを押したときのチャタリングを除去したい レシピ13.6 外部プルアップ抵抗を使う レシピ13.7 ロータリー(直交)エンコーダーを使う レシピ13.8 キーパッドを使う レシピ13.9 動きを検出する レシピ13.10 Raspberry PiにGPSを接続する レシピ13.11 押されたキーを横取りする レシピ13.12 マウスの動きを横取りする レシピ13.13 Raspberry Piにリセットボタンを追加する 14章 センサー レシピ14.1 抵抗性センサーを使う レシピ14.2 光を測定する レシピ14.3 サーミスターで温度を測定する レシピ14.4 メタンを検出する レシピ14.5 大気清浄度(CO2濃度)を測定する レシピ14.6 土壌水分を測定する レシピ14.7 電圧を測定する レシピ14.8 電圧を分圧して測定する レシピ14.9 抵抗性センサーとADCを使う レシピ14.10 ADCを使って温度を測定する レシピ14.11 Raspberry PiのCPU温度を測定する レシピ14.12 Sense HATを使って温度、湿度、気圧を測定する レシピ14.13 デジタルセンサーを使って温度を測定する レシピ14.14 MMA8452Qモジュールで加速度を測定する レシピ14.15 Sense HATで磁北を検出する レシピ14.16 Sense HATの慣性計測ユニットを使う レシピ14.17 リードスイッチで磁石を検出する レシピ14.18 Sense HATで磁石を検出する レシピ14.19 超音波を使って距離を測定する レシピ14.20 Time-of-Flightセンサーを使って距離を測定する レシピ14.21 タッチセンサーをRaspberry Piに追加する レシピ14.22 RFIDリーダーでスマートカードを読み出す レシピ14.23 センサーの値を表示する レシピ14.24 USBメモリーにログを書き込む 15章 ディスプレイ レシピ15.1 4ケタのLEDディスプレイを使う レシピ15.2 I2C LEDマトリクスにグラフィックスを表示する レシピ15.3 Sense HATのLEDマトリクスディスプレイを使う レシピ15.4 OLEDグラフィックディスプレイを使う レシピ15.5 RGBテープLEDを使う レシピ15.6 Pimoroni Unicorn HATを使う レシピ15.7 電子ペーパーディスプレイを使う 16章 サウンド レシピ16.1 スピーカーを接続する レシピ16.2 サウンドの出力先をコントロールする レシピ16.3 オーディオ端子のないRaspberry Piでサウンドを再生する レシピ16.4 コマンドラインからサウンドを再生する レシピ16.5 Pythonからサウンドを再生する レシピ16.6 USBマイクロフォンを使う レシピ16.7 ブザーを鳴らす 17章 モノのインターネット レシピ17.1 ウェブインターフェイスからGPIO出力を制御する レシピ17.2 センサーの値をウェブページに表示する レシピ17.3 Node-REDを使ってみる レシピ17.4 IFTTTを使って電子メールなどの通知を送信する レシピ17.5 ThingSpeakを使ってツイートする レシピ17.6 CheerLightsを使ってLEDの色を変える レシピ17.7 センサーデータをThingSpeakに送信する レシピ17.8 DweetとIFTTTを使ってツイートに応答する 18章 ホームオートメーション レシピ18.1 Mosquittoを使ってRaspberry Piをメッセージブローカーに仕立てる レシピ18.2 Node-REDとMQTTサーバーを組み合わせて使う レシピ18.3 Sonoff WiFiスマートスイッチのファームウェアをMQTT用に書き換える レシピ18.4 Sonoff WiFiスイッチを設定する レシピ18.5 Sonoff WiFiスイッチをMQTTから使う レシピ18.6 Sonoff WiFiスイッチをNode-REDから使う レシピ18.7 Node-REDダッシュボードから電源をオン・オフする レシピ18.8 Node-REDでイベントをスケジュールする レシピ18.9 Wemos D1からMQTTメッセージをパブリッシュする レシピ18.10 Wemos D1をNode-REDと組み合わせて使う 19章 Raspberry Pi PicoとPico W レシピ19.1 PicoやPico Wをコンピューターに接続する レシピ19.2 PicoでPythonシェルを使う レシピ19.3 Picoをブレッドボードで使う レシピ19.4 Picoのデジタル出力を使う レシピ19.5 Picoのデジタル入力を使う レシピ19.6 Picoのアナログ(PWM)出力を使う レシピ19.7 Picoのアナログ入力を使う レシピ19.8 Picoでサーボモーターを制御する レシピ19.9 PicoやPico Wのファイルシステムを使う レシピ19.10 セカンドコアを利用する レシピ19.11 Pico WでWiFiウェブサーバーを動かす レシピ19.12 Pico互換ボードを使う レシピ19.13 Picoを電池で動かす 付録A パーツと器材 パーツ プロトタイピング用の器材とキット 抵抗とコンデンサー トランジスターとダイオード IC 光エレクトロニクス モジュール その他 付録B RaspberryPiのピン配置 Raspberry Pi 400/5/4/3/2モデルB、モデルB+、モデルB+、モデルA+、Zero Raspberry PiモデルBリビジョン2、モデルA Raspberry PiモデルBリビジョン1 Raspberry Pi Pico 索引