Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Автоматический полив почвы.rtf
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
8.92 Mб
Скачать

2. Техническое предложение

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

При этом:

1) принимается решение об использовании микроконтроллера фирмы Atmel ATmega8A, как наиболее экономичного в плане энергосбережения и ресурсозатрат в рамках данного проекта;

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

  2. для индикации состояния почвы был выбран двухстрочный знакогенерирующий жидкокристаллический дисплей WH1602;

  3. для автоматического полива почвы будет использован насос от стеклоомывателя легкового автомобиля;

  4. для управления насосом будет использовано реле постоянного напряжения;

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

    1. Элементная база

Ядром устройства измерения проводимости почвы был выбран микроконтроллер фирмы ATMEL – ATmega8A. Функциональная схема микроконтроллера ATmega8A приведена на рисунке 2.1.

Технические характеристики:

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

– прогрессивная RISC архитектура;

– приближающаяся к 16 MIPS (при тактовой частоте 16 МГц) производительность;

– энергонезависимая память программ и данных;

– 8 Кбайт внутрисистемно программируемой Flash памяти (In-System Self-Programmable Flash);

– 1 Кбайт встроенной SRAM;

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

– два 8-разрядных таймера/счетчика и один 16-разрядный таймер/счетчик с отдельным предварительным делителем, один с режимом сравнения;

– три канала PWM;

– 8-канальный аналого-цифровой преобразователь (в корпусах TQFP и MLF);

– программируемый последовательный USART;

– встроенный калиброванный RC-генератор;

– пять режимов пониженного потребления: Idle, Power-save, Power-down, Standby и снижения шумов ADC;

– 23программируемые линии ввода/вывода.

Ядро AVR сочетает богатый набор инструкций с 32 универсальными рабочими регистрами. Все 32 регистра непосредственно подключены к арифметико-логическому устройству (АЛУ), который позволяет указать два различных регистра в одной инструкции и выполнить ее за один цикл. Данная архитектура обладает большей эффективностью кода за счет достижения производительности в 10 раз выше по сравнению с обычными CISC-микроконтроллерами (рис 2.2).

ATmega8А поддерживается полным набором программных и аппаратных средств для проектирования, в т.ч.: С-компиляторы, макроассемблеры, программные отладчики/симуляторы, внутрисистемные эмуляторы и оценочные наборы.

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

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

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

Память программ представляет собой внутрисистемно программируемую флэш-память.

Регистровый файл с быстрым доступом содержит 32 x 8-разрядных рабочих регистров общего назначения с однотактовым циклом доступа. Благодаря этому достигнута однотактность работы арифметико-логического устройства (АЛУ).

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

Шесть регистров из 32 могут использоваться как три 16-разрядных регистра косвенного адреса для эффективной адресации в пределах памяти данных. Один из этих указателей адреса может также использоваться как указатель адреса для доступа к таблице преобразования во флэш-памяти программ. Данные 16-разрядные регистры называются X-регистр, Y-регистр и Z-регистр и описываются далее в этом разделе.

почва орошение адаптация микроконтроллер

Рисунок 2.1 – Функциональная схема микроконтроллера ATmega8A

АЛУ поддерживает арифметические и логические операции между регистрами, а также между константой и регистром. Кроме того, АЛУ поддерживает действия с одним регистром.

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

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

Большинство инструкций представляют собой одно 16-разрядное слово. Каждый адрес памяти программ содержит 16- или 32-разрядную инструкцию.

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

Обе секции имеют раздельные биты защиты от записи и чтения/записи.

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

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

Поскольку все AVR-инструкции являются 16 или 32-разрядными, то флэш-память организована как 64 кбайт16. Для программной защиты флэш-память программ разделена на два сектора: сектор программы начальной загрузки и сектор прикладной программы.

Рисунок 2.2 – Карта памяти программ

Высокопроизводительное АЛУ AVR-микроконтроллеров работает в непосредственной связи со всеми 32 универсальными рабочими регистрами. АЛУ позволяет выполнить за один машинный цикл операцию между двумя регистрами или между регистром и константой.

Операции АЛУ могут быть классифицированы на три группы: арифметические, логические и битовые. Кроме того, архитектурой ATmega8A поддерживаются операции умножения со знаком и без знака и дробным форматом. В соответствии с гарвардской архитектурой память AVR-микроконтроллера разделена на две области: память данных и память программ. Кроме того, ATmega8A содержит память на ЭСППЗУ для энергонезависимого хранения данных. Все три области памяти являются линейными и равномерными.

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

Графические индикаторы представляют собой матрицу из m строк и n столбцов, на пересечении которых находятся пиксели. Пиксель представляет собой неделимый объект прямоугольной или круглой формы, обладающий определённым цветом; пиксель – наименьшая единица растрового изображения.

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

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

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

Внешний вид ЖКИ показан на рисунке ниже.

Рисунок 2.3 – Внешний вид символьного ЖК индикатора

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

Для отображения различной информации о состоянии почвы и устройства был выбран символьный дисплей WH1602.

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

Технические характеристики дисплея:

Символьный тип дисплея;

– Напряжение питания постоянное, +3...5 В;

– Символов в строке 16 штук;

– Две строки для отображения информации;

– Набор символов русский/латинский.

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

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

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

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

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

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

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

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

Рисунок 2.4 – Схема подключения реле к микроконтроллеру

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

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

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

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

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

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

Для организации связи блока управления с персональным компьютером был выбран преобразователь интерфейсов USB в UART под названием CP2102 от производителя Silicon Labs.

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

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

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

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

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

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

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

Падение напряжения (уменьшение потенциала при перемещении заряда от одной точки цепи до другой её точки) на каждом резисторе согласно закону Ома будет пропорционально сопротивлению (ток, как было описано ранее, одинаков) и равно U = I * R.

Формула, связывающая выходное (U2) и входное (U) напряжение делителя имеет вид

(2.1)

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

Рисунок 2.5 – Схема резистивного делителя напряжения

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

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

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

2. Исходя из величины тока, по закону Ома определяют значение суммарного сопротивления R = R1 + R2. Остается только взять конкретные значения сопротивлений из стандартного ряда, отношение величин которых близко требуемому отношению напряжений, а сумма величин близка расчетной.

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

Максимальная рассеиваемая мощность резисторов должна превышать выделяемую на них мощность P = I2 * (R1 + R2), где I – ток источника при отключенной нагрузке. В этом случае через резисторы течет максимально возможный ток.

Делитель напряжения имеет важное значение в схемотехнике. В качестве реактивного делителя напряжения, как пример, можно привести простейший электрический фильтр, а в качестве нелинейного делителя –параметрический стабилизатор напряжения.

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

2.2 Алгоритм реализации

Для программирования микроконтроллера ATmega8A можно использовать языки программирования С и ассемблер.

Алгоритм работы данного устройства представлен на рисунке 2.6.

Рисунок 2.6 – Алгоритм функционирования устройства

3. Эскизный проект

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

На рисунке 3.1 изображена функциональная модель устройства

Рисунок 3.1 – Функциональная модель устройства

3.1 Описание основных модулей микроконтроллера

3.1.1 Интерфейс SPI

SPI (Serial Peripheral Interface – последовательный периферийный интерфейс) – последовательный синхронный стандарт передачи данных в режиме полного дуплекса, разработанный компанией Motorola для обеспечения простого и недорогого сопряжения микроконтроллеров и периферии. SPI также иногда называют четырёхпроводным интерфейсом.

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

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

Ведущее устройство выбирает ведомое для передачи, активируя сигнал "выбор кристалла" (chip select) на ведомой микросхеме. Периферия, не выбранная процессором, не принимает участия в передаче по SPI.

      1. LCD – экран

Модуль TFTDisplay формирует все необходимые сигналы для передачи команд и данных чипу драйвера ЖКИ.

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

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

Драйвер дисплея содержит в себе управляющие регистры (Index Register, Control Register и Address Register), регистры настроек и память для хранения изображения GRAM.

Вывод изображения на дисплей осуществляется путем выполнения следующих процедур:

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

  2. В Index Register записывается адрес команды равный 0022h и далее передаются данные, соответствующие информации о каждом отображаемом пикселе в выбранном формате отображения.

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]