ENGLISH 简体中文 日本語 한국어  


アプリケーションノート3297

リモートモニタリングシステムによるSMS (ショートメッセージサービス)経由の電子メール送信

要約:このアプリケーションでは、電子メールを使って温度およびアナログ信号のリモート監視を可能にする簡単なセットアップ方法を説明します。あるアラーム条件に適合すると、システムはSMSメッセージを送信し、それが電子メールに変換され、指定の電子メールアドレスに転送されます。

部品:
  1. PIC® 16F877:PICマイクロコントローラ
  2. DS18S20:1-Wire®温度センサ
  3. MAX127:8チャネル12ビットA/Dコンバータ(シリアル)
  4. GSMモデム
  5. TynTecが提供するSMSから電子メールへの変換サービス


このプロジェクトのダウンロードソースコード:

プロジェクトの目的と特長

このプロジェクトは、プログラミングされたスレッショルドが適合した時に自動的に電子メールが送られることを目的としています。ユーザは温度及びアナログ入力のアラームスレッショルドをプログラムすることができます。アラーム条件のいずれか1つに適合すると、システムはGSMモジュールを使用して、標準SMSメッセージを送信します。SMSメッセージは、電子メールに変換するためにTynTecが指定するモバイル番号に送信される必要があります。SMSメッセージは電子メールに変換され、TynTecの2 Way SMSメッセージングサービスによって指定された電子メールアドレスに転送されます。

このプロジェクトの主な特長は以下のとおりです。

  • 人間の介入なしで自動生成される電子メールの送信が容易
  • 温度や電圧などをリモートで監視ことが非常にシンプル
  • SMSメッセージだけでなく電子メールの送信も可能
  • 上記機能の実現にPC介入は一切不要
  • 複雑なTCP/IPコネクティビティの問題に関与することを回避(このことはGPRS有効範囲がないエリアでは特に問題となりやすい。)

図1.
図1.

システムの詳細

BASICコンパイラの1つ、Crownhillによって提供されるPICマイクロコントローラ用のProton+が使用されます(www.crownhill.co.uk)。SMSからの電子メールへの変換技術はTynTec (www.tyntec.biz)によって提供されます。使用したGSMモジュールは、SiemensのTC35です。SMS対応の他のモデムを使用することもできますが、GSMモジュールの入手に関してはAlphamicro社(www.alphamicro.net)が便利です。私は、PIC16F877が搭載された開発基板を使用しましたが、開発基板はCrownhillからも提供されており、Proton Dev boardと呼ばれています。標準16 × 2のLCDモジュールが20 × 4のLCDモジュールに置き換えられている点に注意してください。Proton+コンパイラは、「PRINT」コマンドによって4 × 20 LCDモジュールをサポートしています。

温度センサはDS18S20が使用されました。この温度センサはダラスの1-Wireプロトコルを使用しています。DS18S20は、PICのPortCピン0に接続します。DQピンが5Vに4.7kのプルアップ抵抗で接続されているかを確認してください。

シリアルインタフェース内蔵の12ビット、8チャネルADCのMAX127が使われています。MAX127はPICの2本のI/Oピンを使用しますが(PortBピン0及び1)、例では1つ目のチャネルのみを使用しています。必要に応じて他のチャネルを使用することができるように、コードは容易に設定することができます。SDL及びSDAピン(それぞれピン5と7)が5Vに4.7kのプルアップ抵抗で接続されていることを確認してください。

LDR (光感応抵抗)を5Vに接続し、1kの抵抗を経由してグランドに接続します。LDRと抵抗の接続点をMAX127のチャネル0 (ピン13)に接続します。A/Dの入力レンジは、0V~5Vに選択します。

接続図は図2をご覧下さい。

図2.
図2.

コード動作の概要:

  1. PICは、アナログ入力値を読み込みます。この機能は「MAX127IN」サブルーチンで実現されます。アナログ電圧が指定のスレッショルド以上になると、アラームフラグの「ALARMFLAG」がセットされます。アラームフラグを「1」にセットすると、SMSの送信が必要であることを示します。
  2. その後、温度がDS18S20から読み込まれます。温度が規定制限範囲以上になると、アラームフラグの「ALARMFLAG」がセットされます。アラームフラグを「1」にセットすると、SMSの送信が必要であることを示します。
  3. この段階で、SMSメッセージを送信すべきかどうかについてコードが決定します。アラームフラグ「ALARMFLAG」がセットされていると、コードは「SMS」と呼ばれるサブルーチンへ行き、SMSメッセージをTynTecが指定したモバイル番号に送信されます。

セットアップ手順

  1. 初めに、TynTecの「2 Way SMS Tool」用のアカウントを取得してください(www.tyntec.biz、メール、電話番号+49-231-10-87-991でお問い合わせ下さい)。転送先電子メールアドレスを指定する必要があります。そうするとTynTecから固有のモバイル番号(形式+44........)が送られてきます。この番号は必ず安全な状態で保管してくださいTynTecへの問い合わせは
  2. コードでは、以下の変更を加える必要があります。
    1. ライン87:MAXREAD > 2047の場合
      ここでアナログ入力スレッショルドレベルを設定します。MAX127は12ビットのA/Dコンバータであるため、ステップが4096個あります。それは0~5Vの入力電圧範囲を持つように設定されます。とりあえずコードは2.5Vのスレッショルドに設定されます。
    2. ライン119:temp > 58の場合
      この時点で、過熱アラームスレッショルドを設定する必要があります。提供されるコードでは、29℃にセットされています。「temp」は、DS18S20からの読込み値を持つレジスタです。「temp」を2で割ることによって実際の温度が摂氏で与えられます。このコードだけが+ve温度で機能する点に注意してください。
    3. ライン268:HSEROUT ["AT + CMGS = +447 ---------"]
      ここで転送先モバイル番号が指定されます。TynTecが提供した番号をここに入力してください。
    4. ライン298:SMSDELAY = 10
      となるまでSMSメッセージ送信と温度及びアナログ入力の繰り返し「scan」の間の遅延は調整可能です。現在、それは10分間の遅延に設定されています。これは、異なる状況に適応させることができるように調節可能です。

ユニットから送信される電子メールの例を、図3に示します。

図3.
図3.

まとめ

上記の手順に従った後、システムは 温度及びアナログ入力を監視することが可能となります。トリップスレッショルドを越えた場合、SMSメッセージが送信され、それが指定された受取人に送られる電子メールとなります。

この記事に類似した内容が2004年8月号の「EPD (UK)」に掲載されています。
この記事は2004年8月号の「Selezione (Italy)」及び「Electronics Update (Japan)」に掲載されています。


フィードバックをお寄せください。
内容に満足されましたか、あるいは満足されていませんか?もっと良いページにできると思いますか?あるいは、単なるコメントでも結構です。フィードバックをお待ちしています。—マキシムはお客様からいただく訂正、提案を元に改善していきます。 このページを評価し、フィードバックを送信する。


自動アップデート
お客様が関心のある分野でアプリケーションノートが新規に掲載された際に自動通知Eメールの受信を希望する場合は、EE-Mail™にご登録ください。



その他の情報  APP 3297: Jan 04, 2005
DS18S20 1-Wire寄生電力ディジタルサーモメータ フルデータシート
(PDF, 188kB)
無料
サンプル
MAX127 マルチレンジ、+5V、12ビットDAS、2線式シリアルインタフェース付 フルデータシート
(PDF, 136kB)
無料
サンプル
 

ダウンロード、PDFフォーマットダウンロード、PDFフォーマット (85kB)
 AN3297, AN 3297, APP3297, Appnote3297, Appnote 3297



         


      プライバシーポリシー    法的お知らせ

      Copyright © 2008 by Maxim Integrated Products, Dallas Semiconductor