Sorry for not replying earlier.
The issues are three.
- The clients who will be installing said circuit and adjusting it, are lucky to own a decent multimeter. Very few even own a scope. They will be adding it to a existing scan set, and said scan sets' feedback signals very greatly from unit to unit. This is a laser entertainment (Light Show) product, and the beams need to hit bounce mirrors across a room. The safety issue is taken care of by masking of the possible beam positions.
- The scanners have two photodiodes and a flag on the scanner shaft, the feedback is thus differential. The issue is some makers of the scanners bother to drive the leds that illuminate the position flag with a temperature compensated AGCed current source. Others went the cheap route and just used a resistor. It depends which US designed amplifier they copied. Linearity of some of these copied sensors is not very good.
Domestic made US galvos are world class, and no problems with linearity, on small, fast scanners. Big ones for laser marker systems usually have large magnitude sensor errors.
- The third issue is the scanners are clones of a US made product for the most part. The usual cost cutting was done when the copies are made in the far east. I have no control over which set is in use by a given customer, and their "test" outputs for the feedback are all over the place in quality. So offset and magnitude vary greatly. Yet the window I need to hit to gate the beam is tight, because it will be used to ensure they hit the bounce mirrors.
I like using a MPU, however having a customer adjust constants in it is not a good idea, the need to add a LCD, EEPROM etc.
The origional idea of having the absolute rectifiers was so I could do vector velocity and use SQR X^2 + Y^2 a multipler as a velocity check. If the velocity is near zero and the sign is correct, magnitude may not be so important. If the beam is still, its still. This does not check the galvo for gross errors in position, though. This leaves the question of what to do when things are near zero. The system spends much time near zero.
I really like Jason's idea... I might just try that this weekend.
I'd prefer one or two trim pots. I know, trim pots are evil. , However, adjustment needs to be multimeter based, due to the variance in the customer's hardware choices. Few operators build their systems the same. That is a occupational hazard with laser stuff, it is the same fundamentally, but always has little differences in final implementation.
Before you say why .1%?, -5-0-5 out of a 16 bit DAC represents 30 degrees of travel if the customer uses the full range of the galvo/ servo. While this is not reccomended, some do. Hitting a 4x4 inch bounce mirror at 60 feet means you need to be pretty good on your error. Often customers do double bounces, hit one mirror, then fly across the room (or stadium) and hit another larger mirror. This means you need to be pretty good on your repeatability.
I also have no control over some of the software used. We do add breaking points, guide points, and corner points on vector images. That is very similar to adding trapezoid, so thank your for that suggestion. However we scan at a constant, but adjustable point rate, and the industry test pattern is for vector images, not stopping on a dime. So I just want to enable firing when the scanner is on the bounce mirror.
Steve
OWN OPINIONS ONLY, THE VIEWS EXPRESSED HERE DO NOT REPRESENT MY EMPLOYER.