VEX Robotics Wiki

Covering VEX IQ, VEX EDR, and VEX Pro

User Tools

Site Tools


vex_robotics_platforms:vex_edr:cpu:cortex:analog_ports

Analog Ports

The Cortex has 8 Analog Ports. The Analog Ports accept variable inputs of 0-5V and run through a 12 bit ADC, resulting in values of 0 to 4095.

Applicable Sensors

Noise

A noisy power supply signal caused by a running motor.

Analog inputs can be highly accurate, but are vulnerable to line noise generated by other sensors, VEX motors, and long cables. Noise, in electronics, is the unwanted fluctuation of a signal around its intended value. Some noise is generally unavoidable, but many sources of significant noise can be identified and isolated. Noise inflicted from electromagnetic fields can be virtually eliminated by using twisted pair cables with a ground connection, as the field will be positive half the time and negative the other half to cancel out the noise. For particularly sensitive signals, steel parts can be used to act as RF shielding. It is also possible to reduce noise when processing a signal using Fourier analysis.

Noise from a seemingly unimportant signal can be emitted through the generation of electromagnetic waves, which can induce fluctuations in nearly sensitive signals. Analog sensors and other sensitive electronics are the most vulnerable inputs to noise; digital signals are more tolerant due to the use of a Schmitt trigger on most digital inputs.

Noise generally only affects the perceived amplitude of a signal. For random fluctations in a signal's frequency, the term jitter is usually used instead.

Thermal noise

Heat is by definition the thermal energy of atoms moving about, and the kinetic energy of these atoms is generally not uniform. Since a VEX robot cannot operate near absolute zero, Johnson–Nyquist_noise is present in all signals and has a roughly uniform distribution across all frequencies. However, the magnitude of such noise is generally insignificant, ranging from 10 nanovolts to 1 microvolt in amplitude.

Switching noise

Switching noise is generated by the circuits inside controllers such as the VEX Cortex turning on and off. Since most external processors operate at very high clock speeds, typically in the megahertz range, noise of this frequency is generally outside of the intended frequency domain and can be filtered using a decoupling capacitor. Switching noise generally appears on the power supply voltage and occasionally in low-frequency output signals.

Switching noise is also generated by switch-mode power supplies. Once again, the noise frequency is typically very high and is filtered at the power supply's output.

Motor noise

VEX Motors are typically the biggest generator of noise on a VEX robot, with amplitudes in the tens to hundreds of millivolts. This noise primarily occurs at the PWM frequency used by the VEX Motor Controllers and at the resonant frequency of the LC circuit formed by the motor's coil inductance and the output capacitance of the motor driver FET. The most motor noise is generated at about 50% throttle, not at 100% as many might intuitively think.

While these frequencies can be filtered out, isolation is the best way to reduce the impact of motor noise. Routing motor cables away from analog sensors and using twisted pair will cut motor noise down to an acceptable level.

ADC noise

When sampling an analog signal using an analog-to-digital converter, or ADC, noise on the order of one bit of precision 1) (typically 1 to 10 millivolts) is typically introduced.

Technical Specs

The VEX analog ports use a voltage divider to make 5V inputs safe for the 3.3V ADC and a 1nF capacitor for decoupling. The total input impedance is around 28 kOhms and the anti-aliasing 3dB input bandwith is around 16 kHz.

vex_robotics_platforms/vex_edr/cpu/cortex/analog_ports.txt · Last modified: 2017/11/04 11:40 (external edit)