Тарифы Услуги Сим-карты

Подключаем Raspberry Pi к монитору ноутбука. Если у вас нет дисплея HDMI. Добавление кнопки сброса

Я давно следил на ХабраХабр за проектом Raspberry Pi и твердо решил заполучить свой мини-компьютер. Когда начался предзаказ, я воспользовался им практически сразу, однако только 17 июня 2012 года мне на Email пришло сообщение от RSComponents.Com о возможности заказа моего экземпляра Raspberry Pi. Итого прошло около месяца с момента предзаказа.

В этот же день я создал заказ (кстати, в то время уже можно было заказать «официально» в Российскую Федерацию) и стал ждать свою «малину». Информационное письмо обещало отгрузку в течение максимум 6 недель, но в этот срок я так и не получил свою плату. Во время звонка в московское представительство RS, менеджер фирма дал понять, что поставки скоро будут, но когда - неизвестно.

17 августа мне на email пришло сообщение от сотрудницы Московского RS, что моя плата доставлена в офис и ее можно забирать (т.к. заказать из RS с доставкой на дом нельзя, потому что DHL не доставляет посылки частным лицам). Собственно говоря, в этот же день я и получил свой компьютер Raspberry Pi!


Весь необходимый набор комплектующих был куплен мною заранее (собственно говоря, все позаимствовал от других устройств). Я использовал:

  • 4Gb Class6 SD-карту от Transcend
  • NoName usb-зарядник на 1А с MicroUSB кабелем
  • HDMI кабель Hama
  • Ethernet-кабель
В качестве клавиатуры и мыши я использовал свой рабочий USB-Reciever Unifying от Logitech. Подключил Raspberry к монитору с помощью HDMI-DVI кабеля.

Действо первое. Установка ОС.

В качестве ОС для Raspberry была выбрана Raspbian (как я понял из форумов, практически все сборки сделаны на основе Debian, поэтому выбор, на мой неискушенный взгляд, не особо богат). Данная ОС широко описана в интернете, а также оптимизирована специально для RPi.
Образ ОС можно скачать с официального сайта: 2012-07-15-wheezy-raspbian.zip . Образ заархивирован в ZIP, сам имеет расширение IMG. Его необходимо разархивировать.
Также, потребуется утилита Win32DiskImager , запустить которую необходимо с правами администратора.

Устанавливаем вашу SD карту в кард-ридер, смотрим в Проводнике, какую букву она получила в системе (чтобы ненароком не затереть данные на другом носителе).
В программе Win32DiskImager выбираем скачанный ранее образ Raspbian, выбираем нужную букву носителя и жмем Write. На предложенное предостережение отвечаем “Yes”.
Пойдет процесс заливки ОС на карту и разбиения ее на разделы:

Процесс закончится сообщением об успехе:

Теперь необходимо немного подредактировать файл config.txt в корне карты памяти – это конфигурационный файл системы для Raspberry Pi. Обратите внимание, что приведенные мною настройки актуальны для ЖК мониторов с разрешением экрана 1920*1080.

Следует раскомментировать параметр disable_overscan=1 (если Вы не планируете использовать RCA выход).
Советую также установить фиксированное разрешение, для этого раскомметруйте строки hdmi_group и hdmi_mode . Значение параметра hdmi_mode следует изменить в соответствии с таблицей, которая приведена (также, по этой ссылке приведены другие параметры, которые, возможно, будут Вам полезны). Например, для монитора с разрешением 1920*1080 следует написать hdmi_mode=16 .

Не забываем сохранить изменения, отсоединяем SD-карту и вставляем ее в Raspberry Pi.
Подключаем к плате питание и видим на мониторе процесс загрузки, который нас (во всяком случае - пока) мало интересует. Наблюдаем радостное мигание лампочек Raspberry Pi:

При первой загрузке автоматически будет запущена программа настройки системы raspi_config :

  1. Выполняем команду expand_rootfs , которая расширит root раздел на всю SD-карту.
  2. Входим в раздел configure_keyboard и устанавливаем наиболее подходящий тип клавиатуры. Я выбрал Logitech Cordless Desktop
  3. Затем, входим в раздел change_pass устанавливаем новый пароль для пользователя pi (обратите внимание, что вводимые символы не отображаются вообще, даже в виде звездочек!).
  4. Устанавливаем дополнительные локали с помощью пункта change_locale (я не стал этого делать и оставил единственную локаль по умолчанию - en_GB UTF8).
  5. Устанавливаем часовой пояс (set_timezone ). Например, если Вы живете в Москве, необходимо найти пункт Europe, а в нем - Moscow
  6. Memory_split устанавливаем в соотвествии с собственным желанием, рекомендую отвести под video – 32Mb, если планируете пользоваться графическим интерфейсом.
  7. Обязательно активируем ssh !
  8. Если хотим, чтобы при загрузке Raspbian автоматически запускалась графическая среда – активируем опцию boot_behaviour .
В конце нажимаем +[F] и выбираем пункт Finish , соглашаясь на перезагрузку устройства.

На этом установка и первичная настройка системы завершена!

Следующая часть будет интересна тем, кто особо не знаком с Linux (как был и я).

Действо второе. Установка вебсервера и настройка Samba.

Не забывайте, что если Ваш Raspberry подключен в сеть, то можно использовать SSH доступ, что во много раз удобнее.

Перед началом работы обновим apt-get :
sudo apt-get update

Установка Web-сервера:
Устанавливаем MySQL:
sudo apt-get install mysql-server mysql-client
Когда запросит установить пароль для root – укажите любой пароль, который Вы запомните.

Устанавливаем Lighttpd:
sudo apt-get install lighttpd
С этого момента Rpi будет откликаться тестовой страницей, если набрать ее IP адрес в браузере любого компьютера в сети!

Устанавливаем PHP5:
sudo apt-get install php5-cgi

Теперь необходимо активировать PHP в настройках сервера. Открываем файл в редакторе nano:
sudo nano /etc/lighttpd/lighttpd.conf
Пункт server_modules должен выглядеть вот так:
server.modules = ("mod_access", "mod_fastcgi", "mod_alias", "mod_compress", "mod_redirect", "mod_rewrite",)
А в самый конец файла добавьте вот это:
fastcgi.server = (".php" => (("bin-path" => "/usr/bin/php5-cgi", "socket" => "/tmp/php.socket")))
Сохраняем, нажав +[X], [Y] и .

Осталось отредактировать файл конфигурации PHP5:
sudo nano /etc/php5/cgi/php.ini
Находим и раскоментируем (удаляем символ ";") строку cgi.fix_pathinfo = 1 . Сохраняем файл.

После всего проделанного, перезапускаем Lighttpd, выполнив команду:
sudo /etc/init.d/lighttpd restart

Установка и настройка Samba
Установим Samba:
sudo apt-get install samba samba-common-bin
Так как моя Rpi находится в домашней сети, я решил не устанавливать пароль на доступ к папкам, а просто настроил публичный шаринг для всей сети.
Для этого открываем файл smb.conf:
sudo nano /etc/samba/smb.conf
Вместо всего имеющегося содержимого пишем:
workgroup = WORKGROUP guest ok = yes netbios name = Raspberry security = share browseable = yes path = /var/www writeable = yes browseable = yes
Сохраняем. Перезапускаем Samba:
sudo /etc/init.d/samba restart
С этого момента в вашей сети появилось новое устройство RASPBERRY, которое имеет папку www.
В ней Вы можете создать любые файлы, которые будут доступны для просмотра во всей сети с помощью браузера.

Кстати! Гораздо удобнее управлять шарингом файлов и папок с помощь программы SWAT, которая предоставляет веб-интерфейс.
Установить ее очень просто:
sudo apt-get install swat
Панель управления SWAT будет расположена по адресу: http://:901
Логин и пароль соответствуют Вашей учетной записи (той, которой Вы пользуетесь для SSH)

Действо третье. Монтирование носителя файлов.

В качестве носителя я решил использовать обычную флэшку, которую подключил в один из USB портов Raspberry Pi. При желании можно подключить к Rpi и внешний жесткий диск, однако надо будет организовать для него отдельное питание, так как USB порты платы на такие нагрузки не рассчитаны и, в лучшем случае, жесткий диск просто не «заведется». Мне же объема флэшки (16Гб) должно вполне хватить.

Подключаем носитель и выполняем команду:
sudo fdisk -l
Команда покажет все устройства, которые подключены к нашему устройству. Ищем в списке нужное устройство по его объему. Например, у меня нужная строка выглядит вот так:
Disk /dev/sda: 16.0 GB, 16013852672 bytes
Искомый путь к устройству - /dev/sda , запомните его!

Запускаем fdisk для форматирования носителя:
sudo fdisk /dev/sda
Вначале удаляем существующие разделы командой d (выбираем нужные разделы цифрами), затем создаем новый с помощью команды n (все значения принимаем по умолчанию), сохраняем проделанную работу с помощью команды w .

Создаем файловую систему ext2 на носителе:
sudo mkfs -t ext2 /dev/sda1

Монтируем:
sudo mount -t ext2 /dev/sda1

Теперь необходимо обеспечить автоматическое монтирование носителя при каждой загрузке Raspbian. Для этого создаем папку:
sudo mkdir /mnt/flash
Отрываем файл настроек:
sudo nano /etc/fstab
и добавляем в него строку:
/dev/sda1 /mnt/flash ext2 defaults 0 0
Сохраняем и перезагружаем устройство. При загрузке носитель должен автоматически примонтироваться, что можно проверить командой:
df
Она выведет список примонтированных устройств с указанием точек их монтирования.

Кстати! Рекомендую установить также файловый менеджер Midnight Commander для работы с файлами через консоль:
sudo apt-get install mc
Если Вы пользуетесь Putty для работы с SSH, то для корректной работы MC Вам необходимо сделать настройку. В настройках Putty установите значение Remote character set в разделе Translation на «UTF-8»:

Действо четвертое. Установка Transmission и настройка закачек

Мы подобрались к цели данного топика - установке и настройке Torrent-клиента на нашем устройстве. Я остановил свой выбор на Transmission.

Устанавливаем Transmission:
sudo apt-get install transmission-daemon
Создаем директорию для закачек, для неоконченных закачек и для торрентов на подключенном носителе и даем права на запись:
sudo mkdir /mnt/flash/torrent sudo mkdir /mnt/flash/torrentfiles sudo mkdir /mnt/flash/incomplete sudo chmod 777 /mnt/flash/torrent sudo chmod 777 /mnt/flash/torrentfiles sudo chmod 777 /mnt/flash/incomplete
Редактируем настройки:
sudo nano /etc/transmission-daemon/settings.json
Здесь необходимо поменять на указанные значения следующие параметры:
"cache-size-mb": 2; "download-dir": "/mnt/flash/torrent", "incomplete-dir": "/mnt/flash/incomplete", "preallocation": 2, "rpc-password": "любой удобный вам пароль (при перезапуске демона будет зашифрован)", "rpc-username": "pi", "rpc-whitelist-enabled": false, "speed-limit-down": 3000, "speed-limit-up": 1000,
К сожалению на высоких скоростях скачивания и отдачи Raspberry начинает очень сильно тормозить, поэтому экспериментальным путем были выявлены те ограничения, которые Вы видите в настройках выше.

Перезапускаем Transmission командой:
sudo /etc/init.d/transmission-daemon restart
С этого момента у Вас установлен рабочий Torrent-клиент, веб-панель управления которым доступна по адресу: http://:9091, логин pi, пароль Вы установили в конфигурационном файле.

Не забудьте также добавить папку /mnt/flash/torrent в сетевую шару через Samba, чтобы скачанные файлы можно было смотреть на других устройствах, например, на Вашем медиаплеере:


Название фильма намеренно изменено, такого фильма не существует

Стоит отметить, что с отдачей файлов по сети Raspberry Pi, на мой взгляд, справляется отлично - при копировании файла с Raspberry Pi на компьютер, максимальная скорость достигла 7Мб/сек, что практически соответствует максимальной скорости чтения для использованной флэшки.

Эпилог

На этом моя статья заканчивается. Raspberry Pi обеспечила огромный толчок в моем изучении многих аспектов работы с OC Linux. В планах есть еще много задумок, касающихся Raspberry Pi, которые я постараюсь реализовать и описать в моих дальнейших статьях.

Буду рад замечаниям об ошибках от более опытных пользователей!

Я не особо большой знаток Linux (почти новичок), поэтому буду очень рад конструктивной критике в комментариях.

Все, кто хотел, давно купили себе Raspberry Pi 3, а я ждал непонятно чего 🙂 Однако недавно этот компьютер попал ко мне в руки, поэтому хочу поделится впечатлениями и полезными (для кого-то) советами по его настройке.

Аппаратная часть

Компьютер заказывался на AliExpress сразу с корпусом и блоком питания (Model B, 1 ГБ ОЗУ). Карта памяти, microSD SanDisk 16 GB class 10, уже валялась дома. С учётом её цены весь «системный блок» стоил примерно 3000 р.

В качестве экрана был подключён обычный телевизор Full HD (кабель HDMI в кладовке случайно завалялся). Из периферии изначально подключил только клавиатуру и мышь, подсоединив их к USB-портам.

Raspberry в определённых случаях ощутимо греется (показывая при этом иконку-градусник в правом верхнем углу экрана), поэтому в корпусе почти сразу были просверлены дополнительные вентиляционные отверстия. Эффективность комплектных радиаторов так себе, нужно искать что-то посерьёзнее, если собираетесь нагружать компьютер на 100%.

Операционная система

Выбор ОС для Raspberry Pi 3 - вопрос деликатный. Если кто-то не в курсе, то здесь ARM-процессор. Т. е. обычный дистрибутив Linux на устройство не встанет, нужна специально подготовленная сборка.

Собственно, из-за относительно специфичного железа в дальнейшем будет много других сложностей с программами и т. п.

Существует несколько официальных и неофициальных сборок Linux для этого мини-компьютера. Какую из них использовать - зависит от поставленной задачи. В моём случае Raspberry Pi 3 будет использоваться, как обычный домашний компьютер для работы и развлечений (звучит несколько амбициозно). Попробовав несколько ОС, я остановился на основном официальном дистрибутиве, Raspbian Stretch 9.1 (новейшем на тот момент). На мой взгляд, он быстрее, стабильнее и универсальнее остальных.

Установка ОС на «Малину» очень проста. Скачиваем образ, распаковываем файл.img и записываем его на карту памяти с помощью специальной программы (для Windows это, например, Win32 Disk Imager).

Более подробное описание процесса записи ОС легко найти в Интернете.

После окончания записи карту памяти нужно вставить в соответствующий слот Raspberry Pi. Затем включаем устройство в электрическую сеть и начинаем первоначальную настройку (вставка блока питания в розетку - штатный способ включения этого компьютера).

Если вы подумали, что Raspberry Pi 3 сможет на равных конкурировать с обычным домашним компьютером за 20 000 р., то это совсем не так. Работать Raspberry будет гораздо медленнее, а ряд задач для него вообще недоступен. Однако с определёнными функциями мини-компьютер справляется неплохо. Например, с ролью терминала для не слишком «тяжёлых» веб-приложений он справится отлично.

Настройка Raspberry Pi 3 (ОС Raspbian)

При первом запуске даже ничего не нужно выбирать и нажимать. Система уже практически готова к работе. После перезагрузки появляется рабочий стол.

Хотя радоваться здесь особо нечему - просто придётся больше вещей настраивать уже в установленной системе 😉

Сначала подключаемся к Интернету. При проводном соединении Интернет уже должен работать сам. В моём случае используется Wi-Fi, поэтому нужно нажать на красные кресты на панели задач (иконка сетевых подключений), выбрать беспроводную сеть и ввести пароль. Всё почти так же, как в других операционных системах.

Она позволит выполнять все дальнейшие действия в терминале с правами суперпользователя. В противном случае придётся добавлять sudo в начале каждой второй строки (а то и чаще).

Все остальные команды приведены в статье без sudo. Т. е. предполагается, что вышеописанная рекомендация была выполнена.

Сразу обновляем пакетную базу и прошивку устройства:

Apt update apt upgrade rpi-update

Затем заходим в настройки Raspberry Pi: «Пуск» (значок малины) > Preferences > Raspberry Pi Configuration. Нажимаем «Change Password…» и задаём новый пароль (одновременно для пользователя и суперпользователя). Это позволит избежать некоторых проблем в будущем.

По умолчанию в Raspbian создан пользователь pi с паролем raspberry.

Настраиваем дальше. Hostname (имя компьютера в сети) можно не менять. У меня изображение выводится не на весь экран (толстая чёрная рамка по периметру), поэтому параметр Underscan переключаю в положение «Disabled». На вкладке «Performance» изменяем значение GPU Memory на 128 (можно и 64 оставить, но некоторым приложениям может не хватить).

Переходим во вкладку «Localization». Нажимаем «Set Locale…». Выбираем Language: ru (это даст хоть какой-то перевод ОС на русский). Настраиваем время через «Set Timezone…». В моём случае Europe/Moscow. Выбираем основную раскладку клавиатуры через «Set Keyboard…». Советую United States/English (US), т. к. к ней все уже привыкли. На всяких случай заходим в «Set Wi-Fi Country…» и тоже выбираем RU.

После всего этого нажимаем «OK» внизу окна и соглашаемся на перезагрузку.

Для интереса посмотрим сколько ОЗУ занимает операционная система в новом состоянии (диспетчер задач вызывается через Ctrl + Alt + Del или из меню приложений). 92 МБ! Вот бы Windows столько занимала 🙂

Настройка внешнего вида

Для удобства приводим рабочий стол к более привычному виду (в данном случае к виду подобному Windows). Правый клик по панели, «Panel Settings». Edge переключаем в положение «Botton» - панель перемещается вниз. Переходим во вкладку «Panel Applets», удаляем лишнее, добавляем нужное. Удалил Ejecter и CPU Usage Monitor. Добавил Minimize All Windows и Keyboard Layout Handler (переключатель раскладки клавиатуры).

Через последний добавляем русскую раскладку. Правый клик по флагу, «Keyboard Layout Handler Setting». Снимаем флажок «Keep system layouts», нажимаем «Добавить», выбираем ru. Меняем сочетание клавиш для переключения раскладок кнопкой под надписью Change Layout Options.

Кнопка «Закрыть» в этом окне не работает, но работает крестик в углу. Это старый баг многих сборок Linux (странно, что его не убрали до сих пор).

На панели есть значок Bluetooth. Отключаем через него модуль Bluetooth, если не собираемся подключать какие-либо беспроводные устройства.

Меняем набор значков слева. Правый клик на одном из значков, «Application Launch Bar Settings». Вытаскиваем пару ярлыков из меню на рабочий стол. Меняем обои (предпочитаю что-то более однотонное):

Numlock

К этому времени не работающая цифровая клавиатура уже начала раздражать. При загрузке системы Numlock выключен (в других версиях Linux такое тоже бывает). Каждый раз включать его не хочется. Пора исправить ситуацию. Устанавливаем программу numlockx:

Apt install numlockx

Добавляем её в автозагрузку. Например, открываем файловый менеджер, переходим в папку /home/pi/.config , создаём там файл autostart (без расширения) с единственной строкой: @numlockx -on .

Можете использовать любой другой способ добавления в автозагрузку.

Проблема с USB-флешками и жёсткими дисками

На первый взгляд, со съёмными носителями всё в порядке. Они корректно определяются при подключении, все файлы отображаются и нормально открываются. Только вот записывать на флешки ничего нельзя, т. к. подключаются они в режиме «readonly» (за редким исключением).

Решается проблема просто, установкой дополнительного драйвера:

Apt install ntfs-3g

После установки требуется перезагрузить систему.

Проверялись все накопители, имеющиеся в распоряжении - запись, изменение и удаление стали работать (не только в NTFS, но и в FAT32).

На одном USB-накопителе небольшого объёма только что отформатированном в Windows проблемы почему-то не было изначально.

Программы в комплекте

Настало время посмотреть, что уже установлено в системе. Просто пробежимся по меню приложений (консольные утилиты в расчёт не берём).

В разделе «Программирование» находится больше десятка приложений собственно для программирования (оставим их без внимания).

Категория «Офис» содержит исключительно программы из пакета LibreOffice (знаменитого бесплатного аналога Microsoft Office). Полезные приложения для работы с документами. Создание и правка не очень сложных файлов в них на Raspberry Pi 3 происходит с минимальными притормаживаниями.

Раздел «Интернет» содержит, на мой взгляд, два полезных приложения. Первое - VNC Viewer. Неплохой вариант управления удалёнными устройствами. Скорость работы приемлемая. Второе - браузер Chromium. Практически тот же Chrome, только без излишеств. Сайты работают с разной скоростью. Некоторые прямо быстро, некоторые очень туго (зависит от типа сайта и его оптимизации). Например, ВКонтакте листается с небольшими рывками, а Одноклассники уже идут со скрипом (хотя в целом пользоваться можно и тем и другим). Даже YouTube в нём сносно работает (установлено специальное расширение). В полноэкранном режиме видео, конечно, дёргается, а вот в широкоэкранном смотрится нормально. Т. е. на этом компьютере более или менее доступна работа в Интернете (по крайней мере, она комфортнее, чем на среднем смартфоне).

При работе на Raspberry Pi 3 в большинстве приложений заметен небольшой разрыв кадра (нижняя часть изображения обновляется чуть позже верхней). Эта неприятность связана с отсутствием вертикальной синхронизации (tearing). На обычных компьютерах проблема легко решается, но для Raspbian решения я не нашёл. Опять же многое упирается в специфическое железо.

В «Стандартных» минимальный набор полезных приложений: калькулятор, терминал, просмотрщик файлов PDF, блокнот, архиватор (который почти ничего не умеет), диспетчер задач, программа для просмотра изображений, файловый менеджер и утилита для создания копии системы - SD Card Copier.

Всё необходимое есть, лишнего немного, остальное ставим по потребностям.

Skype

Со Skype в Linux почти всегда были какие-то заморочки. Нынешняя версия является просто оболочкой для веб-интерфейса. Вместо того, чтобы пытаться запустить её под Raspbian, просто воспользуемся веб-версией напрямую.

В Raspberry Pi 3 отсутствует разъём mini-jack для микрофона. Вариант 1 - найти микрофон с разъёмом USB. Вариант 2 - подключить дешёвую внешнюю USB-звуковую карту с привычными разъёмами. В моём случае всё было ещё проще (хотя не совсем) - веб-камера оказалась со встроенным микрофоном, т. е. два устройства заняли только одно гнездо.

Откроем Skype. Через Chromium заходим по адресу web.skype.com/ru и выполняем вход в свой аккаунт. Затем нажимаем на зелёный замок в адресной строке: разрешаем камеру, микрофон и Flash. Микрофон работать всё равно не хотел. Оказалось, что нужно было кликнуть по значку видеокамеры (в адресной строке справа), затем вместо по «По умолчанию» выбрать правильное аудиоустройство.

Сделал тестовый видеозвонок знакомым. Звук в обе стороны проходит нормально, видео тоже передаётся (немного притормаживает).

Расширение офисных приложений

Пакет LibreOffice, конечно, неплох, но сейчас он на английском, не проверяет правописание и не очень правильно отображает документы MS Office, т. к. в системе нет ни одного шрифта из Windows. Открываем терминал, устанавливаем русскую локализацию, орфографический словарь и шрифты:

Apt install libreoffice-l10n-ru hunspell hunspell-ru ttf-mscorefonts-installer

Вот так гораздо привычнее:

Наш штатный архиватор умеет работать только с типичными для Linux форматами, поэтому нужно помочь ему, добавив поддержку более ходовых типов архивов (7z, RAR и ещё парочки):

Apt install p7zip-full unrar-free

Установим более продвинутые программы для чтения электронных книг Evince и FBReader, чтобы открывать разные типы электронных книг:

Apt install evince fbreader

Evince у меня не появился в меню самостоятельно, поэтому пришлось зайти в «Параметры» > «Main Menu Editor» и отметить его флажком.

Настройка локальной сети

Если у вас есть локальная сеть, то Raspberry Pi 3 уже подключен к ней (в случае открытой и корректно настроенной сети). Чтобы иметь к ней удобный доступ, в стандартном файловом менеджере нужно открыть меню «Перейти», выбрать «Сеть», открыть меню «Закладки», нажать «Добавить в закладки», переключить вид «Дерево директорий» на «Точки входа». Теперь ссылка на сеть будет под рукой при каждом открытии файлового менеджера.

Также можно установить другой файловый менеджер, например, Thunar.

Вроде, всё неплохо: сетевые ресурсы доступны, файлы открываются, копируются и даже удаляются. Только при входе чуть ли не в каждую сетевую папку система запрашивает пароль (который мы меняли в самом начале работы с ОС). Другие компьютеры в моей сети (и на Windows, и на Linux) заходят на те же ресурсы без паролей. Убрать ввод этого пароля пока не удалось (ввожу каждый раз).

Для того, чтобы компьютеры, входящие в ЛВС, отображались на верхнем уровне, правим настройки Samba /etc/samba/smb.conf . Только файл нужно открыть с правами суперпользователя. Например, вводим в терминале следующую команду (предварительно выполнив sudo -i ):

Leafpad /etc/samba/smb.conf

Меняем значение параметра workgroup на название нашей рабочей группы, сохраняем изменения, делаем перезагрузку. Теперь при заходе в «Сеть» можно сразу переходить к нужному компьютеру (не открывая ещё две папки).

Настройки сети приведены для примера. В других случаях данный подход к работе с ЛВС может просто не сработать.

Подключение к сетевому принтеру

Раз уж у нас есть офисные программы, то и печать документов, скорее всего, потребуется. В рассмотренной выше сети установлен единственный принтер, подключённый к ПК на Windows 10. Принтер уже сетевой, но нужно как-то добавить его в Raspbian. Для этого установим программы CUPS и samba-client:

Apt install samba-client cups

CUPS не пустит нас в настройки просто так. Поэтому нужно добавить нашего текущего пользователя в группу lpadmin:

Usermod -aG lpadmin pi

Управление в CUPS происходит через веб-интерфейс. Вводим в браузер адрес 127.0.0.1:631 , затем переходим в раздел «Администрирование», нажимаем «Добавить принтер». Вводим имя пользователя pi и пароль, который задали при настройке системы (в начале статьи). Отмечаем «Windows Printer via SAMBA» и нажимаем «Продолжить».

Дальше важный момент. В поле «Подключение» нужно ввести адрес принтера в сети. В данном случае smb://192.168.1.6/hp1010 . Из чего он состоит: smb:// - протокол SAMBA, 192.168.1.6 - локальный адрес компьютера, к которому подключён принтер, hp1010 - сетевое имя принтера.

Адрес компьютера в ЛВС должен быть статическим, а имя принтера желательно задавать только латиницей (без пробелов).

Нажимаем «Продолжить». Вводим название принтера для нашей системы и на всякий случай ставим флажок «Разрешить совместный доступ к этому принтеру», нажимаем «Продолжить». Выбираем драйвер для принтера (список впечатляет), нажимаем «Добавить принтер». Сохраняем параметры. Печатаем для теста какой-нибудь документ и радуемся жизни.

Работа с графикой

На Raspberry Pi 3 можно установить классические графические редакторы GIMP и Inkscape:

Apt install gimp inkscape

Работают они в целом корректно, но медленно. Несложные манипуляции с не очень большими картинками мини-компьютер потянет (обрезать фотографию, цвета поправить, надпись добавить, логотип нарисовать). Серьёзные графические задачи, естественно, требуют серьёзной мощности.

Просмотр видео

Вот здесь всё опять упирается в нестандартное железо. Привычные плееры просто на нём не работают (либо работают с большими проблемами). Получилось найти только две программы, которые справляются с проигрыванием видео: OMXPlayer и Kodi. Использовать будем обе.

OMXPlayer уже установлен в системе, но он консольный, поэтому пользоваться им не слишком удобно. Чтобы видеофайлы открывались двойным кликом делаем следующее. Кликаем по файлу правой кнопкой, выбираем «Открыть с помощью…». Переходим на вкладку «Пользовательская команда». В верхней строке вводим omxplayer -b . Отмечаем флажками «Выполнить в эмуляторе терминала» и «Установить выбранное приложение по умолчанию для данного типа файла». В имени приложения пишем, например, omxplayer . Нажимаем «OK».

Эти действия нужно проделать для каждого расширения видеофайлов.

Переключатся между окнами OMXPlayer не даёт. Клавиши управления: «q» - выход, «-» и «+» - регулировка громкости, «←» и «→» - перемотка.

Kodi - это довольно серьёзный медиацентр. Понимает значительно больше кодеков, чем OMXPlayer, имеет встроенный DLNA-клиент и другие плюшки. Для начала его нужно установить:

Wi-Fi у Raspberry слабоват, поэтому видео приличного размера по сети смотреть через него не получится. Позаботьтесь о проводном подключении.

С Kodi на Raspberry Pi 3 можно смотреть весьма увесистые фильмы. Проверял на файле Full HD размером 40 ГБ с битрейтом 40 Мб/с (по DLNA). За 2 с лишним часа ни одного подтормаживания или других проблем. Некоторые Smart-телевизоры при проигрывании этого же файла с того же DLNA-сервера зависали на середине видео (приходилось выключать/включать).

Прослушивание музыки

С воспроизведением звука всё гораздо проще. Поддерживаются многие проигрыватели. Штатный OMXPlayer тоже умеет играть музыку, но в этом нет необходимости. Был установлен Audacious, который ничем особо не перегружен, но имеет привычный вид и нормальный функционал:

Apt install audacious

Торрент-клиент

Здесь тоже всё нормально. Установил Deluge:

Apt install deluge

Почему именно его? Потому что привык к нему. Deluge не лучше и не хуже других. Просто выполняет свою работу как полагается. Для теста скачал через него Raspbian Stretch Lite. Никаких проблем не заметил.

Игры

Конечно, сложно назвать Raspberry Pi игровой платформой, однако поиграть на нём вполне возможно. Речь по большей части идёт о запуске игр, выходивших на старых приставках. Долгие попытки собрать что-то вроде RetroPie в виде отдельного приложения (а не целой ОС) не увенчались успехом. Поиск отдельных приложений для каждой приставки тоже довольно нудное дело, поэтом остановился на Mednafen:

Apt install mednafen

Первым делом переходим в «Global Settings» и выбираем Video Driver sdl вместо opengl (ну нет у «Малины» нормальной поддержки OpenGL). После этого образы игр (ROMs) начнут нормально работать (не все, конечно).

С нормальной скоростью заработали только NES и Sega Mega Drive (хотя большинство платформ не проверялось, т. к. нет к ним интереса).

Можно добавлять игры в интерфейс Mednaffe и запускать их оттуда, а можно даже не запускать Mednaffe - просто открывать файл с образом игры, как любой другой, двойным кликом (не для всех платформ сработает).

Играть в приставочные игры на клавиатуре неудобно, а под рукой как раз есть геймпад от Xbox 360. Контроллер работает без дополнительных драйверов, остаётся только настроить кнопки. Для этого в Mednaffe открываем раздел «Systems», переходим к нужной приставке, открываем подраздел «Input», нажимаем «Controller Setup». Выбираем «Port 1» (первый контроллер), делаем двойной клик в столбце Key и нажимаем на геймпаде кнопку, соответствующую надписи в столбце Action/Button (для каждой строки).

Если настройки не применились, запускаем игру нужного формата из интерфейса (новые параметры должны вступить в силу), после чего настройки уже будут действовать и при запуске двойным кликом.

Несколько «родных» игр, заслуживающих внимания, тоже можно установить. Например, Битва за Веснот (напоминает HOMM III) и OpenTTD (напоминает SimCity 2000). Обе игры переведены на русский язык.

Apt install wesnoth openttd

Последний штрих

После установки многих программ остаётся всякий «мусор». Хорошо бы его удалить следующей командой (ещё и немного места освободится):

Apt autoremove

Дополнительные сведения

  • Снимок экрана делается клавишей Print Screen и автоматически сохраняется в домашнюю папку (/home/pi).
  • Если хотите немного повысить скорость работы Raspberry Pi 3, подключите его к экрану с низким разрешением (например, 1366×768).
  • Приложения можно поискать в штатной утилите «Add / Remove Software», которая чем-то похожа на Synaptic.
  • Для подключения к монитору без разъёма HDMI может использоваться дешёвый переходник с HDMI на DVI-D или такой же кабель.
  • Raspberry может показывать на экране три специальных значка-индикатора (независимо от установленной ОС и среды рабочего стола): молния - низкое напряжение, наполовину красный термометр - высокая температура чипа (80–85 градусов), полностью красный термометр - критическая температура (выше 85 градусов).

Заключение

В целом мини-компьютером я остался доволен. За свою стоимость он предоставляет очень даже широкий функционал (в статье рассмотрены только некоторые варианты его использования). Для опытных пользователей Linux настройка Raspberry Pi 3 покажется несложной. Остальные без проблем смогут использовать уже настроенную систему.

Кликать мышью по окнам можно хоть кота научить.

Помимо энтузиастов Raspberry может быть интересен и компаниям с большим парком машин. Например, покупка 20 классических системных блоков для колл-центра по 12 000 р. и покупка 20 «малиновых» компьютеров по 3000 р. - это совсем разные вещи (180 000 р. экономии).

Только мониторы нужно брать хотя бы с DVI-D - ещё 15 000 вычитаем.

При домашнем использовании Raspberry Pi 3 хорошо справится с ролью бесшумного медиасервера, ретро-приставки, вспомогательного компьютера для другой комнаты и т. д и т. п…

Наконец до меня добралась очередная посылка из с одноплатным компьютером Raspberry Pi 3 Model B, базовыми аксессуарами для него и еще кое-какой мелочевкой.

А в этой статье будет описан процесс знакомства с микрокомпьютером – от распаковки до первого запуска операционной системы и выполнения первоначальных настроек.

Для начала работы понадобится обязательно:

  • Карта памяти microSD объемом от 8Гб

Это то, из чего будет состоять микрокомпьютер в сборе.

Кроме того, нужно иметь следующую периферию:

  • Монитор или телевизор с HDMI-входом
  • Проводная клавиатура
  • Проводная мышь
  • Картридер для microSD-карт или устройство, способное выполнять его функцию

Экран для вывода информации, устройства ввода, картридер для записи образа операционной системы.

А для большего удобства не лишним будет иметь:

  • Bluetooth-клавиатура
  • Bluetooth-мышь

Управлять “малинкой” беспроводными мышью и клавиатурой удобнее, чем их проводными собратьями.

Небольшой обзор Raspberry Pi 3 Model B

Микрокомпьютер Raspberry Pi 3 Model B поставляется в картонной коробке красно-белой расцветки с фирменным логотипом в виде малины.

Комплект поставки – сама плата Raspberry Pi 3 в антистатическом пакете и небольшая брошюра-памятка по технике безопасности (не накрывать “малинку” во включенном виде, не разгонять, избегать перегрева, не использовать в сырых и влажных местах, избегать механического повреждения печатной платы и т.д.).

Стандартное средство для форматирования Windows почему-то не подходит: при попытке запуска Raspbian с отформатированной через него карты памяти будет выдаваться ошибка “error resizing existing FAT partition”.

Шаг 2. Запись дистрибутива Raspbian

После подготовки microSD-карты необходимо скачать дистрибутив Raspbian с официального сайта.

Скачанный образ дистрибутива заархивирован, так что после скачивания архив нужно распаковать в любую папку.

Распакованный образ Raspbian нужно записать на подготовленную microSD-карту, для чего можно воспользоваться бесплатной утилитой Rufus .

Шаг 3. Первый запуск Raspbian на Raspberry Pi

На этом процедура установки завершена.

Карту памяти с записанным на нее Raspbian нужно установить в Raspberry Pi и подключить к микрокомпьютеру монитор и питание, после чего произойдет первый запуск операционной системы.

Теперь можно подключить Raspberry Pi к беспроводной Wi-Fi сети, а если есть Bluetooth мышь и клавиатура, то провести их сопряжение с микрокомпьютером для большего удобства использования.

Ставим обновления

После установки Raspbian и подключения к интернету посредством Ethernet или Wi-Fi соединения нужно на всякий случай обновить все пакеты до актуальной версии.

Делается это через терминал посредством ввода двух команд:

Sudo apt-get update sudo apt-get upgrade

Первая команда загружает сведения о доступных обновлениях пакетов, вторая загружает непосредственно сами обновления.

На всякий случай обновим еще прошивку Raspberry Pi:

Sudo rpi-update

По завершению установки обновлений Rapsberry Pi нужно перезагрузить:

И если все сделано правильно, то после перезагрузки система уведомит нас о том, что она была обновлена до актуальной версии.

Многие команды в *nix-системах начинаются с sudo: это означает, что исполнение команды запускается с правами суперпользователя, что является аналогом “Запуска от имени администратора” в Windows.

Убираем черные поля по краям экрана

В некоторых случаях после загрузки Raspbian пользователь обнаруживает черные поля по краям экрана.

Это значит, что неверно выставлена развертка.

Исправляется буквально в два клика мышкой путем правки файла конфигурации через текстовый редактор:

Sudo leafpad

Открываем файл /boot/config.txt и ищем в нем строку:

#disable_overscan=1

И убираем символ #, превращая ее из комментария в исполняемую команду:

Disable_overscan=1

На этом все. После перезагрузки интерфейс Raspbian будет отображаться на полном экране без каких-либо черных полей.

Настройки локализации

По умолчанию Raspbian настроен под британского пользователя.

Изменить настройки локализации можно в настройках, как через графический интерфейс (Menu -> Parameters -> Raspberry Pi Configuration ), так и через консоль:

Sudo raspi-config

Мне показалось, что менять настройки через графический интерфейс удобнее, поэтому в этом тексте я буду рассматривать его.

Итак, запускаем “Raspberry Pi Configuration” .

На вкладке System нажимаем “Change Password…” и задаем root-пароль. По умолчанию он отсутствует, что в дальнейшем может помешать выполнению некоторых команд.

Переключаемся на вкладку Localisation .

“Set Locale…” – выбираем Country: RU (Russia), Character Set: UTF-8. Язык системы (пункт Language) можно поменять на “ru (Russian)”, а можно оставить как есть. Локализация Raspbian выполнена не на 100%, и при выборе русского языка придется довольствоваться мешаниной из русского и английского текстов в интерфейсе.

“Set Timezone…” – здесь нужно выбрать подходящий часовой пояс. Поскольку территория России захватывает и Европу и Азию, то в зависимости от географического положения в “Area” выбирается либо “Asia”, либо “Europe”, а в “Location” – один из городов, часовой пояс в котором соответствует часовому поясу вашей местности.

Например, на Урале часовой пояс UTC/GMT+5, что принято называть “Екатеринбургским часовым поясом”. В графе “Location” в Raspbian нет населенного пункта Ekaterinburg (Yekaterinburg), но есть населенный пункт Ashkhabat, живущий по тому же часовому поясу. Поэтому я выставляю его, и на системных часах начинает отображаться мое местное время.

“Set Keyboard…” – не трогаем, о раскладках клавиатуры речь пойдет дальше.

“Set WiFi Country” – тут выставляем “RU Russia”, хотя большой необходимости в этом нет, встроенный адаптер работает и на локальных настройках по умолчанию. Скорее всего, эта настройка важна для некоторых стран третьего мира, где стандарты Wi-Fi жестко ограничиваются в милитаристских целях.

Раскладка клавиатуры

Нужные раскладки клавиатуры и возможность переключения между ними добавляются вводом консольной команды:

Setxkbmap us,ru -option grp:alt_shift_toggle

В данном случае добавляются русская и английская раскладка. Английская стоит как основная, а переключение между ними происходит по сочетанию клавиш Alt+Shift.

Можно изменить сочетание на Ctrl+Shift, если так привычнее, внеся соответствующую правку в эту команду.

Проблема в том, что Raspbian не запоминает эту команду, и после каждой перезагрузки Raspberry Pi ее придется вводить заново. А это неудобно.

Поэтому открываем текстовый редактор:

Sudo leafpad

И правим через него системные настройки клавиатуры, хранящиеся в файле /etc/default/keyboard.

Нужно заменить строки:

XKBLAYOUT="gb" XKBOPTIONS=""

XKBLAYOUT="us,ru" XKBOPTIONS="grp:alt_shift_toggle,grp_led:scroll"

Теперь добавим в систему графический индикатор раскладки клавиатуры:

Sudo apt-get install gxkb

И поместим его в автозагрузку. Это тоже делается через редактирование текстовых файлов:

Sudo leafpad

Открываем файл /home/pi/.config/lxsession/LXDE-pi/autostart и дописываем в его конец строку:

Теперь осталось только перезагрузить Raspberry Pi для применения изменений:

Впечатления от использования Raspberry Pi 3

Первое, на что обращаешь внимание при использовании Raspberry Pi – полная бесшумность его работы.

Нет, понятно, что если используется полностью пассивное охлаждение и нет ни воздушных кулеров, ни даже обычного HDD на основе движущихся частей, то издавать шум просто нечему.

Но сам факт существования подобного компьютера – настоящего, полноценного компьютера, и при этом полностью бесшумного – поначалу потрясает воображение.

Теперь что касается производительности.

Мощности Raspberry Pi 3 Model B хватает на выполнение простых офисных и мультимедийных задач: комфортную работу в офисном пакете, просмотр видео и серфинг не очень тяжелых сайтов в интернете.

А вот просмотр онлайн-видео дается “малинке” уже тяжеловато, а при одновременном открытии 4-5 вкладок ютуба Raspbian начинает немного подвисать.

По слухам, с воспроизведением онлайн-видео все обстоит более чем хорошо в специально заточенных под мультимедийную составляющую операционных системах – например, OpenELEC. Тему использования Raspberry Pi в качестве домашнего медиацентра я планирую обязательно рассмотреть в будущем.

Ну а дистрибутив Raspbian предназначен для обучения программированию (недаром в нем “из коробки” уже предустановлены IDE для программирования на Java и Python, и такая забавная штука как Scratch – среда программирования, позволяющая составлять алгоритмы в визуально-графической форме) и для управления подключенной по GPIO периферией. Это тоже интересная тема, и к использованию GPIO-интерфейса Raspberry Pi я еще вернусь в будущем.

Заключение

Вот так прошло мое знакомство с микрокомпьютером Raspberry Pi 3.

В следующих статьях цикла будут рассмотрены такие темы как:

  • совместное использование Raspberry Pi и Arduino
  • сравнение Raspberry Pi с другими присутствующими на рынке одноплатными компьютерами

А для тех, кто заинтересовался перспективой покупки Raspberry Pi 3 хочу напомнить, что адекватная цена на этот микрокомпьютер колеблется в пределах $35-$40.

Именно по такой цене Raspberry Pi можно приобрести в Китае, в то время как у наших “серых” дилеров розничная стоимость этого микрокомпьютера начинается от 3000 рублей и может достигать 4500 рублей.

Не кормите кучу посредников – заказывайте Raspberry Pi по честной цене в Китае!

Установить операционную систему на Raspberry pi 2 очень просто ведь разработчики микрокомпьютера обо всем позаботились и выпустили NOOBS (New Out Of the Box Software). NOOBS - это простой установщик операционных систем, который уже содержит в себе Raspbian linux, Arch, OpenELEC, Pidora, RISC OS, RaspBMC, Ubuntu MATE, OSMC.

Что нужно для первого запуска Raspberry pi 2?

  • microSD-карта не менее 4 Гб, классом не ниже 4;
  • блок питания 5В, не менее 1,8 А;
  • HDMI-кабель;
  • Монитор с HDMI;
  • USB мышь и клавиатура;
  • ПК с SD картридером для записи установщика на microSD;
  • Ethernet подключение к интернету.

Пошаговая установка ОС на Raspberry pi 2.

  • Форматируем microSD в FAT32. Здесь подойдет любая программа для управления разделами дисков. Например в Debian удобно использовать partitionmanager (apt-get install partitionmanager).
  • Скачиваем ZIP установщика NOOBS с официального сайта Raspberry pi.
  • Распаковываем файлы из ZIP архива в корень microSD.
  • Вставляем microSD в Raspberry pi, подключаем Ethernet и HDMI кабели, мышь и клавиатуру, включаем блок питания.
  • При первом запуске появится список операционных систем, которые можно установить на ваш Raspberry pi. Не обязательно ограничивать себя одной ОС, можно выбрать хоть все (если позволяет объем microSD). Для новичков я рекомендую выбрать Raspbian linux и дистрибутив открытого медиацентра OpenELEC (Open Embedded Linux Entertainment Centre). При последующих запусках микрокомпьютера, система будет спрашивать, какую из ОС загружать. Нажимаем кнопку Install и ждем пока выбранные дистрибутивы скачаются и установятся на microSD карту.

После того, как процесс установки завершится, загрузится меню настройки Raspbian (raspi-config). Здесь настраиваем регион, язык, дату и время и др. Можно будет перенастроить ОС позже запустив команду sudo raspi-config в терминале. Нажимаем Finish.

Теперь можно запускать наш Raspberry pi. При каждом запуске Raspbian linux будет предложено ввести имя пользователя: pi
По умолчанию Raspbian root password: raspberry
Затем запускаем графическую оболочку командой: startx

Если помимо ОС Raspbian linux вы установили медиацентр, вы получаете массу видеофильмов, ТВ-передач, подкастов и др. бесплатно из коробки. Но на английском языке. Для возможности просмотра фильмов и и ТВ-передач на русском нужно установить русскоязычный XBMC плагин, например, seppius, который можно скачать .

  • Скачиваем этот ZIP-файл и кидаем его на флешку.
  • Вставляем ее в Raspberry pi.
  • Запускаем Raspberry pi под OpenELEC.
  • Переходим Настройки -> Дополнения -> Установить из файла ZIP
  • Выбираем наш файл на флешке

Теперь можно добавлять русскоязычные приложения в наш медиацентр.

Самая мощная на сегодня модель Raspberry Pi 3 Model B имеет разъём HDMI для подключения монитора, 4 USB-порта для подключения USB устройств, Ethernet-порт для подключения к сети, встроенный Wi-Fi и Bluetooth, 4 ядерный 64-битный процессор ARM 1.2 ГГц, 1 ГБ оперативной памяти. В отличие от обычных компьютеров на маленькой плате Raspberry есть 40 контактов (пинов) GPIO, который могут использоваться как на вход, так и на выход с применением различных протоколов взаимодействия с внешними устройствами, что и позволяет подсоединять к плате различные датчики и исполнительные приборы.

1. Внешний вид, основные элементы, корпус.

Итак, в наших руках Raspberry Pi 3 Model B.

Верхняя сторона выглядит так:

Нижняя сторона:

На нижней стороне установлены слот для SD-карты и оперативная память. SD-карта служит постоянным запоминающим устройством и содержит файлы операционной системы, программ и файлы пользователя.

Для удобства обращения с платой предлагается множество различных корпусов, а вот детали одного из них, они соединяются между собой без винтов:

Но сначала на процессор и графический чип стоит установить радиаторы, поскольку эти микросхемы прилично греются при активной работе платы:

Вот теперь можно собрать корпус и пометить туда плату микрокомпьютера:




Корпус имеет открывающуюся крышку для удобного подключения камеры, дисплея и контактов GPIO.

2. Подготовка к включению и первый запуск.

Для первого запуска Raspberry необходимо следующее:

  • микро SD-карта с установленной операционной системой (OC) Raspbian, рекомендуемой для этого устройства (оптимальная емкость карты - 8 Гб, класс скорости - 10);
  • монитор с HDMI входом;
  • сетевой блок питания с выходным напряжением 5 В и током не менее 2 А, с выходным разъемом micro-USB;
  • USB-мышь и USB-клавитура.

Образ операционной системы Raspbian, созданной на основе Linux Debian 8 Jessi, можно скачать в разделе Downloads сайта raspberrypi.org. Для начала можно воспользоваться образом RASPBIAN JESSIE LITE, как наиболее простым в изучении. Записать образ на SD-карту удобно из-под Windows с помощью программы Win32DiskImager. Способ установки и сама программа описаны на сайте Raspberry по адресу.

Вы также можете воспользоваться файлами, размещенными на нашем сайте в карточке Raspberry Pi 3 или напрямую скачать с Яндекс диска:

  • образ операционной системы;
  • программа Win32DiskImager.

Дальнейшее описание базируется именно на этом образе.

Мышь и клавиатура, подключенные к Raspberry без проблем распознаются системой. Можно также использовать беспроводную мышь и клавиатуру, например Bluetooth, но их надо настроить после запуска Raspberry, а для этого нужна хотя бы USB-мышь. У нас в хозяйстве не нашлось USB-клавиатуры, поэтому для первого запуска мы подключили USB-мышь, а также монитор и питание:

Кстати, на плате нет выключателя питания, она запускается сразу при подключении разъема, и начинается загрузка операционной системы. После загрузки на экране появляется рабочий стол с вполне привычными (но оригинальными) обоями и иконками:

На начальном экране имеются легко распознаваемые иконки Меню, интернет-браузера, менеджера Bluetooth, регулятора громкости, настройки сети и некоторые другие. Из них, пожалуй, самая нужная при настройке и работе - это черный экранчик в правой верхнем углу: терминал. С помощью терминала вводятся команды операционной системы. Поскольку далеко не все программы для Linux имеют графический интерфейс, их можно запустить и работать в них только посредством командной строки. Именно эту возможность и предоставляет терминал. Также все системные операции Linux, например установка и удаление программ осуществляются преимущественно через терминал. В OC используется программа LXTerminal, которая и запускается при щелчке правой кнопкой мыши по иконке. Следует заметить, что многие команды требуют ввода в начале строки приставку sudo (gksudo при запуске программ с графическим интерфейсом), что позволяет выполнить команду от лица администратора компьютера, то есть с наивысшими правами (sudo - Super User Do). Только администратор может устанавливать и удалять программы, а также менять параметры OC и ее конфигурацию.

После первой загрузки системы имеет смысл сразу подключиться к интернету, чтобы обновить файлы ОС до актуальной версии. В правом верхнем углу рабочего стола есть иконка с узнаваемым изображением двух терминалов. При подключении кабеля к разъему Ethernet на плате Raspberry происходит автоматическое подключение к локальной сети. Если щелкнуть мышью по этой иконке, появляется список беспроводных сетей, из которых можно выбрать свою и подключиться к ней, введя соответствующий ключ. При этом вместо терминалов на иконке появится стандартное изображение подключение к беспроводной сети. Именно такая ситуация показана на рисунке выше.

Надо сказать, что по сравнению с ранними версиями Linux многие задачи сейчас автоматизированы. Например, если ранее было необходимо из командной строки монтировать том при подключении обычной флешки, то сейчас флешка распознается при подключении в один из четырех разъемов USB на плате вполне самостоятельно и ей сразу можно пользоваться.

Теперь можно подключить, например, беспроводные мышь и клавиатуру по Bluetooth:

Это делается щелчком на иконке с логотипом Голубого Зуба рядом с индикатором подключение к сети в правом верхнем углу экрана. Далее надо нажать Add Device и выбрать ваши устройства из списка найденных беспроводных устройств.

Следует отметить, что при всем удобстве использовании Bluetooth устройств ввода с Raspberry - они не занимают разъемов USB - эти устройства в нашем случае периодически теряли связь с платой. Поэтому для стабильной работы, все же следует использовать USB-мышь и клавиатуру, а так же, в качестве альтернативного варианта, занимающего только один USB-разъем, комплект мыши и клавиатуры с одним приемопередатчиком по радиоканалу.

После соединения с сетью мы попробовали, используя уже и мышь и клавиатуру, зайти в интернет, щелкнув на иконке браузера. Сайты открывались без проблем, с приемлемой скоростью.

3. Знакомство с GPIO, программированием на Python и запуск светофора

Контакты GPIO, безусловно, являются очень интересной частью Raspberry, значительно расширяющей возможности микрокомпьютера для применения в электронных автоматизированных системах. С помощью этих контактов можно как считывать данные с огромного множества предлагаемых сегодня датчиков: температуры, давления, движения, наклона, ориентации, открытия и т.п., так и посылать команды на исполнительные устройства: реле, двигатели, актуаторы, серво-машины и многие другие.

Вот схема 40-контактного разъема GPIO:

Как видно, кроме обычных цифровых пинов вход/выход, принимающих или выдающих значения логических 0 и 1, имеются контакты, работающие по распространенным интерфейсам I 2 C, SPI и UART. Также есть возможность генерации ШИМ и прерываний от изменения уровней на входах.

Используем GPIO для моделирования работы светофора по нажатию кнопки, как это делается на редко используемых пешеходных переходах, где обычно горит зеленый свет для транспорта, а пешеход может кнопкой запустить программу включения красного света для транспорта. Алгоритм этой программы такой: при нажатии кнопки начинает мигать зеленый свет, затем на короткое время зажигается желтый, затем красный; красный свет горит некоторое время, затем короткое время горят красный и желтый, и, наконец, снова зеленый; далее система ждет очередного нажатия кнопки.

Для программирования этого алгоритма воспользуемся встроенной в образ ОС Raspbian интегрированной среды разработки (IDE) на языке Python (Пайтон). Язык Python имеет большое число достоинств, о которых можно почитать в сети, что делает его весьма хорошим инструментом как для начинающих программистов, так и для профессионалов. Это интепретирущий язык, его команды выполняются последовательно, одна за другой. В IDE Python команды можно выполнять, просто вводя их с клавиатуры и нажимая клавишу Enter в конце строки.

Среда разработки программ на языке Python запускается с рабочего стола последовательным выбором Menu - Programming - Python 3 . Далее, в открывшемся окне Python Shell следует нажать File - New File . В открывшемся окне редактора нужно набрать или скопировать следущий текст программы, обращая особое внимания на отступы в тексте, так как для программ на Python они имеют принципиальное значение:

#!/usr/bin/python

import RPi.GPIO as GPIO
from time import sleep

RED_PIN = 36

YELLOW_PIN = 32
GREEN_PIN = 29
BUTTON_PIN = 40

print ("RPi.GPIO init start")
GPIO.setwarnings(False)
GPIO.setmode(GPIO.BOARD)
print ("RPi.GPIO init end")

print ("GPIO setup")

GPIO.setup(RED_PIN, GPIO.OUT)

GPIO.setup(YELLOW_PIN, GPIO.OUT)
GPIO.setup(GREEN_PIN, GPIO.OUT)
GPIO.setup(BUTTON_PIN, GPIO.IN, pull_up_down=GPIO.PUD_UP)

GPIO.output(RED_PIN, 0)
GPIO.output(YELLOW_PIN, 0)
GPIO.output(GREEN_PIN, 1)

while True:

if inp==0:
for x in range(0, 5):
GPIO.output(GREEN_PIN, 1)
sleep(0.5)
GPIO.output(GREEN_PIN, 0)
sleep(0.5)
GPIO.output(YELLOW_PIN, 1)
sleep(2)
GPIO.output(YELLOW_PIN, 0)
GPIO.output(RED_PIN, 1)
sleep(5)
GPIO.output(YELLOW_PIN, 1)
sleep(1)
GPIO.output(RED_PIN, 0)
GPIO.output(YELLOW_PIN, 0)
GPIO.output(GREEN_PIN, 1)

Первая строка указывает, где в ОС находится интерпретатор Python.

Функция, начинающаяся с print , просто выводит свой аргумент на экран.

Строки, начинающиеся с GPIO.setup , задают режим выхода (OUT ) или входа (IN ) соответствующих пинов, а аргумент pull_up_down=GPIO.PUD_UP включает подтягивающий резистор на входе 40, к которому подключена кнопка. Поскольку программа на Python не имеет стандартного «вечного цикла», как, например в Ардуино, где загруженная в микроконтроллер программа выполняется бесконечно, пока подано питание, оператор while True: осуществляет этот цикл. Нам ведь надо возвращать наш светофор в исходное состояние всякий раз по завершению цикла его работы.

Оператор присвоения inp = GPIO.input(BUTTON_PIN) записывает в переменную inp значение на входе 40. Если кнопка не нажата - это 0, если нажата - 1. Если inp равно 0, то начинается цикл работы светофора:

  • с помощью цикла for 5 раз мигает зеленый светодиод;
  • на 2 секунды зажигается желтый (пауза задается оператором sleep);
  • желтый гаснет, зажигается красный на 5 секунд и т д.

После окончания цикла работы светофора все начинается снова.

Теперь необходимо собрать электрическую схему с помощью проводов с разъемами без пайки:



Короткие ножки светодиодов (это минус) подключаем к земле - контакты 6, 14, 20; длинные (плюс) через резисторы 240 Ом - к контактам 29 (зеленый), 32 (желтый), 36 (красный).

Кнопку подключаем к контактам 39 и 40.

Теперь в редакторе с нашей программой выбираем Run - Run Modul или нажимаем F5, и программа начинает выполняться, ожидая нажатия кнопки.

Но вовсе неудобно каждый раз запускать программу с помощью оболочки. Удобнее, чтобы наша программа запускалась при включении питания Raspberry, ведь тогда устройство можно использовать автономно, без монитора, клавиатуры и мыши.

Для этого необходимо включить нашу программу в автозагрузку операционной системы.

Тут нам понадобится терминал, без него обойтись.

Сначала сохраним нашу программу в виде файла svetofor-rpi.py3 в корневом каталоге пользователя /home/pi .

Теперь запустим терминал и после приглашения pi@raspberrypi:~ $ наберем следующую строку: gksudo leafpad /etc/xdg/autostart/Svetofor.desktop .

Тем самым мы вызовем текстовый редактор leafpad и создадим файл Svetofor.desktop в папке автозапуска.

В текстовом редакторе набираем следующее:


Version=1.0
Encoding=UTF-8
Name=Svetofor
Comment=
Exec=sudo python /home/pi/svetofor-rpi.py3
Terminal=false
Type=Application

и сохраняем файл.

Основное в этом файле - строка, начинающаяся с Exec , которая запускает интерпретатор Python на выполнение программы svetofor-rpi.py3 .

Можно проверить, зайдя в папку /etc/xdg/autostart с помощью файлового менеджера, чья иконка в виде двух ящичков расположена в левом углу экрана, появился ли в этой папке файл Svetofor.

Теперь, если выключить питание, отключить монитор, мышь и клавиатуру, и снова включить питание, наш светофор начнет работать в автономном режиме!

Видео работы светофора: