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

  • Вид работы:
    Курсовая работа (т)
  • Предмет:
    Информационное обеспечение, программирование
  • Язык:
    Русский
    ,
    Формат файла:
    MS Word
    744,16 Кб
  • Опубликовано:
    2012-12-14
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

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

Содержание

Введение

1.       Анализ исходного устройства

1.1 Анализ исходной электрической схемы

1.2 Анализ элементной базы

.        Синтез схемы на базе ПЛИС

2.1 Реализация исходной элементной базы и синтез схемы на ПЛИС

2.2 Выбор микросхемы ПЛИС

2.3 Уровни реализации структуры ПЛИС

2.4 Назначение выводов ПЛИС

2.5 Расчет энергопотребления с помощью утилиты xPower

Заключение

Список литературы

Введение

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

Целью курсового проекта является разработка устройства на базе ПЛИС фирмы Xilinx, который выполнял бы те же функции, что и вышеназванное устройство. Разработка производится с использованием САПР ISE Xilinx 9.2. Использование интегрированной среды разработки значительно упрощает процесс проектирования, программирования и отладки устройства.

. Анализ исходного устройства

1.1 Анализ исходной электрической схемы

Устройство управления шаговым двигателем, приведенное в вышеназванной статье, изготавливается на базе микросхем дискретной логики ТТЛ серий 555 и 155. Устройство содержит генератор прямоугольных сигналов, стабилизированный кварцевым резонатором, набор делителей частоты, схему управления сдвиговым регистром, собственно сдвиговый регистр и мультиплексор, подключенный к управляемому шаговому двигателю через транзисторные ключи.

При подаче питания происходит начальная установка триггера DD5.2 за счет RC-цепочки на входе S, благодаря чему на прямом выходе триггера появляется уровень лог. 1. Сигналы с выходов триггера поступают на управляющие входы сдвигового регистра DD8, устанавливая его в режим параллельной загрузки информации. К этому времени синхроимпульсы от генератора на микросхеме DD1, пройдя через цепочку делителей частоты на микросхемах DD5.1, DD6,7,9,11-13 и DD2, достигают микросхем DD5.2 и DD8, фиксируя значение 1000 в регистре DD8 и переключая его с помощью триггера DD5.2 в режим сдвига информации. Направление и частота сдвига устанавливаются переключателем SA1 и микросхемами стандартной логики DD4, DD3.1 и DD3.2.

Информация, появляющаяся на выходах регистра DD8, поступает на вход B мультиплексора DD10. Вход А мультиплексора притянут к уровню лог.0, и синхроимпульсы, фиксирующие информацию в регистре DD8, поступают на вход выбора канала мультиплексора через инвертор DD3.3, что заставляет мультиплексор DD10 по заднему фронту синхроимпульса переключать выход с канала В на канал А. В результате длительность импульсов на выходах мультиплексора DD10 уменьшается в два раза при сохранении периода следования.

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

Временные диаграммы работы устройства для режима работы "Ход" приведены на рис. 1.

Рисунок 1 - Временные диаграммы работы устройства

.2 Анализ элементной базы

микросхема дискретный энергопотребление утилита

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

К555ЛА3 (DD1, DD4)

Данная микросхема содержит 4 двухвходовых элемента И-НЕ. Условное графическое обозначение микросхемы представлено на рис. 2.

Рисунок 2 - Условное графическое изображение микросхемы К555ЛА3

Назначение выводов микросхемы:

, 2, 4, 5, 9, 10, 12, 13 - входы логических элементов

, 6, 8, 11 - выходы логических элементов

- общий

- вход плюсового напряжения питания

К555ЛА4 (DD3)

Данная микросхема содержит 3 трехвходовых элемента И-НЕ. Условное графическое обозначение микросхемы представлено на рис. 3.

Рисунок 3 - Условное графическое изображение микросхемы К555ЛА4

Назначение выводов микросхемы:

, 2,3, 4, 5, 9, 10, 11, 13 - входы логических элементов

, 8, 12 - выходы логических элементов

- общий

- вход плюсового напряжения питания

К155ИЕ4 (DD2)

Микросхема представляет собой четырехразрядный двоичный счетчик-делитель на 2, 6 и 12. Счетчик состоит из двух независимых делителей с раздельными входами тактового сигнала. Один делитель осуществляет деление на 2, второй - на 6. Их каскадное включение позволяет получить делитель на 12. Условное графическое обозначение микросхемы представлено на рис. 4.

Рисунок 4 - Условное графическое изображение микросхемы К155ИЕ4

Назначение выводов микросхемы:

- счетный вход С2;

,3,4,13 - свободные;

- вход плюсового напряжения питания

- вход сброса счетчика R1

- вход сброса счетчика R2

, 9, 11 - выходы счетчика 2

- выход счетчика 1

- общий;

- счетный вход C1

К555ТМ2 (DD5)

Микросхема содержит два независимых D-триггера, имеющих общую цепь питания. Каждый триггер имеет два инверсных асинхронных входа принудительной установки и сброса состояния выходов. Выходы у триггеров комплементарные. Сигнал от входа D передается на выходы по переднему фронту сигнала синхронизации С. Условное графическое обозначение микросхемы представлено на рис. 5.

Назначение выводов микросхемы:

, 13 - асинхронный вход сброса 1

, 12 - вход данных 1

, 11 - вход синхронизации 1

, 10 - асинхронный вход установки 1

, 9 - прямой выход 1

, 8 - инверсный выход 1

- общий


Рисунок 5 - Условное графическое изображение микросхемы К555ТМ2

К155ИЕ1 (DD6, DD7, DD9, DD11, DD12, DD13)

Микросхема представляет собой счетчик-делитель на 10. Счетные входы, так же как и входы сброса, объединены по схеме И. Условное графическое обозначение микросхемы представлено на рис. 6.

Рисунок 6 - Условное графическое изображение микросхемы К155ИЕ1

Назначение выводов микросхемы:

, 2 - входы сброса

- выход счетчика

, 9 - счетные входы

- общий

- вход плюсового напряжения питания

К555ИР11 (DD8)

Микросхема К555ИР11 является 4-разрядным реверсивным сдвиговым регистром с параллельной загрузкой. Регистр может выполнять большой набор функций, поскольку снабжен несколькими входами выбора режимов: R, S, SL, SR. Входы SL и SR предназначены для ввода информации при сдвиге влево и вправо соответственно. Вход  осуществляет асинхронный сброс содержимого регистра. Логика работы регистра представлена в таблице 1. Условное графическое обозначение микросхемы представлено на рис. 7.

Рисунок 7 - Условное графическое изображение микросхемы К555ИР11

Таблица 1 - Состояния регистра К555ИР11

Режим работы

С

L

R

SR

SL

D[3..0]

Q[3..0]

Сброс

Х

0

Х

Х

Х

Х

Х

0000

Хранение

Х

1

0

0

Х

Х

Х

d3d2d1d0

Сдвиг влево

1

1

0

Х

0

Х

q3q2q10

Сдвиг влево

1

1

0

Х

1

Х

q3q2q11

Сдвиг вправо

1

0

1

0

Х

Х

Сдвиг вправо

1

0

1

1

Х

Х

1q3q2q1

Параллельная загрузка

1

1

1

Х

Х

d3d2d1d0

d3d2d1d0


Назначение выводов микросхемы:

- вход асинхронного сброса

- вход данных при сдвиге вправо

-6 - входы данных при параллельной загрузке

- вход данных при сдвиге влево

- общий

, 10 - входы управления триггером

- вход синхронизации

-15 - выход данных

- вход плюсового напряжения питания

К555КП11 (DD10)

Микросхема содержит 4 двухвходовых мультиплексора с общим управлением, так что можно рассматривать ее как один четырехвходовый мультиплексор на два канала. Выбор канала осуществляется с помощью входа S. Выход микросхемы может быть переведен в высокоимпедансное состояние с помощью входа ЕО.

Условное графическое обозначение микросхемы представлено на рис. 8.

Рисунок 8 - Условное графическое изображение микросхемы К555КП11

Назначение выводов микросхемы:

- вход выбора канала

, 5, 11, 14 - входы данных канала А

, 6, 10, 13 - входы данных канала В

, 7, 9, 12 - выходы данных

- общий

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

- вход плюсового напряжения питания

2. Синтез схемы на базе ПЛИС

2.1 Реализация исходной элементной базы и синтез схемы на ПЛИС

Для реализации функций рассматриваемого устройства на ПЛИС необходимо реализовать использованную в исходном устройстве элементную базу. Реализация элементов в ISE Xilinx может быть осуществлена либо подбором стандартных компонентов из библиотек ISE Xilinx, либо описанием работы устройства на языке VHDL.

При реализации рассматриваемого устройства на ПЛИС имеются некоторые ограничения. Так, для первоначального сброса триггера DD5.2 применяется RC-цепь, реализация которой на ПЛИС весьма затруднительна. Есть возможность использовать такую же RC-цепь с той же целью путем выноса ее за пределы ПЛИС, то есть так же использовать дискретные резистор и конденсатор, но при ближайшем рассмотрении выясняется, что есть возможность вовсе отказаться от ее применения. Кроме того, в рассматриваемом устройстве применяются и другие схемотехнические решения, не позволяющие напрямую перенести схему устройства в кристалл ПЛИС. Для решения данной проблемы схема исходного устройства была переработана с целью размещения ее в ПЛИС. Вид переработанной схемы в Xilinx ISE представлен на рис. 9.

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


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

Первый модуль DIV_2x10exp6 написан на VHDL и заменяет в исходной схеме цепочку счетчиков-делителей DD5.1-DD6-DD7-DD9-DD11-DD12-DD13. Он так же осуществляет деление входной частоты на 2000000. Текст описания модуля на VHDL:

IEEE;IEEE.STD_LOGIC_1164.ALL;IEEE.STD_LOGIC_ARITH.ALL;IEEE.STD_LOGIC_UNSIGNED.ALL;DIV_2x10exp6 is(C : in STD_LOGIC;: in STD_LOGIC;: out STD_LOGIC);DIV_2x10exp6;Behavioral of DIV_2x10exp6 iscounter : std_logic_vector(20 downto 0):= (others => '0');res, q_tmp : std_logic := '0';: process (C, res, R)(res = '1' or R = '1') then<= (others => '0');_tmp <= '0';(rising_edge(C)) then<= counter + 1;(counter = 999999) then<= (others => '0');_tmp <= not q_tmp;<= '0';if;if;process;<= q_tmp; Behavioral;

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

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

{Здесь размещается объявление стандартных библиотек}

entity DIV12 is(C : in STD_LOGIC;: in STD_LOGIC;: out STD_LOGIC);DIV12;Behavioral of DIV12 iscounter : std_logic_vector(3 downto 0):= (others => '0');res, q_tmp : std_logic := '0';: process (C, res, R)(res = '1' or R = '1') then<= (others => '0');_tmp <= '0';(rising_edge(C)) then<= counter + 1;(counter = 5) then<= (others => '0');_tmp <= not q_tmp;<= '0';if;if;process;<= q_tmp; Behavioral;

Временная диаграмма работы элемента DIV12 приведена на рис. 10.

Рисунок 10 - Временная диаграмма работы DIV12

Третьим элементом, аналоги которого отсутствуют в стандартных библиотеках ISE, является Loader. Данный элемент заменяет в исходной схеме триггер DD5.2 и цепь его первоначальной установки. В исходной схеме триггер DD5.2 используется для формирования управляющих сигналов на выводах R и L регистра DD8, осуществляя его первоначальную загрузку. Триггер переключается только дважды - первое переключение осуществляет RC-цепь, устанавливая на выходе Q триггера уровень лог.1, при этом регистр DD8 устанавливается в режим параллельной загрузки. Второе переключение осуществляется по фронту синхроимпульса, который загружает в регистр DD8 первоначальную информацию и одновременно выводит его из режима параллельной загрузки.

В переработанной схеме функции триггера DD5.2 и RC-цепи осуществляет элемент Loader. Его задачей является сформировать на выходе Q импульс, который позволил бы загрузить в регистр DD8 первоначальную информацию, после чего установить выход Q в лог.0. Временная диаграмма работы элемента приведена на рис. 11. Текст описания модуля на VHDL:

{Здесь размещается объявление стандартных библиотек}

entity loader is( C : in STD_LOGIC;: out STD_LOGIC);loader;Behavioral of loader is(C)first_cnt: boolean:=true;(rising_edge(C)) then(first_cnt) then<= '1';_cnt := false;<= '0';if;if;process;

end Behavioral;

Рисунок 11 - Временная диаграмма работы элемента Loader

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

Остальные элементы, имеющиеся в схеме, являются стандартными и содержатся в библиотеках Xilinx ISE.

Простейшим библиотечным элементом, использованным в данной схеме, является инвертор. Условное графическое обозначение инвертора в Xilinx ISE представлено на рис. 12. Работа инвертора описывается таблицей истинности, представленной в табл. 2.

Рисунок 12 - Условное графическое обозначение инвертора

Таблица 2 - Таблица истинности для инвертора

OUT

0

1

1

0

К элементам стандартной логики, использованным в схеме, также относятся элементы И и ИЛИ. Условное графическое обозначение элемента И представлено на рис. 13, элемента ИЛИ - на рис.14.

Рисунок 13 - Условное графическое обозначение элемента И

Рисунок 14 - Условное графическое обозначение элемента ИЛИ

Логика работы этих элементов ничем не отличается от общепринятых алгоритмов и представлена в таблице 3.

Таблица 3 - Таблица истинности элементов И и ИЛИ

A

B

И

ИЛИ

0

0

0

0

0

1

0

1

1

0

0

1

1

1

1

1


Кроме элементов стандартной логики, в рассматриваемой схеме использован мультиплексор, содержащийся в библиотеке ISE под обозначением M2_1. Принцип его работы заключается в подключении к выходу О входов D0 или D1 в зависимости от логического уровня на входе S0. Условное графическое обозначение мультиплексора представлено на рис. 15. Временная диаграмма работы мультиплексора представлена на рис. 16.

Рисунок 15 - Условное графическое обозначение мультиплексора M2_1

Рисунок 16 - Временная диаграмма работы элемента M2_1

Последним из использованных в схеме элементов является сдвигающий реверсивный регистр с параллельной загрузкой. В стандартных библиотеках Xilinx ISE имеется регистр с теми же функциями, что и в исходной схеме, однако с отличающимися управляющими сигналами - SR4RLED. Условное графическое обозначение регистра представлено на рис. 17. Логика работы регистра описывается в таблице 4.

Таблица 4 - Таблица истинности для регистра SR4RLED

R

L

CE

LEFT

SLI

SRI

D(3..0)

C

Q(3..0)

1

X

X

X

X

X

X

0000

0

1

X

X

X

X

D3D2D1D0

D3D2D1D0

0

0

0

X

X

X

X

Q3Q2Q1Q0

0

0

1

1

SLI

X

X

Q2Q1Q0SLI

0

0

1

0

X

SRI

X

SRIQ3Q2Q1


Рисунок 17 - Условное графическое обозначение регистра SR4RLED

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

Рисунок 18 - Регистр с приведенными управляющими сигналами

Регистр с такой доработкой полностью идентичен регистру, использованному в исходной схеме.

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

Рисунок 19 - Временная диаграмма работы устройства в режиме "Ход"

Рисунок 20 - Временная диаграмма работы устройства в режиме "Вперед"

Рисунок 21 - Временная диаграмма работы устройства в режиме "Назад"

Рисунок 22 - Временная диаграмма работы устройства в режиме "Стоп"

.2 Выбор микросхемы ПЛИС

Компания Xilinx является ведущим производителем микросхем программируемой логики - доля Xilinx на мировом рынке ПЛИС составляет, по данным самой компании, 51%. Поэтому неудивительно, что она производит широкий ряд ПЛИС различного назначения и степени сложности. Все ПЛИС можно разделить на две основные группы - FPGA и CPLD. Основным их отличием друг от друга является порядок их загрузки - при включении FPGA загружает прошивку из подключенной к ней микросхемы памяти, в то время как CPLD хранит прошивку внутри себя самой. Кроме того, обычно FPGA являются более сложными, и содержат на кристалле готовые модули ФАПЧ, счетчиков и других широко применяемых устройств, в то время как CPLD обычно более просты и, соответственно, дешевы. Для реализации рассматриваемого устройства однозначным решением является выбор микросхемы типа CPLD, так как их номенклатура начинается от самых маленьких и дешевых чипов. Компания Xilinx выпускает несколько серий CPLD, таких как XC9500 и CoolRunner. Отличительной чертой серии CoolRunner является пониженное энергопотребление. Разработанное устройство не предъявляет к ПЛИС высоких требований по частоте или рассеиваемой мощности, поэтому наиболее рациональным будет выбор распространенной серии ХС9500. Исходя из отчета, сгенерированного Xilinx ISE, разработанная схема занимает 36 логических ячеек. В таком случае оптимальным является выбор микросхемы XC9536-10VQ44, обладающей следующими характеристиками:

36 логических ячеек с 800 программируемыми логическими связями

34 вывода, доступных для программирования;

рабочее напряжение 5 В;

задержка распространения сигнала pin-to-pin 10 нс;

44-выводной QFP-корпус.

.3 Уровни реализации структуры ПЛИС

ПЛИС семейства CLPD состоят из множества макроячеек, количество которых различно в зависимости от конкретной микросхемы. В типовой состав макроячейки входит D-триггер, набор логических элементов и т.н. LUT - Look Up Table - ячейка памяти, в которой хранится конфигурация макроячейки.

Таким образом, можно рассматривать 3 уровня реализации проекта в ПЛИС:

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

Рисунок 23 - Устройство в виде "чёрного ящика"

2. Устройство рассматривается как логически связанная совокупность сложных компонентов, таких как дешифраторы, счетчики, мультиплексоры, компараторы и т.д. В этом виде устройство представляется своей принципиальной схемой. Рассматриваемое устройство в таком представлении показано на рис. 24.

Рисунок 24 - Устройство в виде принципиальной схемы

3. Рассматривается реализация отдельного компонента с помощью логических элементов ПЛИС. Например, на рис. 25 показана внутренняя структура мультиплексора M2_1.

Рисунок 25 - Внутренняя структура мультиплексора М2_1

Таким образом, любой элемент, представленный в библиотеках Xilinx ISE, или созданный проектировщиком на языке описания аппаратуры, или полученный каким-либо иным образом, вне зависимости от его уровня абстракции в любом случае должен будет быть реализован с помощью элементарных логических ячеек, входящих в состав ПЛИС.

2.4 Назначение выводов ПЛИС

Одним из завершающих этапов проектирования устройства на базе ПЛИС, который предшествует этапу генерации файла "прошивки" и программирования ПЛИС, является этап назначения соответствия входов/выходов реализованной схемы к выводам микросхемы ПЛИС. Это производится с помощью инструмента Xilinx PACE.

Микросхема XC9536-10VQ44 имеет ряд выводов, использование которых в качестве выводов общего назначения невозможно или не рекомендуется. К ним относятся выводы интерфейса JTAG, выводы питания, а также выводы GCK, GTS и GSR. Последние 3 типа выводов могут быть использованы в качестве выводов общего назначения, но при необходимости реализации функций общего сброса или общей предустановки или общего тактирования рекомендуется назначать соответствующие входы именно на них.

Таблица 5 - Назначение выводов ПЛИС сигналам схемы

Сигнал

Номер вывода

CLK

43

REW

5

STOP

6

W

FF

8

Q0

28

Q1

29

Q2

30

Q3

31


Расчет использования ресурсов ПЛИС показывает следующие значения:


2.5 Расчет энергопотребления с помощью утилиты xPower

Во время разработки нового устройства часто необходимо также решать задачу расчета потребляемой мощности. Для этого в Xilinx ISE встроен модуль XPower, позволяющий оценить будущее потребление ПЛИС исходя из многочисленных параметров, таких как напряжение питания ПЛИС, используемый чип, количество используемых выводов и логических ячеек, тактовая частота.

К сожалению, XPower может работать не со всеми чипами, выпускаемыми Xilinx. Он поддерживает ПЛИС FPGA начиная от Spartan 2 до 7 серии FPGA, таких как Virtex-7, Kintex-7, Artix-7.

Ниже показан расчет потребления спроектированной схемы в ПЛИС XC2S15 серии Spartan 2 и в ПЛИС XC4VLX15 серии Virtex 4.

2:summary: I(mA) P(mW)estimated power consumption: 50

--2.50V: 4 103.30V: 12 40

--: 0 1: 0 1: 2 6:10 33: 0 0

--Vccint 2.50V: 1 3Vcco33 3.30V: 2 7summary:junction temperature: 27Ctemp: 25Ctemp: 27CJ-A range: 38 - 38C/W4:summary: I(mA) P(mW)estimated power consumption: 254

--1.20V: 51 612.50V: 77 1932.50V: 0 0

--: 0 0: 1 1: 0 0:0 0: 0 0

--Vccint 1.20V: 50 60Vccaux 2.50V: 77 193summary:junction temperature: 30Ctemp: 25Ctemp: 30CJ-A range: 21 - 18C/W

Заключение

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

В данном курсовом проекте был рассмотрен процесс переноса имеющейся принципиальной схемы на ПЛИС, рассмотрены этапы разработки устройства на ПЛИС в САПР Xilinx ISE и создание принципиальной схемы готового устройства.

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

 

Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!