AI に仕様書を描かせる — Excel の一覧を図にし、できた図を AI に検証させる
最終更新: 2026-09-23 / カテゴリ: 制御設計・PLC / この記事は日本語のみです。
手元にある Excel の I/O 一覧を、AI に JSON へ変換させるだけで図になります。 そして、できた図をもう一度 AI に読ませれば、インターロックの抜けや待ちの矛盾を指摘させられます。
これができるのは、4 つのエディタが読み書きする JSON のデータ構造を公開しているからです。 ファイル形式が公開されていれば、AI は「絵を描く」必要がありません。 テキストを組み立てるだけで済みます。AI がいちばん得意な作業です。
1. なぜ「AI に作図させる」がうまくいかないのか
生成 AI に「タイミングチャートを描いて」と頼んで、満足のいく結果が返ってきた人は少ないはずです。 画像として描かせると、線はずれ、文字は潰れ、信号の数は勝手に減ります。 修正を頼むと、今度は別のところが崩れます。
原因ははっきりしています。AI は絵を描くのが苦手で、構造化されたテキストを書くのは得意だからです。 だったら、絵を描かせるのをやめて、データだけ書かせればいい。 描画はエディタに任せます。エディタは線をずらしませんし、文字も潰しません。
| 頼み方 | AI がやること | 結果 |
|---|---|---|
| 「図を描いて」 | 画像を生成する | 線がずれる・文字が潰れる・直すと別が崩れる |
| 「この仕様の JSON を書いて」 | テキストを組み立てる | エディタが正確に描く。直しても崩れない |
2. Excel の I/O 一覧から図を作る
いちばん効くのがこれです。すでにある資産を、書き写さずに図にできます。
手順
- JSON データ構造の仕様 のページを AI に読ませる(URL を貼るだけ)。
- Excel の表をそのまま貼る(コピーして貼り付ければ、タブ区切りのテキストになります)。
- 「この仕様の
kind: "timingchart"の JSON にして」と頼む。 - 返ってきた JSON をコピーし、エディタの「ファイル → JSON を貼り付けて開く…」に貼って「読み込む」。
頼み方の例
https://fa-spec.com/json-format の仕様に従って、
下の I/O 一覧から kind: "timingchart" の JSON を作ってください。
- steps は 16
- BOOL は values を true/false、数値は文字列、未設定は null
- role は、PLC が出す信号を "M"、サーボが出す信号を "S"
- 波形はまだ決めないので、全部 false で置いてください
変数名 型 コメント 方向
bStartReq BOOL 位置決め起動要求 M
bBusy BOOL 動作中 S
bInPos BOOL 位置決め完了 S
nTargetPos DINT 目標位置 M
波形を全部 false にしておくのがコツです。
行と方向だけ先に用意して、波形は自分で描く。
ここは設計判断そのものなので、AI に決めさせるところではありません。
アドレスマップでも同じことができる
デバイスコメントの一覧や、機械設計からもらった I/O リストがあるなら、
kind: "addressmap" で同じことができます。
このときは address を空文字のままにしておくのがコツです。
アドレスの割付は、デバイスの範囲・型・ビットの詰め方を全部見ながら決める必要があり、 AI が数えると必ず間違えます。空のまま読み込んで、エディタの 「アドレス割付…」(Ctrl+R)に一括でやらせてください。重複も範囲外も自動で弾きます。
座標(x / y)は書かせなくて構いません。 構成図とフローチャートは、座標の無いデータを読むと自動で並べます。 AI に位置まで決めさせると、重なったり線が交差したりします。
AI に数えさせてはいけないもの:
アドレスの連番、ビットの位置、デバイスの残り点数、Step 数と values の長さの一致。
これらはエディタが機械的に正しく扱えるので、任せてください。
AI に任せるのは「名前・型・コメント・方向をどう振り分けるか」です。
3. できた図を AI に検証させる
ここからが本題です。図は描いて終わりではなく、間違いを見つけるために描きます。
どのエディタにも 「出力 → AI 検証用テキスト…」があります。 押すと、図の内容に「何を見てほしいか」を添えたテキストが出ます。 これをそのまま AI に貼ってください。
タイミングチャートで見つかるもの
- 要求と応答の順序の矛盾 — 応答を確認する前に要求を切っている
- インターロックの抜け — 異常中でも起動要求が通る
- 立ち上がり・立ち下がりの取りこぼし — 1 Step しか出ない信号を、相手が拾えない
- 因果関係の矢印が無い変化 — 何をきっかけに動いたのか説明できない箇所
最後の項目が効きます。チャートに 因果関係の矢印を引いておくと、AI は 「この変化には根拠がありません」と名指しできます。 矢印の無い変化は、たいてい設計者の思い込みです。
フローチャートで見つかるもの
- 終わらないループ — 抜け出す条件がどこにもない
- たどり着けない処理 — 分岐の組み合わせ上、絶対に通らない
- 分岐条件の漏れ — YES でも NO でもない場合の行き先が無い
アドレスマップで見つかるもの
- 命名のゆれ —
bStartとStartBitが混在している - 型と格納先の食い違い — DINT を 1 ワードに入れている
- 将来の拡張余地 — 増設用の空きが連続して取れているか
重複と範囲外はエディタが自分で検出して「AI 検証用テキスト」に添えるので、 AI にはその先の、人が見落としやすいところを見てもらいます。
4. 直してもらったものを戻す
AI の指摘に納得したら、「出力 → JSON をコピー」で今のデータを渡し、 「この構造のまま直して」と頼みます。返ってきた JSON を 「ファイル → JSON を貼り付けて開く…」に貼れば、直った図になります。 コピーと貼り付けだけで往復できるので、ファイルは一切作りません。
丸ごと作り直させないでください。「直して」と頼むと差分だけが変わりますが、 「作り直して」と頼むと、関係ないところまで変わります。
元に戻せるようにしておく: 読み込む前に、いまの内容を「名前を付けて保存…」しておいてください。 エディタの Ctrl+Z でも戻せますが、ファイルを開いた後では戻せません。
5. この使い方が向いている場面
| 場面 | やること |
|---|---|
| 既存機の改造 | 前回のデバイスコメントを JSON にして、差分だけ描き足す |
| 客先仕様書の読み込み | 文章の仕様を JSON にさせ、図にしてから「これで合っていますか」と確認する |
| レビューの前 | AI 検証用テキストを先に通して、指摘されそうな箇所を潰しておく |
| 引き継ぎ | 図と JSON を一緒に渡す。受け取った側も AI に読ませられる |
6. 気をつけること
- 客先の情報を AI に貼る前に、社内の決まりを確認してください。 機器の型式や IP アドレス、製品名が入ったままのことがあります。 エディタ側はデータを端末の中だけで扱いますが、AI に貼った時点で話は別です。
- AI の指摘を鵜呑みにしないでください。 「インターロックが足りない」と言われても、上位の安全回路で担保していることがあります。 判断するのは設計者です。AI は見落としを拾う道具で、設計を代わりにやる相手ではありません。
-
JSON が読めないときは、たいてい構造のどこかが違います。
schemaとkindが先頭にあるか、valuesの長さがstepsと合っているか、edgesのfrom/toが存在する id を指しているか。 この 3 つを見れば、たいてい原因が分かります。
使うもの
- JSON データ構造の仕様 — AI に読ませる仕様書。URL を貼るだけで使えます
- Timing Chart Editor — 信号の動きと因果関係
- Address Map Editor — 変数とアドレスの割付
- Flowchart Editor — 制御の流れ
- System Diagram Editor — 機器と通信のつながり
すべてインストール不要・登録不要です。 入力したデータは端末の中だけに保存され、サーバーへは送られません。
関連する記事
- タイミングチャートの書き方 — 信号の動きと「設計意図」を現場に残す
- PLC 制御フローチャートの書き方 — 状態遷移と「抜け出せないループ」を防ぐ
- PLC アドレスマップの作り方 — デバイス枯渇と変数名破綻を防ぐ
- システム構成図の書き方 — 盤屋・電設・ソフト屋の認識ズレをゼロにする
yk.builds