Оглавление:
- Шаг 1. Подготовьте Raspberry Pi
- Шаг 2: Подготовьте простой пример для сбора данных из Arduino
- Шаг 3: Загрузите RPi, отключив и подключив питание к RPi. Запустите VNCViewer, войдите в свой RPi
- Шаг 4: Установите Samba в общую папку
- Шаг 5: Полезные ссылки
Видео: Настройка Raspberry Pi с нуля для регистрации данных с Arduino: 5 шагов
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:53
Это руководство предназначено для тех, у кого нет опыта установки нового оборудования или программного обеспечения, не говоря уже о 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
- Загрузите операционную систему для RPi. Я рекомендую полную версию Raspbian, вот так вот.
- Предположим, у вас есть рабочий компьютер под управлением Windows, загрузите программное обеспечение Rufus для записи образа на SD-карту. Прокрутите вниз и получите rufus 3.0 (июнь 2018 г.)
- Разархивируйте файл Raspbian (4,6 ГБ) и внимательно выберите целевую SD-карту. Запись изображения на карту занимает около 3 минут.
- Вставьте SD-карту в слот, подключите кабель питания к порту micro USB, кабель Display with HDMI, клавиатуру и мышь не являются обязательными.
- Подождите, пока RPi загрузится и отобразит рабочий стол, нажмите клавишу «Окно», перейдите в «Стандартные» / «Терминал» и нажмите «Enter».
- Настройте 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
Допустим, вы хотите измерить температуру с 4 датчиков. В этом примере я использовал популярный датчик температуры 18B20. Другие варианты - семейство TMP35, 36 или термистор.
Электропроводка включена выше. 18B20 используют общий провод (или шину), а вот код Arduino на Github. Приложение в файле ниже также содержит коды и схему подключения.
Также установите драйвер USB для Arduino в Windows. Большинство «клонов» Arduino используют драйвер USB CH341. Водитель здесь.
Установите драйвер, при подключении Arduino к USB-порту Windows он должен распознать драйвер и назначить COM-порт (у меня COM4).
Последовательный монитор должен выводить как на фото выше.
Шаг 3: Загрузите 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 в общую папку
Этот шаг проведет вас через некоторые базовые настройки, чтобы иметь общую папку, размещенную на 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: Полезные ссылки
Ниже приведены некоторые полезные ссылки:
- Здесь есть еще один подход с использованием библиотек pyserial и numpy
- Всесторонний взгляд на электронную коммуникацию начинается с установки Arduino IDE. Хороший ориентир, если вы хотите более глубокое погружение.
- Краткое, но конкретное письмо. Краткие и достаточные варианты альтернатив для записи данных
Рекомендуемые:
Как сделать регистратор данных влажности и температуры в реальном времени с Arduino UNO и SD-картой - Моделирование регистратора данных DHT11 в Proteus: 5 шагов
Как сделать регистратор данных влажности и температуры в реальном времени с Arduino UNO и SD-картой | Моделирование регистратора данных DHT11 в Proteus: Введение: привет, это Liono Maker, вот ссылка на YouTube. Мы делаем творческий проект с Arduino и работаем над встраиваемыми системами. Регистратор данных: Регистратор данных (также регистратор данных или регистратор данных) - это электронное устройство, которое записывает данные с течением времени
Эксперименты в расширенной регистрации данных (с использованием Python): 11 шагов
Эксперименты по расширенному ведению журнала данных (с использованием Python): существует множество инструкций по ведению журнала данных, поэтому, когда я хотел создать собственный проект регистрации данных, я просмотрел их кучу. Некоторые из них были хорошими, некоторые - не очень, поэтому я решил взять несколько лучших идей и создать свое собственное приложение. Этот результат
Регистратор данных - компьютерный модуль регистрации: 5 шагов
Регистратор данных - компьютерный модуль регистрации: регистратор данных Ethernet для сбора данных на основе HTTP с мостов датчиков, которые преобразуют датчик с интерфейсом I2C в датчик Ethernet
Настройка FreeRTOS с нуля на STM32F407 Discovery Kit: 14 шагов
Настройка FreeRTOS с нуля на STM32F407 Discovery Kit: выбор FreeRTOS в качестве операционной системы реального времени для вашего встроенного проекта - отличный выбор. FreeRTOS действительно бесплатен и предоставляет множество простых и эффективных функций RTOS. Но настройка freeRTOS с нуля может быть сложной или, я могу сказать, би
Гидропоника Интернета вещей - использование Adafruit IO для регистрации EC, PH и температуры: 6 шагов
Гидропоника IoT - использование Adafruit IO для регистрации EC, PH и температуры: в этом руководстве будет показано, как контролировать EC, pH и температуру гидропоники и загружать данные в службу IO Adafruit. Начать работу с Adafruit IO можно бесплатно. Есть платные планы, но для этого профи более чем достаточно бесплатного