Измерение времени работы контура

Если ваш вопрос не влез ни в одну из вышеперечисленных тем, вам сюда.
Ответить
publicrebel
Родился
Сообщения: 3
Зарегистрирован: Пн янв 05, 2015 12:29:15

Измерение времени работы контура

Сообщение publicrebel »

Добрый день!
Работаю с микроконтроллером фирмы TI F28335. Использую его для создания системы регулирования скорости двигателя. Но для этого мне жизненно необходимо узнать для начала, сколько по времени работает контур регулирования тока, а лучше наглядно это увидеть. Сам КРТ вызывается с помощью блока C28x Hardware Interrupt и Function-Call Subsystem. Есть идея как-то сделать так, чтобы в начале работы контура на цифровой выход контроллера подавалась единица и соответственно в конце - ноль. Тогда я смог бы снять этот сигнал на осциллографе. НО! Проблема в том, что в Simulinke я не могу точно указать где начало, а где конец обработки. Так как блоки Simulinka переводятся в код на Си по своей какой-то логике и со своим порядком команд.
Может быть кто-то знает как это сделать? Может есть легче способ? Буду очень признателен любой помощи
Реклама
Аватара пользователя
YS
Друг Кота
Сообщения: 7518
Зарегистрирован: Вс мар 29, 2009 22:09:05
Контактная информация:

Re: Измерение времени работы контура

Сообщение YS »

Так как блоки Simulinka переводятся в код на Си по своей какой-то логике и со своим порядком команд.
Тут есть два варианта.

Либо разобраться, что это за логика и порядок команд, выделить нужный блок и соответственно модифицировать его, либо написать новый код на Си, без всяких симулинков. Других путей не вижу. Рекомендую второй путь.
Разница между теорией и практикой на практике гораздо больше, чем в теории.
Реклама
publicrebel
Родился
Сообщения: 3
Зарегистрирован: Пн янв 05, 2015 12:29:15

Re: Измерение времени работы контура

Сообщение publicrebel »

Боюсь, что задача стоит именно разработка данной программы в Simulink. Решение данной проблемы на С была бы куда легче.
Была еще одна идея - блоки библиотеки Stateflow. В блоке Chart есть возможность задавать порядок команд и использование Simulink блоков. Но возникла проблема с тем, что для работы данного блока нужен какое-то событие (EVENT). Но я так и не смог придумать, какое бы событие подошло бы в данном случае? Может кто-то подскажет как это реализовать с Stateflow?
Аватара пользователя
GARMIN
Держит паяльник хвостом
Сообщения: 954
Зарегистрирован: Вс дек 02, 2012 16:58:33
Откуда: от туда
Контактная информация:

Re: Измерение времени работы контура

Сообщение GARMIN »

Правильно было бы задавать время работы контура по таймеру. Вычисления недетерменированы по времени. Выставь флаг готовности на ножку после окончания цикла расчёта контура и посмотри осциллографом.
Реклама
Эиком - электронные компоненты и радиодетали
Ответить

Вернуться в «Разные вопросы по МК»