Michael_K писал(а):
A!!! Наконец-то понял о чем вы!
Michael_K писал(а):
Ну, в общем, задача у меня такая:мне нужно интерполировать не в шаги, а кусочно-линейно...
Попробую еще аргументы привести против вашей идеи о кусочно-линейной интерполяции. Вобщем, стал я вспоминать разговор с одним спецом по электроприводу, так вот, когда я ему предлагал подобный вариант (причем даже не кусочно-линейную, а сплайн-интерполяцию) он сказал примерно следующее: - нет нафиг, хорошего из этого не выйдет, ты мне, говорит, передавай элементарные приращения и для каждого время, а про остальное забудь. Вот. Я уж не помню что он говорил, почему так. Ну да ладно... Сам вот что подумал:
Вот представь себе (ничего что все-таки на ты?) приводу нужно отработать заданную криволинейную траекторию, но не просто отработать, а за строго определенное время (чтобы соблюсти, например, скорость подачи, скоростные характеристики моторов). Так? Ну вот а теперь подумай, как ты будешь сшивать эти отрезки во времени, и самое интересное, что из себя будет представлять алгоритм ускорения-торможения! Или на каждом отрезке вначале надо будет разогнаться, а в конце затормозить? Если так - будет полная фигня. Поэтому аглоритму, который рассчитывает временные интервалы должен быть доступен весь кадр, а еще лучше вся программа.
Michael_K писал(а):
Сами алгоритмы есть, но как оказалось, G-кодов столько разных вариантови команд, что этот кусок (парсер Г-кода) хочется готовый поиметь.Слишком сложно в тестировании...
Да, насчет алгоритмов (кусочно-линейных) подумал - полно их готовых даже.
Насчет G-кода и парсера все довольно просто - можно отдельно пообщаться на эту тему. Думаю что мог бы помочь. В следующей версии программы будет примерно такие информационные потоки:
Код:
УП -> КП(xml) -> ТР+ЭА(битовые маски) -> ТР+ЭА+В (битовые маски с метками времени)
где
- УП - управляющая программа (может быть Ж-код, HPLG, DWG, да хоть BMP, да что угодно...), транслируется в КП;
- КП - каноническая программа (каждый кадр самодостаточен, может быть обработан и выполнен отдельно от всей программы), наброски системы команд этого языка здесь - внимание! это черновик... и об xml там пока нет ни слова. Я попробовал, в xml кадры укладываются идеально
- ТР+ЭА(битовые маски) - по две 32-битных маски на каждый шаг, первая - протокол step-dir, вторая - электроавтоматика
- ТР+ЭА+В (битовые маски с метками времени) - здесь добавляется метка времени.
Так вот, если все-таки кусочно-линейная, то почему бы не присоединиться к этому проекту и не подключать свою программу к обработке КП? Задача чистки, парсинга и пр. уже решена, имеется фиксированный формат данных, каждый кадр содержит исчерпывающую о себе информацию.... велкам!
Michael_K писал(а):
Тут, мне кажется, проще что-то более подходящее поискать или даже с нуля наваять, чем вашу прогграммку адаптировать, хотя вам, конечно, виднее.
С свете аргумента про временные характеристики, рассмотри этот вопрос.
_________________
Не желайте мне удачи - удача для неудачников, лучше пожелайте мне успеха.
GIGAMESH.RU