![]() |
Re: Programmers: I Have A Challenge For You
*sigh*
What I meant is it is always a good idea to know how the device you are programming works. I don't have a college-level education in this stuff, I only know what I can reverse-engineer. I think that the best way to learn how these robotics platforms work is to try things, read manuals, and mess up. Failure is the best teacher. I am currently teaching a couple freshmen how to hack at stuff. I had them start with a ps/2 mouse and an arduino, and they turned it into encoders for our robot. "I don't believe in shortcuts! I believe in the almighty GPL!" |
Re: Programmers: I Have A Challenge For You
Quote:
It's essential for the programmers to understand the underlying technology if you expect them to recover from failures. How can they fix a problem if they can't isolate or identify it? Autonomous is certainly not how you start programming a robot. Start with learning how the system works. What is PWM? Why is it used as a data signal? How (and why) is it used to control the speed of the motor? What is the "braking" action of a brushed DC motor? Why can't the motor run at infinitely slow speeds? What are encoders and potentiometers? How does the health of the battery affect the performance of the motor? What is an FPGA? Why is it used instead of a processor? I think the WPI library is fairly low-level, though if you wanted, you could periodically generate digital pulses with digital outputs. Having a standalone PWM-generator is also useful. We put a speaker on ours when we made it, so you can actually hear the square wave change as you adjust the duty cycle. Anyways, understanding how the components of the system work is necessary to understand how the system can fail. |
Re: Programmers: I Have A Challenge For You
I think the priority should be the Robotic perception rather than locomotion. You can have the biggest and the strongest and fastest athlete, but if he is blind, he can be beat by a regular joe with 20/20 vision in a game of football or something.
|
Re: Programmers: I Have A Challenge For You
I think that one of the biggest stumbling block for development of autonomous code is time. Programmers are usually the last folks to get their hands on the robot. While we can code things up, we must wait for the robot build process to get to a sufficiently stable point that we can grab the robot to run tests.
If the autonomous code is just a hand crafted set of instructions, then it must be tested, and refined many times to get it working properly. If the autonomous code is more of a state machine with transitions triggered by sensors, then this to must be laboriously tested. If it's an even more elaborate learning system, then the testing is even more intensive. Bottom line is that there typically just isn't the time to do the needed testing. So some times just code up something simple, others never get around to putting anything into autonomous mode. As far as the original idea of a fully autonomous robot, while I applaud the ambition, I suspect that it will be unrealistic for most, if not all, teams to be able to do that, given the empirical evidence of autonomous performance to date for most teams. |
Re: Programmers: I Have A Challenge For You
Quote:
|
Re: Programmers: I Have A Challenge For You
Quote:
|
Re: Programmers: I Have A Challenge For You
Quote:
There are two ways the TechnoKats have successfully dealt with this problem. One is to build into the schedule a set of "programming only" sessions. We did this a couple of years ago, with the programming group having absolute priority on the robot a couple of evenings a week starting in Week 3 of the build. The mechanical and electrical groups were denied permission to work on the robot during those times (though they were encouraged to be present in case something broke). This worked out great because we built a practice 'bot at the same time, so "the robot" was actually able to be used by two groups simultaneously. The other way is to finish the robot well in advance of ship date so that the programmers have plenty of time with it. This also has benefits for the drivers, giving them plenty of practice time. And probably the best thing about being done early is that there's plenty of time to break the robot. :) |
Re: Programmers: I Have A Challenge For You
Quote:
|
Re: Programmers: I Have A Challenge For You
Quote:
I agree usually the robot hardware is not ready in time to do 15 seconds of a game much less 2 minutes. |
Re: Programmers: I Have A Challenge For You
Maybe this has been already suggested I haven't read all the posts.
How about having a post championships competition, like IRI where the robots are totally autonomous. Maybe have it at IRI as one of the vents. This way there is more time to work on the robot post season. |
Re: Programmers: I Have A Challenge For You
Quote:
|
Re: Programmers: I Have A Challenge For You
I am bumping this one up cause I honestly did not want to start another thread and as the kickoff gets closer, I thought people should see this.
I found a solution to the image processing problem. http://microcontrollershop.com/produ...ucts_id=352 9 No battery: Legal 4 USB ports = Good Runs Linux (The Arm 9 Linux uses 32 mb of ram, and this has 32 mb ram... So IDK...) I realized I can not use the PS3 or a PC due to lack of voltage generated form the batteries... Don't they need a minimum of 110v? and the battery is 12 v. It says it supports up to 4 webcams, but I do not know how well it can perform while processing images. I can either just process the data and send the raw data obtained from the camera to the cRio and process the logic there or process the logic on the board. Thats a minor detail that can be experimented with. |
Re: Programmers: I Have A Challenge For You
Quote:
Have you written any successful programming logic since your last post? |
Re: Programmers: I Have A Challenge For You
Quote:
|
Re: Programmers: I Have A Challenge For You
Quote:
|
| All times are GMT -5. The time now is 14:58. |
Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi