Go to Post Even our greatest idols make mistakes. The good ones, move on and continue to do great things. - Al Skierkiewicz [more]
Home
Go Back   Chief Delphi > Technical > Programming
CD-Media   CD-Spy  
portal register members calendar search Today's Posts Mark Forums Read FAQ rules

 
Closed Thread
Thread Tools Rate Thread Display Modes
  #1   Spotlight this post!  
Unread 08-10-2015, 00:08
AWoL's Avatar
AWoL AWoL is offline
Lvl. 225 Dark Code Mage (Java Type)
AKA: Adam Wolnikowski
FRC #0225 (TechFire)
Team Role: Programmer
 
Join Date: Mar 2014
Rookie Year: 2014
Location: York, Pennsylvania
Posts: 116
AWoL has a reputation beyond reputeAWoL has a reputation beyond reputeAWoL has a reputation beyond reputeAWoL has a reputation beyond reputeAWoL has a reputation beyond reputeAWoL has a reputation beyond reputeAWoL has a reputation beyond reputeAWoL has a reputation beyond reputeAWoL has a reputation beyond reputeAWoL has a reputation beyond reputeAWoL has a reputation beyond repute
Video Explaining PID to Beginners

I made this video explaining PID and its application to robotics as a submission to the Breakthrough Junior Challenge. It attacks explaining PID theory from a perspective that does not involve code or require prior knowledge of calculus, so I hope someone might get some use out of it to explain how PID controllers work to a rookie programmer. Also, please let me know what you think about the video.

Enjoy! - https://youtu.be/_bWvXn4ilrY

I will also post the script, which includes all the graphs (which are all non-licensed and free to use under absolutely any circumstances ) and the equation, on CD media if anyone requests it.
__________________
2016 Competition Results (Co-captain, Driver, and Lead Programmer; Junior)
Springside-Chestnut Hill District Event - WINNER / #2 Seed, #1 Seed's First Pick / Gracious Professionalism Award
Westtown District Event - WINNER / #1 Seed / Industrial Design Award
MAR District Championship - WINNER / #1 Seed / Industrial Design Award / Dean's List Finalist Award (Me)
World Championship, Carson Subdivision - QUARTERFINALIST / #3 Seed, #2 Seed's First Pick
Indiana Robotics Invitational - FINALIST / #14 Seed, #2 Seed's Second Pick

Last edited by AWoL : 08-10-2015 at 00:38.
  #2   Spotlight this post!  
Unread 08-10-2015, 00:29
asid61's Avatar
asid61 asid61 is offline
Registered User
AKA: Anand Rajamani
FRC #1072 (MVRT)
Team Role: Mechanical
 
Join Date: Jan 2014
Rookie Year: 2013
Location: Cupertino, CA
Posts: 2,231
asid61 has a reputation beyond reputeasid61 has a reputation beyond reputeasid61 has a reputation beyond reputeasid61 has a reputation beyond reputeasid61 has a reputation beyond reputeasid61 has a reputation beyond reputeasid61 has a reputation beyond reputeasid61 has a reputation beyond reputeasid61 has a reputation beyond reputeasid61 has a reputation beyond reputeasid61 has a reputation beyond repute
Re: Video Explaining PID to Beginners

I'm sorry, but your link is broken...
__________________
<Now accepting CAD requests and commissions>

  #3   Spotlight this post!  
Unread 08-10-2015, 00:38
AWoL's Avatar
AWoL AWoL is offline
Lvl. 225 Dark Code Mage (Java Type)
AKA: Adam Wolnikowski
FRC #0225 (TechFire)
Team Role: Programmer
 
Join Date: Mar 2014
Rookie Year: 2014
Location: York, Pennsylvania
Posts: 116
AWoL has a reputation beyond reputeAWoL has a reputation beyond reputeAWoL has a reputation beyond reputeAWoL has a reputation beyond reputeAWoL has a reputation beyond reputeAWoL has a reputation beyond reputeAWoL has a reputation beyond reputeAWoL has a reputation beyond reputeAWoL has a reputation beyond reputeAWoL has a reputation beyond reputeAWoL has a reputation beyond repute
Re: Video Explaining PID to Beginners

Quote:
Originally Posted by asid61 View Post
I'm sorry, but your link is broken...
Sorry, should be good now.
__________________
2016 Competition Results (Co-captain, Driver, and Lead Programmer; Junior)
Springside-Chestnut Hill District Event - WINNER / #2 Seed, #1 Seed's First Pick / Gracious Professionalism Award
Westtown District Event - WINNER / #1 Seed / Industrial Design Award
MAR District Championship - WINNER / #1 Seed / Industrial Design Award / Dean's List Finalist Award (Me)
World Championship, Carson Subdivision - QUARTERFINALIST / #3 Seed, #2 Seed's First Pick
Indiana Robotics Invitational - FINALIST / #14 Seed, #2 Seed's Second Pick
  #4   Spotlight this post!  
Unread 08-10-2015, 01:19
cj3958's Avatar
cj3958 cj3958 is offline
Registered User
FRC #5234 (Marauderbots)
Team Role: Mentor
 
Join Date: Jan 2012
Rookie Year: 2007
Location: East Lansing, MI
Posts: 34
cj3958 will become famous soon enough
Re: Video Explaining PID to Beginners

Very well done video, especially for describing the concept to someone who doesn't know anything about PID or why and how they should use it. However, you did skip over the part about how annoying and time consuming it is to find the proper constants and how sometimes not having one of the constants helps if you have slow loop times or noisy signals and other things that happen on real robots. I understand that this was just an introduction to PID, but I felt like it would have also been beneficial to mention something about how sometimes with real data, the graph doesn't turn out as well as the graphs you show do.
__________________
Current Lead Mechanical Mentor for 5234 the marauder-bots http://www.marauderbots.com/
Previously a student for one year on team 246 - Overclocked and 3 years on 3958 - Schodinger's Cat
  #5   Spotlight this post!  
Unread 08-10-2015, 03:00
Munchskull's Avatar
Munchskull Munchskull is offline
CAD Designer/ Electrical Consaltant
AKA: Anthony Cardinali
FRC #0997 (Spartan Robotics)
Team Role: CAD
 
Join Date: Jan 2013
Rookie Year: 2013
Location: Corvallis, OR
Posts: 533
Munchskull is a splendid one to beholdMunchskull is a splendid one to beholdMunchskull is a splendid one to beholdMunchskull is a splendid one to beholdMunchskull is a splendid one to beholdMunchskull is a splendid one to beholdMunchskull is a splendid one to beholdMunchskull is a splendid one to behold
Smile Re: Video Explaining PID to Beginners

Bravo, that was an awesome video. As a FRC student that knows code, nor know calculus, I now feel that I have an understanding of PID loop to the point where I would have a decent idea of how to apply them. Thank you for this informative video.
__________________
“In theory, theory and practice are the same. In practice, they are not.” ― Anonymous
Anthony Cardinali
4th year of FRC
Class of 2017



  #6   Spotlight this post!  
Unread 08-10-2015, 07:59
AWoL's Avatar
AWoL AWoL is offline
Lvl. 225 Dark Code Mage (Java Type)
AKA: Adam Wolnikowski
FRC #0225 (TechFire)
Team Role: Programmer
 
Join Date: Mar 2014
Rookie Year: 2014
Location: York, Pennsylvania
Posts: 116
AWoL has a reputation beyond reputeAWoL has a reputation beyond reputeAWoL has a reputation beyond reputeAWoL has a reputation beyond reputeAWoL has a reputation beyond reputeAWoL has a reputation beyond reputeAWoL has a reputation beyond reputeAWoL has a reputation beyond reputeAWoL has a reputation beyond reputeAWoL has a reputation beyond reputeAWoL has a reputation beyond repute
Re: Video Explaining PID to Beginners

Quote:
Originally Posted by cj3958 View Post
Very well done video, especially for describing the concept to someone who doesn't know anything about PID or why and how they should use it. However, you did skip over the part about how annoying and time consuming it is to find the proper constants and how sometimes not having one of the constants helps if you have slow loop times or noisy signals and other things that happen on real robots. I understand that this was just an introduction to PID, but I felt like it would have also been beneficial to mention something about how sometimes with real data, the graph doesn't turn out as well as the graphs you show do.
That's a very valid point, but for the sake of the clarity of the explanation I decided early on not to get too bogged down in numbers (the only graph axis that I ever had nubmers labeling was time) and the complications that come with applying PID to real life.
__________________
2016 Competition Results (Co-captain, Driver, and Lead Programmer; Junior)
Springside-Chestnut Hill District Event - WINNER / #2 Seed, #1 Seed's First Pick / Gracious Professionalism Award
Westtown District Event - WINNER / #1 Seed / Industrial Design Award
MAR District Championship - WINNER / #1 Seed / Industrial Design Award / Dean's List Finalist Award (Me)
World Championship, Carson Subdivision - QUARTERFINALIST / #3 Seed, #2 Seed's First Pick
Indiana Robotics Invitational - FINALIST / #14 Seed, #2 Seed's Second Pick
  #7   Spotlight this post!  
Unread 08-10-2015, 08:01
AWoL's Avatar
AWoL AWoL is offline
Lvl. 225 Dark Code Mage (Java Type)
AKA: Adam Wolnikowski
FRC #0225 (TechFire)
Team Role: Programmer
 
Join Date: Mar 2014
Rookie Year: 2014
Location: York, Pennsylvania
Posts: 116
AWoL has a reputation beyond reputeAWoL has a reputation beyond reputeAWoL has a reputation beyond reputeAWoL has a reputation beyond reputeAWoL has a reputation beyond reputeAWoL has a reputation beyond reputeAWoL has a reputation beyond reputeAWoL has a reputation beyond reputeAWoL has a reputation beyond reputeAWoL has a reputation beyond reputeAWoL has a reputation beyond repute
Re: Video Explaining PID to Beginners

Quote:
Originally Posted by Munchskull View Post
Bravo, that was an awesome video. As a FRC student that knows code, nor know calculus, I now feel that I have an understanding of PID loop to the point where I would have a decent idea of how to apply them. Thank you for this informative video.
Thank you! It means a lot to hear that my explanation was clear enough so that somebody could understand it without calculus.
__________________
2016 Competition Results (Co-captain, Driver, and Lead Programmer; Junior)
Springside-Chestnut Hill District Event - WINNER / #2 Seed, #1 Seed's First Pick / Gracious Professionalism Award
Westtown District Event - WINNER / #1 Seed / Industrial Design Award
MAR District Championship - WINNER / #1 Seed / Industrial Design Award / Dean's List Finalist Award (Me)
World Championship, Carson Subdivision - QUARTERFINALIST / #3 Seed, #2 Seed's First Pick
Indiana Robotics Invitational - FINALIST / #14 Seed, #2 Seed's Second Pick
  #8   Spotlight this post!  
Unread 10-10-2015, 20:16
jajabinx124's Avatar
jajabinx124 jajabinx124 is offline
Team 2052 Alumnus
AKA: Kshitij Wavre
no team
Team Role: College Student
 
Join Date: Apr 2014
Rookie Year: 2013
Location: Madison, WI
Posts: 541
jajabinx124 has a reputation beyond reputejajabinx124 has a reputation beyond reputejajabinx124 has a reputation beyond reputejajabinx124 has a reputation beyond reputejajabinx124 has a reputation beyond reputejajabinx124 has a reputation beyond reputejajabinx124 has a reputation beyond reputejajabinx124 has a reputation beyond reputejajabinx124 has a reputation beyond reputejajabinx124 has a reputation beyond reputejajabinx124 has a reputation beyond repute
Re: Video Explaining PID to Beginners

Nice job on the video- I agree with everyone else who has given you feedback that this helps FRC students understand PID in a general way (and without taking calc).

I understood PID in a general way as well to begin with (WPI has a good video explaining it on youtube, link here). I'm taking calculus 1 this year and things are starting to link up between what I learned generally and what we do in calc. Very interesting subject.
__________________
FRC Volunteer CSA (MRI off-season event, 2017 Lake Superior Regional, 2017 10,000 Lakes Regional) 2016 - Present
FRC 2052 KnightKrawler (Team Captain, Strategist, Scouting, Programming) 2013 - 2016

1 Division Win & Einstein Appearance
3 Division Quarter-Finalists
1 Regional Chairman's Award
5 Regional Wins, 3 Regional Finalists
3 MN State Championship Wins, 1 MN State Championship Finalist
Thanks to all our alliance partners who krawled with us: 41, 70, 225, 525, 1595, 2054, 2062, 2122, 2175, 2227, 2472, 2526, 2883, 2990, 3018, 3244, 3276, 3310, 3313, 3360, 3538, 3692, 4011, 4198, 4536, 4607, 4778, 5172, 5690
  #9   Spotlight this post!  
Unread 29-10-2015, 20:49
jgrindle's Avatar
jgrindle jgrindle is offline
Losing Sleep
AKA: John Grindle
FRC #5122 (RobOTies)
Team Role: Programmer
 
Join Date: Nov 2014
Rookie Year: 2015
Location: Old Town, ME
Posts: 34
jgrindle will become famous soon enough
Re: Video Explaining PID to Beginners

Little late, but last year around this time, I was getting into FRC programming, and one of our mentors and one of his friends were working on a gyro for our robot. At the time I had no idea what a PID loop or a derivative was, as I was only in algebra 2. They started to explain the PID loop to me, it didn't make to much sense at the time. Now that I have taken part of Calculus, along with your explanation, a PID loop makes much more sense. Knowing this, will make Calculus more fun for me, knowing how to apply it now!
Closed Thread


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 03:11.

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