# វាស់សីតុណ្ហភាព - Wio Terminal នៅផ្នែកនេះនៃមេរៀន អ្នកនឹងបន្ថែមឧបករណ៍វាស់សីតុណ្ហភាពទៅកាន់ Wio Terminal របស់អ្នក ហើយអានតម្លៃសីតុណ្ហភាពពីវា។ ## ឧបករណ៍រឹង Wio Terminal ត្រូវការឧបករណ៍វាស់សីតុណ្ហភាព។ ឧបករណ៍ថាមពលដែលអ្នកនឹងប្រើគឺជា [ឧបករណ៍វាស់សំណើម និងសីតុណ្ហភាព DHT11](https://www.seeedstudio.com/Grove-Temperature-Humidity-Sensor-DHT11.html) ផ្តល់បញ្ចូលពីឧបករណ៍ពីររួមនៅក្នុងឯកជនមួយ។ វាមានប្រជាប្រិយភាពខ្លាំង ដោយមានឧបករណ៍ជាច្រើនដែលមានលក់ពាណិជ្ជកម្មរួមបញ្ចូលសីតុណ្ហភាព សំណើម និងមួយចំនួនព្រឹត្តិការណ៍សំពាធបរិយាកាស។ ឧបករណ៍វាស់សីតុណ្ហភាពគឺជាភាគរយវិការណ៍អាកាសធម្មតានៃធម្មជាតិ (NTC) thermistor ដែលមានភាពធូរស្បើយនៅពេលសីតុណ្ហភាពកើនឡើង។ នេះគឺជាឧបករណ៍ឌីជីថល ដូច្នេះវាជាឧបករណ៍ ADC ខាងក្នុងដើម្បីបង្កើតសញ្ញាឌីជីថលដែលមានទិន្នន័យសីតុណ្ហភាព និងសំណើមដែលម៉៊ីក្រូកុងត្រូលអាចអានបាន។ ### ချိတ်ឧបករណ៍វាស់សីតុណ្ហភាព ឧបករណ៍ Grove temperature sensor អាចត្រូវបានភ្ជាប់ទៅកាន់ពត៍តភ្ជាប់ឌីជីថលរបស់ Wio Terminal។ #### បេសកកម្ម - ខ្សែភ្ជាប់ឧបករណ៍វាស់សីតុណ្ហភាព ភ្ជាប់ឧបករណ៍វាស់សីតុណ្ហភាព។ ![ឧបករណ៍ Grove temperature sensor](../../../../../translated_images/km/grove-dht11.07f8eafceee17004.webp) 1. ដាក់ចុងនៃខ្សែ Grove មួយចុងទៅក្នុងផ្សិតលើឧបករណ៍វាស់សំណើម និងសីតុណ្ហភាព។ វានឹងដំណើរការតែមួយទិសតែម្តង។ 1. នៅពេល Wio Terminal មិនបានភ្ជាប់ទៅកាន់កុំព្យូទ័រឬប្រភពថាមពលផ្សេងទៀត ទាក់ទងចុងក្រោយនៃខ្សែ Grove ទៅក្នុងផ្សិត Grove ពីចំហៀងស្តាំឆ្ងាយពីប៊ូតុងបំភ្លឺ។ ![ឧបករណ៍ Grove temperature sensor ភ្ជាប់ទៅផ្សិតស្តាំ](../../../../../translated_images/km/wio-temperature-sensor.2934928f38c7f79a.webp) ## កម្មវិធីសម្រាប់ឧបករណ៍វាស់សីតុណ្ហភាព ឥឡូវនេះ Wio Terminal អាចត្រូវបានកម្មវិធីដើម្បីប្រើឧបករណ៍វាស់សីតុណ្ហភាពភ្ជាប់។ ### បេសកកម្មកម្មវិធីឧបករណ៍វាស់សីតុណ្ហភាព កម្មវិធីវាស់សីតុណ្ហភាព។ 1. បង្កើតគម្រោងថ្មី Wio Terminal ដោយប្រើ PlatformIO។ ហៅគម្រោងនេះថា `temperature-sensor`។ បន្ថែមកូដក្នុងមុខងារ `setup` ដើម្បីកំណត់ការភ្ជាប់ស៊េរី។ > ⚠️ អ្នកអាចយោងទៅកាន់ [ការណែនាំសម្រាប់បង្កើតគម្រោង PlatformIO ក្នុងគម្រោងទី 1 មេរៀនទី 1 ប្រសិនបើចាំបាច់](../../../1-getting-started/lessons/1-introduction-to-iot/wio-terminal.md#create-a-platformio-project)។ 1. បន្ថែមការពឹងផ្អែកបណ្ណាល័យសម្រាប់បណ្ណាល័យ Grove Humidity and Temperature របស់ Seeed ទៅក្នុងឯកសារ `platformio.ini` របស់គម្រោង៖ ```ini lib_deps = seeed-studio/Grove Temperature And Humidity Sensor @ 1.0.1 ``` > ⚠️ អ្នកអាចយោងទៅកាន់ [ការណែនាំសម្រាប់បន្ថែមបណ្ណាល័យទៅគម្រោង PlatformIO ក្នុងគម្រោងទី 1 មេរៀនទី 4 ប្រសិនបើចាំបាច់](../../../1-getting-started/lessons/4-connect-internet/wio-terminal-mqtt.md#install-the-wifi-and-mqtt-arduino-libraries)។ 1. បន្ថែម កូដ `#include` ខាងលើឯកសារ ពីក្រោម `#include ` រួច៖ ```cpp #include #include ``` នេះនាំចូលឯកសារដែលត្រូវបានប្រើដើម្បីធ្វើការទំនាក់ទំនងជាមួយឧបករណ៍វាស់។ ឯកសារ `DHT.h` មានកូដសម្រាប់ឧបករណ៍វាស់ដោយផ្ទាល់ ហើយការបន្ថែម `SPI.h` ជួយធានាការតភ្ជាប់កូដដែលចាំបាច់ក្នុងការប្រាស្រ័យទាក់ទងទៅឧបករណ៍នេះ។ 1. មុនមុខងារ `setup` សូមប្រកាសឧបករណ៍ DHT៖ ```cpp DHT dht(D0, DHT11); ``` នេះជាការប្រកាសវត្ថុ DHT ដែលគ្រប់គ្រងឧបករណ៍ **D**igital **H**umidity និង **T**emperature។ វាត្រូវបានភ្ជាប់ទៅច្រក `D0` ដោយចំហៀងស្ដាំនៃជំពូក Grove របស់ Wio Terminal។ ប៉ារ៉ាម៉ែត្រទីពីរប្រាប់ថាឧបករណ៍ដែលប្រើគឺជាឧបករណ៍ *DHT11* - បណ្ណាល័យដែលអ្នកប្រើគាំទ្រឧបករណ៍ផ្សេងទៀតផងដែរ។ 1. នៅក្នុងមុខងារ `setup` បន្ថែមកូដដើម្បីកំណត់ការភ្ជាប់ស៊េរី៖ ```cpp void setup() { Serial.begin(9600); while (!Serial) ; // រង់ចាំ Serial ឲ្យបានរៀបចំរួចរាល់ delay(1000); } ``` 1. នៅចុងមុខងារ `setup` បន្ទាប់ពី `delay` ចុងក្រោយ បន្ថែមការហៅដើម្បីចាប់ផ្តើមឧបករណ៍ DHT៖ ```cpp dht.begin(); ``` 1. នៅក្នុងមុខងារ `loop` បន្ថែមកូដដើម្បីហៅឧបករណ៍ និងបញ្ចេញសីតុណ្ហភាពទៅច្រកស៊េរី៖ ```cpp void loop() { float temp_hum_val[2] = {0}; dht.readTempAndHumidity(temp_hum_val); Serial.print("Temperature: "); Serial.print(temp_hum_val[1]); Serial.println ("°C"); delay(10000); } ``` កូដនេះប្រកាសអារាយទទេ 2 ទំនេរ និងផ្ញើទៅហៅ `readTempAndHumidity` នៅលើវត្ថុ `DHT`។ ហៅនេះបំពេញអារាយជាមួយតម្លៃ 2 កំពុង - សំណើមភ្ជាប់នៅរបស់ធាតុកន្លង 0 (ចាំថាអារាយ C++ ចាប់ផ្តើមពីសូន្យ ដូចនេះធាតុខ្សែ 0 គឺធាតុខ្សែ "ដំបូង") ហើយសីតុណ្ហភាពត្រូវបញ្ចូលនៅក្នុងធាតុកន្លង 1។ សីតុណ្ហភាពត្រូវបានអានពីធាតុកន្លង 1 នៃអារាយ ហើយបញ្ចេញទៅច្រកស៊េរី។ > 🇺🇸 សីតុណ្ហភាពត្រូវបានអានជាថ្នាក់សេ្លស្យ យ៉ាងហោចណាស់ សម្រាប់អ្នកអាមេរិក ដើម្បីបម្លែងទៅថ្នាក់ Fahrenheit ចែកតម្លៃ Celsius ដោយ 5, បន្ទាប់មកគុណ 9, បូកបន្ថែម 32។ ឧទាហរណ៍ អានសីតុណ្ហភាព 20°C ក្លាយជា ((20/5)*9) + 32 = 68°F។ 1. បង្កើត និងបញ្ចូលកូដទៅកាន់ Wio Terminal។ > ⚠️ អ្នកអាចយោងទៅកាន់ [ការណែនាំសម្រាប់បង្កើតគម្រោង PlatformIO ក្នុងគម្រោងទី 1 មេរៀនទី 1 ប្រសិនបើចាំបាច់](../../../1-getting-started/lessons/1-introduction-to-iot/wio-terminal.md#write-the-hello-world-app)។ 1. បន្ទាប់ពីបញ្ចូលបាន អ្នកអាចត្រួតពិនិត្យសីតុណ្ហភាពដោយប្រើម៉ូនីទ័រស៊េរី៖ ```output > Executing task: platformio device monitor < --- Available filters and text transformations: colorize, debug, default, direct, hexlify, log2file, nocontrol, printable, send_on_enter, time --- More details at http://bit.ly/pio-monitor-filters --- Miniterm on /dev/cu.usbmodem1201 9600,8,N,1 --- --- Quit: Ctrl+C | Menu: Ctrl+T | Help: Ctrl+T followed by Ctrl+H --- Temperature: 25.00°C Temperature: 25.00°C Temperature: 25.00°C Temperature: 24.00°C ``` > 💁 អ្នកអាចរកឃើញកូដនេះនៅក្នុងថត [code-temperature/wio-terminal](../../../../../2-farm/lessons/1-predict-plant-growth/code-temperature/wio-terminal)។ 😀 កម្មវិធីឧបករណ៍វាស់សីតុណ្ហភាពរបស់អ្នកបានជោគជ័យ! --- **ការបដិសេធ**៖ ឯកសារនេះត្រូវបានបកប្រែដោយប្រើសេវាបកប្រែ AI [Co-op Translator](https://github.com/Azure/co-op-translator)។ ខណៈពេលដែលយើងខិតខំប្រឹងប្រែងដើម្បីមានភាពត្រឹមត្រូវ សូមយល់ថាការបកប្រែម៉ាស៊ីនអាចមានកំហុសឬការខ្វះភាពត្រឹមត្រូវ។ ឯកសារដើមដែលមានភាសាបណ្តើរមានត្រូវបានពិចារណាថាជាភ្ជាប់ដ៏មានអំណាច។ សម្រាប់ព័ត៌មានសំខាន់ សូមផ្ដល់អនុសាសន៍ឲ្យមានការបកប្រែដោយមនុស្សផ្សេងទៀតដែលមានជំនាញ។ យើងមិនទទួលខុសត្រូវចំពោះការយល់ចរចា ឬការបកប្រែក្រឡាត់ណាមួយដែលកើតឡើងពីការប្រើប្រាស់ការបកប្រែនេះទេ។