hi, I am designing an IIR filter for my application ... the problem is i am confused with the transfer function... some books say it is: y[n]*x[n]+a1*x[n-1]......+b1*y[n-1]+b2*y[n-2].... some other books says, y[n]*x[n]+a1*x[n-1]......-b1*y[n-1]-b2*y[n-2].... can anyone pls tell me what is the actual transfer function Thanking You, Satadru Karjee |
|
IIR filter design
Started by ●January 13, 2004
Reply by ●January 14, 20042004-01-14
hi, i am trying to interface an ecg machine through the rs232 comm port. The output of the machine is in digitized format having a sampling frequency of 500Hz. Now the problem is , ecg plotting has to be done at a speed of either 25 mm/s or 50 mm/s. Lets take the 25 mm/s speed ... which means that i have to plot 96 pixels(i.e 96 sample points) in one second out of the 500 points which i am getting in 1 sec. At present i am taking the average of five points and plotting a point i.e each pixel is equivalent to the average of the last five points, in that way iam bringing down the number of points to be plotted to 100 points per sec. I have also tried the following : a.taking the highest of the last five points instead of averaging. b.applying turning point algorithm ..but i could compress the data to only 125 samples per second. I am still looking for some better way to bring down the sample points ..... i would be grateful if any better idea is given. Thanking you. Satadru >From: "Dillon, Tom" <> >To: "'karjee_s'" <> >Subject: RE: [matlab] IIR filter design >Date: Tue, 13 Jan 2004 11:14:45 -0600 > >In one equation the sign is encapsulated in the coefficients bi. So both >equations are correct. If someone is giving you a set of coefficients and >you just want to "plug and chug" then the second version is probably the >one >you need. > >Regards, > >Tom Dillon > >-----Original Message----- >From: karjee_s [mailto:] >Sent: Tuesday, January 13, 2004 5:00 AM >To: >Subject: [matlab] IIR filter design > >hi, >I am designing an IIR filter for my application ... the problem is i >am confused with the transfer function... >some books say it is: >y[n]*x[n]+a1*x[n-1]......+b1*y[n-1]+b2*y[n-2].... > >some other books says, > >y[n]*x[n]+a1*x[n-1]......-b1*y[n-1]-b2*y[n-2].... > >can anyone pls tell me what is the actual transfer function > >Thanking You, >Satadru Karjee >_____________________________________ >Note: If you do a simple "reply" with your email client, only the author of >this message will receive your answer. You need to do a "reply all" if you >want your answer to be distributed to the entire group. > >_____________________________________ >About this discussion group: > >To Join: > >To Post: > >To Leave: > >Archives: http://www.yahoogroups.com/group/matlab ><http://www.yahoogroups.com/group/matlab> > >More DSP-Related Groups: http://www.dsprelated.com/groups.php3 ><http://www.dsprelated.com/groups.php3 ><http://rd.yahoo.com/SIGc08c17u/M&7637.4116730.5333196.1261774/D=egroup >web/S05083376:HM/EXP74099820/A53618/R=0/*http:/www.netflix.com/Defa >ult?mqso`178338&partidA16730> click here > ><http://us.adserver.yahoo.com/l?M&7637.4116730.5333196.1261774/D=egroupmai >l/S=:HM/A53618/randE2511313 > > _____ > >Yahoo! Groups Links > >* To > _________________________________________________________________ Get head-hunted by 10,000 recruiters. http://go.msnserver.com/IN/35984.asp Post your CV on naukri.com today. |
Reply by ●January 14, 20042004-01-14
Satadru- > i am trying to interface an ecg machine through the rs232 comm port. The > output of the machine is in digitized format having a sampling frequency of > 500Hz. Now the problem is , ecg plotting has to be done at a speed of > either 25 mm/s or 50 mm/s. Lets take the 25 mm/s speed ... which means that > i have to plot 96 pixels(i.e 96 sample points) in one second out of the 500 > points which i am getting in 1 sec. > At present i am taking the average of five points and plotting a point i.e > each pixel is equivalent to the average of the last five points, in that way > iam bringing down the number of points to be plotted to 100 points per sec. > > I have also tried the following : > a.taking the highest of the last five points instead of averaging. > b.applying turning point algorithm ..but i could compress the data to only > 125 samples per second. > > I am still looking for some better way to bring down the sample points ..... So you're saying that the true ECG sampling rate, for plotting / display purposes, is only about 100 Hz, but you have a 500 Hz stream. If that's correct, then your problem becomes sampling rate conversion. Why not convert your data to 96 Hz in MATLAB and then plot the output? Probably the result is not going to look a whole lot different then what you were doing (running sum of 5 points) but it would be technically more correct. BTW, sampling rate decrease involves decimating your signal (throw out every other 4 points) and low-pass filtering the result. You can read up on it. -Jeff > >From: "Dillon, Tom" <> > >To: "'karjee_s'" <> > >Subject: RE: [matlab] IIR filter design > >Date: Tue, 13 Jan 2004 11:14:45 -0600 > > > >In one equation the sign is encapsulated in the coefficients bi. So both > >equations are correct. If someone is giving you a set of coefficients and > >you just want to "plug and chug" then the second version is probably the > >one > >you need. > > > > > > > >Regards, > > > >Tom Dillon > > > > > > > >-----Original Message----- > >From: karjee_s [mailto:] > >Sent: Tuesday, January 13, 2004 5:00 AM > >To: > >Subject: [matlab] IIR filter design > > > > > > > >hi, > >I am designing an IIR filter for my application ... the problem is i > >am confused with the transfer function... > >some books say it is: > >y[n]*x[n]+a1*x[n-1]......+b1*y[n-1]+b2*y[n-2].... > > > >some other books says, > > > >y[n]*x[n]+a1*x[n-1]......-b1*y[n-1]-b2*y[n-2].... > > > >can anyone pls tell me what is the actual transfer function > > > >Thanking You, > >Satadru Karjee |