Aw too bad. Not fuzzy logic, just fuzzy thinking. +ADw-G+AD4- +ACI-Active Stochastic noise cancellation system+ACI- sounds really cool, though. Maybe I'll use that. -----Original Message----- From: Stephan Kotze +ADw-stephank+AEA-iafrica.com+AD4- To: Lawrence Lile +ADw-lilel+AEA-toastmaster.com+AD4- Date: Sunday, January 02, 2000 11:52 AM Subject: Re: Is This Fuzzy Logic? +AD4-Apologies for taking so long to reply, still recovering from celebrations. +AD4-what you actually have there is an active stochastic noise cancellation +AD4-system. very close to a Fast Fourier transform algorithm (your basically +AD4-extracting a fundemental frequency). Systems like this use a learning +AD4-algoritm (high end DSP's) to actively adapt. Your system has it hard coded +AD4-by you. +AD4-Sorry, its not fuzzy logic +AD4- +AD4-Stephan +AD4------ Original Message ----- +AD4-From: Lawrence Lile +ADw-lilel+AEA-TOASTMASTER.COM+AD4- +AD4-To: +ADw-PICLIST+AEA-MITVMA.MIT.EDU+AD4- +AD4-Sent: Thursday, December 30, 1999 4:51 PM +AD4-Subject: Is This Fuzzy Logic? +AD4- +AD4- +AD4APg- Stephan, +AD4APg- +AD4APg- +AD4APg- I wrote a very successful program that I claimed used Fuzzy Logic, but I +AD4APg- really have no idea if this fits the definition. As you wrote your +AD4APg- dissertation on the subject, you can probably answer with authority: Is +AD4APg- This Fuzzy? Here's a synopsis: +AD4APg- +AD4APg- I am measuring a very noisy signal, represented at my PIC by a +AD4-capacitance. +AD4APg- Using AN512 techniques, I turn this into an RC time delay measured at the +AD4APg- TMR0 input. My program waits around looking for a TMR0 increment, like +AD4-this +AD4APg- pseudocode: +AD4APg- +AD4APg- +AD4APg- +ADsAOwA7- Measurement - wait for TMR0 to go to 1 +AD4APg- TMR0 +AD0- 0+ADs- +AD4APg- if TMR0 +AD0- 1 +AD4APg- goto +ACM-1 +AD4APg- if TRM0 +AD0- 1 +AD4APg- goto +ACM-2 +AD4APg- ....... etc. etc. +AD4APg- if TRM0 +AD0- 18 +AD4APg- Goto +ACM-18 +AD4APg- +AD4APg- +ADsAOwA7- Assign wieghts to each measurement +AD4APg- +AD4APg- +ACM-1 Weight +AD0- 1 +AD4APg- goto analyze+AF8-weight +AD4APg- +ACM-2 Weight +AD0- 2 +AD4APg- goto analyze+AF8-weight +AD4APg- +ACM-3 Weight +AD0- 3 +AD4APg- goto analyze+AF8-weight +AD4APg- ..... etc. etc. +AD4APg- +ACM-18 Weight +AD0- 18 +AD4APg- goto analyze+AF8-weight +AD4APg- +AD4APg- I wrote it in straight line assembler (which I will spare you from) for +AD4APg- speed. Looped code was way too slow for my purposes. +AD4APg- +AD4APg- The WEIGHT variable is used to analyze my data. If the weight was less +AD4-than +AD4APg- 2 or more than 16, I threw it out as a noise pulse. I then add the weight +AD4APg- of 15 successive measurements. If the resulting sum was greater than 135, +AD4APg- my machine turns on. If the resulting sum is between 90 and 135, my +AD4-machine +AD4APg- stays in the state it was already in (hysteresis). If the sum is less +AD4-than +AD4APg- 90, my machine turns off. Practically, the device was really successful. +AD4APg- The setpoints were picked by making dozens of measurements (with a PIC +AD4APg- hooked up to some LED's for an output) in the actual machine (learning). +AD4APg- +AD4APg- The routine was developed because the signal is so noisy that even when +AD4-the +AD4APg- machine was supposed to be ON, sometimes a signal was recieved that was +AD4APg- thoroughly in the OFF range. But never were 15 signals in a row this far +AD4APg- out of range. +AD4APg- +AD4APg- Is this an example of Fuzzy logic or +AFs-sic+AF0- fuzzy thinking (fuzzy meaning +AD4APg- sloppy, inaccurate, imprecise and nonscientific in the second usage+ADw-G+AD4-) +AD4APg- ???? +AD4-