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

가정용 공기 유량계

구성품 및 소모품

Arduino UNO
× 1
점퍼 와이어(일반)
총 25개 와이어
× 25
브레드보드(일반)
× 1
회전 전위차계, 10kohm
× 1
Adafruit RGB 백라이트 LCD - 16x2
× 1
스루 홀 저항기, 220kohm
× 1
Diymall 전압 센서 Dc0-25v
× 1
DROK 신호 증폭기 AD620
× 1
컵 블레이드 풍속계
× 1

필요한 도구 및 기계

납땜 인두(일반)

이 프로젝트 정보

배경

우리는 주거 환경에서 사용할 수 있는 기류 유량계를 만드는 임무를 받았습니다. 불행히도 오늘날의 HVAC 산업에서 시장에 나와 있는 유일한 기류 감지 장치는 산업용 애플리케이션용으로 설계된 시스템용입니다. 현재 산업용 크기의 레지스터에서 기류율을 계산하는 데 사용되는 장치는 주거용 레지스터에 비해 너무 크거나 주거용 HVAC 시스템의 더 작은 기류 출력으로 인해 기류율을 계산할 수 없습니다.

작동 원리

기류에서 신호를 생성하기 위해 컵 풍속계를 사용하여 공기를 포착했습니다. 우리는 Autodesk Inventor를 사용하여 맞춤형 3D 인쇄 블레이드를 만들어 공기를 잡을 때 팬 블레이드 성능을 최적화했습니다. 또한 풍속계를 넣을 인클로저를 3D 인쇄했습니다.

풍속계가 출력하는 신호를 읽기 위해 전압 센서를 선택했습니다. 전압 센서에 대한 보다 정확한 판독을 위해서는 센서의 신호도 증폭되어야 했습니다. 증폭기는 풍속계에서 출력 전압을 가져와 10배로 증폭합니다. 이 요소는 입력 전압을 기준으로 1.5배에서 1000배 사이에서 증가하거나 감소할 수 있습니다.

Arduino Uno는 전압 센서에서 아날로그 신호를 읽고 LCD 화면에 표시되는 것을 제어하는 ​​데 사용되었습니다. 이 특정 문제에 대해 CFM에서 풍속을 원했기 때문에 화면에 그렇게 표시했습니다.

빌드

전자제품

건설의 첫 번째 단계는 풍속계로 시작하는 것입니다. 아래는 기기의 일부 사진입니다.

"Anemometer Top View"라고 표시된 이미지를 보십시오. 블레이드가 풍속계에 연결되는 지점은 L자형으로 매우 얇습니다. 이것은 고속에서 잘 견디지 못하므로 여기에서 새로운 블레이드를 설계했습니다. 더 두꺼운 블레이드와 더 견고한 핸들 디자인이 있는 곳에서 우리가 원했던 것입니다. 더 큰 블레이드의 목적은 블레이드와 하우징 유닛(팬이 앉을 위치) 사이의 단면 에어 갭을 줄이는 것이었으며, 이는 차례로 스쿠프에 갇힌 공기의 양과 모터에서 생성되는 전압을 증가시킵니다. 아래는 블레이드가 풍속계에 부착된 위치의 사진입니다.

이것이 많은 차이를 만들까요? 좋은 질문입니다. 새로운 디자인이 훨씬 더 견고해졌는지 확인하기 위해 Autodesk Inventor에서 몇 가지 응력 분석 테스트를 수행했습니다. 아래 그림은 결과를 보여줍니다.

우리는 새로운 블레이드가 고속에서 훨씬 더 효과적이라는 것을 알 수 있습니다. 블레이드용 STL 파일은 파일 섹션에 첨부되어 있습니다. 아직 새 블레이드를 부착하지 마십시오.

다음으로 수정된 풍속계를 하우징 유닛에 배치해야 합니다. 하우징 유닛의 STL 파일은 파일 섹션에 있습니다. 풍속계에 날이 없는 상태에서 하우징 바닥에 있는 구멍을 통해 풍속계를 위로 밉니다. 풍속계의 고릴라 바닥 두 개의 얇은 나무 원 (취미 로비에서). 원과 ABS 플라스틱 하우징을 통해 4개의 작은 구멍을 뚫습니다. 하나의 구멍은 와이어를 통과시키는 구멍이고 나머지 세 개는 나사용입니다. 아래 그림은 어떻게 보일지 보여줍니다.

다음으로 우리는 증폭기에 풍속계를 연결해야 합니다. 아래는 앰프의 사진입니다.

*앰프에 연결된 모든 전선은 수-수입니다.

두 개의 수-수 전선을 가져오세요. 색상은 중요하지 않지만 프로젝트에서 사용한 색상으로 부를 것입니다. 오른쪽의 +S 원에 빨간색 와이어를 납땜합니다. 풍속계에서 나오는 빨간색 와이어에 다른 쪽 끝을 납땜합니다. 오른쪽의 -S 원에 검은색 와이어를 납땜합니다. 풍속계에서 나오는 노란색 와이어에 다른 쪽 끝을 납땜합니다. 또한 전기 테이프를 추가하면 제자리에 잘 고정됩니다.

다음으로 증폭기를 배터리 전원에 연결해야 합니다. 오른쪽의 GND에 노란색 선을 납땜하십시오. 배터리 팩 커넥터에서 나오는 검은색 와이어에 다른 쪽 끝을 납땜합니다. 오른쪽의 Vln 원에 흰색 와이어를 납땜하십시오. 배터리 팩 커넥터에서 나오는 빨간색 와이어에 다른 쪽 끝을 납땜합니다.

다음으로 증폭기를 전압 센서에 연결해야 합니다. 파란색 와이어를 증폭기의 GND에 납땜하고 다른 쪽 끝을 전압 센서의 VCC에 납땜합니다. 녹색 와이어를 증폭기의 Vout에 납땜하고 다른 쪽 끝을 전압 센서의 GND에 납땜합니다.

이제 우리는 전압 센서를 Arduino에 배선하고 배선을 마칠 것입니다. 회로도 섹션의 배선 다이어그램은 이 부품을 배선하는 방법을 보여줍니다.

마무리

가장 어려운 부분이 완료되었습니다! 이제 모든 것이 연결되었으므로 유량계에 전자 장치를 설정할 수 있습니다. 폼 보드 조각을 팬 하우징 상단의 천장으로 사용합니다. 고정하기 위해 고릴라 글루를 사용했습니다. 그런 다음 전자 제품을 폼 보드에 놓고 더 많은 폼 보드를 사용하여 전자 제품을 둘러쌀 수 있습니다. 아래 사진에서 전자 제품을 둘러싸기 위해 폼이 어떻게 사용되었는지 볼 수 있습니다.

또한 Arduino와 증폭기가 각각의 9V 배터리 전원 공급 장치에 액세스할 수 있도록 폼에 구멍을 뚫었습니다. 이것은 아래 사진에서 볼 수 있습니다.

다음으로 깔때기를 만들 것입니다. 깔때기 판은 PVC 재질을 사용했습니다. 사다리꼴 모양의 판자가 4개 있었습니다. 보드를 서로 연결하기 위해 고릴라 접착제와 코킹을 사용했습니다. 깔때기를 팬 하우징에 연결하는 데 동일한 방법이 사용되었습니다. 깔때기의 큰 끝 부분에 웨더 스트리핑이 주변에 배치되었습니다. 이것은 깔때기가 통풍구까지 눌려질 때를 위한 씰을 만들기 위해 수행되었습니다. 깔때기의 큰 쪽 단면은 14'' x 14''입니다. 아래 사진은 깔때기의 전면 모습입니다.

보정

모든 것이 구축되면 유량계를 보정했습니다. 정확한 기류를 아는 장치로 테스트했습니다. 첫 번째 코드는 LCD 화면에 센서가 읽은 전압을 표시했습니다. 그런 다음 수집된 데이터를 사용하여 방정식을 만들어 LCD 화면에 CFM을 표시하도록 했습니다. 아래 데이터는 보정 방법을 보여줍니다.

그래프에서 초기 기류와 실제 기류의 두 곡선을 볼 수 있습니다. 그것들은 우리가 공기 아래로 퍼널링할 때 속도가 약간 감소하기 때문에 다릅니다. 여기에서는 실제 공기 흐름에 가장 적합한 방정식을 사용합니다.

y =1.1409x^2 + 44.958x, arduino 코드에서. 코드는 풍속이 0인 지역, 중소 풍속, 큰 풍속의 세 부분으로 나뉩니다. 위의 방정식이 흐름의 전체 풍속을 모델링하는 데 가장 적합할 수 있지만 중소 범위를 모델링하는 데 더 나은 방정식을 찾았습니다. 범위는 다음 방정식으로 표시됩니다.

대형 CFM:

y =1.1409x^2 + 44.958x

중간에서 낮은 CFM

y =40x +20

제로 CFM:

y =0

이후 섹션에서 코드를 찾을 수 있습니다.

Arduino에 코드를 업로드하면 유량계가 완료된 것입니다!

보정 그것 자신 (선택사항)

따라서 직접 보정하고 싶다고 가정해 보겠습니다. 기류를 m/s 또는 mph로 측정하고 싶을 수도 있습니다. 여기에서 보정 단계를 안내합니다.

1단계:먼저 실제 유량을 찾는 방법을 찾으십시오.

가장 저렴한 방법은 상점에서 풍속계를 구입하는 것입니다. 여기 효과가 있는 것이 있습니다. 풍속계

2단계:속도 설정이 다른 팬 앞에 풍속계를 놓습니다. 팬은 아래 그림과 같은 것일 수 있습니다.

3단계:각각의 다른 설정에서 풍속계를 기록합니다.

4단계:유량계가 팬의 출력 전압을 읽도록 해야 합니다. 이렇게 하려면 "전압 센서 코드"라는 제목의 코드를 Arduino에 업로드합니다.

5단계:이제 유량계 판독 전압이 있으므로 각기 다른 팬 속도 설정에서 전압을 기록합니다.

6단계:Excel을 사용하여 "풍속 대 전압"의 산점도를 만듭니다.

7단계:추세선 기능을 사용하여 "풍속 대 전압"을 정확하게 모델링하는 방정식을 찾습니다.

8단계:추세선이 매우 선형이 아니라고 생각되면 그래프의 하단과 상단에 대한 별도의 방정식을 찾을 수 있습니다.

9단계:이제 "유량계 코드"에서 내 방정식을 방정식으로 대체할 수 있습니다. 코드를 Arduino에 업로드하면 설정이 완료됩니다!

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

코드

<울>
  • 유량계 코드
  • 전압 센서용 코드
  • 전압 센서 코드
  • 유량계 코드C/C++
    <사전>1. #include 2. 3. LiquidCrystal lcd(12, 11, 5, 4, 3, 2); 4. // 사용할 핀 5. 6. // 아래는 센서의 저항 값입니다. 7. float R1=30000; 8. 9. 플로트 R2=7500; 10. 11. void setup() 12. { 13. 14. Serial.begin(9600); 15. lcd.begin(16, 2); 16. // LCD 화면을 사용할 수 있도록 합니다. 17. 18. 19. } 20. 21. void loop() 22. // 루프 시작 23. { 24. 25. int sensorValue =analogRead(A0); 26. // 센서 값 읽기 27. 28. 부동 전압 =((5*sensorValue*(R1+R2))/(1024*R2)); 29. // 실제 전압에 대한 방정식 30. 31. 32. //************************************ ************************// 33. // CFM의 방정식은 전압의 조각별 함수, 34입니다. // 따라서 if 문이 사용되었습니다. 함수를 35로 나눕니다. // 36 아래의 해당 영역. //************************************ ************************// 37. 38. 39. if (전압> 1) 40. // 큰 CFM에 대한 함수의 첫 번째 영역 41. { 42. 43. float cfm =(1.1409*(전압))*((전압))+44.258*(전압); 44. 45. Serial.println(cfm); 46. ​​// CFM 47을 표시합니다. lcd.print("CFM ="); 48. lcd.setCursor(0, 1); 49. lcd.print(cfm); 50. 지연(1000); 51. // 1000ms 지연 52. lcd.clear(); 53. // 반복을 위해 지웁니다. 54. delay(1000); 55. 56. } 57. 58. else if (.01 <전압 <1) 59. // 중간에서 낮은 CFM에 대한 두 번째 영역 60. { 61. 62. float cfm =(40*(전압)+20); 63. 64. Serial.println(cfm); 65. // CFM 66을 표시합니다. lcd.print("CFM ="); 67. lcd.setCursor(0, 1); 68. lcd.print(cfm); 69. 지연(1000); 70. // 1000ms 지연 71. lcd.clear(); 72. // 반복을 위해 지웁니다. 73. delay(1000); 74. 75. } 76. 77. else 78. // 팬이 회전하지 않으면 CFM은 0이 됩니다. 79. { 80. float cfm =0; 81. 82. Serial.println(cfm); 83. lcd.print("CFM ="); 84. lcd.setCursor(0, 1); 85. lcd.print(cfm); 86. 지연(1000); 87. lcd.clear(); 88. 지연(1000); 89. } 90. 91. 92. }
    전압 센서용 코드C/C++
    직접 캘리브레이션을 하고 싶을 때 전압을 읽어오는 코드입니다.
     // 아래는 sensorfloat의 저항값 R1=30000; float R2=7500;void setup() {Serial.begin(9600); }void loop() {// 센서 값을 읽습니다.int sensorValue =analogRead(A0); // 실제 전압 부동 전압에 대한 방정식 =((5*sensorValue*(R1+R2))/(1024*R2)); // 컴퓨터에 전압을 출력합니다.printIn(voltage); 지연(1000);}
    전압 센서 코드C/C++
    이것은 유량계를 직접 교정하는 데 사용하는 코드입니다.
    #include LiquidCrystal lcd(12, 11, 5, 4, 3, 2); // 다음은 사용할 핀입니다. // 아래는 sensorfloat R1=30000의 저항 값입니다. float R2=7500;void setup() { // LCD 화면을 사용할 수 있도록 합니다.Serial.begin (9600);lcd.begin(16, 2); }void loop() { // 센서 값 읽기 int sensorValue =analogRead(A0); // 실제 전압 부동 전압에 대한 방정식 =((5*sensorValue*(R1+R2))/(1024*R2)); // LCD 화면에 전압 표시Serial.println(voltage);lcd.print("V =");lcd.setCursor(0, 1);lcd.print(voltage);delay(1000);lcd.clear();지연(1000);}

    맞춤형 부품 및 인클로저

    회로도


    제조공정

    1. 공기 청정기
    2. 산소 탱크
    3. 공기 청정기
    4. 산소
    5. 에어컨
    6. 열기구
    7. 에어백
    8. UFO 공격!
    9. 3D RGB Arduclock
    10. 마이리버