Go to Post If you want to have other teams cheer for you all day long at competition, name your team "Robot Coming Through". - Gary Dillard [more]
Home
Go Back   Chief Delphi > Technical > Control System
CD-Media   CD-Spy  
portal register members calendar search Today's Posts Mark Forums Read FAQ rules

 
Reply
Thread Tools Rating: Thread Rating: 41 votes, 5.00 average. Display Modes
  #31   Spotlight this post!  
Unread 10-06-2014, 21:01
Ether's Avatar
Ether Ether is offline
systems engineer (retired)
no team
 
Join Date: Nov 2009
Rookie Year: 1969
Location: US
Posts: 7,995
Ether has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond repute
Re: 971's Control System


Kevin,

What value have you measured for L for CIM ?

Oh, also: Ke should be V/(rad/sec) or V∙sec/rad no?


Reply With Quote
  #32   Spotlight this post!  
Unread 10-06-2014, 22:00
AustinSchuh AustinSchuh is offline
Registered User
FRC #0971 (Spartan Robotics) #254 (The Cheesy Poofs)
Team Role: Engineer
 
Join Date: Feb 2005
Rookie Year: 1999
Location: Los Altos, CA
Posts: 800
AustinSchuh has a reputation beyond reputeAustinSchuh has a reputation beyond reputeAustinSchuh has a reputation beyond reputeAustinSchuh has a reputation beyond reputeAustinSchuh has a reputation beyond reputeAustinSchuh has a reputation beyond reputeAustinSchuh has a reputation beyond reputeAustinSchuh has a reputation beyond reputeAustinSchuh has a reputation beyond reputeAustinSchuh has a reputation beyond reputeAustinSchuh has a reputation beyond repute
Re: 971's Control System

Quote:
Originally Posted by adciv View Post
That does help, and I look forward to your white paper. Thank you. Gathering the physical parameters is the part I've been trying to figure out, since I don't have access to a system analyzer like I did in college.
For flywheels and stuff like that, I've been starting by recording a step response. I'll then feed the same step response to my model, and plotting the results on top of each other. I then fiddle with the parameters until it matches well enough.
Reply With Quote
  #33   Spotlight this post!  
Unread 11-06-2014, 00:57
NotInControl NotInControl is offline
Controls Engineer
AKA: Kevin
FRC #2168 (Aluminum Falcons)
Team Role: Engineer
 
Join Date: Oct 2011
Rookie Year: 2004
Location: Groton, CT
Posts: 261
NotInControl has a reputation beyond reputeNotInControl has a reputation beyond reputeNotInControl has a reputation beyond reputeNotInControl has a reputation beyond reputeNotInControl has a reputation beyond reputeNotInControl has a reputation beyond reputeNotInControl has a reputation beyond reputeNotInControl has a reputation beyond reputeNotInControl has a reputation beyond reputeNotInControl has a reputation beyond reputeNotInControl has a reputation beyond repute
Re: 971's Control System

Quote:
Originally Posted by Ether View Post

Kevin,

What value have you measured for L for CIM ?

Oh, also: Ke should be V/(rad/sec) or V∙sec/rad no?



I would need to look up the measured value from my old models, I do not recall off the top of my head what the measured inductance value was. I'll provide it as soon as I can.


As for the units for Ke, you are correct. The units must satisfy this equation:

emf [Volts] = Ke [Volts/(rads/sec)] * AngularVelocity [rads/sec]

Looks like I left off the parentheses in my original post. I will edit my post to add parentheses to make it clear. Thank you for catching the typo.

Regards,
Kevin
__________________
Controls Engineer, Team 2168 - The Aluminum Falcons
[2016 Season] - World Championship Controls Award, District Controls Award, 3rd BlueBanner
-World Championship- #45 seed in Quals, World Championship Innovation in Controls Award - Curie
-NE Championship- #26 seed in Quals, winner(195,125,2168)
[2015 Season] - NE Championship Controls Award, 2nd Blue Banner
-NE Championship- #26 seed in Quals, NE Championship Innovation in Controls Award
-MA District Event- #17 seed in Quals, Winner(2168,3718,3146)
[2014 Season] - NE Championship Controls Award & Semi-finalists, District Controls Award, Creativity Award, & Finalists
-NE Championship- #36 seed in Quals, SemiFinalist(228,2168,3525), NE Championship Innovation in Controls Award
-RI District Event- #7 seed in Quals, Finalist(1519,2168,5163), Innovation in Controls Award
-Groton District Event- #9 seed in Quals, QuarterFinalist(2168, 125, 5112), Creativity Award
[2013 Season] - WPI Regional Winner - 1st Blue Banner

Last edited by NotInControl : 11-06-2014 at 21:56.
Reply With Quote
  #34   Spotlight this post!  
Unread 21-07-2014, 18:31
Ether's Avatar
Ether Ether is offline
systems engineer (retired)
no team
 
Join Date: Nov 2009
Rookie Year: 1969
Location: US
Posts: 7,995
Ether has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond reputeEther has a reputation beyond repute
Re: 971's Control System

Quote:
Originally Posted by NotInControl View Post
I would need to look up the measured value from my old models, I do not recall off the top of my head what the measured inductance value was. I'll provide it as soon as I can.
If anyone else has any test data from which CIM inductance could be calculated, would you be willing to post it?

Thanks.


Reply With Quote
  #35   Spotlight this post!  
Unread 30-12-2014, 18:01
Bryce Paputa's Avatar
Bryce Paputa Bryce Paputa is offline
FF TSL: Frog Farce
FRC #0503 (Frog Force)
Team Role: Alumni
 
Join Date: Jan 2012
Rookie Year: 2008
Location: Novi Michigan
Posts: 454
Bryce Paputa has a reputation beyond reputeBryce Paputa has a reputation beyond reputeBryce Paputa has a reputation beyond reputeBryce Paputa has a reputation beyond reputeBryce Paputa has a reputation beyond reputeBryce Paputa has a reputation beyond reputeBryce Paputa has a reputation beyond reputeBryce Paputa has a reputation beyond reputeBryce Paputa has a reputation beyond reputeBryce Paputa has a reputation beyond reputeBryce Paputa has a reputation beyond repute
Re: 971's Control System

Sorry to necro this thread, but I haven't had time to look into this stuff in detail until now and I have a few questions. Looking at the 2013 flywheel controller, the state matrix for the model looks like:

Code:
Xdot = [ speeddot ] = [ 0     1          ][ speed ] + [ 0      ] U
       [ inputdot ]   [ 0 -kt/kv/(JG^2R) ][ input ]   [ kt/JGR ]

y = [ 1 0 ][ speed ] = speed
           [ input ]

(that's correct, right?)


The part I don't understand is the -kt/kv/(JG^2R) term. That represents how the wheel slows down over time, right? How is/was it derived?

Another question I have is about arms and gravity, when you're modeling an arm like your claws last year do you just ignore gravity in the model and treat it as a disturbance? It doesn't seem like a linear force to me with how it changes with respect to the arm angle and I can't figure out how to get it into a linear state matrix model.
Reply With Quote
  #36   Spotlight this post!  
Unread 30-12-2014, 18:04
adciv adciv is offline
One Eyed Man
FRC #0836 (RoboBees)
Team Role: Mentor
 
Join Date: Jan 2012
Rookie Year: 2010
Location: Southern Maryland
Posts: 478
adciv is a name known to alladciv is a name known to alladciv is a name known to alladciv is a name known to alladciv is a name known to alladciv is a name known to all
Re: 971's Control System

What you could do is add it as a forcing function and cancel it out in your input, along the lines of:
u2 = u1+sin(angle)
__________________
Quote:
Originally Posted by texarkana View Post
I would not want the task of devising a system that 50,000 very smart people try to outwit.
Reply With Quote
  #37   Spotlight this post!  
Unread 30-12-2014, 18:57
James Kuszmaul James Kuszmaul is offline
NEFIRST CSA
FRC #0971 (Spartan Robotics)
 
Join Date: Jan 2012
Rookie Year: 2011
Location: Worcester, MA
Posts: 61
James Kuszmaul has much to be proud ofJames Kuszmaul has much to be proud ofJames Kuszmaul has much to be proud ofJames Kuszmaul has much to be proud ofJames Kuszmaul has much to be proud ofJames Kuszmaul has much to be proud ofJames Kuszmaul has much to be proud ofJames Kuszmaul has much to be proud ofJames Kuszmaul has much to be proud ofJames Kuszmaul has much to be proud of
Re: 971's Control System

Quote:
Originally Posted by Bryce Paputa View Post
Sorry to necro this thread, but I haven't had time to look into this stuff in detail until now and I have a few questions. Looking at the 2013 flywheel controller, the state matrix for the model looks like:

Code:
Xdot = [ speeddot ] = [ 0     1          ][ speed ] + [ 0      ] U
       [ inputdot ]   [ 0 -kt/kv/(JG^2R) ][ input ]   [ kt/JGR ]

y = [ 1 0 ][ speed ] = speed
           [ input ]

(that's correct, right?)


The part I don't understand is the -kt/kv/(JG^2R) term. That represents how the wheel slows down over time, right? How is/was it derived?
You are correct; that term does describe how the wheel slows down over time. This comes from the equations that are use to describe an ideal motor. I have attached a pdf with the derivation of the A and B matrices.
Edit: I didn't look carefully enough at your matrices; what I said is correct, but the state matrix (X) is of the form:
[[position]
[velocity]]
for the 2013 shooter and Y would just be the position.

Quote:
Originally Posted by Bryce Paputa View Post
Another question I have is about arms and gravity, when you're modeling an arm like your claws last year do you just ignore gravity in the model and treat it as a disturbance? It doesn't seem like a linear force to me with how it changes with respect to the arm angle and I can't figure out how to get it into a linear state matrix model.
We did ignore gravity in our final model (we ran some simulations with gravity included and the differences were relatively minor; unfortunately, I don't have any of the graphs on hand). This is also complicated by the fact that gravity's influence on our arm would be non-linear (as you mention) and due to the wide range of motion of the arm, the small angle approximation can not be used.
The way that we handled the constant force was through the use of the delta-u controller (previous posts in this thread should have some information on this), similar to how the I term of a PID controller would handle it.

If you have any more questions, any of us would be happy to answer.

Another Edit:
I realized that no one mentioned this explicitly since the last post, but you can find some more controls documentation and our 2014 source code here.
Attached Files
File Type: pdf FRC971 State Space Constants Derivation.pdf (24.3 KB, 182 views)
__________________
FRC971 (Student) 2011-2014
FRC190 (College Mentor-ish) 2014
WPILib Development 2014-present

Last edited by James Kuszmaul : 30-12-2014 at 19:26.
Reply With Quote
  #38   Spotlight this post!  
Unread 30-12-2014, 19:30
Michael Hill's Avatar
Michael Hill Michael Hill is offline
Registered User
FRC #3138 (Innovators Robotics)
Team Role: Mentor
 
Join Date: Jul 2004
Rookie Year: 2003
Location: Dayton, OH
Posts: 1,564
Michael Hill has a reputation beyond reputeMichael Hill has a reputation beyond reputeMichael Hill has a reputation beyond reputeMichael Hill has a reputation beyond reputeMichael Hill has a reputation beyond reputeMichael Hill has a reputation beyond reputeMichael Hill has a reputation beyond reputeMichael Hill has a reputation beyond reputeMichael Hill has a reputation beyond reputeMichael Hill has a reputation beyond reputeMichael Hill has a reputation beyond repute
Re: 971's Control System

You make your kids do root-locus plots by hand, right?

*shudders*
Reply With Quote
  #39   Spotlight this post!  
Unread 31-12-2014, 00:16
AustinSchuh AustinSchuh is offline
Registered User
FRC #0971 (Spartan Robotics) #254 (The Cheesy Poofs)
Team Role: Engineer
 
Join Date: Feb 2005
Rookie Year: 1999
Location: Los Altos, CA
Posts: 800
AustinSchuh has a reputation beyond reputeAustinSchuh has a reputation beyond reputeAustinSchuh has a reputation beyond reputeAustinSchuh has a reputation beyond reputeAustinSchuh has a reputation beyond reputeAustinSchuh has a reputation beyond reputeAustinSchuh has a reputation beyond reputeAustinSchuh has a reputation beyond reputeAustinSchuh has a reputation beyond reputeAustinSchuh has a reputation beyond reputeAustinSchuh has a reputation beyond repute
Re: 971's Control System

Quote:
Originally Posted by Michael Hill View Post
You make your kids do root-locus plots by hand, right?

*shudders*
I don't think I've done a root-locus plot since I got out of school. We tend to use the pole placement tools (and LQR and a bit of practice/intuition) to do the final tuning. I never ask the kids to do anything I wouldn't be willing to do myself.
Reply With Quote
  #40   Spotlight this post!  
Unread 31-12-2014, 08:55
Michael Hill's Avatar
Michael Hill Michael Hill is offline
Registered User
FRC #3138 (Innovators Robotics)
Team Role: Mentor
 
Join Date: Jul 2004
Rookie Year: 2003
Location: Dayton, OH
Posts: 1,564
Michael Hill has a reputation beyond reputeMichael Hill has a reputation beyond reputeMichael Hill has a reputation beyond reputeMichael Hill has a reputation beyond reputeMichael Hill has a reputation beyond reputeMichael Hill has a reputation beyond reputeMichael Hill has a reputation beyond reputeMichael Hill has a reputation beyond reputeMichael Hill has a reputation beyond reputeMichael Hill has a reputation beyond reputeMichael Hill has a reputation beyond repute
Re: 971's Control System

Quote:
Originally Posted by AustinSchuh View Post
I don't think I've done a root-locus plot since I got out of school. We tend to use the pole placement tools (and LQR and a bit of practice/intuition) to do the final tuning. I never ask the kids to do anything I wouldn't be willing to do myself.
I remember loathing any assignment requiring root-locus plots. I never really got much out of them anyway (maybe it was just how it was presented). I'm pretty sure I learned more about the control system while making the root-locus plot than anything the plot actually told me when it was done. I've wondered why more teams haven't done LQR or lead-lag compensators. I seem to remember a good LQR was somewhat easy to implement if you knew the dynamics of your system pretty well, but I believe PID is probably more forgiving if you don't fully understand it. Is there any truth to that?
Reply With Quote
Reply


Thread Tools
Display Modes Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump


All times are GMT -5. The time now is 21:57.

The Chief Delphi Forums are sponsored by Innovation First International, Inc.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi