Технология работы шагового двигателя

Постановка задачи



Целью данной курсовой работы является:

	построение математической модели ДД;

	построение математической модели РУ;

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

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

	втягивание штока;

	выдвижение штока;

	переключение между режимами;

* разработка схемы формирования управляющего сигнала.




Введение



За подачу топлива в ДД отвечает ТНВД, который управляется с помощью РУ. Такой способ управления не является оптимальным с точки зрения экономии топлива. В других развитых странах подача топлива осуществляется при помощи электронного впрыска топлива непосредственно в цилиндр. Так как в нашей стране все ДД оснащены ТНВД, переход на такой способ подачи топлива является экономически не выгодным. Поэтому для повышения производительности ДД, увеличения экономии расхода топлива принято решение вместо РУ использовать гидрорегулятор, управляемый при помощи системы управления (СУ), построенной на основе МК.

На начальном этапе требуется получиться характеристики РУ, которые мы будем использовать в качестве эталонных, при проектировании СУ. Для получения характеристик требуется построить математические модели и промоделировать их в пакете Simulink.

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




1.Общие сведения построения математической модели



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





Рис.1. Структурная схема САР двигателя.



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

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

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



1.1 Уравнение двигателя



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

При действии на двигатель постоянным моментом сопротивления  равновесное состояние описывается равенством:



,(1)



где  - крутящий момент двигателя.

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



,(2)

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

Уравнение (2) является уравнением движения коленчатого двигателя в полных координатах. 

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

Рассмотрим подробнее метод опорных кривых. В качестве опорных кривых выбираются скоростные характеристики двигателя (рис.2.) снятые по ГОСТ 18509-73 при закрепленной рейке (или дозаторе) регулятора топливного насоса. 





Рис.2. Скоростные характеристики двигателя СМД-60 при различных положениях рейки топливного насоса (h).



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


, (3)



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



.(4)



При построении функции  за относительную единицу принимаем разность ординат  и  при соответствующем значении 

при , ;

при , ,

т. е. функция изменяется в пределах 

Аппроксимация функции  рассмотрена на примере двигателя СМД-60. В качестве опорных выбраны кривые, соответствующие  и 

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



,(4)



откуда 



.(5)



В рассматриваемом случае разность







С учетом уравнений (4) и (5) функциональная зависимость примет вид 



,(6)



а аппроксимированное уравнение движения коленчатого двигателя СМД-60 принимает вид:



.(7)



где  - момент инерции равный сумме момента инерции вращающихся деталей двигателя, приведенный к коленчатому валу и момента инерции вращающихся деталей ведомой части муфты сцепления (для двигателя СМД-60 ).

В уравнении  - верхняя опорная кривая, соответствующая номинальному положению рейки (дозатору) . В результате ее аппроксимации получили полином третьего порядка вида: . На примере двигателя СМД-60 (рис.2.) , ,  и .



Таблица 1 «Значение скоростной характеристики двигателя СМД-60»

w

Mд

130,00

580,00

140,00

590,00

150,00

597,50

160,00

601,50

170,00

600,00

180,00

595,50

190,00

590,00

200,00

582,50

209,44

572,2006

210,00

570,00

220,00

560,00





Рис.4. Скоростная характеристика двигателя СМД-60.




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



Таблица 2 «Значение скоростной характеристики двигателя при »

w

M

130,00

580,00

140,00

590,00

150,00

597,50





Рис.5. Скоростная характеристика двигателя при .



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



1.2 Уравнение регулятора скоростного режима двигателя



На тракторных двигателях применяют всережимные механические регуляторы прямого действия с центробежным чувствительным элементом (см. рис.9.). Математическое описание работы такого регулятора в соответствии со структурной схемой САР (см. рис.1.) должно выражать зависимость изменения положения органа управления подачей топлива при изменении скоростного режима двигателя. В зависимости от типа топливного насоса органом, управляющим подачей топлива, является рейка или дозатор, связанные кинематически с муфтой регулятора. Поэтому положение рейки или дозатора топливного насоса определяется положением муфты регулятора, которое зависит от соотношения поддерживающей и восстанавливающей сил регулятора.





Рис.6. Схема регулятора скоростного режима двигателя.



Восстанавливающая сила - это сила упругости пружины 6 (см. рис.6.). Ее значение определяют по предварительной затяжке пружины, осуществляемой трактористом с помощью рычага подачи топлива. При данной предварительной затяжке пружины значение  определяется положением муфты регулятора, т.е. .

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

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




,(8)



где  - угловая скорость вала регулятора.

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

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

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

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



.(9)


Зависимость восстанавливающей силы  и инерционного коэффициента  от хода муфты регулятора строится на основании статического расчета по конструктивным характеристикам регулятора. Такие характеристики для регулятора типа НД-22/6 двигателя СМД-60 показаны соответственно на рис.7. и рис.8.







Рис.7. Зависимость восстанавливающей силы  регулятора от перемещения муфты  топливного насоса НД-22/6.





Рис.8. Зависимость коэффициента инерционности грузов  регулятора от перемещения муфты .



График восстанавливающей силы  аппроксимируют уравнениями:




(10)



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

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



,(11)



где  - значения инерционного коэффициента при ;  - коэффициент уравнения равный тангенсу угла наклона графика инерционного коэффициента к оси абсцисс.

Положение дозирующего органа  определяют положением муфты регулятора . Конструктивно в регуляторе типа НД-22/6 ход муфты регулятора z равен ходу дозатора , т. е. . 

Значение фактора демпфирования  для регулятора типа НД-22/6 по данным ЦНИИТА принято постоянным, не зависящим от положения дозатора (). Масса движущихся частей регулятора и топливного насоса двигателя СМД-60 по данным ЦНИИТА .

Таким образом, для регулятора типа НД-22/6 исходное уравнение (9) с учетом выше приведенных зависимостей (10) и (11) после аппроксимации для регуляторного и корректорного участка имеет вид:


(12)



Таблица 3 «Расчет коэффициентов уравнения регулятора»

N, Нс/м

120

N/m

1290,3

A, Нс2

0,001

A/m

0,0107527

Ep, Н

29,477

Ep/m

316,957

Ek, Н

100

Ek/m

1075,27

Cp, Н/м

8330

Cp/m

89570

Ck, Н/м

60120,8

Ck/m

646460

Ca, Нс/м

0,05870

Ca/m

0,6312



Таблица 4 «Зависимость положения рейки от угловой скорости»

w

h

0



20

0,001670624

40

0,001692575

60

0,001729275

80

0,001780898

100

0,00184769

120

0,00192997

140

0,00202814

160

0,002142683

180

0,002274174

200

0,002423284

209,4395102

0,0025

209,4395102

0,0025

210

0,002546956

215

0,00298186

220

0,003447467

225

0,003946736

230

0,004483033






Рис.9. Зависимость положения рейки от угловой скорости.



На основе полученных математических моделей, промоделируем в пакете Simulink.





Рис.10. Модель двигателя с регулятором при неизвестной нагрузке.





Рис.11. График перемещения рейки регулятора.






Рис.12а. График изменения оборотов двигателя на разгонном участке.





Рис.12б. График изменения оборотов двигателя.



1.3 Исследование влияния нелинейности на характеристики системы



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

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






Рис.13. Скоростная характеристика двигателя с кусочно-непрерывными функциями.



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



Промоделируем систему с данным видом нелинейности.





Рис.14. Модель двигателя с регулятором при неизвестной нагрузке.





Рис.15 График зависимости оборотов двигателя на разгонном участке.




Рис.16а. График изменения оборотов двигателя.





Рис.16б. График перемещения рейки регулятора.



Проведем сравнение с нелинейной характеристикой, полученной ранее.





Рис.17а. График ошибки изменения оборотов двигателя.






Рис.17б. График ошибки перемещения рейки регулятора.



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




2. Шаговый двигатель



2.1 Описание шагового двигателя



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





Рис.18. Модифицированная структурная схема САР двигателя.



Таблица 5 «Величина хода штока электродвигателя»

Положение штока

Число шагов электродвигателя

Величина хода штока электродвигателя, мм

1- «минимальный вылет»

0

0,0

2- «рабочий ход»

264

11,000±0,066

3- «максимальный вылет»

312

13,00 ±0,08

Примечание - Величина хода штока при выдвижении и втягивании на 1 мм соответствует 24 шагам электродвигателя




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

Временные диаграммы импульсов управления электродвигателем (скорость вращения ротора двигателя 168 шаг/с - скорость перемещения штока 7 мм/с).





Рис.20. Втягивание штока.





Рис.21. Выдвижение штока.



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



2.2.1 Получение последовательности выходных импульсов

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

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

Рассмотрим построение такого счётчика на JK-триггерах. Получим последовательность выходных состояний счётчика. Для этого определим величину одного кванта времени D как наибольший общий делитель (НОД) из длительностей импульсов  и интервалов между ними  для всех выходов (рис.20-21). 

Результатом является квант времени D, равный 0.35mc.

Выходная последовательность будет иметь вид РА0, РА1, РА2, РА3.

Необходимо доопределить 4-разрядные коды (РА0, РА1, РА2, РА3) до n-разрядных таким образом, чтобы среди них не было одинаковых.

n по формуле:



, 



где  – знак округления до ближайшего справа целого числа.

m – количество выходов;

к – максимальное число одинаковых кодов.

В нашем случае, m=4, k=15, n=8.

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

В результате получим последовательность, представленную в Приложении 1.

Последовательность имеет 68 устойчивых неповторяющихся состояний. Для построения такого счётчика необходимо 8 триггеров. Выберем JK – триггеры.


2.2.2 JK – триггер

Триггеры – элементарные автоматы, содержащие собственно элемент памяти (фиксатор) и схему управления. Фиксатор строится на двух инверторах, связанных друг с другом «накрест», так что выход одного соединен с входом другого. Такое соединение дает цепь с двумя устойчивыми состояниями (рис. 22). Действительно, если на выходе инвертора 1 имеется логический нуль, то он обеспечивает на выходе инвертора 2 логическую единицу, благодаря которой сам и существует. То же согласование сигналов имеет место и для второго состояния, когда инвертор 1 находится в единице, а инвертор 2 – в нуле. Любое из двух состояний может существовать неограниченно долго. 





Рис. 22. Ячейка с двумя устойчивыми состояниями.





Рис. 23. Схемы фиксаторов с входами управления на элементах ИЛИ-НЕ и И-НЕ



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

Чтобы управлять фиксатором, нужно иметь в логических элементах дополнительные входы, превращающие инверторы в элементы И-НЕ либо ИЛИ-НЕ. На входы управления поступают внешние установочные сигналы.

Установочные сигналы показаны на рис. 23 штриховыми линиями. Буквой R латинского алфавита (от Reset) обозначен сигнал установки триггера в нуль (сигнал сброса), а буквой S (от Set) – сигнал установки в состояние логической единицы (сигнал установки). Состояние триггера считывается по значению прямого выхода, обозначаемого как . Чаще всего триггер имеет и второй выход с инверсным сигналом . Для фиксатора на элементах ИЛИ-НЕ установочным сигналом является единичный, поскольку только он приводит логический элемент в нулевое состояние независимо от сигналов на других входах элемента. Для фиксатора на элементах И-НЕ установочным сигналом является нулевой, как обладающий тем же свойством однозначно задавать состояние элемента независимо от состояний других входов.

Таблицу истинности триггера JK можно записать в полном (табл. 6) или сокращенном виде (табл. 7). Через  обозначено новое состояние триггера (после переключения).



Таблица 6









Режим

0

0

0

0

Хранение

0

0

1

1



0

1

0

0

Установка 0

0

1

1

0



1

0

0

1

Установка 1

1

0

1

1



1

1

0

1

Переключение

1

1

1

0




Таблица 7







0

0

Q

0

1

0

1

0

1

1

1





Карта Карно для JK-триггера показана на рис. 24. Из неё можно получить характеристическое уравнение триггера .





Рис. 24. Карта Карно для JK-триггера



По характеристическому уравнению можно построить схему триггера в любом логическом базисе (рис. 25).





Рис. 25. Схема JK-триггера в базисе И, ИЛИ, НЕ



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





Рис. 26. Диаграммы состояний (графы переходов) для JK-триггера 


Таблица 8

Переход

J

K

0→0

0



0→1

1



1→0



1

1→1



0



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





Рис. 27. Временные диаграммы работы асинхронного JK-триггера



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

Приведённое выше описание относится к асинхронному JK-триггеру, изменение состояний которого происходит под действием входных сигналов J и K. 

На практике чаще всего используются синхронные триггеры, отличающиеся наличием дополнительного, так называемого синхронизирующего входа С (от англ. слова clock – тактировать). 

Восприятие входных сигналов J и K у синхронного триггера происходит только при наличии активного уровня сигнала на входе С.

Работу такого триггера можно проиллюстрировать временной диаграммой (рис. 28).





Рис. 28. Временные диаграммы работы синхронного JK-триггера



2.2.3 Получение управляющих сигналов

Переходы кодируются в соответствии с таблицей переходов для JK – триггера (Таблица 3). Полученные функции возбуждения для каждого триггера представлены в Приложении 2.



2.2.4 Построение схем функций возбуждения

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





Рис.29. Схема реализации функции возбуждения для J – входа 1 триггера





Рис.30. Схема реализации функции возбуждения для K – входа 1 триггера




Рис.31. Схема реализации функции возбуждения для J – входа 2 триггера





Рис.32. Схема реализации функции возбуждения для K – входа 2 триггера





Рис.33. Схема реализации функции возбуждения для J – входа 3 триггера





Рис.34. Схема реализации функции возбуждения для K – входа 3 триггера




Рис.35. Схема реализации функции возбуждения для J – входа 4 триггера





Рис.36. Схема реализации функции возбуждения для K – входа 4 триггера





Рис.37. Схема реализации функции возбуждения для J – входа 5 триггера






Рис.38. Схема реализации функции возбуждения для K – входа 5 триггера







Рис.39. Схема реализации функции возбуждения для J – входа 6 триггера





Рис.40. Схема реализации функции возбуждения для K – входа 6 триггера






Рис.41. Схема реализации функции возбуждения для J – входа 7 триггера





Рис.42. Схема реализации функции возбуждения для K – входа 7 триггера





Рис.43. Схема реализации функции возбуждения для J – входа 8 триггера





Рис.44. Схема реализации функции возбуждения для K – входа 8 триггера


Каждую функцию представим в виде дешифратора для каждого триггера.

Будем использовать синхронный JK триггер.





Рис.45 Схема управления двигателем.



Анализируя временные диаграммы (рис.20-21) можно заметить, что формы сигналов на циклах втягивания/выдвижения штока одинаковы, но подаются на разные входы. Поэтому нецелесообразно разрабатывать новую схему для выдвижения штока. Достаточно, используя имеющуюся схему, поменять выходы схемы управления двигателем.

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





Рис.46 Мультиплексор.



Вход А – управляющий. На выход мультиплексора подаётся входная последовательность, в зависимости от значения управляющего входа. Так при подаче «0» на управляющий вход на выходе будет сигнал со входа D0, при подаче «1» - D1. Вход разрешения разрешает работу мультиплексора, управляется высоким уровнем сигнала.





Рис.47 Схема переключения режимов работы двигателя.




3. Формирование управляющих сигналов



Все схемы реализуем на ПЛИС на кристалле xc95288xl.



3.1 Измерение оборотов двигателя



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

Если на один оборот двигателя приходится 1000 импульсов, и за время измерения Т на счетчик поступает Х импульсов, то выражение, по которому определяем угловую скорость вращения, имеет вид:



W=60Х/1000T (об/мин)



где: W - угловая скорость вращения двигателя. 

 Х - количество импульсов за T с.

Структурная схема тахометра приведена на рис. 48.






Рис. 48. Структурная схема тахометра



Счетчик делитель задает необходимое время подсчета импульсов с кодового датчика. Коэффициент зависит от времени измерения по формуле: 80*Х, где Х- время измерения в мс. Период измерения не должен быть слишком большим. Иначе счетчик переполнится и обнулится. 

Сигнал с СС0 – записывает данные в регистр.

Сигнал с СС2 – обнуляет счетчик. 

Сигнал с СС0 поступает на 1 такт раньше, чем с СС2. Т.е. Сначала измерение записывается в регистр, а потом обнуляется.



3.1.1 Счетчик-делитель

Так как частота ГТИ 20МГц, то для того чтобы обеспечить необходимые временные задержки логических элементов, необходимо уменьшить частоту сигнала, поставив делители. Требуемая частота сигнала – 50КГц. Чтобы добиться данной частоты установим делитель на 400. Он представляет из себя последовательно включенные делители на 5 и на 16.

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



Таблица 9. 

Исходное состояние

Следующее

состояние

Функции

возбуждения



















































Имея в виду, что вместо символа произвольного сигнала  можно подставлять любую переменную («0» или «1»), на основании таблицы запишем:

 (в столбце  оставлена всего одна единица),

, .

Для функций  выберем варианты с наибольшим числом констант, чтобы меньше нагружать источники сигналов. Примем, что ,  и .





Рис.49 Делитель на 5.



Реализация счетчика-делителя на 16 – аналогичная.



3.1.2 Тахометр

Сигнал требуемой частоты подается на 8-ми разрядный счетчик, после которого происходит сравнение на «0» и на «2». Т.е. сигналы записи в регистр и сброса счётчика импульсов разнесены по тактам. Это необходимо для того, чтобы не происходило одновременного сброса счётчика и считывания данных с него. 






Рис.50 Тахометр.



На схеме вход В – вход с генератора требуемой частоты. На вход А поступают сигналы с датчика, стоящего на двигателе. Выходы out7 – out0 – значение текущей скорости двигателя.




Заключение



В данном курсовом проекте исследовали влияние нелинейности на характеристики двигателя: пришли к выводу, что можно перейти от описания модели двигателя полиномом 3го порядка к кусочно-непрерывным линейным функциям. 

Спроектировали схемы управления шаговым двигателем: втягивание, выдвижение штока, используя подход построения счетчика с произвольным порядком счета; схему переключения режимов работы на основе мультиплексоров типа 2/1; схему формирования управляющих сигналов. Для разработки схем управления можно воспользоваться альтернативным методом, использующим средства автоматизации – язык VHDL. 




Литература



1.П.В.Агуров «Интерфейсы USB. Практика использования и программирования» Спб.: БХВ – Петербург, 2004.

2.М.С.Голубцов, А.В.Кириченкова «Микроконтроллеры AVR: от простого к сложному». Изд.2-е, испр. и доп. – М.: Солон – пресс,2004. 304с.

3.В.В.Гребнев «Микроконтроллеры семейства AVR фирмы Atmel». – М.:ИП-РадиоСофт, 2002. 176с.

4.Давыдова «Двигатель шаговый ДШМ 27,6-11,13-2 технические условия». 2007 – 42с.

5.В.Ю. Зотов «Проетирование цифровых устройств на основе ПЛИС фирмы XILINX в САПР WebPack ICE», Москва, 2003.

6.Г.М.Кутьков В.Н.Сидоров «Тракторы и автомобили» Учебно–методическое пособие. Москва – Калуга. 2007.

7.В.Н.Сидоров «Методика расчёта тягово-динамических характеристик трактора» методическое пособие. Калуга.

8. Е.П. Угрюмов «Цифровая схемотехника» СПБ.: БХВ – Петербург, 2004.




Приложение 1



Q8

Q7

Q6

Q5

Q4

Q3

Q2

Q1

1

0

0

0

0

0

0

1

0

0

0

0

0

0

0

1

0

0

0

0

1

0

0

1

0

0

0

1

1

0

0

1

0

0

1

1

1

0

0

1

0

0

1

0

1

0

0

1

0

1

1

0

1

0

0

1

0

1

1

1

1

0

0

1

0

1

0

1

1

0

0

1

0

1

0

0

1

0

0

1

1

1

0

0

1

0

0

1

1

1

0

1

1

0

0

1

1

1

1

1

1

0

0

1

1

1

1

0

1

0

0

1

1

0

1

0

1

0

0

1

1

0

1

1

1

0

0

1

1

0

0

1

1

0

0

1

1

0

0

1

1

0

0

0

1

0

0

0

1

0

0

0

1

0

0

0

1

0

1

0

0

0

0

0

1

0

1

0

0

0

0

1

1

0

1

0

0

0

1

1

1

0

1

0

0

0

1

0

1

0

1

0

0

1

1

0

1

0

1

0

0

1

1

1

1

0

1

0

0

1

0

1

1

0

1

0

0

1

0

0

1

0

1

0

1

1

0

0

1

0

1

0

1

1

0

1

1

0

1

0

1

1

1

1

1

0

1

0

1

1

1

0

1

0

1

0

1

0

1

0

1

0

1

0

1

0

1

1

1

0

1

0

1

0

1

1

0

0

1

0

0

0

1

1

0

0

1

0

0

0

1

1

0

1

1

0

0

0

1

0

0

1

1

0

0

1

1

0

0

1

1

0

0

1

1

1

0

1

1

0

0

1

0

1

0

1

1

0

0

1

0

0

0

1

1

0

1

1

0

0

0

1

1

0

1

1

0

1

0

1

1

0

1

1

1

1

0

1

1

0

1

1

1

0

0

1

1

0

1

0

1

0

0

1

1

0

1

0

1

1

0

1

1

0

1

0

0

1

0

1

1

0

1

0

0

0

0

1

1

0

0

0

0

0

0

1

1

0

0

0

0

0

0

1

0

0

0

0

0

1

0

1

0

0

0

0

0

1

0

1

0

1

0

0

1

1

0

1

0

1

0

0

1

0

0

1

0

1

0

1

1

0

0

1

0

1

0

1

1

1

0

1

0

1

0

1

0

1

0

1

0

1

0

1

0

0

0

1

0

1

1

1

0

0

0

1

0

1

1

1

0

1

0

1

0

1

1

1

1

1

0

1

0

1

1

1

1

0

0

1

0

1

1

0

1

0

0

1

0

1

1

0

1

1

0

1

0

1

1

0

0

1

0

1

0

1

1

0

0

0

0

1

0

1




Приложение 2



Q8

Q7

Q6

Q5

Q4

Q3

Q2

Q1



J8

 

J7

 

j6

 

jj5

 

j4

 

j3

 

j2

 

j1

 



















 

k8

 

k7

 

k6

 

k5

 

k4

 

k3

 

k2

 

k1

1-0

0-0

0-0

0-0

0-0

0-0

0-0

1-1

 

*

1

0

*

0

*

0

*

0

*

0

*

0

*

*

0

0-0

0-0

0-0

0-0

0-1

0-0

0-0

1-1



0

*

0

*

0

*

0

*

1

*

0

*

0

*

*

0

0-0

0-0

0-0

0-1

1-1

0-0

0-0

1-1



0

*

0

*

0

*

1

*

*

0

0

*

0

*

*

0

0-0

0-0

0-1

1-1

1-1

0-0

0-0

1-1



0

*

0

*

1

*

*

0

*

0

0

*

0

*

*

0

0-0

0-0

1-1

1-0

1-1

0-0

0-0

1-1



0

*

0

*

*

0

*

1

*

0

0

*

0

*

*

0

0-0

0-1

1-1

0-0

1-1

0-0

0-0

1-1



0

*

1

*

*

0

0

*

*

0

0

*

0

*

*

0

0-0

1-1

1-1

0-1

1-1

0-0

0-0

1-1



0

*

*

0

*

0

1

*

*

0

0

*

0

*

*

0

0-0

1-1

1-0

1-1

1-1

0-0

0-0

1-1



0

*

*

0

*

1

*

0

*

0

0

*

0

*

*

0

0-0

1-1

0-0

1-0

1-1

0-0

0-0

1-1



0

*

*

0

0

*

*

1

*

0

0

*

0

*

*

0

0-1

1-1

0-0

0-0

1-1

0-0

0-0

1-1



1

*

*

0

0

*

0

*

*

0

0

*

0

*

*

0

1-1

1-1

0-0

0-1

1-1

0-0

0-0

1-1



*

0

*

0

0

*

1

*

*

0

0

*

0

*

*

0

1-1

1-1

0-1

1-1

1-1

0-0

0-0

1-1



*

0

*

0

1

*

*

0

*

0

0

*

0

*

*

0

1-1

1-1

1-1

1-0

1-1

0-0

0-0

1-1



*

0

*

0

*

0

*

1

*

0

0

*

0

*

*

0

1-1

1-0

1-1

0-0

1-1

0-0

0-0

1-1



*

0

*

1

*

0

0

*

*

0

0

*

0

*

*

0

1-1

0-0

1-1

0-1

1-1

0-0

0-0

1-1



*

0

0

*

*

0

1

*

*

0

0

*

0

*

*

0

1-1

0-0

1-0

1-1

1-1

0-0

0-0

1-1



*

0

0

*

*

1

*

0

*

0

0

*

0

*

*

0

1-1

0-0

0-0

1-1

1-1

0-0

0-0

1-0

 

*

0

0

*

0

*

*

0

*

0

0

*

0

*

*

1

1-1

0-0

0-0

1-0

1-1

0-0

0-0

0-0

 

*

0

0

*

0

*

*

1

*

0

0

*

0

*

0

*

1-1

0-0

0-0

0-0

1-1

0-0

0-1

0-0



*

0

0

*

0

*

0

*

*

0

0

*

1

*

0

*

1-0

0-0

0-0

0-0

1-1

0-0

1-1

0-0



*

1

0

*

0

*

0

*

*

0

0

*

*

0

0

*

0-0

0-0

0-0

0-1

1-1

0-0

1-1

0-0



0

*

0

*

0

*

1

*

*

0

0

*

*

0

0

*

0-0

0-0

0-1

1-1

1-1

0-0

1-1

0-0



0

*

0

*

1

*

*

0

*

0

0

*

*

0

0

*

0-0

0-0

1-1

1-0

1-1

0-0

1-1

0-0



0

*

0

*

*

0

*

1

*

0

0

*

*

0

0

*

0-0

0-1

1-1

0-0

1-1

0-0

1-1

0-0



0

*

1

*

*

0

0

*

*

0

0

*

*

0

0

*

0-0

1-1

1-1

0-1

1-1

0-0

1-1

0-0



0

*

*

0

*

0

1

*

*

0

0

*

*

0

0

*

0-0

1-1

1-0

1-1

1-1

0-0

1-1

0-0



0

*

*

0

*

1

*

0

*

0

0

*

*

0

0

*

0-0

1-1

0-0

1-0

1-1

0-0

1-1

0-0



0

*

*

0

0

*

*

1

*

0

0

*

*

0

0

*

0-1

1-1

0-0

0-0

1-1

0-0

1-1

0-0



1

*

*

0

0

*

0

*

*

0

0

*

*

0

0

*

1-1

1-1

0-0

0-1

1-1

0-0

1-1

0-0



*

0

*

0

0

*

1

*

*

0

0

*

*

0

0

*

1-1

1-1

0-1

1-1

1-1

0-0

1-1

0-0



*

0

*

0

1

*

*

0

*

0

0

*

*

0

0

*

1-1

1-1

1-1

1-0

1-1

0-0

1-1

0-0



*

0

*

0

*

0

*

1

*

0

0

*

*

0

0

*

1-1

1-0

1-1

0-0

1-1

0-0

1-1

0-0



*

0

*

1

*

0

0

*

*

0

0

*

*

0

0

*

1-1

0-0

1-1

0-1

1-1

0-0

1-1

0-0



*

0

0

*

*

0

1

*

*

0

0

*

*

0

0

*

1-1

0-0

1-1

1-1

1-0

0-0

1-1

0-0

 

*

0

0

*

*

0

*

0

*

1

0

*

*

0

0

*

1-0

0-0

1-1

1-1

0-0

0-0

1-1

0-0

 

*

1

0

*

*

0

*

0

0

*

0

*

*

0

0

*

0-0

0-0

1-1

1-1

0-0

0-1

1-1

0-0



0

*

0

*

*

0

*

0

0

*

1

*

*

0

0

*

0-0

0-0

1-1

1-0

0-0

1-1

1-1

0-0



0

*

0

*

*

0

*

1

0

*

*

0

*

0

0

*

0-0

0-1

1-1

0-0

0-0

1-1

1-1

0-0



0

*

1

*

*

0

0

*

0

*

*

0

*

0

0

*

0-0

1-1

1-1

0-1

0-0

1-1

1-1

0-0



0

*

*

0

*

0

1

*

0

*

*

0

*

0

0

*

0-0

1-1

1-0

1-1

0-0

1-1

1-1

0-0



0

*

*

0

*

1

*

0

0

*

*

0

*

0

0

*

0-0

1-1

0-0

1-0

0-0

1-1

1-1

0-0



0

*

*

0

0

*

*

1

0

*

*

0

*

0

0

*

0-1

1-1

0-0

0-0

0-0

1-1

1-1

0-0



1

*

*

0

0

*

0

*

0

*

*

0

*

0

0

*

1-1

1-1

0-0

0-1

0-0

1-1

1-1

0-0



*

0

*

0

0

*

1

*

0

*

*

0

*

0

0

*

1-1

1-1

0-1

1-1

0-0

1-1

1-1

0-0



*

0

*

0

1

*

*

0

0

*

*

0

*

0

0

*

1-1

1-1

1-1

1-0

0-0

1-1

1-1

0-0



*

0

*

0

*

0

*

1

0

*

*

0

*

0

0

*

1-1

1-0

1-1

0-0

0-0

1-1

1-1

0-0



*

0

*

1

*

0

0

*

0

*

*

0

*

0

0

*

1-1

0-0

1-1

0-1

0-0

1-1

1-1

0-0



*

0

0

*

*

0

1

*

0

*

*

0

*

0

0

*

1-1

0-0

1-0

1-1

0-0

1-1

1-1

0-0



*

0

0

*

*

1

*

0

0

*

*

0

*

0

0

*

1-1

0-0

0-0

1-0

0-0

1-1

1-1

0-0



*

0

0

*

0

*

*

1

0

*

*

0

*

0

0

*

1-0

0-0

0-0

0-0

0-0

1-1

1-1

0-0



*

1

0

*

0

*

0

*

0

*

*

0

*

0

0

*

0-0

0-0

0-0

0-0

0-0

1-1

1-0

0-0

 

0

*

0

*

0

*

0

*

0

*

*

0

*

1

0

*

0-0

0-0

0-0

0-1

0-0

1-1

0-0

0-0

 

0

*

0

*

0

*

1

*

0

*

*

0

0

*

0

*

0-0

0-0

0-0

1-1

0-0

1-1

0-0

0-1



0

*

0

*

0

*

*

0

0

*

*

0

0

*

1

*

0-0

0-0

0-1

1-1

0-0

1-1

0-0

1-1



0

*

0

*

1

*

*

0

0

*

*

0

0

*

*

0

0-0

0-0

1-1

1-0

0-0

1-1

0-0

1-1



0

*

0

*

*

0

*

1

0

*

*

0

0

*

*

0

0-0

0-1

1-1

0-0

0-0

1-1

0-0

1-1



0

*

1

*

*

0

0

*

0

*

*

0

0

*

*

0

0-0

1-1

1-1

0-1

0-0

1-1

0-0

1-1



0

*

*

0

*

0

1

*

0

*

*

0

0

*

*

0

0-0

1-1

1-0

1-1

0-0

1-1

0-0

1-1



0

*

*

0

*

1

*

0

0

*

*

0

0

*

*

0

0-0

1-1

0-0

1-0

0-0

1-1

0-0

1-1



0

*

*

0

0

*

*

1

0

*

*

0

0

*

*

0

0-1

1-1

0-0

0-0

0-0

1-1

0-0

1-1



1

*

*

0

0

*

0

*

0

*

*

0

0

*

*

0

1-1

1-1

0-0

0-1

0-0

1-1

0-0

1-1



*

0

*

0

0

*

1

*

0

*

*

0

0

*

*

0

1-1

1-1

0-1

1-1

0-0

1-1

0-0

1-1



*

0

*

0

1

*

*

0

0

*

*

0

0

*

*

0

1-1

1-1

1-1

1-0

0-0

1-1

0-0

1-1



*

0

*

0

*

0

*

1

0

*

*

0

0

*

*

0

1-1

1-0

1-1

0-0

0-0

1-1

0-0

1-1



*

0

*

1

*

0

0

*

0

*

*

0

0

*

*

0

1-1

0-0

1-1

0-1

0-0

1-1

0-0

1-1



*

0

0

*

*

0

1

*

0

*

*

0

0

*

*

0

1-1

0-0

1-0

1-1

0-0

1-1

0-0

1-1



*

0

0

*

*

1

*

0

0

*

*

0

0

*

*

0

1-1

0-0

0-0

1-0

0-0

1-1

0-0

1-1



*

0

0

*

0

*

*

1

0

*

*

0

0

*

*

0

1-1

0-0

0-0

0-0

0-0

1-0

0-0

1-1

 

*

0

0

*

0

*

0

*

0

*

*

1

0

*

*

0




Приложение 3



 

 















J8

K8

J7

K7

J6

K6

J5

K5

J4

K4

J3

K3

J2

K2

J1

K1



0

0

0

0

0

0

0

0

0

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

0

0

0

0

0

0

1

1

0

*

0

*

0

*

0

*

1

*

0

*

0

*

*

0

0

0

0

0

0

0

1

0

2

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

0

0

0

0

0

1

1

3

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

0

0

0

0

1

0

0

4

0

*

0

*

0

*

1

*

0

*

*

0

0

*

0

*

0

0

0

0

0

1

0

1

5

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

0

0

0

0

1

1

0

6

0

*

0

*

0

*

0

*

0

*

*

0

*

1

0

*

0

0

0

0

0

1

1

1

7

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

0

0

0

1

0

0

0

8

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

0

0

0

1

0

0

1

9

0

*

0

*

0

*

1

*

*

0

0

*

0

*

*

0

0

0

0

0

1

0

1

0

10

0

*

0

*

0

*

1

*

*

0

0

*

*

0

0

*

0

0

0

0

1

0

1

1

11

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

0

0

0

1

1

0

0

12

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

0

0

0

1

1

0

1

13

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

0

0

0

1

1

1

0

14

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

0

0

0

1

1

1

1

15

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

0

0

1

0

0

0

0

16

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

0

0

1

0

0

0

1

17

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

0

0

1

0

0

1

0

18

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

0

0

1

0

0

1

1

19

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

0

0

1

0

1

0

0

20

0

*

0

*

0

*

*

0

0

*

*

0

0

*

1

*

0

0

0

1

0

1

0

1

21

0

*

0

*

1

*

*

0

0

*

*

0

0

*

*

0

0

0

0

1

0

1

1

0

22

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

0

0

1

0

1

1

1

23

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

0

0

1

1

0

0

0

24

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

0

0

1

1

0

0

1

25

0

*

0

*

1

*

*

0

*

0

0

*

0

*

*

0

0

0

0

1

1

0

1

0

26

0

*

0

*

1

*

*

0

*

0

0

*

*

0

0

*

0

0

0

1

1

0

1

1

27

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

0

0

1

1

1

0

0

28

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

0

0

1

1

1

0

1

29

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

0

0

1

1

1

1

0

30

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

0

0

1

1

1

1

1

31

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

0

1

0

0

0

0

0

32

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

0

1

0

0

0

0

1

33

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

0

1

0

0

0

1

0

34

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

0

1

0

0

0

1

1

35

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

0

1

0

0

1

0

0

36

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

0

1

0

0

1

0

1

37

0

*

1

*

*

0

0

*

0

*

*

0

0

*

*

0

0

0

1

0

0

1

1

0

38

0

*

1

*

*

0

0

*

0

*

*

0

*

0

0

*

0

0

1

0

0

1

1

1

39

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

0

1

0

1

0

0

0

40

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

0

1

0

1

0

0

1

41

0

*

1

*

*

0

0

*

*

0

0

*

0

*

*

0

0

0

1

0

1

0

1

0

42

0

*

1

*

*

0

0

*

*

0

0

*

*

0

0

*

0

0

1

0

1

0

1

1

43

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

0

1

0

1

1

0

0

44

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

0

1

0

1

1

0

1

45

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

0

1

0

1

1

1

0

46

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

0

1

0

1

1

1

1

47

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

0

1

1

0

0

0

0

48

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

0

1

1

0

0

0

1

49

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

0

1

1

0

0

1

0

50

0

*

0

*

*

0

*

0

0

*

1

*

*

0

0

*

0

0

1

1

0

0

1

1

51

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

0

1

1

0

1

0

0

52

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

0

1

1

0

1

0

1

53

0

*

0

*

*

0

*

1

0

*

*

0

0

*

*

0

0

0

1

1

0

1

1

0

54

0

*

0

*

*

0

*

1

0

*

*

0

*

0

0

*

0

0

1

1

0

1

1

1

55

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

0

1

1

1

0

0

0

56

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

0

1

1

1

0

0

1

57

0

*

0

*

*

0

*

1

*

0

0

*

0

*

*

0

0

0

1

1

1

0

1

0

58

0

*

0

*

*

0

*

1

*

0

0

*

*

0

0

*

0

0

1

1

1

0

1

1

59

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

0

1

1

1

1

0

0

60

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

0

1

1

1

1

0

1

61

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

0

1

1

1

1

1

0

62

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

0

1

1

1

1

1

1

63

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

1

0

0

0

0

0

0

64

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

1

0

0

0

0

0

1

65

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

1

0

0

0

0

1

0

66

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

1

0

0

0

0

1

1

67

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

1

0

0

0

1

0

0

68

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

1

0

0

0

1

0

1

69

1

*

*

0

0

*

0

*

0

*

*

0

0

*

*

0

0

1

0

0

0

1

1

0

70

1

*

*

0

0

*

0

*

0

*

*

0

*

0

0

*

0

1

0

0

0

1

1

1

71

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

1

0

0

1

0

0

0

72

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

1

0

0

1

0

0

1

73

1

*

*

0

0

*

0

*

*

0

0

*

0

*

*

0

0

1

0

0

1

0

1

0

74

1

*

*

0

0

*

0

*

*

0

0

*

*

0

0

*

0

1

0

0

1

0

1

1

75

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

1

0

0

1

1

0

0

76

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

1

0

0

1

1

0

1

77

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

1

0

0

1

1

1

0

78

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

1

0

0

1

1

1

1

79

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

1

0

1

0

0

0

0

80

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

1

0

1

0

0

0

1

81

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

1

0

1

0

0

1

0

82

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

1

0

1

0

0

1

1

83

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

1

0

1

0

1

0

0

84

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

1

0

1

0

1

0

1

85

0

*

*

0

0

*

*

1

0

*

*

0

0

*

*

0

0

1

0

1

0

1

1

0

86

0

*

*

0

0

*

*

1

0

*

*

0

*

0

0

*

0

1

0

1

0

1

1

1

87

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

1

0

1

1

0

0

0

88

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

1

0

1

1

0

0

1

89

0

*

*

0

0

*

*

1

*

0

0

*

0

*

*

0

0

1

0

1

1

0

1

0

90

0

*

*

0

0

*

*

1

*

0

0

*

*

0

0

*

0

1

0

1

1

0

1

1

91

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

1

0

1

1

1

0

0

92

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

1

0

1

1

1

0

1

93

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

1

0

1

1

1

1

0

94

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

1

0

1

1

1

1

1

95

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

1

1

0

0

0

0

0

96

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

1

1

0

0

0

0

1

97

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

1

1

0

0

0

1

0

98

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

1

1

0

0

0

1

1

99

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

1

1

0

0

1

0

0

100

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

1

1

0

0

1

0

1

101

0

*

*

0

*

0

1

*

0

*

*

0

0

*

*

0

0

1

1

0

0

1

1

0

102

0

*

*

0

*

0

1

*

0

*

*

0

*

0

0

*

0

1

1

0

0

1

1

1

103

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

1

1

0

1

0

0

0

104

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

1

1

0

1

0

0

1

105

0

*

*

0

*

0

1

*

*

0

0

*

0

*

*

0

0

1

1

0

1

0

1

0

106

0

*

*

0

*

0

1

*

*

0

0

*

*

0

0

*

0

1

1

0

1

0

1

1

107

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

1

1

0

1

1

0

0

108

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

1

1

0

1

1

0

1

109

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

1

1

0

1

1

1

0

110

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

1

1

0

1

1

1

1

111

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

1

1

1

0

0

0

0

112

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

1

1

1

0

0

0

1

113

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

1

1

1

0

0

1

0

114

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

1

1

1

0

0

1

1

115

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

1

1

1

0

1

0

0

116

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

1

1

1

0

1

0

1

117

0

*

*

0

*

1

*

0

0

*

*

0

0

*

*

0

0

1

1

1

0

1

1

0

118

0

*

*

0

*

1

*

0

0

*

*

0

*

0

0

*

0

1

1

1

0

1

1

1

119

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

1

1

1

1

0

0

0

120

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

1

1

1

1

0

0

1

121

0

*

*

0

*

1

*

0

*

0

0

*

0

*

*

0

0

1

1

1

1

0

1

0

122

0

*

*

0

*

1

*

0

*

0

0

*

*

0

0

*

0

1

1

1

1

0

1

1

123

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

1

1

1

1

1

0

0

124

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

1

1

1

1

1

0

1

125

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

1

1

1

1

1

1

0

126

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

0

1

1

1

1

1

1

1

127

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

0

0

0

0

0

0

0

128

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

0

0

0

0

0

0

1

129

*

1

0

*

0

*

0

*

0

*

0

*

0

*

*

0

1

0

0

0

0

0

1

0

130

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

0

0

0

0

0

1

1

131

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

0

0

0

0

1

0

0

132

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

0

0

0

0

1

0

1

133

*

0

0

*

0

*

0

*

0

*

*

1

0

*

*

0

1

0

0

0

0

1

1

0

134

*

1

0

*

0

*

0

*

0

*

*

0

*

0

0

*

1

0

0

0

0

1

1

1

135

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

0

0

0

1

0

0

0

136

*

0

0

*

0

*

0

*

*

0

0

*

1

*

0

*

1

0

0

0

1

0

0

1

137

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

0

0

0

1

0

1

0

138

*

1

0

*

0

*

0

*

*

0

0

*

*

0

0

*

1

0

0

0

1

0

1

1

139

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

0

0

0

1

1

0

0

140

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

0

0

0

1

1

0

1

141

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

0

0

0

1

1

1

0

142

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

0

0

0

1

1

1

1

143

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

0

0

1

0

0

0

0

144

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

0

0

1

0

0

0

1

145

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

0

0

1

0

0

1

0

146

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

0

0

1

0

0

1

1

147

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

0

0

1

0

1

0

0

148

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

0

0

1

0

1

0

1

149

*

0

0

*

0

*

*

1

0

*

*

0

0

*

*

0

1

0

0

1

0

1

1

0

150

*

0

0

*

0

*

*

1

0

*

*

0

*

0

0

*

1

0

0

1

0

1

1

1

151

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

0

0

1

1

0

0

0

152

*

0

0

*

0

*

*

1

*

0

0

*

0

*

0

*

1

0

0

1

1

0

0

1

153

*

0

0

*

0

*

*

0

*

0

0

*

0

*

*

1

1

0

0

1

1

0

1

0

154

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

0

0

1

1

0

1

1

155

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

0

0

1

1

1

0

0

156

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

0

0

1

1

1

0

1

157

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

0

0

1

1

1

1

0

158

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

0

0

1

1

1

1

1

159

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

0

1

0

0

0

0

0

160

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

0

1

0

0

0

0

1

161

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

0

1

0

0

0

1

0

162

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

0

1

0

0

0

1

1

163

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

0

1

0

0

1

0

0

164

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

0

1

0

0

1

0

1

165

*

0

0

*

*

0

1

*

0

*

*

0

0

*

*

0

1

0

1

0

0

1

1

0

166

*

0

0

*

*

0

1

*

0

*

*

0

*

0

0

*

1

0

1

0

0

1

1

1

167

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

0

1

0

1

0

0

0

168

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

0

1

0

1

0

0

1

169

*

0

0

*

*

0

1

*

*

0

0

*

0

*

*

0

1

0

1

0

1

0

1

0

170

*

0

0

*

*

0

1

*

*

0

0

*

*

0

0

*

1

0

1

0

1

0

1

1

171

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

0

1

0

1

1

0

0

172

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

0

1

0

1

1

0

1

173

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

0

1

0

1

1

1

0

174

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

0

1

0

1

1

1

1

175

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

0

1

1

0

0

0

0

176

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

0

1

1

0

0

0

1

177

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

0

1

1

0

0

1

0

178

*

1

0

*

*

0

*

0

0

*

0

*

*

0

0

*

1

0

1

1

0

0

1

1

179

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

0

1

1

0

1

0

0

180

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

0

1

1

0

1

0

1

181

*

0

0

*

*

1

*

0

0

*

*

0

0

*

*

0

1

0

1

1

0

1

1

0

182

*

0

0

*

*

1

*

0

0

*

*

0

*

0

0

*

1

0

1

1

0

1

1

1

183

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

0

1

1

1

0

0

0

184

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

0

1

1

1

0

0

1

185

*

0

0

*

*

1

*

0

*

0

0

*

0

*

*

0

1

0

1

1

1

0

1

0

186

*

0

0

*

*

0

*

0

*

1

0

*

*

0

0

*

1

0

1

1

1

0

1

1

187

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

0

1

1

1

1

0

0

188

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

0

1

1

1

1

0

1

189

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

0

1

1

1

1

1

0

190

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

0

1

1

1

1

1

1

191

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

1

0

0

0

0

0

0

192

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

1

0

0

0

0

0

1

193

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

1

0

0

0

0

1

0

194

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

1

0

0

0

0

1

1

195

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

1

0

0

0

1

0

0

196

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

1

0

0

0

1

0

1

197

*

0

*

0

0

*

1

*

0

*

*

0

0

*

*

0

1

1

0

0

0

1

1

0

198

*

0

*

0

0

*

1

*

0

*

*

0

*

0

0

*

1

1

0

0

0

1

1

1

199

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

1

0

0

1

0

0

0

200

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

1

0

0

1

0

0

1

201

*

0

*

0

0

*

1

*

*

0

0

*

0

*

*

0

1

1

0

0

1

0

1

0

202

*

0

*

0

0

*

1

*

*

0

0

*

*

0

0

*

1

1

0

0

1

0

1

1

203

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

1

0

0

1

1

0

0

204

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

1

0

0

1

1

0

1

205

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

1

0

0

1

1

1

0

206

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

1

0

0

1

1

1

1

207

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

1

0

1

0

0

0

0

208

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

1

0

1

0

0

0

1

209

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

1

0

1

0

0

1

0

210

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

1

0

1

0

0

1

1

211

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

1

0

1

0

1

0

0

212

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

1

0

1

0

1

0

1

213

*

0

*

0

1

*

*

0

0

*

*

0

0

*

*

0

1

1

0

1

0

1

1

0

214

*

0

*

0

1

*

*

0

0

*

*

0

*

0

0

*

1

1

0

1

0

1

1

1

215

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

1

0

1

1

0

0

0

216

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

1

0

1

1

0

0

1

217

*

0

*

0

1

*

*

0

*

0

0

*

0

*

*

0

1

1

0

1

1

0

1

0

218

*

0

*

0

1

*

*

0

*

0

0

*

*

0

0

*

1

1

0

1

1

0

1

1

219

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

1

0

1

1

1

0

0

220

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

1

0

1

1

1

0

1

221

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

1

0

1

1

1

1

0

222

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

1

0

1

1

1

1

1

223

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

1

1

0

0

0

0

0

224

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

1

1

0

0

0

0

1

225

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

1

1

0

0

0

1

0

226

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

1

1

0

0

0

1

1

227

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

1

1

0

0

1

0

0

228

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

1

1

0

0

1

0

1

229

*

0

*

1

*

0

0

*

0

*

*

0

0

*

*

0

1

1

1

0

0

1

1

0

230

*

0

*

1

*

0

0

*

0

*

*

0

*

0

0

*

1

1

1

0

0

1

1

1

231

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

1

1

0

1

0

0

0

232

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

1

1

0

1

0

0

1

233

*

0

*

1

*

0

0

*

*

0

0

*

0

*

*

0

1

1

1

0

1

0

1

0

234

*

0

*

1

*

0

0

*

*

0

0

*

*

0

0

*

1

1

1

0

1

0

1

1

235

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

1

1

0

1

1

0

0

236

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

1

1

0

1

1

0

1

237

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

1

1

0

1

1

1

0

238

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

1

1

0

1

1

1

1

239

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

1

1

1

0

0

0

0

240

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

1

1

1

0

0

0

1

241

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

1

1

1

0

0

1

0

242

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

1

1

1

0

0

1

1

243

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

1

1

1

0

1

0

0

244

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

1

1

1

0

1

0

1

245

*

0

*

0

*

0

*

1

0

*

*

0

0

*

*

0

1

1

1

1

0

1

1

0

246

*

0

*

0

*

0

*

1

0

*

*

0

*

0

0

*

1

1

1

1

0

1

1

1

247

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

1

1

1

1

0

0

0

248

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

1

1

1

1

0

0

1

249

*

0

*

0

*

0

*

1

*

0

0

*

0

*

*

0

1

1

1

1

1

0

1

0

250

*

0

*

0

*

0

*

1

*

0

0

*

*

0

0

*

1

1

1

1

1

0

1

1

251

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

1

1

1

1

1

0

0

252

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

1

1

1

1

1

0

1

253

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

1

1

1

1

1

1

0

254

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

1

1

1

1

1

1

1

1

255

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*

*