Файл: Курсовой проект по курсу Проектирование цифровых вычислительных (у правляющих) устройств.docx
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 17.03.2024
Просмотров: 59
Скачиваний: 1
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
СОДЕРЖАНИЕ
Подсистемавводааналоговыхсигналов
Вариант: 200
Число аналоговых входов, шт……………………………………………….NAI= 4
Минимальный уровень сигнала на входе, В……………………………....UMIN= 0
Максимальный уровень сигнала на входе, В…………………………...UMAX= 3,5
Период опроса аналоговых входов, мс…………………………………...TAI= 140
Способ обработки измеренных значений………………………Поиск минимума 4 последних значений
Подсистемавводадискретных сигналов
Число дискретных входов, шт………………………………………………NDI= 3
Тип дискретных входов…………………………Потенциальный вход «0…24 В»
Период опроса дискретных входов, мс…………………………………..TDI= 420
Активное состояние входов…………………………………………………ADI= 0
Способ обработки входных сигналов …......Сброс результатов измерений по соответствующему аналоговому входу
Подсистемавыводадискретныхсигналов
Число дискретных выходов, шт……………………………………………NDO= 2
Тип дискретных выходов………………………….....Открытый коллектор (сток)
Период обновления дискретных выходов, мс…………………………..TDO= 420
Коммутируемое напряжение, В…………………………………………UDO= 11
Допустимый ток, мА………………………………………………………IDO= 300
Способ управления выходами……………............................Активировать выход при |0.5RESAI_MAX – RESAI| < 0,42 × RESAI_MAX
Активное состояние выходов………………………………………………ADO= 0
Тип сброса выходов в неактивное состояние………………В соответствии с результатом измерения по аналоговому входу (при невыполнении условия активации)
Подсистемаиндикации
Тип
индикации……………………………………...........Один семисегментный индикатор, отображает номер аналогового входа с максимальным значением RESAI
Подсистема связисВУ
Тип интерфейса………………………………………………......................RS-485
Способ взаимодействия с ВУ: периодическая передача текущего состояния ССОИ в виде символьной строки. Под текущим состоянием ССОИ подразумеваются текущие значения RESAIдля каждого аналогового входа, выраженные в вольтах, а также текущие состояния («0» или «1») каждого дискретного входа и выхода.
Период передачи, мс………………………………………………….TCOMM= 1400
Рисунок 2.1 Структурная схема ССОИ
ПВвАС – подсистема ввода аналоговых сигналов; ПВвДС – подсистема ввода дискретных
сигналов; ЦПМ – центральный процессорный модуль; ПИ – подсистема индикации;
ПВывДС – подсистема вывода дискретных сигналов; ПС – подсистема связи.
Центральный процессорный модуль (ЦПМ) является основным узлом системы, координирующим работу остальных элементов и обеспечивающим выполнение алгоритма её функционирования. Подсистема ввода аналоговых сигналов (ПВвАС) обеспечивает приведение уровней входных сигналов к требуемому диапазону, преобразование их в цифровую форму и передачу в ЦПМ. Подсистема ввода дискретных сигналов (ПВвДС) выполняет согласование уровней входных сигналов с логическими уровнями ЦПМ и передаёт текущие значения этих сигналов в процессорный модуль. Подсистема вывода дискретных сигналов (ПВывДС) получает от ЦПМ информацию о логических уровнях на каждом выходе и преобразует её в выходные электрические сигналы с требуемыми характеристиками. Подсистема индикации (ПИ) обеспечивает информирование оператора о текущем состоянии ССОИ. Подсистема связи ПС передаёт информацию о текущем состоянии ССОИ на более высокий уровень АСУ ТП, а также обеспечивает получение команд с ВУ.
Подсистема ввода аналоговых сигналов состоит из нормирующих усилителей НУ1, НУ2, НУ3, НУ4, аналогового коммутатора К, устройства выборки и хранения УВХ и аналого-цифрового преобразователя АЦП. Нормирующие усилители необходимы для приведения диапазонов изменения входных сигналов AI1, AI2, AI3, AI4к рабочему диапазону АЦП. Коммутатор К поочерёдно выбирает каналы для измерения, подключая их к входу УВХ. Выбором каналов управляет процессор П, подавая на адресные входы коммутатора код (номер) подключаемого канала. Текущие уровни сигналов на входах AI1, AI2, AI3, AI4 в общем случае могут изменяться в процессе измерения, что приведёт к снижению точности аналого-цифрового преобразования. Для уменьшения погрешности преобразования служит УВХ, запоминающее текущий уровень сигнала на входе на время преобразования. Перед тем, как начать преобразование, процессор переводит УВХ в режим хранения, а затем активизирует сигнал «Пуск АЦП». АЦП информирует об окончании преобразования, активируя сигнал «Готовность», после чего процессор может считать результат из регистра данных АЦП.
Подсистема ввода дискретных сигналов включает в себя узлы согласования УС1, УС2, УС3 и порт ввода ПВв с разрядностью не менее 3. УС преобразуют входные сигналы DI1, DI2, DI3 в сигналы с уровнями логического «0» или «1», используемыми в МПС. Каждый сигнал подключается к отдельному разряду ПВв. Таким образом, считывая содержимое ПВв, процессор получает двоичное слово, значение каждого разряда в котором соответствует уровню сигнала на входе.
Рисунок 2.2 Функциональная схема ССОИ
Подсистема вывода дискретных сигналов состоит из узлов согласования УС1, УС2 и порта вывода ПВыв1 с разрядностью не менее 2. Запись процессором в ПВыв1 двоичного слова приводит к тому, что на выходах ПВыв1 формируются сигналы с логическими уровнями, соответствующими значениям двоичных разрядов записанного слова.
Подсистема связи представлена универсальным асинхронным приемопередатчиком УАПП и драйвером последовательного интерфейса ДПИ. Передатчик получает от процессора двоичное слово (символ), преобразует его в формат асинхронной посылки и выдаёт на выходе в последовательном виде. Приёмник постоянно прослушивает линию связи и при обнаружении асинхронной посылки принимает её, преобразует в двоичное слово и сохраняет в своём регистре данных, откуда затем слово может быть считано процессором. ДПИ осуществляет согласование входа приёмника и выхода передатчика УАПП с уровнями сигналов, используемых заданным последовательным интерфейсом.
Подсистема индикации состоит из порта вывода ПВыв2, ключей KЛ1, KЛ2, KЛ3, KЛ4, KЛ5, KЛ6, KЛ7 и ССИ. Ключи управляют протеканием тока через ССИ, открытие и закрытие ключей осуществляется логическими уровнями с выходов ПВыв2, которые, в свою очередь, определяются значением двоичного слова, записанного в ПВыв2 процессором.
Кроме описанных подсистем, в состав ССОИ входят следующие функциональные блоки:
– постоянное запоминающее устройство (ПЗУ) – предназначено для хранения машинных кодов исполняемой программы и неизменяемых данных (констант);
– оперативное запоминающее устройство (ОЗУ) – используется для хранения данных, изменяемых в процессе работы ССОИ;
– таймер-счётчик (Т/С) – предназначен для отсчёта временных интервалов.
Память ССОИ предназначена для хранения исполняемой программы и вспомогательных переменных. Кроме того, в памяти должны храниться текущие значения входных и выходных дискретных сигналов и несколько измеренных значений для каждого входного аналогового сигнала с целью их статистической обработки в соответствии с индивидуальным заданием. Там же следует зарезервировать место для буфера передачи данных на ВУ.
Исполняемая программа должна сохраняться в памяти при отключении основного питания, остальная информация может при этом теряться. Следовательно, программу следует разместить в ПЗУ, остальные данные – в ОЗУ.
Разрабатываемая ССОИ имеет 3 дискретных входа, 2 дискретных выхода и 4 аналоговых входа. Для каждого аналогового входа необходимо определить минимальное из 4 последних измеренных значений.
Исходя из условия задачи для хранения текущего состояния дискретных входов потребуется 3 бита (1 байт); для хранения состояния дискретных выходов – 2 бита (1 байт).
Чтобы оценить объем памяти, необходимый для хранения значений аналоговых сигналов, нужно знать разрядность АЦП. У большинства современных АЦП общего назначения она обычно не превышает 10…12 бит. Это обеспечивает инструментальную погрешность измерения 0.1…0.02 %, что вполне достаточно для решаемой задачи. Таким образом, одно измеренное значение займёт не более двух байтов. Следовательно, чтобы сохранить по 4 значения для каждого из четырёх каналов потребуется 32 байта.
Буфер передачи данных на ВУ должен вмещать полную информацию о текущем состоянии ССОИ. В рассматриваемом примере эта информация включает 4 максимальных значения для аналоговых входов, 3 флага состояния («0» или «1») дискретных входов и 5 флагов состояния дискретных выходов. Согласно заданию, перечисленные данные должны передаваться в виде текстовой строки. Выбрал форму представления данных каждого типа:
– аналоговое значение: число формата «#.###» ;
– дискретное значение: символ «0» или «1».
Пример передаваемой строки:
«3.425, 1.803, 2.681, 4.921, 010, 10»
Таким образом, 4 аналоговых значения займут в буфере 28 байт (с учётом разделителей), 3 входных дискретных значения – 5 байт (с одним разделителем), 2 выходных дискретных значения – 2 байта. В конце строки следует поместить символы с кодами 0x0D, 0x0A (переход на новую строку) и терминатор со значением 0. Следовательно, под буфер передачи нужно выделить не менее 38 байт.
Общий объём вспомогательных переменных и машинных кодов программы заранее оценить сложно, поскольку они зависят от множества факторов, таких как используемые библиотеки, стиль программирования, уровень оптимизации компилятора, особенности системы команд. Обычно такая оценка выполняется на основании имеющегося опыта аналогичных разработок, рекомендаций экспертов, тестовых программ. Для решаемой задачи можно считать, что вспомогательные переменные займут 1.5…2 Кбайта, а программа – 10…15 Кбайт.
Вариант: 200
Число аналоговых входов, шт……………………………………………….NAI= 4
Минимальный уровень сигнала на входе, В……………………………....UMIN= 0
Максимальный уровень сигнала на входе, В…………………………...UMAX= 3,5
Период опроса аналоговых входов, мс…………………………………...TAI= 140
Способ обработки измеренных значений………………………Поиск минимума 4 последних значений
Подсистемавводадискретных сигналов
Число дискретных входов, шт………………………………………………NDI= 3
Тип дискретных входов…………………………Потенциальный вход «0…24 В»
Период опроса дискретных входов, мс…………………………………..TDI= 420
Активное состояние входов…………………………………………………ADI= 0
Способ обработки входных сигналов …......Сброс результатов измерений по соответствующему аналоговому входу
Подсистемавыводадискретныхсигналов
Число дискретных выходов, шт……………………………………………NDO= 2
Тип дискретных выходов………………………….....Открытый коллектор (сток)
Период обновления дискретных выходов, мс…………………………..TDO= 420
Коммутируемое напряжение, В…………………………………………UDO= 11
Допустимый ток, мА………………………………………………………IDO= 300
Способ управления выходами……………............................Активировать выход при |0.5RESAI_MAX – RESAI| < 0,42 × RESAI_MAX
Активное состояние выходов………………………………………………ADO= 0
Тип сброса выходов в неактивное состояние………………В соответствии с результатом измерения по аналоговому входу (при невыполнении условия активации)
Подсистемаиндикации
Тип
индикации……………………………………...........Один семисегментный индикатор, отображает номер аналогового входа с максимальным значением RESAI
Подсистема связисВУ
Тип интерфейса………………………………………………......................RS-485
Способ взаимодействия с ВУ: периодическая передача текущего состояния ССОИ в виде символьной строки. Под текущим состоянием ССОИ подразумеваются текущие значения RESAIдля каждого аналогового входа, выраженные в вольтах, а также текущие состояния («0» или «1») каждого дискретного входа и выхода.
Период передачи, мс………………………………………………….TCOMM= 1400
-
Разработка аппаратных средств ССОИ
-
Разработка структурной схемы
Рисунок 2.1 Структурная схема ССОИ
ПВвАС – подсистема ввода аналоговых сигналов; ПВвДС – подсистема ввода дискретных
сигналов; ЦПМ – центральный процессорный модуль; ПИ – подсистема индикации;
ПВывДС – подсистема вывода дискретных сигналов; ПС – подсистема связи.
Центральный процессорный модуль (ЦПМ) является основным узлом системы, координирующим работу остальных элементов и обеспечивающим выполнение алгоритма её функционирования. Подсистема ввода аналоговых сигналов (ПВвАС) обеспечивает приведение уровней входных сигналов к требуемому диапазону, преобразование их в цифровую форму и передачу в ЦПМ. Подсистема ввода дискретных сигналов (ПВвДС) выполняет согласование уровней входных сигналов с логическими уровнями ЦПМ и передаёт текущие значения этих сигналов в процессорный модуль. Подсистема вывода дискретных сигналов (ПВывДС) получает от ЦПМ информацию о логических уровнях на каждом выходе и преобразует её в выходные электрические сигналы с требуемыми характеристиками. Подсистема индикации (ПИ) обеспечивает информирование оператора о текущем состоянии ССОИ. Подсистема связи ПС передаёт информацию о текущем состоянии ССОИ на более высокий уровень АСУ ТП, а также обеспечивает получение команд с ВУ.
-
Разработка функциональной схемы
Подсистема ввода аналоговых сигналов состоит из нормирующих усилителей НУ1, НУ2, НУ3, НУ4, аналогового коммутатора К, устройства выборки и хранения УВХ и аналого-цифрового преобразователя АЦП. Нормирующие усилители необходимы для приведения диапазонов изменения входных сигналов AI1, AI2, AI3, AI4к рабочему диапазону АЦП. Коммутатор К поочерёдно выбирает каналы для измерения, подключая их к входу УВХ. Выбором каналов управляет процессор П, подавая на адресные входы коммутатора код (номер) подключаемого канала. Текущие уровни сигналов на входах AI1, AI2, AI3, AI4 в общем случае могут изменяться в процессе измерения, что приведёт к снижению точности аналого-цифрового преобразования. Для уменьшения погрешности преобразования служит УВХ, запоминающее текущий уровень сигнала на входе на время преобразования. Перед тем, как начать преобразование, процессор переводит УВХ в режим хранения, а затем активизирует сигнал «Пуск АЦП». АЦП информирует об окончании преобразования, активируя сигнал «Готовность», после чего процессор может считать результат из регистра данных АЦП.
Подсистема ввода дискретных сигналов включает в себя узлы согласования УС1, УС2, УС3 и порт ввода ПВв с разрядностью не менее 3. УС преобразуют входные сигналы DI1, DI2, DI3 в сигналы с уровнями логического «0» или «1», используемыми в МПС. Каждый сигнал подключается к отдельному разряду ПВв. Таким образом, считывая содержимое ПВв, процессор получает двоичное слово, значение каждого разряда в котором соответствует уровню сигнала на входе.
Рисунок 2.2 Функциональная схема ССОИ
Подсистема вывода дискретных сигналов состоит из узлов согласования УС1, УС2 и порта вывода ПВыв1 с разрядностью не менее 2. Запись процессором в ПВыв1 двоичного слова приводит к тому, что на выходах ПВыв1 формируются сигналы с логическими уровнями, соответствующими значениям двоичных разрядов записанного слова.
Подсистема связи представлена универсальным асинхронным приемопередатчиком УАПП и драйвером последовательного интерфейса ДПИ. Передатчик получает от процессора двоичное слово (символ), преобразует его в формат асинхронной посылки и выдаёт на выходе в последовательном виде. Приёмник постоянно прослушивает линию связи и при обнаружении асинхронной посылки принимает её, преобразует в двоичное слово и сохраняет в своём регистре данных, откуда затем слово может быть считано процессором. ДПИ осуществляет согласование входа приёмника и выхода передатчика УАПП с уровнями сигналов, используемых заданным последовательным интерфейсом.
Подсистема индикации состоит из порта вывода ПВыв2, ключей KЛ1, KЛ2, KЛ3, KЛ4, KЛ5, KЛ6, KЛ7 и ССИ. Ключи управляют протеканием тока через ССИ, открытие и закрытие ключей осуществляется логическими уровнями с выходов ПВыв2, которые, в свою очередь, определяются значением двоичного слова, записанного в ПВыв2 процессором.
Кроме описанных подсистем, в состав ССОИ входят следующие функциональные блоки:
– постоянное запоминающее устройство (ПЗУ) – предназначено для хранения машинных кодов исполняемой программы и неизменяемых данных (констант);
– оперативное запоминающее устройство (ОЗУ) – используется для хранения данных, изменяемых в процессе работы ССОИ;
– таймер-счётчик (Т/С) – предназначен для отсчёта временных интервалов.
-
Оценка объёма памяти и обоснование выбора ОМК-
Оценка объёма памяти
-
Память ССОИ предназначена для хранения исполняемой программы и вспомогательных переменных. Кроме того, в памяти должны храниться текущие значения входных и выходных дискретных сигналов и несколько измеренных значений для каждого входного аналогового сигнала с целью их статистической обработки в соответствии с индивидуальным заданием. Там же следует зарезервировать место для буфера передачи данных на ВУ.
Исполняемая программа должна сохраняться в памяти при отключении основного питания, остальная информация может при этом теряться. Следовательно, программу следует разместить в ПЗУ, остальные данные – в ОЗУ.
Разрабатываемая ССОИ имеет 3 дискретных входа, 2 дискретных выхода и 4 аналоговых входа. Для каждого аналогового входа необходимо определить минимальное из 4 последних измеренных значений.
Исходя из условия задачи для хранения текущего состояния дискретных входов потребуется 3 бита (1 байт); для хранения состояния дискретных выходов – 2 бита (1 байт).
Чтобы оценить объем памяти, необходимый для хранения значений аналоговых сигналов, нужно знать разрядность АЦП. У большинства современных АЦП общего назначения она обычно не превышает 10…12 бит. Это обеспечивает инструментальную погрешность измерения 0.1…0.02 %, что вполне достаточно для решаемой задачи. Таким образом, одно измеренное значение займёт не более двух байтов. Следовательно, чтобы сохранить по 4 значения для каждого из четырёх каналов потребуется 32 байта.
Буфер передачи данных на ВУ должен вмещать полную информацию о текущем состоянии ССОИ. В рассматриваемом примере эта информация включает 4 максимальных значения для аналоговых входов, 3 флага состояния («0» или «1») дискретных входов и 5 флагов состояния дискретных выходов. Согласно заданию, перечисленные данные должны передаваться в виде текстовой строки. Выбрал форму представления данных каждого типа:
– аналоговое значение: число формата «#.###» ;
– дискретное значение: символ «0» или «1».
Пример передаваемой строки:
«3.425, 1.803, 2.681, 4.921, 010, 10»
Таким образом, 4 аналоговых значения займут в буфере 28 байт (с учётом разделителей), 3 входных дискретных значения – 5 байт (с одним разделителем), 2 выходных дискретных значения – 2 байта. В конце строки следует поместить символы с кодами 0x0D, 0x0A (переход на новую строку) и терминатор со значением 0. Следовательно, под буфер передачи нужно выделить не менее 38 байт.
Общий объём вспомогательных переменных и машинных кодов программы заранее оценить сложно, поскольку они зависят от множества факторов, таких как используемые библиотеки, стиль программирования, уровень оптимизации компилятора, особенности системы команд. Обычно такая оценка выполняется на основании имеющегося опыта аналогичных разработок, рекомендаций экспертов, тестовых программ. Для решаемой задачи можно считать, что вспомогательные переменные займут 1.5…2 Кбайта, а программа – 10…15 Кбайт.