プロが教える店舗&オフィスのセキュリティ対策術

プロフェイスのタッチパネルに日付を表示させ、その表示をタッチすると日付設定することができて、日付を入力し設定するとその日付になった時にアラーム鳴らす
というプログラムをグローバルDスクリプトで作成したいのですが説明書読んでもいまいち分かりません。詳しい方教えてください。

イメージは添付してあります

「PRO-FACE タッチパネル」の質問画像

A 回答 (4件)

基本、EXもC-Package同じです。

C-Pakageの記述に変更していますので、ご確認下さい。
スクリプトは2種類あります。
1個目は比較のスクリプト(下記)
if ([b:011100]==1)//ONの場合は下記の処理を実施
{
if ([w:0004]==[w:0100])//年の入力とシステムエリア年と比較
{set([b:011000]) //比較で同じ場合はビットセット
}
endif
if ([w:0005]==[w:0101])//月の入力とシステムエリア月と比較
{set([b:011001]) //比較で同じ場合はビットセット
}
endif
if ([w:0006]==[w:0102])//日の入力とシステムエリア日と比較
{set([b:011002]) //比較で同じ場合はビットセット
}
endif
}
endif

2個目は、アラームビットON/OFFのスクリプトです。(下記)
if ([w:0110]==7)//年月日の比較ビット全てON
{set([b:011200])//アラームON
}
endif
if ([w:0111]==0)//アラームスイッチがOFFの場合
{clear([b:011200])//アラームビットOFF
[w:0110]=0//比較結果のビット全てOFF
}
endif
画面イメージは画像を添付しています。
「PRO-FACE タッチパネル」の回答画像4
    • good
    • 1
この回答へのお礼

何度も何度も細かく丁寧に教えていただきありがとうございます。
少し勘違いしてました。年月日は[日付]の部品を使うのではなく個別に数値表示で[年][月][日]を作成するって意味だったんですね。
この場合だとアラームを鳴らしたい日付を入れてアラームON/OFFスイッチを押すとその日になったらアラームが鳴りON/OFFスイッチをもう一度押すとアラームが解除されるって意味ですよね?
PRO-FACE自体でアラームって鳴らせるんですか?
またアラームを三菱のシーケンサー上で鳴らすことも可能ですか?
PRO-FACEのことここまで知ってる方がいないので長々と質問してしまいすみません。

お礼日時:2012/02/27 22:33

リファレンスマニュアルの 「22 機能をプログラミングしたい(スクリプト)」を見て頂ければ簡単な記述方法などの説明が記載されています。

    • good
    • 0
この回答へのお礼

分かりやすく説明して頂いたのですが手順どおりにやったのですがなりませんでした。
使用しているPRO-FACEは[GPPRO/PBIII]なんですが、このシリーズでも出来ますか?

お礼日時:2012/02/25 13:46

まずは、作画方法として、


1.年月日を個別にデータ表示器の数値表示部品を画面上配置します。
2.配置した部品をダブルクリックし、基本設定のタブを開きます。
3.モニタワードアドレスを内部のアドレス(LSやUSER)設定します。
  (下記のスクリプトの比較元アドレスになります。)
4.入力許可のチェックをONします。(このチェックで値が変更できます)
5.データ形式を16ビットBCDに設定します。
上記が部品の設定となります。

次にシステムエリアにある時刻データと比較する処理を作成します。
比較対象となるシステムエリアのデータは、
MtoMプロトコルの場合は
年 [#MEMLINK]0004
月 [#MEMLINK]0005
日 [#MEMLINK]0006
となります。
上記のアドレスと比較元アドレスをスクリプトで比較します。
スクリプトの記述の参考例です

if([w:[#MEMLINK]0100]==[w:[#MEMLINK]0004])//年の比較。
{set([b:[#MEMLINK]011000])//110の00ビットをON
}
endif
//
if([w:[#MEMLINK]0101]==[w:[#MEMLINK]0005])//月の比較。
{set([b:[#MEMLINK]011001])//110の01ビットをON
}
endif
//
if([w:[#MEMLINK]0102]==[w:[#MEMLINK]0006])//日の比較。
{set([b:[#MEMLINK]011002])//110の02ビットをON
}
endif
//
if([w:[#MEMLINK]0110]==7)//年月日が合致した場合下記の処理。
{set([b:[#MEMLINK]001101])//[#MEMLINK]0011の01ビットをON。ブザーON
}
endif
あとは、比較するタイミング(スクリプトのトリガ)とブザーをOFFする処理タイミングが必要です。その処理を追加すれば、ご希望の運用動作ができると思います。
    • good
    • 0
この回答へのお礼

すごく丁寧に説明いただきありがとうございます。
このスクリプトのプログラムは説明書のどの部分を見れば分かりやすいですか?

お礼日時:2012/02/17 23:54

はじめまして。


この内容であれば、デジタルサポートセンターにお問合せいただいた方が早いのではないでしょうか?

以下のサイトから問合せ可能です。

http://www.proface.co.jp/otasuke/inquiry/

回答で無く、申し訳ありませんでした。

参考URL:http://www.proface.co.jp/otasuke/inquiry/
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!