Conversational Assassin Droid

The key to a good assassin droid is the ability to speak.  The droid should be able to tell its target that I was the one who sent it. Per the usual, I was not exactly sure where to starting learning how to add this ability to my droid. Luckily, I found Chatbots.org. Chatbots.org is an association that is advancing the chatbot industry worldwide. The site defines a chatbot as “an artificial living entity designed to have conversations with real human beings. This could encompass a text conversation via computers, a spoken conversation or even a non-verbal conversation.”   On the site’s forum, Dave Morton was nice enough to give me some direction.

For my assassin application, Dave recommended that I use fully self-contained software such as Kari or ChatScript.  Kari is a “virtual girlfriend” software that has a shallow learning curve, while ChatScript has a deeper learning curve with more flexibility. As an example, Kari only comes with a female voice, does not interface with hardware very well, and is “flirty” in an adult kind of way. On the other hand, ChatScript allows for any voice, has text-to-speech and speech recognition built in, and commands can be passed to control the robot.

A bonus benefit to ChatScript is that it is free. I downloaded the software to check it out, but have not really started to build my HK-47 personality. It will take a lot more sweat equity before I have a viable robot personality. In the meantime, if you are at all interested in AI, give Chatbots.org a look. There is some interesting chatbots available for download and experimentation. 

Tagged , , , ,

Assassin Droid Features

To create an army of assassin droids, I need list of capabilities the droids need to have.  Since the prototype droid will be inspired by HK-47, it should have conversational capabilities, walk on two legs, have arms, and sense its targets.

Creating a conversational droid will be tough. At this point I am not sure how to attack the problem.  I am hoping that I can come up with solutions from Chatbots.org that will work for the assassin droid. Some of the chatbots at this site have been able to fool people into thinking they were human for up to 30 seconds. Even if the robot can hold a conversation, there will be a challenge in capturing the personality of HK-47.  In addition, I will probably need a text to voice application and speech recognition software.

A robot that can efficiently walk on two legs does not currently exist. After watching a YouTube video from Stanford University, it seems that the only way to make walking happen will be through allowing the robot to think like a person. Until that happens, I will have to use math algorithms to get the robot moving until a technology break through occurs.

Robotic arms will not be as big of an issue as the legs, but will still be important.  The hands will not have to replicate the movement of human hands, but since this is an assassin droid, will need to use weapons.

The main sensor I would like to use on the assassin droid will be the Kinect sensor. The Kinect is designed for human motion tracking, which will allow the droid to be more interactive with humans. The droid will probably need additional sensors throughout the body to stop it from falling over, or colliding with objects.

These capabilities are just the core ideas that I want to include in the assassin droid project.  Please leave your comments on more advanced capabilities that you would like to see in the droid.  I am curious to see what you come up with.

Tagged , , ,

Learning Processing Review

After failing with Arduino, I knew that I needed to learn programming.  Since Arduino is programmed with the Processing language, I decided to find a book on learning Processing.  Reading reviews on Amazon.com led me to purchase a used copy of Daniel Shiffman’s book, Learning Processing.  This book is fantastic, and was written for a complete beginner like me. The book was written in a linear fashion so that beginners could start in chapter one, and slowly work their way through the book to learn programming from the beginning.  Processing and the book, Learning Processing, are designed for those working in a visual field, such as graphic design, painting, or sculpture.  However, the Processing language can be used for robotics too.

 

As I mentioned before, the Processing language is a free open-source programming language. When visiting the processing.org site, it is cool to see the code that is shared between beginners and experts.  I plan to upload some of my sketches to openprocessing.org for others to view here.

 

Currently, I am on Chapter five. My plan is to work through the entire book before moving on to my next robotics project.  This may take a few months as there are 23 chapters in the book.

Tagged , , , ,

Failed Arduino Uno Start

After learning how to build and program robots using LEGO Mindstorms, I decided to move to the Arduino Uno.  The Arduino Uno is an open-source electronics prototyping platform, and is supposed to be easy to use.  Since I do not know how to program in any computer language other than in the LEGO NXT-G environment, I purchased the board as a kit through Jameco Electronics. I was hoping that the book included with the Getting Started with Arduino Kit v2.0 would be enough to teach me how to use electronics and program the Uno.  I was wrong.  The electronic circuits that the book had me build were overly simple, and I had no idea what I was typing when trying to program the microcontroller.

 

This kit turned out to be too advanced for me, but did introduce me to the Processing language.  The Arduino development environment is based on the Processing language which is open-source and free to download. Processing is built on top of the Java programing language which means there is little that cannot be done with Processing.

 

For now I am going to put the Arduino aside and work at learning to program in the Processing language.  Learning to program may take up to a few months, but I will make updates on this site as I progress.  Once I learn to program in the Processing language, I will be in a better position to take advantages of the capabilities in the Arduino microcontroller.

Tagged , , , , , , , , ,

Post-Apocalyptic Vision & Mission

Science fiction is the reason I am interested and decided to learn robotics. This blog was started to chronicle what I learn as I study robotics, but adding Sci-Fi elements to the learning process makes it much more interesting for me.  As I was studying for Strategic Management class earlier today, I was thinking about what I ultimately want to accomplish with this blog. Consequently, I decided I should come up with a vision and mission.

According to my strategic management textbook, a vision is a statement about what an organization ultimately wants to accomplish. The vision statement should be forward-looking and inspiring to provide meaning for those pursuing the organization’s ultimate goals. A mission describes exactly what an organization does. Based on these definitions I came up with:

Vision:  We will be the rulers of the post-apocalyptic world.

Mission:   We create technologies that help us survive in a post-apocalyptic world.

These statements capture the spirit of what I am trying to accomplish, such as building a HK-47 assassin droid, but still allows me to change my focus to other types of droids, applications, or devices if the need arises.

If you are wondering who the “We” are in the vision and mission statement, it is anyone who “likes” us on Facebook, follows us on Twitter, follows this blog, or leaves a comment.  Join the rest of us in ruling the post-apocalyptic world.

Rothaermael, F. (2013). Strategic Management. New York: McGraw-Hill/Irwin.

Tagged

First Step to Building an Assassin Droid

One cannot hope to build an assassin droid without knowledge of robotics. After poking around the web a little, I found that the best way to begin with robotics is using LEGO Mindstorms. Yep, I have been playing with LEGOs. As a companion to the LEGO Mindstorms set, I also purchased Lauren’s Valk’s book, The LEGO Mindstorms NXT 2.0 Discovery Book.

LEGO Mindstorms comes with the NXT brick (brains), three servo motors, two touch sensors, an ultrasonic sensor (RADAR), and a color sensor. Also, Mindstorms comes with software to program robots using LEGO’s NXT-G programming language. With no experience in programming, this scared me the most. However, the programming language is an icon-based drag-and-drop language which makes it easy to learn. Following the lessons in the Discovery Book made learning the programing language very easy.

Now that I have worked my way through the entire Discovery Book, I feel confident that I can build prototypes using Mindstorms. The biggest benefit of Mindstorms is that it got me thinking logically to solve programming problems. It also got me familiar with programing concepts such as loops and switching.

Tagged , , ,

It Begins with HK-47

In May,my brother and his wife came to visit me in Arizona, and together we visited the Phoenix Comicon before attending a Diamondbacks baseball game. Luke and I visited the R2-D2 Builders Club booth and were captivated by the cool astromechs they had built. At one point, Luke turned to me and said, “You should try to build something like that.” That comment planted the seed in my head telling me to start tinkering with robotics.

Star Wars is the single largest influence for my interest in robotics. As cool as R2-D2 and C=3PO are to most people, my favorite droid from the Star Wars universe is HK-47. If you are unfamiliar with HK-47, he is an assassin/protocol droid that appears in BioWare’s Knights of the Old Republic video game. Watching this video will help you understand why I think he is such a cool droid. HK-47 has a pretty cool personality. My ultimate goal is to build my own HK-47.

By the way, I have not had any formal training in robotics, programming, or engineering. In the military I had very basic electronics training, of which I have retained little. Now at age 37, I will attempt to teach myself robotics. This blog has been started to document my learning process, display some of my projects as I learn, and receive help from those willing to offer it.

Tagged ,
Follow

Get every new post delivered to your Inbox.