Interfacing NXT brick with external stepping motor

News, rumors, and other broad discussion topics.
Post Reply
mattduff91
Posts: 5
Joined: 29 Apr 2011, 08:09

Interfacing NXT brick with external stepping motor

Post by mattduff91 »

Hi I'm a student who's using NXT Mindstorm 2.0 in a project and have had some troubles with getting the required torque that I need to rotate a 40cm arm of about 500-1000g from the NXT motors. I was wondering if any one here has tried to interface a motor that isn't from NXT to the NXT brick? I've noticed that the NXT motors are 6 pin stepping motors, but I don't know where to find information on the motors input voltage or current.

What I need to know is if I connect a motor such as the one from the link below (12VDC, 1.1A), will it run the same as the NXT motor? Do I need to find a motor with the same input voltage and current as the NXT stepping motor?

http://www.jaycar.com.au/productView.as ... BCATID=306

A second question I have is whether it would be possible to create a gear system with the gears provided to step down the speed and step up the torque to achieve the required torque that i need? I have played around with this, although the way I put the gears together it kept slipping. I'm guessing because my design was flimsy. Any tutorials on how to put together a solid gearbox to step up torque would be great
timpattinson
Posts: 224
Joined: 30 Oct 2010, 04:10
Location: 127.0.0.1
Contact:

Re: Interfacing NXT brick with external stepping motor

Post by timpattinson »

mattduff91 wrote:I've noticed that the NXT motors are 6 pin stepping motors, but I don't know where to find information on the motors input voltage or current.
The NXT motors are just standard 9v motors and encoders. The pins are like this:
White: motor 1
Black: motor 2
Red: ground
Green: 4.3v (for tacho)
Yellow: Tacho1 (be careful - connected to CPU)
Blue: Tacho2 (be careful - connected to CPU)
-Tim
ps. be careful what you hook up to the brick: the motor drivers are weak.
EDIT: for more info on the NXT motors check out this site and this book
http://www.philohome.com/nxtmotor/nxtmotor.htm
http://www.philohome.com/nxt.htm
http://www.amazon.com/Extreme-NXT-Exten ... 190&sr=1-1
Commit to Lego Mindstorms StackExchange Q&A http://area51.stackexchange.com/proposals/4105
Minboards IRC Channel #mindboards on Freenode
My blog: http://timpattinson.wordpress.com/
h-g-t
Posts: 552
Joined: 07 Jan 2011, 08:59
Location: Albania

Re: Interfacing NXT brick with external stepping motor

Post by h-g-t »

I have been considering the use of stepper motors but, as yet, have never actually connected one up so am by no means an expert on the subject. The main problem I can see is that you lose the built-in rotation encoder when you move away from Lego motors. I suppose you can count the pulses sent to the motor and use that to determine how much movement has taken place.

You will have to drive the motors through an interface connected to one of the sensor ports. The first part of the interface takes the I2C signals from the NXT (http://www.futurlec.com/Mini_PCF8574.shtml) and the second drives the motor controller. If you are using a geared motor which does not draw much current you can probably get away with using a digital chip as the motor driver but heavy use will require separate power transistors.

The first interface will draw power from the NXT. I don't know if you would also get away with using the NXT for the motor driver electronics but motors will definitely require an external power supply. This is partly because the NXT can only provide a very small current but also because the motors need a much higher voltage.

I have come across the following sites which might be helpful

http://www.egr.msu.edu/classes/ece480/c ... 0Ralph.pdf

http://www.tau.ac.il/~stoledo/lego/i2c-8574/

http://www.tau.ac.il/~stoledo/lego/Stepper/

http://www.stepperstuff.com/estoc.html

http://talkingelectronics.com/projects/ ... Motor.html

http://www.extremenxt.com/stepper.html

Of course, you do not have to use stepper motors as both relays (which can be driven by the motor ports) and mosfets can be used to drive standard brushed electric motors. These subjects are addressed in the 'Extreme NXT' book recommended in the post above. In such cases you would have to provide external rotation sensors, which would require additional sensor ports. You might then need to get a sensor port multiplexer as well.

With regard to gears, I have never had a gear slip, were you using the bevel gears? I never liked the look of them and always avoided them. When using 'normal' gears you can always put two or even three gears on each axle to spread the load out between them. There is a Lego tutorial here which discusses gears :-

http://www.clear.rice.edu/elec201/Book/legos.html

I find an easy way is to use the Lego turntable with a worm drive. This gives you a 56:1 ratio with only a few moving parts. It also has the advantage that it will not 'run back' like a normal gear train so you do not have to keep the motor powered up when not moving the load. if you are not worried about speed, you can put a gear wheel on the axle driving the worm and drive that gear by another worm. Using a 24 tooth gear you would then get a ratio of 1,344:1. Of course, the load might never reach it's destination in your lifetime at that reduced speed.......

I have used the Lego motors to lift a weight of 755gm at 40mm from the pivot using the turntable and I think that was well within the limits of the Lego motor, which could (in theory) lift about 7 times that weight if there were no friction. Not sure about your 1kg at 400mm though.
A sophistical rhetorician, inebriated with the exuberance of his own verbosity, and gifted with an egotistical imagination that can at all times command an interminable and inconsistent series of arguments to malign an opponent and to glorify himself.
mattallen37
Posts: 1818
Joined: 02 Oct 2010, 02:19
Location: Michigan USA
Contact:

Re: Interfacing NXT brick with external stepping motor

Post by mattallen37 »

As mentioned, the NXT motors are not steppers, and it is rare that people interface a stepper to the NXT. Would you mind telling us why you need a stepper? I personally much prefer a servo or motor with encoder feedback.

If you are looking to make your own interface, a SN754410 driver should work really well for handling the power. A PCF8574 would work for the signals, but you would be limited by I2C speed. I would use a U-Controller as an I2C slave to run it.

You are gonna need quite the structure to get that kind of torque out of legos. 1kg @ 40cm is far more than I have ever attempted. However, a counterweight could really help.

As long as you gear it right, the NXT motor should be able to lift anything.
Matt
http://mattallen37.wordpress.com/

I'm all for gun control... that's why I use both hands when shooting ;)
mattduff91
Posts: 5
Joined: 29 Apr 2011, 08:09

Re: Interfacing NXT brick with external stepping motor

Post by mattduff91 »

mattallen37 wrote:As mentioned, the NXT motors are not steppers, and it is rare that people interface a stepper to the NXT. Would you mind telling us why you need a stepper? I personally much prefer a servo or motor with encoder feedback.

If you are looking to make your own interface, a SN754410 driver should work really well for handling the power. A PCF8574 would work for the signals, but you would be limited by I2C speed. I would use a U-Controller as an I2C slave to run it.

You are gonna need quite the structure to get that kind of torque out of legos. 1kg @ 40cm is far more than I have ever attempted. However, a counterweight could really help.

As long as you gear it right, the NXT motor should be able to lift anything.
Thanks for your reply Matt. I thought that I had read somewhere that the NXT motors were stepper so I assumed that's what we needed but you obviously know a whole lot more about mechatronics than me so I'm going to take your advice :P

I should have another go with making a gear box out of the lego gears
mattduff91
Posts: 5
Joined: 29 Apr 2011, 08:09

Re: Interfacing NXT brick with external stepping motor

Post by mattduff91 »

mattallen37 wrote:As mentioned, the NXT motors are not steppers, and it is rare that people interface a stepper to the NXT. Would you mind telling us why you need a stepper? I personally much prefer a servo or motor with encoder feedback.

If you are looking to make your own interface, a SN754410 driver should work really well for handling the power. A PCF8574 would work for the signals, but you would be limited by I2C speed. I would use a U-Controller as an I2C slave to run it.

You are gonna need quite the structure to get that kind of torque out of legos. 1kg @ 40cm is far more than I have ever attempted. However, a counterweight could really help.

As long as you gear it right, the NXT motor should be able to lift anything.
Thanks for your reply Matt. I thought that I had read somewhere that the NXT motors were stepper so I assumed that's what we needed but you obviously know a whole lot more about mechatronics than me so I'm going to take your advice :P

I should have another go with making a gear box out of the lego gears
nxtreme
Posts: 246
Joined: 29 Sep 2010, 03:53
Location: 192.168.1.2

Re: Interfacing NXT brick with external stepping motor

Post by nxtreme »

It is quite possible to make something like what you want out of Technic, if you have at least two turntables, lots and lots of gears, and lots of beams. Here are two examples of what your (probably) best bet for a hinge for the huge arm you want.

When I built something like that, I connected the four 16 tooth gears that mesh with the TT to a huge network of 8 & 40 tooth gears on the back of the assembly, so that all the gears spread the weight around on each-other. I imagine that each one could support at least a kilo at ~30 cm, and together at least 3 kilos at ~30 cm. You'll really have to gear it down, and if you make a mistake in programming it will tear itself to shreds, if it doesn't kill you first, but it's possible.
One King to rule them all, One King to find them,
One King to bring them all and in the darkness bind them
On Earth where Shadows lie.
doc222
Posts: 117
Joined: 29 Sep 2010, 03:02
Contact:

Re: Interfacing NXT brick with external stepping motor

Post by doc222 »

That tritrax design is very old. In X2 you will find a much more powerfull set up. X2 when it does a deep knee bend on one leg thats 9 pounds on that joint. Mainly its about 'redundant" gear trains. But yes very easy this can be done, well easy perhaps not but it can be done. Remember Dad and adams bot that lifted almost 100pounds and was able to lift and carry it 1 meter and set it down. very cool

doc
"Anyone who has never made a mistake has never tried anything new."
Albert Einstein
Post Reply

Who is online

Users browsing this forum: No registered users and 18 guests