назначение светодиода, резистора и кнопки; их подключение;
использование микроконтроллеров;
программирование микроконтроллера для создания и чтения цифровых сигналов.
Реализовать схему в которой светодиод будет мигать с необходимой периодичностью.
Светодиод (LED) – светоизлучающий диод.
Ток может проходить по светодиоду только в одном направлении – от анода (+) к катоду (-).
Через светодиод течёт слишком большой электрический ток.
Электрический ток \(I\) – это направленное движение электрически заряженных частиц внутри проводника. Сила тока измеряется в амперах (А).
Напряжение \(U\) представляет из себя разность электрических потенциалов между двумя точками. Напряжение измеряется в вольтах (В).
Ток течёт от точки с более высокой потенциальной энергией к точке с более низкой потенциальной энергией.
\[ I_1=I_2\\ U=U_1+U_2 \]
\[ U_1=U_ 2\\ I=I_1+I_2 \]
Падение напряжения на светодиоде – 2 В, максимальный ток – 20 мА (0,02 А).
Напряжение батареи питания – 9 В. Резистор должен снизить ток, проходящий через светодиод.
Светодиод и резистор подключим последовательно. Значит: \[ U_{батарея}=U_{резистор}+U_{LCD} \]
\[ U_{резистор}=U_{батарея}-U_{LCD}= 7\ В \]
Не важно, до или после светодиода располагается резистор.
Микроконтроллер – это микросхема, которая выполняет загруженную в неё программу. Программа может получать информацию от датчиков и управлять внешними устройствами.
Микроконтроллер – это компьютер на одной микросхеме (процессор, оперативная память, постоянная память).
Чтобы упростить процесс программирования, микроконтроллер можно разместить в печатную плату с нужными компонентами.
Пример такой платы – Arduino.
Скетч обязательно должен содержать две функции: setup() и loop():
Цифровые пины (0 – 13) Arduino могут работать на вход и на выход.
Для выбора режима работы используется функция pinMode(номер_пина, режим)
Режим работы задаётся двумя константами:
INPUT – пин работает на вход;
OUTPUT – пин работает на выход.
По умолчанию все пины Arduino настроены на вход.
Для правильного проектирования схемы нужно учитывать характеристики компонентов – максимальный допустимый ток, сопротивление, падение напряжения.
Чтобы ограничить ток в цепи, используется резистор .
Для прототипирования электрических цепей удобно использовать макетную плату .
С помощью микроконтроллера можно управлять цифровыми сигналами – выходными и входными.
Реализовать схему в которой включение и выключение светодиода будет зависеть от освещённости в комнате.
Сопротивление некоторых материалов зависит от внешних условий: температуры, освещённости, давления и др.
Фоторезистор – компонент, сопротивление которого зависит от уровня освещённости.
В последовательном соединении \(I=I_1=I_2\) а \(U=U_1+U_2\).
Общее сопротивление: \[ R=R_1+R_2 \]
Значит: \[ \frac{U}{R_1+R_2}=\frac{U_2}{R_2} \]
Напряжение на втором резисторе1: \[ U_2=U\cdot\frac{R_2}{R_1+R_2} \]
Делитель напряжения реализован отдельным компонентом под названием потенциометр.
Подключив контакт A к 5 В, контакт B к земле а контакт C к вольтметру получим делитель напряжения с ручной регулировкой2.
Эта схема подключения подходит для многих аналоговых датчиков.
Значение напряжения на датчике будет аналоговым – непрерывной величиной. Микроконтроллер может обрабатывать только цифровые данные – 0 или 1.
Для преобразования аналогового сигнала в цифровой используется аналогово-цифровой преобразователь (АЦП).
АЦП характеризуется разрядностью: на выходе будет двоичное число с этим числом разрядов.
Чем больше разрядов, тем больше разных двоичных чисел можно записать.
С помощью 3-х разрядов можно записать \(2^3=8\) двоичных чисел (000, 001, 010 и т.д.)
int lt; // уровень освещённости
void setup()
{
pinMode(9, OUTPUT); // пин со светодиодом на выход
}
void loop()
{
lt = analogRead(A0); // показания фоторезистора с пина A0
if (lt < 512) { // если темно...
digitalWrite(9, HIGH); // включить светодиод на пине 9
} else { // иначе...
digitalWrite(9, LOW); // выключить светодиод
}
}Некоторые датчики созданы на основе материалов, которые меняют своё сопротивление.
При работе с большинством датчиков, реально мы измеряем падение напряжения на них. Для этого используется делитель напряжения.
Измеренное напряжение – аналоговый сигнал. Его нужно преобразовать в цифровой.
Arduino может считывать аналоговые сигналы, но не может их создавать.
Для имитации изменения напряжения используется ШИМ-сигнал.