名称 MIRS1301 PID制御ライブラリ詳細設計書
番号 MIRS1301-SOFT-0006

最終更新日:2013.02.18

版数 最終更新日 作成 承認 改訂記事
A01 2013.02.18 高原一真 青木先生 初版

目次

  1. はじめに
  2. 要約
  3. プログラム

  1. はじめに

    本ドキュメントは、MIRS1301のPID制御ライブラリの詳細設計書である。

  2. 要約

    1. 構造体・列挙体

      構造体: PIDController

      修飾子名称概要
      typedef struct PIDController_ PIDController PID制御器構造体
    2. 定数

    3. 関数・関数型マクロ

      時間の単位は全て [sec] である。

      戻り値が int 型の関数のうち、戻り値に対する説明の無いものは、
      正常終了時に0、 エラー発生時に0以外の値を返す関数である。
      修飾子・戻値名称・引数概要
      PIDController* pidStart() PID制御器の生成
      int pidInput(PIDController* pid, double error) 現在の偏差(error)を入力する
      double pidOutput(PIDController* pid) PID制御器からの出力を取得する
      void pidFinish(PIDController* pid) PID制御器のメモリを解放する
      修飾子・戻値名称・引数概要
      int pidTune(PIDController* pid, double step, double deadTime, double risingTime) PIDパラメータをステップ応答法で調整する
      step: ステップ入力の大きさ(例:単位ステップ入力なら1.00)
      deadTime: 遅延時間
      risingTime: 上昇時間
      int pidSetGain(PIDController* pid, double gainP, double gainI, double gainD) PIDゲインの設定
      int pidSetGainP(PIDController* pid, double gainP) 比例ゲインの設定
      int pidSetGainI(PIDController* pid, double gainI) 積分ゲインの設定
      int pidSetGainD(PIDController* pid, double gainD) 微分ゲインの設定
      int pidSetTimeI(PIDController* pid, double timeI) 積分時間の設定
      int pidSetTimeD(PIDController* pid, double timeD) 微分時間の設定
      double pidGetGainP(PIDController* pid) 比例ゲインの取得
      double pidGetGainI(PIDController* pid) 積分ゲインの取得
      double pidGetGainD(PIDController* pid) 微分ゲインの取得
      double pidGetTimeI(PIDController* pid) 積分時間の取得
      double pidGetTimeD(PIDController* pid) 微分時間の取得
      double pidGetErrorP(PIDController* pid) 最後に入力された偏差の取得
      double pidGetErrorI(PIDController* pid) 積分値の取得
      double pidGetErrorD(PIDController* pid) 微分値の取得
      int pidLimitOutput(PIDController* pid, double min, double max) 出力に制限をかける
      int pidLimitErrorP(PIDController* pid, double min, double max) 偏差の入力値に制限をかける
      int pidLimitErrorI(PIDController* pid, double min, double max) 積分項に制限をかける
      int pidLimitErrorD(PIDController* pid, double min, double max) 微分項に制限をかける

  3. プログラム

    ダウンロード先: MIRS1301 ソフトウェア詳細設計書

▲上へ


MIRS1301 ドキュメント管理台帳へ

沼津工業高等専門学校 電子制御工学科