I have an R2000 210 with R30ia controller. Im using an AAD04A analog input card with a laser sensor with output range of -10vdc to +10vdc. according to the fanuc manual the analog input card should accept -10vdc to +10vdc and return a digital output range of -2000 to +2000. So given what the manual shows I would expect to get -2000 counts at -10vdc and +2000 counts at +10vdc but what I am seeing is at -10vdc im getting 2098 counts and as i move the object in closer the the laser and the voltage climes from -10 to zero the digital value climbs to 4098 counts just before zero volts then at zero the digital outputs drops to 0 and them climbs to +2000 as I would expect as I move the object closer to the laser so basically the laser starts at 2098 climbs to 4098 drops to zero then climbs to 2000. has anyone had experience with this? I would like to get the linear values of -2000 to +2000 the manual says I should. I called fanuc and all they could tell me is that it should work as the manual says.
AAD04A analog input card - negative voltage?
-
cja7928 -
March 24, 2014 at 4:36 PM -
Thread is marked as Resolved.
-
-
How do you have the Input card wired and how are reading the voltage and analog signal?
-
cja,
That board is 12bit ADC. The MSB (D11) is the sign bit. (check the next page in your manual).
This is what I found by testing:
V=0v, AI=0.
V=10.24V, AI=2047.
V=-0.01V, AI=4095.
V=-10.24, AI=2048.
Linear in between.
So the actual input can be -10.24v to 10.24v.
You need to write something like background program to convert the input reading 0, 4095 to -2048, +2048 in a register for an example.
When AI<=2047, R=AI
When AI>2047, R=AI-4096
I did not try the program though.
I only read positive voltage, so this was not problem for me. -
cja,
That board is 12bit ADC. The MSB (D11) is the sign bit. (check the next page in your manual).
This is what I found by testing:
V=0v, AI=0.
V=10.24V, AI=2047.
V=-0.01V, AI=4095.
V=-10.24, AI=2048.
Linear in between.
So the actual input can be -10.24v to 10.24v.
You need to write something like background program to convert the input reading 0, 4095 to -2048, +2048 in a register for an example.
When AI<=2047, R=AI
When AI>2047, R=AI-4096
I did not try the program though.
I only read positive voltage, so this was not problem for me.thank you very much. I appreciate you taking the time to verify. I was under the impression it might be possible to get a continuous return from -2000 to +2000. your reply answers my question.
-
You are welcome.
Actually, those testing numbers were in my notebook taken years ago when I was curious how the voltage was read. You can find the related article in wikipedia. Look for "Signed number representations" and this ADC board use "Two's complement". Because in the board manual, it is said: "D11-n corresponds to the sign bit in the complementary representation of 2".