[[小林研究室ホームページ]] [[回路図等の説明]] [[作業ディレクトリ>/:PIC/]] PIC でアクティブ消音制御というとほとんど絶望的に聞こえますが,できます. ミドルクラスの PIC としてメジャーな PIC16F877 を用いて,アクティブ消音制御を行いました. サンプリング周期 0.75msec で,24 次のコントローラを実装しました. ただし,実装するためには,工夫が必要です. ここではコントローラの演算量低減のため,コントローラの係数を有効桁 10 の 2 進数で表現し,浮動小数演算のかわりに整数演算を行っています. &ref([[/:PIC/result_PC.png]],nolink) #ref([[エリアス名:/:PIC/result_PC.png]]) [[img:/:PIC/result_PC.png]] [[/:PIC/result_PC.png]] /:PIC/result_PC.png [/:PIC/result_PC.png] PC (RT-Linux 3.2) による制御結果 <br> <br> <img src="PIC/result_PIC.png"><br> PIC (PIC16F877) による制御結果.ただし,騒音の信号 w は PC から発生させる <br> <br> <img src="PIC/result.png"><br> PIC 単独で動作.騒音も PIC で生成する.騒音スイッチを手動で on/off. </center> <!-- 上記 2 つの実験結果では,外乱 w を発生するために同一の乱数の系列を用いています.--> <br> <br> 参考: <a href="PIC/">作業ディレクトリ</a> (平成19年度オープンハウスに使用)<br> 手順の説明が <a href="PIC/README">README</a>にあります. <br> <br> PIC でアクティブ消音を実現するまで: <ul> <li>材料 <ul> <li> ANC基板の作成 <li> プログラムライタ,デバッガ,C コンパイラ </ul> <li> コントローラを求め,その状態空間実現を適当な正準形に変換する <li> PC で消音制御実験を行い,理想状況下での観測主力 y と制御入力 u およ び状態変数 x を記録する <li> 補償器を近似して,PIC 用 C コードを生成する. <li> PIC 用 C コードのシミュレーションを行い,実験結果と比較する.(スケーリング,有効桁を調整) <li> PIC 用 C コードをコンパイル,書き込む.(容量オーバーで書き込めない場合は,有効桁を下げる,プログラムを関数化して分割配置する等して対処) <li> PIC で消音制御実験 </ul> - [[回路の基本的な構成>/:PIC/fig2.bmp]] - [[プログラマ>/:PIC/fig5.jpg]] ... PICプログラマとして使用した秋月電子の AKI-877ICEキット - [[ANCボードの PIC 周辺の結線図>/:PIC/fig6.bmp]] -- ラダー回路により,8bit の D/A を構成しています. -- Err Mic の記載ありますが,実際には使用していません.Err Mic は PC でコントローラを設計する際にのみ使用しています. - その他 -- ローパスフィルタは500Hz4次バターワース型で,マイク用とパワーアンプ用 で共通 -- パワーアンプには (有)エスケイ電子のキット TW-144 を使用(別のスピーカを駆動する場合も考えて,かなりオーバースペックです) -- PICは 16F877 -- マイク用プリアンプでは,オペアンプを使ってゲイン10倍のアンプを構成 [[回路図>/:PIC/fig8.bmp]] -- コンデンサマイク ... ノーブランドのエレクトレット型.一個200円位の安物で,品質保証も特になし. -- スピーカのアンプは(有)エスケイ電子のキット TW-144 を使用.