Разработка системы контроля 'Мрия–3.2'

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

Разработка системы контроля 'Мрия–3.2'

СОДЕРЖАНИЕ

ВВЕДЕНИЕ

. АНАЛИЗ ТЕХНОЛОГИЧЕСКОГО ПРОЦЕССА

.1      Анализ технологического процесса

1.2    Анализ современных подходов и технологических решений

1.3 Анализ требований к новой системе управления

.3.1 Анализ требований к новой системе управления

1.3.2 Разработка задач проектирования

2. ОПРЕДЕЛЕНИЕ ОСНОВНЫХ ПАРАМЕТРОВ СИСТЕМЫ

2.1 Выбор основных узлов монитора

2.1.1 Выбор клавиатуры

.1.2 Выбор системы символьной индикации

2.2 Выбор узлов интерфейсов RS - 232, RS - 485

2.3 Выбор интерфейса USB

2.4 Выбор узла звуковой сигнализации

3. ПРОЕКТИРОВАНИЕ СИСТЕМЫ КОНТРОЛЯ

3.1 Разработка структуры системы контроля

.2 Разработка структурной схемы монитора

4. МОДЕЛИРОВАНИЕ СИСТЕМЫ КОНТРОЛЯ

4.1 Моделирование системы в программе Rational Rose

.2 Моделирование меню человеко-машинного интерфейса

5. РАЗРАБОТКА ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ ПРОЕКТА

5.1 Программное обеспечение системы контроля «Мрия-3.2»

.2 Разработка алгоритмов работы системы контроля

5.3 Модуль управления индикацией и клавиатурой

ЗАКЛЮЧЕНИЕ

СПИСОК ЛИТЕРАТУРЫ

ВВЕДЕНИЕ

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

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

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

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

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

Темой курсового проекта является разработка системы контроля «Мрия - 3.2», благодаря которой мы увеличили количество урожая и сократили затраты на высев.

1. АНАЛИЗ ТЕХНОЛОГИЧЕСКОГО ПРОЦЕССА И ПОСТАНОВКА ЗАДАЧ ПРОЕКТИРОВАНИЯ

.1 Анализ технологического процесса

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

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

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

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

Рисунок 1.1 - Схема размещения семян при посеве

Главная задача размещения семян на поле - получение максимальной урожайности при минимальных затратах на возделывание культуры. Для большинства сельскохозяйственных культур необходимое условие высокой урожайности - обеспечение дружных всходов.

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

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

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

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

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

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

Двойники - два и более семян, расположенных в одном «гнезде» почвы (расчетном). При точном высеве каждый «двойник», в целом, недополучает влаги и т.д. из-за уменьшения площади питания и его урожайность примерно на 20..35% меньше. После появления всходов необходимо устранить одно растение. Оставшийся росток теряет в скорости роста, а это приводит к потере урожая. Прополка ручная или механизированная приводит к дополнительным затратам. Количество двойников при точном посеве 4..8%.

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

1.2 Анализ современных подходов и технологических решений

Развитие средств контроля, устанавливаемых на подвижных сельскохозяйственных машинах, идет в направлении расширения функциональных возможностей электронных систем, связанных с применением бортовых микропроцессорных устройств, использования современных средств отображения, включая алфавитно-цифровые и графические дисплеи. Разновидности таких приборов используются на машинно-тракторных агрегатах фирм «Case», «JohnDeer»(CIIIA), «Agro» (ФРГ), «Blanhot» (Франция), «Bosch» (Германия).

Рассмотрим некоторые существующие системы контроля высева семян (СКВС).

СКВС «Элсис-ПРЕМИУМ»[3]. Внешний вид монитора системы представлен на рисунке 1.2.

Рисунок 1.2 - Внешний вид монитора СКВС «Элсис-ПРЕМИУМ»

Возможности системы включают в себя:

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

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

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

-   контроль состояния электромуфты;

-        контроль скорости высевающих валов (до 8 шт.);

         контроль засорения семяпроводов (до 256 семяпроводов);

         контроль уровня посевного материала и удобрений в бункерах (до 8 бункеров);

         контроль скорости движения посевного комплекса;

         подсчет засеянной площади.

СКВС «Нива 23». [4]

Внешний вид монитора системы представлен на рисунке 1.3.

Рисунок 1.3 - Внешний вид монитора СКВС « Нива 23»

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

Возможности системы включают в себя:

·   контроль равномерности семян по рядам относительно заданной нормы высева;

·   контроль количества двойников и пропусков в каждом высевающем аппарате;

·   подсчет средних расстояний между семенами;

·   контроль нижнего уровня семян и туков в бункерах сеялки;

·   контроль скорости движения сеялки;

·   накопление и сохранение в энергонезависимой памяти информации о посеве на последнем участке пути длиной 16 м;

·   накопление и сохранение в энергонезависимой памяти информации о посеве для пяти отдельно взятых полей до 500 га каждое;

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

Недостатки описанных систем:

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

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

         невозможность удаленно проанализировать результаты работы сеялки, в большинстве систем отсутствует возможность переноса информации на ПК;

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

         нет возможности расширить функциональность системы;

         нет возможности изменять параметры работы датчиков;

         нет возможности обновлять программное обеспечение системы;

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

1.3 Анализ требований к новой системе управления и разработка задач проектирования

1.3.1 Анализ требований к новой системе управления

Перспективным решением является внедрение в систему контроля GPS-приемника, который выполняет одновременно несколько функций: определяет местоположение сеялки на карте, определяет скорость трактора, а также записывает информацию о пройденном пути в свою встроенную память(DataLogger).

GPS (Global Positioning System - Глобальная Система Позиционирования) - это спутниковая система, используемая для определения местоположения в любой точке земной поверхности с применением специальных навигационных или геодезических приемников. Определение местоположения осуществляется специальным прибором -GPS-приёмником, принимающим сигналы спутников системы GPS.[5]

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

В таких системах (рисунок 1.4.) каждая транспортная единица оснащена GPS-приемником и связным оборудованием для контактов с диспетчерским пунктом. На экране монитора диспетчера формируется электронная цифровая карта территории, которая обслуживается транспортными средствами. Закодированная информация о координатах и скорости движения, получаемая по радиоканалу, позволяет отобразить на этой карте текущее положение транспортных единиц. Ежеминутно по каналам GSM/GPS терминал направляет в службу наблюдения информацию о процессе высева.

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

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

пропашный посев монитор программный

Рисунок 1.4-Система централизованного контроля над передвижением транспортных средств

Недостатком существующих СКВС является неудобство человеко-машинного интерфейса: некоторые предоставляют информацию на ЖКИ дисплее, что не позволяет оперативно реагировать на аварийную ситуацию, т.к. чтение с малогабаритного экрана в трясущемся тракторе затруднено. Другие же СКВС оснащены только одноцветной светодиодной индикацией, что не позволяет, во - первых, выводить ряд интересующих параметров, а во -вторых, одноцветные светодиоды ограничивают объем выводимой на них информации вплоть до показателя «наличие/отсутствие высева»

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

1.3.2 Разработка задач проектирования

В ходе анализа определены следующие задачи:

-  осуществить выбор электронных компонентов;

-       разработать структуру системы контроля высева;

-       разработать структурную схему монитора;

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

2. ОПРЕДЕЛЕНИЕ ОСНОВНЫХ ПАРАМЕТРОВ СИСТЕМЫ

2.1 Выбор основных узлов монитора

2.1.1 Выбор клавиатуры

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

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

Используем мембранную клавиатуру. Она состоит из 8 кнопок (6 - основных и 2 функциональных). Рассмотрим подробнее назначение каждой из кнопок:1 - «Esc» - используется для возврата к основному экрану; 2,3,4,5 - кнопки направлений, для перехода по меню;6 - кнопка «ОК» - используется для подтверждения выбора механизатора; 7, 8 - кнопки «F1» и «F2» для выбора функций.

2.1.2 Выбор системы символьной индикации

Достоинством символьных многострочных LCD является то, что заботу о подаче требуемых напряжений на массив «ЖК-конденсаторов» берет на себя встроенный управляющий контроллер. На рис. 2.2 показана схема подключения LCD с организацией 20х4, которая идентична для всех моделей независимо от фирмы-изготовителя. Основу составляет специализированный контроллер, обычно выполненный в виде одной или двух микросхем - «капелек», реже - в виде фирменной SMD-микросхемы. По назначению выводов и системе команд он совпадает с родоначальником серии - HD44780. Общепринятое название таких микросхем «Dot Matrix Liquid Crystal Display Controller/Driver», из чего следует их двойная функция - контроллер управляет интерфейсом, а драйвер «зажигает» сегменты.

Рисунок 2.2 - Cхема подключения LCD монитора

Назначение выводов ЖК - дисплея показано в таблице 2.1.

Таблица 2.1 - Назначение выводов ЖК - дисплея

№ вывода

Название

Функция

1

Vss

Общий (GND)

2

Vdd

Напряжение питания

3

Vo

Контрастность

4

RS

Команды/Данные

5

R/W

Чтение/Запись

6

E

Выбор модуля

7

DB0

8

DB1

Линия данных 1

9

DB2

Линия данных 2

10

DB3

Линия данных 3

11

DB4

Линия данных 4

12

DB5

Линия данных 5

13

DB6

Линия данных 6

14

DB7

Линия данных 7


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

Расчет R в цепи LED WH2004L.

, (2.1)

где Uled - напряжение на светодиодах подсветки индикатора,Uled= 4,2 В;

Utr - падение напряжения на транзисторе,Utr = 0,4В;

Iled - требуемый ток подсветки индикации,Iled=0,5 - 0,8 A.

 

R = (5 - 4,2 - 0,4) / 0.5=0,8 Ом,

R = (5 - 4,2 - 0,4) / 0,8=0,5 Ом.

Из технической документации выбираем символьный ЖК - дисплейWH2004L-TMI-CTW с параметрами: напряжение питания 3 В; ток потребления 8..10 мА; разрешение - 20 х 4; рабочая температура от -20 до 70°C.

2.2 Выбор узлов интерфейсов RS - 232, RS - 485

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

Параметры интерфейса RS- 232 представлены в таблице 2.2

Таблица 2.2 - Параметры интерфейса RS-232

Параметр

Значение

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

1

Напряжение питания

-0,3….6

В

2

Скорость передачи данных

250

кБит/с

3

Ток потребления

0,3….1

мА


Из технической документации выбираем интерфейс ST3232EBDR с параметрами: напряжение питания 3,3 В, ток потребления 0,8 мА.

Рассмотрим следующий интерфейс RS 485. Его отличие от RS - 232 - возможность объединения нескольких устройств. Параметры интерфейса RS - 485 представлены в таблице 2.3.

Из технической документации выбираем интерфейс SP485EEN с параметрами: напряжение питания 5 В, ток потребления 0,8 мА. Стоящий рядом резистор R5 на 120 Ом служит для смещения сигнала. Смещение предназначено для защиты приемников от ложных срабатываний.

Таблица 2.3 - Параметры интерфейса RS - 485

Параметр

Значение

Единицы изм.

1

Скорость передачи данных

до 10

Мбит/с

2

Напряжение питания

-0,5….7

В

3

Температура хранения

-65…150

°C

Ток потребления

-10….+10

мА


2.3 Выбор интерфейса USB

Схема подключения интерфейсаUSB представлена на рисунке 2.3.

Рисунок 2.3- Схема подключения интерфейсаUSB

Из технической документации выбираем одиночный коммутатор шины питания USB порта и ограничитель токаLM3525M-L с характеристиками: диапазон входного напряжения от 2.7 до 5.5 В; максимальный потребляемый ток в рабочем режиме- 100 мкА; миниатюрный SO-8 корпус.

Характеристики интерфейса приведены в таблице 2.4.

Таблица 2.4 -Характеристики интерфейсаUSB

Название

Характеристики

1

Поддерживаемые скорости  передачи данных

1,5 Мбит/с, 12 Мбит/с (USB 2.0 - 1,5 Мбит/с, 12 Мбит/с, 480 Мбит/с)

2

Топология сети

Ведущий/ведомые (host/client)

3

Коннектор

4-pin (A, B)

4

Питание от шины

5 В, 500 мА (2,5 Вт)


2.4 Выбор узла звуковой сигнализации

Из технической документации выберем электромагнитный излучатель звука HCS0905H (рисунок 2.4).

Рисунок 2.4 - Электромагнитный излучатель звука HCS0905H

На рисунке 2.5 представлена принципиальная схема системы контроля.

Рисунок 2.5 - Принципиальная схема системы контроля

3. ПРОЕКТИРОВАНИЕ СИСТЕМЫ КОНТРОЛЯ

3.1 Разработка структуры системы контроля


Система контроля высева «Мрия-3» представляет собой монитор, установленный в кабине трактора (рисунок 3.1). Положение трактора определяется при помощи антенны ГЛОНАСС/GPS. Пролет семян регистрируется при помощи датчиков высева семян. Через адаптер токовой петли информация с дискретных датчиков по интерфейсу RS 485 поступает в монитор. Вращение высевающего диска, а также скорость движения трактора в случае выхода из строя GPS, контролируется датчиком пути/вращения.

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

Монитор содержит:

-  электронную часть системы;

-       разъем для включения питания;

-       разъемы для подключения датчиков, адаптера и кабельной разводки;

-       восемь кнопок для управления работой системы контроля;

-       двенадцать 3-х цветных светодиодных индикаторов;

-       два индикатора, которые свидетельствуют о включении системы и GPS;

-       звуковой сигнал.

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

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

Кабельная разводка представляет собой два кабеля типа «витая пара», объединяющихся в одном разъеме. Подсоединяется к датчикам, установленным на семяпроводах высевающих аппаратов, и служит для передачи информации о высеве на монитор. Как правило, состоит из 10 разъемов (8 подсоединяются к датчикам на семяпроводах, 1- к датчику пути и 1 - резервный).

Рисунок 3.1 - Схема системы контроля высева семян

3.2 Разработка структурной схемы монитора

Структурная схема монитора представлена на рисунке 3.2. Монитор состоит из микроконтроллера (МК), накопителя информации (SD карта), жидкокристаллической индикации (ЖКИ), блока питания (БП), звуковой сигнализации, фото датчика, светодиодной ленты (светодиоды 3-х цветные), RS-232, RS-485, интерфейса USB, JTAG для программирования.

Рисунок 3.2 - Структурная схема монитора

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

Список периферии, который присутствует в микроконтроллерах, включает в себя:

-  универсальные цифровые порты, которые можно настраивать как на ввод, так и на вывод;

-       различные интерфейсы ввода-вывода, такие как UART, I²C, SPI, CAN, USB, IEEE 1394, Ethernet, RS-232;

-       аналого-цифровые и цифро-аналоговые преобразователи;

-       компараторы;

-       широтно-импульсные модуляторы;

-       таймеры;

-       контроллеры дисплеев и клавиатур;

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

-       массивы встроенной флеш-памяти;

-       встроенный тактовый генератор и сторожевой таймер.

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

Жидкокристаллический дисплей (ЖКИ) - плоский дисплей на основе жидких кристаллов. Полноценный монитор <#"724296.files/image013.gif">

Рисунок 4.1 - Диаграмма прецедентов (Use Case Diagram)

4.2 Моделирование меню человеко-машинного интерфейса

Остается спроектировать человеко-машинный интерфейс. Для этого воспользуемся средой разработки Stateflow пакета MATLAB[7]. Stateflow представляет собой язык, элементы которого описывают логику поведения систем в естественной, читаемой, и понятной форме. Stateflow тесно интегрирован с MATLAB и Simulink, образуя таким образом среду для эффективного проектирования логики систем управления и микропроцессорных устройств. Stateflow позволяет создавать модели событийных систем в виде графических блок-диаграмм и моделировать режимы их работы.

С помощью пакета Stateflow составим диаграмму состояний системы (рисунок 4.2).

Рисунок 4.2 - Диаграмма состояний системы

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

.1 Программное обеспечение системы контроля «Мрия-3.2»

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

-    по выводу на ЖКИ;

-       обработку клавиатуры;

-       работу протокола обмена информации с датчиками;

-       обработку сигнала с GPS;

-       увеличение/уменьшение яркости свечения светодиодов и ЖКИ;

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

-       сохранение на внутреннюю SD карту;

-       перенос информации на USB накопитель;

-       формирование синхронизирующих сигналов с часов реального времени (RTC);

-       контроль напряжения питания бортовой сети.

5.2 Разработка алгоритмов работы системы контроля

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

На рисунках 5.1 и 5.2 приведен алгоритм определения параметров качества гонов и посева соответственно. По результатам кадра, гона или же всего поля, формируется качество посева.

Рисунок 5.1- Блок-схема алгоритма определения параметров

качества гонов

Рисунок 5.2- Блок-схема алгоритма определения параметров качества посева

5.3 Модуль управления индикацией и клавиатурой

#include "LPC17xx.h"

/* LPC17xxPeripheralRegisters */

#include "type.h"

#include "ssp.h"

#include "chmi.h"

#include "versions_define.h"

#include "data_processing_functions.h"

#include "rittimer.h"

//volatileBYTESSP1_OutSequence[10]={0x00,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF}; // БуферданныхдляпередачиSSP1

//volatileBYTESSP1_IN[10]; // БуферданныхдляприемаSSP1_IND(uint32_tnum, uint32_tCOLOR) // Изменитьсвечениеиндикатора

{_t    dummy_byte;=(~COLOR)&7;         // Инверсиябит

if (num <= num_ind) { // Проверка на допустимое число индикаторов

switch ( num )

{0xB:_byte = SSP1_OutSequence[1];

dummy_byte&= (BYTE)~(7<<1);            // Очистим три бита _byte|=COLOR<<1;                            // Установим требуемые биты цвета

SSP1_OutSequence[1] = dummy_byte;;0xA:_byte = SSP1_OutSequence[1];_byte&= (BYTE)~(7<<4);_byte|=COLOR<<4;_OutSequence[1] = dummy_byte;;0x9:_byte = SSP1_OutSequence[2];

dummy_byte&= (BYTE)~(7<<1);            // Очистим три бита _byte|=COLOR<<1;                            // Установим требуемые биты цвета

SSP1_OutSequence[2] = dummy_byte;;0x8:_byte = SSP1_OutSequence[2];_byte&= (BYTE)~(7<<4);_byte|=COLOR<<4;_OutSequence[2] = dummy_byte;;0x7:_byte = SSP1_OutSequence[3];

dummy_byte&= (BYTE)~(7<<1);            // Очистим три бита _byte|=COLOR<<1;                            // Установим требуемые биты цвета

SSP1_OutSequence[3] = dummy_byte;;0x6:_byte = SSP1_OutSequence[3];_byte&= (BYTE)~(7<<4);_byte|=COLOR<<4;_OutSequence[3] = dummy_byte;;0x5:_byte = SSP1_OutSequence[4];

dummy_byte&= (BYTE)~(7<<1);            // Очистим три бита _byte|=COLOR<<1;                            // Установим требуемые биты цвета

SSP1_OutSequence[4] = dummy_byte;;0x4:_byte = SSP1_OutSequence[4];_byte&= (BYTE)~(7<<4);_byte|=COLOR<<4;_OutSequence[4] = dummy_byte;;0x3:_byte = SSP1_OutSequence[5];

dummy_byte&= (BYTE)~(7<<1); // Очистим три бита _byte|=COLOR<<1; // Установим требуемые биты цвета

SSP1_OutSequence[5] = dummy_byte;;0x2:_byte = SSP1_OutSequence[5];_byte&= (BYTE)~(7<<4);_byte|=COLOR<<4;_OutSequence[5] = dummy_byte;;

#if TYPE_OF_VERSION==(1<<0)0x1:_byte = SSP1_OutSequence[6];_byte&= (BYTE)~(7<<1); // Очистимтрибита

dummy_byte|=COLOR<<1; // Установим требуемые биты цвета

SSP1_OutSequence[6] = dummy_byte;;0x0:_byte = SSP1_OutSequence[6];_byte&= (BYTE)~(7<<4);_byte|=COLOR<<4;_OutSequence[6] = dummy_byte;;

#elif TYPE_OF_VERSION==(1<<1)0x1:_byte = SSP1_OutSequence[7];_byte&= (BYTE)~(7<<1); // Очистимтрибита_byte|=COLOR<<1; // Установим требуемые биты цвета

SSP1_OutSequence[7] = dummy_byte;;0x0:_byte = SSP1_OutSequence[7];_byte&= (BYTE)~(7<<4);_byte|=COLOR<<4;_OutSequence[7] = dummy_byte;;

#else

#error "Version not defined"

#endif

};

};

};_IND_DOP(uint32_tnum, uint32_tCOLOR) // Изменитьсвечениедополнительногоиндикатора

{_t    dummy_byte;

#ifTYPE_OF_VERSION==(1<<0)

if ((num <= 1)&&(COLOR <= 7)) { // Проверка на допустимое число индикаторов и цвета

//COLOR=!COLOR;( num )

{0x0:_byte = SSP1_OutSequence[0];_byte&= (BYTE)~(7<<1); // Очистимтрибита_byte|=COLOR<<1; // Установим требуемые биты цвета

SSP1_OutSequence[0] = dummy_byte;;0x1:_byte = SSP1_OutSequence[0];_byte&= (BYTE)~(7<<4);_byte|=COLOR<<4;_OutSequence[0] = dummy_byte;;

};

};

#elif TYPE_OF_VERSION==(1<<1)((num <= 1)&&(COLOR <= 7)) { // Проверка на допустимое число индикаторов и цвета // COLOR=(~COLOR)&0x3;( num )

{0x0:_byte = SSP1_OutSequence[0];

dummy_byte&= (BYTE)~(7<<1); // Очистим три бита _byte|=COLOR<<1; // Установим требуемые биты цвета

SSP1_OutSequence[0] = dummy_byte;;0x1:_byte = SSP1_OutSequence[0];_byte&= (BYTE)~(7<<4);_byte|=COLOR<<4;_OutSequence[0] = dummy_byte;;

};

};

#error "Version not defined"

#endif

};CHMI_out(void)        // Вывод SSP

{

#if TYPE_OF_VERSION==(1<<0)_t cmd = 0;_OutSequence[0]|=(1<<7); // Битзаписи

// SSPSend( 1, (uint8_t *)SSP1_OutSequence, 8);WriteAsync_TxBuffer(&cmd, 0, 1 );

//       SSPSend( (BYTE *)SSP1_OutSequence, 8 );

//       SSP1_OutSequence[0]|=(1<<0); // Устанавливаем режим записи данных

#elif TYPE_OF_VERSION==(1<<1)_t i;_t count;_t cmd = 0;= 8;

// SSPSend( 1, (uint8_t *)SSP1_OutSequence, 8);WriteAsync_TxBuffer(&cmd, 0, 1 );

//while(LPC_SSP1->SR & SSPSR_BSY );

//

////while(!SSP1TxEmpty);

//

//       SSEL(1);

//       for(i=0;i<0x2;i++);

//       SSEL(0);

//       SSPSend( (BYTE *)SSP1_OutSequence, 8 );

//       SSP1_OutSequence[0]|=(1<<0); // Устанавливаемрежимзаписиданных

#endif

};IndicateSensorStateOnLED(unsigned int *statesValue)

{char i;(i=0;i<8;i++)(*statesValue++)

{0:_IND((uint32_t)i, (uint32_t)0);;1:_IND((uint32_t)i, (uint32_t)0);;2:_IND((uint32_t)i, (uint32_t)4);;3:_IND((uint32_t)i, (uint32_t)1);;

}(*statesValue==2) _IND_DOP((uint32_t)2, (uint32_t)1); // Изменитьсвечениеиндикатора_IND_DOP((uint32_t)2, (uint32_t)0); // Изменитьсвечениеиндикатора_out();

}

//void IndicateSensorStateOnLED_bit(uint16_t *statesValue)IndicateSensorStateOnLED_bit(uint32_t *statesValue)

{char i;_t u8LEDidx = 0;_t sens_state,sens_state_KOD,sens_state_OFF,sens_state_KZ;

//       for(i = xScreenPage.u8Current*NUM_OF_PART_VIS_SENSORS; i<(!xScreenPage.u8Max?NUM_OF_LED_SENSORS:xScreenPage.u8Current?NUM_OF_PART_VIS_SENSORS*2: NUM_OF_PART_VIS_SENSORS); i++)(i = xScreenPage.u8Current*NUM_OF_PART_VIS_SENSORS; i<(!xScreenPage.u8Max?NUM_OF_LED_SENSORS:xScreenPage.u8Current?NUM_OF_SEED_SENSORS: NUM_OF_PART_VIS_SENSORS); i++)

{LEDidx = i-xScreenPage.u8Current*NUM_OF_PART_VIS_SENSORS;_state_KOD = ((statesValue[0]>>i) & 1);_state_OFF = ((statesValue[1]>>i) & 1);_state_KZ = ((statesValue[2]>>i) & 1);_state = !sens_state_OFF * ((sens_state_KOD+1)*(!sens_state_KZ) + 3*sens_state_KZ);(sens_state)

{0:_IND((uint32_t)u8LEDidx, (uint32_t)0);;1:_IND((uint32_t)u8LEDidx, (uint32_t)1); //Green;2:_IND((uint32_t)u8LEDidx, (uint32_t)4); //Blue;3:_IND((uint32_t)u8LEDidx, (uint32_t)2); //Red;

}

}LEDidx++;(;u8LEDidx<NUM_OF_LED_SENSORS;u8LEDidx++) CHMI_IND((uint32_t)u8LEDidx, (uint32_t)0);(xScreenPage.u8Max)_IND((uint32_t)10+xScreenPage.u8Current, (uint32_t)2+1); //Yellow = Green + Red

// //    for(i=12;i<14;i++)

//       for(i=12;i<13;i++)

//       {

//       sens_state_KOD = ((statesValue[0]>>i) & 1);

//       sens_state_OFF = ((statesValue[1]>>i) & 1);

//       sens_state_KZ = ((statesValue[2]>>i) & 1);

//       sens_state = !sens_state_OFF * ((sens_state_KOD+1)*(!sens_state_KZ) + 3*sens_state_KZ);

//       switch (sens_state)

//       {

//       case 0:

//       CHMI_IND_DOP((uint32_t)i-12, (uint32_t)dLED_BLACK);

//       break;

//       case 1:

//       CHMI_IND_DOP((uint32_t)i-12, (uint32_t)dLED_GREEN);

//       break;

//       case 2:

//       CHMI_IND_DOP((uint32_t)i-12, (uint32_t)dLED_BLUE);

//       break;

//       case 3:

//       CHMI_IND_DOP((uint32_t)i-12, (uint32_t)dLED_RED);

//       break;

//       }

//       }

// //    CHMI_out();

}IndicateSensorStateOnLED_bit_black(uint32_t *statesValue)

{char i;_t sens_state,sens_state_KOD,sens_state_OFF,sens_state_KZ;(i=0;i<12;i++)

{_state_KOD = ((statesValue[0]>>i) & 1);_state_OFF = ((statesValue[1]>>i) & 1);_state_KZ = ((statesValue[2]>>i) & 1);_state = !sens_state_OFF * ((sens_state_KOD+1)*(!sens_state_KZ) + 3*sens_state_KZ);(sens_state)

{0:_IND((uint32_t)i, (uint32_t)0);;1:_IND((uint32_t)i, (uint32_t)0);;2:_IND((uint32_t)i, (uint32_t)1);;3:_IND((uint32_t)i, (uint32_t)2);;

}

}(i=12;i<13;i++)

{_state_KOD = ((statesValue[0]>>i) & 1);_state_OFF = ((statesValue[1]>>i) & 1);_state_KZ = ((statesValue[2]>>i) & 1);_state = !sens_state_OFF * ((sens_state_KOD+1)*(!sens_state_KZ) + 3*sens_state_KZ);(sens_state)

{0:_IND_DOP((uint32_t)i-12, (uint32_t)dLED_BLACK);;1:_IND_DOP((uint32_t)i-12, (uint32_t)dLED_BLACK);;2:_IND_DOP((uint32_t)i-12, (uint32_t)dLED_GREEN);;3:_IND_DOP((uint32_t)i-12, (uint32_t)dLED_RED);;

}

}

}TurnOFF_LEDs(void)

{char i;

//       for(i=0;i<10; i++,0) {SSP1_OutSequence[i]=0;};

//       SSPSend( 1, (uint8_t *)SSP1_OutSequence, 8);

//       for(i=0;i<2;CHMI_IND_DOP((uint32_t)i++, 0));

//       CHMI_out();

//(i=0;i<12;CHMI_IND((uint32_t)i++, 0));

//       for(i=0;i<2;CHMI_IND_DOP((uint32_t)i++, 0));(i=0;i<1;CHMI_IND_DOP((uint32_t)i++, dLED_BLACK));

//       CHMI_out();

}CHMI_Init()

{char i;

#if TYPE_OF_VERSION==(1<<0)

#elif TYPE_OF_VERSION==(1<<1)_GPIO0->FIODIR |= (1<<5);                  /* P0.5 defined as Output - RS */_GPIO0->FIODIR |= (1<<6);                 /* P0.6 defined as Output - SSEL */

#else

#error "Version not defined"

#endifInit( );_rit_timer(1500);

}

ЗАКЛЮЧЕНИЕ

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

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

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

В третьей части разработана структурная схема системы контроля высева и разработана структурная схема монитора.

В четвертой части произведено моделирование меню человеко - машинного интерфейса монитора системы контроля.Также произведено моделирование системы в программе Rational Rose.

Таким образом, спроектированная система контроля обеспечивает все требования, предъявленные в задании. Партия опытных образцов системы «Мрия - 3» в настоящее время эксплуатируется в ряде хозяйств в качестве системы контроля параметров высева, корректировки и определения оптимальных параметров посева на каждом конкретном поле.

Система также позволила выполнить точную настройку сеялки на требуемое качество посева. Применение системы контроля позволило повысить урожайность в среднем на 11 %.

Похожие работы на - Разработка системы контроля 'Мрия–3.2'

 

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