Starting off, I am completely new to the Robotics scene. My school doesn’t really take it seriously, but I take a PLTW course and that teacher was very adamant that I joined the Robotics Club, and I’m glad that I did. I go to a very small public school in Indiana and we only have two other members in Robotics at the moment.
I am very interested in learning a lot more about Robotics but I don’t really know where to start. I feel like there is a big gap of knowledge in knowing how to design and build a small and simple robot than knowing how to design and build a large robot of high intricacies. I started learning the nature of Vex and such about two weeks ago. My Robotics Club teacher/mentor first had me learn about gear ratios, drive trains, transmissions, differentials, etc. before I actually started working so I wouldn’t be completely oblivious to everything going on. I’ve also been lurking the forums for a solid week, trying to get a grip on everything and I believe I have come to a basic understanding of everything talked about in the forums.(still haven’t found out how a linear puncher works or what it even is)
I really want to design and build an NbN bot, but am REALLY lost on where to start on that. I have all the supplies(no pneumatics) that I need to be able to build one, I believe, but all my Robotics fellows are interested in is tractor pull. I think tractor pull is very dull and boring and they are afraid to go away from it because they know nothing of anything else. They aren’t dedicated or passionate enough to learn about it either. I really want to build a bot that is my own design. I don’t want to be one of those people that just copies everyone else’s design either.
I guess I am just asking for:
1.) How to build up from building simple bots that don’t really have any function but drive to building highly competitive NbN bots
2.) Where do I even begin with the programming stuff? My teacher has said things about EasyC to me, but I don’t know anything about it at all
3.) Any tips in general you have for me? Things you wish you would have known when you were first starting out?
4.) I’d be thankful for any information relating to Robotics that you give to me
Thanks for the help in advance, I really need it. Maybe I’ll see some of you at Worlds next year! Haha
I will also attach images of the second robot that I’ve built. I also have a tractor pull bot that is at the school that I do not have any images of right now. Don’t expect to be impressed.
I would suggest you invest into RobotC, unless you are already an owner of an EasyC license. There are many great tutorials on youtube for robotc with vex robotics that helps with learning how to program. Below is an example video of one of @MartinMaVEXForever videos; check out his channel if you are interested in robotc programming!
Another thing I could suggest is social media. There are hundreds of teams (@3921B ) on instagram that post pictures of their robot and offer help via DM. I really wish I had used Instagram last year along side the forum since I was a new member in our robotics club. Social media can help give you ideas!
Also, I would suggest taking time into learning how to properly document your design process for next years game. Your design notebook will be essential to winning any of the 3 judging awards.
Thank you for the reply, I’ll try it out. I have a couple questions.
1.) Why do you have the gears in the top of your third pictures like compressed down by a spacer?
2.) What is motor looking thing that’s black?
Hey, welcome to the VEX program! I’ll be splitting my post into separate posts for each one of your bullet points.
1.) In every game that VEX creates, there are a number of subsystems that you’ll need to build in order to effectively play the game.
a game specific object manipulator
(in some years) a lifting mechanism(scissor lifts, reverse double four bars, etc.)
Before you even begin building however, I recommend that you sit down with your team and brainstorm what you guys believe will be effective for that year’s game. Think of: ways to efficiently manipulate the game objects, what you wish to emphasize with your drive(speed and maneuverability, solid defense, etc.), and what strategies you’ll try to employ with your general idea of a robot. Make sure to record this design process in your engineering notebook for the judges at any tournaments you wish to compete at.
When you’ve finished your brainstorm, split your team up and assign everyone a different subsystem to work on: someone on the drive, someone on the manipulator, etc. Try to communicate with each other so that the mechanisms that everyone makes is compatible with the other subsystems and can be easily attached to the finished robot. If you prefer to have everyone working together on the same subsystem, start with the drive-train like @DanielIW26 suggested. A stable drive base is integral to every good robot.
For NBN specifically, you’ll need to work on a ball launcher. As you’ve already seen, there are a few designs that have proven to be pretty effective. There are catapults, flywheels, linear punchers, etc. and from all over the world too. If you’ve got an original idea, think of how you can put it into practice using VEX products you have. Remember, they don’t always have to be used for their original function.
Also, don’t be afraid to take inspiration from other teams! Tournaments are a great place to pick up pointers from more experienced teams and a great way to figure out how to make your robot more effective. If you don’t plan on attending more tournaments, the forum is also a great resource. There are lots of friendly users who are willing to help out new teams/clubs through their first season.
In your picture it looks like you have a 35 hole long C-Channel (the longest 17.5" C-Channel), another thing to keep in mind is that vex has a size limit for your robot, it must be inside 18"x18"x18" during a match, so just for good habit (you will most likely not compete in a competition this year). Though if there is a competition on your area I would suggest you going to watch it. Also, on programming, as a programmer myself I would recommend RobotC, it has many more functionalities in it and has great tutorials. Look in at our teams YouTube account (link bellow in signature) to see more pictures and videos of robots.
2.) Programming! Ah, my favorite/most hated part of robotics!
Let’s start by choosing what programming platform you should be using. I’ll mainly be talking about EasyC and RobotC here both of which require the purchase of a license. There are free programming platforms out there but they are may be a little harder to get into without prior experience. These platforms include PROS and ConVEX.
If you’re coming into programming with little to no knowledge of the logic used in C, I’d recommend starting with EasyC. When I first started programming, I found that EasyC’s graphical interface was pretty easy to learn and beneficial in helping me structure my initial programs. It is completely drag and drop however and may limit you when you attempt to create more complex programs.
RobotC is what I currently use and what I am more comfortable with. RobotC is mainly used as a text based platform but also comes with a graphical alternative if you so desire. It may be more economically feasible for you to start off with buying a RobotC license and using the graphical interface to learn C programming and then moving to the text based version. RobotC is very useful for creating more complex programs like velocity control and position tracking since it’s text based nature doesn’t really limit how you structure your program. It offers easy to use multi-tasking, build in PID control, and a number of sample programs to get you started. It also gives you access to a live debugger which can be useful when you wish to tune certain variables in your program.
As for the hardware that you’ll need for your programming, you’ll need to obtain either a USB A-to-A Programming Cable or a Wireless Serial Cable. The wireless cable also requires the use of a joystick and 2 vexnet keys. Remember that in order to use the keys you’ll have to pair the joystick and microcontroller beforehand.
After you get the basics of programming down(which you can learn by watching tutorials on Youtube and the like), I’d recommend looking into PID control. It may appear pretty daunting at first but is definitely worth the trouble. It has been useful in position tracking in previous years and for velocity control in Nothing But Net. Here’s a guide that I found very useful when learning it. Give it a look through when you feel well acquainted with the basics:
I learned on EasyC, but in under a year was past the point where EasyC was, well, easier than RobotC. That’s just me, and I had an excellent “teacher” (by that, I mean a teammate who taught me a lot about C) for RobotC. However, I think EasyC also helped, since the hardest part of programming is the logic. EasyC lets you deal with logic without worrying about syntax and commands, so it’s an excellent segue into programming.
As for copying other designs, don’t be afraid to say, “Hey, I like that mechanism, it works pretty well. Let’s try it!” Maybe don’t do that to an entire robot, but bits from separate robots are fine. My team does that sometimes, and we are not a rookie team. That’s the whole point of reveals here, people sharing ideas, borrowing them, and improving them. That’s perfectly acceptable, and in fact highly recommended.