![]() |
Hibner: Flexible, Scripted Autonomous Control
At the FIRST Robotics Conference I will be presenting a strategy for autonomous software design. The presentation will be Wednesday 6:00 p.m.
Here's the abstract: Quote:
The presentation will be highly interactive and audience participation will be highly encouraged (Pavlov would be proud). Throughout the presentation, working autonomous software will be developed with audience input. This means there will be a live example, which is a little scary for me, but it should be fun. If nothing else, you can come and witness the potential train wreck. If there is anything you would like to see addressed, feel free to post it in this thread. |
Re: Hibner: Flexible, Scripted Autonomous Control
This sounds excellent. Unfortunately I'll be packing in on Wednesday night.
Hopefully you plan to capture your presentation in some sort of whitepaper. :) Good luck. |
Re: Hibner: Flexible, Scripted Autonomous Control
Chris,
I would encourage you to post your presentation to the white paper section of Chief Delphi even before the FIRST presentation in order to gather possible feedback for your material. If you have a lot of pictures you will most likely exceed Chief Delphi's size limit. In that case, you need to email to an admin (brandon martus) in order for him to post it for you. Congrats on being a speaker! There are a lot of students hanging around Nationals with time on their hands (pits are small) that can benefit from your experience! |
Re: Hibner: Flexible, Scripted Autonomous Control
A semi-related question... This is going to be our first trip to Championships, so exactly how does this work Wednesday evening? The pits are open to 5 people. To send someone to this presentation, do they have to be part of that pit crew, or can they be separate? I'm not sure we can spare spots in our Wed. night pit crew for this.
I know something like this would be very well received by my team - we even played around with something similar in the off-season a few years ago! |
Re: Hibner: Flexible, Scripted Autonomous Control
This sounds like a great presentation! I'm actually working on developing something like this right now for our team. Unfortunately, we wont be at nationals this year. Is there any chance you are recording/streaming this/posting a corresponding white paper?
|
Re: Hibner: Flexible, Scripted Autonomous Control
Here are some answers to the questions so far:
Quote:
As for a whitepaper, all of the presentation materials and example source code to help get you started will be available here on chiefdelphi.com after the championship. I doubt I'll have time to get it refined to the point where I can post it before the championship in enough time for people to review it. I'll try, but I'm not counting on it. Quote:
There is an admission fee to the conference. Details are available at: http://www.usfirst.org/roboticsprogr....aspx?id=19359 |
Re: Hibner: Flexible, Scripted Autonomous Control
This is exactly how our (FIRST Team 1296) autonomous mode works. Our major functions are isolated in separate tasks, each monitoring a message queue. In teleop mode, we translate the DS inputs to messages and send them to each function/task. In auto mode, a dedicated task reads a text file and sends the same sets of messages. The script is modal, executing different blocks depending on the alliance and starting position. But we also download new text files w/o changing the robot firmware.
We look forward to your white paper. |
Re: Hibner: Flexible, Scripted Autonomous Control
Interesting.
I run a system where I write auto code in script files, which are read by an interpreter and executed line by line, by calling the appropriate function with arguments (by looking up the command by name and calling it by ref). |
Re: Hibner: Flexible, Scripted Autonomous Control
This is also very similar to the way we do autonomous. We build an autonomous virtual machine with a robot/game specific instruction set. The virtual machine can execute one of any number of different programs which can be specified independently. Being able to tune autonomous and write new autonomous programs without really changing your robot code is invaluable. I'd recommend this kind of approach to anyone, and also look forward to seeing the presentation/white paper.
Noel |
Re: Hibner: Flexible, Scripted Autonomous Control
I also forgot to mention:
The presentation and examples will be developed in LabVIEW, BUT examples will also be given for text-based languages. |
Re: Hibner: Flexible, Scripted Autonomous Control
Quote:
|
Re: Hibner: Flexible, Scripted Autonomous Control
We actually have ours set up where u can record what you do then play that back for autonomous.
|
Re: Hibner: Flexible, Scripted Autonomous Control
Quote:
The advantage to what Chris is describing is that -- assuming you have the necessary sensors installed and control loops coded -- you can quickly type up a script that says for example "go forward exactly 15 feet; slide to the left exactly 39 inches; raise the elevator to the 55 inch position; position the arm at 63 degrees" etc etc. |
Re: Hibner: Flexible, Scripted Autonomous Control
Quote:
It reads the text file, splits it into lines, then parses it line by line. Foreach line, it determines if it is a comment or contains less than 3 characters (and skips it if it does), then splits up the line's text by spaces, taking the first block of text and finding a command with that name, and calling it byref and feeding it the arguments (the rest of the text) as an array of strings. Generally, the functions either take those strings and turn them into doubles, or compare them to constants (to determine an enumerated type). I spent a little while debugging it on Windows before running it on a robot, and most of my errors were from not initializing shift registers. |
Re: Hibner: Flexible, Scripted Autonomous Control
Quote:
The method I'm presenting is actually incredibly simple. I think most people will be very surprised at how simple it is and how little code it will take. |
| All times are GMT -5. The time now is 19:46. |
Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi