Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2007.06.24;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх





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


15-1180183362
boriskb
2007-05-26 16:42
2007.06.24
Поносов обвинил прокуратуру в пиратстве


2-1180609067
ambhtr
2007-05-31 14:57
2007.06.24
Как удалить строку в текстовом файле?


11-1162384310
vampir_infernal
2006-11-01 15:31
2007.06.24
Увеличение размера файла в KOL 2.41a


3-1175016877
Цукор5
2007-03-27 21:34
2007.06.24
DBase ( Win or DOS ???)





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский