2016-02-11 12:19 | カテゴリ:1/8モデル
電子回路の工作の続きです。
新しい電子部品を使用する時は、なんやかんや、トラブルが発生して、負のスパイラルに入ってしまいます。
こんかいの発声LSIもそうです。

とはいえ、親切な秋月さんから、新しい音声モジュールLSIが届きました。
で、早速、テスト。念のためブレッドボードのセットをすべてはずして、ゼロから配線しなおしました。

ちゃんと起動コマンドやバージョン出力コマンドも反応して正しい答えを返してくれます。
何が悪かったのはよくわかりません。
自分のテスト回路の接触不良かもしれませんし、LSIの不調かもしれませんが、いずれにしろ新しいLSIはちゃんと動作しています。
念のために1-2時間通電して、再テストしてもOKでしたので、これで良しとしました。

さて、LSIがちゃんと動作することが確認できましたので、早速、発声を試してみます。
その前に、TRとスピーカーを出力端子に取り付けて、音出しの準備をします。

DSC01776.jpg


赤丸が取り付けたTR(2SC1815)、緑丸がベース抵抗(4.7K)、奥の黄丸が、音声LSIです。

テスト回路の全体です。

DSC01777.jpg


右下にスピーカー(5Ω、1W)を接続しました。
音が大きく出せるように、下に密封容器のフタを入れました。(笑)
また、左のD-SUBコネクターから、USB変換ケーブルを通して、PCに接続してあります。
PCでは、簡易通信ソフトで、任意の文字や記号を送信したり受信した信号を表示したり出来るようになっています。

PCでソフトを立ち上げ、通信速度を設定し、音声LSIの起動コマンド「?」(3F)を送ります。
すると、ちゃんと「>」記号(3E)が返されました。

あらかじめ、メモ帳ソフトで、ローマ字で発声文章を入力しておき、それをコピペで通信ソフトに貼り付けると、ちゃんと発声してくれました。

ビデオ撮影しましたが、ちゃんと音声が拾えているか心配でしたが、なんとか聴こえるようです。

こちらをご笑覧ください。




発声LSIに喋らせるには、ローマ字(半角ASCIIコード)で文字を書き出し、最後にCRコードを送信すると、それを機に発音します。
また、二種類の「ベル音」が内蔵されていますので、「ピーン」とか「ポーン」といった音も出せます。
ローマ字表記には、アクセントや、発音休止などの記号もあって、細かな設定も可能です。

これで、ロボットに「喋らせる」ことも、どうやら上手く行きそうです(安心)


追加の工作をしました、、、、

電子回路の工作の続きです。

一応、音声回路のテストが無事に終わりました。
今度は、PCの通信ソフトを利用したテストから、実際のPICのRS232通信で発声させるように回路を組みました。
前回は、いきなりここに進んで、失敗しましたので、今度は一つずつ手順を踏んですすめます。

まず、PICから音声LSIの初期化コマンドがちゃんと送信されているかをPCの通信ソフトで確認しました。
OKです。
次に、PICが音声LSIからの返信(3E)を受信して、次のステップに移るかのテスト。
これもOKです。

そしてPICと音声LSIの送受信ポートを交互に接続。
スイッチON!



おー、見事に設定した音声が再生されました。
よかった、よかった。


ソフトの記述がどうなっているか?
ご関心のある方のために、ちょっとご紹介させてください。

voice関数というものを設定し、そこに文字列を渡すと、それをRS232信号に直して送信するような仕組みです。

呼び出す側の記述がこれです。

Yobidasi.jpg

voice関数がこれです。

voice.jpg

これで一安心です。

管理者のみに表示する