重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

【6/2終了】教えて!goo新規会員登録

私は大学で古典制御,現代制御まで学びましたが,その理論と実際の使い方がつながっていないというよりわかっていません.そこで,電子工作して,以下のようなことをして実際にものを制御することを学んでみたいです.

・PID制御
・フィードバック制御
・最適制御
・オブサーバー

などなど,デジタル制御なども学んでみたいです.例えば倒立振子を現代制御するなど
電子工作がど素人でも実際に工作して制御の基礎を学べる本や教材などがありましたらどうか教えてください.
お願いします.ちなみにC言語はわかりますが,マイコンに書かれている特殊な文はわかりません.

A 回答 (4件)

kiyotamakiyotaさん



先ほどの回答で、示した参考URLよりも、役立ちそうなのを見つけたので、示します。
これは、サーボ系の制御をPIDで行った場合のシミュレーションを行っています。
参考にしてください。

参考URL:http://www.cyb.mei.titech.ac.jp/2008SS2/mechatro …
    • good
    • 0
この回答へのお礼

重ねがさねご回答ありがとうございます.参考にします.

お礼日時:2013/09/15 13:33

kiyotamakiyotaさん、こんにちは。


フィードバック制御,PID制御などを電子回路で実現する手順を知りたいとのことですが、その辺りを橋渡しするような書籍に心当たりが有りません。(昔々のアナログコンピュータの本が良いのですが、今は手に入らないですね。)
参考URLに示す文書を見てください。OPアンプを使ったアナログ演算回路について書かれています。
幾つかの例について、伝達関数との関連について記します。

(1)例E7.2 反転増幅回路
 これは、入力信号の符号を反転、ゲインは、R2/R1です。
 少し手を加えるだけで、加算器にもなります。
(2)例E7.3 非反転増幅回路
 これは、入力信号を、(1+R2/R1)倍します。
(3)例E7.4 1 次遅れ要素
 伝達関数は、G(s) = -K/(1+τs) 但し、K=R2/R1 τ=CR2
(4)例E7.5 積分要素
 伝達関数は、G(s) = -1/(τs) 但し、 τ=CR

このように、OPアンプを使うと、信号の増幅,積分などができます。後は、これらを組み合わせて、現実のプロセスをシミュレートすることになります。これは、SPiceでも同じです。CQ出版社の"電子回路シミュレータPSpice入門編"を購入されると、Windows用のPSpiceが手に入ります。
参考にしてください。

参考URL:http://www.cyb.mei.titech.ac.jp/2008SS2/mechatro …
    • good
    • 0

kiyotamakiyotaさん、こんにちは。


大学で、一通りの制御工学を勉強したので、実践を電子工作を通じて、行いたいとのことですね。kiyotamakiyotaさんが例に挙げられている内、最初の二つ(PID制御,フィードバック制御)は、アナログ回路(OPアンプなど)を使った回路で、実験できますね。後の二つ(最適制御,オブザーバー)は、何かしら計算機がないと辛いですね。
【フィードバック制御】
(1)OPアンプやCR回路で、制御対象の伝達関数を実現する。
(2)制御回路をOPアンプ回路で実現する。
(3)入力信号(ステップ入力,正弦波:ファンクションゼネレータ)を入れて、応答を観る(オシロスコープ)。
このような、手順でしょうか。昔々のアナログ計算機の世界ですね。
この場合、(2)の制御回路をPID回路にするとPID制御の様子を観る事ができますね。
さて、上に記した程度であれば、フリーの電子回路のシミュレータでもPC上でシミュレーションできます。
例えば、PSpiceでも、ABMと言うライブラリを使えば、容易にできます。

【最適制御】
残念ながら、最適制御を学ぶための具体的な例については、分かりません。

【オブザーバー】
実例として次の記事を紹介します。
トランジスタ技術 2010年8月号 マイコンに負荷モデルを組み込むオブザーバ制御の研究 青山悟

以上、参考にしてください。
    • good
    • 0
この回答へのお礼

ありがとうございます.

フィードバック制御とPID制御の件ですが,手順と方法が書かれた参考書はないでしょうか?

お礼日時:2013/09/07 08:09

トランジスタ技術の特集で勉強したらどうでしょう。


でも大学で基礎を学んでいるのならMatlab/SimulinkやScilabでシミュレーションで勉強してみたらどうでしょう。
    • good
    • 1

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!