Расчет преобразователя микроконтроллера с CAN-шиной

Общие принципы разработки программно-аппаратного терминала с CAN-шиной, его основные физические интерфейсы. Структурная схема разрабатываемого устройства. Схема подключения микроконтроллера. Схема подключения микроконтроллера Atmega128 и для ПЭВМ.

Рубрика Коммуникации, связь, цифровые приборы и радиоэлектроника
Вид дипломная работа
Язык русский
Дата добавления 07.07.2011
Размер файла 1,4 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Схема подключения приемопередатчика CAN-bus изображена на рисунке 3.9.

Рисунок 3.9 - Схема подключения микросхемы MCP2551

Для реализации приемопередатчика интерфейса RS232 будет использоваться микросхема MAX232.

УГО микросхемы изображено на рисунке 3.10, а ее цоколевка на рисунке 3.11.

Назначение выводов микросхемы MAX232 представлено в таблице 3.4.

Рисунок 3.10 - УГО микросхемы MAX232

Рисунок 3.11 - Цоколевка микросхемы MAX232

Таблица 3.4 - Назначение выводов микросхемы MAX232

Обозначение

Описание

C1+, C1-

Подключение внешнего конденсатора удвоителя напряжения порядка 100нФ.

V+, V-

Выходное напряжение (положительное и отрицательное).

C2+, C2-

Подключение внешнего конденсатора инвертора напряжения порядка 100нФ.

T2out, T1out

Выходы передатчика RS232.

R2in, R1in

Входы приёмника RS232.

R2out, R1out

Выходы приёмника ТТЛ/КМОП.

T1in, T2in

Входы передатчика ТТЛ/КМОП.

GND

Общий вывод питания микросхемы.

VCC

Напряжение питания +5В.

Емкость применяемых конденсаторов C7, C8, C14, C16 указана в документации производителя и равна 1мкФ. Микроконтроллер подключается к выводам T1in-R1out. ПЭВМ подключена к паре T1out-R1in.

Схема подключения приемопередатчика интерфейса RS232 изображена на рисунке 3.12.

Рисунок 3.12 - Схема подключения микросхемы MAX232

В качестве разъема для связи с ПЭВМ выберем стандартный, изображенный на рисунке 3.13.

Рисунок 3.13 - Разъем для подключения к ПЭВМ

Терминал будет работать от сети с напряжением 220В, а т.к. все микросхемы терминала рассчитаны на напряжение питания 5В, то будем использовать блок питания. Схема представлена на рисунке 3.14.

Рисунок 3.14 - Схема блока питания

Блок питания состоит из понижающего трансформатора Т1, выпрямителя, в качестве которого используется диодный мост RS602, и стабилизатора L7805ACV со стандартной схемой обвязки.

Емкости конденсаторов, применяемых в обвязке стабилизатора, указаны производителем в документации: C18, С20 равны 100нФ, а C13 равны 10мкФ. Конденсатор С18 будет использоваться для сглаживания напряжения питания, конденсатор C13 используется для фильтрации низкочастотных помех, а конденсатор C20 используется для фильтрации высокочастотных помех.

Схема электрическая принципиальная разрабатываемого устройства изображена на чертеже БрГТУ.007817.012 Э3.

4 Конструкторско-технологическое проектирование

4.1 Разработка конструкции терминала

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

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

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

Основными задачами при разработке конструкции являются:

- обеспечение надёжности эксплуатации;

- обеспечение удобства использования;

- обеспечение герметичности и стойкости к агрессивным средам;

- обеспечение широкого температурного диапазона работы.

Таким образом, для обеспечения надёжности, герметичности, удобства и широкого температурного диапазона необходимо выбрать материал для разрабатываемого устройства. В качестве корпуса для терминала хорошо подойдёт полый параллелепипед из пластика. Пластмасса или пластик - это общий термин для широкого диапазона синтетических или полусинтетических изделий полимеризации. Они состоят из органического сгущения синтетической смолы или ступенчато-полимеризованных (аддитивных) полимеров и могут содержать другие вещества, чтобы улучшить износоустойчивость или экономичность. Пластмассы могут быть сформированы в пленки или волокна. Пластмасса может классифицироваться многими способами, но наиболее часто по основам полимера (поливинил хлорид, полиэтилен, метакрилат полиметила и другие акрилаты, силиконы, полиуретаны и т.д.).

Пластмассы характеризуются малой плотностью (0,85--1,8 г/смі), чрезвычайно низкой электрической и тепловой проводимостью, не очень большой механической прочностью. При нагревании (часто с предварительным размягчением) они разлагаются. Не чувствительны к влажности, устойчивы к действию сильных кислот и оснований, отношение к органическим растворителям различное (в зависимости от химической природы полимера). Физиологически почти безвредны. Свойства пластмасс можно модифицировать методами сополимеризации или стереоспецифической полимеризации, путём сочетания различных пластмасс друг с другом или с другими материалами, такими как стеклянное волокно, текстильная ткань, введением наполнителей и красителей.

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

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

4.2 Разработка печатной платы

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

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

Печатные платы классифицируются по нескольким параметрам:

- по числу проводящих слоев (одно-, двух- и многослойные);

- по плотности проводников (свободные - ширина проводников и расстояние между ними 0,5 мм, уплотненные - 2,5 мм);

- по виду материала основы (органический диэлектрик - текстолит, керамические материалы или на основе металлов);

- по способу изготовления (химическое травление, электрохимическое осаждение);

- по способу нанесения проводников (обработка фольгированных диэлектриков, нанесение тонких токопроводящих слоев).

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

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

При разработке конструкции печатных плат решаются следующие задачи:

- схемотехнические - трассировка печатных проводников, минимизация количества слоев;

- радиотехнические - расчет паразитных наводок, параметров линий связи;

- теплотехнические - температурный режим работы печатной платы, теплоотвод;

- конструктивные - размещение элементов на печатной плате, контактирование;

- технологические - выбор метода изготовления, защита.

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

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

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

Для того, чтобы уменьшить размер печатной платы, необходимо применять радиоэлементы с маленькой установочной площадью. В качестве большинства таких элементов могут выступать малогабаритные SMD элементы.

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

SMD элементы на плату крепятся поверхностным монтажом и, как правило, полностью соприкасаются с печатной платой всей своей поверхностью, что обеспечивает лучшее теплоотведение [2]. Так же, малые размеры SMD элементов определяют то, что при изменении температуры окружающей температуры в больших пределах, они обладают малым коэффициентом температурной деформации, так как сами по себе они очень малы. Малая деформация элементов при изменении температуры значительно снижает нагрузку на паяное соединение и на сам элемент, что значительно увеличивает надежность устройства. Однако, вместе с тем, такие элементы очень чувствительны к деформации печатной платы, что порождает ещё одно требование к печатной плате. Печатная плата должна иметь достаточно большую жесткость, чтобы исключить порчу SMD элементов из-за принудительной деформации печатной платы.

Малогабаритные SMD элементы припаиваются на контактные площадки, расположенные со стороны установки элементов. Существует возможность использовать однослойную печатную плату, однако чтобы выполнить требования по обеспечению минимальной ширины печатного проводника и минимального расстояния между печатными проводниками, данные элементы необходимо было бы располагать на достаточно большом расстоянии друг от друга. Большую часть печатной платы занимали бы печатные проводники, которые осуществляют соединение припаиваемых элементов. Такой вариант изготовления печатной платы не приемлем, так как не позволит достичь малых габаритов платы, поэтому необходимо применять двухстороннюю печатную плату, а соединение между слоями осуществлять по средствам металлизированных отверстий.

Печатные проводники, расположенные на разных слоях печатной платы желательно располагать перпендикулярно друг другу либо под углом, так как параллельное размещение проводников на разных слоях приведет к повышению паразитных емкостей между ними, что может сказаться на работе устройства. Однако, не исключено, что на разных слоях платы проводники могут располагаться параллельно, в таком случае, необходимо их разносить на некоторые расстояния друг от друга, либо уменьшать участки, где проводники идут параллельно. Следует учитывать, что, к примеру, параллельное расположение какого либо сигнального печатного проводника и общего печатного проводника на плате не будет давать отрицательного результата, однако взаимное параллельное расположение сигнальных печатных проводников может сильно сказаться на качестве устройства[3].

Как уже говорилось ранее, устанавливаемые элементы имеют достаточно малые геометрические размеры и расстояния между выводами. Разрабатываемая печатная плата согласно ГОСТ 23.751-86 имеет третий класс точности.

Третий класс точности изготовления печатных плат имеет следующие характеристики:

- минимальная ширина печатного проводника: 0,25 мм;

- минимальное расстояние между краями соседних элементов разрабатываемого рисунка: 0,25 мм;

- минимальная гарантированная ширина пояска вокруг отверстия: 0,1 мм;

- отношение номинального значения диаметра наименьшего из отверстий, к толщине печатной платы: 0,33 мм.

Разводку печатной платы произведем при помощи САПР производства компании Altium P-CAD 2006. Система P-CAD 2006 представляет собой новейшую версию популярного пакета для сквозного проектирования аналоговых, цифро-аналоговых и аналого-цифровых устройств и для автоматизированного проектирования печатных плат. В частности, она позволяет выполнять следующие операции:

- подбирать элементную базу в соответствии с техническим заданием;

- вести библиотеки символов, топологических посадочных мест и моделей компонентов;

- осуществлять графический ввод схемы и ее упаковку на печатную плату;

- выполнять трассировку в ручном, интерактивном и автоматическом режимах;

- проводить смешанное аналого-цифровое моделирование на основе ядра SPICE3;

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

- выпускать полный комплект конструкторско-технологической документации для передачи на предприятие - изготовитель печатных плат.

В состав данного программного комплекса входит несколько тесно интегрированных между собой модулей.

Library Executive -- диспетчер библиотек, значительно упрощающий процесс подбора элементной базы для конкретного проекта. Библиотеки P-CAD отличаются удобным интерфейсом и позволяют эффективно структурировать в табличной форме упаковочную информацию о нумерации и именовании выводов компонентов, логической эквивалентности выводов и прочих параметрах. Кроме того, они содержат обширную базу данных о продукции ведущих мировых производителей микроэлектроники (Motorola, Analog Devices, AMD, Texas Instr. и т. д.).

Symbol Editor - графический редактор для формирования условно-графических обозначений (УГО) библиотечных компонентов. Оснащен средствами для автоматизации разработки логических компонентов и для проверки правильности полученных символов.

Pattern Editor - графический редактор для формирования посадочных мест компонентов. В его состав входит программа-мастер Pattern Wizard, облегчающая процесс создания корпусов для типовых компонентов (например, интегральных микросхем).

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

РСВ - графический редактор, позволяющий пользователю самостоятельно или с помощью набора функций Visual Placement Area (VPA) разместить модули на монтажно-коммутационном поле и провести трассировку проводников в ручном, интерактивном или автоматическом режимах. Осуществляет контроль над соблюдением технологических норм и правил и дает возможность создавать на плате особые участки, в которых не действуют назначенные для всего проекта ограничения.

Document Toolbox - включенная в приложения РСВ и Schematic утилита, значительно облегчающая подготовку конструкторской документации. В частности, она предназначена для нанесения на чертежи вспомогательной информации: динамически обновляемых списков и отчетов, диаграмм и таблиц, технологических и учетных сведений, списков соединений, выводов подключения питания т.д.

Автотрассировщики - особые модули для автоматической прокладки проводников на печатной плате. Входящее в состав базового пакета приложение Quick Route позволяет вести трассировку на простых двухсторонних печатных платах по фиксированным сеткам. Для более сложных проектов, предусматривающих использование компонентов с большим числом выводов и малым расстоянием между ними, имеет смысл дополнительно приобрести сеточный трассировщик Pro Route или бессеточный трассировщик Situs.

Interroute Gold и Advanced Route - дополнительные наборы команд для РСВ, позволяющие в интерактивном режиме прокладывать проводники, автоматически раздвигая помехи. Существенно облегчают и ускоряют ручную и интерактивную трассировку.

Эти мини-программы извлекают данные из открытых проектов (схем или печатных плат), обрабатывают их, составляют отчеты или добавляют в проект атрибуты или геометрические объекты. В частности, российскими специалистами разработан комплект DBX-утилит для оформления документации, отвечающей требованиям национального стандарта ЕСКД, Справочник конструктора (Constructor Reference) и т.д.

InterPlace/PCS - многофункциональная DBX-утилита, облегчающая размещение компонентов. Входящий в ее состав инструмент PCS (Parametric Constraint Solver) позволяет на начальной стадии реализации проекта сформулировать набор правил проектирования, которыми впоследствии станут руководствоваться прочие модули системы.

Protel Advanced Sim - основанная на языке описания Spice 3f5 система цифрового, аналогового и цифро-аналогового моделирования. Обеспечивает возможность выполнять анализ по самым различным параметрам (постоянному току, частоте, спектральным характеристикам, шуму, температуре, переходным процессам), а также статистический анализ методом Монте-Карло, расчет передаточной функции, нулей и полюсов.

Signal Integrity - инструмент для анализа влияния конструкции печатной платы на условия распространения сигналов (задержка, потери, паразитные наводки, согласование с источниками и нагрузками).

В P-CAD 2006 используются принципы, отличающие ее от других пакетов для ПК. В частности, имеется возможность доступа ко всем элементам на более низких уровнях иерархии, например, при работе с печатной платой имеется возможность изменить расположение выводов и графику контактных площадок корпусов компонентов. В редакторе PCB существуют режимы ручной и продвинутой (полуавтоматической) трассировки проводников.

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

Материал печатной платы выберем согласно ГОСТ 10316-78 c учетом требований к жесткости и стойкости при нагреве. Таким образом, был выбран стеклотекстолит марки СФ-2-35-1,5, представляющий собой стеклотекстолит фольгированный двухсторонний, нагревостойкий, с толщиной фольги 0,35 мм и имеющий толщину 1,5 мм.

Рисунок печатной платы изображен на чертеже БрГТУ.007817.012.

5 Разработка программного обеспечения

5.1 Разработка программного обеспечения для микроконтроллера

Целью является разработка программного обеспечения (ПО) для микроконтроллера Atmega128 программно-аппаратного терминала. Для разработки программного обеспечения микроконтроллера используется язык программирования С, среда AVRStudio 4, компилятор WinAVR.

Во время разработки ПО будут использоваться протоколы передачи данных SPI, CAN 2.0, RS232.

CAN - последовательный протокол связи, который эффективно поддерживает распределенное управление в реальном масштабе времени с высоким уровнем безопасности.

Область применения - от высокоскоростных сетей до дешевых мультиплексных шин. В автоматике, устройствах управления, датчиках используется CAN со скоростью до 1 Mбит/с.

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

Для достижения прозрачности проекта и гибкости реализации, CAN был подразделен на различные уровни согласно модели ISO/OSI:

- уровень передачи данных (Data Link Layer);

- подуровень логического управления линией (LLC);

- подуровень управления доступом к среде передачи (MAC);

- физический уровень (Physical Layer).

В предыдущих версиях спецификации CAN функции LLC и MAC подуровней, уровня передачи данных, были описаны в уровнях, обозначенных как объектный уровень и канальный уровень.

Область LLC подуровня:

- обеспечение сервиса для передачи данных и для удалённого запроса данных;

- решение, какие сообщения, полученные LLC подуровнем, должны быть фактически приняты;

- обеспечение средствами для управления восстановлением и уведомления о перегрузке.

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

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

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

Внутри одной сети, физический уровень одинаков для всех узлов.

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

Основные характеристики:

- приоритетность сообщений;

- гарантированное время отклика;

- гибкость конфигурации;

- групповой прием с синхронизацией времени;

- система непротиворечивости данных;

- обнаружение ошибок и их сигнализация;

- автоматическая ретрансляция испорченных сообщений, как только шина снова станет свободной;

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

Для достижения безопасности передачи данных, в каждом узле CAN имеются мощные средства самоконтроля, обнаружения и сообщения об ошибках.

Имеются два формата, которые отличаются по длине поля идентификатора:

- кадры с 11-разрядным идентификатором - называются стандартными кадрами;

- кадры, содержащие 29 разрядные идентификаторы, называются расширенными кадрами.

Кадр данных передает данные от передатчика приемнику. Кадр удаленного запроса данных передается узлом, чтобы запросить передачу кадра данных с тем же самым идентификатором.

Кадр ошибки передается любым узлом при обнаружении ошибки на шине.

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

Кадры данных и кадры удаленного запроса данных могут использоваться и в стандартном и в расширенном формате; они отделяются от предшествующих кадров межкадровым пространством.

В таблице 5.1 представлена структура информационного пакета.

Таблица 5.1 - Формат информационного пакета

Поле данных

Название

Значение

1

Начало кадра

Это поле состоит из одиночного нулевого бита

2

Поле арбитража

В стандартном формате поле арбитража, состоит из 11 разрядного идентификатора и RTR-бита. Биты идентификатора обозначены.

В расширенном формате поле арбитража состоит из 29 разрядного идентификатора, SRR-бита, IDE-бита, и RTR-бита

3

Поле управления

Поле управления состоит из шести бит: код длины данных (DLC), бит IDE, который передается нулевым уровнем (см. выше), и зарезервированный бит r0.

4

Поле данных

Поле данных состоит из данных, которые будут переданы внутри кадра данных. Оно может содержать от 0 до 8 байт, каждый содержит 8 бит, которые передаются, начиная с MSB.

5

Поле CRC

Содержит последовательность CRC и CRC - разделитель

6

Поле подтверждения

Поле подтверждения имеет длину два бита и содержит: "область подтверждения" и разделитель подтверждения.

7

Конец кадра

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

За реализацию данного протокола будет отвечать CAN-контроллер, который обеспечивает взаимодействие с сетью. Таким образом, протокол CAN реализуется на аппаратном уровне. Данные на CAN-контроллер будут передаваться через SPI интерфейс.

Интерфейс SPI позволяет осуществлять высокоскоростную синхронную передачу данных между микроконтроллером AVR и периферийными устройствами или между несколькими микроконтроллерами AVR. В большинстве случаев этот интерфейс имеет второе назначение -- он используется для внутрисхемного программирования (ISP).

Взаимодействие между двумя устройствами SPI всегда осуществляется между устройством в режиме Master (далее по тексту «ведущий») и устройством в режиме Slave (далее по тексту «ведомый»). В отличие от некоторых периферийных устройств, таких как датчики, которые могут выступать только в роли ведомых, интерфейс SPI микроконтроллеров AVR может быть сконфигурирован как для работы в режиме ведущего, так и для работы в режиме ведомого. Режим работы интерфейса SPI микроконтроллера AVR определяется битом master (MSTR) регистра управления интерфейсом SPI (SPCR). Особое внимание следует уделить линии SS, подробнее о которой будет написано далее в разделе «Системы с несколькими ведомыми функционирование линии SS».

SPI содержит четыре сигнальных линии. Это линия генератора сдвига (SCK), линия «Выход ведущего вход ведомого» (Master Out Slave In или MOSI), линия «Вход ведущего выход ведомого» (Master In Slave Out или MISO) и линия выбора ведомого с низким активным уровнем (SS) [5]. Когда SPI включен, направление передачи данных на выводах SCK, MOSI, MISO и SS изменяется в соответствии с таблицей 5.2.

Таблица 5.2 - Направление выводов в режимах ведущего и ведомого

Вывод

Направление в режиме ведущего

Направление в режиме ведомого

MOSI

Определяется пользователем

Вход

MISO

Вход

Определяется пользователем

SCK

Определяется пользователем

Вход

__SS

Определяется пользователем

Вход

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

RS232 - популярный протокол, применяемый для связи компьютеров с модемами и другими периферийными устройствами.

Скорость передачи информации по RS-232 измеряется в Бодах. Эта единица названа в честь Эмиля Бодо (Jean Maurice-Emile Baudot) (1845-1903), французского инженера по телеграфии, изобретателя первого печатающего устройства для телеграфа (телепринтера) , представленного на Международной Телеграфной конференции в 1927. Максимальная скорость согласно стандарту 20000 Бод. Однако современное оборудование может работать значительно быстрее. Не имеет значения, на сколько быстрое (медленное) ваше соединение - максимальное число чтения за секунду можно установить с помощью используемого программного обеспечения.

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

Для обеспечения контроля четности компьютер и устройство должны одинаково производить подсчет бита четности. То есть, определиться устанавливать бит при четном (even) или нечетном (odd) числе единиц. При контроле на четность биты данных и бит четности всегда должны содержать четное число единиц. В противоположном случае соответствует для контроля на нечетность.

Проверка на четность - это простейший способ обнаружения ошибок. Он может определить возникновение ошибок в одном бите, но при наличии ошибок в двух битах уже не заметит ошибок. Также такой контроль не отвечает на вопрос какой бит ошибочный. Другой механизм проверки включает в себя Старт и Стоп биты, циклические проверки на избыточность, которые часто применяются в соединениях Modbus.

В программе необходимо обрабатывать данные, поступающие от интерфейса RS232 и интерфейса CAN-bus.

Сначала необходимо проинициализировать микроконтроллер, для чего используются функция void usart_init(void) - инициализация USART. Так же необходима инициализация внутренних регистров микроконтроллера. USART проинициализируем таким образом: скорость передачи 9600 бод, данные передаются по 8 бит, бит паритета отсутствует, 1 стоповый бит.

Для приема/передачи данных через USART будут использоваться функции get_usart() и put_usart(), которые предназначены для посимвольного обмена данными.

После того, как принят информационный пакет из линии RS232, он анализируется на наличие ошибок (функция анализа ErrorAnalys()). Если все в порядке, то после конвертации информационного пакета происходит его передача в линии CAN-bus через SPI (функция передачи spi_transmit()). После этого происходит передача ответного информационного пакета из линии CAN-bus (ответный информационный пакет spi_receive()). После конвертации ответного информационного пакета происходит передача его в линии RS232.

Схема алгоритма работы разрабатываемого программно-аппаратного терминала изображена на чертеже БрГТУ.07817 - 12 90 00.

5.2 Разработка программного обеспечения для ПЭВМ

Целью является разработка программного обеспечения (ПО) для ПЭВМ, выполняющего функцию управления программно-аппаратным терминалом. Для разработки программного обеспечения для ПЭВМ используется язык программирования С++, среда разработки С++ Builder 6.

C++Builder - одна из самых мощных систем, позволяющих на самом современном уровне создавать как отдельные прикладные программы Windows, так и разветвленные комплексы, предназначенные для работы в корпоративных сетях и в интернет.

Объектно-ориентированное программирование (сокращенно ООП) - это в наше время совершенно естественный подход к построению сложных (и не очень сложных) программ и систем. Когда вы открываете любую программу Windows, вы видите окно с множеством кнопок, разделов меню, окон редактирования, списков и т.п. Все это объекты. Причем сами по себе они ничего не делают. Они ждут каких-то событий - нажатия пользователем клавиш или кнопок мыши, перемещения курсора и т.д. Когда происходит подобное событие, объект получает сообщение об этом и как-то на него реагирует: выполняет некоторые вычисления, разворачивает список, заносит символ в окно редактирования. Такая программа Windows и есть объектно-ориентированная программа [6].

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

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

Для организации меню в программе мы воспользовались компонентов MainMenu. Главное меню представлено на рисунке 5.1 и содержит следующие пункты:

- пункт “Открыть” - вызов диалогового окна для выбора и подтверждения файла hex, который необходимо открыть (использовали компоненту OpenDialog) ;

- пункт “Сохранить” - вызов диалогового окна для указания места, в котором нужно сохранить текущий открытый файл, и его имени (использовали компоненту SaveDialog);

- пункт “Редактировать” - делает доступной опцию редактирования открытого файла;

- пункт “Передать” - начинает передачу данных, содержащихся в текущем файле;

- пункт “Выход” - закрывает приложение.

Рисунок 5.1 - Главное меню

Пункт “Печать” - позволяет настроить опции печати и выполнить печать.

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

Для реализации передачи и приема данных через COM-порт использовали библиотеку TrComPort.lib. Функция TrComPortWriteAndRead() осуществляет непосредственно прием и передачу данных. Для побайтового считывания данных из файла будет использована стандартная функция ввода/вывода fscanf();

Схема алгоритма работы разрабатываемого приложения для программно-аппаратного терминала изображена на чертеже БрГТУ.07817.012 - 12 91 00.

6 Расчет экономических показателей

6.1 Описание разрабатываемого устройства

В данном проекте разрабатывается аппаратная и программная часть программно-аппаратного терминала с CAN-шиной. Он представляет собой аппаратное устройство и программную прошивку микроконтроллера, являющуюся неотъемлемой частью устройства, а так же программное приложение на ПЭВМ.

Этот терминал будет предназначен для внутрисхемного программирования устройств по CAN-интерфейсу и будет состоять из аппаратной части, связывающей ПЭВМ и программируемое устройство, и программной оболочки.

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

Устройства с CAN-интерфейсом используются во многих областях применения касающихся разнообразнейших сторон жизнедеятельности человека. Среди них можно выделить основные :

- транспорт - CAN был первоначально разработан для использования во внутренних автомобильных сетях;

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

- строительство - CAN используется как внутренняя сеть во внедорожном транспорте (например, для строительства дорог), для автоматизации зданий, например, для управления лифтами, для встроенного контроля автоматических дверей, для контроля систем обогрева, вентиляции и кондиционирования;

- сельское хозяйство - CAN используется в стационарном сельскохозяйственном оборудовании, а также в сельскохозяйственных и лесохозяйственных транспортных средствах;

- медицина - CAN используется в качестве встроенной сети в медицинских приборах и оборудовании в операционных комнатах и на интенсивных станциях.

6.2 Расчет экономических показателей при разработке терминала

К основным экономическим показателям относятся себестоимость продукции и отпускная цена.

Себестоимость - это стоимостная оценка используемых в процессе производства продукции (работ, услуг) природных ресурсов, сырья, материалов, топлива, энергии, основных фондов, трудовых ресурсов и других затрат на ее производство и реализацию.

Отпускная цена - цена на продукцию, отпускаемую заготовительными организациями.

Составим смету затрат на разработку программно-аппаратного терминала, которая рассчитывается по следующим статьям:

- материалы и комплектующие изделия;

- расходы на оплату труда;

- отчисление в фонд социальной защиты населения;

- командировочные расходы;

- услуги сторонних организаций;

- прочие расходы.

Расчет сметы производится с использованием реальных цен, взятых из интернет-магазинов. Расчет затрат по статье “Сырье и материалы” представлен в таблице 6.1.

Таблица 6.1 - Расчет затрат на сырье и материалы

Наименование

Единица измерения

Норма расхода

Цена, руб.

Сумма, руб

Припой ПОС-61

кг

0,001405

270000

379

Провода

м

0,16

630

101

Флюс ФКТ

л

0,000102

75600

8

Итого:

488

Транспортно-заготовительные расходы ( =15%)

73,2

Отходы(вычитаются)

24,4

Итого с транспортно-заготовительными расходами

536

Расчет затрат по статье “Покупные комплектующие изделия, полуфабрикаты и услуги производственного характера” представлен в таблице 6.2.

Таблица 6.2 - Расчет затрат на комплектующие изделия и покупные детали

Наименование материалов

Кол. на 1 изделие (шт.)

Стоимость единицы (руб.)

Общая стоимость изделий (руб.)

Плата печатная

1

2500

2500

Микроконтроллер ATmega128

1

38530

38530

Микросхема MCP2515

1

12360

12360

Микросхема MCP2551

1

8420

8420

Микросхема MAX232

1

6630

6630

Микросхема PESD1CAN

1

6650

6650

Микросхема L7805ACV

1

2870

2870

Кварцевый резонатор HC49S-SMD 14.7456МГц

1

3670

3670

Кварцевый резонатор HC49S-SMD 16МГц

1

3670

3670

Диодный мост RS602

1

6290

6290

Дроссель B82144A2104J000, 100uH 5%

1

3030

3030

Трансформатор 58-0050-024-S 50VA 230V 24V

1

63230

63230

Конденсатор в корпусе SMD 0805 (Ceramic)

15

2790

41850

Конденсатор в корпусе SMD Sizecode ”A” (Elko)

4

5640

22560

Конденсатор в корпусе SMD Sizecode ”B” (Elko)

2

2480

4960

Резистор в корпусе SMD 0805

3

860

2580

Разъем 0131 (2P+E 16A 220-250V~)

1

24230

24230

Разъем BLD-4

1

1630

1630

Разъем DB9

1

3080

3080

Итого:

258740

Транспортно-заготовительные расходы ( =15%)

38811

Итого с транспортно-заготовительными расходами

297551

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

Величина основной зарплаты рассчитывается на основе трудоемкости работ, выполняемых рабочими разной квалификации, определяется по формуле (6.1):

ЗO = УgJ rJ (6.1)

где gj - затраты труда рабочего j-разряда, при производстве единицы продукции (чел-час);

rj - часовая тарифная ставка j-разряда (принимается по единой тарифной сетке). Часовая тарифная ставка разряда рассчитывается исходя из месячной ставки 1 разряда, принятой на данном предприятии, тарифного коэффициента и определяется по формуле (6.2):

Чтарф= С1 Ктар /176, (6.2)

где С1 - месячная ставка 1 разряда (118000 руб.);

Ктар - тарифный коэффициент разряда;

176 часов - количество рабочих часов в месяц (22*8).

Результаты расчётов заносятся в таблицу 6.3.

Таблица 6.3 - Расчет основной заработной платы рабочих

Наименование вида операции

Разряд работы

Тарифные коэфф. разряда

Часовая тарифная ставка данного разряда, руб/ч

Норма времени по операции, нормо-час

Расценка, руб

Заготовительные

3

2,91735

1956

1

1956

Сборочные

4

2,94689

1976

1

1976

Наладочные

6

3,0343

2034

1,5

3051

Итого

6983

Премия

1396,6

Всего заработной платы

8380

Следующим пунктом расчёта будет расчёт себестоимости и отпускной цены продукции. Себестоимость продукции - это суммарные издержки производства и реализации ее. Все затраты приводятся к единому временному периоду (году).

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

Отпускная цена продукции предприятия-изготовителя состоит из: полной себестоимости, плановой прибыли на единицу продукции, отчислений в республиканские фонды и налога на добавленную стоимость.

Расчет себестоимости и отпускной цены сведём в таблицу 6.4.

Таблица 6.4 - Расчет розничной цены

Наименование статьи затрат

Обозначение

Формулы расчетов

Значение, руб.

Материалы и сырье

РМ

таблица 6.1

536,8

Покупные полуфабрикаты и комплектующие

РК

таблица 6.2

297551

Основная зарплата рабочих

З0

таблица 6.3

8380

Дополнительная зарплата рабочих

ЗД

20% З0

1676

Отчисления в фонд социальной защиты

РСОЦ

34% (З0Д)

3419,04

Износ инструментов и приспособлений целевого назначения

РИЗ

5% З0

838

Общепроизводственные расходы

РОБП

150% З0

15084

Общехозяйственные расходы

РОБХ

150% З0

16760

Прочие производственные расходы

РПР

3% З0

167,6

Производственная себестоимость

СПР

РМК0ДСОЦ+ ИЗОБПОБХПР

344412,4

Коммерческие расходы

РКОМ

1% СПР

3444,124

Полная себестоимость

СП

СПР КОМ

347857

Наименование статьи затрат

Обозначение

Формулы расчетов

Значение, руб.

Плановая прибыль на единицу продукции

ПЕД

25% СП

83485,68

Оптовая цена предприятия

ЦОПТ

СП ЕД

431343

Налог на добавленную стоимость

НДС

20% ЦОПТ

86268,6

Отпускная цена

ЦОТП

ЦОПТ + НДС

517611,6

Данный продукт при условии спроса конкретными предприятиями и организациями будет реализовываться на внутреннем и внешнем рынках РБ.

Итого получаем затраты равные сумме 517611,6 руб.

6.3 Расчет экономических показателей при разработке программного обеспечения

Разрабатываемое устройство функционирует в комплексе с программным обеспечением. В состав разрабатываемого программного обеспечения входят:

1) программное обеспечение для микроконтроллера (далее первое ПО);

2) программное обеспечение для управления терминалом с ПЭВМ (далее второе ПО).

Определение экономических показателей включает определение себестоимости и прогнозной цены программного обеспечения.

Расчет выполняется в следующей последовательности:

1) определение трудоемкости разработки ПО;

2) определение эффективного фонда времени работы;

3) определение численности разработчиков ПО;

4) определение заработной платы разработчиков ПО;

5) определение себестоимости ПО;

6) определение прогнозной цены.

На трудоемкость разработки ПО влияют следующие факторы:

- объем функций ПО;

- новизна разрабатываемого ПО;

- сложность разрабатываемого ПО;

- использование стандартных модулей;

- средства разработки.

Дополнительные коэффициенты сложности для первого ПО Ксл1 = 0,08 (так как разрабатываемое программное средство вычислительной техники функционирует в расширенной операционной среде), Ксл2 = 0,18 (так как разрабатываемое программное обеспечение имеет в наличии одновременно нескольких характеристик по каталогу функций ПО).

Дополнительный коэффициент сложности для второго ПО Ксл1 = 0,08 (так как разрабатываемое программное средство вычислительной техники функционирует в расширенной операционной среде).

Первое и второе ПО обладают третьей категорией сложности.

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

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

Первое и второе ПО являются развитием определенного параметрического ряда ПО, разработанных на ранее освоенных типах ПК и ОС, поэтому им присваивается группа новизны В. Коэффициент учитывающий новизну Кн = 0,63.

Объем программных средств определяется путем подбора аналогов на основании:

- классификации типов программных средств;

- каталога функций программных средств;

- каталога аналогов программных средств в разрезе функций.

Указанные классификации и каталоги постоянно обновляются и утверждаются в установленном порядке.

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

Общий объем ПО рассчитывается по формуле (6.3):

(6.3)

где V0 - общий объем ПО;

Vi - объем функций ПО;

n - общее число функций.

Расчет общего объема ПО (количества строк исходного кода (LOC)) предполагает определение объема по каждой функции. В том случае, когда на стадии технико-экономического обоснования проекта невозможно рассчитать точный объем функций, то данный объем может быть получен на основании ориентировочной (прогнозной) оценки имеющихся фактических данных по аналогичным проектам, выполненным ранее, или путем применения нормативов по каталогу функций.

Расчет объема для первого ПО сводится в таблицу 6.5, для второго - в таблицу 6.6.

Таблица 6.5 - Характеристика функций и их объем для первого ПО

Содержание функций

Объем функции строк исходного кода (LOC)

По каталогу Vi

Уточненный Vуi

Организация ввода информации

110

100

Синтаксический и семантический анализ входного языка и генерация кодов команд

4900

550

Организация ввода/вывода информации с сети терминалов

2920

925

Формирование последовательного файла

560

256

Обработка файлов

800

285

Обработка ошибочных и сбойных ситуаций

1310

210

Итого

10600

2326

Таблица 6.6 - Характеристика функций и их объем для второго ПО

Содержание функций

Объем функции строк исходного кода (LOC)

По каталогу Vi

Уточненный Vуi

Организация ввода информации

150

120

Синтаксический и семантический анализ входного языка и генерация кодов команд

5700

680

Организация ввода/вывода информации с сети терминалов

3200

945

Обработка ошибочных и сбойных ситуаций

1720

320

Обеспечение интерфейса между компонентами

1540

435

Итого

12310

2500

Нормативная трудоемкость (Тн) определяется на основании общего объема программного средства. Нормативная трудоемкость устанавливается с учетом сложности программного средства.

Объему 2326 условных машинных команд (3 группа сложности программного средства) соответствует нормативная трудоемкость 105 человеко-дней. Объему 2500 условных машинных команд (3 группа сложности программного средства) соответствует нормативная трудоемкость 116 чел.-дн.

Далее определим общую трудоемкость разработки.

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

- техническое задание (ТЗ);

- эскизный проект (ЭП);

- технический проект (ТП);

- рабочий проект (РП);

- внедрение (ВН).

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

Нормативная трудоемкость на различных стадиях определяется по формулам (6.4), (6.5), (6.6), (6.7), (6.8):

Тнтз = Тн Ктз Кс Кн Кур, (6.4)

Тнэп = Тн Кэп Кс Кн Кур, (6.5)

Тнтп = Тн Ктп Кс Кн Кур (6.6)

Тнрп =Тн Крп Кс Кн Кт Кур (6.7)

Тнвн = Тн Квн Кс Кн Кур, (6.8)

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

Разрабатываемое ПО должно пройти все стадии проектирования: техническое задание, эскизный проект, технический проект, рабочий проект, внедрение.

Коэффициенты удельных весов трудоёмкости стадии в общей трудоёмкости разработки ПС ВТ: ТЗ=0,100,10, ЭП=0,080,20, ТП=0,090,30, РП=0,580,30, ВН=0,150,10.

Коэффициент использования стандартных модулей для первого ПО KT=0,90,55 (степень охвата реализуемых функций разрабатываемого ПО типовыми программами от 60% и выше).

Коэффициент использования стандартных модулей для второго ПО KT=0,90,77 (степень охвата реализуемых функций разрабатываемого ПО типовыми программами от 20 до 40%).

Коэффицент учитывающий средства разработки для первого и второго ПО Kур = 0,91 (процедурные языки высокого уровня).

Все расчеты для первого ПО сведены в таблице 6.7, для второго ПО - в таблице 6.8.

терминал аппаратный микроконтроллер преобразователь

Таблица 6.7 - Расчет общей трудоемкости для первого ПО

Показатели

Стадии

Итого

ТЗ

ЭП

ТП

РП

ВН

Коэффициенты удельных весов трудоемкости стадии разработки ПО (К)

0,10

0,20

0,30

0,30

0,10

1,0

Распределение нормативной трудоемкости программного обеспечения (Тн) по стадиям, чел.-дн.

11

21

31

31

11

105

Коэффициент сложности ПО (Кс)

1,26

1,26

1,26

1,26

1,26

-

Коэффициент, учитывающий ис-пользование стандартных модулей (Кт)

0,55

-

Коэффициент, учитывающий новизну ПО (Кн)

0,63

0,63

0,63

0,63

0,63

-

Общая трудоемкость ПО (То), чел.дн.

0,873

3,334

7,382

7,382

0,873

19,844

Таблица 6.8 - Расчет общей трудоемкости для второго ПО

Показатели

Стадии

Итого

ТЗ

ЭП

ТП

РП

ВН

Коэффициенты удельных весов трудоемкости стадии разработки ПО (К)

0,10

0,20

0,30

0,30

0,10

1,0

Распределение нормативной трудоемкости программного обеспечения (Тн) по стадиям, чел.-дн.

13

24

33

33

13

116

Коэффициент сложности ПО (Кс)

1,08

1,08

1,08

1,08

1,08

-

Коэффициент, учитывающий ис-пользование стандартных модулей (Кт)

0,77

-

Коэффициент, учитывающий новизну ПО (Кн)

0,63

0,63

0,63

0,63

0,63

-

Общая трудоемкость ПО (То), чел.дн.

0,885

3,266

6,736

6,736

0,885

18,508

Произведем расчет общей плановой численности разработчиков. Эффективный фонд времени работы одного работника (Фэф) рассчитывается по формуле (6.9):

Фэф = Дг - Дпв = 120 - 35 - 4 = 81 , (6.9)

где Дг - количество дней;

Дп - количество праздничных дней;

Дв - количество выходных;

До - количество дней отпуска.

Эффективный фонд времени одного работника определяется с использованием производственного календаря.

Общая плановая численность разработчиков (Чразоб) рассчитывается на основании уточненной трудоемкости разработки программного средства (Тут) и установленного периода разработки (Тпл) согласно формуле (6.10):


Подобные документы

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.