К1921ВК01Т (арм Cortex-M4F)

32-разрядные микроконтроллеры разработки АО "НИИЭТ"

Модераторы: ea, dav, bkolbov, Alis, pip, _sva_

petrovitch
Сообщения: 111
Зарегистрирован: 15 фев 2017, 18:07

Re: К1921ВК01Т (арм Cortex-M4F)

Сообщение petrovitch »

Снял ряд осциллограмм с двумя синалами (подписаны именами файлов)
MOSI по отношению к nSS.png
MOSI по отношению к nSS.png (16.34 КБ) 10400 просмотров
clk и MOSI начало посылки.png
clk и MOSI начало посылки.png (17.25 КБ) 10400 просмотров
clk и MOSI окончание посылки.png
clk и MOSI окончание посылки.png (17 КБ) 10400 просмотров
Откуда завал в конце посылки MOSI?
Аватара пользователя
Лашкевич
Сообщения: 380
Зарегистрирован: 13 май 2015, 12:10
Предприятие: ООО "НПФ Вектор"
Откуда: Москва
Контактная информация:

Re: К1921ВК01Т (арм Cortex-M4F)

Сообщение Лашкевич »

Ну на 0xa5 похоже. Если с конца посылки смотреть.
С уважением,
Лашкевич Максим.
Инженер-программист ООО "НПФ Вектор", Москва.
http://motorcontrol.ru/
petrovitch
Сообщения: 111
Зарегистрирован: 15 фев 2017, 18:07

Re: К1921ВК01Т (арм Cortex-M4F)

Сообщение petrovitch »

1. Мне теперь интересно откуда завал в сигнале MOSI. Это нормально?
2. Когда идёт опрос датчика, выталкивается 8 бит, размер данных в настройках 12 бит.
Остальные 4 бита автоматически должны заполняться нолями?
Аватара пользователя
Лашкевич
Сообщения: 380
Зарегистрирован: 13 май 2015, 12:10
Предприятие: ООО "НПФ Вектор"
Откуда: Москва
Контактная информация:

Re: К1921ВК01Т (арм Cortex-M4F)

Сообщение Лашкевич »

1. Заваливаться уровень сигнала на MOSI не должен. Покажите на схеме, в какой точке его снимаете. Это сигналы прямо на проце? Попробуйте поменять местами два щупа, может в щупах или настройках осца дело.
2. При опросе датчика главное получить нужное число фронтов клока. Можно что угодно слать в данных. Судя по осцилограмме, остаток заполняется нулями.
С уважением,
Лашкевич Максим.
Инженер-программист ООО "НПФ Вектор", Москва.
http://motorcontrol.ru/
petrovitch
Сообщения: 111
Зарегистрирован: 15 фев 2017, 18:07

Re: К1921ВК01Т (арм Cortex-M4F)

Сообщение petrovitch »

Вот место измерения MISO, только при отпаянной микросхеме U5
Точка съёма MISO.png
Точка съёма MISO.png (60.75 КБ) 10367 просмотров
Аватара пользователя
Лашкевич
Сообщения: 380
Зарегистрирован: 13 май 2015, 12:10
Предприятие: ООО "НПФ Вектор"
Откуда: Москва
Контактная информация:

Re: К1921ВК01Т (арм Cortex-M4F)

Сообщение Лашкевич »

Ну могу только предположить, что после отправки посылки контроллер переводит MOSI в Z состояние, но это надо читать даташит, мои полномочия тут всё. Или ждать ответа разработчиков камня. Для проверки гипотезы подвяжите MOSI к земле резистором типа 10кОм, если MOSI будет в Z состоянии, то сигнал уйдет в ноль в том месте, где раньше он плавно спадал.
С уважением,
Лашкевич Максим.
Инженер-программист ООО "НПФ Вектор", Москва.
http://motorcontrol.ru/
petrovitch
Сообщения: 111
Зарегистрирован: 15 фев 2017, 18:07

Re: К1921ВК01Т (арм Cortex-M4F)

Сообщение petrovitch »

1. Можно ли при пошаговой отладке в IDE увидеть состояние всех регистров FIFO приёмника SPI?

2. В файле V_SSI_Encoder.c используется переменная

Код: Выделить всё

p->Poscnt_res
. Она в формате _iq.
Вопросы: значение должно быть в относительных единицах? Потом, в комментарии сказано, что это механический угол
в метках. Имеется ввиду, что если датчик выдаёт 12-и разрядную величину угла на полный физический оборот, то число меток 4096?
Аватара пользователя
Лашкевич
Сообщения: 380
Зарегистрирован: 13 май 2015, 12:10
Предприятие: ООО "НПФ Вектор"
Откуда: Москва
Контактная информация:

Re: К1921ВК01Т (арм Cortex-M4F)

Сообщение Лашкевич »

1. IDE показывает по сути адреса в памяти контроллера. Скорее всего внутренности FIFO скрыты от пользователя, и доступ только через чтение-запись, через один регистр. И если смотреть на этот один регистр, то весь буфер FIFO не увидеть. Более того, можно просмотром через IDE даже вызвать несанкционированное чтение из FIFO и данные могут потеряться - я бы не стал смотреть...

2. В моём MotorControlDemo переменная Poscnt_res Uint16, и туда почти напрямую сохраняется Data_read из SSI_NT_SPI->SPI_DR. Она не в IQ.
Вложения
2023-10-13_09-20-26.png
2023-10-13_09-20-26.png (16.76 КБ) 9730 просмотров
С уважением,
Лашкевич Максим.
Инженер-программист ООО "НПФ Вектор", Москва.
http://motorcontrol.ru/
petrovitch
Сообщения: 111
Зарегистрирован: 15 фев 2017, 18:07

Re: К1921ВК01Т (арм Cortex-M4F)

Сообщение petrovitch »

Вращение вала двигателя с абсолютным энкодером есть!
Только вот при вращении в UniCON-е параметр скорость (5157.04) всегда 0.
И в коде я не заметил вычисления скорости по показаниям датчика. Может не дописали?

Еще появилась такая проблема с абсолютным энкодером (интерфейс SPI): при задании скорости (режим 5) порядка 300 об/мин, двигатель на короткое время разгоняется и происходит авария по превышению тока одной из фаз. До этого я отстроил систему с инкрементальным датчиком.
Всё управлялось, скорость поддерживалась стабильно в широком диапазоне. В чём может быть причина?
Аватара пользователя
Лашкевич
Сообщения: 380
Зарегистрирован: 13 май 2015, 12:10
Предприятие: ООО "НПФ Вектор"
Откуда: Москва
Контактная информация:

Re: К1921ВК01Т (арм Cortex-M4F)

Сообщение Лашкевич »

1. Да, в модуле V_SSI_Encoder в текущем motorcontroldemo нету расчёта скорости по SSI. Вставьте расчёт по производной угла по мотивам расчёта в QEP где SpeedCalcType==SPEED_CALC_TYPE_BY_SOFT.

2. Чтобы понять, что не так с векторным управлением, нужно смотреть осциллограммы и разбираться. Выкладывайте задания токов, обратные связи токов, выходы регуляторов, угол и т.п. в момент аварии. Будем разбираться
С уважением,
Лашкевич Максим.
Инженер-программист ООО "НПФ Вектор", Москва.
http://motorcontrol.ru/
Ответить

Вернуться в «32-разрядные микроконтроллеры»