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.
Dependencies: SBDBT arrc_mbed BNO055
PIDco.hpp@5:1a850f68a06c, 2022-01-23 (annotated)
- Committer:
 - guesta
 - Date:
 - Sun Jan 23 13:31:36 2022 +0000
 - Revision:
 - 5:1a850f68a06c
 - Parent:
 - 0:a1238c4cd105
 - Child:
 - 7:a0375e6dc8ca
 
add go to target_position;
Who changed what in which revision?
| User | Revision | Line number | New contents of line | 
|---|---|---|---|
| kazumayamanaka | 0:a1238c4cd105 | 1 | #ifndef PID_CO_H | 
| kazumayamanaka | 0:a1238c4cd105 | 2 | #define PID_CO_H | 
| kazumayamanaka | 0:a1238c4cd105 | 3 | #include "mbed.h" | 
| kazumayamanaka | 0:a1238c4cd105 | 4 | |
| guesta | 5:1a850f68a06c | 5 | //#define Kp 0.0001 | 
| guesta | 5:1a850f68a06c | 6 | //#define Ki 0.0000014 | 
| guesta | 5:1a850f68a06c | 7 | //#define Kd 0.0000001 | 
| kazumayamanaka | 0:a1238c4cd105 | 8 | #define co (108 * 3.1415926535897) / 500 | 
| kazumayamanaka | 0:a1238c4cd105 | 9 | |
| kazumayamanaka | 0:a1238c4cd105 | 10 | |
| kazumayamanaka | 0:a1238c4cd105 | 11 | class PIDco{ | 
| kazumayamanaka | 0:a1238c4cd105 | 12 | |
| kazumayamanaka | 0:a1238c4cd105 | 13 | public://use in main.cpp | 
| kazumayamanaka | 0:a1238c4cd105 | 14 | PIDco(); | 
| kazumayamanaka | 0:a1238c4cd105 | 15 | double obt_spd(); | 
| guesta | 5:1a850f68a06c | 16 | void pass_val(double PULSE,double TARGET,double p_gain,double i_gain,double d_gain); | 
| kazumayamanaka | 0:a1238c4cd105 | 17 | void wheel_ctl(PinName PIN_A,PinName PIN_B); | 
| kazumayamanaka | 0:a1238c4cd105 | 18 | |
| kazumayamanaka | 0:a1238c4cd105 | 19 | private: | 
| kazumayamanaka | 0:a1238c4cd105 | 20 | void cal_spd(); | 
| kazumayamanaka | 0:a1238c4cd105 | 21 | void cal_Error(); | 
| kazumayamanaka | 0:a1238c4cd105 | 22 | void renew_Error(); | 
| kazumayamanaka | 0:a1238c4cd105 | 23 | void cal_Pval(); | 
| kazumayamanaka | 0:a1238c4cd105 | 24 | void cal_Ival(); | 
| kazumayamanaka | 0:a1238c4cd105 | 25 | void cal_Dval(); | 
| kazumayamanaka | 0:a1238c4cd105 | 26 | void cal_pwm(); | 
| kazumayamanaka | 0:a1238c4cd105 | 27 | |
| kazumayamanaka | 0:a1238c4cd105 | 28 | double spd; | 
| kazumayamanaka | 0:a1238c4cd105 | 29 | double Target,Error_a,Error_b; | 
| kazumayamanaka | 0:a1238c4cd105 | 30 | double Pval,Ival,Dval,Pwm; | 
| kazumayamanaka | 0:a1238c4cd105 | 31 | double Integral,dt; | 
| kazumayamanaka | 0:a1238c4cd105 | 32 | double diff,pulse_a,pulse_b; | 
| kazumayamanaka | 0:a1238c4cd105 | 33 | double v1p_set,v1m_set; | 
| guesta | 5:1a850f68a06c | 34 | double Kp; | 
| guesta | 5:1a850f68a06c | 35 | double Ki; | 
| guesta | 5:1a850f68a06c | 36 | double Kd; | 
| kazumayamanaka | 0:a1238c4cd105 | 37 | }; | 
| kazumayamanaka | 0:a1238c4cd105 | 38 | |
| kazumayamanaka | 0:a1238c4cd105 | 39 | #endif | 
| kazumayamanaka | 0:a1238c4cd105 | 40 | |
| kazumayamanaka | 0:a1238c4cd105 | 41 | |
| kazumayamanaka | 0:a1238c4cd105 | 42 | |
| kazumayamanaka | 0:a1238c4cd105 | 43 | |
| kazumayamanaka | 0:a1238c4cd105 | 44 | |
| kazumayamanaka | 0:a1238c4cd105 | 45 |