Подготовка Raspberry Pi для ПО 1.0
Все подготовительные и программные работы я делаю на рабочем компьютере с 64-битной Win7. Я использую терминал и ftp для связи с Raspberry Pi. Итак, какие программы нужны в моем случае:
1) Подготовка к Linux.
Я использую официальный Raspbian в качестве операционной системы для Raspberry Pi. Скачивается с официального сайта здесь. Для управления позиционером достаточно самого маленького варианта Lite. Я распакую скачанный * .zip архив с программой WinRAR и закачу на SD карту с помощью программы Disk Imager. Другой вариант - использовать более быстрый и надежный SSD-диск, подключенный к USB-порту через редуктор вместо SD-карты. Но для этого одноцелевого устройства это не обязательно. Все, что вам нужно, это хорошая SD-карта.
После загрузки Linux загрузочный раздел на карте форматируется в FAT32. Я сделал две корректировки в этом разделе. Я создал здесь текстовый файл с именем ssh. Это позволит осуществлять связь с терминала по протоколу SSH при запуске Raspberry Pi. Еще добавил в файл config.txt
# мой комментарий, настройка Pullup резистор на выбранных контактах GPIO
gpio=12,16,19,20,21,26=ip,pu
Это устанавливает выбранные порты в качестве входов при запуске Raspberry Pi и активирует Pullup резисторы до + 3,3 В. Эти резисторы необходимы для правильной работы спроектированного аппаратного обеспечения, но используемая библиотека программного обеспечения включения выключения не может их активировать.
Дальнейшие настройки уже производятся с терминала с использованием протокола PuTTY SSH на порту 22. При первом подключении с терминала имя / пароль по умолчанию устанавливается на pi / raspberry. Я рекомендую выполнить базовую настройку сразу после подключения.
sudo raspi-config
Здесь я установил хотя бы эти предметы:
- Change user password
- Boot Options: B1 Desktop/CLI, B1 Console
- Localization: I2 Change Timezone, Europe, Prague
- Localization: I4 Change Wi-fi Country, CZ Czech Republic
- Advanced Option: A1 Expand Filesystem
По окончании этих регулировок перезапуск должен быть подтвержден. Для других подключений с терминала, теперь под новым паролем, буду выполнять обновления.
sudo apt-get update
sudo apt-get upgrade -y
sudo reboot
sudo rpi-update
sudo reboot
2) Установите node.js, npm
Программа, которую я пишу для Raspberry Pi, запускается через веб-сервер Node.js. Он уже входит в состав репозиториев Raspbian и должен быть установлен стандартным способом вместе с программой поддержки npm.
sudo apt-get install nodejs npm -y
Но когда я начал, в репозитории была старая версия, в которой сообщалось об ошибках. Поэтому мне пришлось установить текущую версию вручную в соответствии со следующей процедурой.
- скачать текущий архив для Raspberry Pi 3 - ARMv7 (node-v12.16.3-linux-armv7l.tar.xz). В этом архиве также есть программа npm
- скопируйте архив с помощью ftp-клиента в каталог Raspberry Pi, / home / pi
- создать каталог для Node.js
sudo mkdir -p /usr/local/lib/nodejs
- распаковать архив в этот каталог
sudo tar -xJvf node-v12.16.3-linux-armv7l.tar.xz -C /usr/local/lib/nodejs
- установить переменные среды с помощью текстового редактора nano
nano ~/.profile
добавив в конец следующие строки# Nodejs
VERSION=v12.16.3
DISTRO=linux-x64
export PATH=/usr/local/lib/nodejs/node-v12.16.3-linux-armv7l/bin:$PATH
- затем активируйте отредактированный и сохраненный файл
. ~/.profile
- и наконец создать симлинки:
sudo ln -s /usr/local/lib/nodejs/node-v12.16.3-linux-armv7l/bin/node /usr/bin/node
sudo ln -s /usr/local/lib/nodejs/node-v12.16.3-linux-armv7l/bin/npm /usr/bin/npm
sudo ln -s /usr/local/lib/nodejs/node-v12.16.3-linux-armv7l/bin/npx /usr/bin/npx
Каким бы способом вы ни устанавливали Node.js и npm, рекомендуется проверить, все ли работает. Например, используя список версий.
node -v
npm version
npx -v
3) Установка вспомогательных библиотек
Базовая программа Node.js может быть дополнена библиотеками функций на javascript. Администратором этих библиотек является программа npm, которая используется для их установки. Библиотека onoff понадобится для базовой связи с выводами порта GPIO. Еще одна библиотека для веб-общения - socket.io. Эти и другие необходимые библиотеки можно установить следующим образом:
npm install onoff
npm install socket.io
4) Запустите пользовательскую программу с помощью Node.js
Принцип запуска программ в Node.js следующий. Создайте каталог для приложения в каталоге / home / pi /.
mkdir -p SatProwler
Скопируйте в этот каталог все файлы написанной программы. Их может быть больше, их можно отсортировать по другим подкаталогам, но они всегда должны содержать два файла по умолчанию, index.html и satprowler.js. Затем перейдите в этот каталог в терминале.
cd SatProwler
и запустите веб-сервер
node satprowler.js
Программа, запускаемая таким образом, зависит от терминала, с которого она запускается. Это полезно при тестировании программы, в которой в окне терминала отображаются рабочие сообщения или сообщения об ошибках. Выполнение программы завершается нажатием Ctrl + C. Выключение терминала также завершает программу.
Это делает Raspberry Pi готовым к пробной эксплуатации. С этого момента можно написать и протестировать свою собственную пользовательскую программу.