電気錠管理システムの遠隔操作プログラムの開発○

谷口泰広 A)、田上奈緒 A)、田島尚徳 A)、加藤俊之 A)、池田将典 A)、箕浦昌之 A)
A)

共通基盤技術支援室 情報通信技術系

概要
共通基盤技術支援室情報通信技術系では、2008 年 7 月から 12 月まで箕浦課長を講師とし、初心者向けのPerl 入門講座が開講された。その成果物として「全学技術センター会議室等予約システム」が構築・運用された。本年度は講座の応用編として、受講者各自が業務に直結するプログラムを作成した。これにより Perlプログラミング技術の向上が図られた。
「電気錠管理システムの遠隔操作プログラム」は Web ブラウザ上で電気錠管理システムを操作し、状態を閲覧できるものである。このプログラムの開発により、サテライトラボ閉鎖時の来訪者の対応として遠隔操作で電気錠を解錠できるようになり、業務の効率が上がった。
本稿では開発したプログラムとサーバ環境の構築について報告する。

1

はじめに

共通基盤技術支援室情報通信技術系では「Perl を使用した Web プログラミングへの挑戦」と題し、Perl 初
心者向けの講座が開講された。講師は箕浦課長が担当し、受講者数は 6 名、会場は全学技術センター会議室
で 2008 年 7 月から 12 月まで開講された。講座は講義のあとに演習を行うというスタイルで行われた。講義では Perl の特徴や文法を学び、演習では実際にパソコンを使い、開発環境を整えてプログラミングを行った。
講座期間の後半では、Web プログラミングの実践として、全学技術センター会議室等予約システムの構築を行った[1] 。そして本年度は講師の提案により、受講者各自が業務に直結した Web プログラムの作成を行うことになった。これにより Perl に関する知識の向上と業務効率の向上の両立を目指した。
情報文化学部サテライトラボ(SIS ラボ)では、学生証 IC カード化に伴い「電気錠管理システム」を運用してきた。電気錠管理システムはオムロン社製の入退室管理システムであり[2] 、カードゲートコントローラに接続されたパソコンには管理ソフト Gate Assistant 2 がインストールされている。主な機能として•スケジュールの設定•

カードゲート利用者の登録•

電気錠の施錠と解錠•

扉の施錠状態の表示などがある。これまでの運用では主にスケジュール設定のために使用し、電気錠を解錠する機能は使用してこなかった。居室からサーバ室に移動してパソコンを起動しアプリケーションを操作するより、30 メートル離れた扉に移動してサムターンを回したほうが早いためである。そこで今回、サーバ室のパソコンを LAN で接続し、居室のパソコンより Gate Assistant 2 アプリケーションソフトを遠隔操作し、施錠と解錠を行うシステムを開発した。

2システムの概要

2.1

ハードウェア構成

本システムのハードウェア構成を図 1に示す。
既存のシステムではカードゲートコントローラに非接触カードリーダ・電気錠・パソコンだけが接続されていた。そしてパソコン上で Gate Assistant 2 アプリケーションを操作することにより電気錠の管理が行われていた。
今回のシステムではカードゲートコントローラに接続されたパソコンを Web サーバ化した。そしてセキュリティーを確保するために、部屋の外から接続できないプライベートネットワークに接続した。さらに非接触カードリーダの近くに無線ドアホン送信機を取り付け、自席に無線ドアホン受信機を設置した。

居室
LAN ケーブル

サーバ室
カードゲート入口
非接触カードリーダ

コントローラ

RS-232C

Gate
Assistant 2

電気錠

扉
既存のシステム

自席パソコン

Web サーバ

ドアホン受信機

ドアホン送信機

図1. ハードウェア構成

2.2

ソフトウェア構成「電気錠管理システムの遠隔操作プログラム」の構築にあたり、以下の構成でインストール・設定を行った。
•ノートパソコン CPU: Pentium III、メモリ：256MB•

OS: Windows XP Professional•

Perl インタプリタ: ActivePerl 5.10•

Web サーバ: Apache 2.2

これまで年に数回行っていたスケジュールの設定は操作が複雑であり素早い対応が必要ないため、リモー
トデスクトップソフト UltraVNC で操作することにした。電気錠の施錠と解錠は素早い対応が必要なため Perl
プログラムで操作することにした。
Perl でウインドウズ操作を実現するにあたり、CPAN モジュールの中から「Win32::GuiTest」を利用することにした。デスクトップ対話モジュール「Win32::GuiTest」は Windows 上でのキー操作・マウス操作・画面キャプチャなどのメソッドを提供する[3] 。このモジュールを読み込むことにより UWCS のような Windows 操作の自動化が可能になる[4] 。本システムではクリック操作と画面キャプチャのためにこのモジュールを使用した。これにより 5 回の複雑なクリック操作を一度の http 通信で行うことが可能になった。
本システムの処理の流れを図 2に示す。
1. 管理者が Web ブラウザにおいて操作内容を選択し、送信ボタンを押下。
2. Web サーバが CGI プログラムを起動。
3. CGI プログラムが Gate Assistant 2 の「扉を遠隔操作する」ボタンを押下。(計 5 回のクリック動作)
4. CGI プログラムが Gate Assistant 2 の扉状態の表示をキャプチャ。
5. CGI プログラムが HTML タグを生成して返す。
6. Web ブラウザに結果出力。
以上の流れにより、Web ブラウザで Gate Assistant 2 アプリケーションを介し、電気錠の遠隔操作を行うことが可能になった。Web ブラウザで選択できる操作は•扉状態更新(電気錠操作はせず、現在の扉の状態を出力する。)•連続解錠(電気錠を解錠し、誰でも入れるようにする。)•施錠(電気錠を施錠し、IC カードキーを持っている人だけ入室できるようにする。)•1 回解錠(電気錠を一回だけ解錠し、扉を開けて入った後は元の状態になる。)•警戒設定(電気錠を施錠し、誰も入れない警戒モードを設定する。)•警戒解除(警戒モードを解除する。)の 6 種類である。それ以外の操作(スケジュール設定等)は Web サーバパソコンに UltraVNC サーバもインストールしたので、そちらにアクセスして作業を行うことにした。

Web ブラウザ
結果出力

1.送信

6.結果出力Web サーバ(Apache)
5.HTML タグ

2.CGI 起動CGI プログラム(Perl)送信

3.操作(クリック),

4.画面キャプチャ
Gate Assistant 2

画面キャプチャクリック

図2. 処理の流れ

3まとめ本システムの構築・運用により、すべての電気錠管理を自席のパソコンで行うことができ、業務の効率化を図ることができた。さらに Gate Assistant 2 アプリケーションの操作に不慣れなスタッフでも簡単に電気錠を操作することが可能になった。またシステム構築を通して本来の目的である Perl や Web プログラミングの知識を得ることができた。
2 年後には学部生全員に IC 学生証が行き渡るため、SIS ラボの常時施錠と学生による IC カード解錠が検討されている。今後の課題として、IC カードを持たない学生のための運用を考えていきたい。

参考文献
[1]

田上奈緒, 箕浦昌之, 木村時政, 木村和子, 加藤俊之, 谷口泰広, 田島尚徳, “全学技術センター会議室等
予約システムの稼動”, 第 4 回名古屋大学技術研修会報告, PC-02, 2009.

[2]“CSU-PC006 Gate Assistant 2 アプリケーションソフト 仕様・取扱説明書”, オムロン株式会社, 2007.

[3]

Dmitry Karasik, “Win32::GuiTest”, http://search.cpan.org/dist/Win32-GuiTest/.

[4]

安藤八郎,”Windows 操作の自動化について”, 第 2 回名古屋大学技術研修会報告集, pp.9-14, 2006.