Позвольте присоединиться к дискуссии? Собираюсь строить сим, но пока ничего из железа нет. Повторить изделие Таноса - вопросов нет, но как-то не комильфо, тем более, что есть тема все же сделать свой "универсальный" контроллер. Опыт работы с AVR достаточно большой, особенно на ассемблере, но и на CVAVR уже пару лет. С USART никаких проблем, принимаем, передаем, адресуем .
Собственно, для начала хотел бы прояснить несколько вопросов
1 - известен ли протокол, по которому контроллер обменивается с компом? т.е. "формат" сообщения?
2 - есть ли возможность модифицировать этот протокол на предмет включения в него адреса контроллера, если мы собираемся делать контроллер на каждую ось? Просто от этого зависит и сама возможность создания универсального "одно-осевого" контроллера.
3 - список параметров, передаваемых софтом на контроллер для управления осью (скорость, направление, дистанция???)
4 - как в софте реализуется возможность масштабирования, т.е перхеода от 2dof к 3dof и так далее...
5 - как я понимаю, в управлении собственно осью должен быть задействован алгоритм регулирования с настраиваемыми параметрами разгона и торможения?
Если что не в тему, извиняйте. Я тут человек новый, не все еще смог охватить.
Что касается структуры - то действительно видится адресуемый (на дип-переключателях) модуль для управления аналогоавым (ШИМ) или шаговым драйвером с обратной связью по положению и двумя концевиками. Связь с компом - через переходник RS-232 (5В) <> USB ( мы юзаем FTDI )
Преобразователь один, а линии RS для всех контроллеров в системе объединяются в параллель (с нормально-отключенными передатчиками). Вся система работает в режиме 1- мастер (Комп) - все остальные - слэйвы.
Вот как-то так
(Добавление)
Кстати, совсем не обязательно использовать Мегу в таком проекте. Вполне можно обойтись 20-ножечным AtTiny167, к примеру. У него все необходимое на борту имеется