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

새롭고 더 빠른 알고리즘이 포함된 Arduino 기반 RPM 카운터

구성품 및 소모품

Arduino UNO
× 1
IR 근접 센서
이 프로젝트에서 권장하는 센서를 사용하세요. 그렇지 않으면 결과가 다를 수 있습니다.
× 1
점퍼 와이어(일반)
× 3
레이저 다이오드, 655nm
기성 레이저 포인터를 사용할 수 있으며 반드시 위에서 언급한 포인터는 아닙니다.
× 1
DC 모터(일반)
테스트용입니다.
× 1
USB-A 대 미니 USB 케이블
× 1
배터리, 9V
× 1

필요한 도구 및 기계

납땜 와이어, 무연
납땜 인두(일반)
모터 리드에 와이어를 납땜하는 경우에만. 다른 방법을 사용할 수도 있습니다.

앱 및 온라인 서비스

Arduino IDE

이 프로젝트 정보

이 프로젝트는에서 개발되었습니다. 긁힘 정확한 RPM을 측정하기 위한 시도(회전 수 단일 IR을 사용하는 다양한 모터의 분)값 센서, Arduino 보드 및 필수 주요 재료 - 레이저 포인터(빨간색 필요).

이 프로젝트는 IR 센서가 적색 레이저에서 방출되는 적은 수의 IR 방사도 읽는다는 사실을 이용합니다. 그러나 청색/녹색 레이저가 사용될 때 이러한 IR 방사는 매우 줄어들고 아날로그 판독 전압은 약 100%까지 떨어집니다. 0.

모터에 부착된 팬의 블레이드가 레이저 빔의 경로로 들어오면 경로를 차단하고 판독 값이 0으로 떨어집니다. 팬 블레이드는 계속 회전하고 일정한 전원 공급으로 위치가 계속 변경됩니다. 지속적인 경로 변경이 발생합니다. 경로가 다시 명확해지면 레이저 포인터 빔이 센서를 다시 공격합니다.

더 빠르고 더 많은 변화에 대한 적응 측정을 위한 새로운 싱글 샷 알고리즘 기반 코드:-

내가 개발한 이 프로젝트의 코드는 이 프로젝트를 위해 새로 개발된 알고리즘을 사용합니다. 알고리즘은 실로 고유하며 40밀리초 이내에 측정을 수행하고 정확한 결과를 제공하도록 구축되었습니다. 이 프로그램의 매우 중요한 기능 중 하나는 제가 Arduino용 단일 샷 감지라고 부르는 방법을 사용한다는 것입니다. 팬 블레이드가 레이저 빔의 경로에 장애물을 만들 때마다 모터의 RPM을 계산합니다. 이는 레이저 빔의 경로가 막히면 팬에 있는 n개의 블레이드에 대해 1/n의 완전한 회전을 표시하기 때문입니다. 따라서 프로그램은 매우 민감한 ~으로 RPM의 미세한 변화( 소수점 이하 2자리) 모든 1/n 혁명 칼날 다시 어디서 n 이다 숫자 블레이드 팬. 따라서 이 고유한 단일 샷 감지 알고리즘은 매우 정확한 결과를 제공합니다. 가치 RPM 및 측정 변화에 대한 더 높은 민감도

표시됨 이미지 출력 샘플 에서 일련번호 모니터 a 테스트 달리다, 요율 출력 심사 할 수 있음 명확하게 되다 어떤 이다 정보 2 a 초. RPM 가치 있다 계산됨 최대 장소 소수점 시간.

이것을 보는 모든 사람은 이 프로젝트를 한 번 시도하고 소중한 리뷰를 공유해야 합니다. 이 알고리즘과 관련된 실험 및 결과에 대해 이야기하십시오. 새로운 프로젝트에 대한 제안은 댓글 섹션에서 환영합니다. 프로젝트가 마음에 들면 존중하십시오.

이 링크(https://create.arduino.cc/projecthub/YASH36)를 탭하여 내 프로필을 팔로우하세요. @YASH36 새로운 프로젝트 업데이트를 위해.

그때까지 안심하시고 아두이노를 즐기세요!!

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

코드

<울>
  • RPM_counter_101
  • RPM_counter_101아두이노
    이것은 RPM 카운터에 대한 코드입니다.
    //YaSh.int sen =A0;const float wid =0.012의 코드입니다. //필요에 따라 팬 블레이드의 너비를 조정합니다.const float rad =0.045; //팬에서 감지 지점의 반경을 조정합니다. blade.const float konst =6.2832; // 2*pi.float time_1;float time_2;float vel;float diff;float tnet;float rpm;void setup() { Serial.begin(9600); 핀모드(센,입력); Serial.print(" \n 최소 3초 전에 모터를 시작하십시오.\n"); 지연(3000);} 무효 루프(){ if(analogRead(sen)<950) { time_1 =millis(); 지연(30); } if(analogRead(sen)>950) { time_2 =millis(); diff =(time_2-time_1); vel =너비/차이 //회전 속도 tnet =(konst*rad)/vel; //시간 =(2*pi*반경)/속도. rpm =(60000)/tnet; // ms 단위의 시간을 분으로 변환한 다음 rpm으로 변환 단계. }Serial.print("\n rpm은 :"); 직렬.println(rpm);}

    회로도

    이것은 기본 및 기타 구성 요소 배치에 대한 이미지입니다. 센서를 arduino 보드에 연결하기 위한 회로도

    제조공정

    1. Raspberry Pi 및 습도 센서를 사용한 수경재배
    2. Portenta 및 열전쌍 센서(MAX6675 포함)
    3. MPU-6050을 사용한 Arduino 자이로스코프 게임
    4. DHT11 센서(LED 및 피에조 스피커 포함)
    5. K30 센서로 CO2 모니터링
    6. Unopad - Ableton이 포함된 Arduino MIDI 컨트롤러
    7. 온도 및 습도 데이터 로거
    8. IOT - ESP8266, Arduino 및 초음파 센서를 사용하는 스마트 항아리
    9. Arduino를 사용한 간단한 장애물 센서
    10. Arduino 및 OLED 기반 Cellular Automata