Thursday, August 30, 2012

Does the MINDSTORMS servo fits?

These are beliefs and wishes I and some others (I guess) have for long...

Looking at videos like those below (they are not even about major breakthroughs) it makes me believe we need a totally different set of servo motors for LEGO MINDSTORMS. It could be one, two new motors, but not much more for sure.
Relative to the actual status, I mean diversity, different characteristics (e.g. connectivity) and essentially different form factors (more compact, output shaft orientation diversity, double sided output, assembling options, etc).

And some more [1, 2, 3], among many others you could certainly find.


There are so many other types of models we should afford to create easily, and LEGO seems wasting such a great opportunity for long.
If not within the MINDSTORMS range of products, at least it is my belief we should aim for an upper level or different grade robotics line from LEGO.
You may say this wouldn't be in line with LEGO targets and business goals, but on the other hand the possibilities allowed by the LEGO beams and liftarms (or LEGO Technic in general) are really demanding for more. The possibilities are endless!
Backlash of LEGO plastic gears will remain an issue I know! And of course I'm not suggesting the usage of metallic gears...

If we think about humanoid robots currently in the market, we have seen very specialized offers and we are of course talking about a different league (performance and cost wise). Just one single servo for commercially available robots, can go from a few tenths to nearly 500 euros for the most sophisticated and performant ones.
However some of these principles should also apply to LEGO MINDSTORMS in a more contained scale. We might no get the same level of performance because LEGO structures are built of plastics, but we should have comparable level of functions and size, despite at lower speeds and mechanical accuracy (outside of the motors).

Below you can see a few images from the actual LMS and LPF servos


And here also similar motors, for different type of applications (RC Hobby and Robotics)

Take a look inside an advanced robotics servo.


I know that many things have been accomplished with current NXT servos, but almost always based on continuous circular movements of the motor, associated with linkages, beams, etc.
Many times this demands more creative mechanical and linkage solutions (which is good from certain POV), but also less scalable towards more complex and autonomous robots (which is not so good).

Besides a continuous running servo, I believe we also need more conventional hobby/robotics like servos, up to 90º, 180º or even 360º for different sort of applications. And this is where different and more convenient servo form factors will come into scene. I'd even ask for double sided shaft outputs (as we have seen in the last PF servo motor) with convenient form factors, which is not the case from the current NXT servo.
Such change would also open possibilities for more complex ways of designing and programing robots, beyond the LEGO MINDSTORMS target group/ages. But possibilities are never too much and someone is gonna use them for sure...

Despite Gaute having mentioned there are conflicting demands to address, I still dream with a day where LPF and LMS active elements get seamless integrated and compatible...


And what about daisy chain motor linkages? This is also a must, for cabling simplicity sake!
It would even allow the development of a smaller NXT brick, with fewer physical interfaces.


In resume... LEGO please gives us:
  • Still dual head servos with next generation NXT.
  • Convenient and compact form factor servos, with more versatile assembling options (additional pinhole connectivity points like in new PF motors).
  • Variants on output shaft direction, or possibility to conveniently attach motors to each other with different orientations.
  • Servo daisy chain connectivity for power and control lines.
  • Seamless integration between some LPF and LMS active elements.

It doesn't hurt to challenge the LEGO MINDSTORMS engineers... and it is still free to ask.

What do you think?
(just aiming to raise the discussion and create space for your thoughts)



PS: I've used mostly videos and images from Robotis.com (a robotics solutions manufacturer) as examples, but I could certainly have used some others in alternative or as a complement as well.

13 comments:

Wout Smeets said...

i like your thinking because i was bilding a robot yesterday and i was struggeling to put evryting in a small space

santi said...

Since the day I got my NXT set many years ago, I've been wishing for a smaller-form factor NST motor.

I even created a cuusoo rpoject, but it's not very popular :)

http://lego.cuusoo.com/ideas/view/575

Fernando Correia said...

Realize that I didn't mention small because it might not be feasible LEGO-wise for the NXT purposes.
However just a significant change in the form factor to be more similar to other servos, could be extremely helpful. :)

Menno Gorter said...

If only the PF could be extended to 7 wires... ;-)

At least one third party firm is on the right track with splitting up sensor and motor connected to one motor port.
(It's a pity their idea's don't have the Lego look.)
If that idea could be extended with an 360º encoder, ensuring to know directly the exact position without the cost of using an extra sensor port... (!)

Menno Gorter said...

I meant this:
http://www.rjmcnamara.com/2012/05/glidewheel-m-review
Besides the looks this is a perfect solution for almost any servo related Lego problems.
If the sensor gives directly the exact angle....
(And I mean here NOT counting degrees!)
So if TLC is willing to make a more Lego-like version. ( Please :-) )

Fernando Correia said...

I don't think you need to use an extra sensor port with GlideWheel, to set the PF motor into an exact angle via NXT.

It is indeed an alternative.
Although not the final solution I dream with, for a more friendly set of LMS motors.
IMHO renewed form factor (keeping the dual head) and daisy chain are indeed the main points to address. Almost everything else is already there.
Having done that, you could make NXT brick smaller (or create a specific smaller variant with fewer physical ports) and thus achieve easier integration with Technic.
Eventually even replacing LPF. :)

This is however not the seamless LPF/LMS integration I was referring into the original post.

Menno Gorter said...

Xander Soldaat told the GlideWheel has a counting-degrees-sensor.
So that isn't good enough for me, since it doesn't know immediately the exact position when starting a program... :-)
For the rest; this GlideWheel is a splendid idea since the choice of motor or gearing make a lot more possible than only a NXT-motor.

If it has to be a new all-in-one motor I think a 360º servo with a better encoder will be the best solution.
And if TLC is willing to make it a addressable bus version it would be very great too, of course!
Whatever shape it will have...

Fernando Correia said...

@Menno Gorter

From the review you linked above, it seems the Glidewheel works fine with the PF XL-motor, but not very well with the PF-M motor. :(

A daisy chain motor with addressable bus, would be great. However I'm afraid that TLG would think is as something strange and difficult for the children. :P

Menno Gorter said...

The counting type of sensor isn't very good in counting when it goes faster.
I'm sure it works fine if the medium (or large) motor is geared down and that's what I like about this idea; you're able to make lots of combinations.
Especially when a better type of encoder makes it sure to use only one motor port for each motorized function.
I like to have the sensor ports free for detecting obstacles, in stead of using them for positioning/synchronizing legs.

If TLC wants to compete with the increasing amount of bots, the Mindstorms system should be able to handle lots of motors and sensors at low costs!
A bus system is not bad, is it?
At least it's easy to make it compatible with the existing NXT and PF parts.

(I have maybe thousands of ideas to improve the actual NXT :-) )

BTW; if you want to challenge the TLC engineers, you shouldn't think about what they would think. :-)

Fernando Correia said...

LOL

Good point about what not to do if we want to challenge them. :D

Nevertheless at this point, this should be a challenge valid for 3-4 years ahead only.
By that time, they might become a lot more permissive for new ideas, as the toy and robotic markets should have experienced an huge leap ahead...

Mark Bellis said...

I agree that the current LMS motors are not ideal. They may allow a small-ish (24mm diameter) rotating part to go into the place where rotation is to be delivered but the bulky motor has to be accommodated. Also, as has been mentioned, the encoder accuracy is not good for large or fast movements. In that way it is trying to be both a continuous motor and a servo motor and I think the 2 functions should be split in the next generation of NXT actuators.

My limited use of the NXT is partly down to the motors. I prefer the ready interface and flexible modularity of the PF motors and receiver, with separate battery box and especially the new servo motor.

Difficulty fitting a lot into a small space is common to NXT, Technic, Trains and functional System models - right across the LEGO theme range. I have a diesel loco with L-motor for power, M-motor for gear change, IR receiver and LiPo battery box and it's a real squeeze, unavoidably over-length for the scale, and that's in 8+wide! LEGO electric parts have a handicap on function density because they always have to have a plastic skin over any metal parts inside. The skin helps reliability (plug and play without calibration) and makes the parts usable by a younger customer base.

How well have we tried using the new PF servo motor with the NXT? I've not seen many pictures of it. We can drive 8 PF servos from an IR link sensor. I tested that two could be controlled independently from a single IR Receiver. This means I can replace the set of [2 NXTs (communicating wirelessly) + 6 NXT motors + 6 Linear Actuators] with [1 NXT + 1 IR Link Sensor + 3 IR Receivers + 6 PF Servo Motors + cranks and links] for controlling a flight simulator Stewart Platform. It's a simpler setup with only 1 NXT.

The next issue is the PF servo motor itself. The torque is good but maybe not enough for robot legs to raise it from lying down to standing up. The control is open loop because separate sensors would be needed for the NXT to see the shaft positions. The form factor provides 2 shaft directions but is not ideal for a robot knee because it sticks out a lot further than a commercial servo. Nevertheless I think the PF Servo is a big step forward for LEGO - I have waited 17 years to do wireless multi-position car steering!

continued below...

Mark

Mark Bellis said...

Part 2:

Overall I think the next-gen NXT needs to move towards the PF system. We need a PF receiver that allows 1 NXT to control at least 16 receivers. NXT Bluetooth is limited to 3 channels so would WiFi do it? That way each receiver can have a local power supply (no current limit from central supply) and a remote command (can have NXT computer static or on the mothership).

We also need the signals to flow in the other direction - the WiFi node could have 2 sensor ports as well as the 2 motor ports, with bidirectional comms with the NXT. The V2 PF IR Receiver has better motor drive with the TI drv8833 chip so this chip should be OK for the new NXT system motor drives.

This takes the multiplexer concept and makes it wireless. One programmable NXT (small unit with screen and separate battery box) with up to 16 remote WiFi nodes, each node having 2 motor ports and 2 sensor ports. Nodes may have downloaded commands so that a sensor at a node may control a motor at the same node directly. A node would stop its motors if the comm link failed (to fulfil the RC car loss of control safety requirement).

With this system all current NXT models would be possible. It would also be possible for 1 NXT to control a swarm of mini-bots - fun and educational. 1-NXT football team competition anyone?

This would make the bus virtual and would not waste space and expense on more connectors. It is important to keep the command and control parts small and the actuators an appropriate size and shape for their function. If connectors are used then maybe a version of the smaller 4-way phone plug would be better. The cables would follow PF protocol for actuation; the sensors would receive the 9V and 0V and return either 5V serial comms or PF PWM signals on C1 and C2. PF could be driven directly and a 4-pin encoder sensor put on the motor shaft or any appropriate shaft to measure the position and speed.

Competitiveness for an acrobatic biped robot is down to small command & control, flexible leads and the actuators. Once NXT and PF dovetail more and use the same actuators more readily then the money spreads better so we could have more sizes of each type of actuator e.g. mini-servo because there is a wide range of commercial servo sizes.

For the encoder sensor I suggest the form factor of the PF M-motor and 2M long. As many bit of gray code as possible in that size but at least 128 steps per revolution would be nice (16 steps/rev for NXT motor needs gearing down to achieve accuracy - fast and accurate have been mutually exclusive so TLG need to improve on this).

A stepper motor (new PF and NXT actuator) might also be possible with 2 leads from the 2 ports of a PF IR receiver or a new NXT WiFi equivalent. The drv8833 chip is designed to drive a 2-phase bipolar stepper motor.

Mark

Fernando Correia said...

I fully support the NXT move towards PFS.
And step motor would be also a nice addition to the shelf. :)

Related Posts Plugin for WordPress, Blogger...



© 2007-2014 TechnicBRICKs
TechnicBRICKs contents may be sporadically updated, if the authors finds further relevant info about a certain post, or content/spell mistakes. Hence please don't be surprised if you find few changes at later visits, relative to a previous read.

TechnicBRICKs often shows other peoples' creations and/or images. We always try to credit the author(s) and link to their main publishing website, and if possible with their name in real life.
Since this is not always possible, we request that if you find something here that is yours or from someone you know, you leave a comment on the respective post and claim the authorship.

TechnicBRICKs is optimized for Firefox 16.0 and 1600x1200 resolution displays or wider.

LEGO® is a trademark of The LEGO Group of companies which does not sponsor, authorize or endorse this blog.
LEGO, the LEGO logo, the Brick and Knob configurations, the Minifigure and MINDSTORMS, are registered trademarks of The LEGO Group.
Original LEGO images are copyrighted by The LEGO Group and are used here in accordance with their fair play policy.
You can visit the official LEGO® website at www.LEGO.com.