Съдържание:
- Стъпка 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 07:53
Този урок е за тези, които нямат опит с инсталирането на нов хардуер или софтуер, да не говорим за Python или Linux.
Да речем, че сте поръчали на Raspberry Pi (RPi) със SD карта (най -малко 8GB, използвах 16GB, тип I) и захранване (5V, най -малко 2.5A). Днес решавате да го настроите и записвате данни от Arduinos. Така че нека започнем!
Урокът включва настройка на Raspberry Pi от самото начало, включително Desktop Remote, подготовка на Arduino с 18B20 температурни сензори и изпълнение на Python скрипт в Raspberry Pi за събиране и запазване на данните. Актуализирах публикацията с добавяне на samba share за прехвърляне на файла между хост компютъра (вашия компютър) и Raspberry Pi
Стъпка 1: Подгответе Raspberry Pi
- Изтеглете операционната система за RPi. Препоръчвам пълна версия на Raspbian, като тази тук.
- Да предположим, че имате работещ компютър, работещ под Windows, изтеглете софтуера Rufus, за да запишете изображението на SD картата. Превъртете надолу и вземете rufus 3.0 (юни 2018 г.)
- Разархивирайте Raspbian файла (4,6 GB) и внимателно изберете целевата си SD карта. Записването на изображението в картата отнема около 3 минути.
- Поставете SD картата в слота, включете захранващия кабел към микро USB порта, Дисплей с HDMI кабел, клавиатура, мишка не са задължителни.
- Изчакайте, докато RPi се зареди и покажете работния плот, натиснете клавиша Window, отидете на Accessories/Terminal и Enter.
- Конфигурирайте RPi по тип:
sudo raspi-config
7. Променете няколко неща в конфигурацията на RPi:
- В 1. Промяна на паролата
- В 2. Мрежова опция: Променете името на хоста (нещо уникално, моето е rpi1001), както и SSID и парола за wifi.
- В 4. Опции за локализация: Промяна на часова зона, клавиатура, локал
- В 5. Опции за свързване: Разрешаване на SSH (за влизане през командния ред), Разрешаване на VNC (за отдалечено работно място)
- В 7: Предварителна опция: Разгъване на файловите системи:
- Рестартирайте
- След зареждане: отбележете IP адреса, като стартирате
sudo ifconfig
Ако Ethernet използва, IP трябва да бъде първият блок, ако се използва Wifi, 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: p ing rpi1001.local –4 вземете нещо подобно 192.168.1.40. rpi1001 е моето име на хост за моя Rpi.
9. Инсталирайте VNCViewer, този софтуер работи като TeamViewer или Desktop Remote в Windows (само Win 10 Pro има функция Remote 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 използват CH341 USB драйвер. Шофьорът е тук.
Инсталирайте драйвера, когато включите Arduino към USB на вашия Windows, той трябва да разпознае драйвера и да назначи COM порт (моят е COM4)
Серийният монитор трябва да извежда като снимката по -горе.
Стъпка 3: Стартирайте RPi чрез изключване и включване на захранването към RPi. Стартирайте VNCViewer, влезте в своя RPi
Прехвърлете скрипта на Python, като използвате инструмента VNCViewer. В горната част на VNCViewer има банер, потърсете бутона със две стрелки. За да прехвърлите данни от RPi към Windows, използвайте символа File Transfer in VNC горе вдясно (близо до символа Wifi) на работния плот на 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: отидете на Device Manager, проверете COM #
Ако скриптът е променен в Windows, може да се наложи да стартирате скрипта на Python в dos2unix, за да премахнете странния знак за завършване на ред от Windows. Инсталирайте го от
sudo apt-get install dos2unix
и конвертирайте скрипта, като изпълните това в терминала
dos2unix recordSerial.py
Променен действителният порт в скрипта от текстов редактор:
sudo nano recordSerial.py
след това стартирайте./recordSerial.py yourfilename.txt
Скриптът Python ще записва данните от RAM на диска за всеки 10 реда, които могат да бъдат коригирани.
За да спрете записа, натиснете Ctrl + C, Скриптът може да се изпълнява в Windows (двойно щракване), името на регистрационните данни е по подразбиране, което включва времева отметка
Ако използвате PowerShell, можете да въведете персонализираното си име на файл, python.exe recordSerial.py awesome.txt
Не всички 18B20 са еднакви. Вижте разчитането!
Избутах кода и в GitHub.
Надявам се този урок да е полезен!
Стъпка 4: Инсталирайте Samba за споделяне на папка
Тази стъпка ще ви преведе през някои основни настройки, за да имате споделена папка, хоствана на Raspberry Pi, до която можете да получите достъп от други компютри.
Първо инсталирайте samba, програма за споделяне и управление на папка за споделяне в мрежата:
sudo apt-get инсталирайте samba
направете споделена папка
mkdir ~/Desktop/sambaShare
променете конфигурационния файл за samba чрез:
sudo samba /etc/samba/smb.conf
добавете следните редове в края на файла:
[sambaShare] коментар = споделяне на папка по RPI път на Research =/home/pi/Desktop/sambaShare browseable = да само за четене = не writable = да public = да създаване на маска = 0777 rectory mask = 0777 гост ok = да
Ако имате проблем с писането в windows, принудете го, като добавите този ред в края на файла: force user = pi
В Linux може да се наложи да използвате root потребителя (ще публикувам проблема, след като разбера)
След това добавете потребител към samba и създайте и парола:
sudo smbpasswd -a пи
след това въведете парола за samba (може да бъде същата или различна от паролата за потребителя pi в системата)
проверете дали конфигурационният файл е наред
тестпарм
натиснете Ctrl+X, за да запишете, и след това рестартирайте услугата samba чрез:
sudo systemctl рестартирайте smbd
На хост компютъра, да речем Linux:
ако не да, инсталирайте samba плюс sambaclient и cifs, за да поддържате устройството за споделяне, моля, направете това, като изпълните:
sudo apt-get инсталира samba smbclient cifs-utils
Проверете дали споделената папка на RPI е готова от:
sudo smbclient -L yourRPI_IP
ако видите споделеното устройство, създайте точка за монтиране в Linux:
sudo mkdir /mnt /researchRPi
sudo chown потребител: usergroup -R /mnt /researchRPI
потребител, потребителска група е вашето име на потребител и група на Linux
след това монтирайте споделянето чрез:
sudo mount -f cifs -o потребителско име = pi // your_rpi_IP/sambaShare/mnt/researchRPi
въведете паролите си и направете мека връзка към работния плот:
sudo ln -s/mnt/researchRPi ~/Desktop/researchRPi
ако имате проблем с разрешението за четене и запис в папката за споделяне, експериментирайте със слабо разрешение:
на PI:
sudo chmod -R 776 ~/Desktop/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 и работим върху вградени системи. Data-Logger: Регистратор на данни (също регистратор на данни или запис на данни) е електронно устройство, което записва данни във времето с
Изпращайте числови данни от един Arduino към друг: 16 стъпки
Изпратете числови данни от един Arduino към друг: Въведение от Дейвид Палмър, CDIO Tech. в Aston University. Имали ли сте някога да изпращате някои номера от един Arduino на друг? Тази инструкция показва как. Можете лесно да проверите дали работи, като просто напишете низ от числа, които да изпратите в S
Как да извлечете данни от база данни Firebase на NodeMCU: 7 стъпки
Как да извлечем данни от база данни Firebase на NodeMCU: За тази инструкция ще извличаме данни от база данни в Google Firebase и ще ги извличаме с помощта на NodeMCU за по-нататъшно разбор. акаунт за създаване на база данни на Firebase. 3) Изтеглете
Свържете базата данни на Raspberry Pi IOT с MS Excel - Настройка: 3 стъпки
Свържете базата данни на Raspberry Pi IOT с MS Excel - Настройка: В света на улавяне на данни IOT човек създава много данни, които неизменно се записват в система от бази данни, като Mysql или Oracle. За да получите достъп и да манипулирате тези данни, един от най -ефективните методи е използването на Microsoft Office prod
Събиране на данни от EAL-Industri4.0-RFID до база данни: 10 стъпки (със снимки)
EAL-Industri4.0-RFID Актуализиране на данни към база данни: Dette projekt omhandler opsamling af v æ gtdata, регистриращ се за идентифициране във vha. RFID, изоставане на данни в MySQL база данни vha. node-RED, samt fremvisning и поведение на opsamlede данни в et C# програма, създадена от en Windows Form Application