Instruction Manual
Table Of Contents
- 1769-UM006E-EN-P, Compact High-speed Counter Module User Manual
- Summary of Changes
- Table of Contents
- Preface
- 1 - Module Overview
- 2 - Module Operation
- 3 - Installation and Wiring
- 4 - Module Configuration, Output, and Input Data
- Configure the Module
- Configuration Array
- General Configuration Bits
- Filter Selection
- Program Mode and Program State Run
- Output Program Value (Out0ProgramValue through Out3ProgramValue)
- Output Fault Mode and Output Fault State Run
- Output Fault Value (Out0FaultValue through Out3FaultValue)
- Counter Maximum Count (CtrnMaxCount)
- Counter Minimum Count (CtrnMinCount)
- Counter Preset (CtrnPreset)
- Counter Hysteresis (CtrnHysteresis)
- Counter Scalar (CtrnScalar)
- Cyclic Rate Update Time (CtrnCyclicRateUpdateTime)
- Configuration Flags
- Range High Limit (Range0To11[n].HighLimit) and Range Low Limit (Range0To11[n].LowLimit)
- Range Output Control (Range0To11[n].OutputControl)
- Range Configuration Flags
- Output Array
- Output on Mask (OutputOnMask.0 through OutputOnMask.15)
- Output Off Mask (OutputOffMask.0 through OutputOffMask.15)
- Range Enable (RangeEn.0 through RangeEn.15)
- RBF - Reset Blown Fuse (ResetBlownFuse)
- Control Bits
- Range High Limit or Direct Write Value (Range12To15[n].HiLimOrDirWr)
- Range Low Limit (Range12To15[n].LowLimit)
- Range Output Control (Range12To15[n].OutputControl)
- Range Configuration Flags (12To15)
- Input Array
- Input State (InputStateA0 through InputStateZ1)
- Readback (Readback.0 through Readback.15)
- Status Flags
- Range Active (RangeActive.0 through RangeActive.15)
- Current Count (Ctr[n].CurrentCount)
- Stored Count (Ctr[n].StoredCount)
- Current Rate (Ctr[0].CurrentRate to Ctr[3].CurrentRate)
- Pulse Interval (Ctr[0].PulseInterval and Ctr[1].PulseInterval)
- Status Flags
- 5 - Diagnostics and Troubleshooting
- A - Specifications
- B - Program a 1769-HSC Module, CompactLogix Controller, and 845F Incremental Encoder with RSLogix 5000 Software
- C - Program a 1769-HSC Module, MicroLogix 1500 Controller, and 845F Incremental Encoder with RSLogix 500 Software
- D - Programming Quick Reference
- E - History of Changes
- Glossary
- Index
- Back Cover

34 Rockwell Automation Publication 1769-UM006E-EN-P - July 2013
Chapter 2 Module Operation
Scalar
You can configure the CtrnScalar value to scale or convert the raw rate value to
application-specific information, such as RPM (Revolutions Per Minute). Setting
CtrnScalar to 1 leaves the rate value in cycles per second (Hertz).
The actual rate equation is the following.
For example, where Ctr0CyclicRateUpdateTime = 80, the encoder has 360
counts per revolution, and the change in Ctr[0]. CurrentCount is 96.
Rate Valid
The Ctr[n].RateValid bit indicates calculation integrity. When the bit is set, it
indicates that the accompanying Ctr[n].CurrentRate value is accurate.
The Ctr[n].RateValid bit is reset when the overflow or underflow events have
occurred, that is, at rising edges of Ctr[n].Overflow or Ctr[n].Underflow bits. It
also happens when the count is abruptly modified via a preset (CtrnSoftPreset,
CtrnCtrPresetWarning or Z based preset event) or direct write
(Range12To15[n].LoadDirectWrite). When this occurs, the Ctr[n].CurrentRate
value is frozen at the last known good value so that effects of erroneous rates will
not propagate to range comparisons. The value remains frozen until the current
cycle time plus one more cycle time are elapsed (this can be up to twice the
CtrnCyclicRateUpdateTime). If the overflow/underflow occurrence lasts for
more than one cycle time, the value is frozen that entire time plus up to two more
cycle times.
Ensure that another overflow/underflow does not happen during this recovery
time. The rate will remain invalid until a full update time has occurred with no
such events. If the Ctr[n].RateValid bit is seldom or never set, the CtrnMinCount
and CtrnMaxCount values can be configured too close to each other.
TIP
To configure the Ctr[n].CurrentRate value to show an RPM value, set
CtrnScalar to (counts per revolution)/60.
Current Rate =
CyclicRateUpdateTime x Scalar
1000 x count
Scalar =
360 counts/revolution
60 sec/min
RPM =
80 Cyclic Rate Update Time x 360 counts/revolution
1000 Cyclic Rate Update Time/sec x 96 counts
60 sec/min
= 200 RPM