dccharacter » 23 июн 2012, 14:17
Модифицировал серву HD1501MG под постоянное вращение. Переменный резистор переделал в цифровой энкодер на базе AS5040. Написал простенькую прогу:
-Подаем импульс 1,8мс - серва крутится вперед, считаем тики.
-Как набегает -4098 тиков, подаем импульс 1,5мс, выводим значение тиков в терминал, серва останавливается.
-После того, как серва остановилась, выводим еще раз значение тиков в терминал
-Подаем импульс 1,2мс - серва крутится назад, считаем тики.
-Как набегает 4098 тиков, подаем импульс 1,5мс, выводим значение тиков в терминал, серва останавливается.
-После того, как серва остановилась, выводим еще раз значение тиков в терминал
Разрешение энкодера - 1024 тика на оборот
Начальное значение - 32767
При вращении обратно в момент отдачи команды на остановку - 28668, после полной остановки 28408.
При вращении прямо - 36866 при отдаче команды и 36964 после полной остановки
Пока не пойму - накапливается ошибка из-за дребезга энкодера или нет. Уже только на след неделе получится поэкспериментировать.
Мой волшебник это я сам. Всю архитектуру программы придумал лично, а ребята помогли воплотить её. Я бы и сам мог написать, но лень учить язык и его конструкции.