Jump to content

IO-AO6X faulty output when lower # chan has >4095


Recommended Posts

I have found that when using this module, I must check that the number I send to a channel be limited to 0-4095. If I send a number > 4095, the next higher channel output voltage is influenced.

For example, channel #2 has #2048 sent to it so it puts out 5.0vdc. Then, by accident, I send a number, such as (I don't remember the exact #) 9000 to channel #1. Well, channel #2 now read 5.5volts, not 5.0vdc as it should. I do not remember what channel #1 outputted.

This is not good. This should not be. I am guessing that the hardware that converts a 16 bit register to a voltage is not clearing the high order bits before conversion.

Link to comment
Share on other sites

  • MVP 2023

I've observed similar behavior - analog outputs go to zero if the value is 4096 or more. I've worked around it by using a compare block and forcing the output to 4095 in the last rung of the program.

No, it's not good and I don't know where it comes from but it at least needs to be documented in the spec sheet. Cara?

Joe T.

Link to comment
Share on other sites

  • MVP 2014

I recall something like a modulus behaviour. So if I give the output 4095 or 8191 it will show the same value. Memory is vague...

Ditto to the above comments. IMHO some internal self checking and limiting is preferable to documenting the current behaviour. Out of range values should set the output to a known state (full scale or zero) and possibly also set an error SB. Even one "out of range" SB for all analogue outs is better than nothing. We should definitely not have values applied to one output affecting another.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

This site uses cookies. By clicking I accept, you agree to their use.