TCP communication in real time simulink
조회 수: 15 (최근 30일)
이전 댓글 표시
I am trying to send TCP messages from a simulink model that is running realtime on a target computer. Matlab says that TCP is supported in realtime simulink but I only see a TCP block in Instrument control box. Also when I try to use those blocks and build the model on the target computer, it gives the following error:
Error evaluating registered method 'Start' of MATLAB S-Function 'stcpipsb' in 'testing_TCP/TCP//IP Send'.
Caused by:
The block TCP/IP Send could not connect to the specified port. Please specify a different port or wait for the current port to become available.
I have configured the IP address of the TCP block to be that of the target computer and used different port numbers like 22222 (which is what I have configured in the simulink realtime explorer), 30000, 30, 10 all to no avail. Where is it going wrong and what is causing the error?
댓글 수: 0
채택된 답변
Prashant Arora
2017년 10월 18일
편집: Stefanie Schwarz
2023년 7월 21일
HI Rajashree,
There is a TCP Send block in the Simulink Real-Time library, which you should use for sending data from a Target computer to another remote device.
You can check out the following example, which shows communication between two targets using TCP/IP.
Check the TCP configuration blocks in the example to understand the IP address and port specification for communication.
추가 답변 (1개)
THOMAS JOHN
2019년 9월 24일
Hello Prashant
I am a researcher currently doing a project related to signal transmission & reception using TCP & UDP. At the moment, I am able to achieve signal transmission and reception using TCP in normal non-real time MATLAB/Simulink but I am unable to achieve signal reception when I do real-time operation using TCP in MATLAB/Simulink.
Do I need to use real-time TCP/UDP models or is there any other option? The problem is that my remote receiver do not have a real-time simulink library & real-time TCP/UDP blocks. Please kindly suggest an alternative solution if possible. Many Thanks.
Best Regards
Dr Thomas John
댓글 수: 1
Andrea Assorati
2019년 11월 2일
For real-time applications, in MATLAB command line i used 'flushinput' command to clean the input buffer and just delete the data in eccess. I am unable to make this operation in Simulink too.
참고 항목
카테고리
Help Center 및 File Exchange에서 Development Computer Setup에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!