산업 제조
산업용 사물 인터넷 | 산업자재 | 장비 유지 보수 및 수리 | 산업 프로그래밍 |
home  MfgRobots >> 산업 제조 >  >> Manufacturing Technology >> 제조공정

최대 6.5MHz의 DIY 단순 주파수 측정기

구성품 및 소모품

Arduino Nano R3
× 1
Adafruit Standard LCD - 파란색 바탕에 16x2 흰색
× 1
범용 트랜지스터 NPN
× 1
슬라이드 스위치
× 1
촉각 스위치, 상단 작동
× 1
저항기, 커패시터, 다이오드
× 1

필요한 도구 및 기계

납땜 인두(일반)

앱 및 온라인 서비스

Arduino IDE

이 프로젝트 정보

영상에 소개된 기기는 아두이노 나노 마이크로컨트롤러를 이용해 만든 주파수 측정기입니다. 직사각형, 사인파 및 삼각형 모양의 신호 주파수를 측정할 수 있습니다.

측정 범위는 수 헤르츠에서 6.5 메가헤르츠입니다. 0.1, 1, 10초의 세 가지 측정 시간 간격도 사용할 수 있습니다. 직사각형 신호만 측정하면 셰이핑 증폭기가 필요하지 않으며 신호는 Arduino에서 디지털 핀 5로 직접 공급됩니다.

아래에서 다운로드할 수도 있는 "FreqCount" 라이브러리 덕분에 코드가 매우 간단합니다.

장치는 매우 간단하며 다음과 같은 여러 구성 요소로 구성됩니다.

- 아두이노 나노 마이크로컨트롤러

- 앰프 보드 성형

- LCD 디스플레이

- 입력 신호 모양 선택기

- 입력 잭

- 및 시간 간격 스위치 :0.1 -1 - 및 10초의 세 가지 간격을 선택할 수 있습니다.

비디오에서 볼 수 있듯이 기기는 전체 범위에서 매우 정확하며 아래에 설명된 간단한 절차로 주파수 측정기를 교정할 수도 있습니다.

Arduino 라이브러리 폴더에서 FreqCount 라이브러리를 찾습니다.

FreqCount.cpp 파일에서 다음 행을 찾습니다.

# 정의된 경우 (TIMER_USE_TIMER2) &&F_CPU ==12000000L

부동 소수점 =count_output * 0.996155;

다음으로 대체:

# 정의된 경우 (TIMER_USE_TIMER2) &&F_CPU ==16000000L

부동 소수점 =count_output * 1.000000;

여기서 1.000000은 수정 계수이며

주파수 측정기의 입력에 1MHz를 적용하여 수정해야 합니다.

파일 변경 후 새로운 스케치를 아두이노 보드에 업로드 합니다.

마지막으로 주파수 측정기는 적절한 플라스틱 상자에 내장되어 있으며 전자 연구실에서 또 다른 유용한 도구입니다.

<섹션 클래스="섹션 컨테이너 섹션 축소 가능" id="코드">

코드

<울>
  • 코드
  • FreqCount-마스터
  • 코드C/C++
    #include //https://github.com/PaulStoffregen/FreqCount/archive/master.zip#include LiquidCrystal lcd(12, 11, 6, 4, 3, 2 );// RS,E,D4,D5,D6,D7void setup() { lcd.begin(16, 2);// LCD 16X2 핀모드(7,INPUT); FreqCount.begin(1000);}부호 없는 long f;float f0;int x,n=3,r;void 루프() { if(digitalRead(7)==HIGH){n++;x=0;delay(100);} lcd.setCursor(0,1); if(n==1){x++;if(x==1){FreqCount.begin(100);}r=-1;lcd.print("T =0.1초 ");} if(n==2 ){x++;if(x==1){FreqCount.begin(10000);}r=1;lcd.print("T =10초");} if(n==3){x++;if(x ==1){FreqCount.begin(1000);}r=0;lcd.print("T =1s ");} if(n>3){n=1;} lcd.setCursor(0,0); lcd.print("F ="); if(f>=1000000 &&n==3){f0=f/1000000.0;lcd.print(f0,6+r);lcd.print("MHz");} if(f<1000000 &&n==3 ){f0=f/1000.0;lcd.print(f0,3+r);lcd.print("kHz");} if(f>=100000 &&n==1){f0=f/100000.0;lcd. print(f0,6+r);lcd.print("MHz");} if(f<100000 &&n==1){f0=f/100.0;lcd.print(f0,3+r);lcd. print("kHz");} if(f>=10000000 &&n==2){f0=f/10000000.0;lcd.print(f0,6+r);lcd.print("MHz");} if( f<10000000 &&n==2){f0=f/10000.0;lcd.print(f0,3+r);lcd.print("kHz");} if (FreqCount.available()) { f =FreqCount. 읽다(); lcd.setCursor(10,1);lcd.print("***"); } 지연(200); lcd.clear();}
    FreqCount-마스터C/C++
    미리보기 없음(다운로드만 가능).

    회로도


    제조공정

    1. 단순 콤비네이션 자물쇠
    2. 멀티미터
    3. 주파수 및 위상 측정
    4. Arduino로 DIY 가장 간단한 IV9 Numitron 시계
    5. Nokia 5110 LCD의 DIY Simple 20kHz Arduino 오실로스코프
    6. DIY 37 LED 룰렛 게임
    7. DIY 감지 ADXL335 지진 감지기
    8. 862D+용 DIY 납땜 인두 제어
    9. 수제 16x8 매트릭스의 Arduino Nano 테트리스 게임
    10. 혼자서는 절대 타지 마세요