(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-09-17
(45)【発行日】2024-09-26
(54)【発明の名称】マルチアダプタ互換ライブラリファイルモジュール、呼び出し方法、呼び出しシステム及びデバイス
(51)【国際特許分類】
G06F 8/76 20180101AFI20240918BHJP
【FI】
G06F8/76
(21)【出願番号】P 2023540727
(86)(22)【出願日】2022-08-02
(86)【国際出願番号】 CN2022109809
(87)【国際公開番号】W WO2023011504
(87)【国際公開日】2023-02-09
【審査請求日】2023-07-03
(31)【優先権主張番号】202110878595.0
(32)【優先日】2021-08-02
(33)【優先権主張国・地域又は機関】CN
(73)【特許権者】
【識別番号】522308967
【氏名又は名称】シャンハイ トサン テクノロジー リミテッド
【氏名又は名称原語表記】Shanghai TOSUN Technology Ltd.
(74)【代理人】
【識別番号】110001841
【氏名又は名称】弁理士法人ATEN
(72)【発明者】
【氏名】リィゥ チュ
(72)【発明者】
【氏名】シェ ユェイン
(72)【発明者】
【氏名】ムォ マン
【審査官】松平 英
(56)【参考文献】
【文献】中国特許出願公開第112202874(CN,A)
【文献】特表2017-530483(JP,A)
【文献】特開2020-004158(JP,A)
【文献】坂本 直史 他,研究!クルマのテクノロジ これから10年使える技術!標準AUTOSAR開発プラットホーム入門 安全に使い回す!車載ソフトウェアの世界 第8回 通信モジュールCOMの各レイヤの動作,Interface,日本,CQ出版株式会社,2016年01月11日,第42巻 第11号 ,pp.173-182,[ISSN]0387-9569
(58)【調査した分野】(Int.Cl.,DB名)
B60R 9/00-11/06
16/00-21/13
21/34-99/00
G06F 8/00-8/38
8/60-8/77
9/44-9/445
9/451
(57)【特許請求の範囲】
【請求項1】
マルチアダプタ互換用ライブラリファイルモジュールであって、
シリアル番号を読み取るサブモジュール、チャネル数を読み取るサブモジュール、チャネルタイプを読み取るサブモジュール、チャネルのボーレートを読み取るサブモジュール、チャネルのボーレートを書き込むサブモジュール、接続サブモジュール、メッセージ送信サブモジュール、メッセージ受信サブモジュール及び切断サブモジュールを含む、
ことを特徴とするマルチアダプタ互換用ライブラリファイルモジュール。
【請求項2】
前記シリアル番号を読み取るサブモジュールは、ライブラリファイルからデバイスAPIを読み取ってデバイスのシリアル番号をアプリケーションプログラムに返信することに適することと、
前記チャネル数を読み取るサブモジュールは、前記ライブラリファイルから前記デバイスAPIを読み取って前記デバイスの物理チャネル数を前記アプリケーションプログラムに返信することに適することと、
前記チャネルタイプを読み取るサブモジュールは、前記ライブラリファイルから前記デバイスAPIを読み取って前記デバイスの特定チャネルのタイプを前記アプリケーションプログラムに返信することに適することと、
前記チャネルのボーレートを読み取るサブモジュールは、前記ライブラリファイルから前記デバイスAPIを読み取って且つ特定チャネルのボーレートを前記アプリケーションプログラムに返信することに適することと、
前記チャネルのボーレートを書き込むサブモジュールは、前記ライブラリファイルから前記デバイスAPIを呼び出し且つAPPから与えられた前記ボーレートを前記デバイスに書き込むことに適することと、
前記接続サブモジュールは、前記ライブラリファイルから前記デバイスAPIを呼び出すことにより前記APPと前記デバイスとの接続を実現することに適することと、
前記メッセージ送信サブモジュールは、前記ライブラリファイルから前記デバイスAPIを呼び出し且つ前記APPから与えられた、送信する必要があるメッセージを前記デバイスに書き込むことに適することと、
前記メッセージ受信サブモジュールは、前記ライブラリファイルから前記デバイスAPIを呼び出し且つ前記デバイスが全てのチャネルから読み取った前記メッセージを前記アプリケーションプログラムに返信することに適することと、
前記切断サブモジュールは、前記ライブラリファイルから前記デバイスAPIを呼び出すことにより前記アプリケーションプログラムから前記デバイスを切断することに適することと、を含む、
ことを特徴とする請求項1に記載のマルチアダプタ互換用ライブラリファイルモジュール。
【請求項3】
マルチアダプタ互換用呼び出し方法であって、
各メーカーのライブラリファイルモジュールを構築することと、
アプリケーションプログラムは、前記ライブラリファイルモジュールによってデバイスのメッセージ情報を取得することと、
前記メッセージ情報を取得した後に、前記デバイスとの接続を切断することと、を含
み、
前記各メーカーの前記ライブラリファイルモジュールを構築する方法は、
前記ライブラリファイルモジュールは、シリアル番号を読み取るサブモジュール、チャネル数を読み取るサブモジュール、チャネルタイプを読み取るサブモジュール、チャネルのボーレートを読み取るサブモジュール、チャネルのボーレートを書き込むサブモジュール、接続サブモジュール、メッセージ送信サブモジュール、メッセージ受信サブモジュール及び切断サブモジュールを含んでおり、
前記シリアル番号を読み取るサブモジュールは、前記ライブラリファイルからデバイスAPIを読み取って前記デバイスのシリアル番号を前記アプリケーションプログラムに返信することに適し、
前記チャネル数を読み取るサブモジュールは、前記ライブラリファイルから前記デバイスAPIを読み取って前記デバイスの物理チャネル数を前記アプリケーションプログラムに返信することに適し、
前記チャネルタイプを読み取るサブモジュールは、前記ライブラリファイルから前記デバイスAPIを読み取って前記デバイスの特定チャネルのタイプを前記アプリケーションプログラムに返信することに適し、
前記チャネルのボーレートを読み取るサブモジュールは、前記ライブラリファイルから前記デバイスAPIを読み取って且つ特定チャネルのボーレートを前記アプリケーションプログラムに返信することに適し、
前記チャネルのボーレートを書き込むサブモジュールは、前記ライブラリファイルから前記デバイスAPIを呼び出し且つAPPから与えられた前記ボーレートを前記デバイスに書き込むことに適し、
前記接続サブモジュールは、前記ライブラリファイルから前記デバイスAPIを呼び出すことにより前記APPと前記デバイスとの接続を実現することに適し、
前記メッセージ送信サブモジュールは、前記ライブラリファイルから前記デバイスAPIを呼び出し且つ前記APPから与えられた、送信する必要があるメッセージを前記デバイスに書き込むことに適し、
前記メッセージ受信サブモジュールは、前記ライブラリファイルから前記デバイスAPIを呼び出し且つ前記デバイスが全てのチャネルから読み取った前記メッセージを前記アプリケーションプログラムに返信することに適し、
前記切断サブモジュールは、前記ライブラリファイルから前記デバイスAPIを呼び出すことにより前記アプリケーションプログラムから前記デバイスを切断することに適すること、を特徴とするマルチアダプタ互換用呼び出し方法。
【請求項4】
前記アプリケーションプログラムが、前記ライブラリファイルモジュールによって前記デバイスのメッセージ情報を取得する方法は、
前記アプリケーションプログラムは、前記メーカーに対応する前記ライブラリファイルモジュールによって前記デバイスの前記メッセージ情報を取得し、すなわち、
前記シリアル番号を読み取るサブモジュール、前記チャネル数を読み取るサブモジュール、前記チャネルタイプを読み取るサブモジュール、前記チャネルのボーレートを読み取るサブモジュール、前記チャネルのボーレートを書き込むサブモジュール、前記接続サブモジュール、前記メッセージ送信サブモジュール、及び前記メッセージ受信サブモジュールの機能を順に実現し、前記メッセージ情報を取得すること、を特徴とする請求項
3に記載のマルチアダプタ互換用呼び出し方法。
【請求項5】
前記メッセージ情報を取得した後に、前記デバイスとの接続を切断する方法は、
前記メッセージ情報を取得した後に、前記切断サブモジュールによって前記アプリケーションプログラムと前記デバイスとの接続を切断することを実現すること、
を特徴とする請求項
4に記載のマルチアダプタ互換用呼び出し方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明はアダプタ互換技術分野に属し、具体的にはマルチアダプタ互換ライブラリファイルモジュール、呼び出し方法、呼び出しシステム及びデバイスに関する。
【背景技術】
【0002】
自動車ツールの応用において、常に既存のさまざまなメーカーの1つまたは数種類の設備を同時に又は交互に使用する必要があり、一般的なやり方は一つの上位のAPP(アプリケーションプログラム)を開発し同時にメーカーA、メーカーB及びメーカーCのAPIをサポートし、マッピング方法を配置することによりこのAPPは、これら3つのメーカーのハードウェアと自由に通信できるようになっている。この設計では、次のような問題が発生する:
APPを設計する時にメーカーA、メーカーB及びメーカーCのAPI表現形式及び呼び出し方法を同時に理解しなければならず、且つAPPにこの3つのメーカーのAPI呼び出しアルゴリズムを含み、これはAPP自体の開発難易度及び作業量を向上させる。
APPのアーキテクチャは、新たなメーカーを動的に追加することをサポートできず、例えば新興のメーカーD及びメーカーEのデバイスであり、それらのAPIはメーカーA、メーカーB及びメーカーCと異なる明確な表現形式を有するためである。APP自体のアーキテクチャは拡張しにくく柔軟性に欠けるという特徴がある。
【0003】
APPは新たなメーカー、例えばメーカーD及びメーカーEのデバイスをサポートする必要がある場合、APPの実現論理を修正しなければならず、従来のフレームワーク内にメーカーD及びメーカーEのAPI呼び出しアルゴリズムを導入する。これはAPPを変更する。変更中にソフトウェアの作業量を増加し、同時に欠陥を導入してサポートされたメーカーのAPIの呼び出しが影響を受ける可能性がある。
【0004】
したがって、上記技術的問題に基づいて新たなマルチアダプタ互換ライブラリファイルモジュール、呼び出し方法、呼び出しシステム及びデバイスを設計する必要がある。
【発明の概要】
【0005】
本発明の目的は、マルチアダプタ互換ライブラリファイルモジュール、呼び出し方法、呼び出しシステム及びデバイスを提供することである。
【0006】
上記技術的問題を解決するために、本発明はマルチアダプタ互換用ライブラリファイルモジュールを提供し、以下を含む:
シリアル番号を読み取るサブモジュール、チャネル数を読み取るサブモジュール、チャネルタイプを読み取るサブモジュール、チャネルのボーレートを読み取るサブモジュール、チャネルのボーレートを書き込むサブモジュール、接続サブモジュール、メッセージ送信サブモジュール、メッセージ受信サブモジュール及び切断サブモジュールである。
さらに、上記シリアル番号を読み取るサブモジュールは、ライブラリファイルからデバイスAPIを読み取ってデバイスのシリアル番号をアプリケーションプログラムに返信することに適する。
上記チャネル数を読み取るサブモジュールは、ライブラリファイルからデバイスAPIを読み取ってデバイスの物理チャネル数をアプリケーションプログラムに返信することに適する。
上記チャネルタイプを読み取るサブモジュールは、ライブラリファイルからデバイスAPIを読み取ってデバイスの特定チャネルのタイプをアプリケーションプログラムに返信することに適する。
上記チャネルのボーレートを読み取るサブモジュールは、上記ライブラリファイルから上記デバイスAPIを読み取って且つ特定チャネルのボーレートを上記アプリケーションプログラムに返信することに適する。
上記チャネルのボーレートを書き込むサブモジュールは、上記ライブラリファイルから上記デバイスAPIを呼び出し且つAPPに与えられたボーレートを上記デバイスに書き込むことに適する。
上記接続サブモジュールは、上記ライブラリファイルから上記デバイスAPIを呼び出すことにより上記APPと上記デバイスとの接続を実現することに適する。
上記メッセージ送信サブモジュールは、上記ライブラリファイルから上記デバイスAPIを呼び出し且つ上記APPに与えられた送信する必要があるメッセージを上記デバイスに書き込むことに適する。
上記メッセージ受信サブモジュールは、上記ライブラリファイルから上記デバイスAPIを呼び出し且つ上記デバイスが全てのチャネルから読み取った上記メッセージを上記アプリケーションプログラムに返信することに適する。
上記切断サブモジュールは、上記ライブラリファイルから上記デバイスAPIを呼び出すことにより上記アプリケーションプログラムから上記デバイスを切断することに適する。
【0007】
第二態様では、本発明はさらにマルチアダプタ互換用呼び出し方法を提供し、以下を含む:
各メーカーのライブラリファイルモジュールを構築する。
アプリケーションプログラムは、上記ライブラリファイルモジュールによってデバイスのメッセージ情報を取得する、及び、
上記メッセージ情報を取得した後に上記デバイスとの接続を切断する。
【0008】
さらに、上記各メーカーのライブラリファイルモジュールを構築する方法は以下を含む:
上記ライブラリファイルモジュールは、シリアル番号を読み取るサブモジュール、チャネル数を読み取るサブモジュール、チャネルタイプを読み取るサブモジュール、チャネルのボーレートを読み取るサブモジュール、チャネルのボーレートを書き込むサブモジュール、接続サブモジュール、メッセージ送信サブモジュール、メッセージ受信サブモジュール及び切断サブモジュールを含む。
上記シリアル番号を読み取るサブモジュールは、上記ライブラリファイルからデバイスAPIを読み取って上記デバイスのシリアル番号を上記アプリケーションプログラムに返信することに適する。
上記チャネル数を読み取るサブモジュールは、上記ライブラリファイルから上記デバイスAPIを読み取って上記デバイスの物理チャネル数を上記アプリケーションプログラムに返信することに適する。
上記チャネルタイプを読み取るサブモジュールは、上記ライブラリファイルから上記デバイスAPIを読み取って上記デバイスの特定チャネルのタイプを上記アプリケーションプログラムに返信することに適する。
上記チャネルのボーレートを読み取るサブモジュールは、上記ライブラリファイルから上記デバイスAPIを読み取って且つ特定チャネルのボーレートを上記アプリケーションプログラムに返信することに適する。
上記チャネルのボーレートを書き込むサブモジュールは、上記ライブラリファイルから上記デバイスAPIを呼び出し且つAPPに与えられた上記ボーレートをデバイスに書き込むことに適する。
上記接続サブモジュールは、上記ライブラリファイルから上記デバイスAPIを呼び出すことにより上記APPと上記デバイスとの接続を実現することに適する。
上記メッセージ送信サブモジュールは、上記ライブラリファイルから上記デバイスAPIを呼び出し且つ上記APPに与えられた送信する必要があるメッセージを上記デバイスに書き込むことに適する。
上記メッセージ受信サブモジュールは、上記ライブラリファイルから上記デバイスAPIを呼び出し且つ上記デバイスが全てのチャネルから読み取った上記メッセージを上記アプリケーションプログラムに返信することに適する。
上記切断サブモジュールは、上記ライブラリファイルから上記デバイスAPIを呼び出すことにより上記アプリケーションプログラムから上記デバイスを切断することに適する。
【0009】
さらに、上記アプリケーションプログラムが上記ライブラリファイルモジュールによって上記デバイスのメッセージ情報を取得する方法は以下を含む:
上記アプリケーションプログラムは、上記メーカーに対応する上記ライブラリファイルモジュールによって上記デバイスの上記メッセージ情報を取得し、すなわち、
上記シリアル番号を読み取るサブモジュール、上記チャネル数を読み取るサブモジュール、上記チャネルタイプを読み取るサブモジュール、上記チャネルのボーレートを読み取るサブモジュール、上記チャネルのボーレートを書き込むサブモジュール、上記接続サブモジュール、上記メッセージ送信サブモジュール、及び上記メッセージ受信サブモジュールの機能を順に実現し、上記メッセージ情報を取得する。
【0010】
さらに、上記メッセージ情報を取得した後に上記デバイスとの接続を切断する方法は以下を含む:
上記メッセージ情報を取得した後に上記切断サブモジュールによって上記アプリケーションプログラムと上記デバイスの接続を切断することを実現する。
【0011】
第三態様では、本発明はさらにマルチアダプタ互換用呼び出しシステムを提供し、以下を含む:
ライブラリファイルモジュールであって、各メーカーの上記ライブラリファイルモジュールを構築する。
メッセージ情報を取得するモジュールであって、アプリケーションプログラムは、上記ライブラリファイルモジュールによってデバイスの上記メッセージ情報を取得すること、及び、
切断モジュールであって、上記メッセージ情報を取得した後に上記デバイスとの接続を切断する。
【0012】
第四態様では、本発明はさらにマルチアダプタ互換デバイスを提供し、以下を含む:
制御モジュール、及び当該制御モジュールに電気的に接続された複数のインタフェースモジュール。
上記インタフェースモジュールは、アダプタに接続するのに適する。
上記制御モジュールは、上記アダプタを介してデバイスから送信されたメッセージ情報を受信するのに適する。
【0013】
第五態様では、本発明はさらにマルチアダプタ互換システムを提供し、以下を含む:
マルチアダプタ互換デバイス及び上位機である。
上記上位機は、上記マルチアダプタ互換デバイスから送信されたメッセージ情報を受信し、且つ上記メッセージ情報を分析することに適する。
【0014】
本発明の効果は以下の通りである。
本発明は、各メーカーのライブラリファイルモジュールを構築することと、アプリケーションプログラムがライブラリファイルモジュールによってデバイスのメッセージ情報を取得することと、及びメッセージ情報取得後にデバイスの接続を切断することにより、上位層APPにおいてアダプタの抽象化を実現する。上位層APPは汎用のAPIインタフェースを導出し、各メーカーのアダプタに対してライブラリファイルを作成する。メーカーアダプタのAPIを呼び出すことにより、上位層APPのAPIインタフェースを実現する。APPはメーカーアダプタのいずれかの詳細を知る必要がなく、ライブラリファイルをロードするだけでアダプタの機能を使用することができる。市場における全てのメーカーのアダプタを支持することができるだけでなく、同時にライブラリファイルを増加する方式によっていずれかの新しいメーカーのアダプタを支持することができ、アプリケーションプログラムの開発効率を大幅に向上させる。
【0015】
本発明の他の特徴及び利点は以下の明細書に記載され、且つ、一部は明細書から明らかになり、又は本発明を実施することによって理解される。本発明の目的及び他の利点は明細書及び図面に特に指摘された構造によって実現及び取得される。
【0016】
本発明の上記目的、特徴及び利点をより分かりやすくするために、以下は好適な実施例を挙げ、且つ添付図面と合わせ、詳細に説明する。
【図面の簡単な説明】
【0017】
本発明の具体的な実施形態又は従来技術における技術的解決手段をより明確に説明するために、以下では、具体的な実施形態又は先行技術の説明において使用する必要がある図面について簡単に説明する。以下の説明における図面は本発明のいくつかの実施形態であり、当業者にとって創造的な労力を払うことなく、これらの図面から他の図面を得ることができることは明白である。
【0018】
【
図1】
図1は、本発明に係るマルチアダプタ互換用呼び出し方法のフローチャートである。
【
図2】
図2は、本発明に係るマルチアダプタ互換用呼び出し方法の原理概略図である。
【
図3】
図3は、本発明に係るマルチアダプタ互換用呼び出しシステムの原理ブロック図である。
【発明を実施するための形態】
【0019】
本発明の実施例の目的、技術的解決手段および利点をより明確にするために、以下に添付図面と関連して本発明の技術的解決手段を明確かつ完全に説明するが、説明された実施例は本発明の一部の実施例であり、全ての実施例ではないことは明らかである。本発明における実施例に基づき、当業者は創造的な労働をしない前提で得られた全ての他の実施例は、いずれも本発明の保護範囲に属する。
【0020】
実施例1
本実施例1は、マルチアダプタ互換用ライブラリファイルモジュールを提供し、シリアル番号を読み取るサブモジュール、チャネル数を読み取るサブモジュール、チャネルタイプを読み取るサブモジュール、チャネルのボーレートを読み取るサブモジュール、チャネルのボーレートを書き込むサブモジュール、接続サブモジュール、メッセージ送信サブモジュール、メッセージ受信サブモジュール及び切断サブモジュールを含んでもよいがこれらに限定されない。ライブラリファイルモジュールによってメーカーアダプタのAPIを呼び出すことにより、上位層APP(アプリケーションプログラム)のAPIインタフェースを実現する。APPはメーカーアダプタのいずれかの詳細を知る必要がなく、ライブラリファイルをロードするだけでアダプタの機能を使用することができる。APPは開発が完了した後にいかなる修正を必要とせず、市場における全てのメーカーのアダプタを支持することができるだけでなく、同時にライブラリファイルを増加する方式によっていずれかの新しいメーカーのアダプタを支持することができ、アプリケーションプログラムの開発効率を大幅に向上させる。仕事量を減らし、エラー発生の可能性を低減する。
【0021】
本実施例では、APPは、一つのライブラリファイルモジュールをロードするたびに、このライブラリファイルモジュールに一連の特定のコールバック関数(対応する機能のサブモジュール)を呼び出す。これらのコールバック関数は、APP実行時にリアルタイムで呼び出される。コールバック関数の種類と数は、APPの機能に依存する。ライブラリファイルモジュールにおけるサブモジュール機能及び数量は、異なるメーカーに対して異なる実現を有し、さらに同じメーカーは異なる開発者によって同じ機能を備えるが異なる実現方式のライブラリファイルモジュールを実現することができる。上記シリアル番号を読み取るサブモジュールは、ライブラリファイルからデバイスAPIを読み取ってデバイスのシリアル番号をアプリケーションプログラムに返信することに適する。上記チャネル数を読み取るサブモジュールは、ライブラリファイルからデバイスAPIを読み取ってデバイスの物理チャネル数をアプリケーションプログラムに返信することに適する。上記チャネルタイプを読み取るサブモジュールは、ライブラリファイルからデバイスAPIを読み取ってデバイスの特定チャネルのタイプ(CANチャネル、またはLINチャネル、またはイーサネットチャネルなど)をアプリケーションプログラムに返信することに適する。上記チャネルのボーレートを読み取るサブモジュールは、ライブラリファイルからデバイスAPIを読み取って且つ特定チャネルのボーレートをアプリケーションプログラムに返信することに適する。上記チャネルのボーレートを書き込むサブモジュールは、ライブラリファイルからデバイスAPIを呼び出し且つAPPに与えられたボーレートをデバイスに書き込むことに適する。上記接続サブモジュールは、ライブラリファイルからデバイスAPIを呼び出すことによりAPPとデバイスとの接続を実現することに適する。上記メッセージ送信サブモジュールは、ライブラリファイルからデバイスAPIを呼び出し且つAPPに与えられた送信する必要があるメッセージをデバイスに書き込むことに適する。上記メッセージ受信サブモジュールは、ライブラリファイルからデバイスAPIを呼び出し且つデバイスが全てのチャネルから読み取ったメッセージをアプリケーションプログラムに返信することに適する。上記切断サブモジュールは、ライブラリファイルからデバイスAPIを呼び出すことによりアプリケーションプログラムからデバイスを切断するために適する。
【0022】
実施例2
図1は、本発明に係るマルチアダプタ互換用呼び出し方法のフローチャートである。
図1に示すように、実施例1の基礎で、本実施例2はさらにマルチアダプタ互換用の呼び出し方法を提供し、各メーカーのライブラリファイルモジュールを構築することと、アプリケーションプログラムがライブラリファイルモジュールによってデバイスのメッセージ情報を取得することと、及びメッセージ情報を取得した後にデバイスの接続を切断することとを含む。マルチアダプタ上層ソフトウェアの設計過程(マルチアダプタ互換用呼び出し方法の実行過程)はハードウェア非依存性を有し、設計過程においていずれかのメーカーの存在を事前に知る必要がなく、全てのアダプタに一般的に適用するソフトウェアプラットフォームを開発して完成することができ、さらにメーカーが自主的にデバイスのサポートを完成することができる。マルチアダプタ互換用呼び出し方法で構築された上位層のソフトウェアアーキテクチャはインタフェースの明確性と柔軟性を有し、ライブラリファイル(ライブラリファイルモジュール)をロードする方式で異なる種類の自動車アダプタを呼び出すことができ、新たに出現した自動車アダプタに対応することもできる。プロセス全体はAPPを修正する必要がなく、それによりAPPがソフトウェアプラットフォームとする接続能力を開拓し、自動車アダプタ分野の互換方法を統一する。
【0023】
本実施例において、上記ライブラリファイルモジュールは実施例1におけるライブラリファイルモジュールを用いて、メーカーに対応するライブラリファイルモジュールを構築することができる。
【0024】
本実施例において、マルチアダプタ互換用呼び出し方法は、ボトムアップであり、デバイスAPIの特性から入手し、インタフェースプログラムを作成し、インタフェースプログラムがマルチアダプタソフトウェアの上位層に要求されるインタフェース機能を実現し、最終的にマルチアダプタソフトウェアにロードして実行する。ボトムアップの方法は上位層ソフトウェアをハードウェアに無関係にさせ、開発が完了すると修正する必要がなく、それによりソフトウェアプラットフォーム化を実現し、常に新しいメーカーが生産した新しいアダプタを同じソフトウェアプラットフォームに加えることができる。
【0025】
図2は本発明に係るマルチアダプタ互換用呼び出し方法の原理概略図である。
本実施例において、上記各メーカーのライブラリファイルモジュールを構築する方法は下記のとおりである。上記ライブラリファイルモジュールは、シリアル番号を読み取るサブモジュール、チャネル数を読み取るサブモジュール、チャネルタイプを読み取るサブモジュール、チャネルのボーレートを読み取るサブモジュール、チャネルのボーレートを書き込むサブモジュール、接続サブモジュール、メッセージ送信サブモジュール、メッセージ受信サブモジュール及び切断サブモジュールを含んでもよいがこれに限定されない。上記シリアル番号を読み取るサブモジュールは、ライブラリファイルからデバイスAPIを読み取ってデバイスのシリアル番号をアプリケーションプログラムに返信することに適する。上記チャネル数を読み取るサブモジュールは、ライブラリファイルからデバイスAPIを読み取ってデバイスの物理チャネル数をアプリケーションプログラムに返信することに適する。上記チャネルタイプを読み取るサブモジュールは、ライブラリファイルからデバイスAPIを読み取ってデバイスの特定チャネルのタイプをアプリケーションプログラムに返信することに適する。上記チャネルのボーレートを読み取るサブモジュールは、ライブラリファイルからデバイスAPIを読み取って且つ特定チャネルのボーレートをアプリケーションプログラムに返信することに適する。上記チャネルのボーレートを書き込むサブモジュールは、ライブラリファイルからデバイスAPIを呼び出し且つAPPに与えられたボーレートをデバイスに書き込むことに適する。上記接続サブモジュールは、ライブラリファイルからデバイスAPIを呼び出すことによりAPPとデバイスとの接続を実現することに適する。上記メッセージ送信サブモジュールは、ライブラリファイルからデバイスAPIを呼び出し且つAPPから与えられた、送信する必要があるメッセージをデバイスに書き込むことに適する。上記メッセージ受信サブモジュールは、ライブラリファイルからデバイスAPIを呼び出し且つデバイスが全てのチャネルから読み取ったメッセージをアプリケーションプログラムに返信することに適する。上記切断サブモジュールは、ライブラリファイルからデバイスAPIを呼び出すことによりアプリケーションプログラムからデバイスを切断するために適する。
図2に示すように、ライブラリファイルAを例とし、その内部は左側メーカーAの各種API呼び出しアルゴリズムに対応するサブモジュール及び右側APPのコールバック関数機能に対応するサブモジュールを含み、二つの大部分の構成を実現し、外部メーカー装置とAPPとのインタフェースのAPIとする。
【0026】
図2に示すように、本実施例において、上記アプリケーションプログラムがライブラリファイルモジュールによってデバイスのメッセージ情報を取得する方法は以下のとおりである。アプリケーションプログラムは、メーカーに対応するライブラリファイルモジュールによってデバイスのメッセージ情報を取得し、すなわちシリアル番号を読み取るサブモジュール、チャネル数を読み取るサブモジュール、チャネルタイプを読み取るサブモジュール、チャネルのボーレートを読み取るサブモジュール、チャネルのボーレートを書き込むサブモジュール、接続サブモジュール、メッセージ送信サブモジュール、及びメッセージ受信サブモジュールの機能を順に実現し、メッセージ情報を取得する。
【0027】
本実施例において、上記メッセージ情報を取得した後にデバイスの接続を切断する方法は以下を含む:メッセージ情報を取得した後に、切断サブモジュールによってアプリケーションプログラムとデバイスの接続を切断することを実現する。
【0028】
実施例3
図3は、本発明に係るマルチアダプタ互換用呼び出しシステムの原理ブロック図である。
図3に示すように、実施例2に加えて、本実施例3はさらにマルチアダプタ互換用呼び出しシステムを提供し、以下を含む:
ライブラリファイルモジュールであって、各メーカーのライブラリファイルモジュールを構築する。
メッセージ情報を取得するモジュールであって、アプリケーションプログラムは、ライブラリファイルモジュールによってデバイスのメッセージ情報を取得する、及び、
切断モジュールであって、メッセージ情報を取得した後にデバイスの接続を切断する。
【0029】
実施例4
実施例3に加えて、本実施例4はさらにマルチアダプタ互換デバイスを提供し、以下を含む:
制御モジュール、及び当該制御モジュールに電気的に接続された複数のインタフェースモジュール。
上記インタフェースモジュールは、アダプタに接続するのに適する。
上記制御モジュールは、アダプタを介してデバイスから送信されたメッセージ情報を受信するのに適する。
本実施例において、上記制御モジュールにマルチアダプタ互換用呼び出しシステムにおける各モジュールの機能を集積することができ、且つAPPに基づいて対応するメーカーの各種類のAPI呼び出しアルゴリズム及びAPPのコールバック関数機能を呼び出す。
【0030】
実施例5
実施例4に加えて、本実施例5はさらにマルチアダプタ互換システムを提供し、マルチアダプタ互換デバイス及び上位機を含む。上記上位機は、上記マルチアダプタ互換デバイスから送信されたメッセージ情報を受信し、且つメッセージ情報を分析することに適する。
【0031】
本実施例では、上記マルチアダプタ互換性デバイスは、実施例4におけるマルチアダプタ互換性デバイスを用いることができ、上位機はAPPの機能及びニーズに基づいてマルチアダプタ互換性デバイスを介してデバイスから送信されたメッセージ情報を取得することができ、且つメッセージに対して分析処理を行う。
【0032】
以上をまとめると、本発明は、各メーカーのライブラリファイルモジュールを構築することと、アプリケーションプログラムがライブラリファイルモジュールによってデバイスのメッセージ情報を取得することと、及びメッセージ情報取得後にデバイスの接続を切断することにより、上位層APPにおいてアダプタの抽象化を実現する。上位層APPは汎用のAPIインタフェースを導出し、各メーカーのアダプタに対してライブラリファイルを作成する。メーカーアダプタのAPIを呼び出すことにより、上位層APPのAPIインタフェースを実現する。APPはメーカーアダプタのいずれかの詳細を知る必要がなく、ライブラリファイルをロードするだけでアダプタの機能を使用することができる。市場における全てのメーカーのアダプタを支持することができるだけでなく、同時にライブラリファイルを増加する方式によっていずれかの新しいメーカーのアダプタを支持することができ、アプリケーションプログラムの開発効率を大幅に向上させる。
【0033】
本願の提供するいくつかの実施例において、当然のことながら、開示されたデバイス及び方法は、他の方式によって実現することもできる。上記で説明したデバイスの実施例は単なる例示であり、例えば、図面におけるフローチャート及びブロック図は、本発明の複数の実施例によるデバイス、方法及びコンピュータプログラム製品の実現可能なアーキテクチャ、機能及び操作を示す。この点に関して、フローチャート又はブロック図における各ブロックは、所定の論理機能を実行するための一つ以上の実行可能命令を含むモジュール、プログラムセグメント、又はコードの一部を表すことができる。なお、いくつかの代替的な実現方式において、ブロックに表記された機能は図面に表記された順序と異なる順序で発生してもよい。例えば、二つの連続するブロックは、実際には実質的に並行して実行することができ、関連する機能に応じて、時には逆の順序で実行することもできる。また、ブロック図及び/又はフローチャートにおける各ブロック、並びにブロック図及び/又はフローチャートにおけるブロックの組み合わせは、所定の機能又は動作を実行する専用のハードウェアベースのシステムで実現されてもよく、又は専用のハードウェアとコンピュータ命令との組み合わせで実現されてもよいことに留意されたい。
【0034】
また、本発明の各実施例における各機能モジュールは、一体に集積して一つの独立した部分を形成してもよく、各モジュールが単独で存在してもよく、二つ又は二つ以上のモジュールを集積して一つの独立した部分を形成してもよい。
【0035】
上記機能はソフトウェア機能モジュールの形式で実現し且つ独立した製品として販売又は使用する場合、一つのコンピュータの読み取り可能な記憶媒体に記憶することができる。このような理解に基づき、本発明の技術的解決手段は本質的に又は従来技術に寄与する部分又は当該技術的解決手段の部分は、ソフトウェア製品の形式で表すことができる。当該コンピュータソフトウェア製品は、記憶媒体に記憶され、複数のコマンドを含んでコンピュータ装置(パーソナルコンピュータ、サーバ、又はネットワーク装置等であってもよい)に本発明の各実施例に記載の方法の全部又は一部のステップを実行させる。上記記憶媒体は以下を含む:Uディスク、モバイルハードディスク、リードオンリーメモリ(ROM,Read-Only Memory)、ランダムアクセスメモリ(RAM,Random Access Memory)、磁気ディスク又は光ディスク等の各種のプログラムコードを記憶することができる媒体。
【0036】
上述した本発明による理想的な実施例をヒントとして、上述した説明内容により、関係者は、本発明の技術思想を逸脱しない範囲内で、多様な変更及び修正を行うことが十分に可能である。本発明の技術的範囲は明細書の内容に限定されるものではなく、請求項の範囲に基づいてその技術的範囲を確定しなければならない。