SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

DeveloperZine(デベロッパージン)- エンジニアの意思決定を支える技術情報メディア ProductZine

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

IoTをかじってみよう

IoTをかじってみよう(3)
~センサーのデータをWebサーバーに送付するmbedアプリケーションを作成する

mbedからの接続確認

 コンテナをIBM Containers上で稼働させる前に、mbedアプリケーションからPHPアプリケーションへデータの送受信ができることを開発環境で確認します。mbedアプリケーションの「(5)サーバーのURLを指定」する箇所に、開発環境のホストOSのIPアドレスを入れてコンパイルします。

 ダウンロードされたアプリケーションをmbedにロードします。このとき、EthernetにLANケーブルが接続されていることを確認してください。

 開発環境での確認を行うための構成図を示します。

図17 開発環境での確認構成
図17 開発環境での確認構成

 LCDにIPアドレスが表示された後、温度と「Return code is 0」のメッセージが次々に表示されます。

 ホストOS側のブラウザでhttp://localhost/readdb.php、もしくはhttp://ホストOSのIPアドレス/readdb.phpへアクセスすると結果が確認できます。

図18 開発環境での稼働確認結果
図18 開発環境での稼働確認結果

 mbedアプリケーションからPHPアプリケーションへデータの送受信ができることが確認できました。

 Ctrl+p qでコンテナから抜けて、次の一連のコマンドをホストOS上で実行します。今回はイメージの保管は行いません。

$ sudo docker stop testing
$ sudo docker rm testing

DockerHubへのプッシュ

 機能の確認ができたイメージ(susumutani3/iotkaji:v4)をDockerHubへプッシュします。

$ sudo docker login
$ sudo docker push susumutani3/iotkaji:v4

第3回のまとめ

 今回は、mbedからセンサーの温度データをHTTPのPOSTリクエストでサーバーへ送信するmbedアプリケーションを作成しました。さらにmbedから送信されてきたデータを受信してデータベースへ時系列で書き込むためのサーバー側のPHPアプリケーションを作成しました。そして、作成したPHPアプリケーションとnginxとMySQLを導入したDockerイメージを作成して、開発環境で稼働確認しました。また、curlコマンドやnginxのログなどデバッグに役立つツールの使い方も確認しました。

 本来はDockerでデータベースを稼動させる場合は、データを格納するためにボリューム機能を使用しますが、今回は簡略化のために省略しています。

 次回はいよいよ作成したコンテナをIBM Containers上で稼働させます。そして、mbedからインターネット経由でデータを送信します。

この記事は参考になりましたか?

連載通知を行うには会員登録(無料)が必要です。
既に会員の方はを行ってください。
IoTをかじってみよう連載記事一覧

もっと読む

この記事の著者

谷口 督(日本アイ・ビー・エム株式会社)(タニグチ ススム)

2000年問題対応の時期にIT業界に入り、それ以来UNIX系のインフラ構築を担当。最近の関心事は、そろそろ出てきそうな画期的なテクノロジー探しや世の中が良くなるためのもの作りです。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

CodeZine(コードジン)
https://codezine.jp/article/detail/9162 2016/01/27 14:00

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー