Оглавление:

Настройка Raspberry Pi с нуля для регистрации данных с Arduino: 5 шагов
Настройка Raspberry Pi с нуля для регистрации данных с Arduino: 5 шагов

Видео: Настройка Raspberry Pi с нуля для регистрации данных с Arduino: 5 шагов

Видео: Настройка Raspberry Pi с нуля для регистрации данных с Arduino: 5 шагов
Видео: Raspberry Pi - Что можно сделать? Готовые проекты. Есть ли смысл? Как научиться? 2024, Ноябрь
Anonim
Настройте Raspberry Pi с нуля для регистрации данных с Arduino
Настройте Raspberry Pi с нуля для регистрации данных с Arduino

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

Допустим, вы заказали Raspberry Pi (RPi) с SD-картой (минимум 8 ГБ, я использовал 16 ГБ, тип I) и источником питания (5 В, минимум 2,5 А). Сегодня вы решили настроить его и записать данные с Arduinos. Итак, приступим!

Учебное пособие включает в себя настройку Raspberry Pi с самого начала, включая Desktop Remote, подготовку Arduino с датчиками температуры 18B20 и выполнение сценария Python в Raspberry Pi для сбора и сохранения данных. Я обновил сообщение, добавив общий ресурс samba для передачи файла между главным компьютером (вашим ПК) и Raspberry Pi.

Шаг 1. Подготовьте Raspberry Pi

Подготовьте Raspberry Pi
Подготовьте Raspberry Pi
Подготовьте Raspberry Pi
Подготовьте Raspberry Pi
Подготовьте Raspberry Pi
Подготовьте Raspberry Pi
Подготовьте Raspberry Pi
Подготовьте Raspberry Pi
  1. Загрузите операционную систему для RPi. Я рекомендую полную версию Raspbian, вот так вот.
  2. Предположим, у вас есть рабочий компьютер под управлением Windows, загрузите программное обеспечение Rufus для записи образа на SD-карту. Прокрутите вниз и получите rufus 3.0 (июнь 2018 г.)
  3. Разархивируйте файл Raspbian (4,6 ГБ) и внимательно выберите целевую SD-карту. Запись изображения на карту занимает около 3 минут.
  4. Вставьте SD-карту в слот, подключите кабель питания к порту micro USB, кабель Display with HDMI, клавиатуру и мышь не являются обязательными.
  5. Подождите, пока RPi загрузится и отобразит рабочий стол, нажмите клавишу «Окно», перейдите в «Стандартные» / «Терминал» и нажмите «Enter».
  6. Настройте RPi по типу:

sudo raspi-config

7. Измените пару вещей в конфигурации RPi:

  • В 1. Изменить пароль
  • В 2. Вариант сети: измените имя хоста (что-то уникальное, мое - rpi1001), а также SSID и пароль Wi-Fi.
  • В разделе 4. Параметры местоположения: изменить часовой пояс, клавиатуру, языковой стандарт.
  • В 5. Параметры интерфейса: Включите SSH (для входа через командную строку), Включите VNC (для удаленного рабочего стола)
  • В 7: Расширенный вариант: развернуть файловые системы:
  • Перезагрузить
  • После загрузки: запишите IP-адрес, запустив

sudo ifconfig

Если используется Ethernet, IP-адрес должен быть первым блоком, если используется Wi-Fi, IP-адрес находится в третьем блоке, что-то вроде 192.168.1.40, выполните эту команду, чтобы обновить дистрибутив Linux:

sudo apt-get update && sudo apt-get upgrade –y && sudo poweroff

Последний отключит RPi после завершения обновлений.

8. Если вы забыли указать IP-адрес RPi или он был недавно изменен, используйте PowerShell (введите PowerShell в поле поиска в Windows).

В PowerShell, чтобы пропинговать Rpi: ping rpi1001.local –4, получите что-то вроде этого 192.168.1.40. rpi1001 - мое имя хоста для моего Rpi.

9. Установите VNCViewer, это программное обеспечение работает как TeamViewer или Desktop Remote в Windows (только Win 10 Pro имеет функцию Desktop Remote).

Установите на свой компьютер с Windows, в поле поиска в верхней части VNCViewer введите IP-адрес RPi (192.168.1.40) или имя хоста RPi (у меня rpi1001.local) и нажмите Enter. Введите пароль от вашего имени RPi, при желании выберите «Запомнить пароль». Если все прошло хорошо, вы должны увидеть всплывающий рабочий стол Rpi.

10. Чтобы передать файл из или в TeamView, самый простой способ использовать встроенную передачу файлов с помощью VNCView:

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

Шаг 2: Подготовьте простой пример для сбора данных из Arduino

Подготовьте простой пример для сбора данных с Arduino
Подготовьте простой пример для сбора данных с Arduino
Подготовьте простой пример для сбора данных с Arduino
Подготовьте простой пример для сбора данных с Arduino

Допустим, вы хотите измерить температуру с 4 датчиков. В этом примере я использовал популярный датчик температуры 18B20. Другие варианты - семейство TMP35, 36 или термистор.

Электропроводка включена выше. 18B20 используют общий провод (или шину), а вот код Arduino на Github. Приложение в файле ниже также содержит коды и схему подключения.

Также установите драйвер USB для Arduino в Windows. Большинство «клонов» Arduino используют драйвер USB CH341. Водитель здесь.

Установите драйвер, при подключении Arduino к USB-порту Windows он должен распознать драйвер и назначить COM-порт (у меня COM4).

Последовательный монитор должен выводить как на фото выше.

Шаг 3: Загрузите RPi, отключив и подключив питание к RPi. Запустите VNCViewer, войдите в свой RPi

Загрузите RPi, отключив и подключив питание к RPi. Запустите VNCViewer, войдите в свой RPi
Загрузите RPi, отключив и подключив питание к RPi. Запустите VNCViewer, войдите в свой RPi
Загрузите RPi, отключив и подключив питание к RPi. Запустите VNCViewer, войдите в свой RPi
Загрузите RPi, отключив и подключив питание к RPi. Запустите VNCViewer, войдите в свой RPi
Загрузите RPi, отключив и подключив питание к RPi. Запустите VNCViewer, войдите в свой RPi
Загрузите RPi, отключив и подключив питание к RPi. Запустите VNCViewer, войдите в свой RPi
Загрузите RPi, отключив и подключив питание к RPi. Запустите VNCViewer, войдите в свой RPi
Загрузите RPi, отключив и подключив питание к RPi. Запустите VNCViewer, войдите в свой RPi

Перенесите скрипт Python с помощью инструмента VNCViewer. В верхней части VNCViewer есть баннер, найдите кнопку с двумя стрелками. Чтобы передать данные из RPi в Windows, используйте символ передачи файлов в VNC в правом верхнем углу (рядом с символом Wi-Fi) на рабочем столе RPi.

Raspberry работает в Linux, а Python 2 и 3 установлены по умолчанию. Вам нужно только установить библиотеку Python под названием pyserial для сбора данных, распечатываемых из последовательной линии.

чтобы установить python Serial, введите эту строку в терминал Linux

sudo apt-get install python3-serial

  • в Windows: введите этот PowellShell:
  • pip.exe установить pyserlal

Затем загрузите скрипт и сохраните его на рабочий стол RPi.

Чтобы запустить сценарий, сначала сделайте его исполняемым:

sudo chown u + x recordSerial.py

Загрузите код Arduino на плату Arduino, затем подключите USB-кабель к USB-порту, проверьте порт:

  • В Linux введите это в терминал: ls / dev / ttyUSB *
  • В Wndows: перейдите в Диспетчер устройств, проверьте COM #

Если сценарий изменен в Windows, вам может потребоваться запустить сценарий Python для dos2unix, чтобы удалить странный символ окончания строки в Windows. Установите его

sudo apt-get install dos2unix

и преобразуйте скрипт, запустив его в терминале

dos2unix recordSerial.py

Изменен фактический порт в скрипте с помощью текстового редактора:

sudo nano recordSerial.py

затем запустите./recordSerial.py yourfilename.txt

Скрипт Python будет сохранять данные из ОЗУ на диск для каждых 10 строк, которые можно настроить.

Чтобы остановить запись, нажмите Ctrl + C, Скрипт может быть запущен в Windows (двойной щелчок), имя данных журнала по умолчанию, включая временную метку.

Если вы используете PowerShell, вы можете ввести свое собственное имя файла, python.exe recordSerial.py awesome.txt

Не все 18B20 одинаковы. Смотрите показания!

Я также отправил код на GitHub.

Надеюсь, этот урок будет вам полезен!

Шаг 4: Установите Samba в общую папку

Установите Samba в общую папку
Установите Samba в общую папку
Установите Samba в папку общего доступа
Установите Samba в папку общего доступа
Установите Samba в общую папку
Установите Samba в общую папку

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

Сначала установите samba, программу для совместного использования и управления папкой общего доступа по сети:

sudo apt-get install samba

сделать общую папку

mkdir ~ / Рабочий стол / sambaShare

измените файл конфигурации для самбы:

судо самба /etc/samba/smb.conf

добавьте в конец файла следующие строки:

[sambaShare] comment = share Folder on Research Путь RPI = / home / pi / Desktop / sambaShare просматриваемый = да только для чтения = нет записи = да общедоступный = да создать маску = 0777 маска священника = 0777 гость ok = да

Если у вас возникла проблема с записью в окнах, принудительно добавьте эту строку в конец файла: force user = pi

В Linux вам может потребоваться использовать пользователя root (я опубликую проблему, как только узнаю)

Затем добавьте пользователя в samba и также создайте пароль:

sudo smbpasswd -a pi

затем введите пароль для самбы (может быть таким же или отличаться от пароля для пользователя pi в системе)

проверьте, в порядке ли файл конфигурации

testparm

нажмите Ctrl + X для сохранения, а затем перезапустите службу samba:

sudo systemctl перезапустить smbd

На главном компьютере, скажем, Linux:

Если нет, то установите samba plus sambaclient и cifs для поддержки общего диска, сделайте это, запустив:

sudo apt-get устанавливает samba smbclient cifs-utils

Проверьте, готова ли общая папка на RPI:

sudo smbclient -L вашRPI_IP

если вы видите общий диск, создайте точку монтирования в Linux:

sudo mkdir / mnt / researchRPi

sudo chown пользователь: группа пользователей -R / mnt / researchRPI

user, usergroup - это ваш пользователь Linux и имя группы

затем смонтируйте общий ресурс:

sudo mount -f cifs -o username = pi // your_rpi_IP / sambaShare / mnt / researchRPi

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

sudo ln -s / mnt / researchRPi ~ / Рабочий стол / researchRPi

Если у вас есть проблема с разрешением на чтение и запись в общей папке, поэкспериментируйте со слабым разрешением:

на ИП:

sudo chmod -R 776 ~ / Рабочий стол / sambaShare

В Windows это еще проще, Перейдите в «Мой компьютер» и сопоставьте папку, затем введите IP-адрес RPI, должна появиться общая папка. Я считаю, что на Mac есть что-то, что вы можете просматривать в общей папке в сети.

Шаг 5: Полезные ссылки

Ниже приведены некоторые полезные ссылки:

  1. Здесь есть еще один подход с использованием библиотек pyserial и numpy
  2. Всесторонний взгляд на электронную коммуникацию начинается с установки Arduino IDE. Хороший ориентир, если вы хотите более глубокое погружение.
  3. Краткое, но конкретное письмо. Краткие и достаточные варианты альтернатив для записи данных

Рекомендуемые: