Hi all, long time listener, first time poster.
I'm looking to better understand what I'm seeing in the behaviour of some cheap Chinese clone galvos + driver boards, and whether it means what I think it does...
Long story short, I've built a setup to scan Lissajous figures onto a CMOS camera at various voltages/frequencies using an arbitrary waveform generator, being somewhat careful not to fry the hell out of everything. The driver has three-pin +10/0V/-10V signal input for each axis, to which I've shoved my bipolar signal input onto the +ve pin and grounded the negative, because if it's stupid, and it works, etc. etc.. Normally I drive with +-2V, but I also made a very simple op-amp circuit to boost that to +-10V, with near-identical results except an obvious boost in optical deflection.
I've done some simple raster scans where I just send a stepped DC voltage to each axis to sanity-check for voltage deflection, but I expect higher speed is an entirely different beast.
Anyway, from the Lissajous figures I can determine whether the shape I got out was the shape I intended to draw (in my case, shoving a sine wave onto X and a cosine onto Y for a nice circle). What I get, above a certain frequency (~800Hz), is a sort of circle with squared corners. A squircle?
This is consistent between individual galvos and driver boards when swapped out. I know the six pots are set per driver/galvo pair, but I wanted to be sure.# I also see what I think are resonance effects at certain frequencies, so have been trying not to stick around there where possible. The deflection range drops off with frequency in a way which makes sense to me for a second-order system.
Each galvo itself has six pins, and the classic IR LED/two photodiodes-and-a-flag-on-the-back closed-loop feedback system. I infer the first two pins are the positive and negative signals for the motor coil, and the last four are some combo of LED power, current from each photodiode, cathodes etc.
Getting an oscilloscope trace on the positive motor signal while it's running, I notice something that might explain what I'm seeing: while the frequency of the driver output is dead-on what I put in, the waveform amplitude looks funky and a bit triangular, and past the 800Hz mark it starts clipping to resemble a square wave. Interestingly the X/Y sine/cosine signals also appear to not be quite in opposing phase. I've got nothing on that one, as they're more circular than I'd expect to see if that were true.
Questions which I hope can be answered by anyone with better electrical engineering knowledge than me (which is most people):
1. Am I understanding what is happening even slightly correctly?
2. Is the waveform clipping a deliberate feature of the driver board, is is some sort of fundamental rate limit (slew limit?), is it simply overshooting and correcting via the closed-loop, or is it just a, ehh, inertia will carry the mirror forward, good enough for laser shows, situation that would explain why I still get a continuous repeatable shape, even at much higher frequencies?
3. If this is an actual frequency/voltage output limit, would I be right to think it's not possible to tune your way out of this via the six driver pots? After reading about enough tuning disasters here, I don't want to touch the tuning unless it's the best option...
4. Any chance this is me reaping what I've sown for driving on only the +ve pin and somehow overloading the driver with less than it would usually need to do so? I gathered that I'd improve noise rejection by driving on the -ve pin too, but I will take any excuse not to make a terrible circuit.
5. Not entirely sure I understand the actual driver voltage-out amplitude relative to voltage-in. I naively assumed to start with it would be a simple up to +-10V driving signal in, movement out, modulated by whatever closed-loop feedback there is. I assume there's much more here?
Would appreciate any advice/heckling/etc. you can provide, and would like to give thanks for the many threads here that helped me get this far. My expertise lies in putting some pieces of glass in an order and then writing some Python about it.