Robotic LEGO Photocopier: Overall Software Framework

Hey, just wanted to talk about a few thoughts I have been having about the Lego photocopier software. Over the past few days I started reviewing some basic ideas about how to design such a program and what others have done in the past. The first thing I realized is that I must decide how many loops to use. The more loops I use the more things I can do in parallel, but a harder time I will have keeping track of them all.

For this reason I settled on having two loops. The first loop will keep track of the robotic arms every movement. It will consistently be feeding the program its location, its state (moving, picking, idle and etc.). The second loop would take care of the actions. This will tell the arm the next operations it must perform. It will also include an event structure to get information from the user interface.

As for how the loops will communicate with each other, as of now I am thinking about using a stacks and user events to trigger the next state.

Post a comment if you have any ideas or suggestions.