Go to Post Enlighten a man who sometimes has difficulty understanding why others stray outside the box, when the box appears to be an optimized and elegant solution. - JVN [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 30-07-2015, 12:15
newbieQs newbieQs is offline
Registered User
no team
 
Join Date: Jul 2015
Location: Connecticut
Posts: 1
newbieQs is an unknown quantity at this point
What software program/language is best for roboRio?

I've been out of the game for some time but interested in helping my community start a team. One of the first aspects I was looking to brush myself up on was the "brain," for the robot. I noticed here on this link https://wpilib.screenstepslive.com/s...onent-overview that LabView was suggested. It has been awhile since I have used this program and I was about to delve into tutorials and videos for it but wanted to know what the community would suggest is the "best," program or language to utilize.

Thanks
  #2   Spotlight this post!  
Unread 30-07-2015, 12:26
Thad House Thad House is online now
Volunteer, WPILib Contributor
no team (Waiting for 2021)
Team Role: Mentor
 
Join Date: Feb 2011
Rookie Year: 2010
Location: Thousand Oaks, California
Posts: 1,096
Thad House has a reputation beyond reputeThad House has a reputation beyond reputeThad House has a reputation beyond reputeThad House has a reputation beyond reputeThad House has a reputation beyond reputeThad House has a reputation beyond reputeThad House has a reputation beyond reputeThad House has a reputation beyond reputeThad House has a reputation beyond reputeThad House has a reputation beyond reputeThad House has a reputation beyond repute
Re: What software program/language is best for roboRio?

Quote:
Originally Posted by newbieQs View Post
I've been out of the game for some time but interested in helping my community start a team. One of the first aspects I was looking to brush myself up on was the "brain," for the robot. I noticed here on this link https://wpilib.screenstepslive.com/s...onent-overview that LabView was suggested. It has been awhile since I have used this program and I was about to delve into tutorials and videos for it but wanted to know what the community would suggest is the "best," program or language to utilize.

Thanks
FIRST considers LabVIEW the best because it is the language officially supported by NI, who makes the RoboRIO. Many teams use LabVIEW, and at most events you will find many teams that know it and can help you.

If you don't have a lot of programming experience, either with the students or the mentors, I would recommend it as well. Teaching LV is fairly easy, and its easy to get a robot up and going.

A lot of the more advanced teams use either C++ or Java because it does allow for easier multi user development, code reviews, and they run faster then LabVIEW (Although with the RoboRIO this is much less of a problem then it used to be). However, if you are just starting, I would recommend LabVIEW just because of the support you will be able to get.
__________________
All statements made are my own and not the feelings of any of my affiliated teams.
Teams 1510 and 2898 - Student 2010-2012
Team 4488 - Mentor 2013-2016
Co-developer of RobotDotNet, a .NET port of the WPILib.
  #3   Spotlight this post!  
Unread 30-07-2015, 12:33
Ari423's Avatar
Ari423 Ari423 is offline
LabVIEW aficionado and robot addict
AKA: The guy with the yellow hat
FRC #5987 (Galaxia)
Team Role: Mentor
 
Join Date: Mar 2015
Rookie Year: 2012
Location: Haifa, Israel
Posts: 602
Ari423 has much to be proud ofAri423 has much to be proud ofAri423 has much to be proud ofAri423 has much to be proud ofAri423 has much to be proud ofAri423 has much to be proud ofAri423 has much to be proud ofAri423 has much to be proud ofAri423 has much to be proud of
Re: What software program/language is best for roboRio?

My team has always used LabVIEW and is very happy with it. I also know how to program in Java (not robot programming, but still) but I actually prefer using LabVIEW.

If you learned to program with a traditional text-based language, the transition to block-based may be difficult and you may consider Java or C++ (or one of the other options). If you don't have much programming experience, LabVIEW is great for both beginners and experts, and it isn't very hard to learn.

Some people complain that there isn't much support for it at regional events, as many teams are switching over to Java or C++, but this has never been a problem for me in my 3rd year as head programmer.

All things considered, once you are proficient in any language the limiting factor is the programmer, not the langage.
__________________
2017-present: Mentor FRC 5987
2017-present: CSA for FIRST in Israel
2012-2016: Member FRC 423
2013: Programmer
2014: Head Programmer, Wiring
2015: Head Programmer, Wiring
2016: Captain, Head Programmer, Wiring, Manipulator, Chassis, CAD, Business, Outreach (basically everything)


  #4   Spotlight this post!  
Unread 30-07-2015, 12:57
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: What software program/language is best for roboRio?

I personally prefer Java over LabVIEW. I have been on 2 teams that recently switched between the two (one team from Java to LabVIEW, one team from LabVIEW to Java), and the students on both overwhelmingly prefered Java.

In general, there are more teams that use LabVIEW. But from what I have seen, New England has a ton of Java teams, especially among the top teams that you would usually go to for assistance. There is also support at a lot of local events from the crew at WPI that codes the FRC Java/C++ libraries.

The biggest downside is that the initial hurdle of teaching students the basics of Java is a lot tougher than teaching LabVIEW. But once they know the syntax, it is fairly easy to write FRC code (if you are concerned about difficulty, just use RobotBuilder).

I would heavily caution against using LabVIEW if your team has a lot of students with prior coding experience. I don't think I have ever seen someone enjoy going from a text-based object-oriented language to LabVIEW.

Also, C++ is very similar to Java, especially in the context of FRC. Most of what I said above applies to it aswell.
  #5   Spotlight this post!  
Unread 30-07-2015, 13:01
SoftwareBug2.0's Avatar
SoftwareBug2.0 SoftwareBug2.0 is offline
Registered User
AKA: Eric
FRC #1425 (Error Code Xero)
Team Role: Mentor
 
Join Date: Aug 2004
Rookie Year: 2004
Location: Tigard, Oregon
Posts: 486
SoftwareBug2.0 has a brilliant futureSoftwareBug2.0 has a brilliant futureSoftwareBug2.0 has a brilliant futureSoftwareBug2.0 has a brilliant futureSoftwareBug2.0 has a brilliant futureSoftwareBug2.0 has a brilliant futureSoftwareBug2.0 has a brilliant futureSoftwareBug2.0 has a brilliant futureSoftwareBug2.0 has a brilliant futureSoftwareBug2.0 has a brilliant futureSoftwareBug2.0 has a brilliant future
Re: What software program/language is best for roboRio?

Do you have any students or mentors who already know some programming language or would be willing to start learning one before the season starts? If not then you probably want LabVIEW.

Do you have any students or mentors who already know or would be willing to start learning before the season starts C or C++ or assembly or some other language with manual memory management? If so then C++ is an option for you.

If you answered yes to the first question and no to the second question you probably want Java.
  #6   Spotlight this post!  
Unread 30-07-2015, 13:07
Oblarg Oblarg is online now
Registered User
AKA: Eli Barnett
FRC #0449 (The Blair Robot Project)
Team Role: Mentor
 
Join Date: Mar 2009
Rookie Year: 2008
Location: Philadelphia, PA
Posts: 1,092
Oblarg has a reputation beyond reputeOblarg has a reputation beyond reputeOblarg has a reputation beyond reputeOblarg has a reputation beyond reputeOblarg has a reputation beyond reputeOblarg has a reputation beyond reputeOblarg has a reputation beyond reputeOblarg has a reputation beyond reputeOblarg has a reputation beyond reputeOblarg has a reputation beyond reputeOblarg has a reputation beyond repute
Re: What software program/language is best for roboRio?

I would recommend sticking to a "traditional" text-based language (i.e. C++ or Java) simply because I believe the skills learned are much more easily transferable to other contexts.

Having used the WPI "command based" Java framework for the first time last year, I can safely say that it is reasonably well-documented and very intuitive.
__________________
"Mmmmm, chain grease and aluminum shavings..."
"The breakfast of champions!"

Member, FRC Team 449: 2007-2010
Drive Mechanics Lead, FRC Team 449: 2009-2010
Alumnus/Technical Mentor, FRC Team 449: 2010-Present
Lead Technical Mentor, FRC Team 4464: 2012-2015
Technical Mentor, FRC Team 5830: 2015-2016
  #7   Spotlight this post!  
Unread 30-07-2015, 13:17
page2067's Avatar
page2067 page2067 is offline
Registered User
AKA: rick page
FRC #2067 (Apple Pi)
Team Role: Mentor
 
Join Date: Oct 2008
Rookie Year: 2008
Location: Guilford CT
Posts: 110
page2067 has a spectacular aura aboutpage2067 has a spectacular aura aboutpage2067 has a spectacular aura about
Re: What software program/language is best for roboRio?

We have been using Labview since we started. We like the support and have not found it to be at all limiting in what we can do - I think the most common advice is to go with a language that your programming mentor knows best. We know of CT teams that perform well in LV, Java or C++.

Since I see you are in CT - can I ask what commnuity? The Connecticut teams have become increasingly close and have a common interest in helping all of the teams improve their performance level. There are many here that will like to help a new team - feel free to PM if we can be of help with some kitparts, training or other.
  #8   Spotlight this post!  
Unread 30-07-2015, 13:32
connor.worley's Avatar
connor.worley connor.worley is offline
Registered User
FRC #0973 (Greybots)
Team Role: Mentor
 
Join Date: Mar 2011
Rookie Year: 2010
Location: Berkeley/San Diego
Posts: 601
connor.worley has a reputation beyond reputeconnor.worley has a reputation beyond reputeconnor.worley has a reputation beyond reputeconnor.worley has a reputation beyond reputeconnor.worley has a reputation beyond reputeconnor.worley has a reputation beyond reputeconnor.worley has a reputation beyond reputeconnor.worley has a reputation beyond reputeconnor.worley has a reputation beyond reputeconnor.worley has a reputation beyond reputeconnor.worley has a reputation beyond repute
Re: What software program/language is best for roboRio?

LabVIEW - easy to learn, lots of knowledge within FRC, has a niche in automotive / manufacturing industries
Java - easy to learn, works well for AP Computer Science students, very popular in general
C++ - harder to learn, best performance, fairly popular in general, translates well to other robotics applications (microcontrollers)
__________________
Team 973 (2016-???)
Team 5499 (2015-2016)
Team 254 (2014-2015)

Team 1538 (2011-2014)
2014 Driver (25W 17L 1T)
日本語でOK

Last edited by connor.worley : 30-07-2015 at 13:36.
  #9   Spotlight this post!  
Unread 30-07-2015, 13:32
Katie_UPS's Avatar
Katie_UPS Katie_UPS is offline
Registered User
AKA: Katie Widen
no team
Team Role: Engineer
 
Join Date: Feb 2008
Rookie Year: 2008
Location: Wisconsinite lost in Texas
Posts: 957
Katie_UPS has a reputation beyond reputeKatie_UPS has a reputation beyond reputeKatie_UPS has a reputation beyond reputeKatie_UPS has a reputation beyond reputeKatie_UPS has a reputation beyond reputeKatie_UPS has a reputation beyond reputeKatie_UPS has a reputation beyond reputeKatie_UPS has a reputation beyond reputeKatie_UPS has a reputation beyond reputeKatie_UPS has a reputation beyond reputeKatie_UPS has a reputation beyond repute
Re: What software program/language is best for roboRio?

It depends on your team and resources. The difference in speed between C++/java/Labview is going to go unnoticed, because even slow computers are fast.

If your students have programming courses offered that use c++ or Java, then go with that. If you have a mentor (or multiple) that are proficient in one of the languages, then use that one.

If you're starting at ground 0, look at your goals for the team and use that to guide you. If you want your students to get "real world" programming experience, C++ and Java (and other text based languages) are far more common in industry. Learning C++ in high school, I've been told, "is like drinking from a fire hose," but its also one of the harder languages to learn, so its a cool skill for high schooler to have. Java is considered more accessible for a text-based language, is commonly taught in high schools (AP and IB Comp Sci use it), and is one of the first languages students learn in college if they take a computer major (Computer Science, Computer Eng, Software Eng).

I can't really speak for Labview, as I've had minimal experience with it. Its barrier of entry is probably lower and students still learn skills necessary to "think like a programmer."
  #10   Spotlight this post!  
Unread 30-07-2015, 13:38
Ari423's Avatar
Ari423 Ari423 is offline
LabVIEW aficionado and robot addict
AKA: The guy with the yellow hat
FRC #5987 (Galaxia)
Team Role: Mentor
 
Join Date: Mar 2015
Rookie Year: 2012
Location: Haifa, Israel
Posts: 602
Ari423 has much to be proud ofAri423 has much to be proud ofAri423 has much to be proud ofAri423 has much to be proud ofAri423 has much to be proud ofAri423 has much to be proud ofAri423 has much to be proud ofAri423 has much to be proud ofAri423 has much to be proud of
Re: What software program/language is best for roboRio?

Quote:
Originally Posted by page2067 View Post
I think the most common advice is to go with a language that your programming mentor knows best. We know of CT teams that perform well in LV, Java or C++.
^^^^^^
I second this. The programmer knowing what he (or she) is doing is much more important than what language they use.

I would recommend standardizing the team to use one language (even if different students have experience with different languages) because otherwise you will need to re-image the RoboRIO every time you want to change languages.
__________________
2017-present: Mentor FRC 5987
2017-present: CSA for FIRST in Israel
2012-2016: Member FRC 423
2013: Programmer
2014: Head Programmer, Wiring
2015: Head Programmer, Wiring
2016: Captain, Head Programmer, Wiring, Manipulator, Chassis, CAD, Business, Outreach (basically everything)


  #11   Spotlight this post!  
Unread 30-07-2015, 13:45
Monochron's Avatar
Monochron Monochron is offline
Engineering Mentor
AKA: Brian O'Sullivan
FRC #4561 (TerrorBytes)
Team Role: Engineer
 
Join Date: Feb 2007
Rookie Year: 2002
Location: Research Triangle Park, NC
Posts: 905
Monochron has a reputation beyond reputeMonochron has a reputation beyond reputeMonochron has a reputation beyond reputeMonochron has a reputation beyond reputeMonochron has a reputation beyond reputeMonochron has a reputation beyond reputeMonochron has a reputation beyond reputeMonochron has a reputation beyond reputeMonochron has a reputation beyond reputeMonochron has a reputation beyond reputeMonochron has a reputation beyond repute
Re: What software program/language is best for roboRio?

I think asking yourself two questions will solve this for you.

Q's:
  1. What programming skills do your students or mentors already have.
  2. What are you priorities for the team going to be?

A's:
  1. If you have students or mentors who are familiar or proficient in one of the languages I recommend going with that language (unless it interferes with question 2). If you do not have any students or mentors with experience, then I would recommend LabView (unless it interferes with question 2). The breadth of support and slightly easier learning curve of LabView make it a great starting point to quickly build a successful robot. Also, LabView is used often in industry, especially in robotics. While your students won't really be familiar with a written language, knowing LabView is still a valuable skill.
  2. If your top priority is building strong computer scientists then one of the written languages will likely give them a broader set of skills (imo). The concepts learned in C++ or Java are applicable to many sets of written programming languages. If your top priority is building a competetive team quickly then LabView may be better due to it's somewhat easier learning curve and the breadth of support that you can find. If your top priority is building the most sophisticated robot you possibly can then I think one of the written languages is going to be more useful (check and see what other top teams are using).

Last edited by Monochron : 30-07-2015 at 13:49.
  #12   Spotlight this post!  
Unread 30-07-2015, 13:58
Knufire Knufire is offline
Rose-Hulman Institute of Technology
no team
Team Role: College Student
 
Join Date: Sep 2009
Rookie Year: 2010
Location: Terre Haute, IN
Posts: 740
Knufire has a reputation beyond reputeKnufire has a reputation beyond reputeKnufire has a reputation beyond reputeKnufire has a reputation beyond reputeKnufire has a reputation beyond reputeKnufire has a reputation beyond reputeKnufire has a reputation beyond reputeKnufire has a reputation beyond reputeKnufire has a reputation beyond reputeKnufire has a reputation beyond reputeKnufire has a reputation beyond repute
Re: What software program/language is best for roboRio?

Quote:
Originally Posted by Monochron View Post
If your top priority is building the most sophisticated robot you possibly can then I think one of the written languages is going to be more useful (check and see what other top teams are using).[/list]
I don't have any data, but from what I see the top teams tend towards Java, then C++, then Labview. There are "top teams" proficient in each of those languages however; it really comes down to what the students and mentors are most familiar with.
__________________
Team 469: 2010 - 2013
Team 5188: 2014 - 2016
NAR (VEX U): 2014 - Present
  #13   Spotlight this post!  
Unread 30-07-2015, 14:04
thatprogrammer's Avatar
thatprogrammer thatprogrammer is offline
Registered User
AKA: Ahad Bawany
no team (None)
Team Role: Programmer
 
Join Date: Apr 2014
Rookie Year: 2014
Location: Florida
Posts: 609
thatprogrammer has a reputation beyond reputethatprogrammer has a reputation beyond reputethatprogrammer has a reputation beyond reputethatprogrammer has a reputation beyond reputethatprogrammer has a reputation beyond reputethatprogrammer has a reputation beyond reputethatprogrammer has a reputation beyond reputethatprogrammer has a reputation beyond reputethatprogrammer has a reputation beyond reputethatprogrammer has a reputation beyond reputethatprogrammer has a reputation beyond repute
Re: What software program/language is best for roboRio?

If your mentor already knows Labview, use that. In any other case I would recommend java. Learning Java will teach kids how a text language works, which should allow them to learn many other languages without difficulty. Also: They should be able to view many of the top team's code and learn from it. (254, 1114, and 971 all used text languages)
  #14   Spotlight this post!  
Unread 30-07-2015, 14:28
Arhowk's Avatar
Arhowk Arhowk is offline
FiM CSA
AKA: Jake Niman
FRC #1684 (The Chimeras) (5460 Mentor)
 
Join Date: Jan 2013
Rookie Year: 2013
Location: Lapeer
Posts: 542
Arhowk is a splendid one to beholdArhowk is a splendid one to beholdArhowk is a splendid one to beholdArhowk is a splendid one to beholdArhowk is a splendid one to beholdArhowk is a splendid one to behold
Re: What software program/language is best for roboRio?

A lot of teams are starting to move to interpreted languages (Python, JavaScript, etc) because the new roboRIO has the processing power to handle them. Interpreted languages have numerous benefits, such as no deploy time and the ability to grab code from the roboRIO. If you have a mentor that is able to handle the nuance of doing such than I'd recommend it.

However, if you have no one able to handle an interpreted language than I'd stay with Java or LabView since you will be able to receive support from your friendly neighborhood CSA.
__________________
FRC Team 1684 - Head Programmer (2013-2016)
FRC Team 5460 - Programming Mentor (2015-2016)

FIRST in Michigan - Technical Crew (2015-continuing)
  #15   Spotlight this post!  
Unread 30-07-2015, 15:12
Larry Lewis's Avatar
Larry Lewis Larry Lewis is offline
The Spiky Hair Guy
FRC #1511 (Rolling Thunder)
Team Role: Leadership
 
Join Date: Apr 2005
Rookie Year: 2005
Location: Rochester, New York
Posts: 109
Larry Lewis is a name known to allLarry Lewis is a name known to allLarry Lewis is a name known to allLarry Lewis is a name known to allLarry Lewis is a name known to allLarry Lewis is a name known to all
Re: What software program/language is best for roboRio?

Another possible approach is to give the students the opportunity to use more than one language if you have the mentor and/or experienced students to support that.

For example you could use C++ or Java for the robot and LabVIEW for the operator controls. That way students get exposure to more than one language so they can determine what they are most proficient in.
__________________
Larry Lewis
FIRST Team 1511 - Rolling Thunder
Team Leader
2013 - Present: Systems Engineer - Viewpoint Systems
2004 - 2013: Lead Test Engineer - Harris RF Communications
www.penfieldrobotics.com
Certified LabVIEW Architect
"I haven't failed, I've found 10,000 ways that don't work" ~Thomas Alva Edison
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 15:18.

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