ノーコードIoT開発 Weather時計のデモ
ラズパイ×Node-REDでスピード制作
音声読み上げ機能の実装も
![]() |
---|
図1 Node-REDのexecノードやラズパイ向け音声合成エンジン AquestalkPiを使って,時刻と天気予報を音声で読み上げるIoTデバイスをスピード制作.画像クリックで動画を見る.または記事を読む.[提供・著]後閑 哲也 詳細:[VOD/Pi KIT]ラズパイ×Node-REDで作ろう!IoTアプリ開発入門 |
Node-REDは,視覚的にフローを構築することでIoTデバイスの開発を容易にするツールです.ラズベリー・パイと組み合わせることで,センサ・データの取得,処理,表示を簡単に実現できます.
音声読み上げ機能の実装
音声読み上げには「AquestalkPi」を使用します.これはラズパイ向けの音声合成エンジンであり,シンプルなコマンドライン操作でテキストを音声に変換できます.以下の手順でセットアップを行います.
- AquestalkPiをアクエスト社のサイトからダウンロードする
- ダウンロードファイル(aquestalkpi-20201010.tgz)を/home/piに移動する
- ターミナルで以下のコマンドを実行し,圧縮ファイルを展開する
tar xzvf aquestalkpi-20201010.tgz - 動作テストを実行し,テキストが音声として再生されることを確認する
現在時刻を音声で読み上げる
ラズパイのシステム時刻を音声で読み上げるには,Pythonスクリプトを作成し,その出力をAquestalkPiで処理します.Node-REDのexecノードを用いることで,Pythonスクリプトを外部コマンドとして実行できます.
- Pythonスクリプトを作成し,現在時刻を取得する
- 取得した時刻をテキスト・ファイル(time.txt)として保存する
- execノードを用いて,Pythonスクリプトを実行する
- AquestalkPiを用いて,保存した時刻データを音声化する
天気予報を音声で読み上げる
天気予報の取得には「OpenWeatherMap」を利用します.Node-REDにはOpenWeatherMapのノードが用意されており,APIキーを設定することで天気情報を取得できます.
- OpenWeatherMapのアカウントを作成し,APIキーを取得する
- Node-REDのパレット管理で「node-red-node-openweathermap」を追加する
- OpenWeatherMapノードを配置し,APIキーを設定する
- 情報の取得範囲を「Current」に設定し,日本語で出力されるように設定する
- 取得した天気情報をテキスト化し,AquestalkPiで音声出力する
〈著:ZEPマガジン〉
著者紹介
- 1971年 東北大学 工学部卒 大手通信機メーカにて制御機器開発に従事
- 1996年 ホームページ「電子工作の実験室」を開設
- 2003年 有限会社マイクロチップ・デザインラボ設立 代表取締役 計測制御システムコンサルタント,書籍執筆 セミナ講師
- 2012年 神奈川工科大学 工学部 客員教授
著書
- [VOD/KIT/Book/data]ラズパイPico W×ChatGPT APIで学ぶ 会話型IoTエッジ開発,ZEPエンジニアリング株式会社.
- [VOD/KIT]PICマイコン オールイン1日学習キット ,ZEPエンジニアリング株式会社.
- [VOD/Pi KIT]ラズベリー・パイで学ぶLinux&Pythonプログラミング超入門,ZEPエンジニアリング株式会社.
- [VOD/Pi KIT]ラズパイ×Node-REDで作ろう!IoTアプリ開発入門,ZEPエンジニアリング株式会社.
- 電子工作のための PIC16F1ファミリ活用ガイドブック,技術評論社.
参考文献
- [VOD/KIT]STM32マイコン&Wi-Fiモジュールで学ぶ C/C++プログラミング入門,ZEPエンジニアリング株式会社.
- [VOD/KIT]M5Stack Core2付き!ESP32で学ぶPython&Arduinoプログラミング入門,ZEPエンジニアリング株式会社.
- [VOD/KIT]STM32マイコン&Wi-Fiモジュールで学ぶ C/C++プログラミング入門,ZEPエンジニアリング株式会社.
- [VOD/KIT]M5Stackで一緒に作ろう!IoTセンシング・エッジ×クラウド連携システム開発[改訂版],ZEPエンジニアリング株式会社.
- [VOD/KIT]実習キットでできる!ラズパイPicoでマイコン入門,ZEPエンジニアリング株式会社.
- [VOD/KIT]LabVIEW×Arduino!初めてのパソコン計測&制御【改訂版】,ZEPエンジニアリング株式会社.