Qtブログ(日本語)

Qt for Automation

作成者: 鈴木 佑|Aug 17, 2017 12:48:24 AM

この記事は The Qt BlogQt for Automation を翻訳したものです。
執筆: Lars König, 2017年8月14日

みなさんこんにちは。おそらくみなさんはご存知とは思いますが、我々のミッションは開発者のみなさんが素晴らしいアプリケーションの開発において「本当に本当にしたいことに集中すること」をお助けするフレームワークや開発ツールをお届けすることです。

最近は Industry 4.0 や IoT の分野でまた新しいチャレンジがはじまっています。インターネットに接続されるデバイスの数はさらに増加し、これらの機器に由来する様々なデータの量は増大します。この結果、アプリケーションはどんどん複雑になっていくでしょう。

というわけで、戦いの現場はめまぐるしいペースで変わり続けます。デバイスのインフラの状況やアプリケーションの複雑化、開発自体。これらの結果、相互運用性やスケーラビリティの多次元的なチャレンジが生まれます。我々はこの度新たに開発した Qt for Automation で、みなさんのチャレンジをチャンスに変えるお手伝いをしたいと思います。

「オートメーション」の定義は?

我々にとっての「オートメーション」とは、複雑なオートメーション環境に存在する、すべてのネットワークに接続されうる(末端の)デバイス(クライアントやゲートウェイ、ヘッドレス機器)と、それと連携するデスクトップアプリケーションを意味します。「スマート施設」「ネットワークサービスのタッチポイント」と「オートメーションの構築」の間にあるものを考えてみてください。それらのすべてのセグメントで、技術だけではなくサービスやビジネス面で同様のチャレンジが存在するでしょう。

「Qt for Automation」の理由

Qt for Automation では、新たなライブラリや開発ツールを提供するだけではなく、このドメインに特化した サービス を提供することでこの業界特有の問題の解決をサポートします。

Qt for Automation の今回のリリースははじまりにすぎません。今後様々な改善や改良を継続的に行い、定期リリースという形で更新していく予定です。

それでは、この最初のリリースを紹介します。

基本思想:Qt 5.9 LTS などを最大限活かす

Qt for Automation には仮想キーボード、QtSerialBus、VNC、Qt Lite Confituration Tool、WebGL ストリーミング機能(Qt 5.10 で導入予定)など、Qt 5.9.x LTS のお気に入りの機能がすべて含まれます。Boot2Qt もお使いいただけます。詳細は こちら をご覧ください。

Qt Lite Configuration Tool では、これまでのすべての Qt の機能をつめこんだモノリシックなアプローチとは異なる、そのアプリケーションに必要な機能のみを組み合わせた Qt の構築が可能となります。これによりバイナリサイズの最適化や、パフォーマンスの改善、起動時間の短縮などが実現できます。

新機能:MQTT - コネクテッドデバイスむけの強力な武器

パブリッシャー/サブスクライバー方式のプロトコルの人気がオートメーションのインフラで高まりつつあります。Message Queuing Telemetry Transport(MQTT) はその中でも有望な候補の一つです。設計的にとてもコンパクトで、セキュリティの要件も満たし、すべてのインフラのメンバーに対して状態の保証をしています。これらの特徴はすべて重要で、これにより開発がシンプルになり、安全で信頼できるプロトコルを利用したソリューションが構築できるようになります。MQTT はセンサーからのデータを衛星経由でブローカーに届けたり、ホームオートメーションや小さなデバイスまで幅広く使われてきました。サイズの小ささや省電力設計、データパケットの最小化やデータ拡散の効率性などにより、IoT アプリケーションにぴったりなプロトコルでもあります。

今回新しく開発した MQTT ライブラリはクライアントのみ(ブローカーは非対応)ですが、プロトコルレベル 3.1 と 3.1.1 の仕様に完全準拠しています。

MQTT ライブラリは Qt for Automation の一部として、もしくは GPL 3 として提供されます。

QtMqtt の詳細は こちらのブログ記事 をご覧ください。

新機能:KNX - ビル管理オートメーションのワールドワイドリーダー

KNX アソシエーションおよび KNX スタンダードは異なるベンダ間での標準化や操作性の分野のパイオニアとして長年活躍してきました。これまでの実績的にもホームオートメーションやビル管理オートメーションのワールドワイドなリーダーです。KNX 自身の説明のとおり、電気の点灯消灯やシャッター操作、セキュリティシステム、温度管理、換気、空調管理、監視、警告、水まわりの制御、エネルギー管理、スマートメーター、家電、AV機器などの多岐な分野に渡る、家庭やビル制御のアプリケーションの国際標準です。KNX は非常に野心的な構成を目指していて、ユビキタス的な標準として現場から強く支持されています。しかしながら、KNX にはクライアントアプリケーションの開発と配布が比較的難しいという長期的な課題もあります。

今回我々が開発した KNX 向けのライブラリはこのギャップを埋めるもので、みなさんがスマートビルディング向けの専用 UI を簡単に開発でき、将来的に(音声認識などの)様々な新機能への対応や(BLEなどの)新技術の採用を手助けするものです。Qt の良さを KNX に導入することで、照明の点灯をたった数行のコードで実現できるようになります。

KNX 用のライブラリは Qt for Automation の一部として、もしくは GPL v3 で利用可能です。

QtKnx の詳細は こちらのブログ記事 をご覧ください。

すべてのプラットフォームに向けた、デバイス、モバイル向けアプリ、PC向けアプリケーションの開発

正しい選択でスタートを切りましょう。我々は Qt for Automation で提供する追加のコンポーネント以上のものをみなさんに提供したいと考えています。オートメーションは利用するプラットフォームや個々のソリューション、出荷台数、開発速度、開発時の問題解決の必要性など、様々な観点をもって進めていかないといけないことを知っています。

これに対するアプローチとして、オートメーションのお客様にはさらなる価値を提供することにしました:

  • すべてのプラットフォームの開発に対応。 我々はお客様がデバイスのみを開発するだけではなく PC 向けのアプリケーションや、スマホアプリも開発することを理解しています。
  • オートメーション向けのコンサルティングサービス。 開発者は定期的にプレッシャーに悩まされるにもかかわらず、問題の解決や手助けを求めるのには時間がかかります。このため、産業に応じたコンサルティングサービスも提供いたします。手配をしていただくだけで利用が可能です。

今後の予定

Qt for Automation はまだ最初のリリースで、今後に向けてさまざまなことを計画しています。当面は既存のライブラリやツールの拡張を行う予定です。OPC/UA や AMQP など取り組みたい課題もリストアップしています。この開発を計画的に行うために、The Qt Company とパートナーによる専門のチームを結成し、順調に拡大中です :)

ベルリンで開催される QtWS 2017 のオートメーショントラックに参加しよう!

QtWS 2017 ではオートメーショントラックを設けました。KNX や MQTT や(CoAPなど)それ以外の様々なトピックに関するセッションを予定していますので、是非聞きに来てください。

ウェブセミナーの案内

お問い合わせ

今回提供を開始した Qt for Automation に興味を持っていただいた方と是非お話をさせていただきたいと思います。お問い合わせ にてコンタクトをお待ちしています。