Slow but steady, or not…

It seems that xmas and new year is when all the part runs start. At least that is what it feels like to me, for all the parts I want.There has been a sudden rush in ordering things for R2 which means I nearly have everything I need to get him put together and mobile. The one part I’m still missing is the outer ankles, which I am hoping will be on a run soon. The last few cosmetic pieces I need are due soon too, such as utility arms and LDP. Progress whilst waiting for these parts has not been too bad, but I do keep coming across problems to work around. I guess that is the fun part tho.

On the electronics front, I managed to (I think) blow up my amplifier. I still need to hook it all up again and test it. I’ve a feeling that the switch I’ve got for main power isn’t rated high enough for the current that is going through. I’ve also decided to change the layout of everything, and install an actual touch screen inside R2 for the Raspberry Pi. This will give me the ability to control certain aspects of the software, and also at a pinch I can plug a usb keyboard and mouse in to do onsite programming whilst away at a convention or such like. I’m also currently waiting a Raspberry Pi v3 which will give R2’s brain a bit of a boost. Overall design hasn’t changed much, it’ll still all be controlled via i2c, but will also have wifi and 3g internet connectivity, turning R2 into a wireless hotspot! I will have to see how much the aluminium body affects the signal, but can always put an external antenna somewhere.

IMG_0298_CR2_embeddedI have more or less got the legs finished, and have done a test fit! Must say, they are looking rather good. All the parts slot nicely together and are pretty solid. Of course, I still have the problem of a lot of the screws and bolts being imperial (We’re part of the rebel alliance, don’t want any of that imperial rubbish!) rather than metric, so getting hold of replacements can be tough. This is more of a problem seeing as I’ve had some of these parts for quite a while and not only been moved around the office in the old house, but have moved to the new house and gone in and out of the garage, so some of the fastenings have been misplaced along the way.

I also decided to get one of the nice new hydro formed domes that are available. I was never too keen on the existing one that I had, and the new domes come with the mounting ring to fasten it to the body which meant one less thing I had to fabricate. A lot of the tutorials on the forums are geared around these domes too. Not only did I get a new dome, but I figured whilst I was doing that, I’d also upgrade all the things to go in the dome. This meant getting the ultimate hinges, aluminium holoprojectors, aluminium logic surrounds, aluminium eye, and even the fancy PSI holders. All this together gives me a pretty much top of the range dome for R2. It also means I can do a quick and dirty rebuild of the old dome at some point and create a different astromech.

IMG_0304_CR2_embedded IMG_0309_CR2_embedded IMG_0489_CR2_embedded
Which brings me more or less up to date. The dome is nearly finished, I just need to put a few final touches to it and tidy up the cabling inside. I even got the dome servos all hooked up and took a short video. I need to replace the arms on the servos with something a bit longer to get a bit more throw on them, but overall I’m pretty pleased.

Next step is to get to work on the body. I’ve got some of the ultimate hinges and have some installed already. Just need to fit the servos to them. I also need to trim down my data panel to fit it into the breadpan, but that shouldn’t be too much trouble. The one part I’m having issues with is the charge bay breadpan, it just doesn’t want to fit in properly. I may have to resort to some pretty hefty modifications on it.

 

 

I’ve given myself a deadline of June to get him mobile, but that depends on when part runs happen. Fingers crossed the outer ankle run starts soon.

More power!

11934535_10156061505195316_3190924556943319116_oIts been a long time since an update, but we moved house at the start of the year and things have been hectic. At least, thats my excuse and I’m sticking to it! I have been making progress with R2 in the last couple of months, doing a lot of work on his brain for starters, and painting various parts.

Code wise, there has been a couple of fairly drastic rewrites since my last update. The interface is a REST API, which sends commands to various modules as before. I’ve added a scripting module now, so that scripts or loops can be initiated such as random sounds, or a dance routine. The servo module had to have a major rewrite too as I discovered that I could only control one servo at once and had to wait for that to finish before another command could be sent. That wasn’t much good! I’ve also written the first of the actual controller interfaces (not counting a simple web one for testing), R2 can now be controlled from a PS3 controller. Button combos are read in from a csv file to trigger certain effects or scripts. Lastly, R2 now has a voice, and can play any mp3 stored in a directory, including selecting random ones from a list of types. Next step is to get either the Pi or the A la mode Arduino to control the speed controllers. I don’t want to run them off the Adafruit i2c servo controller for safety, I’d rather drive them directly and have some form of watchdog to make sure R2 doesn’t go on a rampage. All the code is still available on GitHub under my user, dpoulson

The PDU also needed a rethink, not least of all because of the amount of current it needed. The setup now has feeds directly to the speed controllers, with relays on the output from them to the motors so I can break the circuit if needs be. These relays will automatically turn off if the battery is disconnected so that any pushing of R2 will not feedback into the speed controllers and fry them. The relays will also be controlled from GPIO pins on the Raspberry Pi so I can disconnect them via an API call. I’ll also have an input for a kill switch that will have to be permanently on if any of the motors are to be powered, possibly using a transmitter in a replica droid caller or hilt of a light saber. I’ve a base idea for the new relay controls:

Powerswitch The relays I’ve found are Omron G4A-1EA, which have the benefit of the switched load being on spade connectors on the top, rather than through PCB traces, which when I did the calculations would need to be massive to support the potential current running through them. This allows me to make a simple PCB with the controller circuit, and hook the 24V battery up to it to power the coils. If the battery is removed, the coils turn off and the circuits are broken. No fried speed controllers.

The 24V connection will probably go through the fuse box I’ve installed, with a hefty fuse. The makers of the speed controllers don’t actually recommend a fuse but I’ve seen a few comments saying a 60+A fuse can’t be a bad idea, just in case!

The battery will connect directly to the center contacts of a DPDT switch, with the fuse box on one side, and the charger connection on the other. This will allow charging the batteries without taking them out of the droid. Not sure if this is best practice or not, needs more research. Currently they are just a pair of 12V SLA batteries that I had, connected in series to give the full 24V.

I’m hoping to get some time either this weekend or next, to hook up the motors, speed controllers, and battery, to test them out and get an idea of potential current draw. They’ll be controlled with a standard RC transmitter/receiver for now. If I can get the legs onto R2 he may even be drivable by xmas.

Fingers crossed!

Adventures in moulding.

Replicator

SG-1 Replicator

I’ve been wanting to give resin casting a try for quite a while now, and decided to start with something fairly simple that I’d need a lot of to get some practice in. The perfect thing was replicator blocks from Stargate SG-1. These are made from hundreds of little blocks, and a few people have these for sale on Shapeways. I ordered a few of them as originals, along with a starter moulding kit from Easy Composites. The kit is quite good, and comes with most things that you’ll need to do simple moulds. The only extra things that I ended up getting was some clay and mould release, but that was because I was going to be doing a two part mould.

This weekend's project.

Moulding and casting starter kit

It would be a waste of time going through the whole process of making moulds as there are plenty of tutorials and youtube videos on the various techniques. I just followed some of them, but I did learn a few things along the way.

Mold box built

Making a mould box

Base layer of clay ready

Base layer of clay in the box

This is the difficult part so far, making sure that the object is in place, and the seams are clean. Took a lot of work and will see how it comes out.

Pressed the blocks into the clay and made sure the edges were clean

Now just to wait for it to set, and then do the second part.

First half with the silicone poured in, waiting to set.

First part of mould done, eventually managed to dismantle the box I'd made. Note for next time, there is such a thing as too much hot glue.

First half set and deboxed

Clay removed and everything cleaned up, box remade, and second half of mould poured.

Reboxed. and second half poured.

So, first attempt didn't go too well. Did learn a lot tho. Need to come up with a better way to make the mould box (or don't use as much glue), don't make the keys too deep, more mould release when doing the second part of the mould, and make bigger pour entry points. May also join the pieces together with a sprue in the next attempt.

Right one turned out ok with a few air pockets. I ran out of resin on the left one.

With the mould done, I did my first attempt at casting. Whilst it didn’t turn out particularly well, it wasn’t the great big mess I was expecting. I hadn’t taken into account the amount of spillage when I poured into the mould, mainly due to the small entry point, so ran out of resin on the second block.

I’m going to remake the mould now, taking into account a few things that I learnt on the way, along with some tips from experts.

  • Make the mould box differently. I used acrylic and a hot glue gun which made it very hard to dismantle. I think I’ll use clay for my next one as I should have enough of it.
  • Do the base of the mould first, and press the parts into it before making the box round it. Was difficult to get in to make a clean seam.
  • Don’t make the key marks for the two moulds too deep. I did stupidly small deep holes first time, and it made it very hard to pull the mould apart, which leads to….
  • Use more release agent when pouring the second half of the mould.
  • Make the fill area bigger, and it needs vents to allow the air to come out. It has also been suggested to use an injection technique with a syringe to force the resin into the gaps.
  • Make more resin than I think. Its also hard to make small batches, so my next mould might incorporate all four blocks I got from shapeways.

If I get the next one working well enough, it’ll be a production line I think. By my calculations, I’ll need about 200 blocks to make a standard replicator. I’ve also ordered some metal powder to use in the moulds to give the finished blocks a metallic look, along with some black and dark grey pigment which will hopefully mean less painting of the finished product.

R2D2 is all skin and bones

I recently got a nice parcel turn up at my door; my COM8B R2D2 frame. COM8 frames are one of the standard frames that are used by the R2 Builders club, with a number of different variations. I got the B, or budget, frame which is just a bare bones with nothing fancy to it.

A parcel is here Mmmm, packing peanuts! Shiny Aluminium

 

 

 

 

Assembly

The frame is really easy to assemble, as it is well machined and comes with some easy to follow instructions. It took less than an hour to put it all together, and at the end of it I had a nice looking frame. It also comes with handy mounting points for electronics. Some of the other features include a nice bracket for the dome motor, spring loaded to ensure a decent connection between the drive wheel or cog, and the dome. I’m just waiting for the charge bay panel to come through.

Assembled R2D2 frame

The next step was to work on the skins. I got these at the same time as I got the dome, and its been sitting gathering dust all this time. So far I’ve removed a few of the panels from the inner skins, but still have a lot more to cut out. Some of the seams are very thin, too thin for a hacksaw, so I have to be very careful with the cutting out. I may have to resort to the dremel to do these parts, but I’m loathe to do that as it could end up being very messy. There are some panels to remove from the front inner skin that aren’t pre-scored much like some of the inner dome was, so these need to be marked out and cut.

Skin test fit

For now I have drilled some of the mounting holes to attach the inner skin to the frame to give it a test fit. There are small 2mm gaps where the skins don’t meet, but from looking at other photos this is fairly standard and once the legs are on they hopefully won’t be noticed. I may end up filling them in a bit.

Test fit of front skins, both layers. Lots to cut out on both layers.

Test fit of inner rear skin. Need to cut out the rear door.

I’m just waiting for a nice day one weekend to finish the dome and do some cutting on the skins. Just a couple of holes to cut in dome, and a whole load of filing and sanding to make things fit properly. I have the hinges now so can start glueing those in and making the flaps work.

Slow progress, but it is at least progress

One Year of Solar

So, I’ve had my solar panels for a year now, and have just received my fourth cheque from British Gas for my Feed in Tariff and Export Tariff. So, in a year of having the panels, just those cheques alone have come to over £400, and that doesn’t take into account the money saved on my electric bills. British Gas have some nice tools for viewing usage, and from the following graph you can see just just how much my electric consumption went down compared to the previous year.

Screenshot - 050414 - 15:19:23

Summer months of course were extra good, especially July where I actually consumed next to nothing off the grid. Even the winter months show a little improvement. Rough calculations show my electric bills were approximately £300 less than the previous years.

So, what does this mean? Well, with the FiT money, Export Tariff money, and savings on my electric bill, I’m definitely on track for paying off the solar panels within the predicted 8 years. As electric prices go up, that figure may well improve somewhat too. I’m definitely glad I got them installed, I think it was a fantastic investment and certainly is going to be a better way of saving money in the long run.

Slicing my inner dome!

So, finally got some time on a weekend with nice weather to get outside with the inner dome and my Dremel. Whilst the dome set I got had a laser cut outer dome, the inner one was totally uncut. The aluminium domes come as an inner and outer to allow you to have the indent around each of the panels, and also lets you have a nice lip if you have the panels opening, which is something I want. Of course, this means lots of holes to cut. Any panels that are going to open have to be cut out, as well as all the holes for the lights and holo projectors (HP).

IMG_0182To start off with, all the holes were marked using the laser cut outer dome as a template. HP and light holes were to be the same size as the outer ones, but the opening panels need more of a lip. A tip I learnt from reading other builder’s logs was to use a large washer, and to put the marker pen in the center, then roll it around the edge of the opening. This gives you pretty much a perfect size for the lip. Next comes the scary part.

Cutting disc grave yard. They really don't last long, and some of the shattered. The larger ones broke in the center so were unusable.Cutting the dome! These things aren’t exactly cheap, and even worse they’re quite hard to come by, having to wait for runs to be done of them by the guys in the states. But, its got to be done so I got the Dremel and a whole bunch of fibreglass reinforced cutting discs for it. I needed a lot as the wear down extremely quickly. I went through over two dozen of them just on the dome. Thankfully I got plenty.

I found the easiest way to do it neatly was to do the large part of the cutting with the dremel, at least enough to make a cut a few cm long so that I could get the hacksaw into the hole. The hacksaw made a much cleaner cut with more control. The Dremel had a habit of biting in and running off a bit, which made some of the fine cuts a bit difficult. By far the hardest bits to do were the circles for which I ended up making a load of straight cuts through the center to form a star pattern, then gradually cut each of the prongs off. Once I had the main parts cut I attached all the cuts with a large file to take it to the lines I had drawn.

All the pie panels done now, along with the top HP. The metal on the spun domes is a fair bit thicker at the top. Just needs a load of filing and sanding to make smooth and safe.It took a good few hours to get through everything, but it was worth it. The holes are still a little rough and still need some sanding down with wet and dry. Also the circular holes all need to be made a little bigger. They were originally marked up to be the same size as the outer dome holes, but ideally they need to be at least a few mm bigger, especially the HPs. Another tip that I’ve found on the net is using a glass wine bottle to help with the sanding of the circular holes. Wrapping some wet and dry around the neck, you can sand in a circular motion to get an even hole.

Still left to do are the rear PSI holes, in both the inner and outer domes. It is the one outer hole that wasn’t pre-cut, so I need to be extra careful with the outer part. The current run of laser cut domes are a lot nicer, with the inner and outer ones laser cut and all just about ready to just polish and paint. Also, I think I’ve been fairly lucky with this dome, as a lot of people report having to cut the inner dome in half to get the inner and outer to fit together properly.

Finally got round to cutting some holes into R2's dome. He now has lights! :)Once the last PSI holes are cut I’ll be ready to bind the two domes together permanently, which is another scary one way step. I’m making sure I’ve as much done with them separate as possible to avoid damaging the outer dome with a slip of the Dremel. I still couldn’t resist having a test fit of the two domes and inserting some of the lighting. It looks pretty good.

Next main steps once its all bonded is to install the main radar eye which I’m hoping to bolt on to make it removable, and then I have to source a load of hinges which seem to be either very expensive, or hard to find.

All in all, a good weekend of work. I would’ve like to do more but due to losing an hour due to the clocks changing, an early morning call from work, and Mother’s Day, I didn’t have much time on the Sunday to do much. Fingers crossed for nice weather again next week to finish off the Dremel work outside. I might also make a start on the skins too.

 

Inside Out

So, I seem to be building R2 in the reverse of how most people build their versions. Whilst I started with the dome due to finding a good deal, I’ve spent most of my time working on his internals and very little on the actual physical droid. Since my last post back in August regarding R2’s brain, I’ve done a lot of work on how everything will tie together to do the control. My current working idea is to have an i2c bus running throughout as R2’s central nervous system both sending out commands, and receiving feedback.R2D2_Electronics_Block_Diagram

The main control is still going to be a Raspberry Pi as this gives me much more range to do some interesting things later such as voice recognition, as well as letting me experiment with lots of different ways to actually control R2. I’m still thinking of using a PS3 controller as input, but also thinking of using a wii nunchuck is possible as a much smaller one to control simple operations.

The Pi will be linked via i2c to the various modules such as the servo controllers mentioned in my last post, with one in the dome and one in the body, and also to the lighting systems with Arduinos programmed to receive the signals to trigger various effects. I’m using BHD‘s Arduino code for the TeeCees lights in the dome at the moment, with just minor changes to accept the i2c signals. I may write something at a later date to do more dynamic light displays such as free form text messages to scroll across the RLD, but for now this is more than adequate.

Communication between the spinning dome and body will be through a 6 wire slip ring connector. 2 wires will be enough for the data signal, and then I will pair up the others to provide the power. I’ll probably have to go for two separate 5V supplies to the dome, one for electronics and one for servos as there will more than likely be a lot of noise coming over the servo power lines as they move.

PDUPower for all the electronics will come from a simple USB battery pack, which in turn will be plugged into the power distribution board I have designed. The PDU will take in a raw input from the sealed lead acid battery (or batteries) and produce clean 5v and 12v outputs, as well as a raw output direct to the speed controllers. The PDU also incorporates a few other features such as connectors for volt/amp meters that will be behind a panel on the front of R2, a voltage divider to allow the charge bay lights to function as a crude charge display for the batteries, and also a relay cut off for recharging R2. The last means that I can safely plug R2 into the charger (via an XLR connector), which will pull power going to the rest of the circuits. Lastly, there is the main power switch to kill power from the battery. There is a diode across the switch however which should allow any charge coming from the speed controllers to go back into the battery. This is a feature of the speed controllers to allow regenerative breaking.

The clean 12v will be used to power the audio amplifier. What is R2 without a few beeps and whistles?

I’m just waiting on the PCBs to come back from OSHPark, so I can try them out. Hopefully I managed to get most of it right and I haven’t seriously miscalculated the current draw from the batteries. I don’t want any tracks melting off the board!

Code wise, I’ve done quite a drastic rewrite of the controlling software to make it much more object oriented. Each different module (servos, audio, lights, etc.) is a module with a command keyword associated with it. This means adding new modules (LCD screen, extra lighting, drinks dispenser…) should be easy and just a case of creating a config file and possibly a class file if its a new type of module. All the code is available at github, along with the schematics and board diagrams of the PDU. The PDU is also available to get direct from OSHPark.

Fingers crossed I may be getting a few parts to build the actual droid with soon, including the feet, which means I now have to figure out a drive system for him. Mechanics isn’t exactly my strong suit, so should be interesting. 🙂

Are you being served?

Ok, so along with my R2, a side project is something that will hopefully fit inside of R2 and make him even more popular. To reprise his role in Return of the Jedi he will be serving drinks, and not just glasses from a fancy tray bolted to his shoulders. He will be able to mix a drink for you and dispense it into your glass.

The idea is, to have a bunch of reservoirs in a caddy inside R2’s main body, with pipes to an automatic arm that will open a door and raise, allowing you to put your drink under it. My design so far allows for five bottles, with peristaltic pumps from adafruit (via a UK reseller, Phenoptix), some L293D motor drivers, a TLC5940 PWM driver, and an Arduino Pro mini. I still have a long way to go on the design, but I have managed to the main module constructed and the pumps installed. I’ve also got a first revision of the circuit schematic worked out, along with a PCB layout that I’ve ordered from OSHPark.

Pumps

A closeup of the pumps

The main unit is made from a series of laser cut acrylic sheets, with a central threaded rod as the main shaft. The bottle tops still need holes for the tubing to go into, and the lids will be glued to the acrylic. Refilling will be done by removing the bottom plate and unscrewing the bottles. I also need to figure out ideas to check for the fluid level so I get notified when a bottle is nearly empty.

The main control for selecting the drinks will be handled by a Raspberry Pi, talking over i2c to the arduino to control the motors. This will allow me to do an embedded web server for selecting the drinks, depending on what options are available. R2 will also have most of his communication done over i2c which will allow the drinks dispenser tie into that and control the door and dispensing arm. Other future ideas are also having a few spare bottles and QR codes as labels on them so that I can automatically scan them in so that the Pi knows what drinks are available rather than having to key the data in manually.

Main unit

The main unit.

This is my first attempt at doing an actual useful PCB. Probably many errors and will need another couple of revisions, but it is a start. The Schematics and other files can be found on github here:

https://github.com/dpoulson/drinks_dispenser

And if you’re really bored and have money burning a hole in your pocket, then the latest revision of the PCB can be bought at OSHPark:

http://oshpark.com/profiles/DarrenP

Braaaaaaains!

So, whilst waiting for parts to turn up and paint to dry, I thought I’d make a start on the controls for R2. Simplest would be to just have the drive wheels, dome, and a couple of other bits controlled from a standard hobby RC controller. I’ve got a eight channel one and a few spare receivers so it would’ve been trivial to do that. However, I wanted something a bit more fancy. I’m wanting to have the panels on the dome to be controllable, as well as various controls for the main body panels, arms, fire extinguisher, etc.

My thoughts for this is to use a Raspberry Pi, along with a bunch of peripherals on an i2c bus. Adafruit do a nice i2c 16 channel servo board which a couple of should give enough channels to control everything I want. I will be putting one of these in the dome for all the various flaps, and another in the body for speed controllers and door mechanisms. Using a Pi will give me lots of power for doing controlling the servos and playing sounds, and hopefully I won’t need a real time OS. Future plans will involve voice recognition and maybe even facial recognition!

I’m also wanting to do this as modularly as possible, so to this end my first bit of programming was a daemon to run that listens for commands and sends signals over i2c to the servo controllers. My thinking behind this is that I can write many different interfaces for controls, from a simple web/PHP interface for testing and such like, to another interface to translate bluetooth signals from a PS3 controller. I’ll also be able to write a scripting system to do preset motions.

IMG_0397_CR2_embedded_1

I’ve put the code for my R2 Control software up on github to keep track of changes and such like. If anyone else feels the urge to use it, or even contribute, they are more than welcome to. I’m no programmer, so I may be going down the wrong path for all this, but its a learning experience. The code seems to work pretty well for now, but still needs to be tested in R2. Theres still a couple of things I need to add before I start doing any of the other programs. Currently the servos will move as fast as possible to their new position so I need to add a loop in there to allow different speeds. I also need to add support for multiple i2c addresses. I should have these things coded in fairly soon hopefully, and once my hinges for the dome turn up I can start installing it all and testing.

 

Polishing the dome

The R2 dome that I got actually consists of 2 domes, one to fit inside the other. The outer one comes pre laser cut to make things easier, with all the various panels held on by a small tab of metal. A quick run with a file or fine hacksaw makes them a doddle to remove. Both domes are produced by a method called metal spinning, which means they have ‘spin lines’ running around them. This doesn’t matter for the blank inner dome as it is mostly hidden, but the outer dome needs the lines polishing out of it to get the correct look. This is a lot of work with wet and dry paper, going from a pretty coarse grit, up to some really fine paper.

Starting with the 240 grit and a large bottle of water, giving the dome a good sand down will remove the spin lines and make the surface rough, but even. Moving up through the different grit ratings slowly (very slowly) smooths the surface over until you get to the 3000 grit. The side product of this is silver hands!

IMG_0171_CR2_embedded_1IMG_0176_CR2_embedded_1

It is all a slow and laborious process, but the end results are worth it. Whilst doing this work, the panels removed earlier needed painting, so a load of paper was laid out and the painting begun. I’ve been using Halfords car spray paints, starting with a grey primer to prep the surface, then a coat of Ford crystal blue, followed by Citroen poseidon blue, and finally a coat of laquer to protect it. It seems the trick is to do light coats, with a little bit of sanding in between with something like a 600 grit paper.

IMG_0148_CR2_embedded IMG_0170_CR2_embedded IMG_0179_CR2_embedded_1IMG_0385_CR2_embedded_1

The end results look really good. I applied a little too thick in a few places, but its all a learning experience for me. I’ve just got a little more polishing to do on the dome, and I need to mask off most of it to let me spray the ring around the bottom of it blue. The next stage is to start cutting the inner dome to allow the panels to open and things to come out. I’m a little apprehensive about doing it, but once I’ve started it it will be fine. But for now, a taster of how it will look:

IMG_0392_CR2_embedded_1 IMG_0395_CR2_embedded_1