taran_ob писал(а):Команды:
RESET_CONTROLLER Перезагрузить контроллер. Без ответа. Широк. и индив. запрос.
SAVE_CONST_TO_EEPROM Записать константы находящиеся в оперативной памяти контроллера в еепром. Контроллер отправляет эхо для подтверждения принятия запроса.
LOAD_DEFAULT_CONST Загрузить константы "по умолчанию" в оперативную память. Контроллер отправляет эхо для подтверждения принятия запроса.
Команды ниже относятся к записи и чтению оперативной памяти.
WRITE_NORM_POSITION Записать нормированную (0-256) позицию,
без ответа. При широк. запросе координата в мл. байте. При индив. - в мл. байте координата, в ст. байте ШИМ 1125Гц, для коммутации интеллектуального мосфета который может управлять вибромотором (при поддержке управляющего софта) или чего то еще.
WRITE_POSITION Записать позицию в размерности квадратур энкодера из диапазона 0-32767. Ответ - текущее значение.
WRITE_VELOCITY Записать +-скорость (частоту), следования квадратур для режима настройки в котором осуществляется стабилизация скорости по ПИ закону. Знак определяет направление. С энкодером на N=15 эта частота совпадает с частотой вращения двигателя Fдвиг=Fэнк*4N/60 в об/мин. Ответ - текущая скорость.
WRITE_PWM_MOTOR Записать ШИМ из диапазона (задается командами ниже) от -pwm_max до -pwm_min и от +pwm_min до +pwm_max, для режима настройки в котором можно выполнить проверку моста или отладить ограничение тока мотора. Знак определяет направление. Ответ - текущая скорость.
WRITE_PWM_VIBRO Записать ШИМ виброматора. Ответ - текущее значение.
WRITE_KOEF_PROP Записать пропорциональны коэффициент контура стабилизации скорости. Ответ - текущее значение.
WRITE_KOEF_INT Записать интегральный коэффициент контура стабилизации скорости.
WRITE_KOEF_VEL Записать коэффициент пропорциональности ошибки позиции и скорости необходимой для устранения ошибки за фиксированное время (пока задал 10 мс), для контура стабилизации позиции. Ответ - текущее значение.
WRITE_PWM_MIN Записать мин шим мотора. Ответ - текущее значение.
WRITE_PWM_MAX Записать макс шим мотора. Ответ - текущее значение.
WRITE_SOFT_LIMIT Записать размер (число квадратур) мертвой зоны до концевика. Ответ - текущее значение.
WRITE_PWM_REF Записать шим для формирования опорного напряжения компаратора обратной связи по току. Пока только для ограничения тока двигателя. Ответ - текущее значение.
WRITE_CONFIG Записать режим управления: калибровка положения и максимальной скорости, стабилизация позиции, стабилизация скорости, регулировка ШИМ. Дополнительные режимы с управлением от потенциометра: стабилизация позиции, стабилизация скорости, регулировка ШИ. В дополнительных режимах заданный и контролируемый параметр передается с частотой 10Гц в ASCII коде для приема данных любым терминалом.
WRITE_USART_BAUND Записать скорость порта. Ответ - текущее значение.
WRITE_ID Записать идентификатор контроллера. Ответ - текущее значение.
READ_POSITION
READ_VELOCITY
READ_PWM_MOTOR
READ_PWM_VIBRO
READ_KOEF_PROP
READ_KOEF_INT
READ_KOEF_VEL
READ_PWM_MIN
READ_PWM_MAX
READ_SOFT_LIMIT
READ_PWM_REF
READ_CONFIGREAD_POSITION_RANGE Прочитать диаппазон позиции определенный в цикле калибровки.
READ_KOEF_NORM Прочитать коэффициент нормирования позиций 0-255 к диапазону позиций энкодера. Определяется в цикле калибровки.
READ_VELOCITY_MAX Прочитать максимальную скорость при заданном макс. ШИМ. Определяется в цикле калибровки.
Как то так