Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.06.24;
Скачать: 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 вся ветка

Текущий архив: 2007.06.24;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.02 c
1-1177574403
intNaked
2007-04-26 12:00
2007.06.24
Компоненты: индикатор отклонения


2-1180031134
DemonP
2007-05-24 22:25
2007.06.24
отлов выхода из спящего режима


2-1180939599
allucard
2007-06-04 10:46
2007.06.24
В чём отличие приведения типов?


8-1159901234
Ah
2006-10-03 22:47
2007.06.24
Просмотр изображений в отдельной папке


15-1180508378
pasha_golub
2007-05-30 10:59
2007.06.24
В Англии удалено упоминание холокоста...