В робототехнике регулировка различных параметров, таких как громкость звука, мощность, напряжение и т.д., осуществляется при помощи переменных резисторов с регулируемым уровнем сопротивления. Примером такого устройства является потенциометр Arduino, который при включении в электрическую схему может быть использован для регулировки параметров.
В этой статье мы рассмотрим варианты подключения и примеры скетчей для работы с потенциометром. Принцип работы потенциометра описан в отдельной статье.
Подключение потенциометра к платам Arduino
Схема подключения
Подключение потенциометра к Arduino выполняется в соответствии со схемой, представленной на рисунке:
Для этого три вывода потенциометра необходимо соединить с указанными выводами платы:
- Черный – GND;
- Красный – питание 5В;
- Средний – от центрального вывода к аналоговому входу А0.
Изменяя положение вала подключенного потенциометра, происходит изменение параметра сопротивления, которое вызывает изменение показателя на нулевом пине платы ардуино. Считывание полученного значения напряжения аналогового импульса происходит в скетче с помощью команды analogRead ().
В плату Arduino встроен аналого-цифровой преобразователь, способный считывать напряжение и переводить его в цифровые показатели со значением от нуля до 1023. При повороте указателя до конечного значения в одном из двух возможных направлений, напряжение на пине равно нулю, и, следовательно, напряжение, которое будет генерироваться составляет 0 В. При повороте вала до конца в противоположном направлении на пин поступает напряжение величиной 5В, а значит числовое значение будет составлять 1023.
Пример проекта
Примером реализации схемы подключения потенциометра может стать макетная плата с подключенным переменным резистором и светодиодом. При помощи потенциометра будет выполняться управление уровнем яркости свечения.
Для проведения работ следует подготовить такие детали:
- 1 плату Arduino Uno
- 1 беспаячную макетную плату
- 1 светодиод
- 1 резистор с сопротивлением 220 Ом
- 6 проводов «папа-папа»
- 1 потенциометр.
Для использования меньшего количества проводов от макетной платы к контроллеру следует подключить светодиод и потенциометр проводом земли к длинному рельсу минуса.
Пример скетча
В этом примере важно понимать, что яркость свечения светодиода управляется не напряжением подаваемым с потенциометра, а кодом.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
#define PIN_LED 11 #define PIN_POT A0 void setup() { // Пин, к которому подсоединяется светодиод определяем как выход pinMode(PIN_LED, OUTPUT); // Пин с переменным резистором является входом pinMode(PIN_POT, INPUT); } void loop() { // Определяем 2 переменные типа int int rotat, brightn; // Считывание в переменную rotat напряжения с переменного резистора: // микроконтроллер будет выдавать числа от 0 до 1023 // пропорциональны положению поворота вала rotat = analogRead(PIN_POT); // Преобразуем значение в яркость. Для этого делим rotat на 4, что с учетом округления даст нам число от 0 до 255. Именно это число мы подадим на шим-выход, с помощью которого можно управлять яркостью. brightn = rotat / 4; // Запись шим значения яркости на светодиод analogWrite(PIN_LED, brightn); } |