Мазмұны:
- 1 -қадам: Бұл жобада қолданылатын заттар
- 2 -қадам: Әңгіме
- 3 -қадам: Қажетті файлдарды жүктеңіз
- 4 -қадам: жинау
- 5 -қадам: Бағдарлама
- 6 -қадам: Портативті термометр
- 7 -қадам: Қорытынды
- 8 -қадам: код
2024 Автор: John Day | [email protected]. Соңғы өзгертілген: 2024-01-30 10:22
Сұйықтың температурасын XinaBox xChip аналогты кірісі мен термисторлық зонд көмегімен өлшеңіз.
1 -қадам: Бұл жобада қолданылатын заттар
Аппараттық компоненттер
- ADC бар XinaBox SX02 x 1 xChip аналогты кіріс сенсоры
- ATmega328P негізіндегі Arduino Uno XinaBox CC01 x 1 xChip нұсқасы
- Резистор 10к ом х 1 1к кернеуді бөлетін желі үшін резистор
- Thermistor Probe x 1 10k 25 ° C температурада NTC су өткізбейтін термисторлық зонд
- XinaBox IP01 x 1 xChip USB бағдарламашысы FTDI Limited компаниясының FT232R негізіндегі
- XinaBox OD01 x 1 xChip 128x64 пикселдік OLED дисплейі
- XinaBox XC10 x 4 xChip шиналық қосқыштары
- XinaBox PU01 x 1 xChip USB (А түрі) қуат көзі
- 5В USB қуат көзі x 1 қуат банкі немесе соған ұқсас
Бағдарламалық жасақтама және онлайн қызметтері
Arduino IDE
Қолмен жұмыс жасайтын машиналар мен машиналар
Жалпақ бұрағыш Бұрандалы қысқыш қысқышын қатайту немесе босату үшін
2 -қадам: Әңгіме
Кіріспе
Мен сұйықтықтың температурасын қарапайым термометр жасау арқылы өлшегім келді. XinaBox xChips көмегімен мен бұған салыстырмалы қарапайымдылықпен қол жеткізе аламын. Мен температура нәтижелерін көру үшін 0 - 3.3V қабылдайтын SX02 аналогты кірісті xChip, ATmega328P және OD01 OLED дисплейіне негізделген CC01 xChip қолдандым.
Шыныдағы судың температурасын өлшейтін термистор
3 -қадам: Қажетті файлдарды жүктеңіз
Сізге келесі кітапханалар мен бағдарламалық қамтамасыз ету қажет:
- xSX0X- аналогты кіріс сенсорының кітапханасы
- xOD01 - OLED дисплей кітапханасы
- Arduino IDE - даму ортасы
Кітапханаларды қалай орнату керектігін білу үшін мына жерді басыңыз.
Arduino IDE орнатқаннан кейін оны ашып, бағдарламаны жүктеу үшін тақта ретінде «Arduino Pro немесе Pro Mini» таңдаңыз. Сонымен қатар ATmega328P (5V, 16MHz) процессоры таңдалғанына көз жеткізіңіз. Төмендегі суретті қараңыз.
Arduino Pro немесе Pro Mini тақтасын және ATmega328P (5V, 16МГц) процессорын таңдаңыз
4 -қадам: жинау
XChip, IP01 және ATmega328P негізіндегі CC01 xChip бағдарламашысын төменде көрсетілгендей XC10 шина қосқыштарын пайдаланып шертіңіз. CC01 -ге жүктеу үшін қосқыштарды тиісінше 'A' және 'DCE' позициясына орналастыру қажет.
IP01 және CC01 бірге шертілді
Әрі қарай, 10 кОм резисторды алып, бір ұшын «IN» деп белгіленген терминалға, екінші ұшын SX02 жердегі «GND» терминалына бұраңыз. Термисторлық зондтағы сымдарды алып, бір ұшын Vcc, «3.3V», екінші ұшын «IN» терминалына бұраңыз. Төмендегі графикті қараңыз.
SX02 қосылымдары
Енді OD01 мен SX02 -ді CC01 -мен біріктіріп, оларды XC10 шиналық қосылымдарының көмегімен бірге басыңыз. Төменде қараңыз. Суреттегі күміс элемент - термисторлық зонд.
Бағдарламалауға арналған толық қондырғы
5 -қадам: Бағдарлама
Құрылғыны компьютердің USB портына салыңыз. Төмендегі кодты жүктеңіз немесе көшіріңіз және Arduino IDE -ге қойыңыз. Кодты құрастырыңыз және тақтаға жүктеңіз. Жүктелгеннен кейін бағдарлама іске қосылуы керек. Егер зонд бөлме температурасында болса, төменде көрсетілгендей OLED дисплейінде ± 25 ° C температураны сақтау керек.
Жүктелгеннен кейін OLED дисплейіндегі бөлме температурасын бақылаңыз
6 -қадам: Портативті термометр
Құрылғыны компьютерден алып тастаңыз. Құрылғыны бөлшектеңіз және IP01 орнына PU01 көмегімен қайта жинаңыз. Енді 5В USB портативті қуат көзін алыңыз, мысалы, қуат банкі немесе соған ұқсас жаңа қондырғыны. Сізде жақсы дәлдікпен салқын портативті термометр бар. Мұқабаның жұмыс істеуін көру үшін оны қараңыз. Мен шыныдағы ыстық суды өлшедім. Төмендегі суреттер сіздің толық қондырғыңызды көрсетеді.
CC01, OD01, SX02 және PU02 бар толық қондырғы.
7 -қадам: Қорытынды
Бұл жобаны құрастыруға 10 минуттан аз уақыт қажет болды, ал бағдарламаға тағы 20 минут қажет болды. Жалғыз пассивті компонент резистор болды. XChips бірге басу арқылы оны өте ыңғайлы етеді.
8 -қадам: код
ThermTemp_Display.ino Arduino Кодтағы есептеулерді түсіну үшін термисторларды зерттеу.
#include // xCHIPs үшін негізгі кітапхананы қамтиды
#include // аналогты кіріс датчиктерінің кітапханасын қосады #include // OLED дисплей кітапханасын қосады #include // математикалық функцияларды қосады #C_Kelvin 273.15 // келвиннен цельсийге түрлендіру үшін анықтайды #series_res 10000 анықтаңыз // сериялы резистордың омдағы мәні #анықтаңыз B 3950 // термистор үшін В параметрі #бөлмені_таңдауды анықтау K 298.15 // бөлме температурасы келвинде #бөлмені_таңдау 10000 // бөлме температурасындағы омдағы кедергі #define vcc 3.3 // қоректендіру кернеуі xSX01 SX01 (0x55); // i2c адресінің өзгермелі кернеуін орнату; // өлшенетін кернеуді қамтитын айнымалы (0 - 3.3В) float therm_res; // термистордың кедергісі float act_tempK; // нақты температура kelvin float act_tempC; // Цельсийдегі нақты температура void setup () {// бір рет іске қосу үшін орнату кодын осында қойыңыз: // айнымалыларды 0 кернеу = 0 мәніне инициализациялаңыз; therm_res = 0; act_tempK = 0; act_tempC = 0; // сериялық байланысты бастау Serial.begin (115200); // i2c байланысын бастау Wire.begin (); // аналогты кіріс сенсорын іске қосыңыз SX01.begin (); // іске қосу OLED дисплейі OLED.begin (); // таза дисплей OD01.clear (); // кешігуді қалыпқа келтіру үшін кешіктіру (1000); } void loop () {// бірнеше рет іске қосу үшін негізгі кодты осында қойыңыз: // SX01.poll () кернеуін оқыңыз; // кернеу кернеуін сақтау = SX01.getVoltage (); // термистордың кедергісін есептеу term_res = ((vcc * series_res) / кернеу) - series_res; // нақты температураны kelvin act_tempK = (room_tempK * B) / (B + room_tempK * log (therm_res / room_res)) нақты температураны есептеңіз; // келвинді цельсияға түрлендіру act_tempC = act_tempK - C_Kelvin; // OLED дисплейде басып шығару температурасы // OD01.set2X () орталығында көрсету үшін қолмен форматтау; OD01.println («»); OD01.println («»); OD01. басып шығару («»); OD01.print (act_tempC); OD01. басып шығару («C»); OD01.println («»); кешіктіру (2000); // әр 2 секунд сайын дисплейді жаңартыңыз}
Ұсынылған:
HIH6130 және Arduino Nano көмегімен ылғалдылық пен температураны өлшеу: 4 қадам
HIH6130 мен Arduino Nano көмегімен ылғалдылық пен температураны өлшеу: HIH6130 - цифрлық шығысы бар ылғалдылық пен температура сенсоры. Бұл датчиктер ± 4% RH дәлдік деңгейін қамтамасыз етеді. Өнеркәсіптің жетекші ұзақ мерзімді тұрақтылығымен, шынайы температуралық компенсацияланған сандық I2C, өнеркәсіптің сенімділігі, энергия тиімділігі
HTS221 және Arduino Nano көмегімен ылғалдылық пен температураны өлшеу: 4 қадам
HTS221 және Arduino Nano көмегімен ылғалдылық пен температураны өлшеу: HTS221 - салыстырмалы ылғалдылық пен температураға арналған өте жинақы сыйымдылықты сандық сенсор. Ол сандық серия арқылы өлшеу ақпаратын беру үшін сенсорлық элементті және аралас сигналға арналған арнайы интегралды схеманы (ASIC) қамтиды
HTS221 және Raspberry Pi көмегімен ылғалдылық пен температураны өлшеу: 4 қадам
HTS221 мен Raspberry Pi көмегімен ылғалдылық пен температураны өлшеу: HTS221 - салыстырмалы ылғалдылық пен температураға арналған өте жинақы сыйымдылықты сандық сенсор. Ол сандық серия арқылы өлшеу ақпаратын беру үшін сенсорлық элементті және аралас сигналға арналған арнайы интегралды схеманы (ASIC) қамтиды
HIH6130 мен Raspberry Pi көмегімен ылғалдылық пен температураны өлшеу: 4 қадам
HIH6130 мен Raspberry Pi көмегімен ылғалдылық пен температураны өлшеу: HIH6130 - бұл цифрлық шығысы бар ылғалдылық пен температура сенсоры. Бұл датчиктер ± 4% RH дәлдік деңгейін қамтамасыз етеді. Өнеркәсіптің жетекші ұзақ мерзімді тұрақтылығымен, шынайы температуралық компенсацияланған сандық I2C, өнеркәсіптің сенімділігі, энергия тиімділігі
HIH6130 мен бөлшек фотонының көмегімен ылғалдылық пен температураны өлшеу: 4 қадам
HIH6130 мен бөлшек фотонының көмегімен ылғалдылық пен температураны өлшеу: HIH6130 - бұл цифрлық шығысы бар ылғалдылық пен температура сенсоры. Бұл датчиктер ± 4% RH дәлдік деңгейін қамтамасыз етеді. Өнеркәсіптің жетекші ұзақ мерзімді тұрақтылығымен, шынайы температуралық компенсацияланған сандық I2C, өнеркәсіптің сенімділігі, энергия тиімділігі