Цитата(AlexSpb @ 21.7.2011, 23:29)
ох ...уже можно подводить итоги.
Далее формулирую последний вариант ТЗ на NC-плату (со всеми последними предложениями).Пробежался по всему топику,
собрал более-менее полезную информацию по ТЗ.
(может чего и упустил, так поправьте) Техническое Задание
Преамбула:Сегодня, многие хоббисты, для управления станком используют
чисто программную систему управления + LPT-порт.
В основном есть три варианта -
TurboCNC, MACH и EMC2Под Windows работает только Mach
По этой причине он более ходовой у хоббистов.
Виду того, что Windows не является операционкой реального времени
накладываются очень жетские ограничения на настройки ОС и запуск других программ.
Иногда выскакивают сбои (это из-за того что Windows не RT-система (не
Real-Time ОС)
Еще огромный минус - его нельзя запустить под Семеркой.
С этим сталкиваются все, кто активно использует MACH.
C
EMC2 ситуация намного лучше.
Эта система работает намного стабильней
MACH-а,
т.к. она использует операционку реального времени - RTAI.
Но периодически возникают непредолимые траблы при подборе аппаратуры,
и чем новее системы, тем чаще возникают эти траблы.
Есть еще
TurboCNC,
он крайне стабильный, даже постабилней будет чем EMC2.
но он работает в текстором режиме, что не удобно и давно морально устарело.
Цель проекта:Создание системы не критичной к RT-проблемам операционной системы Windows,
а также не критичной к RT-проблемам аппаратуры ПК.
Реалицация:Создание полноценного NC-модуля, в котором крутится вся RT-математика
На ПК крутится только GUI и необходимая предварительная подготовка УП.
Функциональность:Три одновременно интерполируемые оси (опция - плюсс три поворотные оси).
Точность 0,001 мм
Диапазон перемещений +/- 10 метров.
Поддержка стандартного G-кода (FANUC-совместимый формат)
Поддержка больших УП (по крайней мере, должен обрабатывать УП до 512 Мегабайт, а если получится можно и больше)
Поддержка управления STEP/DIR (либо CW/CCW).
Частота генерации шагов - до 2-ух МГц
Предпросмотр кадров (технология Look-ahead) глубиной не менее 50-100 кадров
В качестве GUI используется PC-компьютер.
Вся NC-математика делается во внешнем RT-контроллере.
Требования к компьютеру для GUI - надо сразу закладывать, мин. под "Семерку"
Интерфейс с GUI-компьютером - Ethernet (по TCP-протоколу).
несколько дополнительных цифровых входов/выходов которыми можно управлять из G-кода (берем пример с EMC2).
ШИМ выход управления скоростью шпинделя;
возможность подключение внешнего пульта управления непосредственно к RT-модулю;
Система защиты от сбоев электропитания.
Процессор RT-модуля:Разрядность – 32.
Обязательно наличие блока FPU (float point модуль).
?Тип процессора – DSP, ARM или что то другое. Этот вопрос пока обсуждается.
?Частота процессора, думаю, мин 100 МГц.
? Возможен вариант на FPGA с поддержкой интегрируемого процессора NIOS II
? ПП – двухслойка (по возможности, - четырех-слойка)
Архитектура:Пример данных обмена между GUI и NC-модулем:
Mx0000.000y0000.000z0000.000a0000.000s1200
Mx0100.000y0050.000z0010.000a0000.000s1200
Mx0200.000y0100.000z0060.000a0000.000s1200
где М это перемещение по осям x0200.000 y0100.000 z0060.000 a0000.000 , S1200 скорость перемещения.
команды подразумевают какие либо события - вкл/откл шпинделя, наезд на лимит и т.д.
контролер отрабатывает мгновенно любые команды "стоп" "пауза" "вознобновить" "очистка буфера" "скорость ХХ" "сработал лимит ..." "ошибка перемещения" "аварийная остановка" "нажата кнопка ..." "СОЖ несосает" "перегрев" "а тут хз что - хочу оператора"
буфер для данных может быть любым и работает по принципу фифо.
Другими словами, в NC-плату, мы передаем, теже данные, что и в исходном G-коде,
только в облегченном формате, чтобы не тратить ресурсы NC-платы
на вычленение координат каждой точки заданной в исходном G-коде.
Фактически в NC-плату передается тот-же G-код, но только в подготовленном виде,
для его скоростного анализа.
Под вопросом (
Здесь не обязательная функциональность, и реализуемость этого зависит от необходимости и от требуемого уровня сложности)
модуль кинематика для создания непрерывной многоосевой обработки + RTCP;
Еще какие нюансы? Дополняйте.