技術の時間

これからマイコンを勉強するとしたらAVRとPICのどっちがいいだろうと調べてみら、MicrochipがAVRを吸収したいまとなっては両者は結構融合が進んでいるらしい。トランジスタ技術 2021年4月号の特集「AVRでサクッとマイコン開発」を読んだら、「どちらも同じツール、同じIDE、同じコンパイラを使って開発ができます」とのこと。安心してとりあえずPICkit4を買った。


早速作りたいものがあるので慣れない頭で数日間考えていたが、マイコン部分以外にも回路作製が必要になりそうだ。電子回路については学生時代の実験で数時間触れただけで、知識はほぼない。というわけでとりあえず基礎から勉強できそうな良さげな教科書を買った。

これは流石に結構簡単そうなので早めに読み切ってしまいたい。新分野に取り組むときには考える前にとにかく知識量を増やすことが不可欠だ。


今回の工作は前途が長い。プリント基板作製も初めて取り組むし、ハードウェアとソフトウェアを両方開発しながらデバッグするのも初めてだ。一通り流れを経験して入門者から初心者へ!を目指していきたいですな。

技術力が欲しい

 もっと技術力を身につけたいと思う。というのも研究をしていると最適な装置(計測器とか)を自作できたらいいのにと思うことが少なからずあるからだ。自分の技術力の低さゆえに及び腰になってしまい、研究の進展が遅くなるケースもある(たとえばアナログ回路などを億劫がったり)。研究をして得られる知識をいざそれを実用的な問題に適用したいという時にも実装のイメージが湧いてこないこともある。これは結局、自分の技術力というか、ものづくり力が低すぎるせいだと思う。物理系の研究というのは案外枯れた技術で成り立っている部分が大きいので、これでもやれてないことはない。しかし技術力がないから技術が十分と思えているだけということもありうる。
 技術力が研究を大きく進展させた例としてPCの活用がイメージと近いかもしれない。私の上司の世代はアナログ装置を使った実験で、定期的にメーターを目視してデータを得ていた時代を経験したそうだが、今日からはなかなか想像できない。PCが研究に普及して大量のデータを取得できるようになったし、解析も高度になって…いろんな面で研究の質が大きく向上した。もう一つ別の理想として、20年ほど前に電子顕微鏡マイコン工作でチョチョチョイと改造し、電子線リソグラフィ装置を自作したなんていう話があるらしい。今の自分にはそんな技術力がないが、もしそんなことができたらカッコいい。というわけで自分も技術力を身につけて、研究の幅を広げてみたい。業務上の不便を解決して研究の生産性を上げたいし、実装力を上げて基礎研究と実社会を近づけられたら満点。
 妄想を語りすぎたが、そういう感じでゆるく頑張っていきたい。一朝一夕には以下がないでしょうがとりあえず所信表明。

揺動散逸定理の導出について

最近ザゴスキンを読んでいて揺動散逸定理について少し理解が深まったのでメモ。 時間相関と応答関数とを関係づける、揺動散逸定理は実用上重要なので、触ったことがある人は多いと思う。けれども敷居が高いのか、導出についてはあまり知られていないように思う。でも実は線形応答理論さえ認めてしまえば実は簡単に導出できる。 大胆に簡略化してしまえばこんな感じになる。感受率 \chiは久保公式から \langle AB-BA\rangleとなり、時間相関関数 C \langle AB+BA\rangleとなる。実は、 \langle BA\rangle = e^{\beta \hbar\omega}\langle AB\rangleなので(KMS恒等式)、 \chi = (1-e^{\beta\hbar\omega})/(1+e^{\beta\hbar\omega})Cになる。これでほぼ証明は完了。本当はcausalityについてきちんと考える必要があるけど、その辺はとりあえず無視している。こうして形式的に整理してみると揺動散逸定理を覚えておくのに役立つ。 ただこれは厳密な意味での揺動散逸定理の「証明」とはならないので注意が必要。中嶋貞雄先生が「現状の線形応答理論は,揺動・散逸定理が成立するように構築されている」と言っているように、線形応答理論には多くの仮定が含まれている。(https://www.jps.or.jp/books/50thkinen/50th_10/001.html

二酸化炭素センサ1

週末は二酸化炭素モニター用のセンサでちょっくら遊んでいました。
www.winsen-sensor.com

サンプルプログラムをここからコピーしてきた。

#include <SoftwareSerial.h>
SoftwareSerial SerialCom (A1,A0);
int myDelay = 2000;
 
byte addArray[] = { 0XFF, 0x86, 0x02, 0x60, 0x47, 0x00, 0x00, 0x00, 0xD1 };
 
char dataValue[9];
String dataString = "";
 
void setup(){
  Serial.begin(9600);
  SerialCom.begin(9600);
  Serial.println("MH-Z14 C02 Sensor Test Code");
  Serial.println("------------------------------------");
}
 
void loop() {
  SerialCom.write(addArray, 9);
  SerialCom.readBytes(dataValue, 9);
  int resHigh = (int) dataValue[2];
  int resLow  = (int) dataValue[3];
  int pulse = (256*resHigh)+resLow;
  dataString = String(pulse);
  Serial.print("PPM: ");
  Serial.println(pulse);
  delay(myDelay);
}

途中読み出した値をintにキャストするところは、unsigned signにしないとまずい。(僕もはじめ少しハマった)
あとは、送信するコマンドはMH-Z14Aのマニュアルを見て修正する必要がある。

byte addArray[] = { 0XFF, 0x01, 0x86, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01 };

これらを組み合わせると、なんとか二酸化炭素濃度が測れるようになりました。ちなみにマニュアルではサラッと書いてあるけど、センサのキャリブレーションは基本的には実行してはいけない。自宅で二酸化炭素濃度を定量的に制御して再校正することがほぼ不可能だからだ。


それから、ネットワークについての入門書を買った勢いで、Linuxマシン1台あればTCP/IPの実験ができるというこちらの本を買ってみた。

ip netnsを使って仮想的なネットワークを構成し、ルータを介したipネットワークを構築することができた。また上位プロトコルについても解説されていて、思いがけずカバレッジが良い良書だった。

買い物初め

論文がアクセプトになったこともあり、自分へのご褒美として2021年の買い物初めをした。

実はUR22Cは納期がかかるので2000円くらい高いひとつ上位のモデルを買った。
スタインバーグ Steinberg USB3.0 オーディオインターフェイス UR24C

先日Julia言語でwavファイルを扱ってみたところ、急激に音声処理に興味が湧いてきた。wavファイルは、規格上8 bitまたは16 bitの信号ということだが、上にあげたUSBオーディオインターフェース(AIF)は32 bit Integerの音声データの入出力が可能。音声データの形式として、これと別に32 bitのfloatデータというのもあるが、これは上位1 bitが符号、次の7 bitが指数部を表すため有効数字に与するのは24 bitであり「普通のハイレゾ」と差がない。上のような32 bit整数を扱える高性能なADCが2万円そこそこで買えるのは素晴らしい、ということでほとんど考える前にポチった。
Steinberg オーディオインターフェース「UR-Cシリーズ」発売記念!直撃インタビュー - YouTube
32 bitというと、ダイナミックレンジにして192 dB。これだけ広範囲となると、特性が良いマイクを探すことにも苦労しそうだが、研究用途にも使えるんじゃないかと思う。音響測定まわりでホビー研究でもしてみたいなあ。


買い物その2は、CO2センサ。こちらは、動作原理を知ったところ、ぜひ触ってみたいと思った。

IR吸収を固定されたスペクトルについて測定するNDIRと呼ばれる原理で動作するもので、こういう光学測定を自宅で行うのは想像しただけで面白い。Arduinoから、環境測定で使う予定。


本も買った。現代の教養書です。

ネットワークがよくわかる教科書

ネットワークがよくわかる教科書

気になる本の話など

今年は働き出してからでいうと比較的よく勉強していて、それに伴って欲しい物理の本がたまってきた。価格的には全て買ってもそれほど大したことないのだけど、積読するのは思いのほか罪悪感あるので我慢している。

今年の春から場の理論グリーン関数について一冊本を読み、物性物理に関して読める本も論文も広がった。この調子で永長先生の物性論における 場の量子論 (岩波オンデマンドブックス)に挑んだのだが、あまりに難しくて跳ね返されてしまった。序盤から経路積分を当たり前のように活用しており、正準量子化をかろうじて理解しただけの自分の手には余ってしまう。そういえば経路積分についてはほとんど勉強したことがないなと思い至り、ちょっと勉強している。
相対論的な場の話になるが、坂井先生の教科書の教科書を手に取ってみた。

場の量子論 (裳華房フィジックスライブラリー)

場の量子論 (裳華房フィジックスライブラリー)

この本はかなり行間が広い。階段の踊り場的な、きれいにまとめられた結果が次々と示されているが、それらの間をつなぐ細かな計算ステップについては気持ちよいくらいに省略されている。最初は「こんな簡潔な本で勉強できるか!」と思ったのだが、何度も繰り返し読んでいるうちに記憶に残ってきて、今ではこういう理解の仕方もあるのかなと思う。やはり良い本だと思う。
物性物理をターゲットに、経路積分を扱った本としてはアルトランド・サイモンズの教科書があるようだ。いずれこれらにも挑戦してみたい。

物性関連で、やや自分の仕事と関連する内容だとフェルミオロジー: 量子振動と角度依存磁気抵抗振動が気になる。リフシッツ・コセヴィッチ理論について日本語の本って案外少ない気がする。量子振動はベリー位相を決定できる重要な現象で、その意味ではARPESによるバンド構造の直接観測に勝るのよね。もう少しよく知っていてもよいとは思い続けてきた。

後は趣味。物理好きとしてはやはり場の量子論をしっかり理解したい。最近だと裳華房の新しいシリーズが気になるので、坂井先生の本がだいたい終わったらチャレンジしようかな。

またゲージ場の量子論は特有の難しさがあるという話も聞く。レベルの高い話になるようだが、その辺の詳細には興味がある。
ゲージ場の量子論〈1〉 (新物理学シリーズ)

ゲージ場の量子論〈1〉 (新物理学シリーズ)

ゲージ場の量子論〈2〉 (新物理学シリーズ)

ゲージ場の量子論〈2〉 (新物理学シリーズ)

物理関係だと、上の本らとは何ら脈絡がないが次の本なんかも気になる。買って本棚にしまっておいたら、暇になったりした時読むかもしれない。

一般ゲージ理論と共変解析力学

一般ゲージ理論と共変解析力学