How to detect sequence signal explicitly
조회 수: 1 (최근 30일)
이전 댓글 표시
hi all
let say i have vector signal V (1x5): V=[2 4 1 7 9]
how we can get in which position is our signal:
for example, by V, then 4 is signal number 2 or 9 is signal number 5. how we can get like that in simulink???
thanks
댓글 수: 0
채택된 답변
Doug Eastman
2011년 7월 13일
If you are using R2010a or later you can use the Relational Operator block in Logic and Bit Operations to compare the vector V and the signal S using the == operator, then send that output to the Find Nonzero Elements block in Math Operations.
댓글 수: 2
Doug Eastman
2011년 7월 13일
From what I understand you want a system with two inputs and one output. One input is a vector (V), say [2 4 17 7 9], the other is a signal (S), say 7. You want the output to be the position of S in V, in this case 4. Is that right?
If so, that's exactly what I'm describing above. The relational operator will output a vector [0 0 0 1 0] where S==V, then the find block will output the index of that location, in this case 4. Make sense?
추가 답변 (1개)
Luhur
2011년 7월 14일
댓글 수: 2
Doug Eastman
2011년 7월 14일
Yes one of the limitations of this block is that it will need to be run with a discrete sample time. Is that acceptable? If so, you can enter the sample time in the block (i.e. enter 0.01 if you want the block to run 100 times a second).
참고 항목
카테고리
Help Center 및 File Exchange에서 Simulink Functions에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!