2.5K Views
August 31, 23
スライド概要
奥深いQRコードの世界 こた
QRコードとは? - Quick Responseの頭字語 - 2次元コードとも呼ばれる - 日本生まれの規格で現在ではISOの国際規格 - 1994年に日本電装(現デンソーウェーブ)が開発 - トヨタの子会社
かんばん方式 - JIT(Just In Time)を実現するための生産方式 - 企業としては生産状況の把握は必須 - 必要なものを、必要なときに、必要な量を生産 - 生産管理に用いるカードを 「かんばん」と呼ぶ どこから→何を→どこへ - 全てのものに取り付けられる
かんばんの情報化 - かんばんを生産状況の把握 に用いれば良いのでは → 紙媒体なのでそのままでは 情報媒体にならない - 過酷な現場で使用されるため 要件が厳しい
技術選定 ※1970年当時 総合的に見てバーコードが最有力候補
1970年代のバーコード - 読み取りは今のようにピッとやれば良いものではなくペ ンでバーコードをなぞる必要があった - 何回も擦ると汚れ、ビニール袋の上からだと誤差 - ピッできるスキャナーの開発が求められる - レジメーカーと共同開発し、セブンイレブン採用 → 当時のシェア率100%
NDコード - バーコード単体では情報量が少ない - バーコードの横幅を長くすれば情報量は増える → 読み取り装置の巨大化、途中分割できない - 独自にバーコードを縦に 21個並べる (1つは3桁) → NDコード
情報量の増大化 - NDコードでは不満がでてくる 1. 2. 3. 4. 表示面積が大きい ワンタッチで読みたい 部品に直接コードを取り付けたい 桁数が足らない (NDコードでは63桁) → 次世代のコードが求められる
1 2 従来の2次元コード 1. データマトリックス 2. PDF417 3 4 5 6 3. Veriコード 4. マキシコード 5. CPコード 6. アズテックコード
2次元コードの開発 - 従来の2次元コードは読み取りに時間がかかってた - ボトルネックは 1. どこにそのコードがあるのか 2. どの向きになっているのか - この2つさえわかれば読み取り時間の短縮に繋がる → これらの課題を解決しつつ、QRコードを開発する
QRコードを誰でも使えるように - 規格に則ったものであれば誰でも使えるようにした → 特許等によるライセンス料がかからない - じゃあ何で儲けてるの → QRコードを読み取るリーダーの販売で儲けている
QRコードの利用用途 - URLの配布 キャッシュレス決済 駅のホームドアの開閉 飛行機・電車の搭乗券
To Be Continued…
https://coliss.com/articles/build-websites/ operation/work/how-qr-code-works.html
QRコードの仕様 - 最小セル数 → 21x21 セル - 最大セル数 → 177x177 セル - 最大データ量 → 数字 英数字 7089字 4296字 バイナリ 2953バイト 漢字 1817文字
QRコードのしくみ - まずはQRコードのバージョンを読み取る バージョン1から40まである 一辺のセル数を数え、下の計算式にそって計算 (セル数 - 17) / 4 = 2 モデル1とモデル2がある 今はモデル2が主流 セル 数25
ファインダーパターン - QRコードの3端に配置される位置検出用の模様 - まずはこのパターンを探すことで位置を特定 - どの方向から読み取っても必ず白色と黒色の比率が 1:1:3:1:1になっている ファインダーパターン
アライメントパターン - シンボルの範囲内に一定間隔で配置される - 歪みによって生じる各セルのいちズレを補正 - モデル2から採用 アライメントパターン
タイミングパターン - 白セルと黒セルが交互に配置され、シンボル内のモ ジュール座標を決定している - 単一のモジュールの大きさとQRコード全体の大きさ (バージョン)を伝える
クワイエットゾーン - QRコード周りの空白は単なる余白ではなく、読み込み に必要不可欠な要素 - これがあることで安定してQRコードが読み込める
フォーマット情報 - 反転マスク(次の3桁)や訂正レベル(最初の2桁)、訂 正フォーマット(最後の10桁)の情報を読み込む - ファインダーパターンの脇に配置されている ② - ①と②が連結して1つのパターン - 同じパターンが2つ存在する ① - 規格のパターンと比べ最も似ている パターンを選ぶ ① ②
エラー訂正レベル Low 7%、Medium 14%、Quartile 25%、High 30%
反転マスク - QRコードを機械が読みやすくなるようにする模様 - 標準では8つのパターンがあり、一番良い(ファインダー パターンが出て来ない)ものが使用される
データの読み込み - マスクも解除したらいよいよデータの読み込み 右下から2行ごとに8セルずつ取り出し2進数に変換 最初の1bitはデータがエンコードされたモード 次の3bitはデータの長さを伝える 残りのデータは文字とエラー訂正用の情報(リードソロ モン符号)が格納される
モード - 数字モード → 1~9の数字を格納でき、3文字を10bitで表現する - 英数字モード → 0~9、A~Z、スペース、記号8種、2文字を11bit - バイナリモード → バイナリをそのまま格納する 標準文字コードはJIS8 - 漢字モード → Shift_JISの2バイト文字を格納できる 1文字13bit
大きさの求め方 - データ容量、モード、誤り訂正レベルから、バージョン (セル数)を決定 - プリンタの解像度などから、セルサイズを決定 - セル数とセルサイズを乗算することでQRコードの大 きさが求まる - さらにクワイエットゾーンを加えて全体の大きさが求 まる
シンボルの連結機能 - 最大16分割可能 何番目かも分かる
マイクロQRコード - ファインダーパターンがひとつのQRコード 2セル分のマージンで良い M1~M4までの4つのバージョンがある 電子部品などの非常に小さな製品の管理などに用い られる
SQRC - QRコードに公開データと非公開データを持てる 非公開データは暗号鍵をもつリーダーしか読めない 見た目は通常のQRコードと同じ 偽造・改ざんが検知できる 右の写真は沖縄のゆいレールで 用いられているもの(複写防止で一部が黒い)
rMQR - 長方形で細長いスペースへの印字に対応 - 最大数字で361字、英数字で219字、漢字で92字 - 2022/5に発表されたので活用はまだこれから
フレームQR - コード内に自由に画像を入れられる - フレームの形は予め決められており、下の写真のよう なものがある
LogoQ - QRコードに文字やイラストを重ねたもの - 文字やイラストとQRコードのドットが重なる - フルカラー対応
デザインQRコード - github.com/chinuno-usami/CuteR - github.com/kciter/qart.js - github.com/x-hw/amazing-qr - github.com/ciaochaos/qrbtf - https://qrbtf.com
ご清聴ありがとうございました(._.)