Добрый день. Я разрабатываю программу для регулирования угла поворота солнечных батарей(программа представлена ниже). Суть программы: на входе напряжение на выходе соответствующий угол, регулирование происходит через 1 градус, управляющий сигнал для этого поворота логический сигнал T/F. В начале происходит поворот на 360 градусов через поворот на 1 градус фиксируя при этом значение напряжения при каждом угле. Затем находится максимальное напряжение и угол соответствующий этому напряжению и выдается должное количество управляющих сигналов. После идёт проверка относительно найденного максимума, если напряжение падает на 15% то происходит сдвиг на 1 градус и выдается должное количество управляющих сигналов.
Суть вопроса:
1) Будет ли в моей программе осуществляться остановка цикла поворота на 360 градусов после после выполнения заданного числа интераций(360);
2) Как просуммировать управляющие сигналы, те как прибавить нужное количество сигналов к уже имеющимся и все это грамотно отобразить( к примеру отобразить водном окне все поступившие сигналы при нахождении максимума одним цветом, а другим показать сколько добавилось при изменении входного напряжения)
Помогите разобраться.Буду крайне признателен за помощь и подсказки.
Как остановить цикл и не только
-
IvanLis
- guru
- Сообщения: 5467
- Зарегистрирован: 02 дек 2009, 17:44
- Награды: 7
- Версия LabVIEW: 2015, 2016
- Откуда: СССР
- Благодарил (а): 28 раз
- Поблагодарили: 87 раз
Re: Как остановить цикл и не только
Вы реальной установкой планируете управлять или это абстрагированная модель?
По хорошему Вам нужно менять модель программирования.
Используйте например : State Machine
Разбивать всю задачу на составные элементы, нарисовать граф переходов, а уже после этого приступать к программной реализации.
да1) Будет ли в моей программе осуществляться остановка цикла поворота на 360 градусов после после выполнения заданного числа интераций(360);
с этим сложнее, т.к. сейчас у Вас никак входное напряжение не изменяется.2) Как просуммировать управляющие сигналы, те как прибавить нужное количество сигналов к уже имеющимся и все это грамотно отобразить( к примеру отобразить водном окне все поступившие сигналы при нахождении максимума одним цветом, а другим показать сколько добавилось при изменении входного напряжения)
По хорошему Вам нужно менять модель программирования.
Используйте например : State Machine
Разбивать всю задачу на составные элементы, нарисовать граф переходов, а уже после этого приступать к программной реализации.
Знание нескольких принципов освобождает от знания многих фактов!
Правила форума
Как добавить в сообщение картинку или файл
Конвертация / версий (форматов) VI
Как правильно задать вопрос...
Правила форума
Как добавить в сообщение картинку или файл
Конвертация / версий (форматов) VI
Как правильно задать вопрос...
-
- beginner
- Сообщения: 42
- Зарегистрирован: 02 ноя 2016, 16:40
- Версия LabVIEW: 15
- Контактная информация:
Re: Как остановить цикл и не только
Спасибо попробую так сделать.По хорошему Вам нужно менять модель программирования.
Используйте например : State Machine
Модель вымышленная но входной сигнал в дальнейшем будет выдаваться специальным модулем от NI и проверятся на оборудовании той же компании NIВы реальной установкой планируете управлять или это абстрагированная модель?
А не подскажите как засунуть поиск максимального напряжения и проверку на падение напряжения в цикл? А то в моем случае получается что управляющий сигнал будет выдан 1 раз.Есть предположение что нужно использовать Shift Register но как пока не могу понять...да
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
- 3 Ответы
- 630 Просмотры
-
Последнее сообщение IvanLis