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




Friday, 17 January 2014

Autonomous Navigation

Robbie's first autonomous  navigation run the goal is navigate through a door
in this run the door is 110cm wide but getting through was quit hard. A lot more work
will be required adjusting the parameters. Robbie has a habit of spinning in place trying
to find a solution. The cost map and size of the robot have a large bearing on behavior



Here is a picture of Robbie in Rviz showing the gap after the infatuation of the cost map 

when there is no clear path through,  the robot will spin in place to find a clear path.
now the fun starts learning to drive  by setting nav goals


Thursday, 16 January 2014

Robbie the cartographer

Finally received the new encoder disc's after fitting them the problem of erratic
reading changed side after 3 days of work the encoder are running well. The main cause was the disc was not aligned and running true, the axles are only threaded rod
which gives a little movement i put a layer of tape around the rod and every thing started to work as expected.  That doesn’t mean there are no more problems, after adjusting the encoder counts Robbie was again running straight  but long for a 1 meter move he went 1.16 and for every turn he over shot by 22 degrees. Once i examined the data the distance travelled in real life matched the distance and angles
in his localization, the extra distance came from deceleration when i have a spare day I will adjust the PID loop to be more responsive.  The deceleration issuse will not impact navigation to much so the first task was to make a map.  To my surprise the maps were the best best we have ever achieved they still need a lot of work for them to be perfect (we are using a kinect not a laser scanner) before we can do long range navigation. Robbie was able to navigate in the garage with out crashing into the walls the localization on the map was good. Over the next couple of days I want to run more navigation test and a few videos I want to see how he goes up the ramp and through the doors. I will need to work out a good position for the arms just hanging down is not good the hand can get caught on object.


Thursday, 26 December 2013

Elbow Mod Update

Since the last update I have fixed numerous bugs the navigation errors where due to a damaged encored disc and the arm jitter was due to mismatched names in the Joint state publisher. one of the requirement for ROS MoveIt is a follow joint action server this now works I was ready to start using MoveIt then the elbow worm broke again, the printer not working at this time so I incorporated the elbow mod into the robot.The original idea was to use a MXL belt but the weight and acceleration  cause the belt to slip, after a change to #25 chain and sprocket to operation was better. One side affect of this mod is the arm can droop down which on power on causes a sudden jerk as the arm moves to start position. A simple adjustment to the start position and to place the arm into the tuck position for driving will be required, maybe a spring to hold the weight   will also help.