Project#Schneider TM241 CPU x 750-347 CANOPEN Coupler

この記事ではWago CANOPEN Fiedbus CouplerとシュナイダーのTM241ECE24U CPUを使ってCANOPENネットワークを構築します。シュナイダーはMasterでCouplerはSlaveになります。よろしくお願いします!

Thanks!

この記事が出来上がるのはマナ・デザインワークスさまとワゴジャパン株式会社さまから機材を貸してくださったおかけです。誠にありがとうございます。

ワゴジャパン株式会社

CANOPEN Coupler750-347はワゴジャパン株式会社さまが貸してくださったものです。WAGO は 1951 年に設立され、いままで端子台の技術で世界中の産業にずっと貢献してるドイツ企業、PUSH WIREやCAGE CLAMPの技術などで現場を支えてきました。他にWAGOさまにもPLC LINEUPがあり、オープン性と柔軟性に重点を置いた自動化ソリューションを提供しています。

ワゴジャパン株式会社は 東京都江東区に本社があります。

https://www.wago.co.jp/

Mana Design Works

今回の記事は内容は自体はシュナイダーですが、Mana Design Worksは大阪に本社あるSiemensの正式なソリューション パートナーで、Siemens製のCPU・HMI・Drive・Motion Controller・SCADAから国産メーカまで常に最適な提案できます。

https://mndw.jp/

750-347

こちらは今回使用する750-347 WagoのCanopen Couplerです。

Power Supply

電源は24v DCで、赤はプラス、青いはマイナスです。

Layout

こちらはWago 750-347実際のLayoutです。

LED

750-354 CANOPEN Couplerでは、モジュール状態を示すLEDがついています。

LEDColorDescription
STOPCouplerはいまSTOP状態です
RUNCouplerはRUNしているかを示します
TX OVERFLCAN 送信 Buffer Overflowしてます
RX OVERFLCAN 受信 Buffer Overflowしています
I/O緑・緑・オレンジI/O 信号の現在状態

Fieldbus Connector

こちらは750-347のFieldbus Connector配線です。

PinSignalDescription
1N.CReserved
2CAN_HCAN_H Bus Line
3Drain ShieldCAN shield(Optional)
4CAN_LCAN_L Bus Line
5GUDCAN Ground

Address switch

Couplerにある赤DIPスイッチはNode-IDを設定することできます。

たとえば、1,2もONであれば、このCouplerのNode-IDは3になります。

Baud Rate Setting

このDIPスイッチもBaud Rateを設定できます。

まずDIPスイッチをすべてOFFしてる状態でCouplerに電源を入れ、CouplerをConfiguration modeに入れます。暫く待つと、4つのLEDがSTOP(Switch1)、RUN(Switch2)、TX Overflow(Switch3)とRX Overflow(Switch4)に現在のBaud Rateを表示します。そしてDIPスイッチを変更する子よりBaud rateを変更できます。最後にSwtich8をONにして設定を適用します。

Communication Object support

750-347では以下のCommunication Objects Supportします。

  • 5 Tx-PDOs
    Input Data
  • 5 Rx-PODs
    Output Data
  • 2 Server SDOs
    Node StateのConfigurationデータ
  • SYNC
  • Network management Objects
    Module Control Protocols
    Error Control Protocols
    Bootup Protocol

Memory Space

256WordsはFieldbus CouplerのメモリにMappingされています。

Enable Analog Input Data

CAN BusのOverflowを予防するため、PDOs経由でAnalog InputデータはDefault 無効になって、つまり0x6423 (Analog input global interrupt enable)はDefault値Falseが格納しています。もちろん Start Remote Node コマンドからNodeをPRE-OPERATION からOPERATIONALに切り替えることでき、そしてPDOs経由でAnalog Inputデータを受信できます。

CANopen 

State Diagram

こちらはCANOPENのState 図です。

Init

fieldbus Couplerが電源を入れ直したら自動的にINITIALIZATION状態に遷移します。その状態ではモジュール自身の機能をテストします。Process ImageやObject Configurationが生成され、そしてINITIALIZATION中にエラーがなければFieldbus CouplerがPRE-OPERATIONAL状態に変わります。エラーが発生したら、Fieldbus CouplerがSTOPPED状態に遷移します。

PRE_Operational

PRE-OPERATIONALに変わったFieldbus Couplerでは。SDOsからデータを取得することはできますが、PDOsはできません。その状態ではConfiguration ToolsからCouplerをパラメーターやIDなどを変更でき、新しいConfiguration FileはFlash Memoryに保存されます。

CouplerからNMT Services Start_Remote_NodeをもらったらOPERATIONAL状態に切り替えます。

OPERATIONAL

OPERATIONALではSDOsとPDOsからの通信も可能ですが、Configurationを変更することができません(たとえばCOB-IDを変えたりとか)。

CouplerからNMT Services Enter_Pre_OperionalをもらったらPRE-OPERATIONALにまた遷移します。

STOPPED

STOPPED状態ではいまモジュールがFAULTであることを示しています。NMT service Stop_Remote_Nodeが受信してたかや内部エラー発生したらSTOPPEDになります。(例えばI/O モジュールが取り去れたら)

その状態のモジュールではSDOsやPDOsも通信できなくなり、NMT servicesやNode-Grouarding/Heartbeatのみになります。

Network Management Objects

NMT Masterは複数のProtocolを使用しNMT Slaveの状態を制御します。状態は以下のように指定されています。

  • INITIALIZATION
  • PRE-OPERATIONAL
  • OPERATIONAL
  • STOPPPED

一括ですべてNodeの状態変更・Node指定の状態変更も可能です。

Start Remote Node

そのServicesはNMT SlaveをOperationalに切り替えます。もしNode ID=0ならすべてのNodeをOPERATIONAL状態に変更します。

Stop Remote Node

このServicesはNMT SlaveをSTOPPED状態に切り替えます。もしNode ID=0ならすべてのNodeをSTOPPED状態に変更します。

Enter Pre-Operational

このServicesはNMT SlaveをPRE-OPERATIONAL状態に切り替えます。もしNode ID=0ならすべてのNodeをPRE-OPERATIONAL状態に変更します。

Reset Node

このServicesはNMT Slaveをリセットします。もしNode ID=0ならすべてのNodeを

リセットします。

TM241CEC24U

CAN Interface

こちらはTM241CEC24UのCANOPEN Terminal配線です。

PinSignalDescription
1Not UsedReserved
2CAN_HCAN_H Bus Line
3CAN_SHLDCAN shield(Optional)
4CAN_LCAN_L Bus Line
5CAN_GUDCAN Ground

Transmission Rate

  • 1000 kbit/s for bus length of 20 m for CANopen
  • 800 kbit/s for bus length of 40 m for CANopen
  • 500 kbit/s for bus length of 100 m for CANopen
  • 250 kbit/s for bus length of 250 m for CANopen
  • 125 kbit/s for bus length of 500 m for CANopen
  • 50 kbit/s for bus length of 1000 m for CANopen
  • 20 kbit/s for bus length of 2500 m for CANopen

Implementation

Download EDS File

WagoのHPから750-347 CANOPEN CouplerのDevice DescriptionをDownloadします。

https://www.wago.com/global/i-o-systems/fieldbus-coupler-canopen/p/750-347#downloads

このようなZIP FileがDownloadされました。

解凍しますと、750-347のFolderがありますね。このFolderに今回Tutorialに必要なFileが入っています。

Configuration 

Install 750-347 CANOPEN Coupler

まずEcoStruxure Machine ExpertにEDS FileをImportします。

Tools>Device Repositoryをします。

Installボタンをクリックします。

先程WAGOのHPからDownloadしたEDS Fileを選び>Openします。

Done!

Add CanOPEN Master

CAN_1(Canopen…)右クリック>Add Deviceします。

CANOpen>CANopenManager¥>CANopen Performanceを選び>Add DevicesでCANOPEN Masterを追加します。

CANOpen Masterが追加されました。

Add 750-347

次はWagoの750-347 CANOpen Couplerを追加します。

CANOpen_Performanceを右クリック>Add Deviceします。

VendorをWagoで選択します。

750-347m_V19を選び>Add Deviceします。

750-347 CANOPEN Couplerが追加されました。

Add 750-1417

Slot1に750-1417 8チャンネル デジタル入力を追加します。

右クリック>Add Deviceします。

1417を検索し>75x-1417を選択>Add Deviceします。

Slot1が750-1417 8チャンネル デジタル入力、追加されました。

Add 750-1516

Slot2に750-1545 8チャンネル デジタル出力を追加します。

右クリック>Add Deviceします。

1516を検索し>75x-1516を選択>Add Deviceします。

Slot2が750-1516 8チャンネル デジタル出力、追加されました。

Add 750-471

Slot3に750-471 4チャンネル アナログ入力を追加します。

右クリック>Add Deviceします。

\

471を検索し>75x-471を選択>Add Deviceします。

Slot3が750-471 4チャンネル アナログ入力、追加されました。

Add 750-597

Slot4に750-597 8チャンネル アナログ出力を追加します。

右クリック>Add Deviceします。

597を検索し>75x-597を選択>Add Deviceします。

Slot4が750-597 8チャンネル アナログ出力、追加されました。

Configure 750-347

次は750-347 CANOPEN Couplerを設定します。

Node ID

General TabでNode-IDを設定します。今回のCANOPEN CouplerのIDは3です。

Enable Analog

次はEnable AnalogにTrueを書き込みます。SDOs Tab開き>Add SDOをクリックします。

16#6423:16#00を選び、Okします。

Index16#6423:SubIndex16#00のSDOが追加されました。

ValueのFieldをクリックします。

16#1を変更すればOKです。

Program

次はプログラムを作成します。

fc_analog2Voltage 

まずアナログ入力モジュールの入力値を電圧に変換するFunctionを作成します。

Application>Add Object>POUします。

Functionの名前を入力>Return TypeをRealに設定し>Addします。

Functionが追加されました。

中に簡単なプログラムを追加します。

FUNCTION fc_analog2Voltage : REALVAR_INPUT iValue :WORD;END_VARVAREND_VAR
VAR CONSTANT cMaxRawValue :REAL:=32767.0; cMaxScaling :REAL:=10.0; cMinScaling :REAL:=0.0;END_VAR

fc_analog2Voltage:=
(TO_REAL(iValue)/cMaxRawValue) *cMaxScaling;

fc_Setpoint2Analog

次はSetpointをアナログ出力モジュール値に変換するFunctionを追加します。

Functionの名前を入力>Return TypeをRealに設定し>Addします。

中に簡単なプログラムを追加します。

FUNCTION fc_Setpoint2Analog : WORD
VAR_INPUT
iSetPoint :REAL;
END_VAR
VAR
cMaxRawValue :REAL:=32767.0;
cMaxScaling :REAL:=10.0;
END_VAR




IF iSetPoint >=0.0 AND iSetPoint <=cMaxScaling THEN

fc_Setpoint2Analog:=
TO_WORD(
(iSetPoint/cMaxScaling)*cMaxRawValue);
ELSE
fc_Setpoint2Analog:=0;

END_IF

GVL_750_354

次はGlobal Variable Listを作成します。

GVLの名前を入れ、Okします。

GVLが追加されました。

GVL内に各Slotに紐付けの変数を追加します。

Link Variable to 750-1516

GVLの変数をSlot1 750-1516と紐つけます。

Variableの…ボタンをクリックし、GVLのSlot1_750_1516を選び>Okします。

Link Variable to 750-1417

GVLの変数をSlot2 750-1417と紐つけます。

Variableの…ボタンをクリックし、GVLのSlot2_750_1417を選び>Okします。

これでOKです。

Link Variable to 750-471

GVLの変数をSlot3 750-471と紐つけます。

Variableの…ボタンをクリックし、GVLのSlot3_750_471を選び>Okします。

Link Variable to 750-597

GVLの変数をSlot4 750-597と紐つけます。

Variableの…ボタンをクリックし、GVLのSlot4_750_597を選び>Okします。

MAIN

最後はCouplerの出力を交代ON/OFFし、あとはアナログ入力・出力のデータをCheckするだけです!

PROGRAM SR_Main
VAR
Channel1_Value:REAL;
Setpoint1:REAL;
myTon:TON;
istep:INT;
END_VAR


Channel1_Value:=fc_analog2Voltage(iValue:=GVL_750_354.Slot3_750_471[0]);

GVL_750_354.Slot4_750_597[4]:=fc_Setpoint2Analog(iSetPoint:=Setpoint1);

CASE istep OF

0:
myTon(IN:=TRUE
,pt:=T#0.1S
);
GVL_750_354.Slot1_750_1516:=16#0F;
IF myTon.Q THEN
GVL_750_354.Slot1_750_1516:=0;
myTon(IN:=FALSE);
istep:=10;
END_IF

10:
myTon(IN:=TRUE
,pt:=T#0.1S
);
GVL_750_354.Slot1_750_1516:=16#F0;
IF myTon.Q THEN
GVL_750_354.Slot1_750_1516:=0;
myTon(IN:=FALSE);
istep:=0;
END_IF


END_CASE

Result

LED Status

without Connection

From startup to normal

In Normal 

Program

Footer_Basic

Please Support some devices for my blog

Amazon Gift List

Find ME

Twitter:@3threes2
Email:soup01threes*gmail.com (* to @)
YoutubeChannel:https://www.youtube.com/channel/UCQ3CHGAIXZAbeOC_9mjQiWQ

シェアする

  • このエントリーをはてなブックマークに追加

フォローする