Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Алгоритм управления стендом.⇐ ПредыдущаяСтр 14 из 14
Рис.10.1 Алгоритм управления стендом Весь алгоритм управления стендом будет строиться следующим образом: В Matlab происходит анализ изображения и составляется матрица из последовательности координат точек. Эти координаты пересчитыватся в физические, т.е. если у нас есть изображение 320х240, а координата точки [160, 120] и при этом физически размер поля для рисования 200х100 мм, то физически эта координата будет равна [ 200*160/320=100; 100*120/240=50]мм. Из Matlab по OPC-серверу в Siemens приходит координата точки, где она пересчитывается в вольты и единицы аналоговых значений сименса, т.е. при физических размерах поля рисования 200 (соответствует 10В на 1 приводе) на 100 (соответствует 10В на 2 приводе). Если разрешающий с сигнал=1, Matlab выдает через ОРС-сервер в Siemens координату первой точки. Для каждой из составляющих координаты точки организуется ПИД – регулятор (один для координаты Х, второй – для координаты У). У ПИД – регулятора в качестве установки передается преобразованная составляющая координаты, а в качестве текущей составляющей используется текущее значение положения привода. Разность уставки и текущего значения передается на соответствующий ПИД – регулятор, а выходом регулятора служит скорость движения привода, которая посылается на контроллер привода. Перо опускается и приводы отрабатывают координату, причем разрешающий сигнал при этом в Siemens выставляется в нулевое значение. После отработки выдается сигнал Ready for operation. Далее все повторяется по алгоритму со следующей точкой из матрицы. Если же следующий набор координат является последним, т.е. контур заканчивается, то в коде присутствует команда, поднимающая карандаш.
|