Добрый день!
Работаю с микроконтроллером фирмы TI F28335. Использую его для создания системы регулирования скорости двигателя. Но для этого мне жизненно необходимо узнать для начала, сколько по времени работает контур регулирования тока, а лучше наглядно это увидеть. Сам КРТ вызывается с помощью блока C28x Hardware Interrupt и Function-Call Subsystem. Есть идея как-то сделать так, чтобы в начале работы контура на цифровой выход контроллера подавалась единица и соответственно в конце - ноль. Тогда я смог бы снять этот сигнал на осциллографе. НО! Проблема в том, что в Simulinke я не могу точно указать где начало, а где конец обработки. Так как блоки Simulinka переводятся в код на Си по своей какой-то логике и со своим порядком команд.
Может быть кто-то знает как это сделать? Может есть легче способ? Буду очень признателен любой помощи
Измерение времени работы контура
-
publicrebel
- Родился
- Сообщения: 3
- Зарегистрирован: Пн янв 05, 2015 12:29:15
- Реклама
Re: Измерение времени работы контура
Тут есть два варианта.Так как блоки Simulinka переводятся в код на Си по своей какой-то логике и со своим порядком команд.
Либо разобраться, что это за логика и порядок команд, выделить нужный блок и соответственно модифицировать его, либо написать новый код на Си, без всяких симулинков. Других путей не вижу. Рекомендую второй путь.
Разница между теорией и практикой на практике гораздо больше, чем в теории.
-
publicrebel
- Родился
- Сообщения: 3
- Зарегистрирован: Пн янв 05, 2015 12:29:15
Re: Измерение времени работы контура
Боюсь, что задача стоит именно разработка данной программы в Simulink. Решение данной проблемы на С была бы куда легче.
Была еще одна идея - блоки библиотеки Stateflow. В блоке Chart есть возможность задавать порядок команд и использование Simulink блоков. Но возникла проблема с тем, что для работы данного блока нужен какое-то событие (EVENT). Но я так и не смог придумать, какое бы событие подошло бы в данном случае? Может кто-то подскажет как это реализовать с Stateflow?
Была еще одна идея - блоки библиотеки Stateflow. В блоке Chart есть возможность задавать порядок команд и использование Simulink блоков. Но возникла проблема с тем, что для работы данного блока нужен какое-то событие (EVENT). Но я так и не смог придумать, какое бы событие подошло бы в данном случае? Может кто-то подскажет как это реализовать с Stateflow?
- GARMIN
- Держит паяльник хвостом
- Сообщения: 954
- Зарегистрирован: Вс дек 02, 2012 16:58:33
- Откуда: от туда
- Контактная информация:
Re: Измерение времени работы контура
Правильно было бы задавать время работы контура по таймеру. Вычисления недетерменированы по времени. Выставь флаг готовности на ножку после окончания цикла расчёта контура и посмотри осциллографом.

