高エネルギー加速器研究機構
小田切淳一

２０１０年 日本加速器学会

技術研修会

本講演のおしながき 前菜
 Linux 賛歌

しゃべりは２０分以内にします メインディッシュ
 実機を使ったデモ


２０分くらいご覧いただきます 応用事例のご紹介

 デザート 質疑応答

質問がなければ早く終わってしまいます
２０１０年 日本加速器学会

技術研修会

PLC とは？
 Programmable Logic Controller の略
 プログラム可能な制御コントローラ 世間一般で「シーケンサ」とも呼ばれますが…
 「シーケンサ」は三菱電機株式会社の登録商標です

商標法により保護されていますのでご注意を ラダー図と呼ばれるプログラミング言語が使われる場合が多いです ハードウェア・ロジックに近いと思われがちですが、実は“ソフトの塊”（立派な計算機）です
２０１０年 日本加速器学会

技術研修会

ラダー図に向いていること
 シーケンス制御
 赤上げて 白上げて 白下げないで 赤下げない 両方下げて 白上げる …
 例えば電源の立ち上げシーケンスなど
２０１０年 日本加速器学会

技術研修会

ラダー図に向いていないこと
 非同期的に発生する複数のイベントにより駆動される処理の記述
 特に優先度が問題となる場合
 急に話が難しくなりましたので、簡単な例え話でご説明します“お父さんの休日プログラム”

２０１０年 日本加速器学会

技術研修会

“お父さんの休日プログラム”
 家族はお出かけ（home alone）
 大した仕事はありません 火災に気付いたら、消火する
 訪問者が来たら、対応する
 歯のざらつきを感じたら、歯を磨く
 常識に従って行動します 歯磨き中に訪問者があったら…
 訪問者への対応中に火災に気付いたら…
 消火活動中に歯のざらつきを感じたら…
２０１０年 日本加速器学会

技術研修会

マルチタスク OS を使うと便利 それぞれのイベントを処理するタスクを用意
 タスクに優先度を与える

for ( ; ; ) /* 火災処理タスク */{wait_for_fire();do_what_you_have_to_do();}

２０１０年 日本加速器学会

技術研修会

プリエンプション より高い優先度の仕事が発生したら、やりかけの仕事を中断して、そちらにスイッチすること
 優先度を忠実に尊重できる OS はリアルタイム OS と呼ばれます 色々あります VxWorks
 QNX
 μITRON pSOS LynxOS
 …
２０１０年 日本加速器学会

技術研修会

リアルタイムになった Linux
 一昔前のLinuxのリアルタイム応答性は悲惨だった システムコールを発行してカーネルモードで実行中のプロセスから実行を横取り（プリエンプション）することができなかった スループットを重視したため


３８６ の時代の話

 カーネルの実装が簡単になる カーネル ２．６ からプリエンプションが可能になった
 さらに 「PREEMPT_RT パッチ」によりリアルタイム応答性が格段に向上した！
２０１０年 日本加速器学会

技術研修会

Linux を使うメリット
 開発効率の高さ
 ユーザプログラムのバグでカーネルが壊れることはない プロセスの起動と終了、再起動が速い
 無尽蔵とも言えるフリーなソフトウェア資産が利用可能
 安い
 開発環境 ランタイム・ライセンス
 “人間マニュアル”が豊富
 個人情報保護のため、具体的な個人名を挙げることは差し控えますが、皆さんの周囲にもいくらでも見つかるはずです
２０１０年 日本加速器学会

技術研修会

Linux を OS として採用した
PLC 用 CPU
横河電機社製

F3RP61-2L (e-RT3 2.0)

32bit 533 MHz PowerPC
128 MB RAM
64 MB Flash ROM
I/F
10BASE-T/100BASE-TX(2ch)RS-232C
IEEE1394a
CFJTAG
PCI

写真提供：横河電機株式会社
２０１０年 日本加速器学会

技術研修会

OS のみでは制御はできません
 Linux の上で実行可能な制御ソフトならなんでも OK！
 色々あります（以下、アルファベット順）
EPICS (ANL/LANL) MADOCA (Spring-8)
 STARS (KEK) …
 私は EPICS しか使えません これからお見せするデモは EPICS のみになりますが、その点、予めご容赦ください

２０１０年 日本加速器学会

技術研修会

EPICS の特徴
 覚えることが多くて敷居が高い
 私は１０年以上 EPICS を使っていますが、未だに知らない機能が沢山あります。
 一度覚えると後は楽です 贅沢を言わなければ必要なものは揃っています 足りないものがあれば自分で作ることもできます 相互扶助の精神が浸透しています メーリングリストに質問を投げれば、冷たく無視されることはまずありません
２０１０年 日本加速器学会

技術研修会

それでは早速デモをご覧ください 論より証拠 見ることは信じること
 信じる者は救われる（稀に騙されることもあります）

 騙されないよう、どんどん質問して下さい 法は権利の上に眠る者を保護しません 質問する権利を積極的に行使しましょう！
 但し、講演者の能力上の問題により答えられない場合もございますので予めご了承下さい（その場合は「武士の情け」の精神をお忘れなく）
２０１０年 日本加速器学会

技術研修会

お伝えしたかったこと
 ラダー図では、いつ起こるか予想できない複数のイベントに優先度まで考慮して対応するプログラムを書くことは極めて困難（と言うより、事実上、無理） その理由は、ラダー図がシングル・スレッドであるから
 マルチ・スレッドであれば、上述のようなプログラムが容易に書ける その反面、完全に虫出しすることが極めて困難（と言うより、事実上、無理） シングル・スレッドのラダー図はプログラムの信頼性を上げ易い
２０１０年 日本加速器学会

技術研修会

応用事例のご紹介
 KEKB 加速器（KEK, つくば）
 可動ビームマスクの位置決め制御
 J-PARC （JAERI/KEK, 東海）
 ニュートリノ・ビームラインの入射電荷モニタ
 RIBF (理研仁科加速器研究センター）
 ECR イオン源の制御
 その他にも国内外での応用事例がいくつもあります
２０１０年 日本加速器学会

技術研修会

KEKB 可動ビームマスクの位置決め制御

EPICS on F3RP61

２０１０年 日本加速器学会

技術研修会

J-PARC ニュートリノ・ビームライン
入射電荷のモニタ

EPICS on F3RP61
２０１０年 日本加速器学会

技術研修会

RIBF ECR イオン源の制御

写真提供：理研仁科加速器研究センター

２０１０年 日本加速器学会

EPICS on F3RP61
技術研修会

海外に向けて羽ばたく新技術！
 「東アジア共同体」の構築を目指して Shanghai Synchrotron Radiation Facility（上海） Institute of High Energy Physics（北京） National Synchrotron Radiation Research Center（台湾） Pohang Accelerator Laboratory（韓国） …
 ２０１３年までに北米上陸を狙います 何の根拠もありませんが…
 EU諸国へのアプローチも視野に 頑張れ、ニッポン、負けるな、ニッポン！
２０１０年 日本加速器学会

技術研修会

ご静聴、有難うございました！

２０１０年 日本加速器学会

技術研修会