Brainstorming ideas for developing our robot 🙂
Modules which map real world functionalities
Capabilities:
- Move forward for x seconds
- Move backwards for x seconds
- Rotate left for x seconds
- rotate right for x seconds
API proposal:
void Move(Direction direction, Duration duration);
void Rotate(Direction direction, Duration duration);
Capabilities:
- Grab an animal
- Release the animal again
API proposal:
void GrabTarget();
void ReleaseTarget();
Capabilities:
- measures distance (in cm) to objects in front of the robot
- emits an event if an object is about to collide with the robot
API proposal:
int MeasureDistance();
// event props
int distance;
DateTime occuredAt;
Capabilities:
- emits an event if a contrast on the floor is detected (black duct tape = game boundary)
Capabilities:
- emits an event if the target was detected with a high probability
API proposal:
// event props
double probability;
int maxX;
int maxY;
int minX;
int minY;
Capabilities:
- emits events for required intents
- Describe control flows
- Find a way to intercept control flows for important event reactions without abandoning the current control flow
- probably a lot more 😄