Raspberry PI (на русском)
Site: | TalTech Moodle |
Course: | Arukate süsteemide elementide projekteerimine ja väljatöötamine (Virumaa) |
Book: | Raspberry PI (на русском) |
Printed by: | Guest user |
Date: | Friday, 22 November 2024, 9:21 AM |
Description
1. Знакомство с Raspberry PI
Raspberry Pi - это одноплатный компьютер размером с банковскую карту, который подключается к телевизору и клавиатуре. Raspberry Pi можно использовать в проектах электроники и для многих других вещей, которые может делать простой настольный ПК.
Одна из главных и привлекательных особенностей Raspberry Pi — наличие на плате аппаратных портов ввода/вывода GPIO, которые открывают перспективы использования его в робототехнических проектах и устройствах «умного дома».
Характеристики модели Raspberry PI 3 В+:
Процессор | |
Broadcom | |
BCM2837 | |
4 | |
1400 МГц | |
Оперативная память | |
LPDDR2 | |
1 Гб | |
Накопители данных | |
нет | |
Интерфейсы, разъемы | |
HDMI | |
display serial interface, camera serial interface, USB 2.0 x4 | |
Коммуникации | |
Wi-Fi, Ethernet (RJ-45) | |
1000 Мбит/с | |
Программное обеспечение | |
без ОС | |
Дополнительная информация | |
микро-SD слот, Bluetooth 4.2 | |
Габариты | |
85 мм | |
56 мм |
Включение Raspberry PI и вход в систему
Для работы с Raspberry PI потребуется клавиатура и мышь с USB интерфейсом. Необходимо подключить эти устройства к двум доступным USB портам Raspberry PI.
Также потребуется вставить флеш
карту с операционной системой в соответствующий разъем, который отмечен
на схеме устройства как “SD Card”. На флеш карте, установмте
операционную систему Raspbian на базе Linux Debian
При использовании внешнего дисплея с VGA интерфейсом, необходимо сначала подключить VGA кабель дисплея к переходнику HDMI-VGA, а затем присоединить этот переходник к HDMI порту Raspberry PI.
Для подключения питания к
Raspberry PI достаточно присоединить кабель блока питания к microUSB
разъему, а затем включить блок питания в сеть. Для надежной работы платы блок питания
должен быть стабилизированным и выдавать 5 В при токе не менее 1 А.
Raspbian
Для Raspberry Pi 3 операционные системы существуют самые разные. Это связано с тем, что процессор данного компьютера построен на архитектуре ARM, для которого создано огромное количество дистрибутивов. Но что еще важно – в ядре Linux уже давно есть поддержка оборудования, включенного в RPi. При желании на RPi3 возможно инсталлировать в том числе и Android, и даже Windows 10 IoT.
Но наиболее популярной ОС для Raspberry 3 является Raspbian. Она основана на популярном дистрибутиве Debian. Её отличительная особенность заключается в том, что в ней "из коробки" существует почти полная поддержка Raspberry PI. Так, уже после её установки пользователю доступен Python и модуль для работы с GPIO.
Установка операционной системы на Raspberry Pi 3 – это процесс не трудный. Для этого понадобится следующее:
- сам Raspberry PI;
- образ операционной системы для Raspberry Pi 3;
- карта памяти на 8 гигабайт;
- компьютер и специальное ПО на нём.
Инсталлировать системы на RPi3 можно несколькими способами. Если
нужно две ОС на Raspberry Pi 3, тогда рекомендуется использовать утилиту
NOOBS.
Процесс установки Raspbian см. raspberrypi.org или raspbian.org
Удаленное управление Raspberry Pi
Можно настроить удаленное управление Raspberry Pi, отсоединитв от микрокомпьютера мышь, клавиатуру и монитор. А затем просто подключаться к Raspberry PI со своего основного компьютера.
SSH (Secure Shell) — сетевой протокол, позволяющий производить удаленное управление операционной системой через шифрованное соединение, а также передавать файлы, транслировать видео- и аудиопотоки... Через SSH можно запустить на компьютере терминал для выполнения консольных команд на другом компьютере.
VNC (Virtual Network Computing) — более продвинутый протокол, обеспечивающий удаленный доступ к рабочему столу другого компьютера по сети.
Для этого используются модули сервера и клиента. Серверный модуль запускается на компьютере, который должен управляться удаленно. Клиентский модуль запускается на компьютере, с которого будет осуществляться удаленное управление.
В отличие от SSH, по VNC предоставляется доступ не только к консоли, но ко всему компьютеру, включая графический интерфейс.
Как настроить с помощью SSH и VNC
2. GPIO
Аббревиатура GPIO с английского расшифровывается как: General Purpose Input/Output — интерфейс, который содержит Входы и Выходы общего назначения, к которым можно подключать разнообразные исполнительные устройства, датчики, дисплеи, контроллеры, разные модули и разную периферию.
NB! GPIO подключены напрямую к процессору, и неграмотное подключение может повредить сам процессор.
Raspberry Pi 3 не имеет аналоговых входов/выходов.
Особенности работы с GPIO
- Максимальный суммарный ток обоих выводов 3,3В равен 50 мА, напрямую можно подключать устройства только с током потребления меньше 50 мА.
- Максимальный суммарный ток обоих выводов 5В равен 300 мА.
- На выводы GPIO нельзя подавать напряжение выше 3,3В - можно спалить вход или весь процессор.
- Выводы 14 и 15 по умолчанию выполняют альтернативную функцию и являются выводами UART (RXD и TXD), поэтому при включении на них присутствует высокий уровень 3,3В.
- Все настраиваемые выводы GPIO (кроме SDA и SCL) по умолчанию являются входами и поэтому имеют высокое сопротивление
RPi.GPIO
В новом дистрибутиве Raspbian она уже установлена.
GPIO.BCM — это более низкий уровень и обращается напрямую к номерам каналов на процессоре
GPIO.setmode(GPIO.BOARD)
GPIO.setmode(GPIO.BCM)
Выбирается режим работы пинов (вход или выход):
GPIO.setup(channel, GPIO.IN)
GPIO.setup(channel, GPIO.OUT)
Осуществляют подтяжку вывода к 3,3 В или к земле:
GPIO.setup(channel,GPIO.IN, GPIO.PUD_UP)
GPIO.setup(channel,GPIO.IN, GPIO.PUD_DOWN)
Для выходов можно определить начальное положение: 0 или 1.
GPIO.setup(channel, GPIO.OUT, GPIO.LOW)
GPIO.setup(channel, GPIO.OUT, GPIO.HIGH)
Для того, чтобы прочитать вход, существует такая команда:
GPIO.input(channel)
Для того чтобы произвести запись на выход, есть такая команда:
GPIO.output(channel, state)
Программа выдаст ошибку при попытке настроить пин, состояние которого не было возвращено в исходное при помощи GPIO.cleanup().
GPIO.setwarnings(False) # Отключить предупреждения
GPIO.setwarnings(True) # Включить предупреждения
3. Breadboard
Для конструирования и отладки прототипов самых различных устройств используются макетные платы (другое название – беспаечные монтажные платы и breadboard). Они бывают нескольких разновидностей и отличаются по размерам и некоторым другим конструктивным особенностям.
На сегодняшний момент существуют следующие основные способы монтажа, которыми используются в электронике и робототехнике на этапе создания прототипов:
- Пайка. Для этого применяют специальные платы с отверстиями, в которые вставляются детали и соединяются друг с другом пайкой (с использованием паяльника) и перемычками.
- Накрутка. По данной технологии контактные соединения устройств
объединяются с макетной платой при помощи обмотки чистого провода к
штыревому контакту.
- Breadboard - это беспаечная монтажная плата. Это отличная платформа
для разработки прототипов или временных электросхем, с использованием
которой вам не понадобится паяльник и все связанные с этим проблемы и
затраты времени на распайку.
Прототипирование (prototyping) - это процесс разработки и тестирования модели вашего будущего устройства. Если вы не знаете как будет себя вести ваше устройство при определенных заданных условиях, лучше сначала создать прототип и проверить его работоспособность.
Беспаечные монтажные платы используют как для создания простых электросхем, так и для сложных прототипов.
Преимущества breadboard
- Возможность проводить отладочные работы большое количество раз изменяя модификацию схем и способы подключения устройств;
- Возможность соединения нескольких плат в одну большую, что позволяет работать с более сложными и большими проектами;
- Простота и быстрота создания прототипов;
- Долговечность и надежность.
Так откуда появилось это название - breadboard? Много лет назад,
когда электронные компоненты были большими и неуклюжими, многие
"самодельщики" в своих "гаражах" собирали схемы с использованием
подставок для нарезки хлеба
Макетная плата для монтажа без пайки имеет пластиковое основание с множеством отверстий (стандартное расстояние между ними составляет 2,54 мм). Внутри конструкции расположены ряды металлических пластин. На каждой пластине имеются клипсы (5 в ряду), которые спрятаны в пластиковой части установки. Включение проводов выполняется именно в эти клипсы. При подключении проводника к одному из отдельных отверстий, контакт одновременно подключается и ко всем остальным контактам отдельного ряда.
Некоторые макетные платы включают также по две линии питания с каждой из сторон. Обычно «красная линия» используется для подачи «+» напряжения, «синяя» — для «-». За счет наличия двух шин питания на плату могут подаваться два различных уровня напряжения.
Для упрощения ориентации на макетную плату также нанесены цифровые и буквенные обозначения, которыми можно руководствоваться, создавая, например, инструкцию для подключения.
Внимание! Беспаечные макетные платы абсолютно недопустимо использовать с напряжением 220В!
Видео:
Источники
https://arduinomaster.ru/platy-arduino/maketnaya-plata-arduino/
http://arduino-diy.com/arduino-breadboard-kak-ispolzovat
4. Команды терминального окна
При работе с Raspberry Pi нужно будет часто пользоваться терминалом (его также называют командной строкой).
Навигация по файловой системе
команда pwd показывает рабочую директориюls используется, чтобы показать содержимое директории
cd переместиться из одной директории в другую.
mkdir создание новой папка (директория)
Пример
touch создать новый файл
Пример
Отдельные файлы можно копировать при помощи команды cp, после которой через пробел пишется имя файла. Кроме того, этой командой можно пользоваться для переименования файлов
Пример
rm удаление файла, после команды через пробел пишется имя удаляемого файла
Перемещение файлов осуществляется при помощи команды mv:
По умолчанию в Raspbian и многие другие дистрибутивы Linux встроен простой текстовый редактор под названием nano.
Чтобы запустить nano, достаточно лишь вписать его название в командной строке.
Управление ПО на Raspberry Pi
ПО для Linux идет в так называемых «пакетах» – программах, которые можно загрузить из интернета и установить, просто написав в терминале небольшую команду.
Для загрузки и установки этих пакетов используется, как правило, пакетный менеджер, который загружает и устанавливает не только само ПО, но и вспомогательные программы, которые называются «зависимостями».
Дистрибутив Raspbian использует пакетный менеджер под названием apt.
Чтобы управлять ПО, вам нужно залогиниться администратором (его также называют «суперпользователем»). Для этого в начале команды нужно вписать sudo (это сокращение от «superuser do»).
sudo apt-get update - обновить список доступных пакетов и их версий (пакетный менеджер хранит этот список в файловой системе Raspberry). Для использования этой команды необходимо подключение к интернету
Далее вам нужно обновить ПО, установленное на вашем устройстве, и для этого нужно воспользоваться командой upgrade. Она обновит все установленные пакеты до самых последних версий: sudo apt-get upgrade
Установка ПО
Чтобы установить ПО, название которого Вы знаете, в терминал нужно вписать следующую команду:
sudo apt-get install <название ПО>
Запуск ПО
Чтобы запустить программу напрямую из терминала, просто впишите ее название
pi@raspberry:~ $ python
Это откроет интерпретатор Python.Удаление ПО
Чтобы удалить ПО с Raspberry Pi
pi@raspberry:~ $ sudo apt-get remove <название ПО>
Эта команда не удаляет файлы, связанные с ПО – вроде логов и конфигурационных файлов. Если Вы не собираетесь использовать их в дальнейшем, то можете воспользоваться командой purge, которая удаляет и само ПО, и вспомогательные файлы:
pi@raspberry:~ $ sudo apt-get purge <название ПО>
Не удаляйте пакеты, которые не устанавливали сами. Это могут быть важные пакеты, идущие вместе с операционной системой Linux, и их удаление может привести к падению системы.
Изменение настроек Raspberry Pi
pi@raspberry:~ $ sudo raspi-config
Этот инструмент называется «raspi-config», и он используется для изменения самых распространенных настроек. Некоторым из этих опций нужна перезагрузка. Если Вы поменяли хотя бы одну настройку, то после нажатия на кнопку <Finish> «raspi-config» спросит, нужно ли сделать перезагрузку.
Инструмент «raspi-config» позволяет менять следующие настройки:
- Expand Filesystem – расширение файловой системы
- Change User Password – изменения пароля пользователя
- Boot Options – выбор интерфейса, который включится при загрузке устройства
- Wait for Network at Boot – здесь задается, нужно ли ждать подключения к сети при загрузке ОС
- Internationalisation Options – здесь настраиваются часовой пояс, раскладка клавиатуры, язык и региональные настройки
- Enable Camera – включение/выключение камера-модуля Raspberry Pi
- Add to Rastrack – добавление Raspberry Pi к проекту Rastrack
- Overclock – изменение тактовой частоты Raspberry Pi
- Advanced Options – дополнительные опции
- About raspi-config – информация об инструменте raspi-config
Отображение информации об аппаратном обеспечении
cat /proc/cpuinfo информация о процессоре устройства
cat /proc/meminfo отображает подробную информацию о памяти Raspberry Pi
cat /proc/partitions показывает размер и количество разделов на Вашей карте SD или HDD
cat /proc/version показывает, какую версию Pi Вы используете
Дополнительная информация может быть получена с помощью ряда команд vcgencmd, которые могут выявить такие вещи, как температуру процессора (vcgencmd measure_temp), vcgencmd get_mem arm && vcgencmd get_mem gpu покажет распределение памяти между процессором и GPU
Выключение и перезагрузка Raspberry Pi
Для выключения и перезагрузки Raspberry Pi есть гораздо лучший способ, чем простое отключение питания. Отключение питания равнозначно тому, как если бы Вы выключили свой компьютер нажатием на кнопку Power или даже отключением от розетки, а это запросто может привести к повреждению файлов.
Поэтому, чтобы выключить Raspberry Pi, просто впишите в терминал следующую команду:
pi@raspberry:~ $ sudo poweroff
После этого в терминале должно появиться следующее:
Чтобы перезагрузить Raspberry Pi, воспользуйтесь следующей командой:
pi@raspberry:~ $ sudo reboot