Punch-card making system / Concept

KOSHI / 格子Koshi何百個の穴を、ひとつの格子として。

編み機のパンチカードを、iPhoneで一目ずつ描く。できた格子をQRで専用機へ渡し、本体で確かめてから、物理ボタンで加工を始める。Koshiは、面倒な穴あけを再現できる工程へ変える、ソフトウェアとハードウェアのプロジェクトです。

In development / 研究・試作中
iPhoneの格子にパンチ模様を描き、QRへ変換するKoshi Studioのタングルシープ
CONCEPT ART / KOSHI STUDIO

01 / The work

模様を考えることと、穴を開け続けることを分けたい。

編み機のパンチカードは、模様を二値の格子へ置き換え、紙の決まった位置に何百個もの穴を正確に開けてつくります。Koshiが目指すのは、創造的な判断をiPhone上に残し、反復作業を機械へ任せることです。

一目ずつ考える。
一穴ずつは、開けない。

02 / One-way handoff

描く、渡す、確かめる、始める。

最初の構成では、制作データをクラウドへ預けません。iPhoneのブラウザでジョブをつくり、ひとつのQRとして実機へ渡す、短く見通せる流れを検討しています。

01 / Draw

格子を描くiPhone上で、穴を開ける/開けないを編集する。

02 / Encode

QRにするカード形状と模様を、一つのオフラインQRへまとめる。

03 / Scan

本体で読むESP32-S3のカメラで読み取り、形式と範囲を検証する。

04 / Review

画面で確かめるOLEDの状態表示を見て、加工するジョブを確認する。

05 / Start

物理START人が本体のボタンを押した後にだけ、移動と穴あけを始める。

03 / Two parts

StudioとDeviceを、別々につくる。

画面と実機は別のリポジトリで進め、両者が受け渡すジョブ形式だけを明確に共有します。実機の試作中でもStudioを考えられ、画面が変わっても安全境界を曖昧にしないためです。

Koshi Studio

iPhoneで格子をつくる

インストールやログインを必須にせず、ブラウザ上で編集・検証・QR生成を行う構想です。

  • パンチ格子の編集
  • カード形状との整合確認
  • オフラインQRの生成

Koshi Device

実機でカードにする

QRを読み、内容を検証し、X軸のパンチヘッドとY軸のカード送り、ソレノイドで加工する構想です。

  • ESP32-S3 + カメラ
  • 2軸ステッピングモーター
  • パンチ用ソレノイド
カメラでQRを読み、左右に動くパンチ部とカード送りで穴を開けるKoshi実機の構想図

Concept, not a finished machine

この絵は、完成写真ではありません。

QRを読む場所、横へ動くパンチ部、カード送り、手元の状態表示という役割を共有するための構想図です。寸法、部品、機構、外装は、現物のカードを測り試作しながら変わります。

AI-generated concept illustration · 2026.09.11

04 / Safety boundary

読んだだけでは、動かさない。

QRの読み取りはジョブを準備するだけ。加工開始は必ず本体側の明示操作に分けます。機械が動くプロジェクトだからこそ、便利さより先に「いつ動かないか」を決めます。

Validate

範囲外を拒む

未知の形式、壊れたデータ、機械の範囲を超えるジョブは実行しません。

Confirm

物理操作で始める

スキャン成功や画面操作だけでは、モーターもパンチも動かしません。

Stop

止められる機構へ

原点、移動限界、ガード、停止方法を実機試作の必須条件として検証します。

05 / Current state

決めたことと、まだ分からないこと。

Koshiは始まったばかりです。現在公開できるのは、実装済み製品ではなく、設計の境界と検証すべき問いです。

Decided

最初の筋道

local-firstのStudio、単一QRでの受け渡し、実機検証後の物理START、2軸+パンチという基準線。

To measure

現物から決める

カードの穴径・送り間隔・余白、QRに収まるデータ量、必要な力と精度、具体的な部品構成。

Not built yet

これから試作する

Studioアプリ、ファームウェア、回路、CAD、可動試作機。進展は公開開発日記へ記録します。

06 / Follow the build

完成までの絡まりも、公開する。

まず現物のパンチカードを測り、ジョブ形式と最小の可動試作を往復します。仕様が変わった理由、失敗した試作、次に確かめることまで、開発日記に残します。