Как скопировать данные из Simulink Powergui Load Flow Tool в массив в Matlab?

Я разработал процесс полуавтоматизации Simulink Load Flow Tool, чтобы позволить непрерывно вычислять поток нагрузки для различных значений нагрузки. Каждый раз, когда вычисляется поток нагрузки, я требую, чтобы данные копировались из инструмента потока нагрузки Powergui (буфер обмена) в массив, в настоящее время я делаю это вручную и не могу найти способ автоматизации. Чтобы дать ссылку на данные, которые мне нужно скопировать из буфера обмена, я приложил следующее изображение: Powergui Load Flow Tool, на данном этапе мне нужно только скопировать данные из 2-го столбца.

Возможно, более общий вопрос - как скопировать данные из Simulink Simulation GUI в массив в Matlab?

Любая помощь будет принята с благодарностью! Спасибо

1 ответ

Вы можете использовать команду power_loadflow для выполнения потока загрузки и сохранения результатов.

Например, если вы запустите симуляцию встроенной 5-шинной системы Matlab,

LF = power_loadflow('-v2','power_LFnetwork_5bus','solve')

LF - это структура, в которой хранятся все результаты, поэтому вы можете сохранить эту переменную в рабочем пространстве Matlab. Вы также можете сохранить результаты в файле Excel следующим образом:

LF = power_loadflow('-v2','power_LFnetwork_5bus','solve','ExcelReport',fname)

редактировать

Чтобы экспортировать в Excel: данные потока загрузки в любом случае сохраняются в переменной LF, Вы можете поместить следующую команду в свой цикл, чтобы скопировать результаты в ваш файл Excel.

xlswrite('results_bus',cellstr(num2str([LF.bus.Vbus]')))

я использовал cellstrа также num2str чтобы сохранить сложные результаты, чтобы преуспеть. LF.bus.Vbus вектор, в котором хранится результат напряжения шины.

Другие вопросы по тегам