7.5 KiB
ត្រួតគ្រងភ្លើងរាត្រីរបស់អ្នកតាមអ៊ិនធឺរណೆត - ឧបករណ៍ IoT មនុស្សពិតប្រៀបធៀបនិង Raspberry Pi
ឧបករណ៍ IoT ត្រូវការត្រូវបានកូដដើម្បីទំនាក់ទំនងជាមួយ test.mosquitto.org ប្រើ MQTT ដើម្បីផ្ញើតម្លៃតាមរយៈការអានឧបករណ៍សង់សារពន្លឺ និង ទទួលបញ្ជាលើដើម្បីត្រួតគ្រង LED។
នៅក្នុងផ្នែកនេះនៃមេរៀន អ្នកនឹងភ្ជាប់ Raspberry Pi របស់អ្នក ឬឧបករណ៍ IoT ម៉ូទ្យួតទៅ MQTT broker ។
តម្លើងកញ្ចប់ MQTT client
ដើម្បីទំនាក់ទំនងជាមួយ MQTT broker អ្នកត្រូវតែតម្លើងបណ្ណាល័យ MQTT តាមរយៈ pip package នៅលើ Pi របស់អ្នក ឬ នៅក្នុងបរិស្ថានវេរីស្វាល់របស់អ្នក ប្រសិនបើអ្នកកំពុងប្រើឧបករណ៍ម៉ូទ្យួត។
ការងារ
តម្លើងកញ្ចប់ pip
-
បើកគម្រោង nightlight នៅក្នុង VS Code ។
-
ប្រសិនបើអ្នកកំពុងប្រើឧបករណ៍ម៉ូទ្យួត វិចិត្រសាល ត្រូវតែប្រាកដថាទTerminal កំពុងដំណើរការបរិស្ថានវេរីស្វាល់។ ប្រសិនបើអ្នកកំពុងប្រើ Raspberry Pi អ្នកមិនចាំបាច់ប្រើបរិស្ថានវេរីស្វាល់ទេ។
-
រត់ពាណិជ្ជកម្មខាងក្រោមសម្រាប់តម្លើងកញ្ចប់ MQTT pip:
pip3 install paho-mqtt
កូដឧបករណ៍
ឧបករណ៍រួចរាល់សម្រាប់កូដ។
ការងារ
សរសេរកូដឧបករណ៍។
-
បន្ថែមការនាំចូលខាងក្រោមទៅកំពូលឯកសារ
app.py៖import paho.mqtt.client as mqttបណ្ណាល័យ
paho.mqtt.clientអនុញ្ញាតឲ្យកម្មវិធីរបស់អ្នកទំនាក់ទំនងតាម MQTT។ -
បន្ថែមកូដខាងក្រោមបន្ទាប់ពីការបញ្ជាក់ឧបករណ៍សង់សារពន្លឺ និង LED៖
id = '<ID>' client_name = id + 'nightlight_client'ជំនួស
<ID>ជាមួយ ID របស់អ្នកដែលមានតែមួយ ដែលនឹងប្រើជាឈ្មោះនៃ client ឧបករណ៍នេះ ហើយបន្ទាប់មកសម្រាប់ប្រធានបទដែលឧបករណ៍នេះបង្ហោះ និង ចុះឈ្មោះ។ broker test.mosquitto.org គឺសាធារណៈ ហើយប្រើប្រាស់ដោយមនុស្សជាច្រើន រួមទាំងនិស្សិតផ្សេងទៀតដែលកំពុងធ្វើកិច្ចការនេះ។ ការមានឈ្មោះ client MQTT និងប្រធានបទដែលមានតែមួយធានាថាកូដរបស់អ្នកមិនជួបប្រទះបញ្ហាជាមួយអ្នកផ្សេងទៀត។ អ្នកនឹងត្រូវការប្រើ ID នេះនៅពេលអ្នកបង្កើតកូដម៉ាស៊ីនមេនៅក្រោយក្នុងកិច្ចការនេះផងដែរ។💁 អ្នកអាចប្រើគេហទំព័រដូចជា GUIDGen ដើម្បីបង្កើត ID ដែលទេរ។
client_nameគឺជាឈ្មោះទ្រឹងតែមួយសម្រាប់ client MQTT នេះនៅលើ broker។ -
បន្ថែមកូដខាងក្រោមក្រោមកូដថ្មីនេះ ដើម្បីបង្កើតអប្សារកម្មវិធី MQTT client ហើយភ្ជាប់ទៅ MQTT broker៖
mqtt_client = mqtt.Client(client_name) mqtt_client.connect('test.mosquitto.org') mqtt_client.loop_start() print("MQTT connected!")កូដនេះបង្កើតអប្សារមួយភ្ជាប់ទៅ MQTT broker សាធារណៈ ហើយចាប់ផ្តើមលំហូរការកំណត់ប្រតិបត្តិនៅក្នុងថ្រក ក្រោយ ដែលស្ដាប់សារនៅលើប្រធានបទដែលបានចុះឈ្មោះ។
-
រត់កូដដូចដែលអ្នកបានរត់កូដពីផ្នែកមុននៃកិច្ចការ។ ប្រសិនបើអ្នកកំពុងប្រើឧបករណ៍ម៉ូទ្យួត វិចិត្រសាល ទៅរាល់ CounterFit app កំពុងដំណើរការហើយឧបករណ៍សង់សារពន្លឺ និង LED ត្រូវបានបង្កើតនៅលើ pin ត្រឹមត្រូវ។
(.venv) ➜ nightlight python app.py MQTT connected! Light level: 0 Light level: 0
💁 អ្នកអាចរកឃើញកូដនេះនៅក្នុងថត code-mqtt/virtual-device ឬ ថត code-mqtt/pi។
😀 អ្នកបានភ្ជាប់ឧបករណ៍របស់អ្នកទៅ MQTT broker ដោយជោគជ័យ។
ការបដិសេធ៖
ឯកសារនេះត្រូវបានបកប្រែដោយប្រើសេវាកម្មបកប្រែ AI Co-op Translator។ ខណៈពេលយើងខិតខំប្រឹងប្រែងសម្រាប់ភាពត្រឹមត្រូវ សូមយកចិត្តទុកដាក់ថាការបកប្រែម៉ាស៊ីនអាចមានកំហុស ឬការបញ្ចូលមិនត្រឹមត្រូវ។ ឯកសារដើមនៅក្នុងភាសាបុរាណគួរត្រូវបានគេយកជាអ្នកផ្សព្វផ្សាយស្រេចត្រូវ។ សម្រាប់ព័ត៌មានសំខាន់ៗ និយោជកបកប្រែជាជំនាញមនុស្សគឺបានណែនាំ។ យើងមិនទទួលខុសត្រូវចំពោះការយល់ច្រឡំ ឬការបកប្រែខុសឆ្គងណាមួយដែលកើតឡើងពីការប្រើប្រាស់ការបកប្រែនេះទេ។