Tuesday, 22 April 2014

Voice Recognition

Voice recognition under Linux is a pain, but then under windows it never worked very well. After a bit of playing around i found that the voice recognition program is not the problem but the quality of the sound that we feed into the voice recognition program, there is back ground noise, motor noise and other voices have different pitch(women and kids)so its no wonder the results are poor. The program hark has the features required all it needs is a microphone array. The kinect seems like it will do the job, But getting the microphone to work under with linux is the problem libfreenet only works with older kinects and only on some ports Robbie has 2 kinects a older one for navigation mounted low to the ground  and a newer one for face tracking mounted in his head. Before I can can move to the next stage I have to swap them over just sapping the leads over results in no microphones found. and swapping them will mean removing the mount from one and adding a bracket to the other

Wednesday, 9 April 2014

Dueling Chatbots

I wanted to test Robbie's chat engine but I was to lazy the type the questions so I
set up another chatbot  and had to 2 talk together the result was amusing to say the least they chated away for 5 minutes before one of them crashed, The biggest problem was they answered the question then asked one of there own which became 3 then 4 then 20 answers plus a extra question . Next time I try it the response will be limited to the last 2. The chat engine has been intergrated into the AI now  if i send a unrecognized  request it will go to the chat engine

Monday, 17 March 2014

Arm Encoders

Moveit is running nicely but the real arm and simulated arm have a different angle at first I thought it was just calibration  and the lack of rigidity in the system
it ends up it's all of the above and the potentiometers that i use for encoders. The potentiometers are linear types but they are not true linear there is a small variation in the angle to signal which can be up to +/- 6 degrees the start, end and middle being accurate. There is not much point in fussing with calibration with that much error. I have 2 choices magnetic encoders or a look up table for the angles, the encoder will be for a later date so for now I'll use a look up table. For the rigidity and smoothness of operation bearings are the only way to go. Using the fake robot in Rviz shows that a extra joint in the shoulder gives better performance  I  will try and add a shoulder pan joint to Robbie

Sunday, 23 February 2014

Robbie's arm moving


Here is a video of Robbie moving his arm to random points selected in RVIZ I have cut out the planning stages they can last up to 10 seconds for complex solutions.
Robbie can drive to a selected point
move his arm to a selected point
that leaves grasping  then the butler is online
"Robbie get me a beer"



Tuesday, 18 February 2014

ROS Movit

At last I have ROS Moveit working, after writing the action servers it all came together. The simulation mode is great for testing learning to use it will be a challenge. I did have one problem that cause me a headache for a while. The simulator worked but when it came to using a real robot it failed the problem was you have to modify the demo launch file not just use move group launch. The demo launch file you remove static transformation and the robot state  publishers.
I still need to tune the joint angles and reduce the error in movement to the required angle. Its very interesting to watch Robbie move his arm and avoid obstacle's  in his way.
The next challenge is to recognize a object and pick it up move it. That will require a Kinect but Robbie’s kinect is too low to be of use. So I stuck one in his head a Asus camera would be better as it's smaller but the jinect was only $30 against $300 for the Asus. It makes him look strange once every thing is working we will have to do a redesign not just on the head but also the arms.





Friday, 14 February 2014

Elbow Mod update ver 3

After a some testing I found the version 2 of the elbow mod to be lacking
when power was removed to joint sagged when power was applied the joint would snap into position after a few day trying to control the joint the plastic started to fail. The arm was tearing it self to pieces the solution would be motor breaking and velocity control. Another idea is to use a worm screw gearbox but the original Inmoov gearbox is not suitable but the  Hector   robot has a gearbox that would work with some modification I had some parts laying around from a previous idea
they wern't of good quality and  I didn't have enough filament to reprint or the bearings required so i made some PLA bushes. Not wanting to use a motor and controller I opted for the standard servo with feed back. The good news is it works
and I have nearly 160 degrees of rotation the servo handles the load fine but the feedback is a little jittery later I will change the servo with a motor and the feedback will be solved. the elbow pivot is a little high. I want to do some testing with the complete arm before i reprint the parts. What i really need to know is if the arm can reach and pick up objects for a table. The original hand is very limited
so I replaced the hand with a claw, the arm now has 6 DOF  and a gripper all with feedback and controlled through action servers. Of course that brings in it's own problems as the joints have to get to there goal with a high degree of accuracy before moving on to the next goal.





Monday, 20 January 2014

Robbie Navagation Test Smach

Running with the action server was one goal but using ROS smach and the ability
to use multiple goals  or way points to get to the target was always the plan
in the attached video shows Robbie moving in a triangle to achieve a target.
Next we are going to add arm actions to the routine