Цифровой потенциометр X9C и Arduino

Подключение цифрового потенциометра X9C102( X9C103, X9C104) к Arduino.


Рассмотрим управление цифровым потенциометром X9C (X9C102, X9C103, X9C503, X9C104) при помощи Arduino, а также, какие области применения могут быть у данного устройства. Используем недорогой готовый модуль.


Описание цифрового потенциометра типа X9C

Потенциометр (переменный резистор) – это электротехническое устройство, которое позволяет изменять сопротивление электрическому току. Классический (механический) потенциометр представляет собой два вывода, между которыми располагается третий – подвижный (скользящий). Перемещение подвижного вывода изменяет сопротивление между ним и каждым из неподвижных вывода.



Электронный потенциометр – это аналог механического потенциометра, но со многими улучшениями: он не имеет механических частей, может управляться на расстоянии с помощью, например, микроконтроллера, и он гораздо меньше по размеру.

Переменные резисторы (потенциометры) широко применяются в различных электронных устройствах, с необходимостью регулирования напряжения в процессе работы. Например, в роли подстроечных резисторов при настройке схем, в роли регуляторов громкости в мультимедийных устройствах, или регуляторов уровня освещения в осветительных приборах.

Чаще всего используется готовый модуль с цифровым потенциометром X9C102 (X9C103, X9C104, X9C503).

Цифровой потенциометр типа X9C может быть одного из следующих номиналов:

  • X9C102 - 1 кОм
  • X9C103 - 10 кОм
  • X9C503 - 50 кОм
  • X9C104 - 100 кОм

В названии потенциометра X9C, последние 3 цифры обозначают: значение и количество нулей, которое нужно приписать к значению, для получения номинала. К примеру: 102 это 10 и 2 нуля, или 1000 Ом (1 кОм); 503 – это 50 и 3 нуля, или 50000 (50 кОм) т.п.

Логика работы и схема подключения цифрового потенциометра X9C103 к Arduino

Между 0 и максимальным значением с шагом 1/100 от максимума можно регулировать сопротивление на третьем «подвижном» выводе.

Управление положением «подвижного» вывода осуществляется при помощи ряда отрицательных импульсов. Каждый импульс смещает значение сопротивления на 1 шаг в сторону увеличения либо уменьшения.

Потенциометр управляется по трём линиям:

  • CS - Выбор устройства (LOW - устройство активно)
  • INC - Изменение сопротивления выхода (Отрицательные импульсы)
  • U/D - Направление изменения: U (вверх) – если напряжение на ножке микросхемы HIGH, D (вниз) – LOW

Временная диаграмма управляющих сигналов:



VW – напряжение на центральном выводе

Схема подключения цифрового потенциометра X9C к Arduino



Пример программы управления цифровым потенциометром X9C


Программа содержит простой алгоритм: каждые 100 мс с шагом 10% повышаем сопротивление от 0 до 100% максимального значения потенциометра.


Пример программы для работы цифровым потенциометром X9C: скачать



Проверка работы цифрового потенциометра X9C102

С помощью логического анализатора можно узнать, получилось ли соблюсти временную диаграмму управления потенциометром:



На рисунке виден положительный результат. Опускаем линию CS в LOW, а также U/D в LOW (уменьшение выходного сопротивления). Когда на INC отсчитали 100 импульсов, поднимаем U/D в HIGH (изменяем сопротивление в сторону увеличения). С помощью INC относительно выставленного нулевого сопротивления начинаем отсчитывать нужное значение (в данном случае 10 импульсов равны 10% от максимума потенциометра). 

Потенциометр X9C102/103/104 имеет 100 градаций сопротивления между минимальным и максимальным. Это позволяет не вводить дополнительных коэффициентов для пересчёта процентов в импульсы. Например: 10 импульсов INC меняют данное значение выходного сопротивления на 10%.

Если при помощи мультиметра проконтролировать сопротивление между центральным и одним из конечных выводов, то можно зафиксировать изменения сопротивления. Для наглядности можно подать напряжение 5 вольт между конечными выводами потенциометра, а к центральному контакту подключить осциллограф.





2396