Service Droid V3
The Service Droid is intended to be a reasonably low cost robot body that can then easily be fitted with various processors and sensors. I've posted the original prototype here: http://letsmakerobots.com/node/38376.
This is the 3rd major revision. There have also been numerous small revisions along the way. The Major change in this revision is the move to using the Rover 5 robot chassis. One of the minor revisions is a larger pan / tilt assembly.
So today 12-Oct-2013 was Christmas for me, all the laser cut parts arrived. Two whole days with nothing to do but assemble the new kit. Previously the factory had not packed the parts well and the last 3 times I received broken parts.This time they packed the parts very well so it took almost 20 minutes just to unpack them. Note there are parts here for 2 kits.
Unfortunately I did not realise I had a grey Rover 5 chassis and since the company is closed I don't have access to the warehouse to change it until Monday. I started with the torso and pan / tilt assembly. Unlike my earlier versions, V3 uses some small metal brackets to hold it together. While this does mean more screws and assembly time the advantage is a much more ridgid torso. Although the Service Droid is designed for the Rover 5 chassis the flat bottom means that it can easily be mounted onto other bases.
Next is the arms. These are constantly evolving so that even this afternoon a couple of parts were swapped around. For anyone who has not read the other post, this arm is driven by a single servo in the shoulder and is designed to keep the gripper level with the floor through out it's range of motion so it will not spill liquids.
The photo below shows the arm with the servo in the center position which is for carrying objects. When the servo rotates anti-clockwise the gripper will be lowered to the ground to pick up objects. When the servo rotates clockwise it extends the gripper forward and upward for handing an object to a person or perhaps raising a bottle to pour a drink into a glass.
Both arms are finished but I want to make some adjustments before I get to the wrist and grippers so I stopped for the day. I hope to get it finished tomorrow.
I went to assemble the rotating wrist assemblies today and was surprised to find some important parts missing. I re-check the box and packaging they came in just in case but no luck. Since it's a Sunday and the laser cut factory is closed I just had to make do with the older yellow wrist plates.
Fully assembled now but there are still a few tweaks I'll make before it goes into production. Once I get a white base and replacement wrist panels I'll take some better photos and make a video.
Just another day in paradise......
Monday and the warehouse is open so first thing I did was get a white Rover 5 (4 motor, 4 encoder), a 4ch motor driver and a Spider controller. Time to wire this robot up. Starting from the beginning, batteries and a power switch.
I was thinking of using a LiPo but it was only 2600mAh and once it's voltage drops below 7V the Spider will shut down. On the other hand my NiMh batteries are 2700mAh and will stay above 7V for about 90% of the discharge cycle so they win. The power switch is a simple SPST toggle switch rated for 6A.
By undoing 6 small screws it's easy to remove the service droid body from it's base. This makes it easy to get to all the wiring in the base. I've used the 4 motor Rover 5 and 4ch motor driver so it will be possible later to change to mecanum wheels if I want.
The Spider controller gives me lots of I/O pins to play with including more external interrupts for wheel encoders and 3 extra serial ports for wireless transceivers. Small servo extension cables make it easy for me to plug / unplug the servos once the body is back in place.
If I wanted to keep things simple then I could have used a 2 motor Rover 5 chassis with no encoders and a Mini Driver. With the bluetooth module installed it would still be a fun toy to control with a mobile phone. In this case though I want to make the Service Droid into an autonomous bar tender using an Android phone as a touch screen / voice recognition module.
The encoders combined with my new motor speed control software will allow more precise movement for picking up glasses, cans and bottles. I can also get reasonably accurate "dead reckoning" navigation if required.
As you can see in the photo below, the Spider controller and 4ch motor controller stack neatly and fit perfectly using the hex spacers they are supplied with. I've used a pack of mixed jumper wires from DAGU to make all my connections between the two boards.
As you can see, my Android phone fits neatly on the slanted front panel. This phone is fairly big with a 13cm (5.1inch) screen. This makes a perfect touch screen for selecting your drinks. The phone does not really need to be on the robot but it's a nice option.
You can see in the photo below I've added a bluetooth transceiver on the right shoulder where it is away from some of the electronic noise and should get good reception. This transceiver is connected to serial port 1 and links my mobile phone to the robot.
Time to get some code written....
Ok, I haven't gotten far with the sample code because I've been to busy working on the assembly manuals.Since this photo was taken I have re-designed the arms so they move better and only need 1 spring each.