RCNPにおける制御のEPICS移行と機械学習の導入
依田 哲彦，福田 光宏，神田 浩樹（阪大RCNP）

PASJ2023 THOA8, T. Yorita

Contents
・RCNPサイクロトロン施設の制御の概要
・EPICS移行
動機
要素開発
今後の展望
・機械学習の導入
現状の取り組み

PASJ2023 THOA8, T. Yorita

RCNPサイクロトロン施設
制御機器室
制御機器室

制御室

半導体照射
中性子トンネル
Grand Raiden
At-211
MuSIC

リングサイクロトロン
AVFサイクロトロン

Since 1992
PASJ2023 THOA8, T. Yorita

Since 1973

制御室の写真で見るRCNP５０年の制御の歴史~ 1991（AVFサイクロトロンのみ）
電子CP盤
リレー制御
1991 ~ 2005 (リングサイクロトロン建設以降）
VAX－UDC制御 (VAX II x2, RTVAX x3),
リレー制御
2005 ~ 2012
WindowsXP-UDC(via VMEbus)＆PLC制御,
リレー制御

2012 ~
Windows7-UDC(via VMEbus)&PLC制御,リレー制御（リレー計器盤はPLC化）
PASJ2023 THOA8, T. Yorita

加速器制御システム概要(2005～2019)
制御室

AVF機器
Ring機器

DSU
SCU

PLC…

FSU

GCU
UDC

GCU
UDC…………..

InTouch(SCADA)による
PLC,UDC制御システム←Windows7で稼働・PLCはFA Server(OPC Server)
を介して制御・UDC (SHI製マイコンボード)
はVMEのMTC (SHI製)ボードにより制御※詳細は後述

GCU
for
PLC

MTC

PLC….
PLC………..

PLC………..

各サーバー名称
ＳＣＵ：操作系 InTouch (Wonderware)
ＧＣＵ：UDC,PLC制御系 InTouch (Wonderware)
ＦＳＵ：設定ファイルサーバ Access (MS)ＤＳＵ：アーカイバー Historian (Wonderware)
PASJ2023 THOA8, T. Yorita

UDC

制御システム更新２０１９～
R1~3年度AVFサイクロトロン更新工事実施。せっかくのこの機会に・・・
・50年来のインターロックリレー盤のPLC化（リレーモジュール＋PLC）実施完了
・制御システムの根本的見直し
Windows7からアップグレードできないという問題→PCIのVMEドライバーがそのままでは動かない

システムがいつの間にかブラックボックス化→→システム刷新ついでにEPICSを導入〇なぜEPICSか？
導入している施設多数（ELPH,KEK,RIKEN,SNS,FRIB,DESY,BNL,iter,…)
無償（多分、将来にわたって）システムの拡張がInTouchに比較して容易そうである
機械学習による加速器制御も容易そうである
PASJ2023 THOA8, T. Yorita

加速器制御(2021以降)：InTouchとEPICSの共存状態
EPICS：イオン源、AVF-RFなど
InTouch：95%以上の機器
Historian:DSU アーカイバー

InTouch: SCU

上位操作系

上位操作系 アーカイバー（JSONなどに対応）
CSS
Archiver Appliance
加速器ネットInTouch:GCU
UDC

FA Server
PLC等

EPICS IOC：F3RP71,PC,RPi,仮想マシン
CALab@LabVIEW、等々

情報Tag数約40000点（休眠Tagや中間層Tagも含む）
Archiver Applianceに登録されているPV数
約1000点
PASJ2023 THOA8, T. Yorita

各種DEVICE:
PLC、SCPI、USB機器等々

EPICS移行のボトルネック：レガシーシステムUDCについてマイコンと光リンクによる制御システム(Message Treeと呼称)→→→これらがやたら残存している

540枚ほどMessage Tree Communicator (MTC)
ホスト側 画像のものはVMEボード
かつてはVAXバス
Message Tree Brancher (MTB)
光分岐

Universal Device Controller (UDC)
デバイス側
１台のMTCで５０台のUDCを制御できる128バイトのレジスタ(CRG)をやり取りしている・Analog I/O, GPIB制御も可能
・PL/M言語
PASJ2023 THOA8, T. Yorita

１２８バイト共有レジスタ（CRG）
機器制御の設定値、読み出し値などのアナログデータ、各操作ビット、各種パラメータテーブルが格納されている。

・UDC１枚で何役もこなしているためPLCモジュールに置き換える場合はそれなりのモジュール数が必要
・UDCはわりと堅牢・ROMライターも健在→UDCのEPICS化決断

PASJ2023 THOA8, T. Yorita

VMEボードCPUによるUDC機器制御のEPICS化
VME制御はSanritsu SVA061(CentOS7)を利用することとした。MTC通信制御プログラムは新規開発。

UDC

制御プログラム
アプリケーションレイヤーでドライバーとして働く。
MTC配下のUDCすべてを順番にハンドシェイクしUDCのCRGの更新情報をSVA061上のVirtual CRGへ
Virtual CRGの更新情報をCRGへ書き込む。

EPICS
Virtual CRGを参照し制御する

PASJ2023 THOA8, T. Yorita

MTC

Optical Divider

SVA061

ここの部分をVME CPUに置き換え

光ケーブルVMEボードCPUによるUDC機器制御のEPICS化
動作確認：複数のUDCの同時制御ができるか、UDCテストデバイス２台を使ってテスト
UDC2

UDC1

UDCテストデバイス：
128バイトCRGの特定のアドレスの状況をLED表示したり、トグルスイッチの状態をCRGに書き込みする

MTB

テスト結果は良好
SVA061

MTC1,2

昨年１２月よりイオン源RF電源にて長期運用試験実施中。
→問題なく稼働している。
PASJ2023 THOA8, T. Yorita

今後の展望あとはマンパワーをかけて移行を進めるだけ→どう進めるか？？
各機器の仕様などを改めて確認しながらなので結構大変である。
この夏季停止期間に少量移行予定。この際に手順を見定め固めていく。
とある検討事項：CSS開発労力削減のためInTouchをEPICS OPIとして使う？ ※但しWindows10,11で→FreeOpcUAをOPCサーバーとして使う

UaExpertによる温度のPVの読み込みテスト→結果良好
PASJ2023 THOA8, T. Yorita

機械学習に必要な制御とは●ベイズ最適化による自動調整など：
Pythonから直接制御パラメータを入出力する仕組み
EPICSの場合：PyEPICSなど

Ion Source

BMQ1

FC

Q2

GpyOptによるLEBT自動調整の例●ニューラルネットワークによる加速器の状態解析など：
多数のパラメータの時系列情報をCSVで取得する仕組み→PythonでPandas, Numpy等で処理される
EPICSの場合：Python等のスクリプトによりArchiver Applianceから取得

Autoencoderによる運転解析の例
700~800のパラメータを2次元に圧縮
PASJ2023 THOA8, T. Yorita

InTouchでも機械学習は可能：EPICS移行までの暫定措置として
InTouch●ベイズ最適化：
PCP Commなるものの利用→全パラメータの制御は困難

アーカイバーHistorian:DSU

InTouch:SCU

Winsock準拠

PCP Comm

上位操作系

EPICS IOC
Stream Device

加速器ネットInTouch:GCU
UDC

Python3 for ML

FA Server
PLC等●ニューラルネットワークによる加速器の状態解析など：
多数のパラメータの時系列情報をCSVで取得する仕組み→Historian用のExcel アドインが準備されている→非常に時間がかかる。。。
PASJ2023 THOA8, T. Yorita

PyEPICSGPyOpt, Scikit-learn,
Gpytorchなど

ArchiverApplianceまとめ・RCNPサイクロトロン施設の制御の概要
InTouchによる制御が主である
・EPICS移行
R1年からのAVF更新の機会にEPICS移行を開始する
最大のネックであったUDC制御開発を昨年完了
今後マンパワーをかけて移行していく
・機械学習の導入
現状のInTouchでも機械学習は可能であるが効率良く研究を進めるべくEPICS化を急ぎたい

PASJ2023 THOA8, T. Yorita