![]() |
Re: 2012: Tuning the Jaguar's Speed Control PID Loop
Quote:
-Joe |
Re: 2012: Tuning the Jaguar's Speed Control PID Loop
Quote:
---Michael J Coss |
Re: 2012: Tuning the Jaguar's Speed Control PID Loop
My impression is that GetStatus is a LabView thing not for WindRiver C++.
|
Re: 2012: Tuning the Jaguar's Speed Control PID Loop
Quote:
Quote:
|
Re: 2012: Tuning the Jaguar's Speed Control PID Loop
Quote:
Code:
/**Code:
/** |
Re: 2012: Tuning the Jaguar's Speed Control PID Loop
Yes. Mea culpa
While I was looking for the GetStatus(), I found GetSpeed(). Meant to mention that in the post. ---Michael J Coss |
Re: 2012: Tuning the Jaguar's Speed Control PID Loop
My name is Martin Kanner (an old time controls engineer) and I have been mentoring for team 353 for 6 years. I marveled at the technology of the PID but I coudln't see how it could be applied in an engineering fashion with the information available. My basic point is that a closed loop is designed for performance and stability. This is not to be accomplished by trial and erorr. My experience has been with the application of Bode analysis and Bode plots. I have completed 3 files so far entitled "The PID Revisited". I expect to complete two more files to be complete. I believe they contain the basics for designing closed loops. If anyone is interested, I'll e-mail PID11, PID22 and
PID33. They are pretty short but I believe contain some simple but important fundamentals. My e-mail is, msixxpoppy@hotmail.com |
Re: 2012: Tuning the Jaguar's Speed Control PID Loop
Quote:
|
Re: 2012: Tuning the Jaguar's Speed Control PID Loop
Quote:
This year for our team we used Java... and with the help of the SmartDashbaord I have created a GUI for PID tuning that I used on our 2012 bot. Since We were running our own custom PID controllers on the CRIO this was very helpful. So while I haven't done it with C++ per se, the code in java and the smartdashboard can help you get similar functionality. I also worked on a new tutorial for tuning gains, using Matlab and Simulink, in order to get a more accurate controller. The method of tuning is the same as in my original video, but the method for modeling is different. In the previous videos modeling of the plant was done using parameters provided by the datasheets of the motor and physical modeling techniques. However, there is always error between the model and the apparatus because of parameter mismatch. The new method is based on taking measured data by running the actual system and logging to the file its performance to a step response, and using that data in matlab to perform parameter estimation. The estimated system is a far better realization of the plant model and allows for a more accurate controller design the first time around. I am trying to find the time to post all this stuff, its just been hard. - My apologies |
Re: 2012: Tuning the Jaguar's Speed Control PID Loop
1 Attachment(s)
I had the same idea of predicting the step response. Attached is my cut at estimating PID values of the drive train UNDER LOAD (without risk of crashing into walls). I have not tried this on the actual robot yet, but it will hopefully be a good starting point.
I have updated the post with a new excel to correct some typos |
Re: 2012: Tuning the Jaguar's Speed Control PID Loop
1 Attachment(s)
1) Updated with PID in either robot FPS or motor RPS.
2) Improved wheel slip to use either static or kinetic friction based on previous state. |
| All times are GMT -5. The time now is 00:51. |
Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi