Triffid (Three-wheeled Lego Mindstorms robot with omniwheels)

<p>I'm not sure if you allow Lego robots on this site, but here she is anyway.<p>

<p>Since getting into Lego Mindstorms I've made and subsequently dismantled several Lego bots with wheels and tracks (can't afford to keep them all), but this one's interesting enough to keep and develop further.</p>

<p>I started off making her with my old NXT brick, but discovered when it came to programming her that a) NXT bricks can't do trigonometry, and b) they can't do much else in the way of interesting maths either. I'll continue programming it in LABview when NI finally get around to supporting the new(ish) EV3 brick.</p>

<p>Doing anything even slightly advanced in the simple graphical IDE that Lego provides free for kids to programme Mindstorms robots with is frustrating in the extreme. The programme ends up literally metres long and keeping control of the whole thing becomes impractical (at least if your memory is as bad as mine is post-encephalitis, and I hope for your sake it isn't).</p>

<p>So she bounces off the walls on her touch sensors atm where I don't have enough ultrasound or IR sensors to go round, and otherwise manages to scoot around the house all right, tormenting the dogs and amusing the husband (he's a tolerant man … so far).</p>

<p>I have an idea of making a sort of treasure hunt with coloured paper, hence the colour sensor on the underside. Not sure how practical that is … </p>

Trigonometry mostly, so that it can decide where to go next. Also avoids obstacles …


This is a companion discussion topic for the original entry at https://community.robotshop.com/robots/show/triffid-three-wheeled-lego-mindstorms-robot-with-omniwheels

Sorry about the HTML tags …

If I include them they seem to show up in the finished page whichever HTML setting I use, and if I don’t, it ends up a solid slab of text, so I chose the lesser of two evils.

LEGO bots are definitely allowed. :slight_smile:

Our web dev is on sick leave at the moment, and, he has been in the midst of tearing down/rebuilding the site. One thing I have noticed is the text formatting bar appears when I preview my post. That seems to allow for proper formatting. Re: color sensor. “Our fearless leader”, frits, put together a color sensor some years back https://www.robotshop.com/letsmakerobots/node/1833 . It seems to be a different design from what you have, so, I can’t comment on how well one works vs the other.

If you run out of things to teach your bots to do, check out the challenges link at the top of the page. Obviously there will be some design specific challenges your robot can’t perform, but, at last recollection many should be possible.

The FritsLDR looks …

… like a pretty nuts and bolts design compared to my proprietary Lego sensor. Looks interesting though.

That challenges page looks good. Thanks for pointing me towards it.

alternitive to labview

if you are gettign frustrated with the lego software you could always try lejos http://www.lejos.org its a java implamentation for the mindstorms system, might let you try some more complicacted stuff.

It’s actually the hardware …

…which is limiting me. My software is LabVIEW which is very good, but the NXT brick can’t do trigonometry. Thanks for the suggestion though.

Not having trig is a pain

I’ve had a similar problem on a little microcontroller before. I’m not sure it will help in your case but its not too hard to use taylor series expansion (http://en.wikipedia.org/wiki/Taylor_series#List_of_Maclaurin_series_of_some_common_functions) using simple math expressions. For example here is a sin function in python using taylor series (sorry not sure how to post pretty code):

from numpy import sin

x = 5.0

 

def factorial(j):

“”“there is a built in factorial function but I’m showing how its done”""

output = 1.0

for k in range(1, j+1):

output = output * k

return output

 

 

def sin_Taylor_Series(x, n):

“”“return the sin of x using taylor series expansion with n iterations”""

y = 0.0

for i in range(n+1):

y = y + x**(2i + 1) * (-1)**i/factorial(2i + 1)

return y

 

print sin(x)

print sin_Taylor_Series(x, 9)

 

This outputs

-0.958924274663

-0.958933165197

 

Its accurate enough. 

Thanks for the suggestion …

… but my head swims just looking at it. I have a chronic neurological illness which prevents me from mentally tackling anything too new and difficult. Also, I’m using LabVIEW, which is a graphical programming environment.

No problem with Legos here
As long as you’re building robots, it doesn’t matter what you make them of.

I used Mindstorms to get me started in robotics over a decade or so ago. Yours looks much more advanced than mine ever did.

You might want to look into Mindstorms EVA (or something like that). I haven’t had the time or money to buy the set, but the review are good.

I, too, have a problem with starting new projects. This is due, in mycase, to depression. I congratulate you for doin what you have.

Good luck, and I hope you’re still reading this.