Hi everyone.
This is the first of two posts talking about the inspiration and features of my home robotics build. In the first post I talk about the inspiration behind the build of K-9 2.0. The second post explains the features and build details.
So, after a year in the making, I am pleased to present a project I've been wanting to do for years, pretty much since the first time I saw the little fella in Doctor Who when Tom Baker (one of my favourites) was playing The Doctor. K-9 was pretty much my all time favourite characters in the show and with that in mind, and with my love of dogs and my love for robots, it was logical that building my own K-9 unit some day was in the stars.
Some of you have already had a brief viewing of him when he gave a Birthday message to the EZ-Robot team, and Donned a moustache for Movember, but now his build is pretty much complete its time to bring him to the showcase. I have included a "How he was made" video at the end of the post.
So, why K-9 2.0? K-9, because it's a cool name and the clever play on words. I just couldn't change that, and I couldn't call him FiDo (whovians will know what I mean by that). 2.0, well those of you in the know have already noticed my K-9 looks a little different to the one's seen in the show. This is because I wanted to give him a newer, slightly more modern look but still keep the original shape I fell in love with as a child (don't like the new one in the new kids show. Looks too much like a toy to me). I also wanted to have a more personalised look and shy away from building a replica, although I very nearly did. (I hope I haven't offended any K-9 aficionados out there with his new look).
Okay, why now? I had an accident a while ago now resulting in injuring my back and left leg which left me unable to work or do much else for a while. So, looking for something to do to keep my mind and hands busy, and not become a couch potato, I thought "I want to build something". So needing to keep costs as low as possible, I got together a load of material I had from around the home, old R/C tanks, Cardboard, MDF sheets, LED fairy lights, old web cams, and numerous other bits and peace's laying around my home just crying out to be used. First of the blocks was a robot which didn't turn out very well. To heavy for the R/C tank drivetrain.
Then came cardboard Dalek BOB (Built Out of Boredom). He was a lot more successful, and was a lot of fun to build.
During BOB's build my mind started going in to overdrive, and that where the K-9 build came in. So after BOB was finished I drew up some plans and made a Cardboard K-9 prototype.
Again, he was was a lot of fun to build but I wanted bigger and better. At this point I had a lot more mobility so I decided, let's just do it.
My (not so) little robotic pooch nearly turned out very different, and I'm not talking about how he looks. After making the R/C bots I had three strong motors and one last working R/C control and receiver. So I drew up some blueprints, I got my tools together and dusted of the MDF sheets. I was going to make a full size similar dimension R/C K-9 and hack some PIR sensors and audio equipment to install inside of him. I started on the chassis first (as seen in the "making of" video below) just working a couple of hours a day or night, and a few weeks later pretty much had it complete and started to make the body frame. During a not very good day as my back gave out again, I was searching the interweb when I came across a fun, crazy, interesting company's website. I think it was called "EZ-Robot" but I can't be sure(s) (pardon the pun DJ). This changed everything. Microcontroller, servos, face/colour/object recognition and so much more, this was for me, or rather K-9. After spending days going through the website and forum I made a shopping list and placed my order. Due to the pre-order status for orders at the time, this gave me time to crack on with the build and hopefully get most of it done. About 3 weeks after I finished the main part of the build I got that all important email, "Your order has been dispatched".
My goodies arrived a few days later and it was "game on". I started playing around with ARC and my new EZ-B v4 and was well impressed. This lead to a few small changes in K-9's design, but for the better as it turned out. It was about this time I became more active in the forum asking questions I got really stuck with and was amazed with the community members response times and willingness to help. If it wasn't for you guys, K-9 wouldn't be half the robot he is now, so thank you all who took the time to respond and help. No joke, this is the only forum I look at on a daily basis and that I am active in.
Well as I mentioned, the build is pretty much complete now, and everything installed and working. I still have a couple of ideas I would like to implement at some point like adding microphones to his ears, adding a smoke detector in his eye panel and a couple of other things. But for now I'm going to concentrate on ARC and set a lot more things up. I've done a fair bit such as setting up servo positions, sound files, face and speech recognition, but there's much more to explore and still have a couple of teething problems I need to iron out.
The video below is the first of a few to come. It is a slideshow of some of the photos and video clips I took during the build and testing. As I said earlier, I still need to sort out a couple of issues I'm having, and once that's done and everything is hunky-dory, I will put up at least a couple more videos of K-9 in action for you guys.
In post #2, I have put down a few more details of K-9's features, abilities and build design along with a few things I am planning to do if possible. So, as some of you already know, this is my very first attempt at building a microprocessor controlled robot, with no scripting/coding knowledge or "qualified" woodwork/electrical experience but, even if I do say so myself, I don't think he turned out too badly. But it's not what I think that matters (well perhaps a little bit), it's what you guys think. Well I hope you enjoyed this insight to how K-9 2.0 came to be (and if you kept reading this far, then fair play to you), and I hope you enjoy the video. I would love to hear your thoughts and opinions, things you may have done differently, things you do like and things you don't. I'm pleased with the way he turned out and I hope you like him too.
Again, thanks to all of you that helped me along the way, and for those who are just browsing or are new here, I hope K-9 2.0 inspires you in some way with your own robot builds.
Steve G.
Other robots from Synthiam community

Steve70x7's Robot Albert E

Tezsmith's Linking Mathematica (Computational Software...

UPDATE 2.0/1
@Bret.tallent.
Yeah, there is not many of my family and friends that doesn't like K-9, even the non Dr Who fans. Anyway thanks for the compliments about my lil robotic pooch and I'm glad you like him.
So on with the update. I have started a new ARC project for K-9 in an attempt to create a little more real estate on my ARC windows, streamline the scripts I have and to add these in to a Pandorabot I have been working on, adding new sound effects, adding the ability to control K-9 with my iPhone, but mainly to give him a new voice. Most of this update revolves around using the Pandorabots interface.
Motor controller.
So after having a few issues with K-9's drive system I have ordered and received a new motor controller. This is a 10 amp controller with a peak rate of 30 amps. It is partially installed but I'm just waiting for the arrival of a 5v regulator which should be with me soon, then it's all systems go.
Pandorabot control.
I always wanted to use the Pandorabot interface control for my K-9 2.0 project, but I had some difficulty with speech recognition (still needs a lot more PC voice training) but also with the text input field which kept freezing as mentioned in this thread. So I did away with the control and used an iOS Chatbot app with its own voice synthesiser which I mentioned in post #1 and #2. This meant I needed to make a bunch of sound files of phrases he would speak to use with scripts and actions, as using "SayEZB()" would have meant he would have 2 voices.
A few days ago I had another play around with the Pandorabot control and it was working great with no freezing issues. (@DJ Sures. Did you have a little tinker with this? It works beautifully now
). This meant that I could now use the Cepstral voice that I had purchased a while ago for this project, and do away with the voice sample soundboard. I am currently going through my Pandorabots AIML brain files and adding EZ-Scripts to some of the responses, which so far are working great. Now K-9 can use SayEZB() scripts, will have the ability to read RSS feeds and much much more, all using one voice.
Speech recognition.
So, now I'm using the pandorabot control with scripts in the responses, I am doing away with the speech recognition control as I no longer need it. But as I mentioned above speech recognition itself is still an issue. I have a fairly decent laptop and use a pretty good microphone headset, but it still needs a lot of training as accuracy is about 60% compared to my iPhones speech to text which is about 98% accurate. So I looked in to a way to use my iPhone and came up with a solution.
I found two apps in the App Store which are both remote mouse apps to control a PC with an iPhone. Both apps are very good, have quick response times, and have a lot of neat features, but both have one disadvantage each. More on that later. The first app called "remoteMouse" is quite simply a track pad and left/right buttons. It also uses the iPhone keyboard to type directly on to a PC which is done almost instantly. What ever you type shows on the iPhone screen and is instantly sent to the PC. But the added bonus is I can press the microphone key on the keyboard and use the iPhone's speech recognition to speak type directly to a text input field anywhere on the PC. So now all I do is remotely move the pointer on the PC screen to the Pandorabot text input field, and use the iPhone speech recognition to say what I want. Press "return" on the iPhone and the text input is parsed through the pandora control, the bots response comes back, and when the bots response has finished the cursor flashes automatically and I press the mic button again and continue the conversation. Result... 98% speech rec accuracy that anyone can use with minimal use of pressing keys. Open speech rec, send speech rec. Two key presses is all it takes. With this app you can also use any other control on ARC and any other PC function. The first photo below is a screen grab from my iPhone's screen showing the first app in use. Another reason why I am not using a voice recognition control is that you need a text input field for this to work like the pandora control has. As I mentioned before the only disadvantage to this app is that you have to be able to see the PC's screen to see where the mouse pointer is. That's where the other app comes in.
ARC mobile for iPhone.
In my first ARC project, controlling K-9 manually was done by a joystick control. In the new project again I'm doing things a little different. The official EZ-Robot mobile iOS application is not available just yet, so in the mean time I have found a temporary solution which uses the second app I mentioned. This one is called "JumiOne" and again has all the bells and whistles to remotely control your PC with an iPhone (or android phone) but with on advantage over the other app. This one actually mirrors your PC screen on to your iPhone screen, meaning everything you see on your PC's screen is also seen on your iPhone screen.
This screen mirror option now has a great use to go with my project. In a separate ARC project window I have created a mobile control for drive and head movements, as well as a few other operations. Now I simply pair my iPhone to my laptop, open my ARC project (remotely or directly), switch to the mobile control window, and now I can control K-9 straight from my iPhone. The pictures below is another iPhone screen grab showing the mobile control. I can also pinch to zoom the iPhone screen to make sections of the mobile control larger if needed. I mentioned that both apps have a down side. With this app, it's the fact that, unlike the "remoteMouse" app, the remote keyboard does not yet support voice recognition as when I tried it, it only recognised the first letter of the first word spoken. It's a real shame actually as that would make this app perfect (at least until EZ mobile iOS is released that is
) as I could use the mobile control and voice recognition for the Pandorabot interface control all from the one app.
These are not perfect solutions but they do work really well, and I'm so pleased I can use my iPhone's speech recognition with ARC now. (I should mention again that using this option won't work on a voice recognition control as it needs a text input field). So that's it for this update for now. I'm currently waiting on a new video camera to arrive so as soon as it does I will get on with making some more videos for you guys. In the mean time, I hope this update has given you a few ideas for your projects and I just want to say again to everyone who has replied in this thread, thank you for your kind words and compliments.
Steve G.
@Steve G. that's some great app grabbing you've done. I might give this a go on an iPad and the Roomba. Adding conversation to a bot adds a lot to its entertainment and appeal value.
@Steve G,
I haven't tried it yet, and my trial will be on Android not iPhone, but while looking for a wireless microphone, I came across an app called Pocket Microphone available for both iPhone and Android that theoretically would allow you to use EZ-B speech reco and not just PandoraBots.
Vendor is "senstic" if that helps you find it in the app store.
Alan
@Robot-Doc.
Yeah they are great apps and completely agree with you about adding conversation for great entertainment value. My friends and family love interacting with K-9 this way. I am keeping the first project I made contains the old voice as the pandorabot platform can be a little flakey at times, so this will be a good back up. And if people who know K-9 say "Why has he got a different voice today?", I can say he has got a cold and is feeling a bit "ruff". (Sorry. I couldn't resist).
@thetechguru.
Thanks for the info Alan. Funnily enough, I did try the pocket mic a while back when I was looking to improve the speech recognition, along with another app called pocket audio, before I bought my headset mic. Although they did work ok I did have a couple of issues. I found that the pocket mic app kept crashing on me (may have done a bug fix in an update by now).
The second thing was that even though the iPhone acted as a very good mic, everything was still parsed through Windows SAPI so recognition was still quite poor. Using the apps I mentioned in my other post, they use the iPhone's on-board speech recognition (which I believe I supplied by Nuance, same people who do Dragon Natual speech) and recognition is so much better than SAPI, and is not limited to a users speech profile. But the pocket mic app is still a viable option for using the speech recognition control in ARC.
Yeah, iPhone recognition is Nuance. I wish Dragon provided a SAPI interface. Back in their early days, they did, but not since version 8 I think.
They are the undisputed leaders in speech recognition. I work with their commercial division for my employer's voice self service, and they do some pretty incredible stuff. When I put out an RFP to upgrade our system, 8 of the 10 companies that responded use Nuance technology in their solution, and we went with Nuance directly because they had the best overall solution.
Alan
The Dr. would be proud of your work! Very cool K-9.
@mcsdaver.
Very kind of you to say. Thank you very much.
Speech recognition adds so much fun to using a robot. I have my mic on the whole time I am programming or using my robot.