ブログパーツUL5

APR9600のコントロールを検討

 APRO9600の動作確認ができたので、次はRZ-1のMR-C3024からどのようにコントロールするかを検討しないとRZ-1に搭載できません。MR-C3024のUARTとI2Cはすでに使用済みなので、そのインターフェイスは利用できないという制限があり、残るはデジタルI/Oポートで行なうしかなく、どのようにするか検討しています。

 現在、考えていることは識別コードは要らない単純な通信でいいのではと思っています。したがって、SW1からSW8を区別するのを、パルス幅かパルス数を検知して行なう方法しかない。パルス幅で検知する場合、例えば、50msでSW1から400mSでSW8がONする。パルス数を検知の場合、パルス1個ならSW1がONになり、パルスが連続して8個ならSW8がONになるという通信であれば、可能なように思うが、何をトリガーにしてカウントするかが問題である。

 実験して波形確認してみないと、確定的には言えないが可能性は高そうである。弱点はノイズによる誤動作が心配であり、テストしながら仕様を決めることにした。最初はマイコンのコントロールでAPR9600がうまく動作せずタイミングなどを調整してみました。

テストして決定したのが、以下のような通信仕様にしました。
・RA1のみ入力で、RB0〜RB7全てを出力にする
・発振は内部発振を利用
・パルス幅は50mSとする(SW動作なので高速動作させない)
・1コードは800mSとする
・1パルス目がスタートビットとして認識する
・2パルス目からSW1〜SW8に対応したビットにする
・パルス幅でもパルス位置でも検出できるようにする
 →最終的にHになっているビットを検出して判定
・出力後、すぐにリセットする(8ビットまで待たない)

通信のタイミングチャート
タイミングチャート
 マイコンは発振子を無くして内部発振を使うので、PICマイコンの16F628Aを利用します。16F628Aのソフトも書き込みましたので、MR-C3924でうまく動作するかをテストする必要がありますが、MR-C3024のデジタル系端子はバッテリー電源なので、5Vではなく7.5V位になりますから絶対最大定格を越えてしまいます。従って、三端子電源で5Vに落とさないといけないことになるが、モジュールに載せられるかが問題である。載せられない場合には、電源とGNDはアナログ系から接続すれば可能である。
0

    APR9600再生専用モジュールの製作

     ロボットの搭載するのには録音機能は使わないので、APR9600を再生専用で動作させるようにして小型化することにしました。しかし、APR9600の再生音が小さいようなので、出力アンプをを追加しました。さらに、タクトSWの代わりにPICマイコンでコントロールするように変更しました。

    (1)出力アンプの検討
    386応用回路 手持ちに386Bがあったので、386BのOPアンプを利用して出力アンプを組み込むようにしました。386Bのデータシートから応用回路を参考にして、単電源なので入力と出力をカップリング容量でDC成分をカットします。

     出力端子の0.047μFと10Ωは発振防止で、電源側の容量もノイズ低減と発振防止のために必要で省略しない方がよい。


    (2)再生専用回路
    再生専用回路(訂正版)
    ・APR9600の周辺回路で録音時に必要な部品と回路は削除する。

    ・切替えジャンパーも固定にする。
     再生モード固定で、8音声選択

    ・出力アンプを追加
     スピーカーは8Ω

    ・コントロールするPICマイコンを追加
     (マイコンソフトは暫定でまだ未完成)


    (3)再生専用基板の部品配置検討
    APR960再生専用モジュール
     上記の回路を出来る限り小型なモジュールするために部品配置を検討する。

     いろいろ試してみましたが、APR9600用のソケットの内側にも部品を配置することでなんとか実現しました。



    (4)APR9600の録音再生評価基板と今回の再生専用基板の比較
    基板の比較
     回路は増えましたが、評価基板の半分以下のサイズで再生専用モジュールが出来上がりました。

    右側が録音再生評価基板
    左側がアンプ付再生専用基板

     なお、APR9600が安いのでソケット代にプラスして予備にもう1つ購入して、東芝の音声合成によるリアルな音声も録音してみました。


     今後、MR-C3024からコントロールしてうまく音声が出るかの綜合テストをしながら、PICマイコンのソフトを作成していきます。
    0

      ロボット的な音声の音声合成

       APR9600に録音する音声は自分の音声でも出来るのですが、ロボット的なというか機械的な音声にしたくて音声合成ソフトを調べていたらちょうど良いものが見つかり、電子工作工房の「音声、録音・再生、APR9600を考察する」を参考にさせてもらいました。

       まず、解析エンジンMeCabをココからmecab-0.98pre3.exeをダウンロードして、インストールはデフォルトパス("C:¥Program Files¥MeCab")へ必ず行います。

       MeCabのインストールが済んだら、次は音声合成フリーソフト「青空ろーどく」は任意の場所にインストールする。以上の順にインストールすれば、問題なく動作するはずです。

       なお、青空ろーどくの設定音声を変えるには、¥AozoraRohdoku¥AquesTalk¥bin¥の下にある AquesTalkDa.dllとAquesTalk.dllをその下のディレクトリ(ロボット声1、・・・、中性的な声1)にあるAquesTalkDa.dllとAquesTalk.dllをコピーして置き換える

       動作環境が整ったら「青空ろーどく」を起動して、簡単にテキストまたはテキストファイルを音声合成できるので、その結果を聞くこともでき、音声ファイルとしても保存できます。APR9600の録音時間が短いので、1メッセージの音声は5秒以内に収まるようなにテキストを書いて、その音声は「青空ろーどく」の速度で調整する。
      「青空ろーどく」画面
       音声合成は満足できるレベルで、PCのスピーカから音声を出したAPR89600の評価ボードのマイクで録音するようにします。音声は大き目にします。APR89600のスピーカ駆動は非力なので、アンプが必要なようです。

       「青空ろーどく」で作成したサンプル音声で確認できます。

      MeCab (和布蕪)とは
       MeCabは 京都大学情報学研究科−日本電信電話株式会社コミュニケーション科学基礎研究所共同研究ユニットプロジェクトを通じて開発されたオープンソース形態素解析エンジンです。
      続きを読む >>
      0

        1

        カレンダ

              1
        2345678
        9101112131415
        16171819202122
        23242526272829
        3031     
        << October 2011 >>