Qt for Automation

Qt におけるシリアル化

Published Sunday October 28th, 2018 | Leave a comment
Posted in Qt for Automation | Tags: , , , , ,

この記事は The Qt Blog の Serialization in and with Qt を翻訳したものです。 執筆: Maurice Kalinowski, 2018年05月31日 この連載の最初の記事 で、メッセージの構築と組み合わせ、テレメトリセンサーでのオーバーヘッドの削減を紹介しました。 今回は、メッセージのペイロード(本体)とその最適化について紹介します。 Qt にはオブジェクトのシリアル化の方法がいくつかあります。パート1では、JSON を利用しました。この場合、すべてのセンサーの情報は QJsonObject に収められ、QJsonDocument が情報を QByteArray に変換する役を担いました。 QJsonObject jobject; jobject[“SensorID”] = m_id; jobject[“AmbientTemperature”] = m_ambientTemperature; jobject[“ObjectTemperature”] = m_objectTemperature; jobject[“AccelerometerX”] = m_accelerometerX; jobject[“AccelerometerY”] = m_accelerometerY; jobject[“AccelerometerZ”] = m_accelerometerZ; jobject[“Altitude”] = m_altitude; jobject[“Light”] = m_light; jobject[“Humidity”] = m_humidity; […]

Read More

5.11 での QtKNX のアップデート

Published Tuesday September 18th, 2018 | Leave a comment
Posted in Qt for Automation | Tags: , ,

この記事は The Qt Blog の QtKNX updates for 5.11 を翻訳したものです。 執筆: Andrew O’Doherty, 2018年05月18日 以前 KNX の対応 についてお知らせをして以降しばらく間が空いてしまいましたが、5.11 のリリースに合わせてアップデートを行う QtKNX の内容を簡単に紹介したいと思います。 API の改善 今回のアップデートの焦点の一つは Qt KNX のオブジェクトの走査と構築をより直感的に改善することでした。KNXnet/IP フレームで必要となる数多くの仕様に対応するために、プロキシパターンを導入しました。例えば、KNXnet/IP の接続要求のフレームで実行される情報は QKnxNetIpConnectRequestProxy クラスを利用して得ることができます。

Read More

Qt の MQTT でデバイス間通信の最適化

Published Tuesday September 18th, 2018 | Leave a comment
Posted in Qt for Automation | Tags: ,

この記事は The Qt Blog の Optimizing Device Communication with Qt MQTT を翻訳したものです。 執筆: Maurice Kalinowski, 2018年05月16日 Qt for Automation は Qt for Application Development や Qt for Device Creation 向けのアドオンとして、Qt 5.10 に合わせてリリース致しました。これに含まれる Qt MQTT と呼ばれるモジュールが、クライアントサイドの MQTT のソリューションです。 Qt MQTT はクライアント用で、開発者が MQTT で送るデータを管理するセンサーデバイスやゲートウエイを開発する際に利用されます。MQTT はそれ自身が軽量で、オープンで、シンプルだとうたっています。プロトコル的にオーバーヘッドを限りなく減らすというのが基本的な思想です。もっとも採用されているバージョンは MQTT 3.1.1 で、これはよく MQTT 4 と呼ばれています。MQTT 5 は最近標準化がなされ、Qt MQTT でもその対応を進めています。これについては今年の後半に別途お知らせ致します。 このモジュールの機能の確認と、開発者への利用のガイドラインを作成するために、The Qt […]

Read More

Qt 5.11 の OPC UA 対応

Published Saturday September 8th, 2018 | Leave a comment
Posted in Qt for Automation | Tags: ,

この記事は The Qt Blog の OPC UA support in Qt 5.11 を翻訳したものです。 執筆: Frank Meerkötter, 2018年05月16日 OPC UA はインダストリー 4.0 の中心となる要素で IT と産業製品のシステムのシームレスなコミュニケーションを提供します。Qt の OPC UA 対応は簡単に使える OPC UA 用の Qt の API を提供することを目的に basysKom が 2015 年に開始したものです。2017 年には The Qt Company も協力し、テクノロジープレビューが完成しました。五月下旬にリリースされる Qt 5.11 で利用可能になる予定です。 Qt OPC UA の目標は、HMI やアプリケーション開発におけるクライアント側の実装を簡単にするというものです。テクノロジープレビュー版では OPC UA スタンダードのサブセットの実装を行いました。これにより、サーバーへ接続し、属性の読み書き、サーバー側のメソッドの実行、データの変更のモニタリングやノードの監視などが可能になりました。すべての機能は非同期な API […]

Read More

Qt for Automation の連載について

Published Saturday September 8th, 2018 | Leave a comment
Posted in Qt for Automation

この記事は The Qt Blog の Qt for Automation Blog Series を翻訳したものです。 執筆: Lars König, 2018年05月09日 みなさんこんにちは! 産業界や、インフラ分野において将来的に自動化がより進むのはもはや公然の事実でしょう。ユビキタスなデジタルトランスフォーメーションや、インダストリー4.0のもと行われた標準化、今後期待される産業 IoT 技術が主なトレンドです。余談:もしこういったトレンドの詳細を学びたい方向けに2つの電子書籍を用意しています。一つは 技術的な側面 からのもので、もう一つは ビジネス的な側面 にフォーカスしたものです。どちらも リソースページ から無料で入手していただけます。 新たなビジネスを開拓する道程で、こういった疑問を抱くかもしれません。活用事例はあるのか?マーケットは受け入れる用意があるのか?製品のマネタイズをどうすべきか?そもそも技術的に実現可能か? 最後の疑問が後付けのように聞こえる方は、遅かれ早かれ目の当たりにするスケーラビリティ関係の落とし穴を見落としているかもしれません。 膨大な数のセンサーが計測する何種類もの異なるデータが、信頼性の異なるネットワークを通して、ディスプレイの有無に関わらずユーザーのエンドポイントまで多数の組み合わせとなります。さらに、そういったソフトウェアを動作させるプラットフォームの選択もしなければいけません。PC で?スマホで?組み込み機器で?クラウドは? 一般的には、多くのユースケースに対応するためには、多くの機能を、様々なプラットフォームに向けて、色々な形で、パフォーマンスとフットプリントを考慮しつつ、ソースコードをコンパクトに保ち、少ないデータ転送量で実現するような実装をする必要があります。 これらのすべてを完璧に実現するにはスケーラビリティの問題を回避するように精密な計画を立て、柔軟かつ効率的にアプリケーションの開発、改善、保守に努めなければなりません。 先端を行く企業の中にはソリューションを既に探し始めているところがあるというのは朗報でしょう。そして、まさにそれが、この記事から始まる連載でお伝えしたいことです。みなさんがどのようにプロジェクトを開始し、将来に備えるべきかについてベストプラクティスや技術の紹介をしたいと思います。 今後数週間で、以下のトピックについての記事を記載する予定です。(翻訳し次第リンクを切り替えます) Qt の MQTT でデバイス間通信の最適化 Qt におけるシリアル化 Message integration with DDS Remote UIs with WebGL and WebAssembly Cloud integration 詳細が気になる、もしくは直接話を聞きたい場合は? Qt for Automation […]

Read More

あなたの想いを KNX プロトコルに載せる、スマートホーム用のライブラリ QtKnx について

Published Thursday August 17th, 2017 | Leave a comment
Posted in Qt for Automation | Tags: ,

この記事は The Qt Blog の Introducing QtKnx, the smart home library that translates your wishes into KNX protocol. を翻訳したものです。 執筆: Lucie Gérard, 2017年8月14日 QtKnx は Qt ユーザーのみなさんをホームオートメーションの世界へお連れします。 マルチプラットフォームでエレガントでフレキシブルなスマートホーム向けのソフトウェアが簡単に作れるようになりました。 必要なものは新たに開発された QtKnx ライブラリと、Qt の既存の機能だけです。 KNX はスマートホームとビル管理プロトコルのヨーロッパのリーダーで(https://www.knx.org)、PC 向けのソフトウェアでプログラミングやインストールが可能です。QtKnx ライブラリはオープンソースと商用のオプションでお使いいただけます。 まずはじめに、QtKnx では KNX サーバーを探索する KNX のクライアントの実装と、サーバーへのインストールの制御と管理が可能です。それでは実際の作業を見てみましょう。 テストケース (下記の写真の)ボードとサーバー用意し、QtKnx の機能を使って KNX の小さなインストールを試してみます。サーバーはイントラネット内にあるものを使います。 探索 以下が QtKnx ライブラリでサーバーを探索する方法です: 探索用のエージェントオブジェクトの取得(QKnxNetIpServerDiscoveryAgent agent) エージェントの設定(任意) エージェントに探索開始を指示(agent.start()) […]

Read More

QtMqtt について

Published Thursday August 17th, 2017 | Leave a comment
Posted in Qt for Automation | Tags: ,

この記事は The Qt Blog の Introducing QtMqtt を翻訳したものです。 執筆: Maurice Kalinowski, 2017年8月14日 最近、オートメーション分野にむけたアプローチについての議論が活発に行われています。興味のある方は、こちら と別の ブログ記事 も合わせてご覧ください。 オートメーションむけのプロジェクトを開始するにあたって、最初の障壁は適切なコミュニケーションスタックの構築です。MQTT はテレメトリデータ(センサーからのデータの収集やデバイスの状態など)の管理で、ここ数年でとても注目を集めている技術で、今回これをサポートすることで開発のワークフローの単純化に対応することにしました。 MQTT とは MQTT の自身の説明 を引用します。 “It was designed as an extremely lightweight publish/subscribe messaging transport. It is useful for connections with remote locations where a small code footprint is required and/or network bandwidth is at a premium.” […]

Read More

Qt for Automation

Published Thursday August 17th, 2017 | Leave a comment
Posted in Qt for Automation | Tags: , ,

この記事は The Qt Blog の Qt 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 […]

Read More
Get started today with Qt Download now