Monday, 10 October 2011

Update

It's been far too long since my previous post so I'm just throwing in a quick update about the ScoCopTer and then a bit of information about future projects I have planned.

The ScoCopTer V3 was programmed nicely and I had a successful scanner, however because of the placement of the feeding mechanism I lost almost an inch on the margins. So I have decided to scrap this version again, and build it with the feeding mechanism slightly behind the scanning part so it can scan the whole width of the page. I also need to make the rack which the scanning module moves across a lot wider so there's enough space to easily accommodate two motors without it being too wide.

I have just received my linear actuator in the post which makes the raising and lowering of the pen a lot easier and I am toying with the idea of a special mechanism for the pen and colour sensor module which I may experiment with over the next few days.

Hopefully I will be able to properly get to work on the new ScoCopTer over the weekend, I've just had so much homework at the moment it's been hard to find time.

Over the past few weeks I have been developing a list of projects that I would like to complete in the next couple of years, I will provide a little bit of information about each one as I go through:


  • A colour sorter - This is a must for all NXT owners, it's a machine that I have always been interested in but it was exceptionally difficult with the RIS light sensor which only sensed black/white so getting colours was difficult and I wasn't experienced to make my own home-brew sensors, however now there's a colour sensor this is a lot easier and there are so many possible mechanisms for a colour sorter that it will be great fun to try out.
  • A domino layer - I want to make a model that will follow say a black line and lay dominoes along it's course, or for a line to be drawn on the computer and the robot to lay them.
  • A stair climber - I have always been interested in the various methods used to climb stairs by robots and I want to experiment with my own to see what I find to be the most efficient.
  • A hexapod - I don't want a hexapod that's connected to gears with rods, I want to try and create a much more mechanical walker, perhaps taking inspiration from Theo Jansen's design.
  • A biped - Bipeds have always been a huge challenge to make out of lego and I've never successfully been able to make one, but nevertheless I would like to have a go and see if I can change all that. 
  • A transforming robot - This is very much an optimistic idea but I would like to try and create a project that can start as say a car/tank and then transform into a humanoid or something else. 
  • 4x4 truck with suspension - A nice compact 4x4 has always been an idea lingering in the back of my mind and it'll be interesting to try and make compact with the size of the motors and NXT itself.
For now this is all the ideas i've got, but I'm sure I'll think of more over the next few months, and it's certainly enough to get me started!

S

Monday, 26 September 2011

ScoCopTer (Feeder) V3

I realised while making the 3rd version of the ScoCopTer that I hadn't given a moments thought to the program and how difficult it will be to store the image in the NXT's memory as for one thing I am a complete amateur when it comes to programming having only dabbled in visual basic, and a little bit of C#. So I decided rather than dive head first into the photocopier I would just slow down a bit and make a Scanner first, program it and practice making the scanner as efficient as possible. Then I will make a plotter and experiment with making more complicated images, maybe print images from a computer in black and white onto the paper. The good thing about the Scanner and the Plotter is that they can both use the same base to move the paper and have the platform for the scanning/pen module to move across. This base module is what this update is about.

As you can see I've had two previous attempts at the ScoCopTer so I have learned some of the fundamental things about the design, and which methods are better than others for feeding the paper etc. I also decided to abide by KISS (Keep it simple, stupid) and as I still very new to the NXT system I am going to use all my Lego pieces with no limitations to give me a sturdy, well designed paper feeding module and I won't have to worry about not having enough pieces because I was only using NXT 2.0 parts.

The whole robot building is a learning process, and I've always dived in without looking closely at what I'm diving into, and it's only when I hit the bottom that I know next time to be a bit more careful and take things a bit more slowly. So from my original plan of a Photocopier/Scanner/Plotter all in one robot built from parts only from the NXT 2.0 set I have stepped back to a Scanner or Plotter using as many pieces as I need. Then when I have completely mastered the Scanner and Plotter I can move onto trying to combine the two to produce a working photocopier. One day I will learn that it's easier to start at the basics and build your way up rather that jump off a plane and hope to land at the top.

So clichés over, onto the Feeding Module (Feeder from now on), on the previous version the beams connecting the two ends of the feeder together was a lot stronger, but I found it awkward with both the motor and NXT at one end which made it look slightly out of proportion and the far end was a lot weaker than the side with the NXT. So I decided on this version I would have the motor at the opposite end to the NXT. Also with the previous version I tried to have the NXT mounted on top of the feeder which I was doing to try and allow the user to see the scanned image more easily, but in practice this was impractical because the NXT got in the way of the paper as it was being fed through, so this time I mounted the NXT on the end.

Here you can see a photo of the whole Feeder V3 before I look more closely at some areas of it;

Here you can see the overall model looks quite good and both ends are quite well balanced in terms of size and it's also very strong, I can pick it up from either end without it bending at all. Now I have allowed myself access to all my pieces I can use the small 'pulley' wheels on top of the main wheels to provide permanent friction on the paper as it's fed through but as the wheels can rotate that paper doesn't crumple or get stuck against it. The angled beam that the paper comes off is also a lot better than the last version as it isn't restricted be beams above it, or the NXT.

The drive for the feeder comes from the motor on the right which is geared from the motor 3:1 which obviously means there is more torque and less speed which is ideal for feeding paper. The motor is attached in a gear train form the motor going 8t:24t:8t:24t (t=teeth) and you can just about see this in the photo to the right.

In the way of the gear train you can see all the bracing that is used to lock the motor end together.

As well as the motor driving the wheels I also needed to attach some sensors so the robot knows when paper has been inserted, and also when the module riding across the top has hit one end so the rotation count could be reset so no error was carried forward. As in the previous version I used the ultrasonic sensor to detect when paper had been inserted and this was fairly simply connected to the middle of the structure, it also provided more support for when the machine was on a flat table and helped stop the middle from sagging. At the end with the NXT I have got a touch sensor which works with a quite simple mechanism to trigger it when either the pen or scanning module touches it. The touch sensor then bounces back into place with the use of an elastic band, and this took a surprisingly large amount of readjusting to get it to bounce back just right.
In this photo you can also clearly see where how I have used two wheels to to hold the paper in place, the top wheel is on a pivot that is held down by an elastic band - you can just about see the peg with the elastic band on the end of the 5 hole beam.

I have written a couple of short programs to test the feeder module and the only problem I have found so far is that the ultrasonic sensor doesn't really notice when the paper is less than 10cm away, it just has some problems keeping the motors going, so I may have to tweak this slightly or come up with a new plan altogether. But for now I'm going to work on the scanner module and hopefully I will have that built and programmed in the next week or so.

S

Thursday, 22 September 2011

My NXT Scanner/Photocopier/Plotter V2

Sorry it's been a while since I posted on here, I have had so much school work i've struggled to find time to play with lego, let alone update the blog.

About this time last week I completed V2 of the All-in-One Scanner thing, which now thinking about it really needs a better name, so i'll call it the Sco-Cop-Ter from now on just to make it easier. The construction of V2 actually went very well and the final model was considerably stronger than the previous model, and also looked a lot better in my opinion.

However because it was stronger and better looking didn't mean it was functional, and that's where the problems began to start. The problems I had with the V2 are first I simply could not attach sensors where I needed them so I would not be able to tell where the robot or be able to reset it.

Here on the right you can see the design of this model. As you can see I had the motors placed vertically to try and minimise the lengths of the module and it worked fairly well, but unfortunately when programming I had no way of knowing whether the pen was up or down and no way to reset it because it was so difficult to attach any sensors. An ideal solution would be to have pneumatics/a linear actuator that could lower and raise the pen directly which also means I would not need to was space on the module with the awkwardly shaped motors.

Another problem I had with this model is that it really struggled to keep paper straight when it was fed through and it always crinkled. Below you can see the rear end of the paper feeder, and as you can see I have used the ultrasonic sensor to sense when paper is placed there and it will start turning the wheels to feed the paper.
Above each wheel is one of the angled beams which are pivoted and are held firmly against the wheels by rubber bands to keep the friction enough to keep the paper moving.

You can also see in this photo how I kept the pen module running perfectly straight across the width of the ScoCopTer. I used two 11 beams locked parallel to each other which successfully allowed the module to move back and forth nicely. But what I did not foresee is the beams catching on the 90 degree angle beams.

So this V2 version, although considerably better than V1 is still not really suitable for programming quite yet as there are still quite a few construction details that need to be ironed out first.

As this post has actually taken me so long to post I have in fact already built the base of the V3 module and all the sensors are already implemented and it is able to feed paper properly. But more details about that should, hopefully, be up over the weekend depending on the homework situation.

Sunday, 4 September 2011

My NXT Scanner/Photocopier/Plotter V1

I've now had the Lego NXT set for just over a week and having done all the basic models I decided it was time to attempt something of my own. I attempted a Scanner earlier in the week and realised the programming for one is actually fairly simple and works quite nicely. As it was such a simple program I've decided to up the game a bit by trying to build a scanner that will store the coordinates in it's memory and then use it later on in the program to produce a photo copy of the original image. There are a few robots out there that produce a photocopy by having a pen run in parallel with the light sensor so when the light sensor senses black then the pen goes down, and when it sees white it goes back up again. This isn't really a photocopier but nonetheless it still works well and produces an accurate image.

I have spent about 3 days building this preliminary version of the scanner/photocopier and I decided that one of the big things i want to stick by is that I will only use pieces in the NXT 2.0 set so anyone can make it. There is a printer in 'The Unofficial LEGO MINDSTORMS NXT 2.0 Inventors Guide' by David J Perdue and Laurens Valk which uses just parts found in the set however it does not have the colour sensor attachment, you can see a video pf this printer in action here:
 http://www.youtube.com/watch?v=tNp62EfaJ60.

My first attempt at this model was not that great really, it was just to see if I could produce a scanner with the NXT 2.0 parts. The problem I had with my model is that the paper doesn't feed straight every time and the bar across the top sags slightly under the weight of the motors. Also the general build quality of the frame is very poor and not very strong at all. Below you can see an image of my first attempt.

Sorry about the camera quality the future photos should be better.
I'm going to completely scrap this model I think and the next model will have the motors vertically in the pen module to keep the length of the module as short as possible. I will also completely reconstruct the frame to make it a lot stronger. 

So hopefully in a few days I will have a stronger scanner that I can then start to program.

S

Tuesday, 30 August 2011

Introduction

Hello everyone,

Welcome to my blog, this is my first attempt at a blog so I hope you enjoy it and have a look around. By the time you are looking at this I hope I have uploaded some of  my robots.

Anyway, a little bit about myself, I am a 16 year old kid and I have just recently rediscovered my love for Lego Robotics. I used to have two sets of the R.I.S. 2.0 (Robotic Invention System - the version before the NXT came out) but unfortunately I had to sell them in order to raise funds for a school trip. Also, when I had the old lego robotic system I was really too young to make full use of the capabilities of the RCX and therefore did not use it to it's full potential. I think my most ambitious project was a robotic arm with 4 D.O.F (gripper, wrist, shoulder, base rotation) unfortunately I could never make the robot strong enough to left it's own weight and I could not write a program sufficient enough to run the arm efficiently, I didn't know how to use variables so the program relied on rough timings and the occasional sign of a touch sensor, this obviously meant the robotic arm was a bit of a failure. I hope my projects will develop to be more robust, functional and efficient.

My aim is to firstly become efficient with the NXT-G programming software that's provided with the NXT, and then I hope to venture into either RobotC, or NXC to give my robots more flexibility and truly maximise the potential of the NXT brick.

My first project post maybe be a few weeks away, maybe months, as I get used to the NXT software and the new building techniques that come with the Technic bricks. The old R.I.S. system used traditional studded Lego bricks which could be stacked on each other to build up a 3D structure, but on the NXT system the studs are gone which makes it slightly harder to stack them. However from the models I've built so far with the NXT instructions the pieces allow much more diverse models to be made and they have much less 'bricky' structures which give all the robots and cleaner, smarter and more robotic look. The NXT-G software is also a lot more advanced than the old programming software and looks a lot more professional. However, I have found while I've been adapting the sample programs that the software can be very glitchy if you don't do things in a chronological order then the software gets all wired up, but I'm sure in time I'll get used to it and learn how to work round it.

So that's all I have to say for now, hopefully the next time I post it will be my first independent project and over time I hope you will be able to see my projects develop and become more advanced. Well, that's the overall aim.

Thank you for looking at my blog,

S


"Anyone who has never made a mistake has never tried anything new. "- Albert Einstein