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

아두이노 나노로 만드는 DIY 미니 오실로스코프 – 단계별 튜토리얼

부품 및 소모품

부품수량
Arduino Nano R31
0.96" OLED 64×128 디스플레이 (SSD1306)1
택타일 스위치 (상단 작동)9
1N4148 고속 스위칭 다이오드4

추가 필요 부품: 104 커패시터, 저항(100Ω, 12kΩ, 120kΩ, 510kΩ)

앱 및 온라인 서비스

프로젝트 개요

집에서 직접 미니 오실로스코프를 만드는 튜토리얼입니다. 제3자 소스 코드를 기반으로 제작했으며, 전체 튜토리얼과 소스 코드는 참고 링크에서 확인 가능합니다.

오실로스코프란?

전기 신호의 전압 변화를 시간 축에 따라 그래프로 표시하는 전자 계측기입니다. Y축은 전압, X축은 시간으로, 파형의 진폭, 주파수, 상승 시간, 왜곡 등을 분석할 수 있습니다. 최신 디지털 오실로스코프(DSO)는 이러한 값을 자동 계산해 표시합니다.

회로도

주의: 회로도와 정확히 동일하게 배선하세요.

아두이노 나노로 만드는 DIY 미니 오실로스코프 – 단계별 튜토리얼
아두이노 나노로 만드는 DIY 미니 오실로스코프 – 단계별 튜토리얼
아두이노 나노로 만드는 DIY 미니 오실로스코프 – 단계별 튜토리얼

참고: radiopench 블로그, 위키피디아

소스 코드

아두이노 IDE에 업로드할 C/C++ 코드입니다. 주요 기능:

/* 주요 상수 */
#define SCREEN_WIDTH 128
#define SCREEN_HEIGHT 64
#define REC_LENGTH 200

/* 전압 범위: Auto 50V, Auto 5V, 50V, 20V, 10V, 5V, 2V, 1V, 0.5V, 0.2V */
/* 시간 범위: 50ms, 20ms, 10ms, 5ms, 2ms, 1ms, 500µs, 200µs */

void setup() {
  // 핀 모드, 디스플레이 초기화, EEPROM 로드, ADC 레퍼런스 설정, 인터럽트 연결
}

void loop() {
  setConditions();   // 범위 설정
  readWave();        // 파형 샘플링 (hRange에 따라 샘플링 주기 조절)
  dataAnalize();     // 최소/최대/평균 계산, 트리거 포인트 탐색
  writeCommonImage(); // 그리드, 눈금 표시
  plotData();        // 파형 그리기
  dispInf();         // 정보 표시 (전압, 시간, 트리거 상태 등)
  display.display();
  saveEEPROM();      // 설정 변경 시 저장
  while (hold) { dispHold(); delay(10); } // 홀드 모드
}

코드는 ADCSRA 레지스터 조작으로 ADC 프리스케일러를 변경해 샘플링 속도를 제어하며, delayMicroseconds()와 asm("nop")로 정밀 타이밍을 맞춥니다. 트리거는 상승/하강 에지 선택 가능하며, 언싱크 시 중앙에 표시합니다.

회로도 파일

아두이노 나노로 만드는 DIY 미니 오실로스코프 – 단계별 튜토리얼

제조공정

  1. 집에서 직접 만드는 DIY 숙제 작성 머신 (펜 플로터)
  2. 아두이노 나노 RP2040으로 만드는 DIY 포토샵 컨트롤 콘솔
  3. DIY 카본 파이버 제작: 집에서 카본 파이버 부품 만들기 단계별 가이드
  4. 아두이노로 모니터 앰비라이트(Ambilight) 시스템 직접 만들기
  5. 아두이노로 만드는 맞춤형 '펀처블' 키보드 버튼: 단계별 가이드
  6. 아두이노로 지구 질량 측정하기: 단계별 DIY 가이드
  7. PHP 기반 웹 인터페이스로 아두이노 우노 제어하기
  8. 아두이노로 음악 톤 만들기: 88키 피아노 음계 구현 가이드
  9. 초음파 센서로 아두이노 자동문 만들기
  10. 아두이노와 프로세싱으로 실시간 디지털 나침반 만들기