We updated the comparison document to split out the Xbox One controllers. The higher resolutions they have across each axis seems to differentiate them.
How did you evaluate the feel of the controllers with resolution > 8 bit. Was it with a robot?
We hooked the controllers into this webpage http://html5gamepad.com/ to test the values.
The students test feel of accuracy by hitting certain numbers then trying to get back to the same number. Also, it depended on how easy it was to hold to a single number without any noise or jumping around in values. There is a balance between the quality of the gimbal pots and the resolution of the ADC in the controller.
Some of these tests started to see if we were even getting different numbers to the robot through the controller. We were surprised at the variation between the controller options.
Way back in 2014, freshman me loved playing GTA V and programmed our practice robot that year to drive using almost that exact setup. It was definitely good, but looking back, Iām not 100% sure whether Iād prefer that or arcade drive on an Xbox controller. Ultimately, itās the exact same, it just comes down to whether the drive prefers using the left stick or triggers for power. I can say that it felt much easier to throw the robot into high speed turns, but again, that could just be time clouding my memory.
I find it a lot easier to maintain full speed, (or the exact speed that I want), using triggers than with using one stick for everything. Triggers allow me to just hold it down all the way which guarantees full speed, and how much I want to turn is independent on the left stick.
But with a single stick arcade control, if I want to go forward and turn right at full speed, I would have to have the stick (referring to the angles in a unit circle) at exactly 45 degrees. That (IMO) require more concentration than just pushing my right pointer finger all the way down on the right trigger, and pushing my left thumb on the left stick all the way to the right.
I could not agree more with these two pieces of advice. Unfortunately, Iāve found it to be a bit of a struggle to convince people of the importance of this, though 449 seems to have (thankfully) come around over the past two years.
Another important benefit of arcade drive with mechanically-separate throttle and rotation is that it makes it far easier to use a gyro to stabilize your robot when you donāt want to be turning (as itās much easier to judge when the driver does not intend to be turning, since you can rely on the turning input being rigorously 0 at those times). By the same token, it makes it easy to detect when the driver wants to turn in place, which is also something which you often would want to handle differently than ordinary driving.
Iāll throw my opinion into the hat since everyone seems to be on the anti-tank drive.
4476 has always used tank drive, and I really donāt think we will be going anywhere else anytime soon.
Firstly itās not for everyone. Iām still a pretty firm believer in driver choice. If you are a god at driving arcade and want to drive like that, we will let them. Itās a steep learning curve to learn to drive tank, and in the end I confidently believe you get a marginal increase in performance over some of the other drive methods.
Itās not that hard to drive in a straight line with some practice and some proper teaching. The main reason why we use it is because it forces my kids to not drive linearly. Sweeping arcs and controlled movement is useful in evading defense and getting from point A to point B in the most efficient way possible. Keep moving, conserve momentum, and (almost) never stop to turn.
Teaching well helps a lot. High standards and knowing exactly what kind of movement I want, and how to get them to learn the methods. Drills are nice. Our current drivers the first time they touched the joysticks definitely couldnāt drive in a straight line. Now I would consider him top 5 in Ontario. (Shoutout to 3683ās driver with that clear 1 spot there)
We have a pretty good solution to this on our team. We have a button to drive straight and then we use the gyro to help correct.
The issue with tank drive driving straight is separate from this. This isnāt about a robot tracking straight when given a straight input - this is about how it is hard for a human to apply equal pressure to both joysticks in order for the robot to have equal input on both sides. Itās too easy to apply too much pressure to one side and too little pressure to another.
As for the above comments about tank drive - to be frank, I donāt think tank has a āhigher ceilingā. I think any drive given enough practice can be great, but there is no manuver that āonlyā a tank drive can do, and the manuvers tank drive makes easier are less common and less important than the manuvers arcade drive (2-stick) or āgtaā drive (triggers and stick) makes easier.
Lots of great drivers insist they are better at tank drive and that arcade is wrong⦠and then they drive arcade for 10 minutesā¦
Do, in refining the systems that you currently use. Do you drivers experiment with non-linear response from the sticks? There seems to be three types of changing the response.
- The sticks can be adjusted to be more responsive closer to center.
- There sensitivity can be adjusted based on speed.
- The 254 code can adjust based on instantaneous dissection of the stick movement.
Can all these systems benefit from a more adaptive response?
The idea that there is an āendā or a ceiling is absurd in and of itself. In FRC timespans (hours, and if theyāre lucky, days of driving), drivers just keep getting better.
Very true. I saw a post above that said tank drive makes turning in large sweeping motions, or large curves much easier. But imo, thats not right at all. With arcade or āgtaā drive, doing a large sweeping turn just involves pressing the trigger to the wanted forwards speed, and then pushing the turning stick left of right. How much you push it results in a large turn or a quick turn. Much like driving a car, if you want to turn quickly you turn the steering wheel all the way to the right (or push the stick all the way to the right), while pushing the gas pedal (trigger) all the way down. If you want to make a large sweeping turn you turn the steering wheel (turning stick) only half way to the right, and push the gas pedal (trigger) to the wanted forwards speed.
For a driver to figure out exactly how much both sides of the robot should be moving is much harder, and imo just not efficient at all. A driver should be able to just tell how hard he/she wants to turn, and how fast he/she wants to go (much like driving an actual car), and the bot should figure out how much power to apply to both sides.
There is a reason games like gta or forza or any racing game, separate the turning stick from the throttle (generally triggers) it is much more natural that way, you donāt tell a car how much power to apply to both sides (ignoring the fact that a car cant give different power to both sides)
HAHAHAHAHAHAHAHAHA, and more like 5 minutes
You know why heās number one? Because he doesnāt use tank drive! /s
(Itās actually because at this point he has probably been driving longer than any other drivers in Ontario. Practice makes perfect.)
This is fair, itās a lot easier to start off with basically any other driving method other than tank. For some driving styles this is fine. 100% controlled sweeping motions arenāt easier to execute with tank drive per say, but you do have a very linear, simple, and clear understanding of how your actions directly impact the driving. Why I like tank so much is you can do 30%/60% or 20%/30% or insert any percentage here. You have a very good understanding of exactly how the robot will behave, as well as control what speed you will drive at. In my mind GTA/RC/Airplane whatever you wanna call it isnāt bad at all. I just find the exact sweeping motion harder to predict since you canāt mentally like mental math it out easily, since the curve comes depending on how much you put on with your fwd/backward stick.
Itās all about your standards, and the way you drive too. I absolutely hate the drive forward -> turn -> drive forward -> turn -> Drive forward -> turn loop that people do when they could have just done an arc. Itās easy to defend against, and is slower.
This is probable. Most people that drive tank donāt drive to our standards/donāt have techniques to mitigate error, or correct over/underturns. I actually really really dislike arcade due to itās overwhelming tendency to promote what I consider as poor driving habits, and thatās really why we use tank. It forces my kids to fix these habits, or they will just be bad. That being said I would never force a driver into any control scheme. If they have a strong opinion on one method over the other and they can prove that they can execute on that one better, iām all for it. There is no ārightā control system as long as you can execute to whatever your teamās standards are.
If you wanna drive the robot using a DDR pad and wiimotes, I wonāt stop you as long as you can execute to my standards.
Thatās fair. People do have semi ceilings however where they slump until they really change something up.
It is harder, but I would argue for most people who want to drive at a level I expect it is more efficient. You still have obvious power control, power to both sides. Want to slow down? Let up on the joysticks. Speed up? Pushem up! It takes effort to learn sure, but the output is better in my experience.
Cars arenāt controlled that way, so yeah. It makes no sense that a video game would use some tank drive style control system for racing. Your example is like saying forks are useless and bad because you wouldnāt eat soup with it. There are many examples of high maneuverability vehicles that use tank drive (FRC you need high maneuverability) Tanks, lawnmowers, some construction vehicles.
Yeah you are right, pretty sure he drives GTA/RC/whatever you wanna call it. Thatās really what make sense, practice makes perfect. Top two in Ontario from what I would consider Danny (3683) and Sam (2056) they have a ton of practice, and thatās obviously a huge part of what makes a good driver.
Well, I will again refer to the car example. Sure you wonāt be able to tell how big or small the turning curve is the first time you drive a car. But once a driver drives a car for a couple of times, he/she knows by muscle memory (without having to think about it) exactly how much to turn the steering wheel depending on how hard they want to turn.
And ya, at the end of the day, it just comes down to what makes a driver good. It doesnāt matter what they use to drive, its just all about practice.
I just wish that new drivers were exposed to all sorts of driving methods before they pick what drive type they like, I know too many teams/drivers that just say āoh ya we use tank because weāve done that forever, and the previous drivers used tankā without the new drivers actually ever trying different types of drive like arcade or gta drive (and viceversa, some drivers say arcade is the best without trying tank).