

|
The team started out exploring ways to expand the capabilities of
LEGOsheets -
a system earlier developed in a senior project. The purpose of LEGOsheets is to program
the
LEGO programmable brick
that was developed by the
Epistemology and Learning Group
at the MIT Media Lab, but is not yet commercially available. The brick is a little computer
that can process signals from sensors and control motors or other effectors. Part of the system is the virtual brick. Before we had ever seen it we thought that was a virtual simulation of the vehicle where one could try out rules. We were wrong. |
|
| |
So our approach was to build such a virtual simulation environment for several reasons.
| ![]() |
DebuggingAllow users to 'test-drive' the rules of the vehicles before 'taking them on the road'.That was the idea we had associated with the term virtual brick when we first heard it. And in order to create realistic breakdowns in the simulation a digitized photo was used as background to accurately represent real-world noise. (SimBrick is intended for a later phase of using LEGOsheets when the mechanics are understood and the challenges lie in the logic of the rules) EconomicClassroom dilemma: 30 students, 3 bricks !Virtual environment overcomes limited testing resources. Another aspect of virtual LEGOpet was that it was easier and cheaper to duplicate than the physical counterpart. A big deal of motivation of the SimBrick project was the experience in schools. There were computers in sufficient numbers, but just two LEGOpets. Our system is designed to give kids individual spaces to experiment and later apply their programs in the real vehicle. Flexible End-User ProgrammingRules are composed using the tactile programming approach of Visual Agnetalk Our system as it stands now emulates the programming primitives of LEGOsheets. Through implementing it in Visual AgenTalk we kept us the option open to prototype extensions of the language quickly.Rules or actions can be experimented with by dragging them onto the SimBrick. | |
Screenshots | |
![]() fig 3: behaviour rules of the SimBrick | |
| ![]() |
![]() | ![]() |
