Модели автоматизации проектирования технологических процессов роботизированной сборки

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

Рубрика Производство и технологии
Вид диссертация
Язык русский
Дата добавления 19.06.2018
Размер файла 1,0 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

- инициализация звукового драйвера;

- установка параметров;

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

- закрытие драйвера.

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

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

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

В операционную систему Microsoft Windows встроена хорошо продуманная и документированная библиотека для работы со звуковыми сигналами - mmsystem [124].

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

Прежде всего, необходимо заполнить структуру WAVEHDR.

Структура WAVEHDR определяет заголовок, используемый для идентификации буфера звуковых данных

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

Главное окно приложения, реализующего запись, воспроизведение и обработку звуковой информации, приведено на рис. 4.2.

Рис. 4.2. Главное окно программы записи, воспроизведения и обработки звуковой информации

В главном окне обеспечивается просмотр и редактирование существующих словарей, а также их сохранение. Это окно содержит главное меню, панель управления и рабочую область приложения. Главное меню состоит из следующих пунктов: File, Edit, View, Help. Нажатие на пункт File позволяет создать новый файл, открыть существующий файл с расширением *.spl, открыть недавно использованный файл, сохранить новый файл и сохранить существующий файл под другим именем, выйти из программы. При нажатии на пункт Edit можно выбрать одно из предлагаемых действий: добавить слово, удалить слово, воспроизводить звук выделенного слова в рабочей области приложения. Пункт View отвечает за вид главного окна: наличие или отсутствие панели управления и строки состояния.

В панели управления присутствуют следующие кнопки: создание нового файла, открытие существующего файла, сохранение файла, удаление и добавление слова, воспроизведение слова,

Для воспроизведения выбранного слова требуется лишь нажать на соответствующую кнопку в панели управления либо выбрать Edit->Play Sound.

Для записи нового слова требуется нажать на соответствующую кнопку в панели управления либо выбрать Edit->Add Word. При этом появляется новое окно, основанное на диалоговой форме, в котором есть поле для ввода буквенного обозначения нового слова. Это окно представлено на рис. 4.3.

Рис. 4.3. Окно добавления слова в словарь

После ввода слова в поле Word, необходимо нажать кнопку Record. После этого появляется новое окно. Оно обеспечивает запись и анализ нового слова. Окно анализа нового слова представлено на рис. 4.4.

Рис. 4.4. Окно, обеспечивающее анализ нового слова

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

Таблица 4.1

Форматы данных

Название

Количество

каналов

Частота

дискретизации

Количество бит

WAVE_FORMAT_1M08

1

11025

8

WAVE_FORMAT_1M16

1

11025

16

WAVE_FORMAT_1S08

2

11025

8

WAVE_FORMAT_1S16

2

11025

16

WAVE_FORMAT_2M08

1

22050

8

WAVE_FORMAT_2M16

1

22050

16

WAVE_FORMAT_2S08

2

22050

8

WAVE_FORMAT_2S16

2

22050

16

WAVE_FORMAT_4M08

1

44100

8

WAVE_FORMAT_4M16

1

44100

16

WAVE_FORMAT_4S08

2

44100

8

WAVE_FORMAT_4S16

2

44100

16

Выбор формата записываемых данных необходимо осуществлять исходя из следующих предпосылок: с одной стороны, чем выше частота дискретизации (количество элементов в секунду), чем выше количество каналов и чем выше количество бит в элементе, тем выше качество записи, а потом и воспроизведения звука; с другой стороны, чем выше эти параметры, тем сложнее проводить анализ звука, тем дольше обрабатываются данные. Поэтому для решения поставленной задачи выбирается частота дискретизации 11025 Гц, выбирается моно-режим, т.е. количество каналов=1, и количество бит в элементе=8.

После этого всё уже готово для записи. Для непосредственного осуществления записи звукового аналога слова необходимо нажать на кнопку Record.

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

В приложении В приведена функция, обеспечивающая запись звуковой информации.

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

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

В приложении Г приведена функция, обеспечивающая обработку данных, находящихся в буфере.

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

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

4.3 Разработка программного обеспечения подсистемы проектирования технологических операций сборки роботизированного производства

При разработке программы, реализующей голосовой ввод информации в форме формирования управляющих команд, был создан проект, в котором созданы следующие классы: CApp (класс приложения), CEasyCCRecognition (реализует непосредственное распознавание слов), CSDialog (обеспечивает необходимую проверку и трансляцию произнесенной фразы в команду), COpenGL (моделирование работы робота), CSerialException (класс, описывающий исключения при работе серийного порта), CSerialPort (класс, обеспечивающий передачу данных в серийный порт).

Так как с точки зрения голосового ввода информации основные функции содержат классы CEasyCCRecognition и CSDialog, рассмотрим их подробнее.

Функции, содержащиеся в классе CEasyCCRecognition, приведены в табл. 4.2.

Таблица 4.2

Функции класса CEasyCCRecognition

Название функции

Описание

PutStart

Переход в режим распознавания

GetStart

Проверка включения распознавания

GetIsStarted

Проверка состояния распознавания

PutIsListening

Установка режима ввода голосовых команд

GetIsListening

Проверка, включён ли режим ввода голосовых команд

PutXml

Определение словаря (библиотеки)

GetTextRecognized

Получение распознанного текста

PutRecognize

Установка распознавания

Функции, содержащиеся в классе CSDialog, приведены в табл. 4.3.

Функции get, word, index, number, prog, exam, newob, dvarb, dfunc, param, body, defin, gen реализуют работу транслятора.

Так как формирование голосовой команды, а также её выполнение начинается в функции OnTextRecognized, рассмотрим её работу подробнее. Прежде всего, необходимо отметить, что в соответствии с принятыми правилами построения команды, до тех пор, пока не будет произнесено предуправляющее слово «robot», система находится в состоянии бездействия. Все слова и словосочетания, произнесенные после этого слова, записываются в файл. После введения слова «end» запись прекращается, состояние ввода голосовых команд устанавливается равным false, и управление передаётся функции analys.

Таблица 4.3

Функции класса CSDialog

Название функции

Описание

OnInitDialog

Инициализация диалогового окна приложения

RunJoint

Обеспечение перемещения звена

InitRobot

Инициализация робота

InitJointSpeed

Установка скорости поворота звена

ReadXml

Выбор файла, содержащего библиотеку

WordsXml

Подключение и чтение библиотеки допустимых слов

OnBnClickedToggle

Включение/выключение режима ввода голосовых команд

OnTextRecognized

Определение порядка действий после распознавания слов

RunVoiceCommand

Начало выполнения голосовой команды

analys

Анализ произнесенных и распознанных слов

get

Получение слова из файла, содержащего все Распознанные слова

word

Проверка слова

index

Проверка символа

number

Проверка числа

prog

Запуск выполнения проверки слов

exam

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

param

Проверка параметров

body

Проверка соответствия лексем

В этой функции сначала выполняется функция get, которая считывает посимвольно слова из файла с произнесенными словами. Когда считывание доходит до конца файла, управление возвращается в предыдущую функцию. Пока считываемые символы являются пробелами, функция последовательно переходит к следующим символам. Если символ оказывается числом, то управление передаётся функции number, которая считывает всё записанное число и устанавливает, что лексема является числом. Далее происходит возврат к функции get. При нахождении знака препинания программа заходит в функцию index. Здесь полностью считываются все идущие подряд знаки препинания, после чего происходит возврат к функции get. При считывании малой буквы программа заходит в функцию word. В начале этой функции содержится описание зарезервированных слов, которые будут являться ключевыми. Этими словами являются рабочие слова языка программирования («if», «while», «return», «print», «read», «int», «real», «const», «then», «do»), предуправляющее слово («robot»), слово окончания введения команды («end»), а также названия движений робота («rotate», «move») и его звеньев («base», «shoulder», «elbow», «wrist», «gripper»). Каждому из этих слов присваивается идентификатор. Ключевое слово устанавливается в false. После этого слово считывается целиком. Далее производится проверка, присутствует ли данное слово в зарезервированных, если да, то ключевое слово устанавливается в true, и лексеме присваивается соответствующее значение идентификатора. Если же слово отсутствует в списке в зарезервированных, лексеме присваивается значение соответствующее этому случаю.

Дополнительным компонентом разработанного программного обеспечения является подсистема, реализующая лексический и синтаксический анализаторы. В процессе лексического анализа определяются глобальные переменные lex - для распознанной лексемы, lval - значение лексемы, nst - номер строки программы, которая содержит лексемы. Различают лексемы: служебные слова «if», «while», «return», «print», «read», «begin», «end», «int», «real», «const», «then», «do», «robot», «rotate», «base», «move», которые кодируются соответственно константами IFL, WHILEL, RETRL, PRITL, READL, BEGINL, ENDL, INTL, REALL, CONSTL, THENL, DOL, ROBOTL, ROTATEL, BASEL, MOVEL, знаки операций и разделители, закодированные символьными константами '(', ')', ',', ':', ';', '=', '+', '-', '*', '/', '%', '.', целое без знака с кодом NUMB и значением lval, идентификатор с кодом IDEN и значением, которое является показателем таблицы идентификаторов TNM.

Синтаксис языка описывается расширенными грамматиками с использованием символов [123, 127] в регулярных выражениях в правых частях правил. Если r - регулярное выражение, которое задаёт множество R, то [r] - регулярное выражение для множества, где [] - пустая цепочка. Терминальные символы расширенной грамматики - это лексемы, коды которых записываются маленькими буквами. Не терминалами являются последовательности букв PROG, DCONST, DVARB, DFUNC, CONS, PARAM, BODY, STML, STAT, EXPR, FCTL, которые обозначают синтаксические конструкции: программу, определение констант, переменные функций, константу, параметры, тело, список операторов, оператор, выражение, список выражений.

Данная грамматика допускает синтаксический LA-анализ. В разрабатываемом интерпретаторе синтаксический анализ ведётся до появления первой ошибки, после чего печатается сообщение «ошибка синтаксиса» и работа завершается. В процессе анализа используется функция exam(lx), которая проверяет, имеет ли код следующая лексема. Если да, то вводится следующая лексема, если нет - анализ завершается после выявления ошибки.

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

После выполнения функции get, функция OnTextRecognized передаёт управление функции prog. Эта функция проверяет вид лексемы и передаёт управление соответствующим ей функциям. С точки зрения формирования голосовой команды наибольший интерес представляет функция dfunc. Рассмотрим её подробнее. Она вызывает выполнение функции body, в которой непосредственно определяется правильность задания порядка голосовой команды, для чего также используется функция exam, проверяющая соответствует ли данная лексема необходимой. Если команда, заданная голосом, соответствует правилам задания команд, то управление передаётся в функцию RunJoint, которая обеспечивает выполнение команды роботом.

Важным этапом проектирования манипулятора является выбор его параметров (мощность, передаточное число, оптимальное распределение передаточного числа по ступеням редуктора).

Проблема состоит в выборе электропривода с учётом следующих факторов:

- требуемых динамических свойств при пуске;

- торможении и изменении нагрузки;

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

- вида требуемой механической характеристики двигателя требуемой точности поддержания заданного режима;

- частоты включения приводного механизма.

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

Приведенный анализ работ [85, 103, 128] показал, как правило, приведенные решения рассматривают применение, в качестве приводных, двигателей постоянного тока, т. к. асинхронные двигатели, из-за сложности и высокой стоимости электронных преобразователей, не имели широкого распространения.

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

Задача решается при следующих допущениях:

- момент инерции движущихся масс Ic постоянный (=const);

- момент статических сопротивлений Tc постоянный (=const);

- передаточное число постоянно на всех режимах движения;

- угловое ускорение изменяется линейно.

Разработана методика определения параметров привода:

- угловой скорости установившегося движения вала манипулятора;

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

- передаточного отношения редуктора.

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

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

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

Любое афинное преобразование в трехмерном пространстве может быть представлено в виде суперпозиций вращений, растяжений, отражений и переносов. Следовательно, можно отдельно осуществить перенос системы координат, её поворот относительно необходимой оси или нескольких осей, растянуть или сжать, зеркально отразить относительно точки, оси, плоскости. Каждая точка пространства (кроме начальной) может быть задана четвёркой одновременно не равных нулю чисел (hx, hy, hz, h); эта четвёрка определена однозначно с точностью до множителя [129-131]. Особенности моделирования описаны в [3].

Главное окно программы и подсистемы ввода информации приведено на рис. 4.5.

Кнопка “StartControl” осуществляет подключение робота к управлению от персонального компьютера. “StopControl” - отключает робот от персонального компьютера. Переключатели “Manual Ctrl” и “Angle Ctrl” позволяют выбрать либо пошаговое перемещение робота, либо перемещение по заданным углам соответственно. Угол поворота задаётся числом в специальном элементе управления.

Кнопки «Base», «Shoulder», «Elbow», «WristRotate», «WristDown» и «Gripper» позволяют выбрать звено робота, которое необходимо повернуть. Для инициализации движения или задержки существует кнопка «Move Init/ Move Delay».

Рис. 4.5. Главное окно программы

В окне можно выбрать скорость перемещения робота с помощью элемента “SliderCtrl”, значение скорости будет указываться в элементе “Edit” (в данном случае скорость равна 7). Кнопка “OpenGL” вызывает окно, в котором происходит моделирование работы робота. Кнопка “VoiceControl” вызывает окно распознавания, в котором происходит непосредственное задание команды и её проверка на соответствие существующим лексемам, оно приведено на рис. 4.6.

При работе программы в режиме распознавания используются XML-файлы как стандартное средство описания грамматик для библиотеки Microsoft Speech API 5.1.

Рис. 4.6. Окно распознавания

Набор управляющих команд робота представляется набором грамматик, описанном в файле формата XML.

При составлении библиотеки слов, которые могут быть использованы в тексте программы работы робота, указаны следующие идентификаторы: «words» (ключевые слова), «switch» (переключение типа выполняемого действия), «joint» (название звена манипулятора), «NUMBERS» (числа),

«SNUMBERS» (числа, произносимые одним словом), «DNUMBERS» (двухзначные числа), «HNUMBERS» (трёхзначные числа), «TNUMBERS» (четырёхзначные числа). Наличие такого количества разделов, описывающих числа, объясняется особенностями английского языка. Числа до двадцати являются однословными, то есть могут быть заданы посредством произнесения одного слова. Такие числа, как «двадцать один», «двадцать два» и так далее, в своём составе содержат два слова, первое из которых обозначает десятки, а второе - число от одного до девяти. Трёхзначные числа, например «сто двадцать пять», в английском языке произносятся как «одна сотня двадцать пять». Таким образом, это число включает в себя на первом месте число от одного до девяти, показывающее количество сотен, за ним идёт непосредственно само слово «сотня» («hundred»), далее либо однословное число (от одного до двадцати), либо двухсловное число. Аналогично можно представить числа от тысячи до двадцати тысяч. Число «тысяча сто двадцать пять» (четыре слова в русском языке) в английском варианте будет звучать как «одна тысяча одна сотня двадцать пять». Здесь на первом месте стоит число обозначающее количество тысяч (от одного до двадцати), далее само слово «тысяча» («thousand») и затем всё аналогично представлению трёхзначного числа.

В разделе «words» указаны слова «robot» (начало команды), «end» (окончание команды), «exit» (выход из программы). В разделе «switch» представлены слова, обозначающие вид действия «rotate» (поворот), «move» (перемещение). Раздел «joint» включает названия звеньев «base» (основание), «shoulder» (плечо), «elbow» (локоть), «wristrotate» (поворот кисти), «wristdown» (подъём/опускание кисти) и «gripper».

Раздел «NUMBERS» является структурированным, он включает в себя разделы «SNUMBERS», «DNUMBERS», «HNUMBERS», «TNUMBERS», каждый из которых имеет свою собственную структуру. «SNUMBERS» включает в себя простые числа, «DNUMBERS» - десятки и простые числа («SNUMBERS»), «HNUMBERS» - сотни и «DNUMBERS», «TNUMBERS» - тысячи и «HNUMBERS»:

«SNUMBERS» = <однословные числа>= 0, 1,…, 20;

«DNUMBERS» = <двухсловные числа>=<десятки>+<однословные числа>, <десятки> = 10, 20,…, 90;

«HNUMBERS» = <трёхзначные числа> = <однословные числа> + «hundred» + <двухсловные числа>

«TNUMBERS» = <четырёхзначные числа> =<однословные числа> + «thousand» + <трёхзначные числа>

Содержание XML - файла управляющих команд робота приводится в приложении Е.

4.4 Руководство пользователя

После запуска подсистемы ввода информации САПР технологических процессов необходимо активизировать управление роботом от персонального компьютера. Для этого в главном окне программы (рис. 4.5) необходимо нажать кнопку “StartControl”. Затем следует инициализировать перемещение звеньев робота в режиме ручного управления от персонального компьютера. Для этого нажать на кнопку “MoveInit”.

Далее для формирования голосовой команды надо перейти в окно распознавания команды (рис. 4.6), для чего нажать кнопку VoiceControl. При этом появляется окно, которое помимо прочего содержит 3 элемента управления типа ListBox (список). Первый элемент этого типа содержит информацию о файле - библиотеке. Второй - о режиме работы (т.е. включен в данный момент режим ввода голосовых команд или нет), а также обо всех распознанных словах. Третий список содержит только команды, то есть в этот список помещаются все слова, произнесенные после слова «robot» (а также само это слово), но до слова «end».

Для задания управляющих команд их необходимо произносить строго в порядке, соответствующем существующим лексемам. То есть, прежде всего, произносится предуправляющее слово «robot», за ним произносится тип команды передвижения («rotate» или «move»). Далее в случае передвижения типа «rotate» произносится название звена робота («base» (основание), «shoulder» (плечо), «elbow» (локоть), «wristrotate» (поворот кисти), «wristdown» (подъём/опускание кисти) или «gripper» (схват)).

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

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

robot

rotate base minus one hundred twenty five

end.

В случае передвижения типа «move» после данного слова задаётся тройка чисел, соответствующая значениям перемещений вдоль координатных осей x, y, z. Числа разделяются между собой словом-разделителем «dot», которое обозначает окончание введения предыдущего числа. Аналогично заданию градусной меры угла поворота в команде «rotate» в этой команде при необходимости можно задать перемещения как в положительном направлении, так и в отрицательном. Если слово «minus» в какой-либо координате пропущено, значит, перемещение по данной оси должно производиться в положительном направлении. Координаты задаются в строгом порядке: первое число соответствует перемещению по оси абсцисс x, второе - по оси ординат y, третье - по оси аппликат z. Введение только одного числа означает перемещение только по оси x, двух чисел - по оси x и y. Если необходимо переместиться по осям y и z, а по оси x нет, то сначала задаётся 0, а затем перемещения по необходимым осям. Аналогично задаётся перемещение только по оси аппликат: сначала два ноля, а затем нужное число, соответствующее перемещению по оси z. Таким же образом задаётся любое сочетание перемещений схвата манипулятора робота по необходимым осям.

Рассмотрим пример команды:

robot

move twenty one dot minus nine dot five hundreds forty six

end.

Приведенный пример задаёт перемещение схвата манипулятора в точку с координатами (21, -9, 546).

Фактически ключевые слова «robot» и «end» формируют блок функций, обеспечивающий голосовой ввод информации в САПР технологических процессов роботизированного производства. Внутри этого блока можно произнести любое количество команд «rotate» и «move» в произвольном их сочетании. Каждая команда далее подвергается проверке на правильность задания и выполнимость (возможность выполнения её из текущего положения робота и в условиях текущей рабочей зоны робота) и лишь затем выполнена. Команды выполняются последовательно, то есть проверенная подкоманда выполняется, затем начинается проверка следующей команды. Выполнение команд прекращается в двух случаях:

- окончание команды (программа проверки доходит до слова «end»);

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

Ниже приведен пример задания нескольких подкоманд в одной команде:

robot

rotate shoulder fifty three

move zero dot twelve dot minus seventy eight

rotate elbow minus ninety

end.

Указанная команда предполагает выполнение следующих действий: вращение плеча робота на 53 градуса, затем перемещение манипулятора в точку с координатами (0, 12, -78) и последующее вращение локтя робота на -90 градусов.

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

1. Разместить объекты в рабочей области робота (как правило, составные части размещаются в следующей ячейке рабочей зоны).

2. Необходимо обучить робот точкам расположения основных сборочных деталей. Для этого используется комбинация команд «rotate» (повернуть), «move» (переместить) и команда «fix» (запомнить).

3. Ряд команд может носить составной характер, их следует объединить в метакоманды, например, «взять объект А», «разместить объект А в точке В».

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

5. Проверить корректность сформированного технологического процесса, повторив процесс сборки изделия.

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

4.5 Оценка эффективности применения САПР с подсистемой голосового ввода информации

Экспериментальные исследования по опытному внедрению разработанной САПР технологии роботизированной сборки с подсистемой голосового ввода информации в системе автоматизированного проектирования технологии роботизированной сборки производилось на Государственном предприятии Научно-исследовательский технологический институт приборостроения (ГП НИТИП) (г. Харьков) и в Государственном Научно-исследовательском центре нормативно-технических материалов по труду (ГНИЦНТМТ) (г. Харьков).

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

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

В условиях функционирования САПР ТП роботизированного производства необходимо рассматривать следующие стадии проектирования технологических переходов и операций:

- разработка сборочного чертежа;

- формирование последовательности технологических переходов и отдельных технологических операций;

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

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

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

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

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

В процессе экспериментальных исследований рассматривалась система управления промышленным роботом РМ-01. При проектировании технологических процессов на данном роботе стандартно используется ввод информации при помощи консоли ввода-вывода (клавиатура и дисплей) и пульта ручного управления. При этом ввод информации с пульта ручного управления обеспечивает более точную привязку к объектам рабочей зоны. В то время как ввод информации с клавиатуры обеспечивает единственный способ формирования программы управления роботом. Использование подсистемы голосового ввода информации в САПР технологических процессов применительно к роботу РМ-01 позволяет:

а) обеспечить альтернативный способ ввода информации в САПР технологических процессов и систему управления роботом;

б) обеспечить необходимую привязку к объектам рабочей зоны;

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

Проведение сравнительного анализа применения САПР с подсистемой голосового ввода информации выполнялось в следующих условиях:

1. Рассматривается технологический процесс сборки печатной платы.

2. Используется промышленный робот РМ-01 в составе устройства управления «Сфера-36» и манипулятора PUMA.

3. Количество сборочных единиц не превышает четырёх.

4. Сборочные единицы размещены в пределах рабочего пространства робота РМ-01.

Требования для работы подсистемы голосового ввода информации в САПР ТП сборки:

- персональный компьютер с установленной операционной системой MS Windows XP;

- промышленный робот РМ-01, подсоединённый к последовательному порту персонального компьютера;

- установленный на персональный компьютер пакет библиотек поддержки обработки голосовой информации Microsoft Speech Engine SDK 5.1;

- подключённый к аудиосистеме персонального компьютера микрофон.

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

Разработанное программное обеспечение (пакет прикладных программ RVControl01) позволяет выполнять ввод информации в САПР технологии роботизированной сборки при помощи голоса на естественном языке (посредством задания команд голосом).

Для реализации эксперимента запуск программы осуществляется выбором файла RVControl01.exe. После запуска программы активизируется управление роботом от персонального компьютера. Для этого в главном окне программы (рис. 4.5) необходимо нажать кнопку “StartControl”.

Затем инициализируется перемещение звеньев робота в режиме ручного управления от персонального компьютера. Для этого требуется нажать кнопку “MoveInit”. Далее для формирования голосовой команды необходимо перейти в окно распознавания команды (рис. 4.6), для чего нажать кнопку “VoiceControl”.

В ходе эксперимента была проведена оценка трудоёмкости проектирования операции перестановки двух деталей в условиях традиционного ввода информации (используя пульт ручного управления робота и клавиатуру) и при наличии подсистемы голосового ввода информации. Исходное положение робота принимается началом координат (точка (0,0,0)), тогда пусть деталь1 находится в точке координатами (100,100,100), деталь2 - в точке (500,500,100). Необходимо поменять детали местами. Для этого выберем промежуточную точку с координатами (0,500,100). Сравнение времени на задание необходимых команд приведено в табл. 4.4.

Таблица 4.4

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

Традиционный ввод команд

Голосовой ввод команд

Затраченное время

Разность времени, с

традиционный ввод, с

голосовой ввод, с

SPEED 400

Robot

10

0,5

9.5

OPEN

Open

5

0,5

4.5

MOVE 100,100,300

move point 100,100,300

20

5

15

MOVE 0,0,-200

move point 100,100,100

20

5

15

CLOSE

Close

5

0,5

4.5

MOVE 0,0,200

move point 0,500,300

20

5

15

MOVE 0,400,-200

move point 0,500,100

20

5

15

OPEN

Open

5

0,5

4.5

MOVE 400,0,200

move point 500,500,300

20

5

15

MOVE 0,0,-200

move point 500,500,100

20

5

15

CLOSE

Close

5

0,5

4.5

MOVE -400,-400,200

move point 100,100,300

20

5

15

MOVE 0,0,-200

move point 100,100,100

20

5

15

OPEN

Open

5

0,5

4.5

MOVE 0,0,200

move point 0,500,300

20

5

15

MOVE -100,400,-200

move point 0,500,100

20

5

15

CLOSE

Close

5

0,5

4.5

MOVE 500,0,200

move point 500,500,300

20

5

15

MOVE 0,0,-200

move point 500,500,100

20

5

15

OPEN

Open

5

0,5

4.5

MOVE 0,0,200

move point 500,500,300

20

5

15

MOVE JOINT1 60

move point 0,0,0

20

5

15

PARK

End

5

0.5

4.5

Суммарное время

330

74

256

На основании полученных показаний затраченного времени были построены графики трудоёмкости (рис. 4.7).

Рис. 4.7. График сравнения трудоёмкости задания команд

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

Таблица 4.5

Сравнение показателей трудоёмкости проектирования технологического процесса роботизированной сборки для различных типов САПР

Тип САПР

Суммарное время проектирования, с

P-CAD

? 1200

Компас

? 1020

RVControl

? 600

Как видно из табл. 4.4, применение САПР с подсистемой голосового ввода информации обеспечивает сокращение времени проектирования в 1,7-2 раза по сравнению с другими системами проектирования.

Следует также отметить, что применение САПР технологии роботизированной сборки с подсистемой голосового ввода информации не вносит дополнительную погрешность перемещений манипулятора. Допустимая погрешность перемещения составляет 1мм, определяется техническими характеристиками промышленного робота РМ-01 и не зависит от типа подсистемы ввода информации. Экономический эффект использования данной разработки подтвержден актами внедрения и составляет 11 000 гр. на одно рабочее место.

Апробация САПР технологии роботизированной сборки с подсистемой голосового ввода информации доказывает эффективность применения разработанных в диссертационной работе моделей проектирования технологических процессов и метода голосового ввода информации в САПР технологических процессов сборки

4.6 Выводы к разделу 4

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

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

2. Разработано программное обеспечение для записи и воспроизведения аудиоинформации в необходимом формате.

3. Разработано программное обеспечение для распознавания и анализа голосовых данных.

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

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

6. Составлено руководство пользователя. Разработана технологическая инструкция для применения подсистемы ввода САПР технологических процессов на основе голосового ввода информации при проектировании технологических процессов роботизированного производства.

7. Сравнительный анализ показал, что использование подсистемы голосового ввода информации САПР ТП позволяет в 1,7-2 раза сократить время проектирования роботизированных технологических процессов сборки.

8. Экономический эффект использования данной разработки подтвержден актами внедрения и составляет 11 000 грн. на одно рабочее место.

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

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

Основные результаты, полученные в данном разделе, опубликованы в работах [2, 3, 10, 11, 16, 17, 18, 19].

ВЫВОДЫ

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

В диссертации получены следующие теоретические и практические результаты.

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

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

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

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

11 000 гр. на одно рабочее место.

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

Приложение А

Выделение отдельных фактов семантической сети

Таблица Б.1

Факты семантической сети

Номер факта

Имя отношения

Объект1

Объект

1

2

3

4

F1

Соединение

Направляющая1

Направляющая2

F2

Ориентирование

Направляющая1

Направляющая2

F3

Ориентирование

Направляющая1

Планка1

F4

Ориентирование

Направляющая1

Планка2

F5

Ориентирование

Направляющая2

Планка1

F6

Ориентирование

Направляющая2

Планка2

F7

Ориентирование

Болт1

Планка1

F8

Ориентирование

Болт2

Планка1

F9

Ориентирование

Болт3

Планка1

F10

Ориентирование

Болт4

Планка1

F11

Ориентирование

Шайба1

Болт1

F12

Ориентирование

Шайба2

Болт1

F13

Ориентирование

Шайба3

Болт2

F14

Ориентирование

Шайба4

Болт2

F15

Ориентирование

Шайба5

Болт3

F16

Ориентирование

Шайба6

Болт3

F17

Ориентирование

Шайба7

Болт4

F18

Ориентирование

Шайба8

Болт4

F19

Ориентирование

Гайка1

Болт1

F20

Ориентирование

Гайка2

Болт2

F21

Ориентирование

Гайка3

Болт3

F22

Ориентирование

Гайка4

Болт4

F23

Совмещение

Направляющая1

Направляющая2

F24

Совмещение

Направляющая1

Планка1

F25

Совмещение

Направляющая1

Планка2

F26

Совмещение

Направляющая2

Планка1

F27

Совмещение

Направляющая2

Планка2

F28

Совмещение

Болт1

Планка1

F29

Совмещение

Болт1

Шайба1

F30

Совмещение

Болт1

Шайба2

F31

Совмещение

Болт1

Планка2

F32

Совмещение

Болт1

Гайка1

F33

Совмещение

Болт2

Планка1

F34

Совмещение

Болт2

Шайба3

F35

Совмещение

Болт2

Шайба4

F36

Совмещение

Болт2

Планка2

F37

Совмещение

Болт2

Гайка2

F38

Совмещение

Болт3

Планка1

F39

Совмещение

Болт3

Шайба5

F40

Совмещение

Болт3

Шайба6

F41

Совмещение

Болт3

Планка2

F42

Совмещение

Болт3

Гайка3

F43

Совмещение

Болт4

Планка1

F44

Совмещение

Болт4

Шайба7

F45

Совмещение

Болт4

Шайба8

F46

Совмещение

Болт4

Планка2

F47

Совмещение

Болт4

Гайка4

F48

Следование за

Шайба1

Болт1

F49

Следование за

Шайба3

Болт2

F50

Следование за

Шайба5

Болт3

F66

Следование за

Шайба7

Болт4

F52

Следование за

Планка1

Шайба1

F53

Следование за

Планка1

Шайба3

F54

Следование за

Планка1

Шайба5

F55

Следование за

Планка1

Шайба7

F56

Следование за

Направляющая1

Планка1

F57

Следование за

Направляющая2

Планка1

F58

Следование за

Планка2

Направляющая1

F59

Следование за

Планка2

Направляющая2

F60

Следование за

Шайба2

Планка2

F61

Следование за

Шайба4

Планка2

F62

Следование за

Шайба6

Планка2

F63

Следование за

Шайба8

Планка2

F64

Следование за

Гайка1

Шайба2


Подобные документы

  • Построение современных систем автоматизации технологических процессов. Перечень контролируемых и регулируемых параметров установки приготовления сиропа. Разработка функциональной схемы автоматизации. Технические характеристики объекта автоматизации.

    курсовая работа [836,2 K], добавлен 23.09.2014

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

    реферат [16,9 K], добавлен 06.06.2011

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

    реферат [309,8 K], добавлен 09.02.2005

  • Разработка и анализ схем автоматизации технологических процессов в хлебопекарном производстве. Схема системы управления смешивания. Регулирование расходов жидких и сыпучих компонентов (ингредиентов) при их дозировании. Выпечка хлебобулочных изделий.

    курсовая работа [231,8 K], добавлен 10.04.2014

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

    курсовая работа [978,3 K], добавлен 20.09.2014

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

    учебное пособие [2,7 M], добавлен 13.06.2012

  • Три вида исходной информации при разработке технологических процессов: базовая, руководящая и справочная. Выполнение рабочего чертежа детали. Тип производства и методы изготовления изделий при разработке технологических процессов с применением ЭВМ.

    реферат [1,1 M], добавлен 07.03.2009

  • Выбор программного обеспечения для выполнения проектных работ. Выбор, обоснование технических средств для выполнения проектных работ. Разработка модели объекта проектирования. Проектирование технологических документов процессов заготовки, сборки и сварки.

    курсовая работа [1,2 M], добавлен 01.09.2010

  • Конструкторская подготовка производства и технический контроль на предприятии. Управление и организация производства в базовом цехе. Изучение технологии сборки узла и формы сборки. Изучение технологического процесса изготовления детали-представителя.

    отчет по практике [795,5 K], добавлен 23.07.2012

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

    курсовая работа [749,9 K], добавлен 16.11.2010

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

    контрольная работа [391,0 K], добавлен 18.11.2015

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

    контрольная работа [500,7 K], добавлен 21.04.2013

  • Классификация видов сборки. Виды работ, входящих в сборку. Расчет такта и ритма сборки, определение организационной формы сборки. Составление технологического маршрута сборки изделия и разбивка на операции. Оформление технологической документации.

    презентация [1,3 M], добавлен 05.11.2013

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

    курс лекций [1,3 M], добавлен 29.11.2010

  • Краткая характеристика объекта автоматизации, основные технические решения, схемы технологических процессов. Структурная схема системы регулирования. Выбор параметров сигнализации. Регулирование расхода мононитронафталина в линии подачи его в нитратор.

    контрольная работа [39,5 K], добавлен 22.09.2012

  • Служебное назначение и анализ технологичности конструкции изделия. Разработка технологического процесса сборки. Обоснование технологических баз. Предварительная разработка маршрутного технологического процесса изготовления детали. Расчёт режимов резания.

    дипломная работа [832,0 K], добавлен 29.06.2009

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

    курсовая работа [766,2 K], добавлен 29.03.2011

  • Создание системы автоматического регулирования технологических процессов. Регулирование температуры при обработке железобетонных изделий. Схема контроля температуры в камере ямного типа. Аппаратура для измерения давлений. Расчет шнекового смесителя.

    курсовая работа [554,1 K], добавлен 07.02.2016

  • Автоматизация процессов тепловой обработки. Схемы автоматизации трубчатых печей. Схема стабилизации технологических величин выпарной установки. Тепловой баланс процесса выпаривания. Автоматизация массообменных процессов. Управление процессом абсорбции.

    реферат [80,8 K], добавлен 26.01.2009

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

    дипломная работа [2,7 M], добавлен 16.04.2012

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.