Вниз
Скачать: CL | DM;

Аппраксимация...   Найти похожие ветки 

← →
Sasha Sanches   (2007-05-29 15:43) [0]

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

[IMG]http://t.foto.radikal.ru/0705/4d/f61c18239ce9.jpg[/IMG]

В поле можно задавать произвольные координаты точек...поле размером 300 на 400...начальное положение в координате x1,y1...необходимо отработать перемещение до всех точек...то-есть шагами с минимальным отклонением...если представить что данная прямая является гипотенузой прямоугольного треугольника, то его высота (то-есть максимальное отклонение) это 100%...Необходимо чтобы отклонение не превышало 2%...то-есть 1/50 часть высоты... Сначала мы перемещаемся в точку A, затем в В и так далее... В результате необходимо подсчитать количество таких шагов по горизонтали и по вертикали, а также направления вращения 1-го и 2-го двигателей... То-есть: 1 ДВИГАТЕЛЬ: направление вращения и количество шагов...2 ДВИГАТЕЛЬ: направление вращения и количество шагов... Данные (координаты точек) можно вводить в Grid...и после нажатия на кнопку выводить результаты вычисления...

Объяснил как мог =) Заранее благодарен...


← →
MBo ©   (2007-05-29 15:47) [1]

Читай об алгоритме Брезенхема (Bresenham)


← →
Sasha Sanches   (2007-05-29 16:55) [2]

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


← →
Sasha Sanches   (2007-05-29 17:02) [3]

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


← →
MBo ©   (2007-05-29 17:14) [4]

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


← →
Sasha Sanches   (2007-05-29 21:13) [5]

2 MBo: спасибо...а ссылку можно? Желательно, чтобы в Delphi примеры были...



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.02 c
15-1179906322
Сатир
2007-05-23 11:45
2007.06.24
Переход с Indy 9.0 на Indy 10.0 (вопрос для знатоков Indy)


4-1168772377
gibz
2007-01-14 13:59
2007.06.24
импорт функций в delphi 7


15-1180331454
Kolan
2007-05-28 09:50
2007.06.24
Не поделитесь ли функцией «Обратное преобразование фурье»?


6-1164825746
Wahnsinng
2006-11-29 21:42
2007.06.24
Определение соединения с интернетом


8-1160305271
AlterEgo of WondeRu
2006-10-08 15:01
2007.06.24
"DirectShow по-русски"




   Наверх