You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
IoT-For-Beginners/translations/km/1-getting-started/lessons/1-introduction-to-iot/virtual-device.md

24 KiB

កុំព្យូទ័រថ្មីមួយក្រុមហ៊ុន

ជំនួសការទិញឧបករណ៍ IoT រួមជាមួយឧបករណ៍ចាប់សញ្ញា និងឧបករណ៍បញ្ចេញសញ្ញា អ្នកអាចប្រើកុំព្យូទ័ររបស់អ្នកក្នុងការស្ទួចឧបករណ៍ IoT ។ គម្រោង CounterFit អនុញ្ញាតឱ្យអ្នករត់កម្មវិធីមួយនៅលើកុំព្យូទ័រពីរមានតែអ្នកដែលច្បាស់លាស់ថាអ្នកកំពុងស្ទួចឧបករណ៍ IoT ដូចជាឧបករណ៍ចាប់សញ្ញា និងឧបករណ៍បញ្ចេញសញ្ញា ហើយអាចចូលប្រើឧបករណ៍ចាប់សញ្ញា និងឧបករណ៍បញ្ចេញសញ្ញាពីកូដ Python នៅក្នុងកុំព្យូទ័រដដែលដែលត្រូវបានសរសេរដូចដដែលនៅលើកូដដែលអ្នកនឹងសរសេរលើ Raspberry Pi ដែលប្រើឧបករណ៍រឹង។

ការតំឡើង

ដើម្បីប្រើ CounterFit អ្នកត្រូវតែដំឡើងកម្មវិធីឥតគិតថ្លៃមួយចំនួននៅលើកុំព្យូទ័ររបស់អ្នក។

បេសកកម្ម

ដំឡើងកម្មវិធីដែលត្រូវការទាំងអស់។

  1. ដំឡើង Python។ សូមយោងទៅ​កាន់ ទំព័រទាញយក Python សម្រាប់ការណែនាំអំពីការដំឡើង Python កំណែថ្មីបំផុត។

  2. ដំឡើង Visual Studio Code (VS Code) ។ នេះគឺជាឧបករណ៍កែសម្រួលដែលអ្នកនឹងប្រើសរសេរកូដឧបករណ៍វីរុសក្នុង Python ។ សូមយោងទៅកាន់ ឯកសារវិចិត្ររូប VS Code សម្រាប់បណ្តោតទាក់ទងនឹងការដំឡើង VS Code ។

    💁 អ្នកអាចប្រើ IDE ឬកម្មវិធីកែសម្រួល Python ដដែលសម្រាប់មេរៀនទាំងនេះ ប្រសិនបើអ្នកមានឧបករណ៍ចូលចិត្ត ប៉ុន្តែមេរៀននឹងផ្តល់ណែនាំដោយផ្អែកទៅលើការប្រើ VS Code ។

  3. ដំឡើងកម្មវិធីបន្ថែម Pylance របស់ VS Code ។ នេះគឺជាកម្មវិធីបន្ថែមសម្រាប់ VS Code ដែលផ្តល់ការគាំទ្រភាសា Python ។ សូមយោងឯកសារ Pylance extension សម្រាប់ការណែនាំដំឡើងកម្មវិធីបន្ថែមនេះនៅក្នុង VS Code ។

ការណែនាំដំឡើង និងកំណត់រចនាសម្ព័ន្ធកម្មវិធី CounterFit នឹងផ្តល់នៅពេលដែលសមាជិកនៃការងារត្រូវបានបញ្ជាក់ដោយវាត្រូវបានដំឡើងជាលក្ខណៈគម្រោងមួយ។

សួស្តីពិភពលោក

វាជារបៀបប្រពៃណីនៅពេលចាប់ផ្តើមជាមួយភាសាកម្មវិធី ឬបច្ចេកវិទ្យាថ្មីមួយ ដើម្បីបង្កើតកម្មវិធី 'Hello World' — កម្មវិធីតូចមួយដែលបង្ហាញអត្ថបទដូចជា "Hello World" ដើម្បីបង្ហាញថា ឧបករណ៍ទាំងអស់ត្រូវបានកំណត់ត្រឹមត្រូវ។

កម្មវិធី Hello World សម្រាប់ឧបករណ៍ IoT វីរុសនឹងធានាថាអ្នកបានដំឡើង Python និង Visual Studio Code ត្រឹមត្រូវ។ វានឹងភ្ជាប់ទៅ CounterFit សម្រាប់ឧបករណ៍ IoT ចាប់សញ្ញា និងបញ្ចេញសញ្ញាវីរុស។ វានឹងមិនប្រើឧបករណ៍រឹងណាមួយទេ តែភ្ជាប់ក្នុងការបញ្ជាក់ថាភាគីទាំងអស់កំពុងដំណើរការ។

កម្មវិធីនេះនឹងមានក្នុងថតឈ្មោះ nightlight ហើយវានឹងត្រូវបានប្រើជាបន្ត ដោយកូដផ្សេងៗនៅផ្នែកក្រោយនៃបេសកកម្មនេះសម្រាប់បង្កើតកម្មវិធី nightlight ។

កំណត់បរិស្ថាន Python វីរុសមួយ

មួយក្នុងចំណោមលក្ខណៈដ៏សក្ដិសមនៃ Python គឺសមត្ថភាពក្នុងការដំឡើង កញ្ចប់ Pip — ស្លាកកញ្ចប់នៃកូដដែលនរណាម្នាក់បានសរសេរ និងផ្សព្វផ្សាយលើអ៊ីនធឺណេត។ អ្នកអាចដំឡើងកញ្ចប់ Pip មួយទៅកុំព្យូទ័ររបស់អ្នកជាមួយពាក្យបញ្ជាមួយ ហើយប្រើកញ្ចប់នោះក្នុងកូដអ្នក។ អ្នកនឹងប្រើ Pip ដើម្បីដំឡើងកញ្ចប់មួយសម្រាប់និយាយទៅកាន់ CounterFit ។

ដោយលំនាំដើមពេលអ្នកដំឡើងកញ្ចប់ វានឹងអាចប្រើបានគ្រប់ទីកន្លែងលើកុំព្យូទ័ររបស់អ្នក ហើយវាអាចបង្ករបញ្ហាជាមួយកំណែកម្មវិធី - ដូចជា កម្មវិធីមួយចាំបាច់ក្នុងការពឹងផ្អែកលើកំណែម្ដងមួយនៃកញ្ចប់ ដែលបង្ករបានកំហុសពេលអ្នកដំឡើងកំណែថ្មីសម្រាប់កម្មវិធីផ្សេងទៀត។ ដើម្បីដោះស្រាយបញ្ហានេះ អ្នកអាចប្រើ បរិស្ថាន Python វីរុស ដែលជាអចិន្រ្តៃយ៍ Python មួយដែលត្រូវបានចម្លងទៅក្នុងថតឯកជនមួយ ហើយពេលដែលអ្នកដំឡើងកញ្ចប់ Pip វានឹងត្រូវដំឡើងនៅក្នុងថតនោះតែប៉ុណ្ណោះ។

💁 បើអ្នកប្រើ Raspberry Pi អ្នកមិនបានកំណត់បរិស្ថានវីរុសនៅលើឧបករណ៍នោះសម្រាប់គ្រប់គ្រងកញ្ចប់ Pip ទេ ប៉ុន្តែអ្នកកំពុងប្រើកញ្ចប់សកល ដែលកញ្ចប់ Grove ត្រូវបានដំឡើងសកលដោយស្គ្រីបដំឡើង។

បេសកកម្ម - កំណត់បរិស្ថាន Python វីរុស

កំណត់បរិស្ថាន Python វីរុសមួយ ហើយដំឡើងកញ្ចប់ Pip សម្រាប់ CounterFit។

  1. ពីទ្រីមីនែល ឬបន្ទាត់ពាក្យបញ្ជារបស់អ្នក ប្រតិបត្តិការដូចខាងក្រោមនៅទីតាំងអ្នកចូលចិត្ត ដើម្បីបង្កើត និងចូលទៅក្នុងថតថ្មីមួយ៖

    mkdir nightlight
    cd nightlight
    
  2. ឥឡូវនេះ ប្រតិបត្តិការដូចខាងក្រោម ដើម្បីបង្កើតបរិស្ថានវីរុសមួយនៅក្នុងថត .venv

    python3 -m venv .venv
    

    💁 អ្នកត្រូវហៅតែ python3 ដើម្បីបង្កើតបរិស្ថានវីរុស ព្រោះបើអ្នកមាន Python 2 ដំឡើងជាមួយ Python 3 កាល Version ថ្មីបំផុត។ ប្រសិនបើអ្នកមាន Python2 ដំឡើង ហៅ python នឹងប្រើ Python 2 ជំនួស Python 3 ។

  3. បើកបរិស្ថានវីរុស៖

    • នៅលើ Windows:

      • ប្រសិនបើអ្នកប្រើ Command Prompt ឬ Command Prompt តាមរយៈ Windows Terminal ចូរប្រតិបត្តិការដូចខាងក្រោម៖

        .venv\Scripts\activate.bat
        
      • ប្រសិនបើអ្នកប្រើ PowerShell ចូរប្រតិបត្តិការដូចខាងក្រោម៖

        .\.venv\Scripts\Activate.ps1
        

        ប្រសិនបើអ្នកមានកំហុសអំពីការបដិសេធបើក script នៅលើប្រព័ន្ធនេះ អ្នកនឹងត្រូវបើក script ដោយកំណត់យុទ្ធសាស្ត្រអនុវត្តឱ្យសមរម្យ។ អ្នកអាចធ្វើនេះដោយបើក PowerShell ជាអ្នកគ្រប់គ្រង ហើយប្រតិបត្តាក់ពាក្យបញ្ជាលើកក្រោម៖

        Set-ExecutionPolicy -ExecutionPolicy Unrestricted
        

        ពេលដោយស្នើឱ្យបញ្ជាក់។ ចន្ទពីបើក PowerShell ម្ដងទៀត ហើយសាកល្បងម្តងទៀត។

        អ្នកអាចកំណត់យុទ្ធសាស្ត្រអនុវត្តវិញនៅពេលក្រោយ ប្រសិនបើចាំបាច់។ អ្នកអាចអានបន្ថែមនៅលើ ទំព័រ Execution Policies នៅលើ Microsoft Docs

    • នៅលើ macOS ឬ Linux ចូរប្រតិបត្តិការដូចខាងក្រោម៖

      source ./.venv/bin/activate
      

    💁 ពាក្យបញ្ជាខាងលើគួរកត់សម្គាល់ថានឹងត្រូវអនុវត្តនៅទីតាំងដែលអ្នកបានបង្កើតបរិស្ថានវីរុសជាមុន។ អ្នកមិនចាំបាច់ចូលទៅក្នុងថត .venv ទេ។ អ្នកគួររៀបចំបញ្ជាដើម្បីដំណើរការកញ្ចប់ ឬបញ្ជាដើម្បីអនុវត្តកូដ ពីទីតាំងដែលអ្នកបង្កើតបរិស្ថានវីរុស។

  4. ពេលបរិស្ថានវីរុសត្រូវបានបើក យោងទៅ​លំនាំ​ដើម ពាក្យបញ្ជា python នឹងអនុវត្តកំណែ Python ដែលបានប្រើបង្កើតបរិស្ថានវីរុស។ ប្រតិបត្តិការដូចខាងក្រោមដើម្បីទទួលបានកំណែ Python:

    python --version
    

    លទ្ធផលគួរតែមានដូចខាងក្រោម៖

    (.venv) ➜  nightlight python --version
    Python 3.9.1
    

    💁 កំណែ Python របស់អ្នកអាចខុសគ្នា តែបើត្រឹមតែជាកំណែ 3.6 ឬខ្ពស់ជាងនេះ អ្នកសមរម្យហើយ។ ប្រសិនបើមិនដូចនេះ សូមលុបថតនេះ ចាក់កំណែ Python ថ្មី ហើយសាកល្បងម្ដងទៀត។

  5. ប្រតិបត្តិការដូចខាងក្រោមដើម្បីដំឡើងកញ្ចប់ Pip សម្រាប់ CounterFit ។ កញ្ចប់ទាំងនេះរួមមានកម្មវិធី CounterFit មុខងារប្រតិបត្តិ និង shims សម្រាប់ឧបករណ៍ Grove ។ shims ទាំងនេះអនុញ្ញាតឱ្យអ្នកសរសេរកូដដូចជាអ្នកកំពុងកម្មវិធីប្រើឧបករណ៍ និងឧបករណ៍ចាប់សញ្ញា ពីវិស័យ Grove ប៉ុន្តែលោកអ្នកភ្ជាប់ទៅឧបករណ៍ IoT វីរុស ។

    pip install CounterFit
    pip install counterfit-connection
    pip install counterfit-shims-grove
    

    កញ្ចប់ pip ទាំងនេះនឹងត្រូវបានដំឡើងតែក្នុងបរិស្ថានវីរុស ប៉ុន្តែមិនអាចប្រើបានក្រៅបរិស្ថាននេះទេ។

សរសេរកូដ

ពេលបរិស្ថាន Python វីរុសរួចរាល់ អ្នកអាចសរសេរកូដកម្មវិធី 'Hello World'។

បេសកកម្ម - សរសេរកូដ

បង្កើតកម្មវិធី Python មួយ ដើម្បីបោះពុម្ភ "Hello World" ទៅលើថាសកំណត់។

  1. ពីទ្រីមីនែល ឬបន្ទាត់ពាក្យបញ្ជារ បញ្ចូលកូដខាងក្រោមនៅក្នុងបរិស្ថានវីរុស ដើម្បីបង្កើតឯកសារ Python មានឈ្មោះ app.py:

    • នៅលើ Windows ប្រតិបត្តិការដូចខាងក្រោម៖

      type nul > app.py
      
    • នៅលើ macOS ឬ Linux ប្រតិបត្តិការដូចខាងក្រោម៖

      touch app.py
      
  2. បើកថតបច្ចុប្បន្ននៅក្នុង VS Code៖

    code .
    

    💁 ប្រសិនបើទ្រីមីនែលរបស់អ្នកបញ្ជាក់ថា command not found នៅលើ macOS ន័យថា VS Code មិនត្រូវបានបញ្ចូលទៅ PATH របស់អ្នកទេ។ អ្នកអាចបញ្ចូល VS Code ទៅ PATH ដោយអនុវត្តតាមការណែនាំនៅក្នុង ផ្នែក Launching from the command line របស់ឯកសារ VS Code ហើយបន្ទាប់មករាងពាក្យបញ្ជានេះម្ដងទៀត។ VS Code ត្រូវបានបញ្ចូលទៅ PATH ដោយលំនាំដើមនៅលើ Windows និង Linux ។

  3. ពេល VS Code បើកជំនួយវានឹងបញ្ចូលបរិស្ថាន Python វីរុស។ បរិស្ថានវីរុសដែលបានជ្រើសរើសនឹងបង្ហាញនៅខាងក្រោមក្នុង status bar៖

    VS Code showing the selected virtual environment

  4. ប្រសិនបើ VS Code Terminal បានរត់នៅពេល VS Code ចាប់ផ្តើម វានឹងមិនមានបរិស្ថានវីរុសបានបើកនៅក្នុងវា ទេ វិធីងាយស្រួលបំផុតគឺគប់ terminal ដោយប្រើប៊ូតុង Kill the active terminal instance

    VS Code Kill the active terminal instance button

    អ្នកអាចមើលឃើញថាតើ terminal មានបរិស្ថានវីរុសបានបើក ឬនៅដោយឈ្មោះបរិស្ថានវីរុសនឹងត្រូវដាក់ជាគម្របនៅលើបន្ទាត់បញ្ជា។ ឧទាហរណ៍ វាអាចជា:

    (.venv) ➜  nightlight
    

    ប្រសិនបើអ្នកមិនមាន .venv ជាគម្របនៅលើបន្ទាត់បញ្ជា ន័យថាបរិស្ថានវីរុសមិនមានសកម្មក្នុង terminal នោះទេ។

  5. បើក Terminal ថ្មីនៅក្នុង VS Code ដោយជ្រើសរើស Terminal -> New Terminal ឬចុច CTRL+` ។ Terminal ថ្មីនឹងផ្ទុកបរិស្ថានវីរុស ហើយប្រសាយបញ្ជាបញ្ជូលនឹងបង្ហាញនៅក្នុង terminal។ បន្ទាត់បញ្ជានឹងមានឈ្មោះបរិស្ថានវីរុស (.venv)៖

    ➜  nightlight source .venv/bin/activate
    (.venv) ➜  nightlight 
    
  6. បើកឯកសារ app.py ពីស្វែងរក VS Code ហើយបន្ថែមកូដខាងក្រោម៖

    print('Hello World!')
    

    មុខងារ print នឹងបោះពុម្ភអ្វីដែលបានផ្តល់ឱ្យវាទៅលើថាសកំណត់។

  7. ពី terminal VS Code ប្រតិបត្តិការដូចខាងក្រោមដើម្បីរត់កម្មវិធី Python របស់អ្នក៖

    python app.py
    

    លទ្ធផលនឹងមានដូចខាងក្រោម៖

    (.venv) ➜  nightlight python app.py 
    Hello World!
    

😀 កម្មវិធី 'Hello World' របស់អ្នកបានជោគជ័យ!

ភ្ជាប់ទៅ 'ឧបករណ៍រឹង'

ជាជំហ៊ាន Hello World ទីពីរ អ្នកនឹងរត់កម្មវិធី CounterFit ហើយភ្ជាប់កូដរបស់អ្នកទៅកាន់វា។ នេះជាការភ្ជាប់ដូចការតភ្ជាប់ឧបករណ៍ IoT ជាតិទៅកាន់ dev kit ។

បេសកកម្ម - ភ្ជាប់ទៅ 'ឧបករណ៍រឹង'

  1. ពី terminal VS Code បើកកម្មវិធី CounterFit តាមពាក្យបញ្ជាខាងក្រោម៖

    counterfit
    

    កម្មវិធីនឹងចាប់ផ្តើមរត់ ហើយបើកក្នុងកម្មវិបថតអ៊ីនធឺណិតរបស់អ្នក៖

    The Counter Fit app running in a browser

    វានឹងត្រូវសម្គាល់ថា Disconnected ជាមួយ LED នៅមុខខាងស្តាំលើបានបិទ។

  2. បន្ថែមកូដខាងក្រោមទៅកំពូលឯកសារ app.py

    from counterfit_connection import CounterFitConnection
    CounterFitConnection.init('127.0.0.1', 5000)
    

    កូដនេះនាំចូលថ្នាក់ CounterFitConnection ពីម៉ូឌុល counterfit_connection ដែលបានមកពីកញ្ចប់ pip counterfit-connection ដែលអ្នកបានដំឡើងមុននេះ។ វាបន្ទាប់មកបង្កើតការភ្ជាប់ទៅកម្មវិធី CounterFit ដែលកំពុងរត់នៅលើអាសយដ្ឋាន IP 127.0.0.1 ដែលជាអាសយដ្ឋានមួយដែលអ្នកអាចប្រើបាន គ្រប់ពេលដើម្បីចូលទៅកាន់កុំព្យូទ័រផ្ទាល់ខ្លួនដោយកណ្តាល (ភាគច្រើនហៅថា localhost), នៅព្រលៀង 5000 ។

    💁 ប្រសិនបើអ្នកមានកម្មវិធីផ្សេងកំពុងរត់នៅលើព្រលៀង 5000 អ្នកអាចផ្លាស់ប្ដូរតាមកូដរបស់អ្នក ហើយរត់ CounterFit ដោយប្រើ CounterFit --port <port_number> ដើម្បីជំនួស <port_number> ជាមួយព្រលៀងដែលអ្នកចង់ប្រើ។

  3. អ្នកត្រូវបើក terminal ថ្មីមួយក្នុង VS Code ដោយជ្រើសរើសប៊ូតុង Create a new integrated terminal។ នេះដោយសារតែកម្មវិធី CounterFit កំពុងរត់ក្នុង terminal បច្ចុប្បន្ននេះ។

    VS Code Create a new integrated terminal button

  4. ក្នុង terminal ថ្មីនេះ ប្រតិបត្តិការឯកសារ app.py ដូចមុន។ ស្ថានភាព CounterFit នឹងផ្លាស់ប្ដូរទៅជា Connected ហើយ LED នឹងភ្លឺ។

    Counter Fit showing as connected

💁 អ្នកអាចរកឃើញកូដនេះបានក្នុងថត code/virtual-device

😀 ការតភ្ជាប់របស់អ្នកទៅឧបករណ៍រឹងបានជោគជ័យ!


ការបដិសេធ
ឯកសារនេះត្រូវបានបកប្រែក្នុងការប្រើប្រាស់សេវាបកប្រែ AI Co-op Translator។ ខណៈពេលយើងខិតខំប្រឹងប្រែងដើម្បីភាពត្រឹមត្រូវ សូមយល់ថាការបកប្រែដោយស្វ័យ​ប្រវត្តិអាចមានកំហុសឬភាពមិនត្រឹមត្រូវ។ ឯកសារដើមនៅក្នុងភាសាតិចត្រូវតែកត់សម្គាល់ថាជាផ្លូវការតែមួយ។ សម្រាប់ព័ត៌មានដ៏សំខាន់ សូមណែនាំឱ្យប្រើការបកប្រែម由អ្នកជំនាញមនុស្ស។ យើងមិនទទួលខុសត្រូវចំពោះការយល់ច្រឡំ ឬការបកស្រាយខុសពីការប្រើប្រាស់ការបកប្រែនេះឡើយ។