投稿

ラベル(連枝)が付いた投稿を表示しています

AIに“RSフリップフロップつくって”と言うだけで、連枝にラダーが書き込まれ→HEX生成→PIC/H8へ書込み→即動作

 やりたいこと=「AIに“RSフリップフロップつくって”と言うだけで、連枝にラダーが書き込まれ→HEX生成→PIC/H8へ書込み→即動作」ですね。 以下の最小実装をそのまま置けば動線がつながります。 --- 全体フロー(ワンコマンド) AI → MCPコマンド rsff_build_and_flash      ① RS-FFのラダー生成(テキストDSL)      ② 連枝をヘッドレス操作してHEX生成(renri-cli ラッパ)      ③ PIC/H8へ書込み(pk3cmd など)      ④ 必要ならシミュレーションログ返却 --- 1) RSフリップフロップのラダー(テキストDSL例) 入力: X0=R, X1=S 出力: Y0=Q(自己保持つき), Y1=/Q(オプション) TITLE: RS Flip-Flop CPU: PIC16F84A SCAN_MS: 5 I: X0 R, X1 S O: Y0 Q, Y1 NQ M: M0 LATCH_Q ; 内部ビット ; RUNG1: セット RUNG: X1 -> (SET M0) ; S で M0=1 ; RUNG2: リセット RUNG: X0 -> (RST M0) ; R で M0=0 ; RUNG3: 出力Q(自己保持は M0 が担うのでそのまま反映) RUNG: M0 -> Y0 ; RUNG4: 反転出力NQ(任意) RUNG: /M0 -> Y1 > 連枝への食わせ方は後述の「renri-cli(自作ラッパ)」で .renri 相当のプロジェクトに流し込みます。 --- 2) MCPサーバ(Node/TypeScript・最小) > rsff_build_and_flash が “生成→コンパイル→書込み” を一気にやります。 ここで呼んでいる renri-cli は、後ろにある AutoHotkey スクリプトで 連枝GUIを自動操作してHEXを吐かせるラッパです(ファイル監視→保存→コンパイル→out.hex)。 // src/server.ts import { ...

連枝とMCPサーバーの連携

 いいですね!「連枝(れんり)」で描いたラダーをPIC/H8向けにコンパイル→HEX生成→ライタで書き込み…までを、MCPサーバとつないで“AIに指示→実機が動く”流れにできます。まずは全体像、その後に最小構成の実装例を載せます。 全体アーキテクチャ(最小構成) ChatGPT(AI) ──> MCPサーバ(renri-mcp)                       ├─ Ladder生成(AIテキスト→Ladder DSL)                       ├─ 連枝のビルド呼び出し(HEX出力)                       ├─ シミュレーション実行(任意)                       └─ ライタCLIで書込み(PICkit 等) PC上の「連枝」S版/製品版 + PIC/H8書込み環境(PICkit, 秋月ROMライタ等) 連枝はラダー図からPIC/H8等の機械語/HEXを生成でき、画面上のシミュレータも備えています。HEXは標準フォーマットなので多くのロムライタで使えます。 目的が「マイコンをシーケンサ同等に動かす」ことなら、ラダー→HEX→書込みの自動化をMCPでラップするのが一番シンプルです。類似発想としてLDmicroなども存在しますが、ここではユーザーご指定の連枝を中核にします。 **MCP(Model Context Protocol)**はAIとツールを標準化されたサーバ経由で連携する仕組み。サーバ側で「コンパイル」「フラッシュ」「シミュレート」等のコマンドを公開すれば、AIから一発で実行できます。 --- 実装ステップ 1. PC側のツール列 連枝(S版でも可/製品版推奨) 連枝の回路コンパイルをコマンド化(後述の自動化ラッパーで操作) 書込み:P...