【理化学計測】オウンドメディア:電気化学測定(02)
【理化学計測】オウンドメディア:電気化学測定(02)に関するFAQ
Qデータロガー間で同期して計測をおこなうことはできますか?
- DCF
- IRIG-B
- GPS
- NTP
- PTP
Q変数から[測定]名を削除したい。
Qユニットを連結して使用することはできますか?
はい可能です。ハウジングタイプにより連結の方法が異なります。
CANSASfit:はめ合わせてロッキングラッチで固定します。
CANSASflex:側面のレールにスライドさせてロッキングラッチで固定します。
ご紹介動画はこちらから
Qリアルタイム演算機能はありますか?
Q極大値、極小値を絶対値が大きい順にトップ10を求めたい。
直接求める関数は用意されてないため、下記の様なシーケンスで求めて下さい。
; 極大値、極小値の絶対値が大きい順にTOP10を求める
_sin = sin(ramp(0,0.01,500)*PI2)*ramp(0,0.01,500) ; サンプルデータ作成用
Data = Join(_sin, -Mirror(_sin)*0.8) ; サンプルデータ
_max = xMax( Data, -1e35) ; 極大値のX座標
_min = xMax(-Data, -1e35) ; 極小値のX座標
_x = Sort(Join(_max, _min), 1) ; 昇順で並べた極大値、極小値のX座標
_y = Value(Abs(Data), _x) ; 極大値、極小値の値の絶対値
_sort = Sort(XYof(_x, _y), 6) ; Y値(絶対値)の降順で並べ替え
_xy = XYof(_sort.x, Value(Data, _sort.x)) ; 元のY値でXY波形を作成
TOP10 = CutIndex(_xy, 1, 10) ; 上位10
TOP10Y = TOP10.Y ; 上位10のY値
; カーブウィンドウで表示
CwNewWindow("Cv1", "show")
CwSelectWindow("Cv1")
CwAction("reset")
CwPosition(0,0,640,480)
CwDisplaySet("title", "")
CwNewChannel("append last axis", Data)
CwNewChannel("append last axis", TOP10)
CwLineSet("type", 0)
CwLineSet("symbol", 8)
; マーカーで順位を表示
_th = Max(Data)-(Max(Data)-Min(Data))*0.1
for _iii = 1to 10 step 1
CwNewElement("marker")
CwSelectByIndex("marker", _iii)
CwMarkerSet("x.type", 1)
CwMarkerSet("y.type", 1)
CwMarkerSet("x", TOP10[_iii].X)
CwMarkerSet("y", TOP10[_iii].Y)
CwMarkerSet("text", _iii)
if _th < TOP10[_iii].Y
CwMarkerSet("angle", -45)
end
end
del _*
QCANSASfit、CANSASflexを連結すると電源はどのように供給すればよいですか?
連結した複数のCANSASの内、1台に供給することで連結された他のCANSASへ供給されます。
※各CANSASを経由して流すことができる電流には、制限がありますのでご注意ください。
CANSASfit:4A
CANSASflex:6A
Q波形の位相ずれがないフィルターとは。
FiltLP()関数等で波形をフィルターするとフィルター次数に応じた位相ずれ(時間軸上での遅れ)が生じます。
Professional以上に含まれますFiltLPZ()関数等を使用すると位相ずれのないフィルターが可能です。
原理的には下記の処理を行っています。
1) 適用したいフィルター次数の半分の次数でFiltLP()関数を適用する。
2) Mirror()関数で波形をX軸反転する。
3) 適用したいフィルター次数の半分の次数でFiltLP()関数を適用する。
4) Mirror()関数で波形をX軸反転して元にもどす。
ただし上記の手順ではフィルターを2回行っているためカットオフ周波数での波形の減衰が-6dBになります。
FiltLPZ()関数等は上記と同じ手順でカットオフ周波数での波形の減衰が-3dBになるように処理しています。
Qオートレンジ機能はありますか?
QXY波形の移動平均を求めたい。
MvMean()関数はXY波形をサポートしていないため、下記のようなシーケンスで求めて下さい。
例)
LOAD sintest?
Data = XYof(sintest5, sintest2) ; サンプルデータ
; https://www.toyo.co.jp/mecha/faq/detail/id=2885
_Xsort = Sort(Data.X, 1) ;X軸データを単調増加へ
_Ysort = Value(Data.Y, Sort(Data.X, 3)) ;Y軸データを単調増加へ
_dx = 0.5 ; Xの刻み幅
_x0 = Floor(Min(Data.X) / _dx + 1) * _dx ; Xの開始値。最小値をXの刻み幅で丸め
_xend = Floor(Max(Data.X) / _dx) * _dx ; Xの終了値。最大値をXの刻み幅で丸め
_loop = (_xend - _x0) / _dx ; 区間数
Result = ramp(_x0+_dx/2, _dx, _loop) ; 結果を保存する変数(切り出し範囲の中央にプロット)
_index1 = PosiEx2(_Xsort, _x0, 0, 4) ; (最初の)切り出し開始位置
for _iii = 1 to _loop step 1
_x = _dx*_iii + _x0 ; Yを切り出したい範囲のXの終了値
_index2 = PosiEx2(_Xsort, _x, 0, 4) ; 切り出し終了位置
_Ycut = CutIndex(_Ysort, _index1, _index2) ; 切り出し
_Ymean = Mean(_Ycut) ; 平均
Result[_iii] = _Ymean ; 結果を保存
_index1 = _index2 + 1 ; 切り出し開始位置更新
end
SetUnit(Result, Unit?
Q7 閉鎖空間または高温環境下で音圧測定を行う必要があります。どのマイクロホンを使うべきでしょうか。
FAQ ID:セクションⅡ:お勧めのマイクロホン
狭くてアクセスが難しい場所や高温下(800℃まで)の測定には、プローブマイクロホンが推奨されます。 より詳しい説明については、こちらのビデオをご覧ください。(約3分9秒)
Qゆっくりと変化するRPM波形をX軸にして温度や振動等のXY波形を描きたいが、RPM波形に高周波ノイズが乗っているためハイパスフィルターを掛けたところ、RPM波形が時間軸で少し遅れてしまった。
Q供給電源の仕様は?
Qマニュアルをダウンロードすることはできますか?
Q変数名にアルファベットを連番で追加したい。(例. Data_A, Data_B, Data_C, ...)
SvToChar()関数でASCIIコードを文字に変換することによりアルファベットを連番で作成できます。
大文字A~ZはASCIIコードで65~90、小文字a~zは97~122になります。
例)
for _iii = 1 to 5 step 1
_name = "Data_" + SvToChar(64+_iii) ; アルファベットA,B,...を付加した変数名
<_name> = ... ; ファイルから読み込んだデータなどを代入
end
アルファベットではなく数値を文字として追加したい場合は
https://www.toyo.co.jp/mecha/faq/detail/id=13204
https://www.toyo.co.jp/mecha/faq/detail/id=14240
を参照して下さい。
Q波形データに抜けがあるか確認したい。
波形データを読み込んだ際、[データ形式]が"標準データ"(時間軸が等間隔のデータ)である場合は基本的に(少なくとも読み込めている範囲には)データに抜けはありません。
[データ形式]が"XYデータ"となっている場合は時間軸が等間隔ではないためデータに抜けがあるかもしれません。
そのような場合には.X要素を微分して隣接するサンプリングポイント間の差(=時間差)を求め、その結果の最大値、最小値、平均値を比べることにより抜けがあるかどうか調べる事ができます。
時間差の最大値、最小値、平均値がほぼ一致する場合はデータに抜けはないと考えられます。最大値、最小値に大きな差がある場合は抜けがあることが考えられます。また平均値が最大値に近いほど抜けの間隔が大きいまたは抜けの数が多いと考えられます。
例)
_diff = Diff(XYData.X)
_max = Max(_diff)
_min = Min(_diff)
_mean = Mean(_diff)