- 必要な材料
- 前提条件
- Raspberry Pi用のTTSエンジン(Espeak)をインストールします
- RaspberryPiを話す目覚まし時計のGUIを作成する
- QtDesignerを使用したGUIの設計
「 おはようございます。午前7時です。マリブの天気は72度で、雲が散らばっています。サーフコンディションはウエストからショルダーまでのハイラインでフェアです。満潮は午前10時52分になります 」。映画「アイアンマン」でこのジャービスの声を聞くたびに、背筋が冷たくなります。私と同じように、多くの人がトニー・スタークのように洗練された人生を送ることを夢見ていたと確信しています。しかし残念ながら、JARVISほどスマートな小型アークリアクターやAIの技術は進歩していません。しかし、退屈な朝の目覚まし時計を、RaspberryPiを使用したJarvisに似たものに置き換えることは可能です。このプロジェクトの最後に、アラームを設定できる非常に基本的なGUIを作成します。アラームが鳴ると、事前定義されたテキストで現在の時刻と曜日を知らせる音声が表示されます。かっこいいですね!それでは、1つ作成しましょう。
必要な材料
- ラズベリーパイ
- 3.5インチTFTLCDスクリーン
- スピーカー
- AUXケーブル
- インターネット接続
前提条件
Raspberry Piはすでにオペレーティングシステムでフラッシュされており、インターネットに接続できると想定されています。そうでない場合は、先に進む前に「RaspberryPi入門」チュートリアルに従ってください。ここでは、RasbianJessieがインストールしたRaspberryPi3を使用してい ます。
また、ターミナルウィンドウまたはPythonプログラムを記述して実行し、ターミナルウィンドウを使用できる他のアプリケーションを介してpiにアクセスできることも前提としています。
このプロジェクトで使用するので、3.5インチTFTLCDをRaspberryPiとインターフェースする方法も確認することをお勧めします。
Raspberry Pi用のTTSエンジン(Espeak)をインストールします
プロジェクトのタイトルにあるように、スピーキングクロックを作成します。Piを話せるようにするには、Text To Speech(TTS)エンジンが必要です。選択できるオプションはたくさんありますが、簡単にするために、Espeakエンジンを選択しました。PiにEspeakをインストールするには、ターミナルで次のコマンドを実行するだけです。
sudo apt-get install espeak sudo apt-get install espeakpython-espeak
RaspberryPiを話す目覚まし時計のGUIを作成する
このプロジェクトでは、ユーザーが現在の時刻を表示したり、アラームを設定したりできるように、目覚まし時計を表すGUIを開発する必要があります。Pythonを使用してGUIを開発するためのオプションはたくさんありますが、最も人気があり用途の広いものはPyQt4であるため、これを使用してGUIを開発します。以下のいくつかの見出しでは、PyQt4を使用して独自のGUIを設計する方法について説明しますが、興味がない場合は、「 目覚まし時計を話すためのプログラム 」の見出しに直接スキップできます。
WindowsマシンにQtデザイナーを使用してPyQt4をインストールする
GUIを設計しているので、最初にラップトップ(Windows / Linux)でプログラミングを開始し、次にこのpythonスクリプトをPiで動作するように移植します。PyQt4は非常に優れた移植性を備えているため、ほとんどの開発者はこれを行います。ラップトップでの開発は、実際にはRaspberryPiで行うよりも簡単で高速だからです。
WindowsマシンにpythonおよびPQtパッケージをインストールしました。これに興味がない場合は、この手順をスキップするだけで、ラズベリーパイ自体でGUIを開発できます。WindowsにPQtをインストールするには、このexeファイルをダウンロードします。インストール手順では、プロジェクトで使用するため、Qtデザイナーソフトウェアを確認してください。
Pi / Linux / MACマシンへのPyQtのインストール
LinuxマシンにPyQtをインストールするには、コマンドターミナルで次の行を実行するだけです。
sudo apt-get install python-qt4
QtDesignerを使用したGUIの設計
GUIデザインにPyQt4を使用することの顕著な利点の1つは、Qtデザイナーソフトウェアを備えていることです。このソフトウェアを使用すると、画面に物をドラッグして必要な場所に配置するだけで、ボタン、ディスプレイ、テキスト、その他のグラフィックを作成できます。これにより、画面上のオブジェクトのサイズと位置を手動で入力する必要がなくなるため、時間を大幅に節約できます。上記の段落で説明したように、exeファイルを使用してWindowsラップトップにPythonとPyQt4とともにQtデザイナーをインストールしました。インストール後、Qt Designerを開くと、この画面が表示されます。
左側には、レイアウト、スペーサー、ボタンなど、ウィンドウにドラッグするだけで使用できるアイテムがあります。右側のウィンドウを使用して、必要に応じてオブジェクトをカスタマイズすることもできます。私が使用している私たちの目覚まし時計のためのUIを作成するために、7セグメントLCDディスプレイ、ボタン、テキスト行とセット時刻オブジェクトを。レイアウトを使用してすべてのオブジェクトを必要な場所とサイズに配置した後、ウィンドウは次のようになりました。
GUIの準備ができたら、デザインを .ui ファイルとして保存できます。後で、GUIに変更を加えたいときはいつでも、プログラムを上下にスクロールしなくても、このファイルを開いて変更を加えることができます。このデザインに変更を加える場合は、スピーキングクロック用の.uiファイルをダウンロードできます。GUIデザインに満足したら、Pythonプログラミングを開始できるPythonコードとしてエクスポートできます。
ここで多くのことが頭に浮かぶことはわかっていますが、Qt4ライブラリの使用方法を1つのチュートリアルで説明することはできません。sentdexPyQt4チュートリアルシリーズを参照して知ることができます