Simulink Instrument Control Toolbox Serial Sendについて

Serial SendのSink ブロックパラメータにおいて,Communication portのドロップダウンリストにCOMポートが一つも出てきません.
MATLABでシリアルポートオブジェクトを作成しなければならないのか?と思い,
>> a = serial('COM1');
>> whos a
Name Size Bytes Class Attributes
a 1x1 242 serial
>> get(a,{'Name', 'Port', 'Type'})
ans =
'Serial-COM1' 'COM1' 'serial'
>> a
Serial Port Object : Serial-COM1
Communication Settings
Port: COM1
BaudRate: 9600
Terminator: 'LF'
Communication State
Status: closed
RecordStatus: off
Read/Write State
TransferStatus: idle
BytesAvailable: 0
ValuesReceived: 0
ValuesSent: 0
>> s = serial('COM2');
>> x = [a s]
Instrument Object Array
Index: Type: Status: Name:
1 serial closed Serial-COM1
2 serial closed Serial-COM2
>> seriallist
関数または変数 'seriallist' が未定義です。
これでseriallist関数により,COM1とCOM2が表示され,Serial SendブロックのCommunication portのドロップダウンリストにCOMポートが二つ出てくると思っていたのですが,seriallistは未定義だといわれ,Serial Sendブロックでも何も出てこないままです. なぜこうなり,どのようにすればSimulinkでCOMポートを認識できるようになるでしょうか.

2 个评论

serial コマンドでオブジェクトを作る必要はありません。
因みに、 seriallist は R2017a に追加された機能なので、もしかしたらそれより前のバージョンを使われているのではないでしょうか。
コマンドウィンドウで
instrhwinfo('serial')
を実行してみてください。何か出てきますか?もしかしたら、COMポートがないのでは?パソコンのデバイスマネージャーでは確認できますか?私の場合は COM3 がありまして、 instrhwinfo と Serial Send ブロックでは COM3 しか表示されません。
jiroさん,ありがとうございます. おっしゃる通り,バージョンは2015aでした.
COM2が存在することは確認できていたので,
>> instrhwinfo('serial')
を実行したところ,
>> instrhwinfo('serial')
ans =
HardwareInfo のプロパティ:
AvailableSerialPorts: {'COM2'}
JarFileVersion: 'Version 3.8'
ObjectConstructorName: {'serial('COM2');'}
SerialPorts: {'COM2'}
Access to your hardware may be provided by a support package. Go to the Support Package Installer to learn more.
とでてきて,SimulinkのSerial SendブロックのパラメーターでCOM2を確認することが出来ました.
本当にありがとうございました.

请先登录,再进行评论。

 采纳的回答

更多回答(0 个)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!