bearing op• 데이터 종류: 없음 → table(인자만으로 정해지는 연산자 —— 이미지나 데이터 입력을 받지 않습니다)
• 호출: import fullseye as fs; fs.ledger.bearing_defect_frequencies(rpm=1800.0, n_elements=9, element_diameter=8.0, pitch_diameter=40.0, contact_angle_deg=0.0)(구현을 직접 호출하려면 import acoustics; acoustics.bearing_defect_frequencies(rpm=1800.0, n_elements=9, element_diameter=8.0, pitch_diameter=40.0, contact_angle_deg=0.0), 원장에서 가져오려면 opsacoustics.get("bearing_defect_frequencies"))
기하로부터 구름 베어링의 네 가지 특징 주파수를 구합니다.
> 아래 상세 설명은 원문입니다 —— 요약과 제목은 번역되어 있습니다.
Derived, not tabulated. Under pure rolling the cage advances at half the sum of the race surface speeds, which with r = d/D cos(alpha) gives, per shaft revolution rate f_r = rpm/60:
• FTF (cage / fundamental train) = f_r (1 - r) / 2
• BPFO (ball pass, outer race) = N f_r (1 - r) / 2 = N * FTF
• BPFI (ball pass, inner race) = N f_r (1 + r) / 2
• BSF (ball spin) = f_r (1 - r^2) D / (2 d)
Two exact identities fall out and are asserted in the tests, because they catch a transposed d and D immediately: BPFO + BPFI = N f_r exactly, and BPFO = N * FTF exactly. Measured for the defaults (1800 rpm, 9 elements, d = 8, D = 40, alpha = 0): ratio = 0.200000, f_r = 30.000000, FTF = 12.000000, BPFO = 108.000000, BPFI = 162.000000, BSF = 72.000000 Hz, with BPFO + BPFI - 9 f_r = 0.000e+00 and BPFO - 9 FTF = 0.000e+00 — exactly zero in float64, not merely small.
Returns a dict with shaft_hz, ftf_hz, bpfo_hz, bpfi_hz, bsf_hz, ratio (d/D cos alpha), and the inputs echoed back. Also bsf_hz_2x: a rolling element normally strikes *both* races per spin, so a spall on the element itself is usually seen at 2 * BSF, and reporting only BSF is the classic way to miss it.
These are the no-slip kinematic rates. Real bearings slip by roughly a percent, so an observed line within about 1 % of one of these is a match and an exact match is a coincidence; that tolerance is the caller's to apply.
Raises ValueError: non-real / string / bool scalars, rpm <= 0, n_elements not an int >= 2, non-positive diameters, an element_diameter >= pitch_diameter (geometrically impossible — the rolling elements would not fit inside the pitch circle, and the usual cause is the two arguments being swapped, which otherwise returns a negative FTF and a plausible-looking BPFI), and |contact_angle_deg| >= 90.
• acoustic_condition_monitoring 패밀리 가이드
• 샘플 데이터 카탈로그(DL URL / 라이선스) —— 2-D 는 skimage.data(BSD/public)+ 합성, 3-D 는 실데이터 소스(Stanford/PDS 등)의 DL URL.
• 연산자의 내력·참고문헌 —— 이 연산자 족의 바탕이 된 연구/기법의 출처.
• 알고리즘의 정전(저자·연도)과 용도는 위의 패밀리 사용 가이드에 적혀 있습니다.
• acoustic_condition_monitoring — py -3.11 examples/acoustic_condition_monitoring.py
• poc_bearing_diagnosis — py -3.11 examples/poc_bearing_diagnosis.py
• poc_machine_condition_fusion — py -3.11 examples/poc_machine_condition_fusion.py
table 를 입력으로 받는 것)bearing)envelope_spectrum · spectral_kurtosis · cepstrum
*Provenance: acoustics.py — ACOUSTICS 연산자 레지스트리. 이 op 노트는 tools/opdocs.py md 가 자동 생성합니다(직접 편집하지 마세요).*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.