Диммер

В этой статье мы ознакомимся с Quatro-модулем потенциометр 5 кОм и с помощью него соберем диммер.

Потенциометр - это регулируемый резистор с подвижным контактом, который может перемещатсья по телу резистора.
Внутреннее устройство потенциометра и его обозначение на схеме приведены на рисунке, взглянув на который, можно заметить, что он представляет собой регулируемый делитель напряжения. Сектор окружности между выводами 1 и 3 выполнен из резистивного материала. При вращении ротора, ползунок, соединенный с выводом 2, скользит по поверхности полосы из резистивного материала. Таким образом, если вывод 1 потенциометра подключить к источнику питания Uвх, а вывод 3 к земле, то напряжение на выводе 2 будет определяться положением ротора.

Это свойство потенциометра, позволяет использовать его в качестве датчика угла поворота. Чтобы узнать на какой угол повернут ротор потенциометра, достаточно измерить напряжение на выводе 2 при помощи Аналогово Цифровой Преобразователь или АЦП.

Теперь соберем макет и напишем программу плавной регулировки яркости светодиода с помошью потенциометра.

#define LED_PIN 9
#define VAR_RES_PIN A0
//Переменная хранящая результат полученный
//от АЦП. Изменияется от 0 до 1024
int value = 0;
//Яркость светодиода для ШИМ от 0 до 255
int brightness = 0;
void setup() {
  //Настройка выходов/выходов
}
pinMode(LED_PIN, OUTPUT);
pinMode(VAR_RES_PIN, INPUT);
void loop() {
  //Читаем результат измерения. АЦП
  //возвращает число от 0 до 1024
  value = analogRead(VAR_RES_PIN);
  //Для использования ШИМ нам
  //нужно число в диапазоне от 0 до 255.
  //Поэтому делим value на 4
  brightness = value / 4;
  //Подаем ШИМ на светодиод
  analogWrite(LED_PIN, brightness);
  //Ждем 200 миллисекунд
  delay(200);
}