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 Comments

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を確認することが出来ました.
本当にありがとうございました.

Sign in to comment.

 Accepted Answer

Kosei
Kosei on 6 Jan 2018
コメントで解決しました.

More Answers (0)

Asked:

on 12 Dec 2017

Answered:

on 6 Jan 2018

Community Treasure Hunt

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

Start Hunting!