雑多

何か保持が大変になってきたので、とりあえずここに記事をはっつけていく。 後で整理するという名目で。

ちょっとしたこと

camac

ディスプレイ変えたときに、
Xconfigure
でなんかうまくいった。

Ctrl+Alt+backspase
でXを殺せる。
ctrl+alt+F1
とかでコマンドラインに移行できると良く言われるが、 kdeだと復帰できない。つまり地雷。
何かうまく復帰できる方法があるなら教えてください。

printer
psとかepsをそのまま印刷するとでかくなる
→プリンタの設定→ドライバーをrawなんたら(rawで検索)
にすると出力できた

KDE設定
個人情報
にファイルの行き先がある

H1161 = H7195 ぽい
H1161 H7195 で検索するとかなり当たる

無水エタノールは大岡山北商店街の一番近いドラッグストアで
普通に買えた。
茶色の瓶に500ml入って1,239円
ぱっと見通販より安いしなくなったらここで買えばいいかと。

売掛
支払いの締切りは事務にちゃんと言わないと月末締めに対応してくれないので、
請求書を渡すときにはっきりと言わないといけない。
今回クレバリーへの支払いが送れてしまった。

opensuse
a2ps.pl text | lpr

オプティカルグリスはジーテックの勧めでチューブ型(VISILOX V-788)
屈折率1.463
要冷蔵(4℃)らしいので冷蔵庫に入れた。

実験


とりあえず田中さんの使っていたものを使う
rips@camacで
#al
#cd rdf
#tanaka.sh
でDAQが起動する。
#nssta(no save start)

#wth(with save start?)
で動き始める。
anapawは
#al
#anapaw
#book ana/sk8ch3.ana
#a/l
#start
#[Enter]
#ht 101
#hn
とかで何となく見える。
alとtanaka.shの中身をみればなにか少しわかるかも。






DAQのインストール
馬場さんのページからソースをとってくる。(今回は2007を使った)
./configure
make
make install(make update)
だけなんだが、
一つだけコンパイルできないファイルがあり、
これは、同じディレクトリにあるmakeファイルの
インクルードするディレクトリの指定が、
リンカである***/linux
ではなくて、
***/linux-4.2
とか直指定になっていて、カーネルソースが見つからないのが問題。
単にlinuxに書き換えるのがよいかと。
2010ソースではどうなってるかしらない。

DAQとANAPAWのユーザーソースの移植。
DAQ本体のインストールは
馬場さんのページからソースをとってくる。
rdfファイルの保存ディレクトリ指定(hdlist.txt)できるから、
2010年版がよいかも。(camacには2007年版が入っている)
camacではhdlist.txt使うためにnbbqcom.cを2010年版のを使ってる。
本来は公式ページのインストールの仕方に書いてあるように、
nbbqcpy
とかやってusrsrcをコピってくる。
今回は田中さんのをコピーして一部書き換えた
nbbqrstはアップデートだったか。
とりあえず、tanaka.shに書いてあるようにコマンド打つと、
ADCのch指定のソースとかをmakeしてDAQが開始される。

anapawもusrsrcをコピーしてくればよろしいかと。
とりあえず、
analogin ryuki
とかして、ディレクトリを作って、
そこのsrc以下に他人のをもらってくると早い。
あとは、makeanaしてanapawすれば問題無し。

/usr/nbbq/
本体。

/home/rips/ryuki/
ユーザーソース

hdlist.txt
2010年度版から対応(向こうのdaqは2007だけど使える)
hdlist.txtにfullpathを書くと、そこにrdfファイルを保存してくれる。
(複数書けば、それぞれに記録してくれる)
ディレクトリは綺麗に。

runcounter.txt
これもusrsrcと同じところに置いておく。
1001と書いてあれば、次のrunは1002となる。

/sbin/lsmod
DAQのインストールで、
DAQのモジュールを読めてる?かをチェックするのにつかうコマンド。
これで、nbbq***がいればOK
インストール直後はいないので、再起動するとくるかも。

evt.cとbbmodul.hをよくいじる?
evt.c
1eventごとに行う動作。
ADCとTDCの情報を全チャンネル一回分とってくる感じ。
read_segndataでデータを読む関数を呼んでいる。
control_modは情報をクリアする関数だったかと。
Lがlength
Nがnumber
Fがfunction(マニュアルに載ってる)
の略。
具体的には
/* ADC */
/* length, crate, crate no doko, start ch, function */
/* 8 0 3 0 0 */
read_segndata(READ1L,0,READ1N,0,READ1FR);
/* 3 9 */
control_mod(0,READ1N,0,READ1FC);
こんな感じ。
マニュアルにCAMACファンクションって書いてあるが、これと直結している関数が
CNAFGEN(c,n,a,f)
らしい。
c クレートID
n クレートのどこに刺さってるか
a ADCとかのch
f readせよとかを指定

sca.c
スケーラーの始まり。

startup.c
ここにresisterの出力が書いてある。

stop.c

readscaler.pl
/home/rips/r301n/misc/scaler

totalsca 0527.rdfとか
scalerの値

時間分解能のマクロ
とりあえず面倒くさいので、田中さんが書いたと思われるものを参考にする。
exec thr/thr_2lr ***(0527とか) all
ってやると発動する。
細かい注意があるので、何も考えずに使うときは一度佐古さんに要確認
0527_2lr.dat
とかができる。

マクロは
/home/rips/exp/test/users/rips/thr/thr_2lr.kumac
にある
先に0527.rdfを0527.txtに変換しないといけない(読めるようにするっていみ)
./rdfdecode.pl 0527.rdf
でtxtに変換してくれる。perlのスクリプト?

$HOME/usr/local/anapaw/Macros
以下にあるのはexecなしで使える。

bbdaq.inc
cでいう.h
encファイルを綺麗に書くためにここに変数とかcommonな変数をおく




bbmodul.h
LAMはlook at meの略

blkmonitor
って打つと、DAQが流しているrawデータが見える。
rawデータの読み方は、小林さんのミーティング資料とか、近藤さんのページのとか、
馬場さんの公式の説明とか参照。
読むチャンネル数はevt.cで自分で指定しているので、
その数になってるはず?。
TDCのマニュアル(棚に入っている)には、12bit(16進数で3桁)がデータで、
13bit目がオーバーフローフラグ。
04b2とかならそれはデータ
100aとかはオーバーフロー
オーバーフローしたときの余分な数字は不明。

V792.h
driver??



anapawまとめ
encとanaファイルは近藤さんがrawだけ綺麗に書いた。
パラメータは外部にcommonでかく。
その他は、田中さんのソースとかを参考にする。
時間分解能をだすのは、結構大変なので、マクロにする。
このマクロは田中さんのがあるので、それを解読する。

cle f
clear
erase
lgz
prx
bnx 400 14000
z
i
o
sly 8
pson

上記の用に二次元でヒストグラムを作っておいて、
sly 8(8つだから)
すると、
i
で分割されたのができているのが分かる。

anafileの初めのいくつかの数字は、
GATE
ANALISERID
NAOK(valの二つ目の引数の始まり)
NAOK(valの二つ目の引数の終わり)
W#(valの一つ目の引数)
あとはpawとかと同じ書式。
anafileが
analys
1
c
hst2
0, 1,1, 8,1, 1,1, 8,2, 8,0.5, 8.5, 4100,0.,4100., 'ID ADC raw'
0, 1,9,16,1, 1,9,16,2, 8,8.5,16.5, 4200,0.,4200., 'ID TDC raw'
end
とかで、
encファイルが
c Initialize
naok = 0
c ADC raw data
do I=1,nch_ADC
naok = naok + 1
val(1,naok) = I
val(2,naok) = raw(I)
enddo
c TDC raw data
do I=1,nch_TDC
naok = naok + 1
val(1,naok) = I + nch_ADC
val(2,naok) = raw( I + nch_ADC )
enddo
とか。

12bitだから4096ch
anapawではrawデータの範囲は4200ぐらいにしておくとオーバーフローも見えやすい。

onlineで1しかデータがきていなかったのは、
camacがデータがたまってからまとめて送ってるから。

encfile
enc_bbdaq.fにべた書きせずに、
call BBDAQ.PRM
でbbdaq.prmを呼ぶので、paramaterとしてここに書くべき


camacまとめ
クレートの指定とかはわかった。
シグナル送るとか、
関数呼ぶとかわかった。
どのファイルにかくかは、daqのユーザーソースにだいたいかく。
ADC,TDCの補正は全然やってない
ADCのスケール調整したい
tdcのスケール調整がようわからん。
scalerがうまく読めない
ACSは0から読めるようになった。

outputresister
単純に関数で数字を指定すると出力するっていうふうになっているので、
その数字を変えれば動作の番号を変えられる。
今は、
0ch GATESTOP
1ch ADCRESET
2ch START
3ch STOP
4ch RESET
5ch TDC CLEAR
となっている。


daqまとめ
blkmonitorでrdfのデータを生でみる。
rdfの中身は小林さんのとか、近藤さんのとか、本家とか。
オーバーフローは100aとかで、anapawではこれを普通の16進数として読むので、
4100ちょいになる。このオーバーフローはアナログに調整してる??
このcamacは8015のデータサイズで常に返すので、サイズを気にする必要はない。


ntpサーバーを設定すれば時間が合うかも