Skip to content


Book: Raspberry Pi Robotics Projects

This book is more like a basic blog than a project book. It is really targeted at someone who knows nothing about Raspberry Pi, robotics, or programming. The first 60 pages could have been omitted with a reference to a getting started book. Many of the coding example were really screenshots — it seems like the author couldn’t figure out how to embed code examples.

There are a few helpful instructions for audio and speech processing in chapter 3. Maybe i thought this because it is one of the few things in this book i haven’t actually done yet…

The book glosses over most topics of robotics, but doesn’t go into enough details of any of these. For example, it goes over how to hook up robotics legs and make these move; it falls short of even mentioning how to make these move in a useful way (training, inverse kinematics, poses, synchronization, etc).

By chapter 10, it finally mentions some more interesting topics, like ROS.

On the upside, it does introduce a lot of good ideas, products for makers, and links to open source software.

My rating: 4/10

Links

amazon page

Google Books page

Posted in Books.

Tagged with , , , .


Book: Make: Fun!

Recounts modern history of games and toys, and provides lots of ideas and some instructions on how to make your own, as well as how to make tools to make things. All-round an interesting read

My rating: 8/10

Links

homepage

amazon page

Google Books page

Posted in Books, Make.

Tagged with , , , .


Animatronics: robotics progress

So, i’ve been making slow but steady progress… not fast enough to warrant more frequent blog posts. Some accomplishments:

  • use multiple ROS nodes to synchronize and control movement; both blinks and eye rolls are currently performed
  • optionally activate motor controller, which is the Adafruit Servo Hat
  • use the Raspberry Pi camera and OpenCV to locate faces and broadcast this on a ROS topic
  • connect ROS on a VirtualBox VM to a master running on a Raspberry Pi
  • create an overly-simplistic URDF model of the head with eyes — no moving joints yet

Notes

Using OpenCV Haar Cascades filter is pretty compute intensive for the Raspberry Pi, and it would be good to at least decouple the camera IO from the image processing.

 

There’s a tutorial for how to use ROS with multiple machines. Here’s the brief summary: connect them over IP and on the other nodes, export this variable:

export ROS_MASTER_URI=http://your_ros_master_ip:11311

Now you can skip a tutorial!

Yet to-do (short term)

  • figure out how to use tf2 to transform the seen face to eye direction
  • convert eye direction to servo position
  • build a head, mount eyes and camera
  • use a ROS camera source to decouple the IO from the OpenCV processing, which can speed up

Posted in Make, Robotics.

Tagged with , , , , , , , .


Weeds

A while back, i was looking for a herbicide to kill those pesky weeds in the interlock and driveway cracks. Boiling water did a good job, but for anything more than a couple small patches, i proved too time consuming. And dangerous, carting boiling water around. Most herbicides are bad for the environment, and usually persons too. I saw at a hardware store one day a large bottle of one for paths. It was about 30$, cheaper than others like Round-up (which is selective and not effective on growing varieties of weeds, and also possibly carcinogenic). What was in the kill-all bottle? Acetic acid. Otherwise known as vinegar. You can pick up the same stuff for less than 4$ for 4L at the grocery.

However, simply spraying this on will not quite lead to the desired effect. The problem is that it doesn’t really stick or get absorbed. A friend told me that it needs a surfactant in order to be effective, but since it isn’t food, there is no regulation requiring the disclosure of additional ingredients on the label.

Some searching online also suggested adding salt to increase the effectiveness. Here’s the current mix i use:

  • 4L pickling vinegar (7% acetic acid)
  • 250 mL fine table salt
  • 15 mL dish soap

Pour all into a large spray bottle, close it, and shake well to mix.

Make sure you buy sprayer labeled “bleach”. Others will break down in the acidic environment.

The mixture is non-selective, but has no residual action. Which means it is good for the environment. But needs to be reapplied as new weeds come out. It will kill any plants covers, and stray sprays may damage foliage unintentionally. It is best to use this in paths and driveways away from the plants you want to grow. It may have unintended side-effects, like the desire to eat fish and chips.

Posted in Garden, Make.

Tagged with , , , .


Book: Make Family Projects for Smart Objects

This book was a pretty quick read. Unless of course you actually make each project, which is sort of the point. It is a good intro to various Arduino and IoT projects for those with beginner and intermediate knowledge. Experts may find it a bit slow, but still helpful if they don’t know particular components.
My rating: 6/10

Links

amazon page
Google Books page

Posted in Books.

Tagged with , , , , .


Book: Idoru

The most interesting thing about this book is that it was written before the internet was popular… that the author predicted both the popularity of a global computer network, the dark web, and AI. If it was written now, the book would be merely futurist fiction. But then, it must have been oddly prescient.
It was a hard start, not having read the first book. But it soon became understandable – – both the characters and the jargon create created for all the futuristic technology and social differences.
The ending was a bit choppy and weak.
My rating: 8/10

Links

amazon page
Google Books page

Posted in Books.

Tagged with , .


Book: Make Edible Inventions

This is really a family book – – for parents and kids. It has many interesting  projects that are food related… but don’t expect much in the way of recipes. The best part is the interesting tidbits of history of foods and food technology.

My rating: 7/10

Links

amazon page
Google Books page

Posted in Books.

Tagged with , , .


Learning ROS

I’ve been learning ROS for the past several weeks. No-so-pro tip: start with their recommended tutorials. Don’t try to start running it under Docker and cross-compiling a multi-computer system.

Make published an article Smooth servo control with ROS. It looks pretty easy… how hard can it be?

Good resources:

Posted in Make, Robotics.

Tagged with , , , , , .


Adafruit servo hat

After some brief struggles with a cheap servo controller, i bought the Adafruit 16-Channel PWM / Servo HAT for Raspberry Pi – Mini Kit from RobotShop. This is easy to setup and works well! And really not much more expensive than the really cheap one.

Tutorial: Adafruit 16-Channel PWM/Servo HAT for Raspberry Pi. Make sure you use the up-to-date code rather than the original mentioned in some of the tutorials… It can be found on GitHub: Adafruit_Python_PCA9685.

The Adafruit controller is pretty basic, but that shouldn’t be a problem with ROS and a major processor backing it. Other servo controllers can remember poses and specify speed and delays… these functions will have to be performed by the main processor. This may pose a design risk, which would result in having to replace the controller with a more expensive and complex one later… but this should get us started easily.

Posted in Make, Robotics.

Tagged with , , , , .


Agent Smart

In a previous post, i looked at OpenFace. Even though it needs “little training data”, this is still way more than one would want to collect manually.

So i’ve begun researching web agents. There seems to be 2 good solutions:

  1. BeautifulSoup – great if the page is agent friendly. Quick and reliable.
  2. Selenium – good if the page attempts to block agents. Is a full web browser and can be used to run scripts, fake cursor movement, scrolling, etc.

Good sample: StackOverflow: Using Python and BeautifulSoup (Saved webpage source codes into a local file)

I’ve hacked up some code that can slurp a bunch of data and put it into a database. It is mostly focused on image / media data, and does some reduction of data by means of content addressed storage using SHA-256 as the ID. It also has a tag system where any content can be tagged, which would normally happen through content identifies. So roughtly:

name * -> 1 ID 1 -> 1 content

tag * -> * content

It turns out that with anything but the most basic data, then KR is a problem that is still heavily researched. After some initial prototyping, i’ve decided to put this on hold for now until we get more physical robotics working. Let me know if you’d like to help out here…

Posted in Make, Robotics.

Tagged with , , , , , , , .