Frequently Asked Questions

What kind of robots do you build?

The Robotics Club at UCF focuses exclusively on autonomous robotic platforms. In other words, we do not build remote control vehicles or Battlebots, only robots that are capable of self-navigation. We having nothing against Battlebots or remote control projects, but autonomous robots require interdisciplinary teams able to design the physical platform, integrate power systems and electronics, and program them to perform a mission. It is the best way to include as many different fields of engineering as possible. Over the years the Robotics Club at UCF has built air, ground, surface, and underwater robots for competitions sponsored by the Association for Unmanned Vehicle Systems International (AUVSI). As of the Fall Semester 2013, our focus is on surface robots for the RoboBoats (http://www.auvsifoundation.org/foundation/competitions/roboboat/) competition.

Why should I join?

The Robotics Club at UCF focuses exclusively on autonomous robotic platforms. In other words, we do not build remote control vehicles or Battlebots, only robots that are capable of self-navigation. We having nothing against Battlebots or remote control projects, but autonomous robots require interdisciplinary teams able to design the physical platform, integrate power systems and electronics, and program them to perform a mission. It is the best way to include as many different fields of engineering as possible. Over the years the Robotics Club at UCF has built air, ground, surface, and underwater robots for competitions sponsored by the Association for Unmanned Vehicle Systems International (AUVSI). As of the Fall Semester 2013, our focus is on surface robots for the RoboBoats (http://www.auvsifoundation.org/foundation/competitions/roboboat/) competition.

How do I join the club or get involved on the projects?

To participate in the club you must be a registered UCF student, attend meetings, and pay yearly or semester dues. Meeting times are posted on our main page at robotics.ucf.edu and are updated every semester.

I have class on X day when you are meeting and can't come, what do I do?

We typically have meetings 2-3 times a week, including the weekend. So there should be ample opportunities for new students to come meet the teams, learn about projects, and get involved. If you can't make one of the weekly meetings just pick another day, it is not required that you attend every meeting.

I have class until after the meeting starts, or I missed the previous meeting, can I still come to the next meeting?

As a registered student organization, the club cannot refuse entry any registered UCF student. So technically, anyone with a valid UCF ID can join, however, depending on what types of skills you wish to develop/contribute at the club (e.g. computer programming), you may want to wait until you've learned a few things on your own and in your coursework before joining. For example, we recommend the following:
Computer Programmers: You should have knowledge of C/C++/Java and basic data structures. You should be able to create a project with an IDE (e.g. Qt Creator, CodeLite, Eclipse, Visual Studio), and understand Object Oriented Programming (OOP) concepts like class inheritance, scope, access, and operator overloading
Electronics: You should have basic understanding of electrical circuits including: voltage, current, resistance. However, if you have ever experimented with hobby kits for RC planes and cars and understand the difference between power and ground terminals you will probably be Ok.
Mechanical Systems: Almost no experience is required to jump into the mechanical systems of our projects. However, if you don't know the difference between a philips and flat-head screwdriver, you may want to find a different field of study.

I have class until after the meeting starts, or I missed the previous meeting, can I still come to the next meeting?

We typically have meetings 2-3 times a week, including the weekend. So there should be ample opportunities for new students to come meet the teams, learn about projects, and get involved. If you can't make one of the weekly meetings just pick another day, it is not required that you attend every meeting.

How much time should I expect to spend working on one of the robots?

It is best if you plan to spend at least 4 hours a week working on any of the projects. Depending on your role on the team, anything less will make it difficult for you to learn what you need to know and contribute to the project. Saturday meetings are the best time to work on the projects since more team members will be at the lab actively working. In the weeks leading up to an actual competition date, after the Spring Semester, expect to spend at least 8 hours a week in the lab if not more getting ready

What kind of robots do you build?

The Robotics Club at UCF focuses exclusively on autonomous robotic platforms. In other words, we do not build remote control vehicles or Battlebots, only robots that are capable of self-navigation. We having nothing against Battlebots or remote control projects, but autonomous robots require interdisciplinary teams able to design the physical platform, integrate power systems and electronics, and program them to perform a mission. It is the best way to include as many different fields of engineering as possible. Over the years the Robotics Club at UCF has built air, ground, surface, and underwater robots for competitions sponsored by the Association for Unmanned Vehicle Systems International (AUVSI). As of the Fall Semester 2013, our focus is on surface robots for the RoboBoats (http://www.auvsifoundation.org/foundation/competitions/roboboat/) competition.

Can we work on X project? Project X is really cool!

Short answer, no. It takes a lot of resources and time to work on the currently planned projects, therefore we do not support working on unrelated efforts. Many of the projects we are involved with were carefully selected to be multidisciplinary and are also supported by our sponsors. Also, if you have never built an autonomous robot before, you probably don’t know what you are getting into yet, so trust in our project selections, as they were chosen for good reasons.

What kind of robots do you build?

Currently all software running on our robots uses the C++ programming language and GNU/Linux operating system (Ubuntu 12.04). Although we do have some projects using Java, we highly recommend you learn C++. To get started, follow these steps: The first thing you will need is a C++ compiler. Instructions can be found here: http://www.cprogramming.com/code_blocks/ A great place to get started with C++ once you have a compiler setup is using a tutorial from either http://www.cprogramming.com/tutorial/lesson1.html or http://www.cplusplus.com/doc/tutorial/. They are great websites for the C++ language, and the tutorials are designed for those without any programming experience. Practice, practice, practice practice! You wouldn't expect to learn to play an instrument without regular practice, and the same is true for programming. Just going through a tutorial by reading or duplicating the steps is not enough. You need to challenge yourself to solve problems outside of the tutorial to make sure you really learned the material. Some C++ quizes can be found at http://www.cprogramming.com/quiz/ or through web search. We want to teach you how to program a robot via topics like computer vision, path planning, network communication etc., not teach you basic programming concepts. So please learn the basics and we will show you how to apply it. If you already know C++ programming in general and want to learn more, we highly recommend you learn about OpenCV (http://opencv.org/) , as it is used throughout all of our projects.

What kind of robots do you build?

What programming language, software, tools, and libraries do you use on your projects?
C++ Programming Language
GNU/Linux - Ubuntu 12.04
Boost C++ Libraries
Open Source Computer Vision Library (OpenCV)
CMake
CMake is the main build system used on our C++ projects. It makes it easy to make big changes to our project structure and test on other operating systems (e.g. Windows)
Qt Creator
We use Qt Creator in Ubuntu using CMake project files