... | @@ -77,9 +77,20 @@ This was caused by the Follow behavior being programmed to trigger a 'search' fo |
... | @@ -77,9 +77,20 @@ This was caused by the Follow behavior being programmed to trigger a 'search' fo |
|
As suggested in the lesson plan, we used the implementation on page 305 in [2] as inspiration. The final result is included in [5].
|
|
As suggested in the lesson plan, we used the implementation on page 305 in [2] as inspiration. The final result is included in [5].
|
|
|
|
|
|
We tried turning by just powering one motor, but that didnt work so now we power forward in one and backwards in one. This worked well, even though we had the other behaviors turned on, so they affected the run. We tried with them turned off aswell, and it worked even better this time.
|
|
We tried turning by just powering one motor, but that didnt work so now we power forward in one and backwards in one. This worked well, even though we had the other behaviors turned on, so they affected the run. We tried with them turned off aswell, and it worked even better this time.
|
|
|
|
|
|
|
|
[![Implemented Escape behavior](http://img.youtube.com/vi/nINQb163pyQ/0.jpg)](https://www.youtube.com/watch?v=nINQb163pyQ)
|
|
|
|
*Video 5: Robot avoiding obstacles using an Escape behavior via the TouchSensor.*
|
|
|
|
|
|
### Motor for light sensor
|
|
### Motor for light sensor
|
|
We just changed the car movement to a new motor. We used too much power though! TODO Insert video of motorized choking of robot. Delay was 500 at first, but we changed that to 100. TODO Insert picture of motorized light sensor.
|
|
We just changed the car movement to a new motor. We used too much power though! TODO Insert video of motorized choking of robot. Delay was 500 at first, but we changed that to 100. TODO Insert picture of motorized light sensor.
|
|
|
|
|
|
|
|
![Rebuilt motorized LightSensor](http://i.imgur.com/Ek1SRyh.jpg?1)
|
|
|
|
*Figure 5: Rebuilt robot mounting the LightSensor on a motor*
|
|
|
|
|
|
|
|
[![Suicidal ChokeBot](http://img.youtube.com/vi/7dXc0_qPSww/0.jpg)](https://www.youtube.com/watch?v=7dXc0_qPSww)
|
|
|
|
*Video 6: Motorized LightSensor doesn't stop turning.*
|
|
|
|
|
|
|
|
|
|
We realized that a GUI would have been a good idea, to ease testing of different parameters.
|
|
We realized that a GUI would have been a good idea, to ease testing of different parameters.
|
|
|
|
|
|
The reason for lowering power and interval time: less resistance on motor so less force needed.
|
|
The reason for lowering power and interval time: less resistance on motor so less force needed.
|
... | @@ -95,10 +106,18 @@ Try: 60 - seems to work ok, but keeps turning left (as it keeps going even when |
... | @@ -95,10 +106,18 @@ Try: 60 - seems to work ok, but keeps turning left (as it keeps going even when |
|
|
|
|
|
Stopping the motors in the end helped. But it seemed that the sensor wasn't turning enough when checking, so that the difference between the left and right light values was not large enough, whereby the motors were simply set to move forward, rather than following the light properly. We tried increasing the interval to 300. This didn't seem to make much of a difference, so we increased it up to 500 (the intial value). This seemed to work better (TODO: video), but the robot was turning away from the light rather than towards it. This was due to an error in our code - we simply flipped left and right turns in the code.
|
|
Stopping the motors in the end helped. But it seemed that the sensor wasn't turning enough when checking, so that the difference between the left and right light values was not large enough, whereby the motors were simply set to move forward, rather than following the light properly. We tried increasing the interval to 300. This didn't seem to make much of a difference, so we increased it up to 500 (the intial value). This seemed to work better (TODO: video), but the robot was turning away from the light rather than towards it. This was due to an error in our code - we simply flipped left and right turns in the code.
|
|
|
|
|
|
|
|
[![Motorized Follower](http://img.youtube.com/vi/63BJjsBgtrg/0.jpg)](https://www.youtube.com/watch?v=63BJjsBgtrg)
|
|
|
|
*Video 7: Motorized LightSensor working well with the proper variables.*
|
|
|
|
|
|
We tested in the dark to obtain a bigger light difference. In here, the robot's response was easy to observe (TODO: video). Note, though, that the big difference in measured light values caused it to turn A LOT - a little too much.
|
|
We tested in the dark to obtain a bigger light difference. In here, the robot's response was easy to observe (TODO: video). Note, though, that the big difference in measured light values caused it to turn A LOT - a little too much.
|
|
|
|
|
|
|
|
[![Follower in dark room](http://img.youtube.com/vi/bbRn_WVlDwk/0.jpg)](https://www.youtube.com/watch?v=bbRn_WVlDwk)
|
|
|
|
*Video 8: Testing the Follower behavior in a darker ambient lighting environment.*
|
|
|
|
|
|
Switching on everything else again: all behaviors were observable - we saw avoid overrule follow, and we saw the robot immediately respond to bumping into something (escaping overruling the rest). TODO: video. In general, we don't observe Follow a lot, but as we reasoned about earlier, this is because the ambient light in the room induces too little a difference to the flashligt, whereby the motorpower for the turn is not very large.
|
|
Switching on everything else again: all behaviors were observable - we saw avoid overrule follow, and we saw the robot immediately respond to bumping into something (escaping overruling the rest). TODO: video. In general, we don't observe Follow a lot, but as we reasoned about earlier, this is because the ambient light in the room induces too little a difference to the flashligt, whereby the motorpower for the turn is not very large.
|
|
|
|
|
|
|
|
[![All behaviors active](http://img.youtube.com/vi/YZ3ukgE0WIk/0.jpg)](https://www.youtube.com/watch?v=YZ3ukgE0WIk)
|
|
|
|
*Video 9: Robot driving and reacting to all 4 behaviors*
|
|
TODO: insert program code
|
|
TODO: insert program code
|
|
|
|
|
|
### SharedCar and Arbiter
|
|
### SharedCar and Arbiter
|
... | | ... | |