![]() |
Re: Programming goofs!
Another one of those "d'oh" moments instead of a "goof":
This season we used the line sensors for autonomous. During the build season - our mock practice field required us to have the robot move some extra distance after stopping at the "T"/cross made by the tape to effectively and consistently score. When we got to competition, it seemed that the robot was too far from the wall, so we simply added to the amount of feet to try to get it to work. When we finally got time to go to the practice field, however, we realized that the robot was actually bouncing off of the plate at the bottom of the scoring pegs and being pushed too far back. We didn't figure this out till right before eliminations - and we did not have any successful autonomous runs in qualifiers or practice. But once we took out a simple "feed power to the motors for 500 milliseconds" in the code, our autonomous worked every single time. |
Re: Programming goofs!
I guess I have a couple of moments to share. Both were pure awesome, both were goofs, and both differ in the amount of awesome of failure/win that ensued afterwords.
I'm sure I've mentioned this before, but for Breakaway, I attempted to urge our programming to just program a go forward autonomous code. This way, we could at least score in the near zone. The programmer did just that, and we ran out onto the field with untested code. The match starts, and the robot proceeds to drive backwards over both bumps and we manage to rip the bumpers off one of our alliance partners. The amount of failure was amazing. Another goof was more recent, we had this bug in the autonomous where sometimes, our lift does not initialize (Our lift leans back, and we use two pneumatic cylinders to lift it straight up). In one such match, this just so happened to be one of the few before eliminations, this our cylinders didn't fire. The drive team and I watched as our chances of seeding high went through the floor because the tower pistons failed to fire. But to our surprise, the tower pistons fired at the beginning of teleop. It wasn't until later that I found out that one of our programmers had gone in and programmed a safety at the beginning of teleop. I was so proud of that programmer for being one step ahead. I equate that to giving Murphy's Law the finger. Anyways, just a couple of goofs that have a space in my memory. - Sunny |
Re: Programming goofs!
While it could be a mechanical or a programming goof, it was about 4 weeks into the build season when we were testing our arm. As a safety precaution we had put limit switches on the robot to make sure nothing went wrong. Everything was going great till one day the arm started not stopping at the limit switches, luckily i was manually controlling the arm or it would have been bad. As it turned out one of our mentors switched out a limit switch for some reason. After testing about 5 or 6 different limit switches and spending quite a bit of time rewriting our code i turned to the mentor and asked if the switch was normally open or normally closed. As it turns out when they switched them out they switched to normally open. So it was about 2 hours of troubleshooting to find the little thing that was killing us.
|
Re: Programming goofs!
after we fried almost all of our electronics on thursday at the k.c. regional. we did not check the line sensors, come to find our they were bad, which caused autonomous to go to an "impossible situation" that stopped the wheels. we ran a few matches before realizing this... then when we found that to be the problem, we took them off to get the new ones re-wired. so my un-calibrated gyro code seemed like the quickest way that might yield some results in points... in autonomous the robot drove in an elegant arc with our arm in the high position, pushing both alliance partners to the side (who fortunately couldn't hang anyways, just drive forwards) with our arm hanging over them. the whole time the "drivetrain" driver was excusing our robot and code to the other teams. we still won the match thankfully. we got the sensors back on before our next match, and our code was 100% all the way through finals. the way hanging code was written literally threw the tube onto the rack. it was so nerve racking that it was not requested, but ordered to drive further to make it less stressful. i finally saw video of it after the change and it still was pretty intense.
our biggest goof for the programming team in general was hooking up the battery cables backwards when rewiring the robot after finding the cause of the ground to the frame. we fried all our jaguars, a side-car, a c-rio card, and maybe a power distribution. |
Re: Programming goofs!
We got to regionals and were ready to drive our robot. We discovered that the wires coming from the motor controllers were backwards, so we would have to drive in reverse(we only had a base, the rest was deemed illegal through incorrect materials.). We got the wiring fixed, only to discover that a right turn required moving the joystick to the left. I was confused because forward and backward worked normally. I fixed it by inverting the joystick input. It was not until after the competition that I discovered I put the signal wires into the wrong outputs from the sidecar.
|
Re: Programming goofs!
Well, I have one goof that was rooted in the programming, but was never actually my (the programmer's) fault. Our Autonomus code entailed the robot raising it's arm up to a set position and when it is done, the robot would move forward. The arm was controlled by a PID with pots for reference. I feared that the timed sequence which i kept the PID alive was too short, but I was assured that the times were appropriate. Sure enough, I was right.
1st match of the NYC regional that we were in, we watched the arm go up, keep going, snap all the pots, break the pins, and eventually flop over lifelessly. It was a sad time, but after a whole day of repairs, it was all happy again. |
Re: Programming goofs!
Wow, thats a crazy mistake. I'm glad you shared that with us because now other groups won't make the same mistake that you did a few years ago. People are probably gonna thank you. However, that was a very silly mistake! Well, people learn from mistakes.
|
Re: Programming goofs!
This year, during an autonomous code test for the line trackers, the robot was following the line as it was supposed to. However, once it got to the split in the duct tape, it sat there, seemingly thinking. then it drove forward, full force, smacking my friend in the back of the legs and ramming both him and itself into a table
Turns out instead of doing Code:
driver.tankDrive(1,-1)Code:
driver.tankDrive(1,1) |
Re: Programming goofs!
This year, my autonomous code was very buggy. In the first match of the day, we were up, and I got to test my code for the first time. Turns out I had inverted the the Y axis, and the robot crosses the center line and gets a penalty. While that was a simple fix, the code was unreliable the rest of the competition. It is supposed to drive foward while lifting the arm, then move the arm down, release the tube, move the lift down, and back up. However, sometimes the lift would never rise, sometimes it would go up and down before the robot had finished moving forward, and sometimes it would only lift after it had released the tube. We managed to score once on both the bottom and middle pegs, and never had it go to the top pegs like it was supposed too. I ended up removing the code for quarterfinals, as the risk of damaging the claw or getting a penalty was too high.
|
Re: Programming goofs!
Just this past weekend at the GVSU Regional, I was programming our autonomous, with each round as a trial. Unfortunately, I had missed the first round of my trial because I was helping another team with their driver station. Everyone told me that it basically didn't move, the arm went up and very slow. What they left out was that it went backwards. So, being the troubleshooter I tend to be, I just upped the speed and duration.
Unfortunately, that sent our robot all the way across the field, giving us a penalty. I don't have any video for you, but if you were there, it stood out quite well... I felt horrible. But, in the end, our auton got us a place on the first seed alliance! Thanks 67 and 2054! |
Re: Programming goofs!
Well at the Florida Regional this year....(2011) Well, we never tested our autonomous and I was a little shaky about letting the robot go out without Auto. tested. So the match starts, we drop the tube and the robot starts going backwards and smashes into another robot! Of course we got a red card but I was in the stands hiding my face trying not to laugh. Im glad it worked but in the wrong way!!
Epic Fail on my part. |
Re: Programming goofs!
Quote:
|
Re: Programming goofs!
In 2006, Cyber Blue 234 had a robot where the autonomous went straight toward the upper goal and would shoot the puff balls into it. Well at one point in a single match, the robot decided it wanted to sit still for the first 3 seconds of the match and not move. In that time, a robot from the opposing alliance came careening by and would have drilled our robot at full speed had we moved like we planned it. However, the robot didnt get hit and instead, moved right after the rocket bot missed us and continued autonomous as planned. We, the people in the stands, thought it was one of the best pieces of programming we'd ever seen. We were later notified that the programmers were just as stunned as us and didn't program it to do that. Long story short, we never found what glitched on the robot's programming, and we were still able to hit goals in that match. It also worked properly after that. Very cool :D
|
Re: Programming goofs!
Wow, reading these posts really makes me feel conservative. If an autonomous mode has not been tested (in some form), we won't run it.
Our list of programming goofs over the past few years is long and depressing:) This year seems to be the year of the fat finger. Tuning autonomous on the practice field in Milwaukee, the robot was suppose to drive x inches, lift the elevator, drive last y inches, score, backup, drop elevator, sit idle. Our coach was standing near the rack chatting with another team member while we were tuning. Lets assume x = 120 inches and (should have been ) y = 36 inches. Let's get those slender fingers out and change y = ~3776 inches. Things are looking good, robot stops just short of the rack, lifter goes up properly, SLAM full steam ahead into our coach with the elevator ~15 feet in the air. Luckily our coach has the reflexes of a cat and somehow catches the robot and saves the day. Coach: +1 Controls team: 0 Actually now that I think of it .... During one of the qualification matches in Milwaukee, (after several previous successful autonomous attempts) the robot decided to spin ~270 degrees with the lifter at full height and careen toward the announcer. Robot hits the wall, nearly going over. I watch from the stands as the controls team members slouch further down into their seats. I was sure that the drive team/coach was going to hit the E-Stop. We end up running great in Teleop and won the match. Coach: +2 Controls team: still 0 End up getting picked and didn't have time to debug the above problem. Never ran autonomous in elimination rounds which was a big downer. Since then we found out that the breakout card on the analog module had went bad causing the gyro to very quickly count up instead of showing a constant angle. I'll stop there ... enjoy! |
Re: Programming goofs!
This year, while I was working on the tele-op code with my fellow programmers, we were testing the arm on our robot and the arm swung around past its limits, making itself jammed into the gearbox. Luckily, it only broke the fan cooling the motor, so people weren't that mad at me.
Then there was another time when we were testing the tele-op code and I drove the bot into the table we were sitting at. I was using the wrong controller, but hey, you really do learn from your mistakes. |
| All times are GMT -5. The time now is 15:19. |
Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi