Чтение аналогового сигнала и вывод его значения на экран

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

Аппаратное обеспечение:

- плата Arduino
- потенциометр 10 кОм

Электрическая цепь:

Присоедините три провода от потенциометра к вашему Arduino. Один из крайних выводов потенциометра соедините с землей (GND) Arduino. Второй крайний вывод потенциометра соедините с 5 вольтовым выходом Arduino. Третьим соедините аналоговый вход 0 и средний вывод потенциометра. 

плата arduino

При вращении вала потенциометра, можно изменять сопротивление по обе стороны от центрального вывода. Это приводит к изменению напряжения на центральном выводе. Когда напряжение между центральным выводом и выводом подключенным к 5 вольтам близится к нулю (а сопротивление с другой стороны близится к 10 кОм), напряжение на центральном выводе приближается к 5 вольтам. Если повернуть ручку в другую сторону, то сопротивления поменяются местами и напряжение на центральном контакте приблизится к 0 вольт. Это напряжение является аналоговым сигналом который мы будем считывать аналоговым входом.
Arduino имеет встроенный аналого-цифровой преобразователь, который считывает значения напряжения и преобразовывает их в числа от 0 до 1023.
Если ручка потенциометра повернута до упора в одну сторону, то на вход подается 0 вольт и входное значение равно 0. Если ручка потенциометра повернута до упора в другую сторону, то на вывод подается 5 вольт и входное значение равно 1023. В промежуточных положениях ручки analogRead() возвращает число между 0 и 1023, которое пропорционально напряжению на среднем выводе.

Схема:

схема

Код:

В данной программе, единственное что нужно сделать в функции установки - начать последовательную передачу между Arduino и ПК со скоростью 9600 бит данных в секунду командой:
Serial.begin(9600);

Далее, в основном цикле программы, вы должны создать переменную для хранения значения напряжения (которая может изменятся от 0 до 1023, лучше всего подойдет тип int) которое приходит с потенциометра.
int sensorValue = analogRead(A0);

Наконец, вам нужно наблюдать эту информацию на мониторе в виде десятичных (DEC) значений. Вы можете сделать это с помощью команды Serial.Println() с помощью следующей строки кода:
Serial.println(sensorValue, DEC)

Теперь, открыв Serial Monitor в вашей среде Arduino, вы можете увидеть поток цифр от нуля до 1023, соответствующих положению ручки потенциометра. Если вы повернете ручку эти показания изменятся практически мгновенно. 

Полный текст программы:

/*

  AnalogReadSerial

  Считывает аналоговые значения с вывода 0, выводит значения на монитор.

  Соедините центральный вывод потенциометра и A0, а крайние выводы присоедините к +5V и земле.

*/

// установки:

void setup() {

 // инициализируем последовательную передачу данных со скоростью 9600 бит в секунду:

  Serial.begin(9600);

}

// основной цикл:

void loop() {

  // читаем значение на аналоговом входе 0:

  int sensorValue = analogRead(A0);

  // выводим на монитор считанное значение:

  Serial.println(sensorValue);

  delay(1);        // задержка в промежутке между считываниями для стабильности

}




Собирайте arduino своими руками - полный каталог плат