Software > Software

Any one of u got idea about fuzzy logic?

(1/5) > >>

bonomonod:
Any one of u got idea about fuzzy logic? would u guys mind to share ur idea? fuzzy logic for robot,  how to implement it?

JesseWelling:
My first robot was ussed fuzzy logic (even though I didn't realize it at the time).

Here is what I did.
I had 2 Sharp IR range Finders and my goal was to get a differential dirve
robot to wonder around with out hitting any thing. Sharp IR's read from
low voltage at long distance to high voltage at short distance. So what
I did was mount two of them on my robot looking across the nose so the
crossed infront much like this picture:

So I fed the inverted value (which was now big for a long distance
and small for a short distance) to the motor speed for that side
(left IR looks right and gives motor value to left motor) and shazam you
have a robot that steers away from objects. I added a little bit of offset so
that if an object was closer than x distance the motor would turn in reverse
and it ran away from objects even better.

It was a simple bot that I programed in assembly on a pic controller.
Personaly I don't recomend Pics any more because the arn't that powerfull
as far as micro controllers go and development can only be done cheeply in assembly.

JesseWelling:
http://www.societyofrobots.com/programming_fuzzy_logic.shtml

and while I havn't gotten a chance to look at it here is a C++ library for fuzy logic:
http://ffll.sourceforge.net/

bonomonod:
hmm, ur bot is interesting, by positioning in different angle and invert the signal into normalize condition which easy to be understand by all, well, i got what u mean, but basically how do u apply to fuzzy logic? how u obtain the signal changes in terms of resolution but not digital 1 or 0? is it with the aid of ADC? thx for sharing~

JesseWelling:
yea generally you would use ADC or some other kind of quantitative measuring process.
Say you only have on and off for some kind of sensor. Well if you wanted to use fuzzy controll based on that,
what you could do is to take a sample at a certain rate and average it out.

That's purely hypothetical situation but you get the idea.