Path: utzoo!utgpu!news-server.csri.toronto.edu!rpi!crdgw1!uunet!pilchuck!seahcx!phred!james From: james@phred.UUCP (James Taylor) Newsgroups: comp.dsp Subject: Re: Best z-trans. for CONTROL SYSTEMS? Message-ID: <3379@phred.UUCP> Date: 24 Apr 91 21:51:17 GMT Reply-To: james@phred.UUCP (James Taylor) Organization: Physio-Control Corp., Seattle, WA Lines: 39 In article <9360025@hplsla.HP.COM> you write: >> What transformation is best for converting a transfer function in a CONTROL >> SYSTEM to the z-domain? Right now I'm using the bilinear-z transform and >> I'm converting a system that MATLAB says is stable, but when I actually >> implement the system on a DSP board, it is unstable. Any help would be >> greatly appreciated! > >The bilinear-z transform (or the related, pre-warped bilinear) is >generally considered a good tranform to use when you are interested >in preserving the frequency domain charicteristics of your analog >filter. Since the theory says that the bilinear transform of a stable >filter is a stable filter, I'd suggest you look into some of the >implementation details. Some ideas to consider: is the transformation >being done correctly? Is the analog filter really stable? When the >filter coeficients are rounded, is this done in such a way so as to >keep poles inside the unit circle? And so on. > One common problem to consider - in any integer IIR system of more than 2nd to 3rd order it is EXTREMELY easy to have a rounding condition at an intermediate stage, that is inverted and fed back in such a way that oscillation is sustained. Then if there is any gain -from the intermediate stage- to the ouput you'll have something that looks unstable but whole z transform characterization looks OK. I haven't found this effect to be at all uncommon, and if the effect turns out to be a problem the only solution I've found is to inplement the filter so to 1) minimize individual tap to output gains 2) use second order sections (rounding problems may still occur) 3) organize the taps so that I can effectively prevent rounding oscillations by including a non-linear tap - ie. if Delta-tap value < 2, keep the old tap value Any other thoughts on rounding effects out there? Better, or more analytical approaches? (I HAVE read Oppenheim and Schafer's chapters on this, as well as Roberts and Mullis) -James Taylor temp