|
|
|
![]() |
|
|||||||
|
||||||||
|
|
Thread Tools | Rate Thread | Display Modes |
|
#7
|
||||
|
||||
|
Re: Autonomous Control
Quote:
As a maneuver changes it registers the maneuver with the robot. Each mechanisms just reference the robot for the current maneuver. This eliminates the need for different types of ManeuverEvents beyond pass fail and change. The EventManager also sends all maneuver change events to all mechanisms, all mechanism events to all of the mechanisms. This allows us to keep the event manager unchanged, simplifying to code for rookies. all a rookie team would have to implement: Robot Maneuver Factory (could take a template) Mechanisms example maneuver factory for a robot which drives straight, shoots, repeat. (draw out the state machine, its easier to picture it way) ..Maneuver(passManeuver,failManeuver,toManeuver); Code:
public class ManeuverFactory implements IManeuverFactory{
private static ManeuverFactory factory = new ManeuverFactory();
private static int mode = 0;
private ManeuverFactory(){}
public Maneuver get(String type){
Maneuver man = null;
if(type.equalsIgnoreCase(Maneuver.INIT)){
man = new Initialize();
man.setNext(ManeuverType.STRAIGHT, Maneuver.INIT, Maneuver.HALT);
}else if (type.equalsIgnoreCase(ManeuverType.STRAIGHT)){
man = new Maneuver(ManeuverType.STRAIGHT, ManeuverType.STRAIGHT_TO) {};
man.setNext(ManeuverType.SHOOT, Maneuver.HALT, Maneuver.HALT);
}else if (type.equalsIgnoreCase(ManeuverType.SHOOT)){
man = new Maneuver(ManeuverType.SHOOT, ManeuverType.SHOOT_TO) {};
man.setNext(ManeuverType.STRAIGHT, ManeuverType.SHOOT, Maneuver.HALT);
}else if (type.equalsIgnoreCase(Maneuver.OPERATOR)){
man = new Maneuver(Maneuver.OPERATOR, Maneuver.OPERATOR_TO) {};
man.setNext(Maneuver.OPERATOR, Maneuver.INIT, Maneuver.OPERATOR);
}
return man;
}
public static IManeuverFactory getInstance() {
return factory;
}
}
|
| Thread Tools | |
| Display Modes | Rate This Thread |
|
|
Similar Threads
|
||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| Traction Control in Autonomous? | dboisvert | C/C++ | 4 | 07-03-2009 11:11 |
| control 4 motors in autonomous? | pinballwizard96 | NI LabVIEW | 4 | 10-02-2009 12:03 |
| pic: Autonomous Control Sample | Squall | Extra Discussion | 4 | 07-04-2005 01:53 |
| OI/Control Board LEDs during Autonomous | ace123 | Programming | 1 | 12-02-2005 19:38 |
| Autonomous to Manual control? | Lint_Ninja | Programming | 5 | 16-02-2004 21:48 |