matlabでMODBUS①コンテックCPSN-MCB271-1-041+CPSN-AI-1208LI
コンテックの低価格マイコンCONPROSYSnanoのCPSN-MCB271-1-041本体に、A-Dコンバータ・モジュールCPSN-AI-1208LIを追加した形で、アナログ電圧を収集します。
MODBUS/TCPが動いているので、matlabのアプリInstrument Control Toolboxについてくる(確証がない)Modbus Explorerを使って情報を見ます。
Modbus Explorer
アプリのなかにあるModbus Explorerを起動します。
CPSN-MCB271-1-041には192.168.111.21を振ってあります。見つけてきました。Register Type(ファンクション)からInput Registerを選び、Readの虫眼鏡のアイコンをクリックすると、Read Valueの欄に2559を読み出しました。
ファンクションなどは、こちらの記事を参照してください。
https://www.denshi.club/cookbook/wire/rs485/modbus/modbus-2-l.html
その右にあるConfirm Parametersをクリックします。すると、次の画面になり、自動でデータを読み取って、グラフを描きます。
真ん中の画面Read Registersの左端にあるSelectのReg1をチェックを入れ、上部メニューのGenerate Scriptをクリックすると、ライブエディタが開きます。名前を付けて保存します。
コードを書く
読み取った2559は、10進です。
コンテックCPSN-MCB271-1-041のA-Dコンバータモジュール、
リファレンスマニュアル(ハードウェア編)|CPSN-AI-1208LI/CPSN-AI-2408LI[日本語]
を参考に、アナログ入力コネクタの1ピンAI0と5ピンAGNDにTL431の出力をつないでいます。
コンテックCPSN-MCB271-1-041の
リファレンスマニュアル(ソフトウェア編) | CPSN-MCB271-S1-041/CPSN-MCB271-1-041 [日本語]
には、アナログA-Dコンバータ・モジュールCPSN-AI-1208LI(12ビット)のデータ形式が書かれています。デフォルトでは、±10Vの入力です。この時、入力電圧+0.000000は0x800です。1LSBは0.004883Vです。
Vin0 = double((modbusData.Reg_1 - hex2dec('0x800') ) * 0.004883);
で、電圧に変換できます。マイナスの値は検証していません。
プログラム
20回測定してプロットでグラフを描きます。
% Create a Modbus Object.
m = modbus('tcpip', '192.168.111.21');
m.Timeout = 20;
% Save the Server ID specified.
serverId = 1;
% Input Registers
% Read 1 Input Register of type 'int16' starting from address 1.
count = 20;
V0 = (count);
for i=1:count
modbusData.Reg_1 = read(m, 'inputregs', 1, 1, serverId, 'int16');
Vin0 = double((modbusData.Reg_1 - hex2dec('0x800') ) * 0.004883);
fprintf('Vin0 = %.6f \n', Vin0);
V0(i) = Vin0;
pause(0.1);
end
plot(V0);
% Clear the Modbus Object created.
clear m
% Clear the Server ID.
clear serverId
グラフです。
資料;Webベースのアクセス
コンテックのマイコンには、Webからアクセスできます。デフォルトのパスワードはmcb271です。Modbusの読み出し画面です。
資料;Modbusスキャナ
アナログ・デバイセズ社のWebページ
https://wiki.analog.com/resources/eval/user-guides/eval-adicup3029/reference_designs/demo_plc_modbus
で紹介されていたQModMasterを利用すると、モノによってはエラーがあってもアクセスできます。
Author And Source
この問題について(matlabでMODBUS①コンテックCPSN-MCB271-1-041+CPSN-AI-1208LI), 我々は、より多くの情報をここで見つけました https://qiita.com/jamjam/items/b44a46fd05c6f478cb3e著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .