МАТЕМАТИЧЕСКИЕ И ИНСТРУМЕНТАЛЬНЫЕ МЕТОДЫ
ЭКОНОМИЧНЫЕ СХЕМОТЕХНИЧЕСКИЕ РЕШЕНИЯ В СИСТЕМАХ АВТОМАТИЗАЦИИ АГРАРНОГО ПРОИЗВОДСТВА
Русанов Владимир Васильевич
кандидат технических наук, доцент кафедры ресторанного бизнеса РЭУ им. Г. В. Плеханова.
Адрес: ФГБОУ ВО «Российский экономический университет имени Г. В. Плеханова», 117997, Москва, Стремянный пер., д. 36. E-mail: [email protected]
В статье проведен анализ систем автоматизации агротехнического производства при использовании схемотехнических решений на базе интегральных микросхем высокой степени интеграции, универсальных микроконтроллеров и микроконтроллерной платформы ARDUINO с открытым кодом для программирования. Для анализа выбрана конкретная задача поддержания комфортных условий в вольерах для выращивания поросят-сосунков в первые дни жизни. Приведены методы подключения приборов для измерения климатических параметров и коммутационного оборудования для включения исполнительных устройств системы автоматического управления. В результате апробации всех рассмотренных решений выявлено, что при массовом производстве однотипной системы управления экономически целесообразно использовать универсальный микроконтроллер, для которого будет разработана и отлажена программа управления. Ключевые слова: контроллер, универсальный микроконтроллер, плата ARDUINO.
ECONOMICAL SCHEME-TECHNICAL SOLUTIONS IN AUTOMATION SYSTEMS OF AGRARIAN
PRODUCTION
Rusanov, Vladimir V.
PhD, Assistant Professor of the Department for Restaurant Business of the PRUE. Address: Plekhanov Russian University of Economics, 36 Stremyanny Lane, Moscow, 117997, Russian Federation. E-mail: [email protected]
The article analyzes systems of agro-technical production automation by using scheme-technical solutions based on integral micro-schemes of high degree of integration, universal microcontrollers and micro-controlling platform ARDUINO with the open code for programming. A concrete task was chosen for the analysis, i.e. providing comfort conditions in open-air cages for raising sucking pigs in the initial period of their life. The author shows methods of using devices to measure climatic parameters and commutation equipment in order to switch on executive devices of the automatic control system. As a result of testing all solutions being discussed it was found out that in case of mass production of the control system of the same type it is expedient to use universal micro-controller and the control program for it will be designed and adjusted. Keywords: controller, universal micro-controller, ARDUINO plate.
Преимущества цифровых технологий способствуют ускоренному переходу автоматизированных систем управления с аналоговых технических решений на цифровую схемотехнику. Для программного управления технологическими процессами в середине 80-х гг. прошлого века стали использовать программируемые логические матрицы (ПЛМ) и микропроцессоры. При создании контроллеров наша промышленность использовала набор микросхем 580-й серии. Кроме центрального восьмиразрядного процессора 580ИК80, в набор входили тактовый генератор 580Гф24, шинный формирователь 580ВК28, программируемое устройство ввода/вывода, программируемый таймер, устройство прямого доступа к памяти. Несмотря на достаточно большой выбор микросхем 580-й серии с различной функциональностью, такого набора не хватало для создания законченного устройства автоматизации. Поэтому в контроллер, собираемый на 580-й серии, добавляли другие микросхемы (постоянную и оперативную память, компараторы, аналого-цифровые преобразователи и т. п.). Автоматизированная система управления собиралась из нескольких плат, вставляемых в соответствующие разъемы сборной стойки (корзины). Со временем габариты контроллеров и потребляемая ими мощность снижались, и в настоящее время можно приобрести сравнительно небольшие приборы для автоматизации технологических процессов любой сложности, но стоимость контроллера (даже без силовых блоков) высока (минимум 3040 тыс. рублей).
При решении технического задания по разработке системы автоматизации свиноводческой фермы одним из поставленных перед нами критериев заказчика была минимизация финансовых затрат. Речь шла о создании комфортных условий в вольерах по выращиванию поросят-сосунков. Дело в том, что у новорожденных почти полностью отсутствуют волосяной покров и подкожный жир, что приводит к быстрому снижению температуры тела, а затем и к
гибели потомства. Для снижения потерь стараются в первые дни поддерживать температуру 28-320С, постепенно снижая ее до 220С. Кроме того, из-за высокой жирности материнского молока уже на 4-5-й день поросята ощущают сильную жажду. Для ее утоления им необходимо пить чистую воду комнатной температуры. Влияют на сохранность потомства и стрессовые ситуации, возникающие у поросят при резком изменении освещенности (при включении или отключении света).
При подготовке проекта автоматизации поддержания климатических параметров в вольерах свиноматок был проведен анализ возможных решений нескольких вариантов: первый - на сравнительно дешевой элементной базе с микросхемами средней и высокой степени интеграции; второй - с применением универсальных микроконтроллеров; третий - на базе микроконтроллерной платы АКЭШЫО.
Для поддержания требуемых температур в вольерах стелют нагреваемые коврики и включают инфракрасные нагреватели. Структурная схема управления нагревательными приборами по первому варианту представлена на рис. 1. В данном случае для измерения температуры использовались интегральные датчики температуры ЬЫ35 [3].
1_М35 1.М35
• • •
1М35 ЬМ35
— д? .жлд1
Рис. 1. Структурная схема устройства управления несколькими (Н1 - Ни) нагревателями и излучателями
В зависимости от температуры в зоне нахождения поросят в данном вольере включаются или отключаются нагревательные элементы. Работа данного секвенсора синхронизирована импульсами тактового генератора (1). Сформированные тактовые импульсы поступают на вход двоичного счетчика (2). Двоичный код с выхода счетчика подается на схему управления аналоговым коммутатором - мультиплексором (3) и селектором - дешифратором (4). В результате каждый выходной двоичный код счетчика через мультиплексор подключает свой датчик температуры к усилителю (5), а дешифратор в этот момент открывает запись логического сигнала в триггер-защелку, управляющую работой соответствующего нагревателя.
Таким образом, счетчик подсчитывает все датчики, поочередно подключая соответствующий к мультиплексору, открывает требуемый канал управления нагревателем, а затем начинает новый цикл опроса с первого канала. После подключения соответствующего датчика к измерительному блоку (5) температурный уровень преобразуется в напряжение и поступает на первый вход компаратора (6). На второй вход компаратора от источника опорного напряжения (7) подается сигнал, соответствующий нужной температуре. В результате сравнения двух сигналов на выходе компаратора появляется либо логическая единица (температура в вольере равна или выше нормы), либо логический ноль. Уровень сигнала записывается в соответствующий триггер-защелку (8), и выбранный блок управления (9) включает или отключает нагреватель (Н1 - Ни) и инфракрасный обогреватель.
Достоинства схемы:
- дешевая и доступная элементная база (стоимость любой микросхемы средней степени интеграции - 40-100 рублей);
- использование датчиков ЬМ35 не требует масштабирующего усилителя (в отличие от терморезистора) или компенсации холодного спая (в отличие от термо-
пар). Кроме того, интегральные датчики взаимозаменяемы;
- схема надежна в работе, дает экономию электроэнергии, создает комфортные тепловые условия выращивания поросят.
Недостатки данной схемы:
- схема содержит большое количество интегральных микросхем, что требует дополнительных затрат при монтаже рабочей платы;
- требуется ручное управление при смене режимов работы;
- при резком включении и отключении излучателей световой энергии создаются негативные стрессовые ситуации для поросят-сосунков.
Одним из направлений снижения стоимости подобной системы управления является применение универсальных микроконтроллеров. Это приборы, где процессор, память, устройства ввода-вывода, аналого-цифровые преобразователи, таймеры и т. п. собраны в одной микросхеме.
В настоящее время зарубежные производители цифровой техники выпускают большой ассортимент микроконтроллеров различной производительности и функциональных возможностей. В нашей стране наибольшей популярностью пользуются универсальные микроконтроллеры, выпускаемые фирмами Microchip Technology и Atmel (семейство AVR). Стоимость одной микросхемы в зависимости от производительности и функциональных возможностей составляет от 80 до 1 000 рублей. Однако после покупки микросхемы вы должны представлять и те трудности, с которыми столкнетесь, прежде чем создадите устройство, способное управлять технологическим процессом.
Устройство автоматического регулирования обязательно имеет датчики для сбора информации и исполнительные механизмы, включаемые и выключаемые при управлении процессом. Следовательно, купленный микроконтроллер должен быть установлен (распаян) на плату, к которой будут подходить сигналы датчиков и от которой будут уходить сигналы управле-
ния силовым оборудованием. Кроме того, для работы в микроконтроллере должна быть установлена (прошита) программа управления. Эту работу может выполнить только специалист, имеющий достаточную квалификацию и в области аппаратной электроники, и в области программирования.
При разработке проекта автоматизации вначале необходимо определить функциональные требования к микроконтроллеру:
- рабочий диапазон напряжений питания;
- технологию памяти;
- тактовую частоту;
- рабочий температурный диапазон.
Одним из важных критериев выбора
является наличие (доступность) инструментальных средств программирования. К счастью, производители вышеперечисленных микроконтроллеров создали и сделали общедоступными программаторы и программные средства для управления процессом программирования.
Порядок действий для создания и занесения программы управления в память микроконтроллера следующий:
1) в текстовом редакторе на языке Assembler создается файл с исходным кодом программы;
2) используя программу компилятора, на компьютере созданный файл преобразуется в машинные коды (создаем файл с HEX-расширением);
3) подключаем программатор, в который вставлена программируемая нами микросхема, через один из портов (LPT, COM, USB) к компьютеру, а в программу, обслуживающую этот программатор, заносим наш HEX-файл. Пример прошивки микроконтроллера PIC16F628A с помощью программы IC-Prog представлен на рис. 2;
4) даем команду на прошивку; если процесс проходит без сбоев, вынимаем программируемый микроконтроллер;
5) собираем полную схему управления на плате, подключаем датчики и исполнительные механизмы, проводим проверку работоспособности.
^Щг-Prog 1.06В - Prototype Programmer шЦШ —F
9|l 1
File Edit Buffer Settings Command Tools View Hdp I
& - а Ф if1 ъ ъ % % 4. 1 Щ, Щ |PIC1EFB2BA ~3
Address - Program Code
0(100 0000 0010 0010 0020 0028 00 30 оозе 0040 0040 ПО 50 00 S8 Address
2900 3FFF
3EFF JEFF
3FFF 3FFF
3FFF 3FFF
3FFF 3FFF
3FFF 3FFF
3FFF 3FFF
ЗГГГ 3FFF
3FFF 3FFF
3FTF 3FFF
3FFF 3FFF
3EFF JEFF - Eeprom Data
3FFF JEFF 3FFF 3FFF 3FFF 1FFF JEFF 3FFF 3FFF 3FFF JEFF JEFF
3FFF 3FFF 3FFF 3FFF 3FFF 3FFF 3FFF 3FFF 3FFF 3FFF 3FFF 3FFF 3FFF 3FFF ЗГГГ srtr 3FFF 3FFF 3FFF 3FFF 3FFF 3FFF 3FFF 3FFF
3FFF 3FFE 3FFF 3FFF 3FFF 3FFF 3FFF 3FFF 3FFF 3FFF 3FFF 3FFE
3FFF 3FFF 3FFF 3FFF 3FFF 3FFF 3FFF 3FFT 3rFF ЗГГГ 3FFF 3FFT 3FFF 3FFF 3FFF ЗГГГ 3FFF 3FFr ЭГГГ 3FTT 3FFF 3FFF 3FEF 3FFF
.яяяяяяя
ЯЯЯЯЯЯЯЯ
авааааяа яяяяяяяя яяяяяяяя яяяяяяяя яяяяяяяя яяяяяяяя яяяяяяня яяяяяяяя яяяяяяяя qflqqflflflfl
1
0
0000: 0000 : 0010 : 001В : 0020 : 0020 : 00 30 : ООЭВ :
FF FF FF FF FF FF FF FF FF FF FF FF FF Fr FF FF
FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
яяяяяяяя яяяяяяяя
ЯЯЯЯЯЯЯЯ ЯЯЯЯЯЯЯЯ ЯЯЯЯЯЯЯЯ ЯЯЯЯЯЯЯЯ ЯЯЯЯЯЯЯЯ ЯЯЯЯЯЯЯЯ
1
0
■ Configuration Osciator:
Fuses:
Г WDT
W FVflT I- MCLR P вооеч Г LVP
Г его
Г CP
Checksum С ^ |351Е p Corfto wird: 3F
BulfeM I Fiul'pr | Buffer 3 I Buffer 4 I Buffers!
JDH Programmer on Coml
Device: PIC 16FE2BA [1521
Рис. 2. Пример редактирования и прошивки программы в микроконтроллер
В данном случае трудности создания системы управления от аппаратурного оформления (1-й вариант) переходят в
сферу создания и настройки программных средств. В схеме автоматизации свинофермы не требуется высокого быстродействия
(процессы нагрева инерционны), но большое число датчиков и подключаемых нагревателей требуют большого числа входов/ выходов микроконтроллера.
Из таблицы видно [2], что подобрать микроконтроллер с большим количеством контактов, используемых как входы или выходы, в принципе, возможно.
Микроконтроллеры AVR с большим количеством входов/выходов
Марка микроконтроллера Цифровые входы/выходы -количество бит в портах Аналоговые входы/выходы
Порт А Порт В Порт Д (С)
Attiny 26 8 8 - -
Attiny 28L 4 8 8 -
Attiny 2313 1 8 7 2
ATmega 328 7 7 6
ATmega 2560 54 Цифровых входа/ выхода 16
ATmega 32U4 20 Цифровых входов/выходов 12
AT91SAM3X8E 54 Цифровых входа/ выхода 12
Более того, всегда есть возможность расширить количество входов, используя дополнительные микросхемы.
При работе с микроконтроллером более выгодно использовать приборы, подающие или принимающие сигналы в цифровом, последовательном коде. Это уменьшает количество проводов, соединяющих внешнее оборудование с микроконтроллером.
Как правило, в системах автоматизации используют общепринятые протоколы обмена между цифровым оборудованием. Например, в 1980-е гг. компания Philips создала протокол обмена для двухпроводной синхронной линии передачи (шина I2C). В таком протоколе используется 7-битовая адресация, что позволяет подключать к одному микроконтроллеру 128 устройств, способных последовательно передавать в него цифровую информацию. В нашем случае эту возможность можно использовать при измерении температуры цифровым интегральным датчиком с встроенным аналого-цифровым преобразователем LM75 [3].
Сигнал о температурных параметрах передается с каждого датчика цифровым кодом последовательно по двум линиям передачи на два входа микроконтроллера.
Главное преимущество протокола -простота управления. Здесь не требуется фиксированных тактовых интервалов.
Шина обмена информацией состоит из двух линий: БЭЛ и БСЬ. Каждый датчик имеет свой адрес, устанавливаемый соответствующим подключением адресных выводов датчика перед его использованием. Для установки адреса на соответствующие адресные выводы датчика при распайке подается либо логический ноль, либо логическая единица (рис. 3).
SCL
Vcc
РД1
D-MK ыми
GND
Рис. 3. Схема подключения датчиков ЬМ75 к микроконтроллеру
Три адресных входа подключает пользователь, а четыре старших байта адреса прошиваются заводом-изготовителем. Семиразрядный код адреса дает возможность подключать до 128 датчиков. Как видно из рис. 3, в данном случае на три адресных вывода датчика 01 поданы логические нули, на второй датчик 02 подан цифровой
код 001 (логическая единица на А1), на третий датчик Dn приходит адресный код 111.
Микропроцессор после передачи по линии SDA команды «Старт» (переключение линии с высокого уровня напряжения на логический ноль) посылает на линию адресный байт. Датчик (приемник) после получения восьми битов и восьми синхроимпульсов при совпадении адресов подтверждает свое присутствие и переходит в активное состояние. В этот период он преобразует температуру в цифровой код и передает его последовательно бит за битом в микроконтроллер.
В программе контроллера необходимо сравнить полученный код с задатчиком температуры и послать сигнал на включение или отключение соответствующего нагревателя. Упростить задачу программирования микроконтроллера и создать систему управления, приложив минимум усилий на ее изготовление, можно при использовании готовой микроконтроллерной платы. В настоящее время известны две платы с программным обеспечением, свободно доступным в Интернете, - AR-DUINO и FREEDUINO [4].
Платформа ARDUINO состоит из платы, на которой установлен один из микроконтроллеров семейства AVR, и ряда вспомогательных устройств, позволяющих подключать и программировать плату непосредственно через порт USB компьютера, используя для программирования алгоритмический язык высокого уровня. К выводам на плате подключаются дополнительные модули, обеспечивая управление различными робототехническими устройствами.
На рис. 4. представлен внешний вид собранной нами схемы управления исполнительными устройствами на базе микроконтроллерной платы ARDUINO UNO. Основные компоненты: сама микроконтроллерная плата (1), четырехразрядный индикатор (2), микросхемы гальванической развязки (3).
На плате ARDUINO UNO цифровые и аналоговые выводы, используемые для
подключения периферийного оборудования, расположены по краям в виде гнезд (4), куда можно вставлять наконечники соединительных проводов. Схема сборки платы и модулей навесными проводами удобна для пробной настройки оборудования. В нашем случае для надежной работы ЛКЭШЫО был всеми гнездами насажен на предварительно запаянные в монтажную плату наконечники. На рис. 4 микроконтроллер на плате виден со стороны монтажа.
Рис. 4. Фотография ARDUINO и платы управления со стороны электронных компонентов
Следует отметить, что в Китае стоимость платы ЛКЭШЫО (в зависимости от конфигурации) составляет от 3 до 5 долларов. Используемый нами четырехразрядный 7-сегментный индикатор температур ТМ1637 куплен за 350 рублей.
Для измерения температуры в вольерах нами были использованы интегральные датчики ЭБ18В20, преимущество которых перед ЬМ75 состоит в том, что каждый из них имеет свой индивидуальный 64-битный номер, прописанный на заводе-изготовителе. При этом не требуется распайка адресных входов. При программировании обмена информацией между контроллером и термодатчиками ЭБ18В20 ис-
пользуется протокол обмена 1-Wire, разработанный фирмой Dallas Semicjnductor (в настоящий период MAXIM) в конце 1998 г. [4]. Создание управляющей программы проведено в инструментальной среде ARDUINO IDE, базирующейся на языке программирования Proctssing (подъязык С). В этом варианте кроме управления процессом нагрева достаточно просто решается задача автоматизированной подачи воды в вольеры свиноматок, а также исключения резкого включения и выключения осветительных приборов за счет использования широтноимпульсного регулятора платы ARDUINO, что значительно повышает выживаемость поросят-сосунков.
Для коммутации нагревательных элементов использовались силовые MOSFET-транзисторы IRF240 c рабочим напряжением по паспорту 300 В и рабочим током 8 А [1]. К выводам платы ARDUINO UNO они подключались через оптронную гальваническую развязку. Использование вме-
сто электромагнитных реле электронных коммутационных приборов позволило отказаться от дискретного управления и перейти к пропорциональному регулированию температуры с помощью широтно-импульсных регуляторов платы, настраиваемых программными средствами.
Таким образом, использование микроконтроллеров в разработках систем автоматизации технологических процессов имеет несомненные преимущества, и в настоящее время следует ожидать появления отечественных универсальных приборов, способных конкурировать с рассмотренными в статье устройствами. При создании единичных или проверочных устройств автоматизации в сельскохозяйственном производстве экономически целесообразно использование микроконтроллерных плат. Разработка устройств на отдельном микроконтроллере возможна при массовом производстве таких систем.
Список литературы
1. Воронин П. А. Силовые полупроводниковые ключи. Семейства, характеристики, применение. - М. : Додека-ХХ1, 2001.
2. Евстифеев А. В. Микроконтроллеры AVR семейства Tiny. Руководство пользователя. - М. : ДМК Пресс, 2015. - (Серия «Программируемые системы»).
3. Иванов Е. Интегральные датчики температуры National Semiconducter // Новости электроники. - 2007. - № 10.
4. Соммер У. Программирование микроконтроллерных плат Arduino/Freeduino. -СПб. : БХВ-Петербург, 2015.
References
1. Voronin P. A. Silovye poluprovodnikovye klyuchi. Semeystva, kharakteristiki, primenenie [Power Semi-Conductor Keys. Families, Characteristics, Application]. Moscow, Dodeka-XXI, 2001. (In Russ.).
2. Evstifeev A. V. Mikrokontrollery AVR semeystva Tiny. Rukovodstvo pol'zovatelya [Micro-Controllers of AVR of Tiny Family. User's Manual]. Moscow, DMK Press, 2015. (Series Programmed Systems). (In Russ.).
3. Ivanov E. Integral'nye datchiki temperatury National Semiconducter [Integral Temperature Pick-Ups National Semiconductor]. Novosti elektroniki [Electronics News], 2007, No. 10. (In Russ.).
4. Sommer U. Programmirovanie mikrokontrollernykh plat Arduino/Freeduino [Programming the Micro-Controller Plates Arduino/Freeduino]. Saint Petersburg, BHW-Peterburg, 2015. (In Russ.).