- •1 Теоретическая часть
- •1.1 Постановка задачи
- •1.2 Основные технические требования, предъявляемые к разрабатываемому устройству.
- •2 Специальная часть
- •2.1 Разработка структурной схемы проектируемого устройства
- •2.2 Выбор и обоснование электронных компонентов устройства
- •2.3 Разработка принципиальной схемы устройства
- •2.4 Разработка печатной платы
- •2.5 Описание общего алгоритма программного обеспечения
- •2.6 Разработка чертежей
- •2.7 Разработка инструкции по применению устройства
- •2.8 Меры безопасности
- •3 Организационно-экономическая часть
- •3.1 Расчет себестоимости изделия
- •3.2 Расчёт цены изделия и прибыли от его реализации
- •3.3 Расчёт показателей экономической эффективности производства изделия
1.2 Основные технические требования, предъявляемые к разрабатываемому устройству.
Технические требования это один из разделов технических условий, которые разрабатывается по решению разработчика (изготовителя) или по требованию заказчика (потребителя) продукции.
На любые устройства в основных технических требованиях описываются:
- назначение устройства;
- условия эксплуатации;
- основные технические характеристики;
- различные другие требования.
Разрабатываемое устройство изначально рассчитано не на использование в промышленности, а как демонстрационное учебное пособие для изучения процесса преобразования цифровой информации в аналоговую. Данное устройство будет использовано в лаборатории 19 НПГК в нормальных условиях эксплуатации. Основные технические характеристики, которым должен соответствовать разрабатываемый демонстрационный учебный стенд «Цифроаналоговый преобразователь», приведены в таблице 1
Таблица 1 – Основные технические требования проектируемого устройства
№ п/п |
Наименование параметра |
Значение |
1 |
Время установления выходного сигнала ЦАП не более |
0,1 мс |
2 |
Количество разрядов |
8 |
3 |
Погрешность преобразования не более |
1% |
4 |
Нелинейность преобразования не более |
0,1% |
5 |
Скорость преобразования не более |
0,1 мс |
6 |
Стенд относится к ремонтопригодным изделиям |
|
7 |
Код входного сигнала |
Двоичный |
8 |
Длина преобразуемого слова |
8 бит |
9 |
Средний срок службы стенда не менее |
10 лет |
10 |
Поддержка ОС Windows 2000, 2003, XP |
|
11 |
Подключение к компьютеру |
USB-порт |
12 |
Габаритные размеры не более |
160х160х40 |
13 |
Максимальный суммарный ток нагрузки не более |
0,2 А |
14 |
Детали устройства помещены в общий корпус |
|
15 |
Требования безопасности по ГОСТ 21552 |
ГОСТ 21552 |
16 |
Стенд состоит из унифицированных составных частей. |
|
Конструкцией и программным обеспечение стенда, должно быть, предусмотрен демонстрационный показ процесса преобразования цифрового кода в аналоговый сигнал пилообразной, треугольной и произвольной форм. На рисунке 7 показан примерный вид окна программы обеспечивающей взаимодействие оператора (обучаемого) со стендом. В окне программы должны быть расположены виртуальные кнопки 2…7:
- открытия порта USB;
- переключения прорисовки сигналов произвольной, пилообразной и треугольной форм;
- кнопка ручного ввода значения кода на входах ЦАП;
- кнопка ручной очистки прорисованного сигнала, окно индикации кода 1 и окно виртуального осциллографа.
Рисунок 7 – Примерный вид окна программы
1.3 Обзор существующих методов решения поставленной задачи.
Лучшим способом изучения любого электронного устройства является экспериментальное исследование его свойств с применение измерительных приборов. При этом лучше, если испытуемая схема собрана руками самого студента. Однако такой подход в реальности далеко не всегда приемлем по причине отсутствия достаточного времени на сборку схемы, необходимых комплектующих, отсутствия лабораторных условий и необходимого оборудования и т.д. Поэтому в учебной практике применяют различные учебные стенды, на которых уже собраны исследуемые с возможностью упрощенного подключения их отдельным измерительным приборам. В последнее время появились разновидности виртуальных или физически-виртуальных учебных стендов с применением персональных компьютеров.
Достаточно большой выбор учебных стендов предлагает Российское производственное объединение «Росуч прибор» Научно-производственный Институт «Учебная техника и технология» Южно-Уральского государственного университета. Однако подходящих по приемлемой цене учебных стендов для изучения принципа цифроаналоговых преобразователей в его каталоге не оказалось.
В настоящее время промышленность выпускает различные унифицированные модули, посредством которых можно без особых проблем подключать внешние устройства к персональному компьютеру, а с помощью несложных программ производить обмен информацией с этими вешними устройствами и управлять ими. Используя эти модули можно создавать различные учебные стенды, при этом существенно снижаются трудозатраты на изготовление и сборку стенда.
Ниже в этом разделе проводится обзор технических возможностей трех таких модулей:
1) Модуль Ke-USB24A
Модуль Ke-USB24A предназначен для сопряжения внешних цифровых и аналоговых устройств, датчиков и исполнительных механизмов с компьютером через шину USB. Определяется как дополнительный (виртуальный) COM порт. Модуль имеет 24 дискретные линии ввода/вывода с возможностью настройки направления передачи данных (вход/выход) и встроенный 10-ти разрядный АЦП. Для управления модулем предусмотрен набор текстовых команд управления (KE - команды). Общий вид модуля Ke-USB24A представлен на рисунок 8.
Рисунок 8 – Модуль Ke-USB24A
Отличительные особенности:
- интерфейсный модуль для сопряжения по шине USB;
- определяется ОС Windows/Linux как виртуальный COM порт;
- не требует дополнительных схемных элементов, сразу готов к работе;
- 24 дискретные линии ввода/вывода с возможностью независимой настройки направления передачи данных (вход/выход) и сохранения настроек в энергонезависимой памяти модуля;
- встроенный 10-ти разрядный АЦП с гарантированной частотой дискретизации до 400 Гц.;
- динамический диапазон напряжения входного аналогового сигнала для АЦП от 0 до 5 В;
- набор готовых текстовых команд управления высокого уровня (KE - команды);
- удобный форм-фактор в виде модуля с DIP-колодкой и разъемом USB-B;
- возможность питания как от шины USB так и от внешнего источника питания (режим выбирается джампером на плате);
- возможность сохранения данных пользователя в энергонезависимой памяти модуля (до 32 байт);
- возможность изменения строкового дескриптора USB устройства;
каждый модуль имеет уникальный серийный номер доступный программно;
- поддержка ОС Windows 2000, 2003, XP, Vista, OS Linux.
2) Модуль WoodmanUSB
Модуль WoodmanUSB предназначен для решения задачи передачи данных между периферийным устройством и компьютером через шину USB на высоких скоростях (HighSpeed). WoodmanUSB представляет собой двунаправленный мост USB-FIFO с простым и доступным интерфейсом управления. С его помощью можно достичь скорости передачи данных по шине USB до 220 Мбит/с. Внешний вид модуля WoodmanUSB представлен на рисунке 9.
Отличительные особенности:
- двунаправленный мост USB-FIFO;
- параллельный интерфейс передачи данных;
- скорость передачи данных до 220 Мбит/с;
- простой интерфейс для взаимодействия с периферийным устройством (MCU/PLD/FPGA);
Рисунок 9 – Внешний вид модуля WoodmanUSB
- два 8-ми битных независимых двунаправленных порта (PORTA и PORTB);
- порт PORTA работает в режиме прямого ввода/вывода;
- 2 FIFO буфера (входной и выходной). Размер каждого составляет 1024 Байта;
- различные режимы работы;
- прямой ввод/вывод (PORTA);
- асинхронный;
- синхронный с внутренним тактированием (30 или 48 МГц);
- синхронный с внешним тактированием;
- полностью интегрированный USB приемо-передатчик;
- удобная конструкция в виде модуля с DIP-колодкой и разъемом USB;
- не требует дополнительных схемных элементов. Сразу готов к работе;
драйвер и API для разработчиков (Windows 2000, Server 2003 и XP).
WoodmanUSB работает в качестве "моста" между шиной USB и некоторым периферийным устройством (рисунок 10). Он преобразует USB интерфейс данных в 8-ми битный параллельный интерфейс и обратно. С помощью WoodmanUSB можно подключить к шине USB практически любую схему на основе микроконтроллера, процессора, ПЛИС или др. для скоростной передачи данных по шине USB. От периферийного устройства требуется наличие 8-ми разрядной шины данных и 6-ти свободных линий для контроля и управления работой модуля WoodmanUSB.
Рисунок 10 – Принцип работы WoodmanUSB
Модуль содержит два 8-ми битных порта (рисунок 10). Один из них используется для скоростной передачи данных по параллельному интерфейсу (PORTB). Другой же порт (PORTA) работает в режиме прямого ввода-вывода и не требует ни каких линий управления, что позволяет напрямую взаимодействовать с нагрузкой, подключенной к этому порту.
Достоинства и "недостатки" порта PORTA
Можно указать следующие достоинства данного порта:
- простота работы с портом - для управления не требуются дополнительные линии управления;
- режим прямого ввода-вывода: установленный уровень напряжения на выводе порта сохраняется столь долго, пока либо не произойдет отключение питания или не будет установлено новое значение;
- наличие возможности гибкой настройки направления передачи данных через порт. Одновременно часть линий может быть настроена на вход, другая часть на выход. На (рисунке 11) изображены порты WoodmanUSB.
Рисунок 11– Порты WoodmanUSB
Не смотря на простоту изготовления USB устройств на основе использования данного порта, у него есть один важный недостаток, а именно скоростные характеристики.
Рассмотрим выводы WoodmanUSB (рисунок 12, таблица 2).
Рисунок 12 - Выводы WoodmanUSB
Таблица 2 – Назначение выводов модуля WoodmanUSB
Номер вывода |
Обозначение вывода |
Направление |
Описание |
1 |
GND |
|
Земля (общий провод схемы). |
2 |
+5V |
Выход |
Шина питания +5 В от порта USB. |
3 |
+3.3V |
Выход |
Шина питания +3.3 В от преобразователя напряжения. |
4 |
RESET |
Вход |
При подаче низкого уровня на этот вывод будет произведен сброс модуля. |
5 |
PB_RD |
Вход |
Линия чтения данных порта PORTB. При изменении входного уровня с высокого на низкий происходит установка на линии данных порта PORTB текущего байта из входного FIFO буфера модуля (данные из компьютера - IN_FIFO). Теперь возможно чтение этого байта. При переключении обратно на высокий уровень, линии данных возвращаются в исходное состояние, а во входном буфере становится готовым для чтения следующий байт (епри его наличии). |
6 |
PB_WR |
Вход |
Линия записи данных порта PORTB. При изменении входного уровня с высокого на низкий происходит чтение модулем текущих состояний линий данных порта PORTB и запись полученного байта в выходной FIFO буфер модуля (OUT_FIFO). |
7 |
PORTB0 |
Вход/Выход |
Бит 0 двунаправленного порта ввода/вывода PORTB |
8 |
PORTB1 |
Вход/Выход |
Бит 1 двунаправленного порта ввода/вывода PORTB |
9 |
PORTB2 |
Вход/Выход |
Бит 2 двунаправленного порта ввода/вывода PORTB |
10 |
PORTB3 |
Вход/Выход |
Бит 3 двунаправленного порта ввода/вывода PORTB |
11 |
PORTB4 |
Вход/Выход |
Бит 4 двунаправленного порта ввода/вывода PORTB |
12 |
PORTB5 |
Вход/Выход |
Бит 5 двунаправленного порта ввода/вывода PORTB |
13 |
PORTB6 |
Вход/Выход |
Бит 6 двунаправленного порта ввода/вывода PORTB |
14 |
PORTB7 |
Вход/Выход |
Бит 7 двунаправленного порта ввода/вывода PORTB |
15 |
PORTA0 |
Вход/Выход |
Бит 0 двунаправленного порта ввода/вывода PORTA |
16 |
PORTA1 |
Вход/Выход |
Бит 1 двунаправленного порта ввода/вывода PORTA |
17 |
PORTA2 |
Вход/Выход |
Бит 2 двунаправленного порта ввода/вывода PORTA |
Продолжение таблицы 2
Номер вывода |
Обозначение вывода |
Направление |
Описание |
18 |
PORTA3 |
Вход/Выход |
Бит 3 двунаправленного порта ввода/вывода PORTA |
19 |
PORTA4 |
Вход/Выход |
Бит 4 двунаправленного порта ввода/вывода PORTA |
20 |
PORTA5 |
Вход/Выход |
Бит 5 двунаправленного порта ввода/вывода PORTA |
21 |
PORTA6 |
Вход/Выход |
Бит 6 двунаправленного порта ввода/вывода PORTA |
22 |
PORTA7 |
Вход/Выход |
Бит 7 двунаправленного порта ввода/вывода PORTA |
23 |
PORTB_FF |
Выход |
(FIFO FULL) Если уровень на этом выводе становится низким, это означает что драйвер не успевает транспортировать данные из модуля при их передаче от внешнего устройства в компьютер через PORTB. Необходимо приостановить передачу данных, пока уровень не вернется в свое исходное состояние - высокий. |
24 |
PORTB_FNE |
Выход |
(FIFO not EMPTY) Если уровень на этом выводе становится высоким, это означает что компьютер начинает передачу данных и в буфере модуля есть доступные данные для чтения через порт PORTB. Уровень сохраняется высоким, пока IN_FIFO буфер не будет прочтен полностью. При отсутствии данных уровень низкий. |
25 |
PKTEND |
Вход |
Флаг завершения записи данных в порт PORTB. При подаче низкого уровня на этот вывод, драйвер модуля завершает операцию чтения данных не дожидаясь окончания чтения заказанного количества байт данных. |
26 |
CLK |
Вход/Выход |
Линия тактового сигнала, используемая в синхронном режиме работы порта PORTB. В зависимости от того какой вид тактового сигнала используется (внешний или внутренний) линия является входной или выходной. |
27 |
+5V |
Выход |
Шина питания +5 В от порта USB. |
28 |
GND |
|
Земля (общий провод схемы). |
3) Модуль Ke-USB24R предназначен для сопряжения внешних цифровых и аналоговых устройств, датчиков и исполнительных механизмов с компьютером через шину USB. Благодаря наличию четырех мощных реле появляется возможность управлять силовыми цепями с напряжениями до 250 В непосредственно с компьютера. На компьютере под управлением операционной системы Windows 2000, 2003, XP, Vista и ОС семейства Linux модуль определяется как дополнительный (виртуальный) COM порт. Это означает, что с программной точки зрения обмен информацией между модулем и компьютером осуществляется через интерфейс обычного последовательного порта. Последнее обстоятельство существенно облегчает программирование, т.к. нет необходимости в применении дополнительных динамических библиотек, сложных интерфейсов и непосредственного общения с драйвером. Для написания собственных программ управления модулем возможно применение любого языка/среды программирования, поддерживающих возможность работы с COM портами. Внешний вид модуля изображен на рисунке 13.
Рисунок 13 – Модуль Ke USB24R
Модуль имеет 18 дискретных линии ввода/вывода с возможностью независимой настройки направления передачи данных (вход/выход), 4 мощных электромагнитных реле для непосредственного управления высоковольтными цепями и 4 встроенных 10-ти разрядных АЦП.
Для управления модулем предусмотрен набор высокоуровневых текстовых команд управления (KE - команды). Формируемая команда отправляется в порт, процессор модуля декодирует ее, выполняет необходимую операцию и отправляет обратно ответ в текстовом формате о статусе выполненной задачи или другую необходимую информацию, специфичную для конкретной команды. Применение текстовых команд позволяет в общем случае обойтись без разработки дополнительного программного обеспечения. Достаточно использовать любую терминальную программу позволяющую передавать данные через COM порт, например HyperTerminal входящую в состав ОС Windows. Возможно, боле удобной программой окажется KeTerm которая была специально разработана для работы с модулем.
Отличительные особенности:
- интерфейсный модуль для сопряжения по шине USB;
- определяется ОС Windows как виртуальный COM порт;
- не требует дополнительных схемных элементов, сразу готов к работе;
- 18 дискретных линий ввода/вывода с возможностью независимой настройки направления передачи данных (вход/выход) и сохранения настроек в энергонезависимой памяти модуля;
- 4 реле для управления высоковольтными цепями и нагрузками;
- 4 встроенных 10-ти разрядных АЦП;
- динамический диапазон напряжения входного аналогового сигнала для АЦП от 0 до 5 В;
- набор готовых текстовых команд управления высокого уровня (KE - команды);
- удобный форм-фактор в виде модуля с IDC-26 колодкой и разъемом USB-B;
- возможность питания как от шины USB так и от внешнего источника питания (режим выбирается джампером на плате);
- возможность сохранения данных пользователя в энергонезависимой памяти модуля (до 32 байт);
- возможность изменения строкового дескриптора USB устройства;
- каждый модуль имеет уникальный серийный номер доступный программно;
- поддержка ОС Windows 2000, 2003, XP, Vista, ОС Linux.