シンボル
シンボルのライブラリ。11 のシステムのライブラリと「自分のシンボル」、ギャラリーの検索と絞り込み、実時間の入力と接続点を持つ検査、新しいユーザーシンボルの編集画面とすべての可変部の種類、シンボルを取り込む…、パッケージを書き出す、複製、チャット用の指示をコピー、そしてシンボルの使われ先。
シンボルは、素材の最上位の下の 4 つ目の分類です。ダッシュボードのシンボルのコンポーネントが描き、動かす絵です。パネルの見出しは「シンボル」で、「現代的なダッシュボード、試験台、つながる製品、規格の図、産業システム、施設のために作られたライブラリです。システムシンボルはすべて中を見られ、「自分のシンボル」に複製できます。」の行と、件数のピルが付きます。読むことと調べることには Logic の表示が、作成、取り込み、複製、編集、削除には Logic の構成が必要です。シンボルが行き来するときのファイルの形式は、持ち運べる SVG のシンボルにあります。
ライブラリ
| ライブラリ | 何を持つか | 規格 | シンボル |
|---|---|---|---|
| Process | 監視のダッシュボードとプロセスの図のための、層を重ねたプロセス設備の絵 | 86 | |
| ISA / P&ID | 図式のプロセス、配管、バルブ、計装の絵 | ANSI/ISA-5.1 / ISO 10628 | 99 |
| Manufacturing & Material Flow | 個別生産、組立、バッチ、包装、検査、構内物流の設備 | 48 | |
| Lab & Test Bench | 試験室、データ収集、計測、供試体の治具、環境試験装置、品質検査のシンボル | 35 | |
| Prototyping Electronics | コントローラー、開発ボード、コネクター、センサーモジュール、アクチュエーター、電源、無線 | 35 | |
| IoT Field Sensors | 環境、状態監視、位置、計量、無線ゲートウェイ、エッジ制御のシンボル | 36 | |
| Smart Home & Building | 照明、快適さ、入退、安全、家電、水回り、そして相互につながる制御機器 | Matter / BACnet / 建物自動化の一般的な表記 | 39 |
| IT, Network & Datacenter | 計算機、ラック、ストレージ、ネットワーク、セキュリティ、クラウドの基盤、施設の電源と冷却 | IT 基盤の一般的な表記 / SNMP / Redfish | 35 |
| Electrical & Energy | 単線図、配電、変換、計量、再生可能エネルギーと、形で表す接点の状態 | IEC 60617 / IEEE 315 | 39 |
| Energy, Microgrid & e-Mobility | 分散電源、変換、蓄電、計量、保護、マイクログリッド、EV の充電 | IEC / IEEE / OCPP に沿ったダッシュボードの表記 | 40 |
| Facilities & Utilities | 空調、上下水、安全システム、プラントのユーティリティ、制御の設備 | 38 | |
| My symbols | 自分で組み立てた、取り込んだ、複製したシンボル | 自分のもの |
システムのライブラリは Ganter Lab が自分で描いた絵で、製品に組み込まれていて読み取り専用です。更新は、ステーションのデータに触れずにそれらを入れ替えます。定義はそれぞれ、変わらない参照 system:<key>、そのライブラリと分類、説明、検索用のタグ、当てはまる規格、そして出どころとライセンスの情報を持ちます。
ギャラリー
カードの上には次のものが並びます。検索(プレースホルダーは「名前、分類、タグ」。シンボルの名前、説明、分類、規格、タグに、大文字と小文字を問わず当てはめます。ライブラリは自分の絞り込みで選びます)、ライブラリ(「すべてのライブラリ(530)」か、件数を添えた 1 つのライブラリ。1 つを選ぶと分類が解除され、絞り込みの下にそのライブラリの説明が出ます)、分類(「すべての分類」か、選んだライブラリの 1 つの分類)、出どころ、1 ページの件数です。カードは、ライブラリ、絵の本来の縦横の比で描いたプレビュー、名前、分類、出どころ(システムか自分のもの)、そして機能の行を見せます。機能の行は「動きなし」、「入力 1 件」、「入力 N 件」で、そのシンボルが接続点を宣言しているときは「· 接続点 N 件」が続きます。結果が空のときは「この絞り込みに合うシンボルはありません。」と絞り込みをすべて解除が出ます。自分のシンボルを読めなかったときは、システムの一式をカタログの全体であるかのように見せるのではなく、「「自分のシンボル」は今読み込めません。システムのライブラリだけを並べています。」と注意が出ます。
検査
カードを選ぶと、ギャラリーの隣に検査が開きます。
- 名前と印。システム · 読み取り専用、自分のシンボル、あるいは編集画面が開いている間は未保存の下書きです。
- ライブラリ、分類、規格、そして説明。
- 大きさ(推奨するダッシュボードでのます目の数、幅 × 高さ)と収め方(収める、縦横に伸ばす、横に伸ばす、縦に伸ばす)。
- 「入力 N 件 · 接続点 N 件」、接続点がないときは「見た目だけ」。
- 絵の出どころ。出どころと、システムシンボルではライセンスを開いて見られます。
- 操作。パッケージを書き出すはどのロールにも出ます。システムシンボルには「自分のシンボル」に複製、自分のものには編集と削除が出ます(構成できるロールだけ)。
- プレビューの舞台。無害化した絵を、ダッシュボードと同じランタイムで描き、接続点の位置ごとにつまみを描きます。描けない絵は舞台を空のままにし、「プレビューを表示できません」と理由を出します。無害化がマークアップを直す必要があったときは、「プレビューは無害化した SVG を使います」を開くと、その修復が並びます(最大 8 件で、そのあとは「ほかに N 件の修復は表示していません。」)。
- 入力。「一時的な定数は、このプレビューにだけ効きます。」と入力を戻すが出ます。宣言された可変部ごとに 1 つの節があり、その名前、それが動かす効果、対応づけを述べる 1 文、入力の範囲、対象の要素(
#id)、そして試すための操作部が出ます。操作部は、数値(入力の範囲が有限のときはスライダー付き)、オンとオフの切り替え、文字の入力欄、あるいは塗りの値の欄を添えた色の選択です。可変部がないときは「このシンボルは、動きのある入力を宣言していません。」と出ますし、宣言が正しくないときは操作部の代わりにそのエラーが出ます。ここで置いた定数は、決して保存されませんし、ダッシュボードに届くこともありません。
効果と、検査がそれをどう述べるかは次のとおりです。
| 種類(編集画面での表記) | 効果 | 操作部 | 説明 |
|---|---|---|---|
| Rotate | 回転 | 数値 | <output min>° から <output max>° まで回します |
| Opacity | 不透明度 | 数値 | 不透明度を <output min> から <output max> まで変えます |
| Fill | 塗りの状態 | 切り替え | 塗りをオフの色からオンの色に切り替えます。数値の信号は、入力の中間で切り替わります |
| Visible | 表示と非表示 | 切り替え | オフのときは要素を隠し、オンのときに表示します |
| Text | 表示する文字 | 文字 | 要素の中に表示する文字を置き換えます |
| Translate | 位置 | 数値 | SVG の単位で (x, y) から (x, y) まで動かします |
| Scale | 拡大縮小 | 数値 | (x, y) から (x, y) まで拡大縮小します |
| Stroke | 輪郭の状態 | 切り替え | 輪郭をオフの色とオンの色の間で切り替えます。数値の信号は、中間で切り替わります |
| 回転(°/秒) | 回転の速さ | 数値 | <min>°/秒 から <max>°/秒 まで回し続けます。0 で止まり、負の値では向きが逆になります |
| 回転の有効 | 回転の状態 | 切り替え。既定はオン | 要素を隠さず、角度も戻さずに、回転を止めたり再開したりします |
| Fill color | 塗りの色 | 色 | Color の素材、Color の変数、またはそのままの色から、塗りを直接決めます |
| Stroke color | 輪郭の色 | 色 | Color の素材、Color の変数、またはそのままの色から、輪郭を直接決めます |
| 線の太さ | 輪郭の太さ | 数値 | 輪郭の太さを、SVG の単位で 0.5 から 32 まで直接決めます |
新しいユーザーシンボル
シンボルの行の上の動詞は、ギャラリーの欄に編集画面を開きます(「新しいユーザーシンボル」:「動きのない SVG と、Dashboard 用の名前付きの可変部を組み立てます。」)。検査は入力に合わせて未保存の下書きを追うので、作る前にそのシンボルを試せます。
| 項目 | 意味 | 受け付ける値と既定 | 効果 |
|---|---|---|---|
| 名前 | 表示の名前です。 | 必須。空の間は「名前は必須です。」と出ます。 | アイコンや色と違い、シンボルの名前はあとで変えられます。ダッシュボードは id で参照するからです。 |
| SVG のマークアップ | その絵を、文字列として貼り付けます。 | 必須。 | 入力しているそばから無害化されます。絵のエラー(「SVG のマークアップには <svg> の根が必要です。」、「SVG のマークアップが 512 KB の上限を超えています。」、id の重なりなど)は、作成もすべての可変部も止めます。 |
| 収め方 | 絵がダッシュボードのます目をどう埋めるかです。 | 収める(既定)、縦横に伸ばす、横に伸ばす、縦に伸ばす。 | シンボルを置くときに、ダッシュボードの編集画面が読みます。 |
| 最初の幅、最初の高さ | 新しいダッシュボードの実体が始まるときの大きさです。 | 1 から 24 ます目、1 から 12 ます目。既定は 4 × 4 です。 | 同じくです。 |
| 接続点 | 読み取り専用の注意です。 | 「この絵は見た目だけのものです。型を持つ接続点は、Ganter Symbol v2 のパッケージで与えられます。」か、「パッケージが定めた接続点 N 件を、そのまま保っています。接続点の位置は、Ganter Lab では意図的に読み取り専用です。」 | 接続点は、ここでは描くことも編集することもできません。取り込んだパッケージか、複製したシステムシンボルから来るもので、編集してもそのまま保たれます。 |
| 可変部 | そのシンボルが公開する入力です(「可変部はそれぞれ 1 つの SVG 要素の id を対象にし、安全な動きを 1 つだけ公開します。」)。 | 可変部を追加が、決められた名前(param、そのあとは番号付き)で行を足します。 |
行はそれぞれ、名前、要素の id(マークアップの中で見つかった id が並ぶコンボですが、任意の id を入力もできます)、削除、種類、入力の最小と最大、出力の最小と最大(Translate と Scale では X の軸)、任意の Y の最小と最大の組、そして種類ごとのものを持ちます。線の太さには「Dashboard の値は、0.5 から 32 までの SVG の線幅としてそのまま使われます。」の注意、Fill color と Stroke color にはプレビューの色、そのほかの種類にはオンの色とオフの色です。 |
可変部の規則は次のとおりで、どれも項目の下に伝えられ、違反した行が囲まれます。名前は識別子でなければならず(最初は英字か _、そのあとは英字、数字、_、.、:、-)、重ならないこと。要素の id はマークアップの中に存在すること。Text の対象は text と tspan だけであること。Fill と Fill color の対象は、塗れる図形、グループ、use、文字であること。ほかの種類の対象は、グループ、use、図形、文字であること。Rotate、Spin、Scale は、その要素が data-ganter-pivot="x y" を持っていること。範囲の値はどれも有限であること。Y の組は両方あるか両方ないかで、Translate と Scale にだけ使えること。オンとオフの色は、16 進数、var(--color-success) のようなテーマの語、あるいは CSS の色の名前であること。1 つの要素が取れる可変部は、チャネル 1 つにつき 1 つまで(塗り、輪郭、輪郭の太さ、そのほかの種類ごとに 1 つ)であること。そして、回転の有効の可変部には、同じ要素の上に回転の可変部が要ることです。
シンボルを作成は、エラーが 1 つでも残っている間は灰色のままです。キャンセルか戻るで、作らずに離れます。うまくいくと、操作ログ帯が「シンボルを作成しました。」と伝え、新しいカードが選ばれます。
編集、複製、削除
編集(自分のシンボルだけ)は、「正しい名前、SVG、可変部の変更は自動で保存されます。」を添えた同じ編集画面を開きます。正しい変更は最後の編集から 0.5 秒後に保存され(「シンボルを保存しました。」)、正しくない下書きは保存されず、待っていた保存も取り消されるので、保存されたシンボルが検査の見せているものと食い違うことはありません。「自分のシンボル」に複製(システムシンボル)は、絵、表示範囲、収め方、大きさ、型の設定、接続点、提案を、独立したシンボルに写します。名前は「<Name> copy」(使われていれば「<Name> copy 2」…)で、そのまま編集のために開きます(「システムシンボルを「自分のシンボル」に複製しました。」)。システムの定義が変わることは決してありません。削除は「「X」を削除しますか?これを使っているダッシュボードには、代わりの印が出ます。この操作は元に戻せません。」と尋ねます(「シンボルを削除しました。」)。
シンボルを取り込む…
行の上の 2 つ目の動詞は、.svg と .ganter-symbol.json のファイルを、最大 1 MB まで受け付けるファイルの選択です(「このシンボルのファイルは、上限の 1 MB を超えています。」)。中身が道を決めます。
- 生の SVG(内容が
<で始まるもの)は、見た目だけの絵として取り込まれます。可変部も接続点もありません。無害化がそれを直し、操作ログ帯が修復の数を数えます(「シンボルを新しい素材として取り込みました。安全でない SVG の要素 3 件を取り除きました。」)。名前は、拡張子を取ったファイルの名前です。 - Ganter symbol v2 のパッケージ(内容が
{で始まるもの)は、丸ごと取り込まれます。名前、SVG、表示範囲、収め方、大きさ、可変部、型の設定、接続点、提案です。パッケージは厳格です。形式、版、スキーマが一致していなければなりませんし、SVG はすでに無害化されていなければなりません(修復の必要なパッケージは、直されるのではなく拒否されます)。表示範囲は SVG の根と一致していなければなりませんし、接続点、設定、提案はどれも正しくなければなりません(その決まり)。操作ログ帯は最初の問題を名指しします(「シンボルの取り込みに失敗しました:…」)。
自分のシンボルがすでに使っている名前には、接尾辞(「 2」、「 3」…)が付きます。取り込みは必ず新しいシンボルを作り、既存のものを上書きすることは決してありません。
パッケージを書き出す
検査のパッケージを書き出すは、選んでいるシンボルを、システムのものでも自分のものでも、<name>.ganter-symbol.json としてダウンロードします。取り込みが読むのと同じ v2 のパッケージで、ステーションの素性は何も入らないので、ステーションの間を行き来できます(「<file> を書き出しました。」)。絵に根の表示範囲がないシンボルや、可変部のどれかがステーションのアドレスを持っているシンボルは拒否されます(「シンボルの書き出しに失敗しました:…」)。
チャット用の指示をコピー
チャット用の指示をコピーは、ステーションに手の届かない外部の AI チャットのための、単体で完結した指示をクリップボードに写します。それは「Create a Ganter Lab symbol for me. Return ONLY the file content, either raw SVG or a single .ganter-symbol.json v2 package, with no commentary, so I can save it as a file and import it unchanged.」で始まり、v2 の決まりの全体(受け付ける 2 つの入力、パッケージの外枠、16 の全体共通の位置、8 つの接続線の型、可変部の種類とその規則、テーマの語、接続点の位置の規則、無害化の上限、そして最小の正しいパッケージ)へ続き、答えの持ち帰り方で終わります。返ってきたものを .svg か .ganter-symbol.json のファイルとして保存し、ここで取り込む、というものです。同じ決まりを、エージェントの symbol_validate と symbol_import のツールも読むので、チャットとエージェントは同じファイルを作ります。操作ログ帯は「チャット用の指示をコピーしました。任意の AI チャットに貼り付け、返ってきた SVG を取り込んでください。」(あるいは「クリップボードがコピーを受け付けませんでした。」)と伝えます。この動詞は読むだけなので、どのロールにも描かれます。
シンボルの使われ先
ダッシュボードのシンボルのコンポーネントは、シンボルを system:<key> か user:<id> として参照し、可変部をそれぞれ Logic のアドレスに対応づけ、選べる接続点の接続線の型を選び、ダッシュボードの編集画面で描く接続線を接続線の種類を通じて接続点どうしにつなぎます。シンボルは、自分の Logic のアドレスを持ちません。
このライブラリがしないこと
接続点や内部の線を描くことも動かすこともしません。システムの絵をその場で編集しません。修復の必要なパッケージを取り込みません。版の履歴を持ちません。そして、自分のシンボルをステーションの間でひとりでに共有することもしません。パッケージを書き出して、取り込んでください。