Episode #125 of the Stack Overflow podcast is here. We talk Tilde Club and mechanical keyboards. Listen now
6

I assume here that your device is not in the feedback chain. If you can't afford a FFT or filter-bank decomposition (and then detect over successive frames the FFT bins in which the amplitude gets almost exactly multiplied by the same complex number over successive frames), I would suggest looking at these few parameters: Fit a line to the log of the RMS ...


5

You cannot make conclusions about the stability of a system by only considering its transfer function evaluated on the imaginary axis $s=j\omega$. Replacing $s$ by $j\omega$ in the transfer function only makes sense for a stable system, otherwise you get a function of $\omega$ that does not describe the system, but another (stable) system. Let me explain ...


5

You're probably better off skipping the $5u(t)$ idea and going straight to a periodic input, probably a sinusoid. A phase locked loop is for signals that have a phase to lock onto, whereas $u(t)$ doesn't have a phase. The Stanford reference looks pretty good. Start by comparing that to your feedback system: Note that the phase detector is a ...


4

Imagine that you're heating (or cooling) a home with a modern furnace (or air conditioner). the reference or set point is the temperature that you set your thermostat to be. the feedback signal is the actual temperature that is measured with some kinda thermometer. the actual value that you are trying to control, whether it's temperature or the position ...


3

Your two transfer functions are in parallel, i.e they simply add up. So your feedback transfer function is simply $G(z) = H_1(z)+H_2(z)$. You want to makes sure that the magnitude of $G(z)$ is smaller than one. and the overall closed loop transfer function is $$H(z) = \frac{Y(z)}{X(z)} = \frac{1}{1+H_1(z)+H_2(z)}$$


3

It is easier to work in the $s$-domain: $$Z=YH_2$$ $$Y=(X-Z)H_1$$ Hence, $$Y=(X-YH_2)H_1=XH_1-YH_1H_2\Rightarrow Y(1+H_1H_2)=XH_1$$ Therefore, $$H(s)=\frac{Y(s)}{X(s)}=\frac{H_1(s)}{1+H_1(s)H_2(s)}$$ which is called the closed-loop transfer function. The closed-loop impulse response can be found by inverse Laplace transform.


2

I have done this before and it works as long as you tune your parameters correctly. There should be a gain factor on the integrator which is < 1.0. If your application is audio, one thing to watch for is audible pitch changes during periods when the ratio is changing. You can add a proportional term to your loop filter to tune the transient response if ...


2

First of all make sure that the magnitude of $a_M$ is strictly less than $1$; this is necessary for the filter's stability. Second, you use several unnecessary variables. This is no serious problem, but it makes it harder to see what's going on. For $M=1$ a simple pseudo-code would be v = x - aM * v_old; y = v * b + v_old; v_old = v; The important thing is ...


2

Static gain refers to the DC gain. Namely, it would be the ratio of the output and the input under steady state condition. Due to DC corresponding to $\omega=0$, in the $z$-domain DC would correspond to $z=1$ because $z=re^{j\omega}$, with $r=1$ (i.e. you have to evaluate your transfer function $G(z)$ in the unit circle to get the frequency response). EDIT:...


2

The best performance you will be able to squeeze out of a PC is with an audio interface that supports ASIO. To be able to get near 10ms of total delay (input and output) you will also need a very fast machine. Not only in terms of CPU but more importantly in terms of memory performance. On top of this delay, you are going to have to add the delay in ...


1

UPDATE: My original answer incorrectly assumed the outer loop would not impact the result, but as pointed by Ben, this transfer function is dependent on the fast feedback. The resulting equations are found by solving for $A/X$ from the block diagram below, with X representing the disturbance input: Solving this: $$Y = P(SY+FY+X)$$ $$A/S = P(A + FA/S + X)$...


1

In $G(z)$, $z$ denotes a complex variable, interpreted here on the unit-circle as $z=e^{i \omega)}$. When $z=1$, this corresponds to the $0$-frequency, or constant signals. But sometimes, people write this as $G(i\omega)$, as in the definition for the static gain in Transfer Functions: The number $G(0)$ is called the static gain of the system because it ...


1

I've never implemented this myself, but here are my (possibly incorrect) thoughts: The general method of feedback elimination is to Detect the frequencies that are feeding back Tune a filter to eliminate those frequencies Step 2. is relatively easy, especially if you are using iOS and have an audio unit that can do it for you. There are some things to ...


1

The root locus is a way to see how the poles of your system vary from their open loop locations to their closed loop locations. If the closed loop system is $$ C(s) = \frac{O(s)}{1+KO(s)} $$ where $O(s)$ is your open loop system and $K$ is the constant gain in the feedback path around the open loop system, then the root locus looks at how the poles of $C(s)$...


1

The bode plot is just a plot showing the frequency representation of your system. Any transfer function has one, hence you can use it to see the response of both closed or open loop. Nyquist and the root locus are mainly used to see the properties of the closed loop system. The root locus shows the position of the poles of the c.l. system as the gain of your ...


1

It looks like you are considering these analysis like part of a universal streamline desing process. These analysis techniques are simply tools that helps you understand the behaviour of your system, being open or closed loops, it doesn't matter. Both type of systems can be stable or unstable depending on the value of their poles. Closing the loop on a open-...


1

The integrator is unstable, so it will probably just blow up. There's such a thing as a leaky integrator that does an OK job of getting pretty close. Have a look at the algorithm listed here on how you would go about implementing it using code. The math is pretty straightforward. The differentiator uses b1=1, b2=-1. The integrator is just the inverse, but ...


1

If I am understanding this paper please correct me if I am wrong: A common effect, usually associated with unstable zeroes and poles of the open loop plant, makes it theoretically impossible to make certain closed loop transfer functions “small” simultaneously at all frequencies: This is talking about Pole Zero Cancellation in realizable control systems. ...


Only top voted, non community-wiki answers of a minimum length are eligible