Eventually, Hobbit needs some hard-wired
behaviors (instincts) so that even if the high level
program is telling him to run into a wall, his
instincts kick in and he will stop himself from
getting hurt! To do more, Hobbit needs more
sensors and more sophisticated code.
I started by adding two virtual bumpers to Hobbit. You
may be wondering why on earth I am adding two virtual
bumpers to Hobbit, when he already has a perfectly good
ultrasonic range sensor.
Reason #1: Avoiding running into things below the
Think about a piece of wood below the line of sight,
that is below the viewing angle of the range sensor.
Reason #2: Experimenting with wall following.
Say Hobbit turns his head 90 degrees to the left (port).
By writing code to try to keep the range to the detected
object constant — say at 50 cm — Hobbit could follow a
wall to his left.
While following said wall, it would be nice to have
virtual bumpers on the front so that Hobbit could avoid
running into something while following the wall.
Reason #3: Reflexes.
Once Hobbit’s code is sophisticated enough, we will
want to implement some reflexes such as “stop before
running into something” regardless of what the currently
running code or the user controlling the bot remotely says.
By adding the two bumper sensors, we are enabling
more sophisticated behaviors for Hobbit.
Configure Wi-Fi Hotspot
Let’s say you wanted to demonstrate your Pi based
robot.You cannot rely on having access to Wi-Fi everywhere,
so you really should provide your own hotspot when
demonstrating your bot.
Serving Raspberry Pi
By William Henning
30 SERVO 06.2016
Now that our Pibot, Hobbit can run around
on his own, avoiding obstacles and doing a
random walk (a.k.a., imitating a Roomba), it
would be nice if he could do more.
Virtual bumpers mounted on Hobbit.
Hobbit with wireless Rock Candy controller.