Как перевести аналоговый сигнал в цифровой
Главная
Статьи
Теория диагностики
Преобразование аналогового сигнала в цифровой
Преобразование аналогового сигнала в цифровой
В данной статье рассмотрено:
Принцип работы осциллографа;
Преобразование аналогового сигнала в цифровой;
Основные характеристики цифрового сигнала.
Мотор-тестер является одним из важнейших приборов в диагностике современного автомобиля также, как и осциллограф является одним из важнейших приборов в радиоэлектронике. Поэтому понимание основных принципов функционирования осциллографа является ключевым фактором для максимально эффективной эксплуатации комплекса мотор-тестера в целом.
Осциллограф – это прибор, предназначенный для исследования амплитудных и временных параметров электрического сигнала.
По способу обработки информации все осциллографы можно разделить на две категории: цифровые и аналоговые.
В отличие от аналогового, цифровой осциллограф имеет очень важные преимущества: он обладает возможностью записи сигнала и его последующей обработки, причем если осциллограф позволяет передавать информацию в компьютер, то это дает возможность использовать все ресурсы компьютера для обработки и анализа сигналов. Именно поэтому основой всех современных мотор-тестеров является цифровой осциллограф, принцип работы которого и будет рассматрен.

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

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

Все эти сигналы являются непрерывной функцией времени, это значит, что любому моменту времени соответствует определенное значение амплитуды сигнала. Такие сигналы называются аналоговыми.

Как уже отмечалось выше, рассматривать мы будем именно цифровой осциллограф, поэтому в первую очередь разберемся, как происходит преобразование аналогового сигнала в цифровой.
Рассмотрим произвольный сигнал, например сигнал напряжения на выходе какого-либо датчика.

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

Также необходимо понимать, что измерять амплитуду сигнала мы можем только с определенной точностью, точность измерения можно представить в виде фиксированных величин, которые называются уровнями квантования. Изобразим эти величины в виде горизонтальной сетки с равными промежутками между делениями. Высота каждой ячейки будет соответствовать цене деления нашего цифрового осциллографа.

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

Соединив эти точки прямыми, мы получаем кривую, которая с определенной точностью повторяет исходный аналоговый сигнал.

И точность будет тем выше, чем больше частота следования дискретных отсчетов и чем больше доступное количество уровней квантования. Величина, обратная периоду дискретизации, называется частотой дискретизации f = 1/T. На приведенном выше рисунке частота следования дискретных отсчетов равна 6-ти отсчетам в течение 1 миллисекунды, или 6000 отсчетов за 1 сек., что соответствует частоте дискретизации 6000 Гц или 6 кГц.
Высота каждой ячейки будет соответствовать разности уровней квантования, или цене деления нашего цифрового осциллографа. Величина, обратная периоду дискретизации, называется частотой дискретизации, и, соответственно рассчитывается по формуле 1/Т. Необходимо обратить особое внимание на этот параметр, так как в будущем придется с ним сталкиваться при настройке осциллографа.

Теперь увеличим частоту дискретизации в два раза. Это приведет к увеличению количества отсчетов на заданном промежутке также в два раза. Новые точки отсчетов будут располагаться между существующими, в точках пересечения вертикальной и горизонтальной сетки. Объединим все точки в новую кривую.

Очевидно, что новая кривая с большей точностью повторяет исходный график. Из этого можно сделать вывод, что выбор частоты дискретизации основывается на необходимости отображения участков сигнала с наименьшей длительностью.
Например, в сигнале может присутствовать помеха. Если она попадает между отсчетами дискретизации, то мы ее попросту не увидим. С одной стороны – это плюс, т.к. на экране осциллографа мы увидим чистый, незашумленный сигнал, который проще анализировать, с другой же стороны, если помеха влияет на работу исследуемой системы, то, не видя ее на экране, мы невозможно найти закономерность появления помехи с реакцией исследуемой системы.

Теперь рассмотрим ситуацию, когда момент появления помехи совпадет с моментом дискретного отсчета.

В этом случае цифровой сигнал будет иметь значительные отличия от исходного аналогового сигнала. Можно сделать вывод, что представление сигнала набором дискретных отсчетов всегда приводит к потере информации, т.к. мы ничего не знаем о поведении сигнала в промежутках между отсчетами.
Поэтому становится очевидным, что чем выше частота дискретизации, тем точнее воспроизводится сигнал. Как правило, частота дискретизации в цифровых осциллографах является настраиваемой величиной. Либо можно задать ее непосредственно, либо частота подбирается автоматически при настройке развертки для оптимального отображения сигнала на экране.
Увеличение количества уровней квантования также приведет к увеличению точности отображения сигнала, т.к. будет уменьшаться ошибка при округлении сигнала. Количество уровней определяется разрядностью используемого в осциллографе аналого-цифрового преобразователя. Как правило, эта характеристика предоставляется в битах, например 8 бит. Чтобы перейти от битов к количеству уровней, необходимо воспользоваться следующей формулой N=2 n . Что соответствует 256.
В рассмотренном случае, количество уровней было равно 8, чтобы узнать разрядность придуманного АЦП необходимо совершить обратное преобразование, в результате получаем 3 бита. Теперь перейдем от количества уровней к погрешности измерения напряжения. Пусть весь наш сигнал находится в диапазоне от 0 до 5 вольт. Соответственно, чтобы определить шаг сетки, необходимо всю шкалу разделить на количество делений, в результате получаем 5/8 = 0,625 вольта.
IT News
Вы здесь: Главная
Статьи
Статьи ИТ
Как происходит аналого-цифровое преобразование
Как происходит аналого-цифровое преобразование
- Печать

Мир полон изменяемых величин. Некоторые величины изменяются непрерывно, некоторые шаг за шагом. К примеру, такие явления, как температура и громкость звука, изменяются незаметно, мы не замечаем разделения или перехода от одной величины к другой.
Величины, которые изменяются непрерывно, или бесшагово, называются аналоговыми величинами. В противоположность им, переключатель электрического тока может быть либо включен, либо выключен, среднего не дано. Возьмем номер телефона 123-45-67, следующий будет 123-45-68, и ничего посередине. Величины, изменяющиеся пошагово, называются цифровыми.
Электронные схемы внутри компьютера тоже являются цифровыми и действуют на основе двух состояний электрической цепи: есть/нет ток, высокое/ низкое напряжение. Средних величин не существует. Эти два условия соответствуют цифровым значениям единицы и ноля, так что все арифметические величины могут быть представлены в терминах двоичной системы исчисления.
Цифры двоичной системы 1 и 0 могут быть ис-
пользованы в двоичных комбинациях для обозначения других символов, таких как буквы алфавита. Прежде чем информация будет введена в компьютер, она должна быть выражена в цифрах двоичной системы — 1 и 0. Нажатие литерной клавиши на клавиатуре компьютера запускает поезд из единиц и нолей, при помощи которых закодирована данная буква.
С другой стороны, аналоговые величины не могут быть непосредственно введены в компьютер или выведены из него. Сначала они должны быть обработаны при помощи аналого-цифрового преобразователя (А/Ц). К примеру, звуковые волны музыкального тона, уловленного микрофоном, сначала преобразуются в аналоговое напряжение. Затем А/Ц преобразователь производит серию цифровых величин, близко соответствующих оригиналу, и эта цифровая информация вводится в компьютер. Когда необходимо вывести результат, компьютерный цифровой сигнал преобразуется в аналоговый. Технология этого преобразования, или конверсии, позволяет компьютеру получать данные как из цифрового, так и из аналогового миров.
Ввод данных. Данные с клавиатуры введены; голоса из микрофона нет.
Аналоговый сигнал. Сигналы из микрофона поступают в форме звуковых волн.
А/Ц конверсия. Волна представлена в виде лестницы, со степенями из соответствующих высот.
Ввод. Информация выражена теперь в цифровой форме и может быть введена в компьютер.
Цифровой вывод. Компьютер выводит результат в виде цифрового сигнала.
Ц/А конверсия. Цифровой сигнал преобразуется в аналоговый.
Аналоговый вывод. Данные появляются на мониторе или в виде голоса говорящего.
Аналоговая и цифровая конверсия
Чтобы преобразовать аналоговую величину в цифровую, аналоговая информация в виде волны в определенный отрезок времени — к примеру, в течение 1 секунды песни — должна быть разделена на короткие одинаковые сегменты. Затем высота волны в каждом сегменте выражается в форме числовой величины. Таким образом аналоговая величина становится серией числовых величин, причем одна величина соответствует одному сегменту. В свою очередь, числовые величины могут быть представлены компьютером в виде электрических сигналов.
Чтобы преобразовать цифровую величину в аналоговую, необходимо серию цифровых величин перевести в соответствующее напряжение, отдельное для каждого сегмента. Затем этот набор последовательных высот объединяется в плавную звуковую волну.

А/Ц конверсия.
Аналоговая величина в форме волны становится набором двоичных чисел.

Ц/А конверсия.
Цифровые величины становятся аналоговой волной.
Информация в цифровой форме, которая производится нажатием клавиш клавиатуры (внизу слева), может прямо поступить в компьютер. Но информация в аналоговой форме, например, звук голоса, для введения в компьютер должна быть преобразована в цифровую форму. Точно так же вывод из компьютера (внизу) производится только в цифровой форме; чтобы получить аналоге вую информацию, такую как музыка, должно быть произведено цифро-аналоговое преобразование.
Вы здесь: Главная
Статьи
Статьи ИТ
Как происходит аналого-цифровое преобразование
Популярные материалы из данной категории:
![]()
BPWin. Лабораторная работа №1
Тема: Знакомство с CASE-средством разработки информационных систем BPwin Цель работы: познакомиться с CASE-средством BPwin фирмы Computer Associates, научиться строить модель в методологии IDEF0 . Порядок работы:1. Ознакомиться с принципами построения модели…
![]()
Что такое двоичный код?
Всем известно, что компьютеры могут выполнять вычисления с большими группами данных на огромной скорости. Но не все знают, что эти действия зависят всего от двух условий: есть или нет ток и какое напряжение.
![]()
Кто изобрел первый калькулятор?
Интеллектуальное брожение в 17 веке привело к новым высотам и открытиям в математике, что значительно облегчило труд тех, кто неустанно разрабатывал калькуляторы.
![]()
Виды корпусов и блоков питания системного блока
Системный блок – корпус компьютера, в котором находятся основные элементы персонального компьютера или сервера. Его задача в защите внутренней компоновки компьютера от воздействия извне и механических повреждений. Так же не маловажное назначение системного…
Как перевести аналоговый сигнал в цифровой
Телевизионный сигнал — совокупность электрических сигналов, содержащая информацию о телевизионном изображении и звуке. Телевизионный сигнал может передаваться по радио или по кабелю. Термин употребляется в большинстве случаев применительно к аналоговому телевидению, потому что цифровое оперирует таким понятием, как поток данных.
В электронике сигналы делят на: аналоговые, дискретные и цифровые. Начнем с того, что все, что мы чувствуем, видим, слышим в большинстве своем является аналоговым сигналом, а то, что видит процессор компьютера – это цифровой сигнал. Звучит не совсем понятно, поэтому давайте разбираться с этими определениями и с тем как один вид сигналов преобразовывается в другой.

Типы сигналов
В электрическом представлении аналоговый сигнал, судя по его названию, является аналогом реальной величины. Например, вы чувствуете температуру окружающей среды постоянно, на протяжении всей жизни. Нет никаких перерывов. При этом вы чувствуете не только два уровня «горячо» и «холодно», а бесконечное число ощущений, которые описывают эту величину.
Для человека «холодно» может быть по разному, это и осенняя прохлада и зимний мороз, и легкие заморозки, но не всегда «холодно» это отрицательная температура, как и «тепло» — не всегда положительная температура.

Отсюда следует, что у аналогового сигнала две особенности:
1. Непрерывность во времени.
2. Число величин сигнала стремится к бесконечности, т.е. аналоговый сигнал нельзя точно поделить на части или проградуировать, разбив шкалу на конкретные участки. Способы измерения – основаны на единице измерений, и их точность зависит лишь от цены деления шкалы, чем она меньше, тем точнее измерение.
Дискретные сигналы – это сигналы, которые представляют собой последовательность отчетов или измерений какой-либо величины. Измерения таких сигналов не непрерывны, а периодичны.
Попытаюсь объяснить. Если вы установили термометр где-нибудь он измеряет аналоговую величину – это следует из вышеописанного. Но вы, фактически следя за его показаниями, получаете дискретную информацию. Дискретный – значит отдельный.
Например, вы проснулись и узнали, сколько градусов на термометре, в следующий раз вы на него посмотрели на градусник в полдень, и третий раз вечером. Вы не знаете, с какой скоростью изменялась температура, равномерно, или резким скачком, вы знаете только данные в тот момент времени, который наблюдали.
Цифровые сигналы – это набор уровней, типа 1 и 0, высокий и низкий, есть или нет. Глубина отражения информации в цифровом виде ограничена разрядностью цифрового устройства (набора логики, микроконтроллера, процессора etc.) Получается что для хранения булевых данных он подходит идеально. Пример, можно привести следующий, для хранений данных типа «День» и «Ночь», достаточно 1 бита информации.
Бит – это минимальная величина представления информации в цифровом виде, в нём может храниться только два типа значений 1 (логическая единица, высокий уровень), или 0 (логический ноль, низкий уровень).
В электронике бит информации представляется в виде низкого уровня напряжения (близкое к 0) и высокого уровня напряжения (зависит от конкретного устройства, часто совпадает с напряжением питания данного цифрового узла, типовые значения – 1.7, 3.3. 5В, 15В).

Все промежуточные значения между принятыми низким и высоким уровнем являются переходной областью и могут не обладать конкретным значением, в зависимости от схемотехники, как устройства в целом, так и внутренней схемы микроконтроллера (или любого другого цифрового устройства) могут иметь разный переходный уровень, например для 5-тивольтовой логики за ноль могут приниматься значения напряжения от 0 до 0.8В, а за единицу от 2В до 5В, при этом промежуток между 0.8 и 2В – это неопределенная зона, фактически с ее помощью отделяется ноль от единицы.
Чем более точные и ёмкие значения нужно хранить, тем больше нужно бит, приведем таблицу-пример с отображением в цифровом виде четырёх значений времени суток:
Ночь – Утро – День – Вечер
Для этого нам нужно уже 2 бита:

Аналогово-цифровое преобразование
В общем случае аналогово-цифровым преобразованием называется процесс перевода физической величины в цифровое значение. Цифровым значением является набор единиц и нолей воспринятых обрабатывающим устройством.
Такое преобразование нужно для взаимодействия цифровой техники с окружающей средой.
Так как аналоговый электрический сигнал повторяет своей формой входной сигнал, он не может быть записан в цифровом виде «так как есть» поскольку он имеет бесконечное число значений. Примером можно привести процесс записи звука. Он в первичном виде выглядит так:

Он представляет собой сумму волн с различными частотами. Которые, при разложении по частотам (подробнее об этом смотрите преобразования Фурье), так или иначе, можно приблизить к похожей картинке:

Теперь попробуйте это представить в виде набора типа «111100101010100», довольно сложно, не так ли?
Другим примером необходимости преобразования аналоговой величины в цифровую, является её измерение: электронные термометры, вольтметры, амперметры и прочие измерительные приборы взаимодействую с аналоговыми величинами.
Как происходит преобразование?
Сначала посмотрите на схему типового преобразования аналогового сигнала в цифровой и обратно. Позже мы к ней вернемся.

Фактически это сложный процесс, который состоит из двух основных этапов:
1. Дискретизация сигнала.
2. Квантование по уровню.
Дискретизация сигнала это определения промежутков времени, на которых измеряется сигнал. Чем короче эти промежутки – тем точнее измерение. Периодом дискретизации (Т) называется отрезок времени от начала считывания данных до его конца. Частота дискретизации (f) – это обратная величина:
После считывания сигнала происходит его обработка и сохранение в память.
Получается, что за время, которое считываются и обрабатываются показания сигнала, он может измениться, таким образом, происходит искажение измеряемой величины. Есть такая теорема Котельникова и из нее вытекает такое правило:
Частота дискретизации должны быть как минимум в 2 раза больше чем частота дискретизируемого сигнала.
Это скриншот из википедии, с выдержкой из теоремы.

Для определения численного значение необходимо квантование по уровню. Квант – это определенный промежуток измеряемых значений, усреднено приведенный к определенному числу.
Т.е. сигналы величиной от X1 до X2, условно приравнивается к определенному значению Xy. Это напоминает цену деления стрелочного измерительного прибора. Когда вы снимаете показания, зачастую вы их равняете по ближайшей отметке на шкале прибора.
Так и с квантованием по уровню, чем больше квантов, тем более точные измерения и тем больше знаков после запятой (сотых, тысячных и так далее значений) они могут содержать.
Точнее сказать число знаков после запятой скорее определяется разрядностью АЦП.

На картинке изображен процесс квантования сигнала с помощью одного бита информации, как я описывал выше, когда при превышении определенного предела принимается значение высокого уровня.
Справа показано квантование сигнала, и запись в виде двух бит данных. Как видите, этот фрагмент сигнала разбит уже на четыре значения. Получается, что в результате плавный аналоговый сигнал превратился в цифровой «ступенчатый» сигнал.
Количество уровней квантования определяется по формуле:
де n — количество разрядов, N — уровень квантования.
Вот пример сигнала разбитого на большее число квантов:

Отсюда очень хорошо видно, что чем чаще снимаются значения сигнала (больше частота дискретизации), тем точнее он измеряется.

На этой картинке изображено преобразование аналогового сигнала в цифровой вид, а слева от оси ординат (вертикальной оси) запись в цифровом 8-битном виде.
Аналогово-цифровые преобразователи
АЦП или Аналогово-цифровой преобразователь может выполняться в виде отдельного устройства или быть встроенным в микроконтроллер.
Ранее в микроконтроллеры, например семейства MCS-51, не содержали в своем составе АЦП, использовалась для этого внешняя микросхема и возникала необходимость писать подпрограмму обработки значений внешней ИМС.

Сейчас они есть в большинстве современных микроконтроллеров, например AVR AtMEGA328, который является основой большинства популярных плат Ардуино, он встроен в сам МК. На языке Arduino чтение аналоговых данных осуществляется просто – командой AnalogRead(). Хотя в микропроцессоре, который установлен в той же не менее популярной Raspberry PI его нет, так что не все так однозначно.
Фактически существует большое число вариантов аналогово-цифровых преобразователей, у каждого из которых есть свои недостатки и преимущества. Описывать которые в пределах этой статьи не имеет особого смысла, так как это большой объём материала. Рассмотрим лишь общую структуру некоторых из них.
Самым старым запатентованным вариантом АЦП, является патент Paul M. Rainey, «Facsimile Telegraph System,» U.S. Patent 1,608,527, Filed July 20, 1921, Issued November 30, 1926. Это 5-ти битный АЦП прямого преобразования. Из названия патента приходят мысли о том, что использование этого прибора было связано с передачей данных через телеграф.

Если говорить о современных АЦП прямого преобразования имеют следующую схему:

Отсюда видно, что вход представляет собой цепочку из компараторов, которые на выходе своем выдают сигнал при пересечении какого-то порогового сигнала. Это и есть разрядность и квантование. Кто хоть немного силен в схемотехнике, увидел этот очевидный факт.
Кто не силен, то входная цепь работает таким образом:
Аналоговый сигнал поступает на вход «+», на все сразу. На выходы с обозначением «-» поступает опорное напряжение, которое раскладывается с помощью цепочки резисторов (резистивного делителя) на ряд опорных напряжений. К примеру, ряд для этой цепи выглядит наподобие такого соотношения:
Urefi=(1/16, 3/16, 5/16, 7/16, 9/16, 11/16, 13/16)*Uref
В скобках через запятую указано, какую часть от общего опорного напряжения Uref подают на вход каждого входного напряжения.
Т.е. каждый из элементов имеет два входа, когда напряжение на входе со знаком «+»превышает напряжение на входе со знаком «-», то на его выходе появляется логическая единица. Когда на положительном (неинвертирующем) входе напряжение меньше, чем на отрицательно (инвертирующем), то на выходе – ноль.

Напряжение делиться таким образом, чтобы входное напряжение разбить на нужное количество разрядов. При достижении напряжения на входе на выходе соответствующего элемента появляется сигнал, схема обработки выводит «правильный» сигнал в цифровом виде.
Такой компаратор хорош скоростью обработки данных, все элементы входной цепи срабатывают параллельно, основная задержка этого вида АЦП формируется из задержки 1 компаратора (все же одновременно параллельно срабатывают) и задержки шифратор.
Однако есть огромный недостаток параллельных цепей – это необходимость большого числа компараторов, для получения АЦП высокой разрядности. Чтобы получить, например 8 разрядов, нужно 2^8 компараторов, а это целых 256 штук. Для десятиразрядного (в ардуино 10-разрядный АЦП, кстати, но другого типа) нужно 1024 компаратора. Судите сами о целесообразности такого варианта обработки, и где он может понадобиться.
Есть и другие виды АЦП:
- последовательного приближения;
- дельта-сигма АЦП.
Заключение
Преобразование аналогового сигнала в цифровой нужно для считывания параметров с аналоговых датчиков. Есть отдельный вид цифровых датчиков, они представляют собой либо интегральные микросхемы, например DS18b20 – на его выходе уже цифровой сигнал и его можно обрабатывать любыми микроконтроллерами или микропроцессорами без необходимости применения АЦП, или аналоговый датчик на плате на которой уже размещен свой преобразователь. У каждого типа датчиков есть свои плюсы и минусы, такие как помехоустойчивость и погрешность измерений.
Знание принципов преобразование обязательно для всех кто работает с микроконтроллерами, ведь не в каждой даже современной системе встроены такие преобразователи, приходится использовать внешние микросхемы. Для примера можно привести такую плату, разработанную специально под GPIO-разъём Raspberry PI, с прецизионным АЦП на ADS1256.
Ранее ЭлектроВести писали, что в ласти Вены запустили тестирование технологии умных камер, которые будут распознавать приближение пешеходов и подавать сигнал на светофор.
Как происходит преобразование аналогового сигнала в цифровой
В электронике сигналы делят на: аналоговые, дискретные и цифровые. Начнем с того, что все, что мы чувствуем, видим, слышим в большинстве своем является аналоговым сигналом, а то, что видит процессор компьютера – это цифровой сигнал. Звучит не совсем понятно, поэтому давайте разбираться с этими определениями и с тем как один вид сигналов преобразовывается в другой.
Содержание статьи
- Типы сигналов
- Аналогово-цифровое преобразование
- Как происходит преобразование?
- Аналогово-цифровые преобразователи
- Обучение программированию и созданию устройств на микроконтроллерах AVR

Типы сигналов
В электрическом представлении аналоговый сигнал, судя по его названию, является аналогом реальной величины. Например, вы чувствуете температуру окружающей среды постоянно, на протяжении всей жизни. Нет никаких перерывов. При этом вы чувствуете не только два уровня «горячо» и «холодно», а бесконечное число ощущений, которые описывают эту величину.
Для человека «холодно» может быть по разному, это и осенняя прохлада и зимний мороз, и легкие заморозки, но не всегда «холодно» это отрицательная температура, как и «тепло» — не всегда положительная температура.

Отсюда следует, что у аналогового сигнала две особенности:
1. Непрерывность во времени.
2. Число величин сигнала стремится к бесконечности, т.е. аналоговый сигнал нельзя точно поделить на части или проградуировать, разбив шкалу на конкретные участки. Способы измерения – основаны на единице измерений, и их точность зависит лишь от цены деления шкалы, чем она меньше, тем точнее измерение.
Дискретные сигналы – это сигналы, которые представляют собой последовательность отчетов или измерений какой-либо величины. Измерения таких сигналов не непрерывны, а периодичны.
Попытаюсь объяснить. Если вы установили термометр где-нибудь он измеряет аналоговую величину – это следует из вышеописанного. Но вы, фактически следя за его показаниями, получаете дискретную информацию. Дискретный – значит отдельный.
Например, вы проснулись и узнали, сколько градусов на термометре, в следующий раз вы на него посмотрели на градусник в полдень, и третий раз вечером. Вы не знаете, с какой скоростью изменялась температура, равномерно, или резким скачком, вы знаете только данные в тот момент времени, который наблюдали.
Цифровые сигналы – это набор уровней, типа 1 и 0, высокий и низкий, есть или нет. Глубина отражения информации в цифровом виде ограничена разрядностью цифрового устройства (набора логики, микроконтроллера, процессора etc.) Получается что для хранения булевых данных он подходит идеально. Пример, можно привести следующий, для хранений данных типа «День» и «Ночь», достаточно 1 бита информации.
Бит – это минимальная величина представления информации в цифровом виде, в нём может храниться только два типа значений 1 (логическая единица, высокий уровень), или 0 (логический ноль, низкий уровень).
В электронике бит информации представляется в виде низкого уровня напряжения (близкое к 0) и высокого уровня напряжения (зависит от конкретного устройства, часто совпадает с напряжением питания данного цифрового узла, типовые значения – 1.7, 3.3. 5В, 15В).

Все промежуточные значения между принятыми низким и высоким уровнем являются переходной областью и могут не обладать конкретным значением, в зависимости от схемотехники, как устройства в целом, так и внутренней схемы микроконтроллера (или любого другого цифрового устройства) могут иметь разный переходный уровень, например для 5-тивольтовой логики за ноль могут приниматься значения напряжения от 0 до 0.8В, а за единицу от 2В до 5В, при этом промежуток между 0.8 и 2В – это неопределенная зона, фактически с ее помощью отделяется ноль от единицы.
Чем более точные и ёмкие значения нужно хранить, тем больше нужно бит, приведем таблицу-пример с отображением в цифровом виде четырёх значений времени суток:
Ночь – Утро – День – Вечер
Для этого нам нужно уже 2 бита:

Аналогово-цифровое преобразование
В общем случае аналогово-цифровым преобразованием называется процесс перевода физической величины в цифровое значение. Цифровым значением является набор единиц и нолей воспринятых обрабатывающим устройством.
Такое преобразование нужно для взаимодействия цифровой техники с окружающей средой.
Так как аналоговый электрический сигнал повторяет своей формой входной сигнал, он не может быть записан в цифровом виде «так как есть» поскольку он имеет бесконечное число значений. Примером можно привести процесс записи звука. Он в первичном виде выглядит так:

Он представляет собой сумму волн с различными частотами. Которые, при разложении по частотам (подробнее об этом смотрите преобразования Фурье), так или иначе, можно приблизить к похожей картинке:

Теперь попробуйте это представить в виде набора типа «111100101010100», довольно сложно, не так ли?
Другим примером необходимости преобразования аналоговой величины в цифровую, является её измерение: электронные термометры, вольтметры, амперметры и прочие измерительные приборы взаимодействую с аналоговыми величинами.
Как происходит преобразование?
Сначала посмотрите на схему типового преобразования аналогового сигнала в цифровой и обратно. Позже мы к ней вернемся.

Фактически это сложный процесс, который состоит из двух основных этапов:
1. Дискретизация сигнала.
2. Квантование по уровню.
Дискретизация сигнала это определения промежутков времени, на которых измеряется сигнал. Чем короче эти промежутки – тем точнее измерение. Периодом дискретизации (Т) называется отрезок времени от начала считывания данных до его конца. Частота дискретизации (f) – это обратная величина:
После считывания сигнала происходит его обработка и сохранение в память.
Получается, что за время, которое считываются и обрабатываются показания сигнала, он может измениться, таким образом, происходит искажение измеряемой величины. Есть такая теорема Котельникова и из нее вытекает такое правило:
Частота дискретизации должны быть как минимум в 2 раза больше чем частота дискретизируемого сигнала.
Это скриншот из википедии, с выдержкой из теоремы.

Для определения численного значение необходимо квантование по уровню. Квант – это определенный промежуток измеряемых значений, усреднено приведенный к определенному числу.
Т.е. сигналы величиной от X1 до X2, условно приравнивается к определенному значению Xy. Это напоминает цену деления стрелочного измерительного прибора. Когда вы снимаете показания, зачастую вы их равняете по ближайшей отметке на шкале прибора.
Так и с квантованием по уровню, чем больше квантов, тем более точные измерения и тем больше знаков после запятой (сотых, тысячных и так далее значений) они могут содержать.
Точнее сказать число знаков после запятой скорее определяется разрядностью АЦП.

На картинке изображен процесс квантования сигнала с помощью одного бита информации, как я описывал выше, когда при превышении определенного предела принимается значение высокого уровня.
Справа показано квантование сигнала, и запись в виде двух бит данных. Как видите, этот фрагмент сигнала разбит уже на четыре значения. Получается, что в результате плавный аналоговый сигнал превратился в цифровой «ступенчатый» сигнал.
Количество уровней квантования определяется по формуле:
Где n — количество разрядов, N — уровень квантования.
Вот пример сигнала разбитого на большее число квантов:

Отсюда очень хорошо видно, что чем чаще снимаются значения сигнала (больше частота дискретизации), тем точнее он измеряется.

На этой картинке изображено преобразование аналогового сигнала в цифровой вид, а слева от оси ординат (вертикальной оси) запись в цифровом 8-битном виде.
Аналогово-цифровые преобразователи
АЦП или Аналогово-цифровой преобразователь может выполняться в виде отдельного устройства или быть встроенным в микроконтроллер.
Ранее в микроконтроллеры, например семейства MCS-51, не содержали в своем составе АЦП, использовалась для этого внешняя микросхема и возникала необходимость писать подпрограмму обработки значений внешней ИМС.

Сейчас они есть в большинстве современных микроконтроллеров, например AVR AtMEGA328, который является основой большинства популярных плат Ардуино, он встроен в сам МК. На языке Arduino чтение аналоговых данных осуществляется просто – командой AnalogRead(). Хотя в микропроцессоре, который установлен в той же не менее популярной Raspberry PI его нет, так что не все так однозначно.
Фактически существует большое число вариантов аналогово-цифровых преобразователей, у каждого из которых есть свои недостатки и преимущества. Описывать которые в пределах этой статьи не имеет особого смысла, так как это большой объём материала. Рассмотрим лишь общую структуру некоторых из них.
Самым старым запатентованным вариантом АЦП, является патент Paul M. Rainey, «Facsimile Telegraph System,» U.S. Patent 1,608,527, Filed July 20, 1921, Issued November 30, 1926. Это 5-ти битный АЦП прямого преобразования. Из названия патента приходят мысли о том, что использование этого прибора было связано с передачей данных через телеграф.

Если говорить о современных АЦП прямого преобразования имеют следующую схему:

Отсюда видно, что вход представляет собой цепочку из компараторов, которые на выходе своем выдают сигнал при пересечении какого-то порогового сигнала. Это и есть разрядность и квантование. Кто хоть немного силен в схемотехнике, увидел этот очевидный факт.
Кто не силен, то входная цепь работает таким образом:
Аналоговый сигнал поступает на вход «+», на все сразу. На выходы с обозначением «-» поступает опорное напряжение, которое раскладывается с помощью цепочки резисторов (резистивного делителя) на ряд опорных напряжений. К примеру, ряд для этой цепи выглядит наподобие такого соотношения:
Urefi=(1/16, 3/16, 5/16, 7/16, 9/16, 11/16, 13/16)*Uref
В скобках через запятую указано, какую часть от общего опорного напряжения Uref подают на вход каждого входного напряжения.
Т.е. каждый из элементов имеет два входа, когда напряжение на входе со знаком «+» превышает напряжение на входе со знаком «-», то на его выходе появляется логическая единица. Когда на положительном (неинвертирующем) входе напряжение меньше, чем на отрицательно (инвертирующем), то на выходе – ноль.

Напряжение делиться таким образом, чтобы входное напряжение разбить на нужное количество разрядов. При достижении напряжения на входе на выходе соответствующего элемента появляется сигнал, схема обработки выводит «правильный» сигнал в цифровом виде.
Такой компаратор хорош скоростью обработки данных, все элементы входной цепи срабатывают параллельно, основная задержка этого вида АЦП формируется из задержки 1 компаратора (все же одновременно параллельно срабатывают) и задержки шифратор.
Однако есть огромный недостаток параллельных цепей – это необходимость большого числа компараторов, для получения АЦП высокой разрядности. Чтобы получить, например 8 разрядов, нужно 2^8 компараторов, а это целых 256 штук. Для десятиразрядного (в ардуино 10-разрядный АЦП, кстати, но другого типа) нужно 1024 компаратора. Судите сами о целесообразности такого варианта обработки, и где он может понадобиться.
Есть и другие виды АЦП:
- последовательного приближения;
- дельта-сигма АЦП.
Преобразование аналогового сигнала в цифровой нужно для считывания параметров с аналоговых датчиков. Есть отдельный вид цифровых датчиков, они представляют собой либо интегральные микросхемы, например DS18b20 – на его выходе уже цифровой сигнал и его можно обрабатывать любыми микроконтроллерами или микропроцессорами без необходимости применения АЦП, или аналоговый датчик на плате на которой уже размещен свой преобразователь. У каждого типа датчиков есть свои плюсы и минусы, такие как помехоустойчивость и погрешность измерений.
Знание принципов преобразование обязательно для всех кто работает с микроконтроллерами, ведь не в каждой даже современной системе встроены такие преобразователи, приходится использовать внешние микросхемы. Для примера можно привести такую плату, разработанную специально под GPIO-разъём Raspberry PI, с прецизионным АЦП на ADS1256.
Обучение программированию и созданию устройств на микроконтроллерах AVR
У электронщиков, специализирующихся на проектировании микроконтроллерных устройств, существует термин «быстрый старт » . Относится он к случаю, когда надо в короткий срок опробовать микроконтроллер и заставить его выполнять простейшие задачи.
Цель состоит в том, чтобы, не углубляясь в подробности, освоить технологию программирования и быстро получить конкретный результат. Полное представление, навыки и умения появятся позже в процессе работы.
Освоить работу с микроконтроллерами в режиме «быстрый старт», научиться их программировать и создавать различные полезные умные электронные устройства можно легко с помощью обучающих видеокурсов Максима Селиванова в которых все основные моменты разложены по полочкам.
Методика быстрого изучения принципов работы с микроконтроллерами основывается на том, что достаточно освоить базовую микросхему, чтобы затем достаточно уверенно составлять программы к другим ее разновидностям. Благодаря этому первые опыты по программировании микроконтроллеров проходят без особых затруднений. Получив базовае знания можно приступать к разработке собственных конструкций.
На данный момент у Максима Селиванова есть 4 курса по созданию устройств на микроконтроллерах, построенные по принципу от простого к сложному.

Курс для тех, кто уже знаком с основами электроники и программирования, кто знает базовые электронные компоненты, собирает простые схемы, умеет держать паяльник и желает перейти на качественно новый уровень, но постоянно откладывает этот переход из-за сложностей в освоении нового материала.
Курс замечательно подойдет и тем, кто только недавно предпринял первые попытки изучить программирование микроконтроллеров, но уже готов все бросить от того, что у него ничего не работает или работает, но не так как ему нужно (знакомо?!).
Курс будет полезен и тем, кто уже собирает простенькие (а может и не очень) схемы на микроконтроллерах, но плохо понимает суть того как микроконтроллер работает и как взаимодействует с внешними устройствами.
Курс посвящен обучению программирования микроконтроллеров на языке Си. Отличительная особенность курса — изучение языка на очень глубоком уровне. Обучение происходит на примере микроконтроллеров AVR. Но, в принципе, подойдет и для тех, кто использует другие микроконтроллеры.
Курс рассчитан на подготовленного слушателя. То есть, в курсе не рассматриваются базовые основы информатики и электроники и микроконтроллеров. Но, что бы освоить курс понадобятся минимальные знания по программированию микроконтроллеров AVR на любом языке. Знания электроники желательны, но не обязательны.
Курс идеально подойдет тем, кто только начал изучать программирование AVR микроконтроллеров на языке С и хочет углубить свои знания. Хорошо подойдет и тем, кто немного умеет программировать микроконтроллеры на других языках. И еще подойдет обычным программистам, которые хотят углубить знания в языке Си.
Этот курс для тех, кто не хочет ограничиваться в своем развитии простыми или готовыми примерами. Курс отлично подойдет тем, кому важно создание интересных устройств с полным пониманием того, как они работают. Курс хорошо подойдет и тем, кто уже знаком с программированием микроконтроллеров на языке Си и тем, кто уже давно программирует их.
Материал курса прежде всего ориентирован на практику использования. Рассматриваются следующие темы: радиочастотная идентификация, воспроизведение звука, беспроводной обмен данными, работа с цветными TFT дисплеями, сенсорным экраном, работа с файловой системой FAT SD-карты.
Дисплеи NEXTION представляют собой программируемые дисплеи с тачскрином и UART для создания самых разных интерфейсов на экране. Для программирования используется очень удобная и простая среда разработки, которая позволяет создавать даже очень сложные интерфейсы для различной электроники буквально за пару вечеров! А все команды передаются через интерфейс UART на микроконтроллер или компьютер. Материал курса составлен по принципу от простого к сложному.
Этот курс рассчитан на тех, кто хотя бы немного имеет опыта в программировании микроконтроллеров или arduino. Курс отлично подойдет и для тех, кто уже пытался изучать дисплеи Nextion . Из курса вы узнаете много новой информации, даже если думаете, что хорошо изучили дисплей!

Приближается осень, а вместе с ней наступит День знаний! Это отличная пора для новых дел, идей и начинаний и самое время для обучения. Используйте это время с пользой для прокачки своих знаний!
Полный курс обучения программированию микроконтроллеров со скидкой: Все 4 курса со скидкой
- Мощность резистора: обозначение на схеме, как увеличить, что делать, если нет подходящего
- Как проверить диодный мост
- Вся правда о регулировке яркости светодиодных ламп: диммеры, драйверы и теория
Надеюсь, что эта статья была для вас полезной. Смотрите также другие статьи в категории Электрическая энергия в быту и на производстве » Практическая электроника
Подписывайтесь на канал в Telegram про электронику для профессионалов и любителей: Практическая электроника на каждый день
Поделитесь этой статьей с друзьями: