eddy_em: (Костерок)
[personal profile] eddy_em
Сгоревший драйвер L6208 я заменил, выполнил отладку всяких глюков. Осталось совсем немного (что-то подглючивает счет шагов после того, как я добавил ускорение на старте шаговиков, да и после этого же перестал работать поворот турелей на заданную позицию).
Отладка системы управления
Отладка


Итак, на сегодняшний день система умеет:
  • Двигать моторы на заданное число шагов, останавливая подвижки при упоре в концевик и приостанавливая турели на фиксированных позициях для точного определения номера позиции (напряжение с обмоток движка снимается и подпружиненный упор доводит турельку до нужного положения). На старте двигатели раскручиваются с ускорением (первый шаг — за 10 тактов, второй — за 9 и т.д.), чтобы преодолеть усилие пружины, фиксирующей турель.

  • Устанавливать турели в заданные (по номеру) позиции, выбирая наиболее оптимальное направление вращения.

  • Измерять сопротивление платиновых TRD. Кстати, я был приятно удивлен, произведя вчера калибровку АЦП: вот эти 0.1% резисторы (брались не из-за класса точности, а т.к. у них наиболее низкие температурные отклонения из аналогичных (за вменяемую цену) позволили измерять сопротивление в рабочем диапазоне (даже шире: я проверял от 78 Ом до 1520 Ом) с точностью не хуже 0.2% (я такого от АЦП микроконтроллера не ожидал).

  • Работать с TRD в тестовом режиме — через внешний АЦП.

  • Управлять затвором (с диагностикой обрыва, КЗ и перегрева). Кстати, мост TLE5205, через который я разряжаю кондер 2200мкФ на обмотку затвора, при усердном щелкании затвором вообще не нагрелся. И не выдавал ошибок (я боялся, что будут проблемы из-за того, что в первые микросекунды через мост течет высокий ток), кроме обрыва (при отключении затвора) и КЗ (я проверял несколько раз — все в порядке).

  • Измерять напряжения питания (+12В на шаговики, +36В на кондее затвора).

  • Сохранять во флеше калибровочные коэффициенты (жаль, EEPROM нет на STM32F103).


Еще у меня сделаны зачатки, необходимые для работы с 1-wire (я сделал почти полностью аппаратно — на таймере с DMA), но не завершен код более высокого уровня. Планирую при помощи DS18S20 измерять температуру внутри корпуса контроллера + температуру корпуса криостата (по разности температур криостата и воздуха можно судить о том, насколько хорош вакуум внутри криостата; хоть вакуумметр тоже в системе будет, но лучше иметь свой независимый способ).

Общее количество строк (включая комментарии, отладку и мусор) в проекте уже превысило 5000. Вот такая вот система управления. Вроде бы, никакого функционала, а черт-те сколько уже накатал...
This account has disabled anonymous posting.
If you don't have an account you can create one now.
HTML doesn't work in the subject.
More info about formatting

If you are unable to use this captcha for any reason, please contact us by email at support@dreamwidth.org

October 2025

S M T W T F S
   1234
567 89 1011
121314 15161718
19202122232425
2627 28293031 

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Feb. 28th, 2026 02:12 am
Powered by Dreamwidth Studios