HMI 上のフォームに表示されるテキストをあらかじめ数カ国語分用意しておき、言語コードを変更することで表示を一度に切り替える方法をご紹介します。
この記事の例では、HMI 上の表示言語をボタン操作で日本語、英語、ドイツ語へと切り替えます。
サンプルプロジェクトの用意
新規プロジェクトの作成
PLCnext Engineer を起動し、新しいプロジェクトを作成してください。
この記事では AXC F 2152 用のプロジェクトを例にとっていますが、他の PLCnext Control やシミュレータでも手順は同じです。
HMI の 設定
当記事では内容をシンプルにするため、HMI Web Server のセキュリティを切っておきます。
画面左の PLANT ペーン内の「HMI Web Server」をダブルクリックし、画面中央の 「Settings」タブ内の「Security」の「Enforcement of user levels」で「None」を選択してください。
(PLCnext User management (デフォルト) を選ぶと、ブラウザでの HMI 表示時にユーザ名とパスワードを求められます)
サンプル HMI ページの作成
ページの追加と設定
HMI に新しいページを追加します。
画面左の PLANT ペーン内の「HMI Web Server」を展開し、「Application」を右クリックすると出てくる「Add HMI Page」をクリックしてください。
新しいページを開始ページにします。
「Page」を右クリックすると出てくる、「Set HMI Page as Startup」をクリックしてください。
「Page」のアイコンが家のマークに変わります。
画面左の PLANT ペーンの「Page」をダブルクリックすると、画面中央に「Page」タブが表示され、その下の「HMI Page」タブにて HMI Page を編集できるようになります。
テキストの追加
多言語に対応させるテキストをページ上に用意します。
画面一番右「COMPONENTS」ペーン上の「HMI」以下にある「Objects」を展開し、「Text」画面中央の「HMI Page」上へ3個分ドラッグしてください。
そして、各テキストをダブルクリックし、内容を「サンプルテキスト1」「サンプルテキスト2」「サンプルテキスト3」へ変更してください。
デフォルト言語の設定、および代替え言語追加の設定
Options ダイアログを開きます。
メニューバーの「Extras」から「Options」をクリックしてください。
以下の様な Options ダイアログが出てきます。
デフォルト言語として日本語を選択します。
画面左の「International」内の「Default Language Settings」を選択し、画面右の「Default」の「Language」にて、「ja」を選択してください。
代替え言語として英語を追加します。
「Available」の下に表示されている言語コードから「en」を選択し、「Add Alternative」ボタンをクリックしてください。
さらに、代替え言語としてドイツ語を追加します。
「Available」の下に表示されている言語コードから「de」を選択し、「Add Alternative」ボタンをクリックしてください。
結果を確認してダイアログを閉じます。
「Alternative」の下に「de」と「en」が表示されていることを確認し、「OK」ボタンをクリックしてください。
各言語でテキストを入力
各言語でサンプルテキストを入力します。
画面左の PLANT ペーンで Application をダブルクリックし、画面中央の「Application」タブの下の「Resources」タブを選択してください。
「en」の列へは英語で “Sample Text 1” 等と入力し、「de」の列へはドイツ語で “Beispieltext 1” 等と入力してください。
言語切り替えボタンの配置
言語切り替えボタンを配置します。
画面右の「COMPONENTS」ペーンから画面中央の「HMI Page」へ「Button」を三個分ドラッグし、それぞれのボタンの文字を「日本語」「English」「Deutsch」に変更してください。
ボタンクリック動作への言語コード変更動作の割り当て
LanguageCode という変数の値を変更することで使用する言語を切り替えることができるため、ボタンクリックによってこの変数値を変更するように設定します。
まず「日本語」ボタンについて、クリック動作の Dynamics を登録します。
「日本語」ボタンを選択し、HMI Page 右下にある「Dynamics」タブをクリックすると「New dynamics」ボタンが表示されます。このボタンをクリックてさらに「Action」をクリックし、表示された「Action on Click」をクリックしてください。
ボタンクリック動作によって実行される処理を選択します。
ここでは変数への値の書き込み動作を行います。
「Action」として「Write value」を選択してください。
値の書き込み先の変数を指定します。
「Destination variable」の右にあるドロップダウンボックスをクリックし、表示された「LanguageCode」を選択後、[Enter] キーで確定してください。
変数に書き込む言語コードを指定します。
「Source constant」に「ja」と入力し、[Enter] キーで確定してください。
以上で、「日本語」ボタンに対する設定は終了です。
同様の手順で「English」ボタンと「Deutsch」ボタンにもボタンクリック時の動作を設定してください。
どちらの場合も、書き込み先変数は「LanguageCode」です。
「English」用の言語コードは「en」、「Deutsch」用の言語コードは「de」です。
動作確認
セーブとプロジェクトの書き込み
プロジェクトをセーブします。
メニューバーの「ファイル」内の「Save Project」をクリックしてください。
プロジェクトを PLCnext Control へ書き込みます。
画面右の「PLANT」ペーンの「Project」のすぐ下にある「axc-f-2152-1 : AXC F 2152」(使用機種によって表示は異なります) を右クリックし、「Write and Start Project」をクリックしてください。
「SECURE DEVICE LOGIN」ダイアログが表示されたら、ユーザ名「admin」と、PLCnext Control 表面に印字された8桁のパスワードを入力してください。
シミュレータ使用時のパスワードは「plcnext」です。
「Project」のすぐ下にあるアイコンが から へ変化したら、プロジェクトは正しく書き込まれ、開始されています。
HMIの表示
ブラウザで HMI を表示します。
画面右の「PLANT」ペーンの「Project」のすぐ下にある「axc-f-2152-1 : AXC F 2152」をダブルクリックし、画面中央の「axc-f-2152-1」タブを表示します。「Cockpit」タブが選択されていることを確認し、のアイコンをクリックしてください。
言語切り替え操作
「日本語」「English」「Deutsch」ボタンの動作を確認してください。
デフォルトでは、日本語表記になっています。
英語表記に切り替えます。
「English」ボタンをクリックしてください。
サンプルテキストが英語表記になります。
ドイツ語表記に切り替えます。
「Deutch」ボタンをクリックしてください。
サンプルテキストがドイツ語表記になります。
日本語表記に切り替えます。
「日本語」ボタンをクリックしてください。
サンプルテキストが日本語表記になります。