Sunday, November 26, 2006
Coordinated xy-axis traverses...
Here you can see the new probe with it's tiny piece of circuit board to accomodate screw terminals for power input and signal output.
Here you can see both operational limits detectors while the x and y axes are doing traverses. I've been running pencil tests on the axes open in open loop mode.
Ha! Here's another little bit of know-how that I used to run into with discrete analog to digital chips which I'd forgotten about and which turns out still to be true for analog to digital channels on the 16F877A.
I'd put in a two pole connector which sits on the AN0 and AN2 pins. When I did the firmware programming I forgot that the connector skips a pin and programmed the x-axis for AN0 and the y-axis for AN1 instead of AN2. I connected the limits sensors up to the two poles. The x-axis sensor worked perfectly and the y-axis sensor would respond properly to its limits detector. After I watched it for a while I noticed that the y-axis was changing direction both when its own sensor told it to and when the x-axis sensor signaled a change in direction.
What was going on was that the AN1 channel, which the firmware was reading was getting voltage bleed from both the AN0 and AN2 pins and responding accordingly. This tendency for an open analog channel to get "bleed" from adjacent channels if it hasn't an input of its own is quite usual. Unless you know of this bleeding effect you can get some very bizarre "bugs" in your firmware.