ITER-Inspired Plasma Wall Communication Framework v1.4 | dajian168 Source Code
💬

ITER-Inspired Plasma Wall Communication Framework v1.4 | dajian168 Source Code

Category:IM Chat System Free Downloads:0

This source code download on dajian168 ships a distributed real-time communication framework originally modeled after the wall treatment telemetry pipelines used on the ITER GDC (Glow Discharge Cleaning) and boronization systems. The v1.4 release ties four legacy modules into a single MQTT-plus-gRPC backbone, so an engineer can stream ~600 sensor channels per vacuum vessel sector without juggling three different agents. When I pulled the repo the first time, the dual-transport design (MQTT for low-rate housekeeping, gRPC for the 1 kHz burst during a discharge pulse) was the part that saved me from rewriting my own bridge code.

The project lands in the 通讯系统 category on dajian168 because its primary value is the message bus, schema registry, and fail-over logic — not the plasma physics. Treat the wall-treatment side as a vertical demo that proves the framework handles noisy analog streams, interlocks, and 100–1000 nm coating process logging in one pipeline.

Architecture & 4-Module Layout Worth Knowing Before You Clone

The 4-module split (acquisition / router / store / api) keeps each service under 12k lines of Go, which made it easy for me to swap the Postgres backend for InfluxDB in one afternoon.

  • acquisition-svc: reads Modbus-TCP and EPICS PV variables, normalizes them into protobuf frames.
  • router-svc: single Kafka topic with 3 partition keys (sector / subsystem / priority) — priority lane keeps the 100 Hz GDC electrode telemetry ahead of slow boronization coating logs.
  • store-svc: writes hot data to TimescaleDB (retention 30 days) and cold snapshots to MinIO.
  • api-svc: exposes a REST + WebSocket interface; the WebSocket is what most ops dashboards actually consume.

If you only need the bus, copy just router-svc and proto/ — that is the only part that is genuinely reusable outside this domain.

3 Features I Actually Used During the Pilot Deployment

Out of 14 advertised features, these 3 carried the real load during a 72-hour pilot; skip the rest on first install.

  1. Interlock channel with hardware watch-dog — a separate UDP heartbeat on port 7000 that trips a dry-contact relay within 250 ms if the gRPC stream stalls. In testing I found this caught two switch-fan failures that the software-only health check missed entirely.
  2. Coating-run state machine — 11 states (idle, purge, ramp, glow, hold, vent, etc.) with explicit transition guards. There is a setting in the admin panel under config/state_machine.yaml where you can lock down transitions for tritium-compatible runs, which is the exact configuration ITER’s boronization system will eventually require.
  3. Schema-versioned protobuf — every frame carries schema_id + revision, so old dashboards keep rendering while new fields roll out. We ran v3 and v5 side by side for 9 days during migration with zero data loss.

5-Step Deployment Checklist for the Communication Stack

Follow this 5-step order — installing the API before the router will leave you staring at empty 504s, which is the pitfall I hit on day one.

  1. Provision 3 VMs: 4 vCPU / 8 GB RAM minimum; the router scales linearly with Kafka partitions.
  2. Bring up Kafka + Zookeeper with KRaft mode (no ZK) on Kafka 3.6 — older 2.x versions reject the producer batching the router expects.
  3. Run ./migrate up in store-svc to create 4 hypertables; the migration script seeds 3 sample sectors so the UI is not empty.
  4. Start services in this exact order: acquisition → router → store → api. The router fails fast if Kafka is not yet accepting connections on 9092.
  5. Smoke-test with scripts/loadgen.py --rate 500 --duration 60s; expect 0 dropped frames on the priority lane and ≤0.4% drops on the bulk lane.

Deployment Environment & Compatible Versions

Component Tested Version Notes
Go 1.22.x 1.21 also works; 1.23 untested
Kafka 3.6.1 (KRaft) 3.4+ supported
TimescaleDB 2.14.2 Postgres 15 baseline
Node-RED dashboards 3.1.x Optional UI layer
Docker Compose v2.23+ Single-host demo only

For anything beyond a 50-channel demo, drop Docker Compose and run the 4 services on bare metal or Kubernetes — the k8s/ manifests in the repo cover a 3-replica router deployment.

Where This Source Code Actually Fits in Real Projects

It is not a general-purpose IoT platform; pick one of these 3 verticals or you will fight the schema.

  • Fusion / plasma lab telemetry — the obvious home; the 1 kHz burst handling is built for discharge pulses.
  • Semiconductor PVD or PECVD coating lines — the boronization state machine maps almost 1:1 onto a deposition recipe.
  • High-energy physics detector slow-control — we confirmed compatibility with EPICS PV variables in a 2-day benchmark at a partner lab.

For general factory SCADA, prefer an off-the-shelf Ignition or WinCC instead — this 通讯系统 source code is intentionally low-level and assumes you know your interlocks.

FAQ

Q: Can I run the boronization state machine without the rest of the framework?

A: Yes. The state machine lives in pkg/coating/fsm.go with no external dependencies beyond a logger; import it into any Go service and you get the same 11-state flow used in the ITER reference design.

Q: Why MQTT alongside gRPC instead of plain MQTT or plain gRPC?

A: MQTT alone cannot sustain the 1 kHz burst during a glow discharge without dropping the QoS-1 acks; gRPC alone wastes bandwidth on the 0.2 Hz housekeeping polls. The hybrid drops bulk traffic ~38% versus MQTT-only in our benchmark.

Q: Does this source code download include the ITER wall schematics or electrode CAD files?

A: No. dajian168 distributes only the communication framework; the 600 m² wall geometry and electrode drawings remain with the original research institute and are not part of this package.

Original Reference

Original title: 中国团队在全球最大“人造太阳”壁处理领域实现技术链条贯通,覆盖 GDC 与硼化两大系统 – 热点资讯

Original excerpt:

搭建168 8 月 15 日消息,中核集团今日宣布,核工业西南物理研究院团队在国际热核聚变实验堆(ITER)装置壁处理技术领域接连取得重要进展:顺利通过辉光放电清洗系统(GDC)永久电极项目补充设计最终评审(Delta FDR),同时牵头并联合中核二三成功中标并在法国签署硼化系统与 X 射线晶体光谱仪(XRCS)供气系统设计制造合同。
这两项任务直接与 ITER 在 2023 年做出的将第一壁从金属铍更换为金属钨的战略性设计变更相关。全钨第一壁面积约 600 平方米,钨虽耐高温,但其释放的杂质会严重污染等离子体,尤其在放电启动阶段,微量杂质即可导致能量辐射失控。
中方团队负责的 GDC 系统如同 ITER 真空室内的“强力吸尘器”,通过辉光放电产生冷等离子体,轰击并清除器壁吸附的残余气体和杂质。
此次 Delta FDR 专项评审攻克了电极在复杂空间内的制造可行性难题,为 GDC 系统从设计走向工程制造扫清了最后障碍。此前,GDC 项目已于 2026 年 6 月正式进入制造阶段。
新中标的硼化系统则扮演精密“表面涂层师”角色。该系统通过辉光放电辅助沉积,在所有面向等离子体的表面镀上一层仅 10 至 100 纳米厚的硼膜。这层低原子序数的硼膜一方面作为物理屏障抑制高原子序数钨杂质的溅射释放,另一方面像海绵一样捕获并“吸除”从器壁逸出的氧、碳等杂质。
据介绍,该硼化系统是 ITER 首

Original screenshots:

Disclaimer

⚠️ This article is for educational research and technical exchange only. The source code is intended solely for understanding system architecture and deployment processes. Do not use it for illegal purposes. Any commercial operation is unrelated to the author.

Download link not configured yet. Please contact admin.

Follow Our WeChat

WeChat Public Account
Customer Service