MAL4X Научно-технический форум разработчиков симуляторов и автоматики


Симуляторы перегрузок. DIY электроника. ЭВМ. Компьютерные сети.
Up

Симулятор от taran_ob

Строим реалистичный симулятор перегрузок своими руками. Рекомендации. Советы.

Модераторы: Death_Morozz, null, Ale

Re: Симулятор от taran_ob

Сообщение Ale » 02 мар 2013, 13:44

taran_ob писал(а):Мужчины, нужна ваша помощь!
Пока занимаюсь отладкой, хочется услышать ваши замечания по поводу функционала который я пытаюсь вложить.

Не сочти за игнор, но дел навалилось столько, что не могу пока ничем помочь. (( Разберусь, обязательно поучаствую...
Аватара пользователя
Ale
Разработчик
 
Сообщения: 1477
Зарегистрирован: 01 фев 2011, 20:48
Откуда: Дубна
Благодарил (а): 570 раз.
Поблагодарили: 595 раз.
Баллы репутации: 277
ТехнарьТехнарьТехнарь

Re: Симулятор от taran_ob

Сообщение taran_ob » 03 мар 2013, 22:31

спасибо
taran_ob
Комсорг
 
Сообщения: 137
Зарегистрирован: 27 окт 2012, 22:05
Откуда: Ukraine
Благодарил (а): 5 раз.
Поблагодарили: 11 раз.
Баллы репутации: 19
Новичок

Re: Симулятор от taran_ob

Сообщение kuzevan » 05 мар 2013, 12:08

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_CONFIG

READ_POSITION_RANGE Прочитать диаппазон позиции определенный в цикле калибровки.
READ_KOEF_NORM Прочитать коэффициент нормирования позиций 0-255 к диапазону позиций энкодера. Определяется в цикле калибровки.
READ_VELOCITY_MAX Прочитать максимальную скорость при заданном макс. ШИМ. Определяется в цикле калибровки.

Как то так :?

Интересно, а какая программа будет пересылать эти команды на контроллер? И зачем?
Аватара пользователя
kuzevan
Парторг
 
Сообщения: 60
Зарегистрирован: 25 окт 2011, 17:17
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Баллы репутации: -6

Re: Симулятор от taran_ob

Сообщение taran_ob » 05 мар 2013, 13:34

kuzevan писал(а):Интересно, а какая программа будет пересылать эти команды на контроллер? И зачем?

Как зачем? Чтоб играть! Как минимум xSimCTRLv2.
taran_ob
Комсорг
 
Сообщения: 137
Зарегистрирован: 27 окт 2012, 22:05
Откуда: Ukraine
Благодарил (а): 5 раз.
Поблагодарили: 11 раз.
Баллы репутации: 19
Новичок

Re: Симулятор от taran_ob

Сообщение taran_ob » 05 мар 2013, 15:19

Что касается остальных команд (будет еще пару), так это минимальный инструментарий, посредством которого пользователь, а может быть и управляющая программа на пк, смог бы провести цикл настройки контроллера - задать траекторию, выполнить измерение, изменить коэффициент и при этом ничего не спалить. От пользователя достаточно было бы знать только максимальный ток двигателя. Далее по току (обратная связь предусмотрена) определяется максимальный ШИМ. По макс. ШИМ - определяется макс. скорость. Уменьшением шим - можно определить соответствующую ему минимальную скорость двигателя. По полученным базовым данным, можно определить и коэффициенты PIV. В принципе, нужно определить всего PI, так как коэффициент V (kp в контроллере ALE), при стабилизированной скорости по PI, является фиксированным временем в течении которого планируется погасить рассогласование позиции - период расчета (период сервоцикла), и не должен зависеть от конструкции и привода сима.
Вот так мне все видится....
taran_ob
Комсорг
 
Сообщения: 137
Зарегистрирован: 27 окт 2012, 22:05
Откуда: Ukraine
Благодарил (а): 5 раз.
Поблагодарили: 11 раз.
Баллы репутации: 19
Новичок

Пред.

Вернуться в X-SIMULATOR и RU-SIMULATOR & SimTools

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 185

cron
x

#{title}

#{text}