説明

情報コード、情報コード読取装置及び情報コード読取装置のデータ更新システム

【課題】二次元コードを読取ったデータにより携帯端末のプログラムを更新する際に、プログラムを効率よく更新することができる携帯端末のプログラム更新システムを提供する。
【解決手段】コンピュータから出力されたOS更新用のQRコードを携帯端末で読込むと、プログラム更新モードに入り、このモード中に順に読込むと、携帯端末のメモリ9には、複数の連続するQRコードに対応したデータ1,2……が順に記憶される。この場合、データを読込んだときは、読取データが更新ファイルの一部をなすか、連続性を有するかなどを確認し、確認が終了した読取データのみを記憶し、それらのデータの整合性を確認してからプログラムを更新する。従って、携帯端末によりQRコードを読込む場合は、適正な読取データのみを記憶することができる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、所定のデータを分割した複数の分割データを示す複数の情報コードを読取るのに好適する情報コード、情報コード読取装置及び情報コード読取装置のデータ更新システムに関する。
【背景技術】
【0002】
例えば物品管理用の携帯端末では、高度な処理が求められていることから、オペレーティングシステム上にアプリケーションを搭載するようにしており、コンピュータと同様に、オペレーティングシステム或いはアプリケーションなどのプログラムを必要に応じてダウンロードしてバージョンアップすることが行われている。
【0003】
このようにプログラムをダウンロードする方法として、特許文献1のものでは、アプリケーションをバーコード化し、それを読取ることにより実行するようにしており、その実施例では、アプリケーションを複数のバーコードに分割し、それらの分割コードをバーコードリーダで順次読取って実行することが記載されている。コードを分割するに当っては、情報量が大きな二次元コードとしてQRコードが、ISO(ISO/IEC18004)またはJIS(JIS−X=0510)に定義されている。
【特許文献1】特開2004−110148号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
しかしながら、複数の分割コードを携帯端末で読取る場合は、同じ分割コードを誤って複数回読込んでしまったり、次に読むべき分割コードを飛び越してしまったりすることがあり、このような場合は、時間をかけて分割コードを読取ったとしても、最後にファイルの不整合でやり直しという羽目になるので、効率が悪いという問題がある。
【0005】
本発明は上記事情に鑑みてなされたもので、所定のデータを分割した複数の分割データを示す複数の情報コードを複数回にわたって読取る際に、効率よく読取ることができる情報コード、情報コード読取装置及び情報コード読取装置のデータ更新システムを提供することにある。
【課題を解決するための手段】
【0006】
請求項1及び請求項2の発明によれば、所定のデータを複数に分割した分割データを変換した複数の情報コードは、互いに連結される2つの情報コードの一方に、他方の情報コードの相関性を示す相関データが含んで生成されているので、2つの情報コードを読み込んだところで両者の情報コードの整合性を判断することが可能となる情報コードを生成することができる。
【0007】
請求項3及び請求項4の発明によれば、情報コードの読み込み時の早い段階で情報コードの整合性を判断することができるので、情報コードの読み取りエラーに迅速に対処することが可能となる。
【0008】
請求項5の発明によれば、連結されるべき分割データの相関性が成立しなかったときは、警告手段により警告されるので、分割データを直ちに読み直すことができる。
請求項6の発明によれば、読み込んだ分割データの連続性が成立しない場合は、その非連続な分割データおよび相関データは一旦保存され、以後に読取った分割データとの整合性が成立したところで正規の分割データとされるので、次の分割データを飛ばして読取った場合であっても対処することができる。
請求項7の発明によれば、本発明を情報コード読取装置のデータ更新システムに適用することができる。
【発明を実施するための最良の形態】
【0009】
以下、本発明をコード読取用の携帯端末に適用した一実施例について図1ないし図11を参照して説明する。
図1は、本発明に係るシステム構成を示している。この図1において、パーソナルコンピュータ(以下、PCと称する)1にはコード読取用の携帯端末に搭載されるオペレーティングシステム(以下、OS)或いはアプリケーション開発用の開発ツール2がインストールされており、開発者は、その開発ツール2のエディタ機能、デバッグ機能を用いてOS或いはアプリケーションを開発するようになっている。
【0010】
また、PC1には、ソースコードコンパイルツール3がインストールされている。このソースコードコンパイルツール3は、開発者が開発ツールで開発したOS(ソースコードで記述)を携帯端末(撮像手段、復元手段、記憶手段、第1〜第3の保存手段、警告手段、保管手段の機能を有する)4が解読可能なアセンブルコード(二進数で記述)に変換し、それを二次元コードであるQRコード(登録商標)に変換してプリンタ5に出力するものである。この場合、携帯端末用のOSの容量は比較的大きいことから、QRコードに変換する場合は、後述するようにOSを所定データサイズまたは所定コード寸法毎に分割した分割データを複数のQRコードでプリンタ5により用紙6に印刷するようになっている。
【0011】
一方、携帯端末4は、例えばラベルに印刷された一次元コードであるバーコード、或いは二次元コードであるQRコードを読取って解読し、解読データを無線によりホストに送信する機能を備えている。本実施例の携帯端末4では、このような基本的な機能に加えて、後述するようにPC1から出力されたQRコードを読取り、そのQRコードから読取ったOS或いはアプリケーションをバージョンアップする機能を備えている。
【0012】
図2は、携帯端末4の電気的構成を示すブロック図である。この図2において、携帯端末4は、CPU7、CCDを主体とする読取部8、メモリ9、キースイッチ10、液晶表示部11を備えて構成されており、CPU7は、メモリ9に記憶されたOSによりアプリケーションを管理するようになっている。
【0013】
図5(a)は、携帯端末4のメモリ9の記憶領域を示している。このメモリ9には、OS領域とユーザ領域とが設定されている。OS領域にはOSが記憶されており、電源が投入されたときは、OSが起動してユーザ領域に搭載されたアプリケーションの管理を行うようになっている。この場合、本実施例では、OSには、後述するようにメモリ9にインストールされたOSを自動更新する更新用ソフトが搭載されており、OSの更新を実施するときは、更新用ソフトに移行することにより新OSを旧OSに上書きするようになっている。尚、更新用ソフトを更新データに搭載するようにしてもよい。
【0014】
さて、開発者が、PC1に搭載された開発ツール2を使用して携帯端末4のOSを改良した場合は、そのOSのソースコードをコンパイルする必要があることから、ソースコードコンパイルツール3を起動する。
【0015】
図3は、PC1のソースコードコンパイルツール3の動作を示すフローチャートである。この図3において、ソースコードコンパイルツール3は、OSのソースコードを読取り(S101)、それをコンパイルすることにより(S102)、図6に示すように例えばa.sysというOSファイルを作成する(S103)。このOSファイルは、プログラムコードで記載されたファイルである。
【0016】
ここで、開発者が分割コードの1単位となるデータサイズまたはコード寸法(セルサイズ、QRコードの一辺の長さ)を指定すると、ソースコードコンパイルツール3は、分割コードの前記サイズが指定されたところで(S104:YES)、ヘッダ情報を作成する(S105)。
【0017】
図7は、ソースコードコンパイルツール3が作成するヘッダ情報の一例を示している。この図7では、OSファイルを例えば20個のデータ1〜20に分割する例を示しており、ヘッダ情報は、データ1〜20に対応して、更新フラグ、連番、ファイル名、バージョン情報、作成日時、次番SUM値が設定される。更新フラグとは、データが分割プログラムコードであることを示すものである。次番SUM値とは、後述するように連続する分割プログラムコードにおいて次に連結する次番のQRコードのSUM値を示すものである。
【0018】
ソースコードコンパイルツール3は、図8に示すようにヘッダ情報と分割データとからなるデータをQRコードに変換してから(S106)、それらのQRコードをプリンタ5により1枚または複数枚の用紙6に印刷する(S107)。
以上の動作により、図1に示すようにヘッダ情報及び分割データからなる例えば20個のQRコードが印刷された用紙6を出力することができる。
【0019】
さて、開発者は、上述したようにPC1によりプリンタ5からQRコードを印刷したときは、1番目のQRコードを読取り対象となるように携帯端末4を位置させた状態で読取りスイッチを操作する。すると、携帯端末4が読取動作を実行する。
【0020】
図4は、携帯端末4の読取動作を示すフローチャートで、本発明に関連した動作のみを示している。尚、図4では、QRコードを1つずつ読取る場合の動作を示しているが、携帯端末4は、複数のQRコードを一度に読取ることも可能である。図4において、携帯端末4は、読取り操作が行われたときは(S201)、QRコードを読取り(S202)、その読取った情報の中にヘッダ情報の更新フラグがあるかを確認する(S203)。この場合、更新フラグが設定されていないときは(S203:NO)、通常の入力作業を実行し(S227)、更新フラグが設定されているときは(S203:YES)、更新モードに移行し(S204)、更新タイマをスタートする(S205)。この更新タイマは、更新モードの実行時間を制限するもので、分割されたQRコードを読取るのに十分な時間が設定されている。
【0021】
次に、携帯端末4は、ヘッダ情報とプログラムデータ領域の配列を連結数分確保してから(S206)、読取データをメモリ9に保存する(S207)。この場合、ヘッダ情報が示す連番はQRコードの連結数が20個であることを示しているので、図9(a)に示すように連番が1〜20の配列を確保することになる。
以上の動作により、メモリ9のユーザ領域には、図5(b)に示すようにデータ1が保存される。
【0022】
次に、ヘッダ情報を自番の配列に登録する(S208)。つまり、連番「1」の配列には、図9(b)に示すようにファイル名として「a.sys」、バージョンとして「1.1」、作成日時として「200409201515」、次番SUM値として「75h」が登録される。このSUM値とは、次に連結されるデータをなす各数値を合計した値である。尚、最後のデータ(本実施例では20番目のデータ)に関しては、1番目のデータをなす各数値を合計した値が登録されている。
【0023】
そして、開発者が2番目のQRコードを読取り対象とした状態で携帯端末4の読取スイッチを操作すると、携帯端末4は、次の読み取り操作が行われるか(S209)、更新タイマがタイムオーバするか(S219)を監視する。
【0024】
ここで、開発者が次の読み取り操作を行うために携帯端末4の読取スイッチを操作すると、携帯端末4は、読取り操作が行われたころで(S209:YES)、2番目のQRコードを読取り(S210)、そのヘッダ情報の更新フラグを確認したときは(S211:YES)、そのヘッダ情報と配列に登録されている前番のヘッダ情報とを比較し(S212)、それらが一致するかを判断する(S213)。つまり、ヘッダ情報の連番と配列に登録されている連番とが連続しているか、ファイル名、バージョン、作成日時が一致するかを判断し、一つでも一致しなかった場合は、エラーを報知する(S229)。従って、開発者は、携帯端末4からエラーが報知されたときは、読取り作業をやり直す。
【0025】
携帯端末4は、読取ったヘッド情報と配列に保存されているヘッド情報とが一致したときは(S213:YES)、読取ったデータのブロックのSUM値を計算し(S214)、配列に登録されている前番の次番SUM値、つまり、1番のQRコードの次番SUM値である「75h」と比較し(S215)、それらが一致するかを判断する(S216)。このとき、SUM値が一致しなかったときは(S216:NO)、そのことを報知してから(S230)、ステップS209に移行することにより次の読取り操作の待機状態となる。
【0026】
ステップS216において、SUM値が一致したときは(S216:YES)、読取データを保存してから(S217)、ヘッダ情報を自番の配列に登録する(S218)。
以上の動作により、メモリ9のユーザ領域には、図5(c)に示すように分割データ1に加えて分割データ2が連結された状態で保存されると共に、図9(c)に示すように1番に加えて2番の配列にヘッダ情報が登録される。
【0027】
次に、携帯端末4は、全ての読取りが終了していないことを確認したときは(S220:NO)、ステップS209に移行することにより上述した動作を繰返す。
このような読取り動作を繰返した結果、1番から20番のQRコードを正しく読取ることができたときは、メモリ9には、図5(d)に示すようにデータ1〜20が保存されると共に、配列には、図9(d)に示すように各QRコードのヘッダ情報が登録される。
【0028】
そして、図4に示すように、更新タイマがタイムオーバする前に(S219:NO)、全てのQRコードの読取りが終了したときは(S220:YES)、保存したデータ1〜20のSUM値を求め(S221)、配列に登録されたヘッド情報1〜20のSUM値との合計と比較することにより整合性をチェックする(S222)。この場合、プログラムファイル自身にSUM値は格納されており、それと比較することになる。整合性がOKの場合は(S222:YES)、OSから独立した更新用ソフトに移行し(S223)、図5(e)に示すように現在のOSに保存したデータを上書きすることにより新しいOSに更新してから(S224:YES)、OSに復帰し(S225)、メモリ9の保存データを削除すると共に(S226)、更新モードを解除して(S227)、終了となる。
以後においては、携帯端末4は、新しいOSによりアプリケーションを管理するようになる。
【0029】
一方、全てのQRコードの読取りが終了することなく更新タイマがタイムオーバしたときは(S219:YES)、エラーを報知する(S229)。同様に、全体のSUM値の整合性がNGの場合は(S222:NO)、エラーを報知する(S229)。
【0030】
尚、フローチャートには示していないが、n番目のQRコードを読取ったときに、連続性を確認するためのn−1番目のヘッダ情報が登録されていない場合は、とりあえずデータ及びヘッダ情報を登録し、次のn+1番目のQRコードが読込まれたときは、そこでn番目のヘッダ情報と連続性をチェックし、連続性が見られない場合は、n+1番目以降のQRコードから読取った分割データ及びヘッダ情報を破棄する。図10に示す例では、n番目とn+1番目との比較の結果、NGであったことから、n+1番目以降のデータを削除することを示している。或いは、前後の連続性の可能性を数値化し、連続性の小さいデータ及びヘッダ情報を破棄するようにしてもよい。図11に示す例では、n−1番目との比較結果がOKで、n+1番目との比較結果がNGであっても、n+1番目以降の連続性の可能性が高いことから、n−1番及ぶn番目のデータを削除することを示している。
【0031】
このような実施例によれば、PC1によりOSのプログラムデータを分割した分割データをコード化したQRコードをプリンタ5により印刷すると共に、それらのQRコードを携帯端末4により順に読取ることによりOSを更新する際に、読取データのヘッダ情報に基づいて当該読取データが更新ファイルの一部であることを確認すると共に、読取データが連続性を有するかを確認してから、最終的に全ての読取データに基づいてOSを更新するようにしたので、二次元コードを最後まで読取ってから整合性をチェックする従来のものと違って、QRコードの読取り途中で読取りの不適正に迅速に対処することができ、読取り作業の効率を高めることができる。
また、更新タイマがタイムオーバしたとき、或いはプログラムの更新が終了して更新モードが終了したときは、更新モードから復帰するようにしたので、自動的に更新モードを完了することができ、使用勝手に優れている。
【0032】
本発明は、上記実施例に限定されることなく、次のように変形または拡張できる。
本実施例では、OS全体を更新する例を示したが、OSの一部を更新可能な構成の場合は、更新すべきOSの一部分のデータに対して本発明を実施するようにしてもよい。
携帯端末4のOSを更新するだけでなく、アプリケーションを更新するのに適用するようにしてもよい。
QRコード以外の二次元コードを用いるようにしてもよい。
QRコードをプリンタ5により印刷するのに代えて、QRコードをディスプレイ或いは表示端末に表示し、それを携帯端末4で読取るようにしてもよい。
読取データが他の読取データと連結可能かを判断する方法として、SUM値に代えて他の誤り検出コード、例えばCRC値を用いるようにしてもよい。
【0033】
携帯端末4により複数のQRコードを同時に読取るようにしてもよい。
上記実施例では、開発者が携帯端末4のOSを更新する場合を説明したが、ユーザが携帯端末4のOSを更新する場合は、印刷した用紙をFAXによりユーザに送信したり、ユーザのパソコンに送信し、ユーザが受信したQRコードを携帯端末4で読取るようにしてもよい。
情報端末4の表示部に、図12に示すように読取った読取データのヘッダ情報が示す位置をインジケータ表示するようにしてもよい。
【図面の簡単な説明】
【0034】
【図1】本発明の一実施例におけるシステム全体を示す概略図
【図2】携帯端末の構成を概略的に示すブロック図
【図3】ソースコードコンパイルツールの動作を示すフローチャート
【図4】携帯端末の動作を示すフローチャート
【図5】携帯端末の記憶内容の変化を示す図
【図6】コンパイル時のファイルの変化状態を説明する図
【図7】QRコードのヘッダ情報を示す図
【図8】データからのQRコードの作成を説明する図
【図9】配列の記憶内容の変化を示す図
【図10】メモリの記憶状態の変化の一例を示す図
【図11】異なる変化を示す図10相当図
【図12】本発明の変形例を示す情報端末の斜視図
【符号の説明】
【0035】
図面中、1はパーソナルコンピュータ、3はソースコードコンパイルツール、4は携帯端末(撮像手段、復元手段、記憶手段、第1〜第3の保存手段、警告手段、保管手段)、5はプリンタである。

【特許請求の範囲】
【請求項1】
所定のデータを複数の分割データに分割し、前記複数の分割データを、各々複数の情報コードに変換して前記所定のデータを複数の情報コードとして生成された情報コードであって、
前記複数の情報コードは、最初の情報コードをなす第1の情報コード、中間の情報コードをなす1つまたは複数の第2の情報コード、および最後の情報コードをなす第3の情報コードにより生成され、
前記第1の情報コードは、最初の分割データをなす第1の分割データと、前記第1の分割データの後に連結される第2の分割データに所定の演算を行って得られるデータであって、当該第2の分割データとの相関性を示す第1の相関データと、を含んで生成され、
前記第2の情報コードは、前記第2の分割データと、前記第2の分割データの後に連結される第3の分割データまたは他の第2の分割データに所定の演算を行って得られるデータであって、当該第3の分割データまたは他の第2の分割データとの相関性を示す第2の相関データと、を含んで生成され、
前記第3の情報コードは、前記第3の分割データを含んで生成されることを特徴とする情報コード。
【請求項2】
所定のデータを複数の分割データに分割し、前記複数の分割データを、各々複数の情報コードに変換して前記所定のデータを複数の情報コードとして生成された情報コードであって、
前記複数の情報コードは、最初の情報コードをなす第1の情報コード、中間の情報コードをなす1つまたは複数の第2の情報コード、および最後の情報コードをなす第3の情報コードにより生成され、
前記第1の情報コードは、最初の分割データをなす第1の分割データを含んで生成され、
前記第2の情報コードは、前記第2の分割データと、前記第2の分割データの前に連結される第1の分割データまたは他の第2の分割データに所定の演算を行って得られるデータであって、当該第1の分割データまたは他の第2の分割データとの相関性を示す第2の相関データと、を含んで生成され、
前記第3の情報コードは、前記第3の分割データと、前記第3の分割データの前に連結される第2の分割データに所定の演算を行って得られるデータであって、当該第2の分割データとの相関性を示す相関データと、を含んで生成されることを特徴とする情報コード。
【請求項3】
請求項1記載の前記複数の情報コードを読み取る情報コード読取装置であって、
前記複数の情報コードを複数回に分けて撮像する撮像手段と、
この撮像手段が撮像した情報コードに含まれる分割データおよび相関データを復元する復元手段と、
この復元手段が復元した分割データが記憶される記憶手段と、
前記復元手段が前記第1の分割データを復元したときは、前記第1の分割データを前記記憶手段の所定の記憶領域に記憶させる第1の保存手段と、
前記復元手段が前記第2または第3の分割データを復元したときは、当該分割データと、当該分割データの前に連結される分割データと共に復元した相関データとの相関性が成立するかを判断し、成立したときは前記第2または第3の分割データを前記記憶手段の所定の記憶領域に記憶させる第2の保存手段とを備え、
前記記憶手段に記憶された前記第1の分割データ、前記第2の分割データ、および前記第3の分割データとから前記所定のデータを形成することを特徴とする情報コード読取装置。
【請求項4】
請求項2記載の前記複数の情報コードを読み取る情報コード読取装置であって、
前記複数の情報コードを複数回に分けて撮像する撮像手段と、
この撮像手段が撮像した情報コードに含まれる分割データおよび相関データを復元する復元手段と、
この復元手段が復元した分割データが記憶される記憶手段と、
前記復元手段が前記第1の分割データを復元したときは、前記第1の分割データを前記記憶手段の所定の記憶領域に記憶させる第1の保存手段と、
前記復元手段が前記第2または第3の分割データを復元したときは、当該分割データと共に復元した相関データと、当該分割データの前に連結される分割データとの相関性が成立するかを判断し、成立したときは前記第2または第3の分割データを前記記憶手段の所定の記憶領域に記憶させる第2の保存手段とを備え、
前記記憶手段に記憶された前記第1の分割データ、前記第2の分割データ、および前記第3の分割データとから前記所定のデータを形成することを特徴とする情報コード読取装置。
【請求項5】
前記復元手段が復元した前記第1または第2または第3の分割データと当該分割データが前または後に連結される分割データに対応する相関データとの相関性が成立しなかったときは、前記撮像手段が撮像した情報コードは非連結であることを警告する警告手段を備えたことを特徴とする請求項3または4記載の情報コード読取装置。
【請求項6】
前記復元手段が復元した分割データと前記記憶手段に記憶されている分割データとの連続性が成立しない場合は、その非連続な分割データおよび相関データを一旦保管する保管手段と、
この保管手段に保管された非連続な分割データと前記記憶手段に記憶された分割データとの連続性が成立した場合は、前記非連続な分割データの前または後に連結される分割データに対応する相関データとの相関性が成立するかを判断し、相関性が成立したときは前記非連続な分割データを前記記憶手段の所定領域に保存する第3の保存手段、
とを備えたことを特徴とする請求項3ないし5の何れかに記載の情報コード読取装置。
【請求項7】
前記保管手段に保管した非連続な分割データと連続する前後の分割データのうち少なくとも何れか一方の分割データとの相関性が最後まで成立しないときは、前記非連続な分割データを破棄することを特徴とする請求項6記載の情報コード読取装置。
【請求項8】
請求項3ないし7の何れかの情報コード読取装置が復元したデータは、当該情報コード読取装置に関するシステムプログラム、システム設定用データ、アプリケーションプログラム、アプリケーション用データの何れかであり、
前記情報コード読取装置は、自己のデータを前記復元したデータに更新することを特徴とする情報コード読取装置のデータ更新システム。


【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate


【公開番号】特開2006−343934(P2006−343934A)
【公開日】平成18年12月21日(2006.12.21)
【国際特許分類】
【出願番号】特願2005−168182(P2005−168182)
【出願日】平成17年6月8日(2005.6.8)
【出願人】(501428545)株式会社デンソーウェーブ (1,155)
【Fターム(参考)】