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/bg/1-getting-started/lessons/1-introduction-to-iot/pi.md

26 KiB

Raspberry Pi

Raspberry Pi е едноплатков компютър. Можете да добавяте сензори и изпълнителни устройства, използвайки широка гама от устройства и екосистеми. За тези уроци ще използваме хардуерна екосистема, наречена Grove. Ще програмирате вашия Pi и ще имате достъп до сензорите на Grove с помощта на Python.

Raspberry Pi 4

Настройка

Ако използвате Raspberry Pi като хардуер за IoT, имате два избора - можете да преминете през всички тези уроци и да програмирате директно на Pi, или да се свържете дистанционно към "безглава" версия на Pi и да програмирате от вашия компютър.

Преди да започнете, трябва също да свържете Grove Base Hat към вашия Pi.

Задача - настройка

Инсталирайте Grove Base Hat на вашия Pi и конфигурирайте устройството.

  1. Свържете Grove Base Hat към вашия Pi. Конекторът на шапката пасва върху всички GPIO пинове на Pi, като се плъзга надолу по пиновете, докато не застане стабилно на основата. Тя покрива Pi.

    Поставяне на Grove Hat

  2. Решете как искате да програмирате вашия Pi и преминете към съответния раздел по-долу:

Работа директно на вашия Pi

Ако искате да работите директно на вашия Pi, можете да използвате десктоп версията на Raspberry Pi OS и да инсталирате всички необходими инструменти.

Задача - работа директно на вашия Pi

Настройте вашия Pi за разработка.

  1. Следвайте инструкциите в ръководството за настройка на Raspberry Pi, за да настроите вашия Pi, да го свържете към клавиатура/мишка/монитор, да го свържете към вашата WiFi или Ethernet мрежа и да актуализирате софтуера.

За да програмирате Pi с помощта на сензорите и изпълнителните устройства на Grove, ще трябва да инсталирате редактор, който да ви позволи да пишете код за устройството, както и различни библиотеки и инструменти за взаимодействие с хардуера на Grove.

  1. След като вашият Pi се рестартира, стартирайте Терминала, като кликнете върху иконата Terminal в горното меню или изберете Menu -> Accessories -> Terminal.

  2. Изпълнете следната команда, за да се уверите, че операционната система и инсталираният софтуер са актуални:

    sudo apt update && sudo apt full-upgrade --yes
    
  3. Изпълнете следните команди, за да инсталирате всички необходими библиотеки за хардуера на Grove:

    sudo apt install git python3-dev python3-pip --yes
    
    git clone https://github.com/Seeed-Studio/grove.py
    cd grove.py
    sudo pip3 install .
    
    sudo raspi-config nonint do_i2c 0
    

    Това започва с инсталирането на Git, както и Pip за инсталиране на Python пакети.

    Една от мощните функции на Python е възможността за инсталиране на Pip пакети - това са пакети с код, написан от други хора и публикуван в интернет. Можете да инсталирате Pip пакет на вашия компютър с една команда и след това да използвате този пакет във вашия код.

    Python пакетите на Seeed Grove трябва да бъдат инсталирани от изходния код. Тези команди ще клонират репозитория, съдържащ изходния код за този пакет, и след това ще го инсталират локално.

    💁 По подразбиране, когато инсталирате пакет, той е достъпен навсякъде на вашия компютър, което може да доведе до проблеми с версиите на пакетите - например, едно приложение зависи от една версия на пакет, която се чупи, когато инсталирате нова версия за друго приложение. За да избегнете този проблем, можете да използвате Python виртуална среда, която представлява копие на Python в специална папка, и когато инсталирате Pip пакети, те се инсталират само в тази папка. Вие няма да използвате виртуални среди, когато работите с вашия Pi. Скриптът за инсталиране на Grove инсталира Python пакетите на Grove глобално, така че за да използвате виртуална среда, ще трябва да я настроите и след това ръчно да преинсталирате пакетите на Grove в нея. По-лесно е просто да използвате глобални пакети, особено тъй като много разработчици на Pi ще презапишат чиста SD карта за всеки проект.

    Накрая, това активира интерфейса I2C.

  4. Рестартирайте Pi, като използвате менюто или изпълните следната команда в Терминала:

    sudo reboot
    
  5. След като Pi се рестартира, стартирайте отново Терминала и изпълнете следната команда, за да инсталирате Visual Studio Code (VS Code) - това е редакторът, който ще използвате за писане на код за устройството на Python.

    sudo apt install code
    

    След като това бъде инсталирано, VS Code ще бъде достъпен от горното меню.

    💁 Можете да използвате всеки Python IDE или редактор за тези уроци, ако имате предпочитан инструмент, но инструкциите в уроците ще бъдат базирани на използването на VS Code.

  6. Инсталирайте Pylance. Това е разширение за VS Code, което предоставя поддръжка за Python езика. Вижте документацията за разширението Pylance за инструкции относно инсталирането на това разширение във VS Code.

Дистанционен достъп за програмиране на Pi

Вместо да програмирате директно на Pi, той може да работи в "безглава" конфигурация, тоест без да е свързан към клавиатура/мишка/монитор, и да го конфигурирате и програмирате от вашия компютър, използвайки Visual Studio Code.

Настройка на Pi OS

За дистанционно програмиране, Pi OS трябва да бъде инсталирана на SD карта.

Задача - настройка на Pi OS

Настройте "безглава" версия на Pi OS.

  1. Изтеглете Raspberry Pi Imager от страницата със софтуер за Raspberry Pi OS и го инсталирайте.

  2. Поставете SD карта във вашия компютър, като използвате адаптер, ако е необходимо.

  3. Стартирайте Raspberry Pi Imager.

  4. В Raspberry Pi Imager изберете бутона CHOOSE OS, след това изберете Raspberry Pi OS (Other), последвано от Raspberry Pi OS Lite (32-bit).

    Raspberry Pi Imager с избран Raspberry Pi OS Lite

    💁 Raspberry Pi OS Lite е версия на Raspberry Pi OS, която няма десктоп интерфейс или инструменти, базирани на интерфейс. Те не са необходими за "безглава" версия на Pi и правят инсталацията по-малка и времето за стартиране по-бързо.

  5. Изберете бутона CHOOSE STORAGE, след това изберете вашата SD карта.

  6. Стартирайте Advanced Options, като натиснете Ctrl+Shift+X. Тези опции позволяват предварителна конфигурация на Raspberry Pi OS, преди да бъде записана на SD картата.

    1. Отметнете полето Enable SSH и задайте парола за потребителя pi. Това е паролата, която ще използвате, за да влезете в Pi по-късно.

    2. Ако планирате да се свържете към Pi чрез WiFi, отметнете полето Configure WiFi и въведете вашия WiFi SSID и парола, както и изберете вашата WiFi държава. Не е необходимо да правите това, ако ще използвате Ethernet кабел. Уверете се, че мрежата, към която се свързвате, е същата, на която е вашият компютър.

    3. Отметнете полето Set locale settings и задайте вашата държава и часови пояс.

    4. Изберете бутона SAVE.

  7. Изберете бутона WRITE, за да запишете операционната система на SD картата. Ако използвате macOS, ще бъдете помолени да въведете вашата парола, тъй като инструментът, който записва дискови изображения, изисква привилегирован достъп.

Операционната система ще бъде записана на SD картата, и след като процесът приключи, картата ще бъде извадена от операционната система, и ще бъдете уведомени. Извадете SD картата от вашия компютър, поставете я в Pi, включете Pi и изчакайте около 2 минути, за да се стартира правилно.

Свързване към Pi

Следващата стъпка е дистанционен достъп до Pi. Това може да се направи с помощта на ssh, който е наличен на macOS, Linux и по-нови версии на Windows.

Задача - свързване към Pi

Дистанционен достъп до Pi.

  1. Стартирайте Терминал или Command Prompt и въведете следната команда, за да се свържете към Pi:

    ssh pi@raspberrypi.local
    

    Ако използвате Windows с по-стара версия, която няма инсталиран ssh, можете да използвате OpenSSH. Инструкциите за инсталиране можете да намерите в документацията за инсталиране на OpenSSH.

  2. Това трябва да се свърже към вашия Pi и да поиска паролата.

    Възможността за намиране на компютри в мрежата, използвайки <hostname>.local, е сравнително нова функция за Linux и Windows. Ако използвате Linux или Windows и получите грешки относно невъзможност за намиране на хост името, ще трябва да инсталирате допълнителен софтуер, за да активирате ZeroConf мрежа (също наричана от Apple Bonjour):

    1. Ако използвате Linux, инсталирайте Avahi, като изпълните следната команда:

      sudo apt-get install avahi-daemon
      
    2. Ако използвате Windows, най-лесният начин да активирате ZeroConf е да инсталирате Bonjour Print Services for Windows. Можете също така да инсталирате iTunes for Windows, за да получите по-нова версия на инструмента (която не е налична самостоятелно).

    💁 Ако не можете да се свържете, използвайки raspberrypi.local, можете да използвате IP адреса на вашия Pi. Вижте документацията за IP адрес на Raspberry Pi за инструкции относно различни начини за получаване на IP адреса.

  3. Въведете паролата, която сте задали в Advanced Options на Raspberry Pi Imager.

Конфигуриране на софтуера на Pi

След като се свържете към Pi, трябва да се уверите, че операционната система е актуална, и да инсталирате различни библиотеки и инструменти за взаимодействие с хардуера на Grove.

Задача - конфигуриране на софтуера на Pi

Конфигурирайте инсталирания софтуер на Pi и инсталирайте библиотеките на Grove.

  1. От вашата ssh сесия изпълнете следната команда, за да актуализирате и след това рестартирате Pi:

    sudo apt update && sudo apt full-upgrade --yes && sudo reboot
    

    Pi ще бъде актуализиран и рестартиран. ssh сесията ще приключи, когато Pi се рестартира, така че изчакайте около 30 секунди и след това се свържете отново.

  2. Отново от свързаната ssh сесия изпълнете следните команди, за да инсталирате всички необходими библиотеки за хардуера на Grove:

    sudo apt install git python3-dev python3-pip --yes
    
    git clone https://github.com/Seeed-Studio/grove.py
    cd grove.py
    sudo pip3 install .
    
    sudo raspi-config nonint do_i2c 0
    

    Това започва с инсталирането на Git, както и Pip за инсталиране на Python пакети.

    Една от мощните функции на Python е възможността за инсталиране на Pip пакети - това са пакети с код, написан от други хора и публикуван в интернет. Можете да инсталирате Pip пакет на вашия компютър с една команда и след това да използвате този пакет във вашия код.

    Python пакетите на Seeed Grove трябва да бъдат инсталирани от изходния код. Тези команди ще клонират репозитория, съдържащ изходния код за този пакет, и след това ще го инсталират локално.

    💁 По подразбиране, когато инсталирате пакет, той е достъпен навсякъде на вашия компютър, което може да доведе до проблеми с версиите на пакетите - например, едно приложение зависи от една версия на пакет, която се чупи, когато инсталирате нова версия за друго приложение. За да избегнете този проблем, можете да използвате Python виртуална среда, която представлява копие на Python в специална папка, и когато инсталирате Pip пакети, те се инсталират само в тази папка. Вие няма да използвате виртуални среди, когато работите с вашия Pi. Скриптът за инсталиране на Grove инсталира Python пакетите на Grove глобално, така че за да използвате виртуална среда, ще трябва да я настроите и след това ръчно да преинсталирате пакетите на Grove в нея. По-лесно е просто да използвате глобални пакети, особено тъй като много разработчици на Pi ще презапишат чиста SD карта за всеки проект.

    Накрая, това активира интерфейса I2C.

  3. Рестартирайте Pi, като изпълните следната команда:

    sudo reboot
    

    ssh сесията ще приключи, когато Pi се рестартира. Няма нужда да се свързвате отново.

Конфигуриране на VS Code за дистанционен достъп

След като Pi е конфигуриран, можете да се свържете към него, използвайки Visual Studio Code (VS Code) от вашия компютър - това е безплатен текстов редактор за разработчици, който ще използвате за писане на код за устройството на Python.

Задача - конфигуриране на VS Code за дистанционен достъп

Инсталирайте необходимия софтуер и се свържете дистанционно към вашия Pi.

  1. Инсталирайте VS Code на вашия компютър, като следвате документацията за VS Code.

  2. Следвайте инструкциите в документацията за дистанционно разработване с VS Code чрез SSH, за да инсталирате необходимите компоненти.

  3. Следвайки същите инструкции, свържете VS Code към Pi.

  4. След като се свържете, следвайте инструкциите за управление на разширения, за да инсталирате разширението Pylance дистанционно на Pi.

Hello world

Традиционно, когато започвате с нов програмен език или технология, се създава приложение 'Hello World' - малко приложение, което извежда текст като "Hello World", за да покаже, че всички инструменти са правилно конфигурирани.

Приложението Hello World за Pi ще гарантира, че имате правилно инсталирани Python и Visual Studio Code.

Това приложение ще бъде в папка, наречена nightlight, и ще бъде използвано повторно с различен код в по-късните части на това задание за изграждане на приложението nightlight.

Задача - hello world

Създайте приложението Hello World.

  1. Стартирайте VS Code, директно на Pi или на вашия компютър, свързан към Pi чрез Remote SSH разширението.

  2. Стартирайте терминала на VS Code, като изберете Terminal -> New Terminal или натиснете CTRL+`. Терминалът ще се отвори в домашната директория на потребителя pi.

  3. Изпълнете следните команди, за да създадете директория за вашия код и да създадете Python файл, наречен app.py, вътре в тази директория:

    mkdir nightlight
    cd nightlight
    touch app.py
    
  4. Отворете тази папка в VS Code, като изберете File -> Open... и изберете папката nightlight, след това натиснете OK.

    Диалоговият прозорец за отваряне на VS Code, показващ папката nightlight

  5. Отворете файла app.py от VS Code explorer и добавете следния код:

    print('Hello World!')
    

    Функцията print извежда в конзолата всичко, което ѝ бъде подадено.

  6. От терминала на VS Code изпълнете следното, за да стартирате вашето Python приложение:

    python app.py
    

    💁 Може да се наложи изрично да извикате python3, за да стартирате този код, ако имате инсталиран Python 2 в допълнение към Python 3 (най-новата версия). Ако имате инсталиран Python 2, извикването на python ще използва Python 2 вместо Python 3. По подразбиране, най-новите версии на Raspberry Pi OS имат само Python 3 инсталиран.

    Следният изход ще се появи в терминала:

    pi@raspberrypi:~/nightlight $ python3 app.py
    Hello World!
    

💁 Можете да намерите този код в папката code/pi.

😀 Вашата програма 'Hello World' беше успешна!


Отказ от отговорност:
Този документ е преведен с помощта на AI услуга за превод Co-op Translator. Въпреки че се стремим към точност, моля, имайте предвид, че автоматичните преводи може да съдържат грешки или неточности. Оригиналният документ на неговия изходен език трябва да се счита за авторитетен източник. За критична информация се препоръчва професионален превод от човек. Ние не носим отговорност за каквито и да е недоразумения или погрешни интерпретации, произтичащи от използването на този превод.