Страница 1 из 1

Как остановить цикл и не только

Добавлено: 14 апр 2018, 13:36
Nikol
Добрый день. Я разрабатываю программу для регулирования угла поворота солнечных батарей(программа представлена ниже). Суть программы: на входе напряжение на выходе соответствующий угол, регулирование происходит через 1 градус, управляющий сигнал для этого поворота логический сигнал T/F. В начале происходит поворот на 360 градусов через поворот на 1 градус фиксируя при этом значение напряжения при каждом угле. Затем находится максимальное напряжение и угол соответствующий этому напряжению и выдается должное количество управляющих сигналов. После идёт проверка относительно найденного максимума, если напряжение падает на 15% то происходит сдвиг на 1 градус и выдается должное количество управляющих сигналов.
Суть вопроса:
1) Будет ли в моей программе осуществляться остановка цикла поворота на 360 градусов после после выполнения заданного числа интераций(360);
2) Как просуммировать управляющие сигналы, те как прибавить нужное количество сигналов к уже имеющимся и все это грамотно отобразить( к примеру отобразить водном окне все поступившие сигналы при нахождении максимума одним цветом, а другим показать сколько добавилось при изменении входного напряжения)
Помогите разобраться.Буду крайне признателен за помощь и подсказки.

Re: Как остановить цикл и не только

Добавлено: 14 апр 2018, 16:09
IvanLis
Вы реальной установкой планируете управлять или это абстрагированная модель?
1) Будет ли в моей программе осуществляться остановка цикла поворота на 360 градусов после после выполнения заданного числа интераций(360);
да
2) Как просуммировать управляющие сигналы, те как прибавить нужное количество сигналов к уже имеющимся и все это грамотно отобразить( к примеру отобразить водном окне все поступившие сигналы при нахождении максимума одним цветом, а другим показать сколько добавилось при изменении входного напряжения)
с этим сложнее, т.к. сейчас у Вас никак входное напряжение не изменяется.

По хорошему Вам нужно менять модель программирования.
Используйте например : State Machine
Разбивать всю задачу на составные элементы, нарисовать граф переходов, а уже после этого приступать к программной реализации.

Re: Как остановить цикл и не только

Добавлено: 21 апр 2018, 11:20
Nikol
По хорошему Вам нужно менять модель программирования.
Используйте например : State Machine
Спасибо попробую так сделать.
Вы реальной установкой планируете управлять или это абстрагированная модель?
Модель вымышленная но входной сигнал в дальнейшем будет выдаваться специальным модулем от NI и проверятся на оборудовании той же компании NI
да
А не подскажите как засунуть поиск максимального напряжения и проверку на падение напряжения в цикл? А то в моем случае получается что управляющий сигнал будет выдан 1 раз.Есть предположение что нужно использовать Shift Register но как пока не могу понять...