제조공정
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 1 |
피부과 문제로 햇빛에 노출될 수 없는 상황에서 해변에서 보내는 시간을 자외선 측정기에 사용했습니다. 울트라브이.
UV 센서, 3v 배터리 전압을 높이는 DC/DC 컨버터, 소형 OLED 디스플레이가 있는 Arduino Nano rev3를 기반으로 합니다. 내 주요 목표는 휴대성을 유지하여 언제 어디서나 UV 지수를 쉽게 알 수 있도록 하는 것이었습니다.
1단계:부품 및 구성요소 <울>
2단계:센서
ML8511(라피스반도체)은 실내외 UV강도 취득에 적합한 UV센서입니다. ML8511에는 UV 강도에 따라 광전류를 전압으로 변환하는 내부 증폭기가 장착되어 있습니다. 이 고유한 기능은 ADC와 같은 외부 회로에 대한 쉬운 인터페이스를 제공합니다. 절전 모드에서 일반적인 대기 전류는 0.1µA이므로 배터리 수명을 연장할 수 있습니다.
기능:
<울>불행히도 센서를 보호할 UV 투명 재료를 찾을 기회가 없었습니다. 내가 테스트한 모든 종류의 투명 커버(플라스틱, 유리 등)는 UV 측정을 약화시켰습니다. 더 나은 선택은 석영 용융 석영 유리인 것 같지만 합리적인 가격에 찾을 수 없어서 센서를 상자 밖에 두고 야외에 두기로 했습니다.
3단계:작업
조치를 취하려면 장치의 전원을 켜고 태양 광선의 방향과 정렬된 상태를 유지하면서 몇 초 동안 태양을 가리킵니다. 그런 다음 디스플레이를 살펴보십시오. 왼쪽의 인덱스는 항상 즉각적인 측정값(각 200ms)을 표시하고 오른쪽의 판독값은 이 세션 동안 취한 최대 판독값입니다. 이것이 바로 필요한 것입니다.
디스플레이의 왼쪽 하단에는 측정된 UV 지수에 대한 WHO 등가 명명법(LOW, MODERATE, HIGH, VERY HIGH, EXTREME)도 보고됩니다.
4단계:배터리 전압 및 판독값
크기와 용량(800mAh) 때문에 CR2 배터리를 선택합니다. 나는 여름 내내 UltraV를 사용했고 배터리는 여전히 2.8v를 읽으므로 선택에 매우 만족합니다. 작동할 때 회로는 약 100mA를 소모하지만 판독 측정은 몇 초 이상 걸리지 않습니다. 배터리 공칭 전압이 3v이므로 DC-DC 스텝 업 컨버터를 추가하여 전압을 최대 9V로 가져오고 Vin 핀에 연결했습니다.
배터리 전압 표시를 디스플레이에 표시하기 위해 아날로그 입력(A2)을 사용했습니다. Arduino 아날로그 입력을 사용하여 0~5V 사이의 DC 전압을 측정할 수 있지만 이 기술에는 보정이 필요합니다. 보정을 수행하려면 멀티미터가 필요합니다. 먼저 마지막 배터리(CR2)로 회로에 전원을 공급하고 컴퓨터의 USB 전원을 사용하지 마십시오. 조정기에서 Arduino의 5V를 측정합니다(Arduino 5V 핀에 있음). 이 전압은 기본적으로 Arduino ADC 기준 전압에 사용됩니다. 이제 측정된 값을 다음과 같이 스케치에 입력합니다(5.023을 읽었다고 가정).
전압 =((긴)합 / (긴)NUM_SAMPLES * 5023) / 1024.0;
스케치에서 저는 전압 측정을 10개 샘플에 대한 평균으로 취하고 있습니다.
5단계:회로도 및 연결
6단계:소프트웨어
디스플레이에는 이러한 종류의 OLED 디스플레이에 매우 유연하고 강력한 U8g2lib를 사용하여 다양한 글꼴과 좋은 위치 지정 기능을 허용합니다.
ML8511의 전압 판독과 관련하여 ADC 컨버터의 베이스로 3.3v Arduino 기준 핀(1% 이내 정확도)을 사용했습니다. 따라서 3.3V 핀에서 아날로그에서 디지털로 변환을 수행한 다음(A1에 연결하여) 이 판독값을 센서의 판독값과 비교함으로써 VIN이 무엇이든 상관없이 실제 판독값을 외삽할 수 있습니다( 3.4V 이상).
int uvLevel =AverageAnalogRead(UVOUT);int refLevel =AverageAnalogRead(REF_3V3);float outputVoltage =3.3 / refLevel * uvLevel;
다음 링크에서 전체 코드를 다운로드하십시오.
UltraV_OLED.ino.zip
7단계:인클로저 케이스
상업용 플라스틱 상자에서 직사각형 디스플레이 창을 수동으로 자르는 몇 가지 (나쁜) 테스트를 거친 후, 나는 그것을 위해 직접 디자인하기로 결정했습니다. 그래서 CAD 응용 프로그램을 사용하여 상자를 디자인하고 가능한 한 작게 유지하기 위해 CR2 배터리를 뒷면 외부에 장착했습니다(배터리 홀더가 상자 자체에 붙어 있음).
다음 링크에서 인클로저 케이스용 STL 파일을 다운로드하세요.
UltraV.stl.zip
8단계:향후 개선 가능성 <울>
9단계:이미지 갤러리 그림> 그림> 그림> 그림> 그림>
10단계:크레딧 <울>
섹션> <섹션 클래스="섹션 컨테이너 섹션 축소 가능" id="코드">
/* Fabio Marzocca @ 2018 아날로그에서 디지털로의 변환은 완전히 VCC에 의존합니다. 우리는 이것이 5V라고 가정하지만 보드가 USB에서 전원이 공급되는 경우 이것은 5.25V만큼 높거나 4.75V만큼 낮을 수 있습니다. http://en.wikipedia.org/wiki/USB#Power 이 알 수 없는 창으로 인해 ADC는 대부분의 경우 상당히 부정확합니다. 이 문제를 해결하기 위해 매우 정확한 온보드 3.3V 기준을 사용합니다(정확도 1% 이내). 따라서 3.3V 핀(A1)에서 ADC를 수행한 다음 이를 센서의 판독값과 비교함으로써 VIN이 무엇이든(3.4V 이상인 한) 실제 판독값을 외삽할 수 있습니다.v. 2.0.0 - 2018년 7월 - 16x2 LCD에서 OLEDv로 이동했습니다. 데이터 2.0.1 - 2018년 9월 - 배터리 읽기 기능 변경*/#include#include #include U8G2_SSD1306_128X64_NONAME_F_SW_I2C u8g2(U8G2_R0/ SCL*, /* clock =*/ SDA, /* 리셋=*/ U8X8_PIN_NONE); // 디스플레이 리셋이 없는 모든 보드#define FIRST_ROW_Y 16#define FIRST_ROW_X 16#define BOX_H 38//하드웨어 핀 정의const int UVOUT =A0; // sensorconst에서 출력 int REF_3V3 =A1; // Arduino 보드의 3.3V 전원 const int VBATT =A2; //배터리 전압 플로트 maxUV =0; //최대 UV 인덱스 readvoid setup(){ pinMode(UVOUT, INPUT); 핀모드(REF_3V3, 입력); 핀모드(VBATT, 입력); u8g2.begin();} 무효 루프(){ u8g2.firstPage(); do { int uvLevel =AverageAnalogRead(UVOUT); 정수 refLevel =평균아날로그읽기(REF_3V3); //3.3V 전원 핀을 참조로 사용하여 센서에서 매우 정확한 출력 값을 얻습니다. float outputVoltage =3.3 / refLevel * uvLevel; 부동 UV 강도 =mapfloat(출력 전압, 0.99, 2.6, 0.0, 15.0); //전압을 UV 강도 레벨로 변환 readBattery(); if (maxUV =0) &&(categ <3)) { strcpy(strCat, "LOW"); } else if ((범주>=3) &&(범주 <6)) { strcpy(strCat, "보통"); } else if ((categ>=6) &&(categ <8)) { strcpy(strCat, "HIGH !"); } else if ((범주>=8) &&(범주 <10)) { strcpy(strCat, "매우 높음!"); } else if (범주>=11) { strcpy(strCat, "EXTREME!"); } u8g2.setCursor(0,64); u8g2.print(strCat); }//주어진 핀에서 판독값의 평균을 취합니다.//평균을 반환합니다.int averageAnalogRead(int pinToRead){ byte numberOfReadings =16; unsigned int runningValue =0; for(int x =0; x 섹션>
제조공정
배터리는 소비자 전자 분야에서 디지털 제품이 의존하는 것입니다. 우리는 배터리가 가능한 오래 지속되기를 원하고 지금처럼 자주 충전할 필요가 없지만 어떻게 할 수 있습니까? 그날이 오기 전에 배터리가 무엇인지, 배터리의 발판을 고정할 수 있는지 봅시다. 배터리란 무엇인가요? 배터리는 화학 에너지, 빛 에너지, 열 에너지, 원자력 등을 전기 에너지로 직접 변환하는 에너지 저장 및 변환 장치입니다. 화학 에너지를 전기 에너지로 변환하는 장치를 화학 전원이라고 합니다. , 배터리입니다. 양극과 음극이 함께 제공됩니다. 배터리 유형
최근에 폰을 한동안 사용하다보면 쉽게 전원이 나가서 배터리를 새로 사려고 합니다. 타오바오 온라인 스토어에서 배터리를 검색해 보니 일반 배터리가 매우 비쌉니다. 예를 들어, iPhone의 배터리 비용은 약 86달러입니다. 소형 배터리가 왜 그렇게 비싼지 궁금하지 않을 수 없습니다. 그 답을 함께 알아봅시다. 리튬 배터리는 배터리, 전원 관리 시스템 및 포장으로 구성됩니다. . 따라서 리튬 배터리의 가격을 알고 싶다면 이 세 부분 각각의 비용을 분석해야 합니다. 배터리 셀 비용 셀은 양극과 음극을 포함하는 단일 단위를 나타냅니다