2015年7月20日月曜日

GPIB通信エラー

長時間測定しているとGPIBの通信エラーが起こる問題に悩まされています.

いちいち測定器をローカルモードに入れているからエラーが起こるのだろうと推測し,ローカルモードに戻すボタンをGUIに追加して,ループ中はローカルモードに戻さないようにしました.

以前,測定ループ中で通信する測定器がかわるたびにibdevコマンドを入れていちいちデバイスデスクリプタを取得していたらやはり通信エラーが起こったので,プログラムの最初だけ,測定器ごとにあらかじめ異なるデバイスデスクリプタを取得するようにした,という経緯がありました.

いちいちローカルモードに戻していた理由は,測定中に計測器のパネルが入力を受け付けなくなるのがイヤだった,という理由なのですが.
S木T男先輩から,『だったらローカルモードにするボタンをつけておけばいいだろ!』という至極もっともなご指摘をいただいたので,その通りにいたしました.

うまくいくこと祈りながら今日は帰宅します.




2015年6月4日木曜日

Scientific Linux7で変わったこと(TigerVNCとfirewalld)

GPIB制御するラップトップを変更するのは怖いので,musrfitを実行するサーバーだけScientific Linux 7にアップグレードしてみました.

SELinuxをとめないとSSH接続できなかったので,

[root@korma yishii]# setenforce 0
[root@korma yishii]# getenforce
Permissive

[root@korma yishii]# 

設定ファイルを書き換えて,再起動時にもSELinuxを動かさないようにする.

[root@korma yishii]# more /etc/sysconfig/selinux

# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#     enforcing - SELinux security policy is enforced.
#     permissive - SELinux prints warnings instead of enforcing.
#     disabled - No SELinux policy is loaded.
SELINUX=permissive
# SELINUXTYPE= can take one of three two values:
#     targeted - Targeted processes are protected,
#     minimum - Modification of targeted policy. Only selected processes are pro
tected. 
#     mls - Multi Level Security protection.
SELINUXTYPE=targeted 


[root@korma yishii]# 


こんな感じでした.

iptablesはfirewalldに変わっていました.
VNCはfirewallをとめないと入れなかったので,

[root@korma .vnc]# systemctl stop firewalld
[root@korma .vnc]# systemctl disable firewalld
rm '/etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service'
rm '/etc/systemd/system/basic.target.wants/firewalld.service'


vncはtigervncをインストールし,vncpasswdコマンドでパスワードを設定した後,vncserver :1とだけやって起動.
もちろん一般ユーザで実行しないと怖いことになります.
vncを止める時は.vncserver -kill :1だけで切れます.

2015年4月4日土曜日

iPhoneのKindleアプリで,英辞郎をデフォルト辞書として使うために

iPhoneのKindleアプリで,調べたい単語を長押ししたときにポップアップウインドウで辞書が出使える機能があります.

Kindle版の英辞郎を買ってあるので,デフォルトを英辞郎にしたいのですが,本によっては辞書を一度英辞郎に指定しても,次回は日本語ー日本語辞書に戻ってしまうので,いちいち指定し直さなくては行けないのが面倒でした.

ネットで軽く検索してみると,iPhoneの言語設定を英語にするとデフォルトが英英辞典になるという情報をみつけ,日本語辞書が立ち上がるよりはいいかと思い,試しにiPhoneの言語を英語にしてみました.
すると,なぜか無事に英辞郎がデフォルトになりました???

理由は分かりませんが,とりあえずこれで目的は達成できたので,よしとします...


2015年2月7日土曜日

GPIBで測定しながらグラフも表示する

GPIBで測定しながらリアルタイムでGnuplotを使ってグラフを描くようなプログラムをちょこちょこ書いています.

3Heクライオスタットの,4HeVTIの温度とsampleポッドの温度を五秒おきに測定してgnuplotにパイプを渡してプロットしています.



gnuplotはwxtターミナルを使っていて,プロットレンジの拡大などのめんどくさい部分はすべてgnuplotに任せています.
GPIBで測定器と通信してgnuplotに渡す部分を別スレッドにしているのですが,待ち時間もこのスレッドの中に入れてしまっているので,だんだん時刻がズレているのが分かります.

今後の課題です.

2014年10月3日金曜日

Mac上のmusrfitはもはやXを使わない(というか正確にはrootが)

Mac上のmusrfitで,いままで唯一不満だったのが ,rootがXQuartzを使ってしまという点でした.
せっかくmusreditがaqua対応になったのに,おしい!もう一息!と思っていました.

しかし,rootも現時点でVersion 5.34.21となり,今はXを使わなくても動くらしいという情報をつかみました.
そこで,あらためてmusrfitをイチからセットアップ.

詳細はリンク先が詳しいと思いますが,今回そのままではうまくいかなかったことがあったので,メモしておきます.

まず,rootはバイナリではなくソースからインストールするとXを使わないrootが出来上がります.

musrfitは,makeするにあたりboostを見失うので,boostのパスも明示します.
私が実際にconfigureしたときのオプションは以下の通りです.

 $ ./configure --with-boostinc=/sw/opt/boost-1_55/include --with-qt4=/sw/lib/qt4-mac --prefix=$ROOTSYS --enable-NeXus

私はfinkを使っていて,Qtはqt4-base-macのパッケージを中心にそろえています.
っというかその方が(qt4-base-x11とくらべて)XQuartzを使わないので綺麗です.

それから,NeXusフォーマットを有効にする際は,make中になぜかNeXusのヘッダーファイルを 見失うので,/usr/local/include以下にnapiconfig.hとnxconfig.hをコピーしてもってきておくといいみたいです.
(本当はboost同様configureのオプションで対応できるはずだと思うのですが,どうしてもうまくいきませんでした??)



こんな感じでmusrfitが出来上がりました.
musrviewのフォントもアンチエイリアスが効いて綺麗です.


そして,fキーをおすだけでしっかりfftもできます.

2014年5月2日金曜日

Scientific Linux 6.5にGPIBのメモ

移籍して初のPCセットアップでいろいろ忘れていたことがあり苦心しました。

まず、linux-gpibをインストールしたのですが、昔作ったソースがそのままで動かないorz
コンパイルして実行すると、

./a.out: error while loading shared libraries: libgpib.so.0: cannot open shared object file: No such file or directory
とのこと。
これはすぐ解決。

$ export LD_LIBRARY_PATH=/usr/local/lib

でおっけー。
次に、なんだか悩んだのは、再起動すると常に/dev/gpib*のグループが"root"にもどってしまい、 いちいちパーミッションを与えないといけないこと。
これは、ちょっと忘れていたのですが、しばらくして思い出しました。
/etc/udev/rules.d/の下に適当な名前の.rulesファイルを作って、グループとパーミッションを指定してあげればよかった。
たとえば、

 [yishii@gpibnote01 Gtk]$ more /etc/udev/rules.d/96-gpib.rules
KERNEL=="gpib[0-9]*", MODE="0660", GROUP="gpib"
というかんじ。
一般ユーザでgpibインターフェースを使いたいときは必須。
当然、グループgpibに追加したユーザのみ使えます。

またメモしておかないと忘れるので。



2014年2月21日金曜日

「ことばの力学」

先月1/25に代々木であったシンポジウムで,ピッツバーグ大学の白井先生の講演をきくことが出来ました.

http://www.meiseigakuen.ed.jp/album/2014/index.html#symposium

最近,職場で『東大話法』の話題になることが多く,その中で白井先生の「ことばの力学」という本が話題にあがり,個人的に読んでみたいと思っていたところだったので,ナイスタイミングでした.

帰宅し,著者割引で購入させて頂いた「ことばの力学」を拝読しました.
理系の私でも楽しく読める内容だったのですが,特に7章でメディアや政府が発する言葉は批判的な姿勢で受け取る必要がある,という内容のことが書かれてあり,興味深かったです.

最近では堤未果さんもそのような内容の本を出版されていて,原発事故をきっかけにだんだんそういう意識が広まってきたのかなぁ,と感じています.
日本のメディアはどうして体制に不利な内容を発信できないのかなぁ,とオトナ社会の構造に思いをはせてしまいました.
体制に批判的なメディアを好む人々も一定数いると思うのですが...

一方,私が大学教員になりたての頃に読んだ,宇佐美寛先生の著書「大学の授業」のなかでは,『引用なきところ印象はびこる』という言葉が繰り返し出てきます.
印象で判断するな,原典にあたって論理的に示せ,という意味だと思います.
ことばの『メタファー』にダマされないためには,報道内容についても,かならず『一次データ』にあたることが大事なんだろうなぁ,と.
報道されている内容も鵜呑みにせず,なにか判断が必要なときは必ず『一次データ』にあたる.
でも,それってきちんと『一次データ』を理解できる程度に勉強しないといけないので,大変なことだと思います.

『一次データ』にあたろうとする意識をもち,なおかつきちんと勉強しようという意識をもった国民を育てることが,教育者としての私たちのミッションでもあるのかなぁ,と,えらそうなことを考えた金曜日でした.