試作設計書 · 2026-09-28
靴とベルト
NFC を 3 枚持つ靴と、NFC を内蔵したベルト。スマホを当てるとブラウザで情報が開き、そのまま通報もできます。色は内側にはさむ紙で変えます。3D プリントした部品と市販の部品を組み立てれば作れることを前提にしました。
1. フォルダの中身
| ファイル | 中身 |
|---|---|
| 靴.usdz | 一足 (実寸)。紙の色 9 種を variant で持つ。NFC 3 枚は NFC_1_Instep / NFC_2_Heel / NFC_3_Side の名前で入っています。iPhone で開くと AR で置けます。 |
| 靴_電子ペーパー.usdz / ベルト_電子ペーパー.usdz | 電子ペーパーのモデル (柄・濃さを variant で持つ)。同じ中身で、開いた時にどちらのモデルが出るかだけが違います。 |
| ベルト.usdz | 腰回り 85 cm で締めた形。紙の色 7 種 (モノクロ + 茶)。NFC はバックルの平板の中 (Buckle/NFC_Belt)。 |
| 分解図.usdz | 右足を上下に開いた図。電池・基板・受電コイル・蓋の収まりがわかります。 |
| 接続ページ/ | NFC から開くページ。?t=instep|heel|side|belt で開く画面が変わります。 |
| 印刷用/ | STL 11 個 (単位 mm)。全部「穴のない閉じた形」であることを確認済み。 |
2. 比率
| どこ | 寸法 | 比 |
|---|---|---|
| 靴底の最大幅 | 全長 280 → 幅 107 mm | 1 : φ² (2.618) |
| 靴底の厚み | かかと 30 → 前足 18.5 mm | φ : 1 |
| 履き口の前端 | つま先から 173 mm | 全長 / φ |
| 外側の NFC | かかとから 173 mm | 全長 / φ |
| かかとの NFC | 16 × 22.6 mm の角丸 | 1 : √2 (白銀比) |
| バックル外形 | 27.2 × 44 mm | 1 : φ (いただいた絵の枠の比) |
| 剣先 (ベルトの先) | 幅 35 × 長さ 49.5 mm の楕円 | 1 : √2 |
3. 3 枚の NFC と書き込む URL
見えるのは甲の中央の 1 枚だけです。黒いガラスの丸 (φ24, 金属の細い縁) に白いしるし を入れ、ここに当てればよいことがひと目でわかるようにしました。残りの 2 枚は靴底の壁の中に隠します。靴底の TPU は電波を通すので、見えなくても読めます。
| 場所 | チップ | 役目 | 書き込む URL |
|---|---|---|---|
| 甲 (見える) | NTAG 424 DNA φ25 + 黒いガラスのしるし | 靴の情報・通報への入口 | https://(置き場所)/kutsu/?t=instep&e=…&c=… |
| かかと (右, 靴底の中) | ST25DV04KC + 22×16 アンテナ | 通報・状態・電池 | …/?t=heel&s=(状態)&g=(署名) — 靴の基板が書き換える |
| かかと (左, 靴底の中) | NTAG 424 DNA φ16 | 通報 (状態なし) | …/?t=heel&e=…&c=… |
| 外側 (靴底の中) | NTAG 424 DNA φ16 (市販の丸いもの) | 色・型紙・持ち主の設定 | …/?t=side&e=…&c=… |
| ベルト (バックル) | 金属用 NTAG 424 DNA (フェライト付き, 6.8×36 mm の窓) | ベルトの色・持ち主の鍵 | …/?t=belt&e=…&c=… |
e と c は NTAG 424 DNA の SUN 機能がタップのたびに自動で埋める暗号文と認証コードです。書き込みには NXP の「TagXplorer」(PC) か「NFC TagWriter」(Android) を使います。書いたら必ずロックしてください。
4. 電子部品 (右足のポッドだけ)

ポッド (外寸 76 × 54 × 10 mm) は土踏まずの下にあり、靴底の裏から入れます。土踏まずは体重がいちばんかからない場所なので、電池がつぶれにくくなります。蓋は O リングと M2 ネジ 4 本で留めます。ネジを外せば電池を交換できるので、電池が弱っても靴を捨てずに使い続けられます。左足には電池を入れず、NFC だけにします。
| 部品 | 例 | 役目 |
|---|---|---|
| 通信 + 位置 | Nordic nRF9151 (LTE-M / NB-IoT + GNSS) | SIM があれば靴だけで通報。SIM なしでも GNSS で位置を記録 |
| SIM | eSIM (MFF2) またはナノ SIM — 任意 | なしで組むときは載せない |
| 動的 NFC | ST ST25DV04KC | かかとの URL を基板が書き換える (状態・位置・電池) |
| 加速度 | ST LIS2DW12 | 「かかと 3 回」と転倒の検知 |
| 充電・電源 | TI BQ25120A | 満充電を 3.6 V に設定 (リン酸鉄の満充電電圧) |
| 置くだけ充電 | TI BQ51003 + φ40 前後の Qi 受電コイル + フェライト板 | 靴底を Qi 充電器に置いて充電。穴がないので水に強い |
| 電池 | リン酸鉄リチウム (LiFePO4) の薄型パウチ 70 × 50 × 3 mm (保護回路・NTC 付き) | 燃えにくい・交換式。容量は見積もり 400〜600 mAh (要確認) |
| 安全部品 | ヒューズ + 温度センサー | 0〜45 ℃ の外では充電しない |
| 手応え | コイン型振動モーター φ8 | 通報を受け付けたら震える |
| アンテナ | LTE-M 用フレキ + GNSS 用チップ | かかとの内側に沿わせる (靴底のトンネルを通す) |
型番は「この種類の部品で成り立つ」という例です。在庫・価格・細かい電気特性はまだ調べていません。基板の回路図と配線 (アートワーク) はこの設計書には含まれていないので、別に設計が要ります。
Bluetooth は積みません。iPhone のブラウザは Bluetooth を使えない (Web Bluetooth に非対応) ため、積むと専用アプリが必要になります。代わりに、SIM がなくても「かかとの NFC に状態を書き込む」ことで、ブラウザだけで通報の情報を渡せるようにしました。
5. 電池のもち (計算)
下の値はすべて私が置いた想定値です。部品の資料で確かめたものではなく、実物で測ってもいません。数字を変えると結果が変わります。
| 電池の容量 (控えめに) | mAh |
| 使い切れる割合 | % |
| 寒さ・劣化の余裕 | % |
| 待機電流 (全部合わせて) | µA |
| GNSS 1 回の電流 × 時間 | mA × 秒 |
| GNSS の回数 (歩き出したとき, 1 日) | 回 |
| SIM あり: 1 日 1 回の生存連絡 | mAh |
1 日に使う量 mAh → もち
減る量のほとんどは GNSS です。1 か月を下回りそうなら、GNSS の回数を減らすのがいちばん効きます。
燃えにくくするために
- 電池の種類: 最初のリチウムポリマーから、リン酸鉄リチウム (LiFePO4) に替えました。熱暴走 (発火) が起きにくい種類として知られています。代わりに同じ大きさでの容量は少なめなので、薄く大きく (70 × 50 × 3 mm) して補いました。
- 置き場所: 体重のかかりにくい土踏まずの下。硬い PA12 の殻に入れ、殻と蓋で上下から挟みます。
- 電気の守り: 電池側の保護回路、基板のヒューズ、温度センサー。0〜45 ℃ の外と、Qi で熱くなったときは充電を止めます。
- ゼロにはならない: 燃えにくい種類でも、強くつぶしたり穴を開けたりすれば危険です。靴底に釘などが刺さった靴は使わないでください。
要確認: nRF9151 が動く最低電圧と、リン酸鉄の電圧 (ふだん約 3.2 V、空に近いと 3.0 V を下回る) が合うかを、部品の資料で確かめる必要があります。合わなければ、昇圧回路を 1 つ足します。
6. 通報の流れ
- 本人: かかとを 3 回強く踏む → 靴が震える → SIM ありなら家族へ位置つきで送信。SIM なしなら、かかとの NFC に「通報中・時刻・最後の位置」を署名つきで書き込む。
- 近くの人: かかとにスマホを当てる → 通報画面 (119 / 110 / 家族へ位置を送る) と、赤い枠で靴の記録が出る。
- 電池が切れていても NFC は電池なしで動くので、通報画面は開きます (靴の記録だけが出なくなります)。
7. セキュリティ
- NTAG 424 DNA の SUN: タップのたびに回数と暗号つきの URL になるので、URL を写したり、タグを複製したりしてもサーバーで見分けられます。
- タグは書き込みロック。偽のページへ誘導するような書き換えを防ぎます。
- かかとの状態 (
s) には、nRF9151 の中に閉じ込めた鍵で署名 (g) を付けます。 - URL に名前や電話番号を入れません。持ち主が「公開」を選んだ項目だけを出します。
- 設定の変更には「ベルトを当てる (持っている物)」と「パスキー (顔・指紋)」の両方を求めます。
- 靴は自分から ID の電波を出しません。位置が外に出るのは、本人の通報か持ち主の許可があるときだけです。
今の接続ページは試作です。署名の確認と持ち主データの保存にはサーバーが必要で、まだ作っていません (今は持ち主のメモがそのスマホの中にしか残りません)。
8. 印刷の設定
| ファイル | 材料 | 刷り方 |
|---|---|---|
| shoe_R/L_sole | TPU 95A (白) | 外壁 3 周 + ジャイロイド 20〜25%。裏を下に。ポッドの穴は上を向く |
| shoe_R/L_upper | 透明 TPU 85A | 花瓶のように 1 枚壁では足りない (1.8 mm)。外壁 4 周・充填 100%。遅め (20 mm/s 前後) |
| pod_cage / pod_hatch | PA12 (MJF / SLS) または PETG | ネジ下穴 φ1.6 (M2 タッピング) |
| belt_strap_spiral | 透明 TPU 95A | 幅 35 mm を高さにした渦巻き (126 × 130 mm)。どの造形機にも載ります。刷ったあと、ぬるま湯で温めて伸ばす |
| belt_strap_straight | 同上 | 長さ 979 mm。1 m 以上の大型機があればこちら |
| belt_buckle_metal_withNFCwindow / prong / keeper | 金属 3D プリント (AlSi10Mg またはステンレス 316L) | 研磨 → アルマイト。前の平板だけ濃い色にすると絵の通り |
「特殊な 3D プリンター」の候補: TPU を刷れる FDM (直接押し出し), 樹脂粉末の MJF / SLS, 金属の SLM (外注サービス)。
9. 組み立て
靴
- 接続ページの「色」から型紙を印刷し、合成紙 (ユポ紙 0.2 mm など) を切る。切り込みは点線まで。
- 靴底の上面の縁の近くにある 2 本の細い溝 (かかと・外側, 幅 1.2 mm) に、URL を書いてロック済みの NFC を差し込む。右足のかかとは ST25DV のアンテナで、配線をトンネルに通す。溝はアッパーを貼ると上から塞がって見えなくなる。
- 甲の NFC をアッパーの内側に貼り、表の同じ位置に黒いガラスのしるしを接着する。
- 色紙をアッパーの内側に沿わせ、市販の中敷き (薄いもの) で押さえる。
- アッパーの下の縁を靴底の上面に TPU 用の接着剤で貼る。右足はかかとの配線を靴底のトンネルに通す。
- 右足: ポッドに基板・電池・振動モーターを入れ、蓋にコイルを貼り、O リングをはめて裏から M2 ネジ 4 本で閉じる。
- Qi 充電器に置いて充電が始まるか、かかとにスマホを当ててページが開くかを確かめる。
ベルト
- 渦巻きで刷ったストラップをぬるま湯で温めて伸ばす。
- 金属用 NFC (フェライト付き) を、バックルの濃い平板の窓 (6.8 × 36 mm, 深さ 1.2 mm) に入れ、透明エポキシで面一に埋める。枠の切れ目 (幅 0.5 mm, 軸の棒の上) もエポキシで埋める。
- 色紙 (幅 31 mm × 4 本) を、裏の溝のブリッジの下に通す。
- ピンの C 形を軸の棒に通してペンチで閉じる。根元を軸の棒に巻いて折り返し、シカゴネジ 2 本で留める。
- ベルト通しを通す。
10. 電子ペーパーのモデル
紙を差し替えなくても色が変わるモデルです。紙のモデルはそのまま残し、どちらも同じ靴底・同じ接続ページで動きます。ページは NFC の URL に付けた m=e (電子ペーパー) / m=p (紙) で画面を切り替え、どちらも付いていないときは両方を選べます。
| 紙のモデル | 電子ペーパーのモデル | |
|---|---|---|
| 見た目 | 透明アッパー (艶消し) + 色紙 | 黒い下地の上に電子ペーパー 54 枚 (18 列 × 3 段)。表面は光を散らす加工で映り込まない |
| 色 | どんな色でも (紙しだい) | 白〜黒の 5 段と、区画ごとの柄 (グラデーション・縞など)。茶や鮮やかな色は出ない |
| 色の変え方 | 型紙を刷って差し替え | 接続ページで選び、スマホの画面を光センサーに当てる (3 秒の点滅) |
| 電池 | 右足だけ | 左右とも (左は通信なし・小さなマイコンだけ) |
| ベルト | 電池なし | ストラップの先 (ピン穴の側) の下に薄い電池と基板を隠す。Qi で充電 |
なぜ区画に分けるか
電子ペーパーは紙のように一方向には曲がりますが、つま先のような丸みには 1 枚では沿いません。BMW が色の変わる車で使った E Ink の膜も、車体に合わせて切り分けた区画を貼っています。区画は 1 枚ずつ別の色にできるので、柄も作れます。
NFC は「窓」に
電子ペーパーには電極の膜があり、NFC の電波を遮ります。甲のしるしの下だけ電子ペーパーに丸い穴を開け、残りの 2 枚は靴底の中に置いたので、電子ペーパーの面に窓はありません。
画面の光で送る理由
iPhone のブラウザは NFC に書き込めず、Bluetooth も使えません。画面の白黒の点滅なら、どのスマホのブラウザからでもアプリなしで送れます (昔の腕時計 Timex Datalink と同じ考え方)。受け取るのは靴の光センサー 1 個です。
- 符号: 1 コマ 50 ms、1 ビット = 2 コマ (マンチェスター符号)。合わせ込み 16 コマ + 5 バイト (
A5・送り先 0=靴 1=ベルト・色番号・通し番号・CRC-8)。これを 3 回くり返し、約 13 秒。 - 点滅は光に敏感な人に負担になりうるので、3 秒待ってから始め、画面は靴に伏せて使う前提にしました。ページに注意を出しています。
- SIM ありの靴なら、将来はサーバー経由でボタン 1 つでも送れます (サーバーを置いてから)。
- 送る側 (ページ) は作って動きを確かめましたが、受け取る側 (靴のプログラム) はまだ書いていません。
繊維状の電子ペーパーについて
繊維そのものが色を変える布は研究として発表されていますが、靴に使える市販品は見つけられていません。衝撃を和らげる役目は電子ペーパーではなく下地 (TPU やニット) が担うのが現実的なので、今は区画の方式にしています。繊維型が手に入れば、区画をそれに置き換えるだけで済む構造です。
11. 電池は何年もつか
- 1 回の充電: 計算上 約 3 か月 (5 章の想定値)。電子ペーパーは色を変える瞬間しか電気を使わないので、色を変える回数が少なければ日数はほぼ変わりません (1 回あたりの量は測っていません)。
- 充電の回数: 3 か月に 1 回なら 10 年で約 40 回。リン酸鉄は一般に数千回の充電に耐えると言われるので、回数ではほぼ減りません。
- 年数で減る分: 置いておくだけでも少しずつ減ります。検索で見つけた、ある電池の劣化モデルの見積もりでは (元の論文までは確かめられていません)、リン酸鉄の電池が容量の 2 割を失うまで 25 ℃ で約 24 年、40 ℃ で約 9 年と見積もられています。靴の中は体温で温まり、夏の車内などはもっと熱いので、この靴では 9〜24 年のあいだのどこかと見ています。ただしこれは別の電池での見積もりで、この靴の電池では測っていません。
- 先にだめになるのは靴底だと思われます。電池は蓋を開けて交換できるので、靴底を作り直して電池を移すこともできます。
- NFC: NTAG 424 DNA はデータを 50 年保ち、20 万回書き換えられる仕様です。
12. 汎用品でも使えるか
| 部品 | 汎用品で | 失うもの |
|---|---|---|
| スマホ | NFC が読めるスマホならどれでも (iPhone XS 以降はアプリなしで読める、Android は NFC をオンに) | — |
| NFC | 安い NTAG213 / 215 のシールでも、ページは開く | コピーの見分け (タップのたびに変わる暗号) がなくなる。画面の「未確認」のまま |
| 充電器 | 市販の Qi 充電器 | — |
| 電池 | 同じくらいの大きさのリン酸鉄リチウム (保護回路付き) | 形が違うと殻に合わない |
| ネジ・Oリング・シカゴネジ | 市販品 | — |
| 色紙 | ユポ紙など、どの合成紙でも | — |
| 電子ペーパー | 形に合わせた特注になる見込み | — |
| 今持っている靴やベルト | NFC シールを貼るだけで、情報と通報のページは使える | 電池を使う機能 (自動の通報・状態の書き込み・色替え) はなし |
14. プログラムとサーバー
ネットに置いた接続ページ: https://kutsu-belt.pages.dev/k/ (Smart Ring は /r/)。NFC に書く URL はここを指します。
| 部分 | 中身 | 確かめたこと |
|---|---|---|
| 画面の点滅を受け取る (靴・ベルト・Smart Ring の本体) | プログラム/firmware/optical_rx.c | 60 Hz と 120 Hz の画面、部屋の明かりのちらつき、雑音、光センサーの遅れを入れた模擬で、各 200 回すべて受け取れた。点滅なしの雑音 10 分で誤って受け取ることは 0 回 |
| かかとの状態に署名 (靴の本体) | heel_state.c + sha256.c | SHA-256 は公式の例と一致。署名は Python とサーバーの計算の両方と一致。中身を 1 文字変えると不一致。URL は 186 文字 (かかとの NFC は 512 バイト) |
| 光の予算 (Smart Ring) | light_budget.c | 光を 1 日 20〜180 秒使う 8 通りの模擬で、どれも 30 日以上もった (予算なしでは最短 10 日) |
| NFC の本物確認 (サーバー) | プログラム/site/functions/ | NXP AN12196 などの公式の試験用の値で、当てはまる 20 件すべて一致 (わざと壊した値は不合格にできた) |
| サーバーの流れ | 同上 | 手元 13 項目、本番 15 項目、ブラウザでの一連の操作 (甲 → ベルト → 外側で保存) がすべて通った |
サーバーがすること
- タグの URL の暗号を確かめ、「本物」「偽物の疑い」「使い回しの URL」「本物 (未登録)」を画面の右上に出す。
- かかとの状態の署名を確かめ、合わなければ「この記録は信用しないでください」と出す。
- ベルトのバックルが本物なら、5 分間だけ有効な鍵 (盗み見されにくい Cookie) を渡す。鍵があるときだけ持ち主のメモを読み書きできる。
- 電話番号は持ち主にしか返さない。通報画面に出るのは「公開」を選んだ呼び名と緊急メモだけ。紛失モードでは「落とし物」だけ。
タグを本物にする手順
node tools/provision.mjs tag <UID> <instep|heel|side|belt|ring> <shoe|belt|ring> <持ち主ID>で、タグに書く 2 つの鍵と URL が出て、サーバーに登録される。- NXP の TagXplorer などで、鍵 1・鍵 2 と URL (e= と c= の位置に暗号を埋める設定) を書き、ロックする。
- かかとの基板の鍵は
node tools/provision.mjs heel <靴の番号> <持ち主ID>。
親鍵は ~/work/kutsu-belt/tools/.master にだけあります。これをなくすと、書いたタグをすべて確かめられなくなります。ネットに出さず、別の場所にも控えてください。
まだのこと
- 顔・指紋 (パスキー) による 2 つ目の確認は、まだ作っていません。今はベルトのバックルだけが鍵です。
- 連続で叩かれたときの回数制限はまだありません。
- 「家族に位置を送る」は、そのスマホで SMS の下書きを作るだけです。サーバーから家族へ知らせる仕組みはありません。
- 本体のプログラムは、模擬で確かめた部品です。nRF9151 の上で、センサーや電子ペーパーとつないで動かしてはいません。
- 外側の溝の底から靴底の裏までは 2.1 mm です。強さは試していません。
13. まだ確かめていないこと (実物)
- 実物は刷っていません。形は計算と画面上の確認だけです (STL が閉じていること、AR の規格に通ることは確認済み)。
- 履き心地・足の形への合い方は未確認です。足型は 27 cm 相当を私が決めた線で作っています。
- 重さ 約 380 g (片足) は、靴底の中身の詰まり具合を 45% と置いた計算です。
- 靴の中は GNSS と LTE の電波に不利です。どれだけ届くかはわかりません。
- ユポ紙が汗や摩擦でどれだけもつかはわかりません。
- 部品の価格は調べていません。
- バックルの NFC は、金属に囲まれるぶん読める距離が短くなります (金属用タグは普通の約半分と言われます)。平板にスマホを直接当てる前提です。6.8 × 36 mm の細長いアンテナは既製品では見つけていないので、アンテナの特注が要る見込みです。実際に読めるかは試していません。
参考: E Ink × BMW iX Flow / 10 年保存したリン酸鉄電池 (6 ℃で容量 96〜98% が残った研究) / NTAG 424 DNA データシート / On-Metal NFC Tags (Seritag) / Anti-Metal NFC Tags (Shop NFC)