... | ... | @@ -18,7 +18,7 @@ To build, program and experiment with the Braitenberg vehicles [1], as described |
|
|
## Plan
|
|
|
We plan to attempt to complete the exercises within our initially allotted 5 hours.
|
|
|
|
|
|
Ida was writing the code, Nicolai took notes, and Camilla and Emil were in charge of performing the experiments. After Ida had to leave, Camilla took over the coding and the two remaining members collaborated on performing the experiments.
|
|
|
Ida was writing the code, Nicolai took notes, and Camilla and Emil were in charge of performing the experiments. After Ida and Emil had to leave, Camilla took over the coding and the two remaining members collaborated on performing the experiments.
|
|
|
|
|
|
## Results
|
|
|
We began by rebuilding the robot, looking at the illustrations for the building instructions for *Express-Bot* [1, page 2] as well as the images provided in the lesson plan under *Building Instructions for a Base Vehicle*.
|
... | ... | @@ -123,7 +123,7 @@ Next, we constructed vehicle 2b by simply switching the attachments of the conne |
|
|
We did not create similar programs with inhibitory connections, but they would be reasonably trivial. It could be obtained simply by inverting the values used as parameters for the motor powers. This would cause the robot to stand still when measuring bright light and drive towards dark (low light) sources.
|
|
|
|
|
|
#### Several robots in the dark
|
|
|
We proceeded on to having several robots running ***LightHater.java*** move about in a dark room wearing lights on their rear. As it was not possible to coordinate this with the other groups as we where working friday afternoon and therefore didn't have several other groups in the Suze building, we decided to merely discuss the expected result from a group of robots in a dark room running one of the following four possibilities. The results from this discussion are summarized in Table 1.
|
|
|
We proceeded on to having several robots running ***LightHater.java*** move about in a dark room wearing lights on their rear. As it was not possible to coordinate this with the other groups as we were working friday afternoon and therefore didn't have several other groups in the Suze building, we decided to merely discuss the expected result from a group of robots in a dark room running one of the following four possibilities. The results from this discussion are summarized in Table 1.
|
|
|
|
|
|
| Situation | Explanation |
|
|
|
| ------------- | ----------- |
|
... | ... | @@ -140,7 +140,7 @@ We have not implemented adaptive minimum and maximum light values in our program |
|
|
|
|
|
A way to experiment with this adaptation to investigate the improvements introduced by it could be to place the robot in an environment where the ambient lighting could be controlled to a high degree, for example with the ability to completely darken the room and then light it up again. By having the 2b in the exitatory mode, having the robot drive around in a medium lit environment and suddenly turning off all the lights should cause the robot to stop dead, as the new ambient lighting is far too low to set the power level of the motors high enough. However, after enough time has passed for all the recorded light values in the queue to be shoved out, the robot would adapt to the new dim ambient lighting and start driving around normally again, searching for sources of light.
|
|
|
|
|
|
In the lesson plan, an alternative build is presented (see Figure 5, "Figure 6" in the lesson plan). We have no video showing the behavior of the robot shown in Figure 5, but we assume that it would crash into any small object placed directly in front of it, as the sensors are placed with far too large a space in between them to detect a hindrance of this form. A solution to this problem would be to simply place the sensors closer to the center of the robot. There is no need for them to be further away than the edge of the robot, in order to prevent it from bumping into anything. (TODO: kunne det ikke være, at der er en god grund til, at sensorerne er så langt ude? (Ida))
|
|
|
In the lesson plan, an alternative build is presented (see Figure 5, "Figure 6" in the lesson plan). We have no video showing the behavior of the robot shown in Figure 5, but we assume that it would crash into any small object placed directly in front of it, as the sensors are placed with far too large a space in between them to detect a hindrance of this form. The reason for this much distance between the sensors is probably, because they want to avoid both sensors sensing the same object. This would increase the respective power on both motors making the robot drive in a straight line resulting in a crash. This, however, makes it more unreliable to actually sense objects almost directly in front of you, since you want to minimize the overlap of the two sensors, which results in a larger margin of error, since the sensing is already unreliable in such an angle. To optimize this build you would have to try different distances between the two sensors. It would probably be impossible to avoid something directly in front of you though.
|
|
|
|
|
|
![alternative build](https://gitlab.au.dk/LEGO/lego-kode/raw/master/week8/img/fig6.PNG)
|
|
|
|
... | ... | |