お知り合いが引っ越ししたので、マネして引っ越しします。
祖母が101歳で亡くなって1年たった。幸い私は亡くなる4時間前くらいに面会できたので、実質死に目に会えたと思っている。
あらためて、祖母の生い立ちをおじ(祖母の長男)から聞いたが、なかなか大変な時代のようだった。しかし、その努力あって自分が今生きているのかと思うと多きな感謝の気持ちでいっぱいである。
生まれは大正12年頃、貧乏な借家で小さいときに父(私の曽祖父)をなくし、母(私の曾祖母)と息子(祖母の兄)と一緒に暮らしていたとか。戸籍の情報も怪しい時代なのか、本人の言う生年月日が戸籍と違うというなかなかの時代。
当時のことは一切喋らなかったとのことだが、かなり生活に困窮していたようだ(だからこそ喋らなかったのか)。
太平洋戦争で祖母は兄を亡くし、母娘の家庭になってしまった。仏壇の前に飾られている軍服姿の人が、オバアの兄だったのかと改めて認識をした。オバアは戦争の話を、ヘルメットに銃弾がはいって一周してハチマキみたいなハゲができたとか笑い飛ばしていた記憶があるが、笑い飛ばすしかないほどのトラウマだったのではないかとも思っている。父母家庭ではなかなか大変だったので、オバアは親戚のうちに預けられて幼少の頃を個々で過ごしていたようだ。死ぬ前にもこの土地のことを喋っていたので人生に大きく影響した時期だったのだろう。
私の祖父を婿に迎えたのが、昭和22年だったか21年頃。私の叔父と母が誕生し、祖父は大工として、祖母は商店を営んでいた。この商店は、私の記憶ではもう閉店していたが、冷蔵庫に並んだアイスと、歩くとピンポーンとなる来客感知センサーを覚えている。叔父も母も大学まで通い(特に当時の女性進学率が30%であることを考えると母はなかなか優秀だったのだろう)無事に卒業。叔父が言うには、貧乏生活からの脱却には学問が必要だと、私立大学であったが進学させたのだろうと。
家族に喋りたくない程の貧乏を経験し、子供を二人共大学に進学させ、ひ孫6人に会い、最後は101歳で人生を閉じた。
叔父は目立たない人生だが、一生懸命生き、子供を育て、老いて死んでいくという、ごく一般的な幸せのある人生だったはずだと言っていた。幸せってなんだろうと思うこともあるが、平凡という幸せの価値を再認識した。オジイは20年前くらいで膵臓がんで亡くなったが、そのあと叔父は近くにいたがずっと一人で生きてきた。
思い出すとやれ、アレを食べろ、残ったら困るから、もっと食べろとか変えるときに色々持っていけとか当時はウルサイなとおもって聞いていたが、食うに困る時代を幼少期に過ごしていたならば、小さな子どもが満腹でもう食べられない、それこそ幸せだと思ってのことだったのかなとも思うと、感慨深いものがある。ウルサイなと反発するとすごく悲しい顔をしていたな。
死んでからでは感謝しようにも感謝もできない。上の世代への恩返しには限界がある。受けてきた優しさ忘れず、死んだ後にもあいつは立派だったと誰かに思われるような人生にしたいなと思った。
goo blogが終了するらしい。
引っ越すのか、このまま廃止か悩ましい。データは残しても移植先に投降するのも大変かもしれない。
こちらも生成AIで作った。ファイル名を_rar2zip.shとかにしておいて、bash _rar2zip.shで実行するとフォルダ内のrarファイルをzipにしてくれる。入れ子のrarもzipにできる。はず。圧縮率は (cd "$TMP_DIR" && zip -r -0 "../${base_name}.zip" .) の部分の-0で調整できる
#!/bin/bash TMP_DIR="tmp" if ! command -v unrar &>/dev/null || ! command -v zip &>/dev/null; then echo "エラー: unrar または zip がインストールされていません。" exit 1 fi SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)" for rar_file in "$SCRIPT_DIR"/*.rar; do [ -f "$rar_file" ] || continue base_name=$(basename "$rar_file" .rar) echo "処理中: $rar_file" rm -rf "$TMP_DIR" mkdir -p "$TMP_DIR" unrar x -y "$rar_file" "$TMP_DIR/" function convert_rar_to_zip { local dir="$1" find "$dir" -type f -name "*.rar" | while read -r inner_rar; do inner_base=$(basename "$inner_rar" .rar) inner_dir="${inner_rar}_extracted" mkdir -p "$inner_dir" echo " - 内部RAR展開: $inner_rar" unrar x -y "$inner_rar" "$inner_dir/" echo " - 内部RARをZIP化: ${inner_base}.zip" (cd "$inner_dir" && zip -r -0 "../${inner_base}.zip" .) rm -rf "$inner_dir" rm -f "$inner_rar" done } convert_rar_to_zip "$TMP_DIR" echo "ZIPに圧縮中: ${base_name}.zip" # tmpフォルダ内のファイルだけを圧縮(tmpフォルダ自体は含まれない) (cd "$TMP_DIR" && zip -r -0 "../${base_name}.zip" .) rm -rf "$TMP_DIR" echo "完了: ${base_name}.zip" done echo "すべてのRARファイルの変換が完了しました!"
Arduino IDEでRP2040Zeroに書き込んでキーボードマウスになりすます。
マウスポインタを原点に持っていく方法がないので、移動を繰り返して原点っぽいところまで持っていく作戦。
#include
#include
#include
#define LED_PIN 16
Adafruit_NeoPixel pixels(1, LED_PIN);
int responseDelay = 200;
int maxMove = 63; // 1回の移動量の最大値
int movingStep = 5;
void setup() {
Mouse.begin(); // Mouse mode start
Keyboard.begin();
pixels.begin();
pixels.setPixelColor(0, 255, 0, 0);
pixels.show();
delay(1000);
pixels.setPixelColor(0, 0, 255, 0);
pixels.show();
delay(1000);
}
void loop() {
// 初期マウス移動ループ
for (int i = 0; i < 300; i++) {
pixels.setPixelColor(0, 0, 0, 255);
pixels.show();
Mouse.move(-10, -10, 0);
delay(10); // 移動間隔調整
}
for (int i = 0; i < 10; i++) {
Mouse.move(-1, -1, 0);
pixels.setPixelColor(0, 0, 0, 64);
pixels.show();
delay(10); // 移動間隔調整
}
// 座標 1045, 962 をクリック
moveWithLimit(1045, 962);
Mouse.click();
pixels.setPixelColor(0, 64, 0, 0);
pixels.show();
delay(responseDelay);
// 下矢印キーを押す
Keyboard.press(KEY_DOWN_ARROW);
Keyboard.release(KEY_DOWN_ARROW);
pixels.setPixelColor(0, 0, 64, 0);
pixels.show();
delay(responseDelay);
// 座標 543, 833 をクリック
moveWithLimit(543 - 1045, 833 - 962);// 相対移動
Mouse.click();
pixels.setPixelColor(0, 0, 0, 64);
pixels.show();
delay(responseDelay);
// 下矢印キーを押す
Keyboard.press(KEY_DOWN_ARROW);
Keyboard.release(KEY_DOWN_ARROW);
delay(responseDelay);
// エンターキーを押す
Keyboard.press(KEY_RETURN);
Keyboard.release(KEY_RETURN);
delay(responseDelay);
pixels.setPixelColor(0, 64, 64, 64);
pixels.show();
}
// 移動量を制限する関数
void moveWithLimit(int dx, int dy) {
while (abs(dx) > 0 || abs(dy) > 0) {
int moveX = constrain(dx, -maxMove, maxMove);
int moveY = constrain(dy, -maxMove, maxMove);
Mouse.move(moveX, moveY, 0);
dx -= moveX;
dy -= moveY;
delay(10); // 移動間隔調整
}
}
最近OpenAIのChatGPTや、Google Geminiなどが流行っているが、使いどころによっては結構便利である。
例えば何らかのスクリプトを作らせたいときには、こんなことをしたい、というと作ってくれる。
数時間測定しっぱなしの測定装置のスクリーンショットをとりまくるとかをPowerShellで作ってくれとか、
「
Windows10のpowershellで、スクリーンショットを10秒ごとに保存したいです。
C:\temp\screenshots\
というフォルダに、yyyymmddhhmmss.pngという形式で保存するスクリプトを作ってください。
」
と投げればある程度作ってくれる。Geminiはこんなアウトプットをしてくくれる。
# スクリーンショットの保存先フォルダ
$outputDir = "C:\temp\screenshots"
# フォルダが存在しない場合は作成する
if (!(Test-Path $outputDir)) {
New-Item -ItemType Directory -Path $outputDir | Out-Null
}
# 10秒ごとにスクリーンショットを保存するループ
while ($true) {
# ファイル名生成 (yyyymmddhhmmss.png 形式)
$fileName = (Get-Date -Format yyyymmddhhmmss) + ".png"
$filePath = Join-Path -Path $outputDir -ChildPath $fileName
# スクリーンショット取得
$screen = [System.Windows.Forms.Screen]::PrimaryScreen
$bitmap = New-Object System.Drawing.Bitmap -ArgumentList $screen.Bounds.Width, $screen.Bounds.Height
$graphics = [System.Drawing.Graphics]::FromImage($bitmap)
$graphics.CopyFromScreen(0, 0, 0, 0, $screen.Bounds.Size)
# スクリーンショット保存
$bitmap.Save($filePath, [System.Drawing.Imaging.ImageFormat]::Png)
# 10秒待機
Start-Sleep -Seconds 10
}
いま、Ubuntuなので、動くかわからないけどw
Ubuntuの場合、左右2画面にしておいて、スクリーンショットをとって左右分割してそれぞれの画像にとかも結構かんたんに作ってくれる。
#!/bin/sh
# 一時ディレクトリを作成
mkdir a
mkdir b
# mogrifyコマンドを実行
for image in *.png; do
width=$(convert "$image" -format "%w" info:)
height=$(convert "$image" -format "%h" info:)
left_width=$((width / 2))
right_width=$((width - left_width))
# ファイル名、幅、高さを出力
echo "Image: $image, Width: $width, Height: $height"
mogrify -crop "${left_width}x${height}+0+0" -path 'b' "$image"
mogrify -crop "${right_width}x${height}+${left_width}+0" -path 'a' "$image"
done
# ファイル名変更
rename 's/.jpg/a.png/' a/*.png
rename 's/.jpg/b.png/' b/*.png
ちょっとこんなことを自動化したいな、といったことについては結構かんたんにやってくれるので、便利である。
プラズマに有機溶媒を入れると、炭素(2原子炭素)からの発光が目立って邪魔になってくる。
誰か詳しい人がいるだろうと思って調べていると、スワンバンドといって、炭素を多く含む星が光るスペクトルと同じであろうと気がついた。彗星が緑に光るのもどうやらこのカーボンの由来のようだ。
https://en.wikipedia.org/wiki/Swan_band
で、これは測定の邪魔なので、なくベル減らしたいが、酸素をちょっと入れるくらいしか方法がない。
酸素をガスとして導入するのが、他の方法で酸素を導入するのがいいのかどっちが楽かな。液体由来の酸素(例えば硝酸など)も考えたけど、ガスで導入したら導入量の100%がプラズマに入るので、こっちのほうが効率がいいかもしれないな。
マルチタイプのICP-OESの測定できる波長の範囲。AnalitikJenaのICPは波長範囲が広い。900nmまで取れるのは良い
メーカー | λmin[nm] | λmax[nm] | |
Agilent | 5800 | 167 | 785 |
AnalitikJena | PlasmaQuant 9100 | 160 | 900 |
Shimadzu | ICPE9800 | 167 | 800 |
ThermoFisher | iCAP | 167 | 852 |
Spectro | ARCOS | 130 | 770 |
Spectro | GREEN | 165 | 770 |
Spectro | GENESIS | 175 | 770 |
PerkinElmer | Avio5x0max | 163 | 752 |
シーケンシャルタイプでは次のものがある。シーケンシャルで900nmまで測定できるのはPerkinElmerのAvio220Maxだけのようだ。
メーカー | 製品名 | λmin[nm] | λmax[nm] |
PerkinElmer | Avio220Max | 165 | 900 |
HORIBA | Ultima Expert | 120 | 800 |
GBC Scientific Equipment | Quantima | 160 | 800 |
GBC Scientific Equipment | Integra 6000 | 160 | 800 |
Hitachi High Technologies | PS3520UVDDⅡ | 130 | 850 |
Hitachi High Technologies | PS7800 | 175 | 800 |
800から900nmにどんな発光線があってどの程度の感度があるのかはあまり詳しくないが、その領域で測定しやすいものがあると測定も便利になるのかもしれない。
随分前から新しいPCを買おうと思いつつ今に至る。デスクトップ機はもう3年ほどホコリをかぶっている。現在使っているPCはVAIO VPCEH39FJにUbuntuをいれてまだ使っているが、画面解像度が1366x768と正直小さい。
https://kakaku.com/item/J0000003461/spec/?lid=spec_anchorlink_details#tab
メモリ8GBでSSD1.0TBでそれほど苦労はないが、画面が小さいのが作業性が悪い。Office系のソフトはLibreOfficeよりはやはりMicrosoft Officeのほうが良さそうなので、Windows環境がいいだろうなあ。
安くて良さそうだなと思っているのは、吉田製作所のYouTubeで紹介された、ThinkPad E14のシリーズ。E16の画面に高解像度なものが選べる。
https://kakaku.com/item/K0001621103/
AMD Ryzen 7 7735HS 3.2GHz/8コア
メモリ:32GB
ストレージ:1TB SSD
で11万円ほどからなので、良いのではないだろうか。ディスプレイに2560x1600の高解像度液晶が選べるのが良い。会社では2560x1440サイズのディスプレイ(ただし、24インチ)をつかっていて結構便利なので同じような解像度でいいかなと思っている。
さて、高解像度画面(実は赤外線カメラの顔認証がついてくるっぽい)と、バックライトキーボード(使うかわからんけど+1100円)と、指紋認証電源ボタン(+1100円)と、容量アップのバッテリー57Wh(+2200円)をつけた。
指紋認証は顔認証と重複するからなんとも言えないけど、まあ、いっか。
Microsoft Officeは2024年からHomeエディションにPowerPointが追加されたのでHome&Businessのものは必要なく、Homeでいいのだが、選べない。
Home | Home & Business | |
---|---|---|
Word | ○ | ○ |
Excel | ○ | ○ |
PowerPoint | ○ | ○ |
Outlook | × | ○ |
Op価格 MS価格 AppleStore価格 |
- ¥34,480 ¥29,800 |
¥35,200 ¥43,980 ¥43,800 |
なぜか、アップルのほうが安いという疑問がある。アップルストアのものも、Windows PC/Macとなっているので、どっちでもいけるはず。
さて、lenovoの店で買った場合とHomeを一番安く買った場合の差額は5400円、Outlookてそんなに使うかな。会社ではメールにスケジュール管理はOutlookだがはてどこまで必要だろうか。。。。
と悶々と日々を過ごしながら、まだ買わないでいる・・・
カリウムはまだ良いのだが、有機溶媒ベースでナトリウム測定をすると傾斜部分にちょっと出てくるのでピークといった識別が難しい場合がある。ピークはピークなのですが、場所が悪いですね。
各濃度のものからBlankを引き算するとそれらしいピークとして認識できるようになります。
ICP-OESという装置で測定した結果の一例。水溶液ではなくて有機物をベースにした液体の測定では可視光でバックグラウンドが増大するので、ピークが識別しにくくなる場合がある。
下記はカリウムの測定例だが、持ち上がったバックグラウンドの中に766.490nmのK発光が見て取れるが、相対的に小さな信号のように見える。
私が咳を始めたのは10/9のことだった。思い返せばもう一ヶ月になる。
子供がケホケホ言い始めたのがきっかけだったように思う。
10月後半、子供の咳が良くなったが、私の咳が良くならない。
内科に言ってみると、レントゲン撮っておきましょう。おや、コレは肺炎になってますね。
抗生物質を処方され、これ下痢になるからこちらも(抗生物質耐性のある乳酸菌っぽい錠剤)。
そして、咳止めとタン切れをよくする薬かな。諸々もらった。
一週間後、継続的な苦しさや激しい咳込みは抑えられている状態だが、時々咳き込む。
きつく咳き込んだときに胸に違和感を感じ、それがどんどん強くなって、痛みになり結構きつい。
最初の通院から翌週、再度病院にいって胸が痛い、きついといったら、咳をしすぎて肋骨折れたり軟骨傷んだりするからねーと。その時運悪くロキソニンを飲んでいたので、それほど痛みがきつくなかったのだが、その痛みはずっと継続する・・・。咳止めと気管支拡張の薬をお代わり。
鈍痛に苛まれつつ、足首を剥離骨折したときのロキソニン湿布があることを思い出し、貼ると楽になる。ただ、咳き込むと相当な痛みがあるので、咳をしないようにコホーコホーみたいな息になる。
胸が痛いのをかばってか姿勢がわるいのだろう、背中がめちゃくちゃ凝る。
早く良くなってくれと思いつつも仕事が片付かないので休むわけにもいかず、微妙なところ。
健康面では今が踏ん張りどころか。
しばらく咳が続いたが、咳き込み始めて一週間、子供といった病院では、まあそれくらいの咳継続は普通なので様子を見てねと。
そして、咳き込み始めて2週間目、流石になにかおかしいとおもって内科へ。レントゲン撮影で、あれ、肺に白く写っているところがあるから、肺炎じゃないか?ってなり、抗生物質や咳止め、たん切れの薬をもらって一週間。
内科に行って一週間して通院したら、肺炎の影はなくなっており、回復過程にあるとのこと。咳が止まらないので、咳止めを追加で処方してもらい様子見。
から更に一週間、そろそろ咳がはじまって1ヶ月になるが、咳が止まらない。ちょっと良くなってきていて咳止めを飲み忘れるとゲホゲホゲホゲホ・・・・
肺炎まで到達すると長引くな。困った困った。かといって新しい装置が入ってきていろいろ試したいこともあるのでなかなか会社も休めない。苦しい状況にある。
ICP-OESというと、硝酸など水ベースでの測定がメインである。
しかし、エンジンオイル中に分散される金属粉(摩耗分)などを見るために、オイルの測定が必要になるケースも存在する。
例えば、オイル中の金属を見ようと思うと、通常はオイルを酸分解(例えば硝酸と過酸化水素を加えて煮る)して、水溶液化してから測定といった手法がある。しかし、可燃物に酸化剤を混ぜるのでちょっと危ないし、希釈されるので感度も低下する。
じゃあ、オイルをそのまま測定しようじゃないか。と思うが、オイルは粘土が高いのでうまくいかない。このため、キシリレンで希釈して粘性を下げてネブライザで霧にし、ICP−OESするが、キシレンが劇物に該当する薬品なのでやりにくい。
最近、ケロシンで希釈してICP-OES測定できるらしいので、色々やっている。問題があるとすると
・プラズマ中の煤によるバックグラウンドの増大(煤が黒体放射で光るので、広い波長でバックグラウンドが上がる)
・有機物由来の煤がインジェクタに堆積して障害となる(伝導体なので、プラズマインピーダンスに影響する)
酸素を導入してみたりするが、煤発生領域をインジェクタの先端から遠ざけるのが良さそうなので、補助ガス流量を増大してみるのが良さそう。
PerkinElmerの英語の資料によると、インジェクタとプラズマは2mm程度離れるくらいの補助ガスが良いと書かれてもいる。
メモであるが、ASX-280のXYテーブル駆動用のステッピングモーターの出力を調べないと行けない。出力40W以上のモーターで駆動される装置はちゃんとした保護枠などが必要らしいので。
ステッピングモーターは消費電力からパワー計算出来ないので、モーターのスペックシートを見て、トルクカーブから出力を計算してみた。
最大でも15Wくらいなので、問題ないな。
https://www.linengineering.com/products/stepper-motors/hybrid-stepper-motors/4118-series/4118S-04P
rpm | Nm | Power(W) |
---|---|---|
100 | 0.258 | 2.70 |
200 | 0.256 | 5.36 |
300 | 0.251 | 7.88 |
400 | 0.245 | 10.26 |
500 | 0.2365 | 12.38 |
600 | 0.2232 | 14.02 |
700 | 0.2 | 14.66 |
800 | 0.17 | 14.24 |
900 | 0.145 | 13.66 |
1000 | 0.127 | 13.30 |
1100 | 0.113 | 13.02 |
1200 | 0.102 | 12.82 |
1300 | 0.096 | 13.07 |
1400 | 0.093 | 13.63 |
1500 | 0.088 | 13.82 |