Go to Post While youth is wasted on the young, in FRC knowledge can be wasted on those a bit older. - IKE [more]
Home
Go Back   Chief Delphi > Technical > Programming > Java
CD-Media   CD-Spy  
portal register members calendar search Today's Posts Mark Forums Read FAQ rules

 
Reply
Thread Tools Rate Thread Display Modes
  #1   Spotlight this post!  
Unread 26-07-2014, 01:20
MatthewC529 MatthewC529 is offline
Lcom/mattc/halp;
AKA: Matthew
FRC #1554 (Oceanside Sailors)
Team Role: Mentor
 
Join Date: Feb 2014
Rookie Year: 2013
Location: New York
Posts: 39
MatthewC529 is on a distinguished road
Building a Library of Common Utilities

So the time has come for me to consider building a library. I was finally set free from a recent project and finally able to turn my eyes towards implementing a feature set in Java 7 for Robotics Programming.

Now I have an idea of what I want to do, and I want to Open Source it (I know it's required, but I really want to anyway) and leave it open to modification but I would like some input as to what teams view as key features. I usually use IterativeBot so that's where my mind goes but I want to make it flexible, applicable to CommandBased and even Simple as well. What do you, as a programmer or engineer or mentor think needs to be in a set of utilities for future programmers on a given team.

I am basically looking for ideas on what features to implement in a library to be used in conjunction with WPILib. I know WPILib already has soooo many features, but is there anything you wished it had, or that you see yourself using often and have already made it a small utility?

Thanks for any responses!
__________________
Team 1554 -- Oceanside Sailors
  • 2013-2014 - Lead/Sole Programmer
  • 2014-2015 - Lead Programmer, President
  • 2015-? - Team 1554 Mentor
Independent Public Projects

Developer at Legend Zero LLC.
Java/C++ Programmer
Reply With Quote
  #2   Spotlight this post!  
Unread 26-07-2014, 13:03
cgmv123's Avatar
cgmv123 cgmv123 is offline
FRC RI/FLL Field Manager
AKA: Max Vrany
FRC #1306 (BadgerBOTS)
Team Role: College Student
 
Join Date: Jan 2011
Rookie Year: 2011
Location: Madison, WI
Posts: 2,085
cgmv123 has a reputation beyond reputecgmv123 has a reputation beyond reputecgmv123 has a reputation beyond reputecgmv123 has a reputation beyond reputecgmv123 has a reputation beyond reputecgmv123 has a reputation beyond reputecgmv123 has a reputation beyond reputecgmv123 has a reputation beyond reputecgmv123 has a reputation beyond reputecgmv123 has a reputation beyond reputecgmv123 has a reputation beyond repute
Re: Building a Library of Common Utilities

https://github.com/team1306/BadgerbotsLib
__________________
BadgerBOTS Robotics|@team1306|Facebook: BadgerBOTS
2016 FIRST Championship Tesla Division | 2016 Wisconsin Regional Engineering Inspiration Award

2015 FIRST Championship Carson Division | 2015 Wisconsin Regional Chairman's Award

2013 FIRST Championship Curie Division | 2013 Wisconsin Regional Chairman's Award

2012 FIRST Championship Archimedes Division | 2012 Wisconsin Regional Engineering Inspiration Award, Woodie Flowers Finalist Award (Lead Mentor Ben Senson)

Reply With Quote
  #3   Spotlight this post!  
Unread 26-07-2014, 13:30
MatthewC529 MatthewC529 is offline
Lcom/mattc/halp;
AKA: Matthew
FRC #1554 (Oceanside Sailors)
Team Role: Mentor
 
Join Date: Feb 2014
Rookie Year: 2013
Location: New York
Posts: 39
MatthewC529 is on a distinguished road
Re: Building a Library of Common Utilities

Quote:
Originally Posted by cgmv123 View Post
Yeah I will be looking at other libs for inspiration. There are plenty online. Thanks for putting yours here though .

I am also looking for thing that people feel needs extra abstraction as well as utilities and extensions upon WPILib, basic or advanced. I have implemented some complex things and don't mind the challenge.
__________________
Team 1554 -- Oceanside Sailors
  • 2013-2014 - Lead/Sole Programmer
  • 2014-2015 - Lead Programmer, President
  • 2015-? - Team 1554 Mentor
Independent Public Projects

Developer at Legend Zero LLC.
Java/C++ Programmer
Reply With Quote
  #4   Spotlight this post!  
Unread 28-07-2014, 17:56
Pault's Avatar
Pault Pault is offline
Registered User
FRC #0246 (Overclocked)
Team Role: College Student
 
Join Date: Jan 2013
Rookie Year: 2012
Location: Boston
Posts: 618
Pault has a reputation beyond reputePault has a reputation beyond reputePault has a reputation beyond reputePault has a reputation beyond reputePault has a reputation beyond reputePault has a reputation beyond reputePault has a reputation beyond reputePault has a reputation beyond reputePault has a reputation beyond reputePault has a reputation beyond reputePault has a reputation beyond repute
Re: Building a Library of Common Utilities

How about a class that extends PIDController built specifically for drivetrains? Have instance variables for the drivetrain, left encoder, and right encoder, then do whatever method you want to turn it into PID driving (average the encoders, run each side seperately with error correction if they get out of sync, or whatever else you want to do). It takes a suprising amount of effort to do such a basic task with the current WPILIB. Even better would be if you could extend PIDSubsystem using this special controller.
Reply With Quote
  #5   Spotlight this post!  
Unread 28-07-2014, 22:36
MatthewC529 MatthewC529 is offline
Lcom/mattc/halp;
AKA: Matthew
FRC #1554 (Oceanside Sailors)
Team Role: Mentor
 
Join Date: Feb 2014
Rookie Year: 2013
Location: New York
Posts: 39
MatthewC529 is on a distinguished road
Re: Building a Library of Common Utilities

Quote:
Originally Posted by Pault View Post
How about a class that extends PIDController built specifically for drivetrains? Have instance variables for the drivetrain, left encoder, and right encoder, then do whatever method you want to turn it into PID driving (average the encoders, run each side seperately with error correction if they get out of sync, or whatever else you want to do). It takes a suprising amount of effort to do such a basic task with the current WPILIB. Even better would be if you could extend PIDSubsystem using this special controller.
That is a neat idea! I will look into it. I had seen some examples but I think it would be a good idea to implement it.

I kind of want to make this a community thing (though that may be unlikely since everyone seems to like their personal libs) but I want to make a pretty decent, maybe expansive extension of WPILib with the introduction of Java 7 in 2015.

Thanks again!
__________________
Team 1554 -- Oceanside Sailors
  • 2013-2014 - Lead/Sole Programmer
  • 2014-2015 - Lead Programmer, President
  • 2015-? - Team 1554 Mentor
Independent Public Projects

Developer at Legend Zero LLC.
Java/C++ Programmer
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 13:23.

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