Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Communication/PID/PID.h@5:3ae504b88679, 2018-10-01 (annotated)
- Committer:
- kishibekairohan
- Date:
- Mon Oct 01 09:07:27 2018 +0000
- Revision:
- 5:3ae504b88679
maruyama
Who changed what in which revision?
| User | Revision | Line number | New contents of line |
|---|---|---|---|
| kishibekairohan | 5:3ae504b88679 | 1 | #ifndef PID_H_ |
| kishibekairohan | 5:3ae504b88679 | 2 | #define PID_H_ |
| kishibekairohan | 5:3ae504b88679 | 3 | |
| kishibekairohan | 5:3ae504b88679 | 4 | namespace PID_SPACE |
| kishibekairohan | 5:3ae504b88679 | 5 | { |
| kishibekairohan | 5:3ae504b88679 | 6 | class PID |
| kishibekairohan | 5:3ae504b88679 | 7 | { |
| kishibekairohan | 5:3ae504b88679 | 8 | private: |
| kishibekairohan | 5:3ae504b88679 | 9 | double diff[2]; |
| kishibekairohan | 5:3ae504b88679 | 10 | double integral; |
| kishibekairohan | 5:3ae504b88679 | 11 | double deltaTime; |
| kishibekairohan | 5:3ae504b88679 | 12 | double dataRangeLower; |
| kishibekairohan | 5:3ae504b88679 | 13 | double dataRangeUpper; |
| kishibekairohan | 5:3ae504b88679 | 14 | double kp,ki,kd; |
| kishibekairohan | 5:3ae504b88679 | 15 | double mv; |
| kishibekairohan | 5:3ae504b88679 | 16 | |
| kishibekairohan | 5:3ae504b88679 | 17 | public: |
| kishibekairohan | 5:3ae504b88679 | 18 | // deltaTime:1サイクル時間( 1 / Process Frequency ) |
| kishibekairohan | 5:3ae504b88679 | 19 | PID(double deltaTime); |
| kishibekairohan | 5:3ae504b88679 | 20 | PID(double deltaTime, double dataRangeLower, double dataRangeUpper); |
| kishibekairohan | 5:3ae504b88679 | 21 | PID(double deltaTime, double dataRangeLower, double dataRangeUpper, double KP, double KI, double KD); |
| kishibekairohan | 5:3ae504b88679 | 22 | |
| kishibekairohan | 5:3ae504b88679 | 23 | //パラメータを設定 |
| kishibekairohan | 5:3ae504b88679 | 24 | void SetParam(double KP, double KI, double KD); |
| kishibekairohan | 5:3ae504b88679 | 25 | |
| kishibekairohan | 5:3ae504b88679 | 26 | //測定量を入力し操作量を取得 |
| kishibekairohan | 5:3ae504b88679 | 27 | double SetPV(double sensorData, double targetData); |
| kishibekairohan | 5:3ae504b88679 | 28 | |
| kishibekairohan | 5:3ae504b88679 | 29 | //操作量を取得 |
| kishibekairohan | 5:3ae504b88679 | 30 | double GetMV(); |
| kishibekairohan | 5:3ae504b88679 | 31 | |
| kishibekairohan | 5:3ae504b88679 | 32 | //入力した値を制限して取得 |
| kishibekairohan | 5:3ae504b88679 | 33 | double limit(double data, double lower, double upper); |
| kishibekairohan | 5:3ae504b88679 | 34 | |
| kishibekairohan | 5:3ae504b88679 | 35 | }; |
| kishibekairohan | 5:3ae504b88679 | 36 | |
| kishibekairohan | 5:3ae504b88679 | 37 | |
| kishibekairohan | 5:3ae504b88679 | 38 | } |
| kishibekairohan | 5:3ae504b88679 | 39 | |
| kishibekairohan | 5:3ae504b88679 | 40 | |
| kishibekairohan | 5:3ae504b88679 | 41 | |
| kishibekairohan | 5:3ae504b88679 | 42 | #endif /* PID_H_ */ |