Язык программирования ФОРТ в производстве [Андрей Анатольевич Шабронов] (pdf) читать онлайн

Книга в формате pdf! Изображения и текст могут не отображаться!


 [Настройки текста]  [Cбросить фильтры]

От автора.
Язык программирования ФОРТ в производстве.
Приведен пример реализации АСУ-ТП- автоматизированной системы управления технологическим
производством. Работает с 2006 года.
Цель публикации - привлечь внимание начинающих программистов к «мощности» и «силе»
давно известного и забытого, а вернее «забитого» языка программирования FORTH ( на русском
языке пишется ФОРТ). Программировать – автор переводит как конструировать.
Форт заставляет думать над задачей, а не над поиском библиотек. ФОРТ не позволяет сделать
синтаксических и алгоритмических ошибок. ФОРТ требует программировать «сверху-вниз». По
другому - не получиться. Форт позволяет сделать «вечную» и «саморазвивающуюся» систему
управления. Форт создает возможность готовить программы на порядок быстрее.
Пример реализации на Форте ниже в описании. Текст программы, компилятор программы, сама
программа, описание работы с программой, схемы и чертежи – все в одном exe-приложении.
Программа для объекта развивалась в течении достаточно большого периода времени и показал
свою «живучесть». Доступно для всех желающих и их родственников.
Приветствуется конструктивная критика по данной программе. Общие вопросы философии и
программирования автора не интересуют, а только конкретные примеры для конкретных задач.
--------------------------------------------------------------------------------------------------------------------------------------

Мониторинг процесса производства макаронных изделий
температура, влажность, состояние агрегатов.
Адрес документа:
Адрес программы exe:
Адрес драйверов zip:

http://shabronov_s2.dyn-dns.ru/temp/lukanin_upravlenie_v1/lukanin_upravlenie_v1.doc
http://shabronov_s2.dyn-dns.ru/temp/lukanin_upravlenie_v1/lukanin_upravlenie_v1.zip
http://shabronov_s2.dyn-dns.ru/temp/lukanin_upravlenie_v1/drv_lukanin_upravlenie_v1.zip

Документация по работе с программой – lukanin_upravlenie_v1.exe
Объект: ОАО «Новосибирская макаронная фабрика»
630007, г. Новосибирск, ул. Фабричная, д. 33, тел. (383) 223-64-49
Открыть сопровождение В2
Содержание
Программное обеспечение
 Назначение программы;
 Управление программным обеспечением;
 Включение программы в работу по управлению системой;
 Структура и назначение окон в программе;
 Управление окнами;
 Настройка линейной интерполяции для режима ретрансляции;
 Ручной и автоматический режим контура управления;
 Отображение графиков температуры и влажности;
Аппаратное обеспечение
 Принципы формирования надежности системы;
 Описание схемы подключения системы;
 Подключение icp-dac- 7024;
 Датчик влажности HIH-3610 и его анлоги;
 Ветвитель ds2409;
Анализ данных архивов программой EXCEL
 Где находиться программа excel для анализа архивов и ее извлечение;
 Где формируются данные архивов.
 Подключение к данным;
 Выполнение макроса анализа и построение графиков;
 Выводы;
Программное обеспечение

Назначение программы
Программа
lukanin_upravlenie_v1.exe это продолжение и расширение функций программы lukanin1.exe
cохраняются все возможности и добавляются новые:
- устанавливаются следующие точки измерения
- 3 датчика – влажность+температура - - зона предварительной сушилки;
- 5 датчиков – влажность+ температура - зона основной сушки
- 2 датчика - влажность+температура - зона окружающего пространства вне сушилки.
- Устанавливаются 8 контуров управления в режиме ретрансляции управляющих сигналов на существующий
контроллер;
Конечная цель 2го этапа – полная замена существующих датчиков температуры влажности и получение
обьективной информации о технологическом процессе.
Частичное управление технологическим процессом – т.е. использование информации мониторинга и ее передача в
старую систему управления. Т.е информации достоверной.
Система Мониторинга работает на компьютере локальной сети заказчика. Данные мониторинга доступны
всем заинтересованным лицам
Управление программным обеспечением
Программное обеспечение поставляется в виде одного исполняемого файла с расширением exe. Данный файл
содержит все необходимые элементы для эксплуатации и дальнейшего расширения системы управления.
Перечислим эти элементы:
- файлы языка программирования;
- файлы текста программы, с комментариями и пояснениями;
- файлы конфигурации для действующих датчиков влажности, температуры и управляющих блоков.
- файл конфигурации для текущего состояния системы. Позволяет сохранить и восстановить при необходимости
состояние окон отображения и настроек управления;
- файлы схем, по которым смонтирована система;
- файлы фотографий основных узлов системы;
- файл описания системы - этот файл, который Вы сейчас читаете;
- файлы вспомогательных программ, используемых в работе и восстановлении программного обеспечения.
Включение программы в работу по управлению системой
Исполняемый файл lukanin_upravlenie_v1.exe расположить в отдельном каталоге и выполнить. При выполнении
проверяется наличие всех компонентов и используемых портов. В случае их отсутствия выдается текущее сообщение.
Если не обнаружен файл текущего состояния окон и системы - okon_razmer.ini то выдается запрос на
восстановление или работы с без восстановления текущего состояния

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

В случае не удачи или удачи с открытием сом-портов выдается сообщение в главном окне.

Для проверки СОМ-портов используется диспетчер устройств.
Диспетчер устройств можно открыть самостоятельно, а так же через окно помощи при нажатии клавиши 9 в главном
окне.

В появившемся окне помощи нажать клавишу 5 .

Появиться окно диспетчера устройства компьютера.

Виден СОМ-порт 7

Необходимо проверить наличие сом-портов. Их правильное подключение к датчикам устройств
управления.
Структура и назначение окон в программе
В программе используется оконный вид отображения Windows. Окна имеют структуру
подчиненности, как показано на рисунке ниже. Файл - lukanin_upravlenie_v6.spl7
Из окна производственного процесса можно убрать все окна в "трей" - значок на рабочем столе.
Для этого нажать в активном окне производственного процесса среднюю клавишу мышки.
Появиться значок

Останется только окно производственного процесса.

Окно производственного процесса всегда присутствует при работе программы.

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

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

Из окон управления блоками 7022-7024 вызываются и соответствующие им окна графики температур и влажности.

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

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

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

Пример 1 . черный фон белый текст. Цвф: 0 0 0 Цзн: 255 255 255

Пример 2. белый фон черный текст

Выбор цвета определяется эргономикой, и удобством для персонала.
Все данные о выбранном цвете и других режимах работы пишутся с интервалом 15 секунд в файл текущего состояния
окон и системы - okon_razmer.ini
Настройка линейной интерполяции для режима ретрансляции
Программа в режиме ретрансляции получает данные от датчиков влажности-температуры и по закону линейной
интерполяции преобразовывает их в ток для приема действующим контроллером сушильной линии.
Значения интерполяции задаются непосредственно на окне управления 7024-7022
Требуется подвести курсор мышки под выбранное значение. Появиться маркер и можно кликать левой кнопкой увеличивать значение, а правой уменьшать. Выделено цветовым овалом.

Изменения значений сразу же применяются к данным.
Значения линейной ретрансляции так же пишутся в файл текущего состояния окон и системы - okon_razmer.ini с
интервалом 15 секунд.
Выбор значений для интерполяции проведен опытным путем.
По этому и допускается некоторая коррекция интерполяции для разных режимов работы основного контроллера
сушильной линии.
Для восстановления исходных данных в меню помощи имеется клавиша =с:=
Исходные данные записываются в конфигурационном файле lukanin_upravlenie_v1_ini.f
При необходимости изменить исходные данные линейной интерполяции выполняется процедура по клавише 2; в меню
помощи.
Открывается файл конфигурации lukanin_upravlenie_v1_ini.f вводятся новые данные.
Затем выполняется компиляция новой программы.

Ручной и автоматический режим контура управления
Для возможной проверки контура предусмотрено отключение управления.

Для этого предусмотрены цифровые кнопки 1 2 5 6 . При их нажатии или клике мышкой управление для канала
включается или выключается.
На окне производственного процесс дополнительно высвечивается индикация об изменении режима управления

Если сигнал на 7022-7022 передается но, не возвращается - то индицируется XX
Т.е. это означает неисправность в передаче данных на контроллер.
В ручном режиме установка выходного тока осуществляется кликом мышке на месте значений тока установки
5-10 секунд значение тока станет примерно заданным.

и через

Допустимое отклонение зависит от юстировки тока выхода блоков 7022-7024 и не должно превышать 0.1ма
Отображение графиков температуры и влажности
Настройка цвета фона и текста окон график осуществляется так же как и для окон управления.
График тока отображается без масштабирования.
График температуры и влажности отображается без масштабирования, но с линейным сдвигом по вертикали. Сдвиг
осуществляется по нажатию мышкой на значение сдвига на окне графики

При клике левой кнопкой значение сдвига увеличивается и график "уходит" вниз. А при нажатии правой кнопки мышки сдвиг уменьшается и график поднимается. Одновременно, происходит пересчет значений и отображение на графике.
По оси горизонтали - X- отображается время. Интервал накопления значений графика около 1го часа.
Аппаратное обеспечение
Принципы формирования надежности системы
Надежность данной системы управления формируется на требованиях:
- максимально быстрый поиск неисправности персоналом;
- персонал не имеет специальных знаний по поиску неисправности;
- неисправности группируются на аппаратные и программные;
- аппаратные неисправности (датчики, линии, блоки питания и т.п.) устраняются заменой на аналогичное оборудование.
Или ремонтом неисправного элемента.
- программные неисправности устраняются путем замены на аналогичный компьютер сбора и управления. Т.е.
используется принцип полного резервирования вычислительных ресурсов.
И в дальнейшем, программные неисправности устраняются подготовленным персоналом. В спокойной обстановке.
Смотри файл lukanin_upravlenie_v7.spl7 Ниже рисунок с данного файла.

Для перехода в режим резерва необходимо переключить только разъемы USB внешних устройств и включить
программу на резервном компьютере.
На настоящий время используется 2е-линии usb. В дальнейшем планируется расширить до 4х для увеличения
быстродействия откликов управления.
Минимальные требования управление системой - один компьютере, без локальной сети.

В полном режиме - обеспечивается удаленных контроль работы системы. Быстрое включение резервного компьютера,
если выясняется программная неисправность.
Подключение более удобных устройств управления - например монитора с сенсорной клавиатурой при таком подходе
не вызывает ни каких трудностей.
Резервный компьютер используется и для отладки системы управления
Описание схемы подключения системы
Схема основных узлов подключения системы приведена ниже на рисунке. Файл блочной lukanin_upravlenie_v2.spl7
Для детального просмотра, откройте файлы указанные на схеме.

Блоки i-7022-24 расположены на штатных дин рейках показанных ниже на рисунке.

Подключение icp-dac- 7024

Файл схемы lukanin_upravlenie_v1.spl7
Датчик влажности
Датчик влажности приведен на схеме ниже.

Печатная плата

Ветвитель ds2409
Схема:

Монтаж регенератора производится по необходимости
см. http://shabronov_s2.dyn-dns.ru/doc_sh/wostanovlenie_signalov/
Печатная плата

Расположение DS2409

Расположение в монтажной коробке:

Схема подключения линии микролан к ds2409

Анализ данных архивов программой EXCEL
Где находиться программа excel для анализа архивов и ее извлечение;
 Программа построение графиков из данных находиться в теле программы lukanin_upravlenie_v1.exe и
извлекается при первом запуске программы по клавише 7. Ниже выделено овалом. По клавише =U=
восстанавливается архив.



В рабочем режиме программа восстанавливается из окна помощи. Клавиша =f= Ниже выделено овалом.




Файл анализа grafiik_lin_v1.xls допускается выполнять в любом месте.
Внимание! Используются макросы. Требуется отключить запрет выполнения макросов в программе EXCEL.
Ниже рабочий вид окна программы.



Для просмотра макроса нажмите alt+f8 . Такое сочетание используется по умолчанию во всех версиях
Excel. Откроется окно редактора макросов. Показано ниже на рисунке.



Текст макроса и его модернизация доступна для всех желающих. Но за все изменения отвечает
«изменщик». Шутка: - Она мне изменила этой ночью. - А ты что? - Я отомстил ей неделю назад.

Где формируются данные архивов.
 Программа управления lukanin_upravlenie_v1.exe формирует файлы отчетов по данным, из ini-файла
lukanin_upravlenie_v1_ini.f
 Определены 3-и опции, показанные ниже, которые задают путь к каталогам для сохранения архивов.
KTLG_ARHIV_XLS=
S" statistika_lukanin_process"
KTLG_ARHIV_XLS_DUP= S" C:\lukanin_xls"
KTLG_ARHIV_XLS_DUP_N1= S" \\SECOND\lukanin_xls"
 Первая опция сохраняет данные в рабочем месте программы, где формирует дополнительный каталог.
 Вторая опция сохраняет данные в отдельном месте рабочего компьютера на диске С.
 Третья опция сохраняет данные на другом компьютере. В данном примере он называется SECOND.
Предварительно, требуется подготовить каталог и разрешить доступ на чтение и запись. Опции
равнозначны и выбор путей сохранения определяется производственными условиями.
 Файл инициализации в открытом виде не доступен. Он расположен «внутри» программы *.exe Программа
при старте извлекает из «внутреннего» расположения ini-файла данные опции и их использует.
 Что бы изменить путь формирования данных необходимо перекомпилировать файл *.exe с новыми данными
в опции пути. При первом старте выполнить по клавише =3= извлечение всех файлов программы. Перейти к
файлу инициализации. Открыть и исправить требуемый путь в опции. Затем выполнить компиляцию.
Сформируется новый файл *.exe который при работе формирует новые файлы в новом пути. Но эти
изменения, будут зафиксированы во времени создания файла, его контрольной сумме и размере. Что и
покажет о наличии изменения. Данные общего файла находятся в главном окне. Получить скан txt по
клавише alt+F1
Подключение к данным
 После открытия grafiik_lin_v1.xls выбирается пункт открыть файл данных, который выполнен как гиперссылка.

Необходимое ее настроить, если Ваше расположение данных в другом месте. Для этого «кликнуть» правой клавишей
откроется вкладка и выбрать далее место расположения данных.



Выбрать файл данных для анализа. Для примера в теле программы имеется архив zip. Извлекается при первом
старте по клавише =u= и в работе по клавише =g=. Выделено цветовым овалом ниже на рисунках.



Данные файла архива имеют формат txt файла, но расширение xls. Таким образом, можно смотреть файлы и
любым редактором для текстов. Например, блокнотом. По умолчанию, расширение файла запускает редактор
Excel и запрашивается разрешение на открытие файла, т.к. формат текстовый. Требуется дать открытие файла.



Откроется окно с исходными данными.

Выполнение макроса анализа и построение графиков;






Данные представлены в виде таблицы. 1-й столбик время, все остальные температура и влажность на время в
1-ом столбике.
Вернуться на окно Excel с макросом и нажать кнопку выполнения макроса 1 или 2. Произойдет выполнение
макроса и построение графика.

Для детального анализа воспользоваться инструментарием графиков Excel. Повторить отображение с другими
параметрами, цветом и т.д.
Подготовлено 2а варианта построения графиков. 1-й по каждому значению строится свой график. Получается
20 графиков. 2-й вариант – сборный. Строиться суммарный график температур и влажности. Получается 2-а

графика с 10-ю отображаемыми линиями изменений параметров. Любые другие варианты подготавливаются
с использованием свободно доступных текстов макроса по клавишам alt+F8
Выводы
Данная программа и система предназначена для мониторинга технических параметров объекта по температуре и
влажности.
Особенности программы:
- Имеет упрощенный «оконный» интерфейс.
- Программа не устанавливается, не прописывается в системные библиотеки,
- Программа содержит в своем «теле» в упакованном виде
все элементы, необходимые для работы и
восстановления настроек заказчика.
- Программа работает под операционными системами WINDOWS 95/98/NT/2000/XP/Vista/Win7 и использует только
функции api- ядра системы – файл kernel32.dll
- Программа написана на языке Форт версия spf4.exe – автор А. Черезов http://www.forth.org.ru
----------------------------------------------------------------------------------------------------------------------------- ---Автор программного обеспечения- Шабронов Андрей Анатольевич
Сотовый телефон +7 913-905-8839
e_mail - shabronov@ngs.ru
icq – 310-431-858
ред. 26-10-2016 перевод темы на сервер автора.
Успехов и здоровья!