Can I have a bus whose elements are buses with several dimensions?
조회 수: 3 (최근 30일)
이전 댓글 표시
Hi there,
I got a header file which is something like:
struct RPO_corners
{
float cod[3];
float orient[9];
float rotVel;
float defl;
float factor;
float TTTT;
};
struct Output
{
struct Vector3 coord,
speed,
accel,
angspeed;
struct Matrix3x3 orientation_matrix;
float value;
float value2;
float value3;
float value4;
int value5;
int value6;
struct RPO_corners corners[4];
};
typedef struct Output Output_T;
typedef struct RPO_corners RPO_corners_T;
The structure Ouput is sent to a c++ app. Therefore I need to create a bus(Ouput) which contains another bus (corners[4]). I have tried to concatenate the 4 corners buses with little success. The fact that "corners" is a vector of a struct is my problem.
When I define Output_T in the bus editor, I'm assuming that I need to specify 4 dimensions for the RP0_corners bus, rite? How can I implement that in Simulink?
Thanks in advance
댓글 수: 0
채택된 답변
TAB
2012년 12월 4일
편집: TAB
2012년 12월 4일
To create the structure in c code you need to create non-virtual bus.
You can create 4 the non-virtual buses (RPO_corners) with the same bus object and concatenate then into an array of bus. This will create a array of structure in resulting code. You can again feed this array to another bus creator (again non-virtual) with other signals to creator to create final structure. In the Bus-Object of final bus set the size of element which is receiving bus array to 4.
See a simple example below
추가 답변 (2개)
Ryan G
2012년 12월 3일
A bus of busses it possible, you can try it manually using Simulink to verify yourself. It sounds like you have a bus, Output, that contains a number of values, a Vector 3 bus, a Matrix3x3 bus and a RPO_corners bus. At least that's how I would define it for Simulink purposes here.
참고 항목
카테고리
Help Center 및 File Exchange에서 Event Functions에 대해 자세히 알아보기
제품
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!