音声合成LSIの実験(その1)

はじめに

音声合成LSIは、券売機やATM、カーナビゲーションなどの案内音声に幅広く使われています。ATP3012(AQUEST社)は、1チップでローマ字表記のテキストを音声に変換する音声合成LSIです。シリアルインターフェースを介して、簡単に任意の音声メッセージを出力でき、また、プリセットしたメッセージを読み上げることもできます。本LSIには音声違いのバージョンがあり、今回はATP3012F6-PU(女性の音声明瞭版)を使用しました。

概要

下図は、ATP3012_28pin DIPタイプの端子配列です。クロックや動作・通信モードなど端子状態で設定します。

以下は、主なモードの機能概要です。動作中の変更はできません。詳細は、データシートを参照下さい。

音声記号列の記述方法

音声記号列とは、生成する音声を文字コードで表現したものです。ATP3012の音声記号列は、ローマ字の文字列で表現される読み記号と、アクセント記号,長音記号,句切記号,タグ記号などで構成され、記号列の長さは127byteまで指定可能です。
下記は、各記号の内容です。また、データシートには例文による詳細な解説が掲載されています。

内容

ブレッドボードに下図の回路を組んで、TeraTermを使ってホストPCのUSBとシリアル接続して実験しました。動作クロックは16MHz、動作電圧はUSBバスパワーから5Vを給電します。

結果

実際にいくつかの音声記号列を発声させて、記号の働きを確認してみました。(以下の例それぞれに音声ファイルが紐づけられています)

先ず、読み記号だけを並べた例です。
例-1 ohayougozaimasu.

次は、例-1に長音記号「-」、アクセント記号「’」、無音化「_」 を指定してみます。
例-2 ohayo-gozai’ma_su.
スムースな発声になりました。

文末に区切記号「?」を追加すると、語尾が上がり質問形になります。
例-3 gokigen/ika’gade’suka?

タグ記号を使えば、英数字はそのままで発声するので便利です。
例-4 de’nwabango-wa <NUM VAL=0123-456-789> de_su.

記号の種類や指定位置でニュアンスが変わるので、色々な文字列で試してみてください。なお、記号の指定には規定があり、不適当な場合はエラーを返します。例えばアクセント記号は、必ず読み記号の後に指定します。詳しくは、データシートを確認してください。

まとめ

ATP3012は、音声記号列を入力するだけで発声するので簡単に使えます。また、音声記号をアレンジすれば、音調を自在に変えることができます。次回は、外部入力信号からのプリセットメッセージの発声を試したいと思います。

– 以上 –