会社で使っている装置の照明、明るさの制御になんとトランジスタのシリーズ制御を使っている。
で、中途半端な明るさで使っているとオーバーヒートで止まるという仕様。
制御のトランジスタはTO-3のものを使っている。びっくりだよ。装置の右側にA4サイズくらいのヒートシンクがついてて、それで放熱しきれないって設計ミスではと思う。。
ニコンの実体顕微鏡の照明はサイリスタを使った位相制御でまだこっちのほうが省エネだぞ・・・
会社で使っている装置の照明、明るさの制御になんとトランジスタのシリーズ制御を使っている。
で、中途半端な明るさで使っているとオーバーヒートで止まるという仕様。
制御のトランジスタはTO-3のものを使っている。びっくりだよ。装置の右側にA4サイズくらいのヒートシンクがついてて、それで放熱しきれないって設計ミスではと思う。。
ニコンの実体顕微鏡の照明はサイリスタを使った位相制御でまだこっちのほうが省エネだぞ・・・
Savitzky-Golayフィルタ関数を定義します。この関数では、入力データの配列、窓幅、多項式次数、微分の次数を引数として取ります。
Function SavitzkyGolayFilter(data As Variant, window As Integer, order As Integer, deriv As Integer) As Variant
Dim i As Integer, j As Integer, k As Integer
Dim sum As Double, a As Double, b As Double
Dim coef() As Double
Dim filteredData() As Double
Dim n As Integer
n = UBound(data)
ReDim filteredData(n)
ReDim coef(order + 1, window)
For i = 0 To n
sum = 0
For j = -window To window
If (i + j >= 0 And i + j <= n) Then
For k = 0 To order
coef(k, j + window) = coef(k, j + window) + (j ^ k)
Next k
sum = sum + data(i + j)
End If
Next j
filteredData(i) = sum
Next i
For i = 0 To order
For j = 0 To window
coef(i, j) = coef(i, j) / coef(0, window)
Next j
Next i
For i = 0 To n
a = 0
For j = -window To window
If (i + j >= 0 And i + j <= n) Then
a = a + coef(deriv, j + window) * data(i + j)
End If
Next j
filteredData(i) = a
Next i
SavitzkyGolayFilter = filteredData
End Function
実際にフィルタリングを行うには、以下のように関数を呼び出します
Sub ApplySavitzkyGolayFilter()
Dim inputData() As Double
inputData = Range("A1:A100").Value
Dim window As Integer
window = 5
Dim order As Integer
order = 2
Dim deriv As Integer
deriv = 0
Dim outputData() As Double
outputData = SavitzkyGolayFilter(inputData, window, order, deriv)
Range("B1:B100").Value = outputData
End Sub
Excelでは、NORM.INV
関数を使用して、指定された平均値と標準偏差に基づいて正規分布する乱数を生成することができます。以下の手順に従って、正規分布する乱数を作成してください。
平均値と標準偏差を決定します。例えば、平均値を10、標準偏差を2に設定したい場合は、それぞれセルに入力します。
NORM.INV
関数を使用して、正規分布する乱数を生成します。関数の構文は以下の通りです。
NORM.INV(probability, mean, standard_dev)
probability
引数は、0から1までの確率値です。mean
引数は、正規分布の平均値を指定します。standard_dev
引数は、正規分布の標準偏差を指定します。
例えば、セルA1に=NORM.INV(RAND(),10,2)
と入力することで、セルA1に平均値10、標準偏差2の正規分布する乱数を生成することができます。
RAND()
関数を使用して、0から1までのランダムな数値を生成します。この数値は、NORM.INV
関数のprobability
引数に渡されます。RAND()
関数を使用することで、平均値と標準偏差に従う正規分布する乱数を生成することができます。
例えば、セルA1に=NORM.INV(RAND(),10,2)
と入力することで、セルA1に平均値10、標準偏差2の正規分布する乱数を生成することができます。
上記の手順を繰り返すことで、必要な数の正規分布する乱数を生成することができます。例えば、10個の正規分布する乱数を生成する場合は、セルA1に上記の式を入力し、セルA2からA10に同じ式をコピー&ペーストします。
以上の手順に従うことで、Excelで正規分布する乱数を作成することができます。
サブルーチンとして次を定義しておく。
Sub QuickSort(arr As Variant, firstIndex As Long, lastIndex As Long)
Dim pivot As Variant
Dim pivotIndex As Long
Dim leftIndex As Long
Dim rightIndex As Long
If firstIndex < lastIndex Then
pivot = arr(lastIndex)
pivotIndex = firstIndex - 1
leftIndex = firstIndex
For rightIndex = firstIndex To lastIndex - 1
If arr(rightIndex) <= pivot Then
pivotIndex = pivotIndex + 1
Swap arr(pivotIndex), arr(rightIndex)
End If
Next rightIndex
pivotIndex = pivotIndex + 1
Swap arr(pivotIndex), arr(lastIndex)
Call QuickSort(arr, firstIndex, pivotIndex - 1)
Call QuickSort(arr, pivotIndex + 1, lastIndex)
End If
End Sub
Sub Swap(ByRef a As Variant, ByRef b As Variant)
Dim temp As Variant
temp = a
a = b
b = temp
End Sub
呼び出しは次のようにする
Dim arr As Variant
arr = Array(4, 2, 3, 1, 5)
Call QuickSort(arr, 0, UBound(arr))
ホールセンサーの動作確認どうするか
ON/OFFの出力のタイプのセンサーは下のようにオープンコレクタのタイプのICがある。
これが動いているかどうかは、Outputが裸だと動きが分からないと思うので、VccとOutputに10kΩくらいの抵抗をつないでやるとOutputの電圧がVccと0Vを行ったり来たりする。
なんなら、LEDと抵抗を入れておいたらLEDの点灯消灯でも判断できる。
他にも、出力のトランジスタのコレクタにプルアップ抵抗を内蔵したものもあるようである。こちらは、SK8552というもの。
内蔵プルアップ抵抗があるものだとVCCとoutputに抵抗をつなぐとレギュレータに働く電圧が怪しそうなので、外付け抵抗はつけないほうが良さそう。こちらのタイプはシンプルにOutputの電圧を見たらいいはず。
最近Aliexpressで買って良かったもの
とても明るいLEDライト。最大輝度の0.1%で発光できるので、ほんのりライトから最大出力まで結構使い勝手が良い。ただ、内部抵抗の大きな電池だと出力が足りないのか、最大輝度時の明るさが足りない気がする。
ドライバは8パラで2.8Aの電流をLEDに供給しているようだ。ざっと10Wくらいってところでしょうか。
明るさを調整しているときに、PWMでやっているはずだろうが、ライトを振ってもチラツキが確認できないのが良い。なおRaが低いので色再現性は悪い。
%
20WのUSB-C充電器。小さくてよい。スマホ充電なら20Wで足りるので、便利である。
USB-C 5V/3A, 9V/2.22A, 12V/1.67A
USB-A 5V/3A, 9V/2A, 12V/1.5A
出力電力を表示するUSB-C充電器というものもあって、これも買ってみた。出力は00.0Wという表示桁数で良い。ただ、2Wとか3Wとかだと表示を消してしまうので、小さな電力の測定は無理だな。
対応する出力
USB-C 5V/3A, 9V/3A, 10V/2.25A, 12V/2A, 20V/1.5A
USB-A 5V/3A, 9V/3A, 10V/2.25A, 12V/2.5A, 20V/1.5A
PPS 3.3-11V/3A
Aliexpressで時々買い物をするが、たいていなんとか到着する。
最近、下記のような状態異常といったものに陥りがちで何が起こったのか気がかりである。
結論としては、日本郵便、ヤマト運輸、佐川急便以外の運送会社が運んでいるという状態のようである。
AZ projectという運送会社が持ってきました。上記の大手輸送だとシステムがCAINIAOのと連携できているので配達まで追えるが、それ以外の会社に渡すと状態の反映ができなくなってしまうのかなと思っている。
CAINIAO(菜鳥)のほうももちろん一緒。
最近力学の計算が面倒くさくて、家でも会社でも使えるCADツールがないかと思って探していたらFreeCADなるものに出会った。
Linux(家)でも会社(Windows)でも使えるので、便利と思って使っているが、やはりなかなか便利である。
例えば回転曲げの疲労試験片に働く応力分布なんかもある程度計算ができるので、検算代わりに使ったりしている。
なお、立体図からの平面図作成のところは未学習なので、平面図面はJw_cadで書いていたりする。