テーマ⑦ 【HULFT IoT】1秒間にN個作成されるファイルを効率よく送る

OrangeLab. 運営チーム
作成日時: - 更新日時:
Avatar
出荷後トレーサビリティにより、製造ラインでカメラによる内容物検査を行うことになりました。
どのように記録、保持しますか?

詳細要件

カップ麺を製造する工場ラインにおいて、 封をする前に内容物をカメラで撮影し、消費期限まで画像を保持しておきます。

Meeting07_00a.png

ヒントじゃ!
配信元と同じファイル名で集信するには、環境変数を使うのじゃ。
集信後ジョブでimgフォルダに上書きするバッチを使うとよいぞ。
 

模範解答

カメラが撮った画像ファイルをHULFT IoT Agentで検知し、そのファイルを転送します。
集信した画像ファイルは消費期限まで保持したいので、保存フォルダに集信した後、監視モニターにコピーします。

使用環境

OS
Raspberry Pi (HULFT IoT Agent)  ※1
Windows 7(HULFT IoT Manager) ※2
※1 Raspberry PiはHULFT IoT動作保証外です。ご利用いただく際は、HULFT IoT Readyに記載されている機器でお試しください。
※2 Windows 7はHULFT IoT動作保障外です。ご利用いただく際は、動作環境をご参照ください。

使用ソフトウェア

ソフトウェア バージョン
HULFT IoT Agent Version.1.0.0
HULFT IoT Manager Version.1.0.0
HULFT8 for Windows Version.8.1.2
Google Chrome Version.55.0.2883

使用ファイル

格納場所 ファイルパス 備考
Agent側 /usr/local/linecamera/camera.sh 秒間N回カメラ撮影するシェルスクリプト
Manager側 /C:\monitor\index.html 監視モニター

サンプル構成

Meeting07_01c.png

サンプルID一覧

管理情報 ID
集信管理情報 LINE01
詳細ホスト情報 エージェントID
ジョブ起動情報 job01

流れ

  1. ユニット(IoT Agentから転送する先)を登録します。
  2. プロファイル(転送に必要な設定)を登録します。
  3. HULFT IoT Agentにユニットとプロファイルを設定します。
    (HULFT IoT Agentに接続先と転送する設定を関連付ける必要があります。)
  4. 画像保持サーバ側にある集信用HULFTの管理情報を作成します。
  5. 画像保持サーバ側にある監視モニターを起動します。
  6. 製造ライン側にあるHULFT IoT Agentを起動します。
  7. camera.sh を実行し、製造ライン側で撮影を開始します。

手順

  1. ユニット(IoT Agentから転送する先)を登録します。

    (1) 集信側のHULFTのホスト名とHULFTの集信ポートを設定します。
    Meeting07_02a.png

    Meeting07_03a.png【ユニット】
      ユニット名   :unit01
      集信側ホスト名 :画像保持サーバのホスト名
      集信ポート番号 :画像保持サーバ側のHULFT集信ポート番号

  2. プロファイル(転送に必要な設定)を登録します。

    (1) Raspberry Pi側からHULFTへ転送する際の転送の設定を登録します。
    Meeting07_04a.png

    Meeting07_05a.png

    (2) 監視対象のファイル名に製造ラインのカメラで出力される画像ファイルを指定します。
     ここで指定したファイルがHULFTへ転送されます。

    Meeting07_06a.png【プロファイル】
      設定名      :profile01
      ファイルID    :LINE01
      ファイル名    :/usr/local/linecamera/images/*.jpg
                (camera.shでファイルが出力されるディレクトリ、
                 jpgファイルのワイルドカード)
      転送タイプ    :バイナリ転送
      転送コードセット :UTF-8
      監視モード    :タイムスタンプ
      監視経過期間   :1秒
      監視間隔     :1秒

  3. HULFT IoT Agentにユニットとプロファイルを設定します。
    (HULFT IoT Agentに接続先と転送する設定を関連付ける必要があります。)

    「1.」「2.」で登録した設定をHULFT IoT Agentに適用します。
    Meeting07_07a.png

    Meeting07_08a.png新しいユニット   :「1.」で作成したユニット


    Meeting07_09a.png新しいプロファイル :「2.」で作成したプロファイル

  4. 画像保持サーバ側にある集信用HULFTの管理情報を作成します。

    (1) 詳細ホストに転送元(配信側)のHULFT IoT Agentを登録します。
     ホスト名にはHULFT IoT Mangaerで表示されるエージェントIDを設定します。
    Meeting07_10a.png【詳細ホスト情報】
      ホスト名     :エージェントID
      転送コードセット :UTF-8
      集信ポート    :30000
      要求受付ポート  :31000


    (2)保管ファイルを監視モニターが表示するパスにコピーするジョブを作成します。
    コピージョブのバッチファイル ( C:\HULFT Family\hulft8\job\cp.bat )
    copy /B /Y %$FILENM% C:\monitor\lineimg\img.jpg


    Meeting07_11a.png【ジョブ起動情報】
      ジョブID  :job01
      起動ジョブ :C:\HULFT Family\hulft8\job\cp.bat


    (3)HULFT IoT Agentから集信する設定を登録します。
     

    ファイルを保管するため、HULFT IoT Agentから配信されたファイル名そのままで集信するよう環境変数「$SNDFILE」を使用します。また、集信したファイルを監視モニターに表示させる為、「(2)」で作成した後続ジョブを設定します。



    Meeting07_12a.png【集信管理情報】
      ファイルID   :LINE01
      ファイル名   :C:temp\rcv\line01\$SNDFILE
      登録モード   :置き換え
      正常時ジョブID :job01

  5. 画像保持サーバ側にある監視モニターを起動します。
    HULFT IoT Agentから配信されたファイルを表示するため、監視モニターを起動します。
    C:\monitor\lineimg\index.htmlをダブルクリック
  6. 製造ライン側にあるHULFT IoT Agentを起動します。
    HULFT IoT Agentをスーパーユーザで起動します。
    sudo /opt/hulftiot/huliotservice
  7. camera.shを実行し、製造ライン側で撮影を開始します。
    camera.shを実行すると、Raspberry Piのカメラが撮影を始めます。
    /usr/local/linecamera/camera.shを実行すると、
    /usr/local/linecamera/images/配下にYYYYMMDD-HHMMSS_持上げNo.jpgのファイルが出力されます。

    おめでとうございます!
    正しく設定されるとYYYYMMDD_持上げNo.jpgが転送され、
    監視モニターにHULFT IoT Agentから送られてきた画像が表示されますっ!

まとめ

IoT( Internet of Things )をご体験いただけたでしょうか。
このようにHULFT IoTを用いれば、Raspberry Piのほかにも
小型センサー等といったIoTゲートウェイ機器とも、ファイル転送が容易に実現可能です。

こちらの連載記事も併せてご覧ください。
HULFT IoT × Raspberry Pi (ラズベリーパイ)ではじめるIoT その① ~泥棒対策本気で考えてみた~
この記事は役に立ちましたか?
0人中0人がこの記事が役に立ったと言っています

コメント