В этом примере показано, как создать отчет, который описывает все объекты шины, используемые моделью Simulink®. Этот отчет создает главу для каждого объекта шины. Каждая глава имеет раздел для иерархии объектов шины, таблицы свойств объектов шины, таблицы свойств элементов шины и списка блоков, которые используют шину.
Импортируйте пакеты API Отчета так, чтобы вы не использовали долго, полностью определенные имена классов.
import mlreportgen.report.* import slreportgen.finder.* import slreportgen.report.*
Откройте модель, которая имеет объекты шины.
model = "sldemo_bus_arrays";
open_system(model);
Создайте и откройте объект отчета. Чтобы создать Word Microsoft®, HTML или однофайловый отчет HTML, изменяет "pdf"
к "docx"
, "html"
, или "html-file"
, соответственно.
rpt = slreportgen.report.Report(model + "_bus_object_report","pdf"); open(rpt);
Добавьте титульный лист и оглавление.
titlepage = TitlePage("Title", model + ": Bus Object Report","Author","John Doe"); add(rpt,titlepage); toc = TableOfContents(); add(rpt, toc);
Найдите все переменные используемыми в модели.
finder = ModelVariableFinder(model);
Цикл через переменное средство поиска заканчивается, чтобы найти объекты шины и отчет относительно них. Используйте getVariableValue
метод, чтобы идентифицировать, какие переменные являются объектами шины. Используйте slreportgen.report.BusObject
генератор отчетов, чтобы сообщить относительно объектов шины.
while hasNext(finder) result = next(finder); if isa(getVariableValue(result),"Simulink.Bus") % Create a Bus object reporter busReporter = BusObject(result); % Create a Chapter chapter = Chapter(busReporter.Name); % Add bus to chapter add(chapter,busReporter) % Add chapter to the report add(rpt,chapter); end end
Закройте и просмотрите отчет.
close(rpt); rptview(rpt);
Чтобы видеть более всесторонний отчет объекта шины, просмотрите asbhl20_bus_object_report.pdf
это доступно с этим примером. У вас должен быть Aerospace Blockset™, чтобы открыть asbhl20
модель.
rptview asbhl20_bus_object_report.pdf
getVariableValue
| slreportgen.finder.ModelVariableFinder
| slreportgen.finder.ModelVariableResult
| slreportgen.report.BusObject
| slreportgen.report.ModelVariable