Мазмуну:
- 1 -кадам: Pi Zero W орнотуу
- 2 -кадам: WiFi менен туташуу
- 3 -кадам: Керектүү программалык камсыздоону жаңыртуу жана орнотуу
- 4 -кадам: Сенсорго туташуу (Бул мисалда Arduino)
- 5 -кадам: WiFi кирүү чекитинин мүмкүнчүлүктөрүн орнотуңуз
- 6 -кадам: Wifi кирүү чекити менен кардар режимдеринин ортосунда которулуу
- 7 -кадам: Акыркы эскертүүлөр
- 8 -кадам: Мисал Python Logging Script
Video: Raspberry Pi Zero W Datalogger: 8 кадам (сүрөттөр менен)
2024 Автор: John Day | [email protected]. Акыркы өзгөртүү: 2024-01-30 10:42
Raspberry Pi Zero Wди колдонуп, сиз жергиликтүү Wi -Fi тармагына туташкан же талаадагы кирүү чекити катары кызмат кыла турган, арзан жана колдонууга ыңгайлуу даталоггерди жасай аласыз, бул смартфонуңуз менен зымсыз маалыматты жүктөп алууга мүмкүндүк берет.
Мен бул орнотууну Америка геофизикалык биримдигинин күзгү жолугушуусунда, 2017 -жылы, өздүк маалыматтарды каттоочу орнотууну жасоо жолу менен сунуштадым. Сиз бул презентацияны бул жерден таба аласыз.
Эмне керек болот:
- A Raspberry Pi Zero W
- Микро SD карта
- USB кабели же USB энергия булагы
- USB карта окугучу бар компьютер
-
Кошумча (бирок пайдалуу):
- miniHDMI -> HDMI адаптери (Пиди экранга туташтыруу үчүн)
- USB OTG адаптери (клавиатураны Пи -ге туташтыруу үчүн
1 -кадам: Pi Zero W орнотуу
Баштоо үчүн, microSD картасына Rasbian сүрөтүн коюңуз (бул окуу куралында мен бул жерде жеткиликтүү 2017-07-05-raspbian-jessie-lite колдондум). Жөнөкөй версияны (рабочий столсуз) колдонсо болот, анткени орнотуу буйрук сабы аркылуу жүргүзүлөт.
SD картаны Pi'ге салыңыз, экранды жана клавиатураны туташтырыңыз жана кубат кабелин туташтырып күйгүзүңүз. Башсыз орнотуу да мүмкүн, бирок SSH аркылуу туташууну талап кылат.
Pi кирүүнү жүктөгөндөн кийин (демейки колдонуучунун аты: pi, пароль: малина) жана "passwd" буйругу менен сырсөздү өзгөртүңүз.
Тергичти терминалга "sudo raspi-config" киргизүү менен конфигурациялоого болот.
2 -кадам: WiFi менен туташуу
Интернетке туташуу үчүн, Piге кайсы тармакка туташуу керектигин айтабыз. Төмөнкү файлды ачуу менен баштаңыз;
sudo nano /etc/wpa_supplicant/wpa_supplicant.conf
Бул жерде, ылдыйдагы тармак маалыматын кошуңуз;
тармак = {
ssid = "тармактын аты" psk = "тармактын сырсөзү"}
Ишкана тармагы болгон учурда, сиз төмөнкү орнотууну колдоно аласыз (WPA-EAP // TTLA // MSCHAPv2ди тиешелүү жөндөөлөргө тууралаңыз).
тармак = {
ssid = "ssid" #Тармагыңыздын атын киргизиңиз key_mgmt = WPA-EAP eap = TTLS Identity = "xxxxx" #Кирүү эсебиңиздин сырсөзүн киргизиңиз = "xxxxx" #Өткөрүү фазасын киргизиңиз2 = "auth = MSCHAPv2"}
CTRL+O басуу менен сактоо жана CTRL+X менен чыгуу.
Эми конфигурация файлыңызга/etc/network/interfaces шилтемесин бериңиз
sudo nano/etc/network/interfaces
Wlan0 бөлүгүн өзгөртүү:
авто wlan0
iface wlan0 inet dhcp wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
Дагы, файлды сактаңыз (CTRL+O), анан чыккыла (CTRL+X).
Кайра жүктөөдөн кийин (sudo reboot), wifi туташууңуз иштеши керек. Сиз муну веб -сайтты пинг кылуу менен текшере аласыз;
ping www.google.com
CTRL+C менен пингди жокко чыгаруу
Pi аркылуу SSHге зымсыз туташуу үчүн, сиз SSHди иштетишиңиз керек:
sudo raspi-config
"5 Interfacing Options" өтүү, жана SSH иштетүү. Андан кийин артка кайтып, конфигурациядан чыгыңыз.
Пинин IP дарегин издеңиз:
ifconfig
IP wlan0 интерфейсинин "inet addr:" астында болот.
Эми сиз бир тармакта болсоңуз, WiFi аркылуу Pi'ге туташа аласыз. Putty'ди жүктөп алыңыз (терезелер үчүн), "Хосттун аты" астында тапкан IP дарегиңизди киргизиңиз жана "Ачуу" баскычын басыңыз. Эскертүүнү кабыл алгандан кийин, сиз азыр буйрук сабын жана логинди көрө алышыңыз керек.
3 -кадам: Керектүү программалык камсыздоону жаңыртуу жана орнотуу
WiFi иштеп баштагандан кийин, Pi менен жаңыртыңыз:
sudo apt -get update -y && sudo apt -get upgrade -y
Жаңыртуу аяктагандан кийин (бир аз убакыт кетиши мүмкүн), биз колдоно турган программаны орнотуңуз;
sudo apt-get install python3 python3-serial apache2 -y
4 -кадам: Сенсорго туташуу (Бул мисалда Arduino)
Же USB борборун колдонуп Arduino -ны клавиатура менен туташтырыңыз же Arduino -ны бир USB порту аркылуу туташтырыңыз жана WiFi аркылуу SSH менен орнотуңуз.
Arduino туташкан сериялык портко кирүү үчүн демейки pi эсебине кирүү мүмкүнчүлүгүн берүү пайдалуу. Адатта Arduino "/dev/ttyACM0" портуна дайындалгандыктан, 'pi' колдонуучусуна портко кирүү үчүн төмөнкү буйрукту колдонуңуз:
sudo chown pi: /dev /ttyACM0
Ардуино мурунтан эле сериялык порт аркылуу маалыматтарды жөнөтүү үчүн орнотулган деп ойлосоңуз, pythonдогу маалыматтарды төмөнкүчө көрө аласыз:
Ачык питон;
python3
Сериалды импорттоо:
серияны импорттоо
Ком портун ачыңыз:
ser = serial. Serial (порт = '/dev/ttyACM0', baudrate = 9600, күтүү убактысы = 5)
Бул жерде Arduino'дун бодраты 9600 деп коюлган.
Сиз төмөнкү кодду иштетүү менен сапты окуп жана басып чыгара аласыз:
ser.readline (). декоддоо ('utf-8')
Эгер аны иштетип жатсаңыз, анда туташууну жаап, Pythonдон төмөнкүлөр менен чыксаңыз болот:
ser.close ()
чыгуу ()
5 -кадам: WiFi кирүү чекитинин мүмкүнчүлүктөрүн орнотуңуз
Pi Zero Wди Wi -Fi кирүү чекити режимине орнотуу менен, сиз ага каалаган WiFi түзмөгү менен туташа аласыз. Бул каттоону орнотууга жана wifi аркылуу маалыматты жүктөөгө мүмкүнчүлүк берет, кабелдер же драйверлер талап кылынбайт.
Бул үчүн, Adafruitте жакшы окуу куралы бар. Кээ бир кичинекей эскертүүлөр:
- /Etc/hostapd/hostapd.conf драйвери үчүн айдоочу линиясын колдонбоңуз.
- "Hostapd жаңыртуу" кадамы зарыл болбошу керек.
Эгерде кирүү чекити үйрөткүчтүн аягында иштебесе, Pi (sudo reboot) өчүрүп көрүңүз.
6 -кадам: Wifi кирүү чекити менен кардар режимдеринин ортосунда которулуу
Кээде сиз программалык камсыздоону жаңырткыңыз же Raspberry Pi'ге жаңы программаны орноткуңуз келет, бирок бул интернет байланышын талап кылат. Бактыга жараша, экөөнүн ортосунда которулуу абдан оңой.
Pi менен SSH аркылуу туташыңыз (wifi аркылуу эмес, кабель аркылуу). Кирүү чекити кызматтарын токтотуу менен баштаңыз:
sudo cystemctl hostapd.service токтотуу
sudo cystemctl stop isc-dhcp-server.service
Андан кийин тармак интерфейстеринин файлын түзөтүңүз:
sudo nano/etc/network/interfaces
Бул жерде сиз хостинг параметрлерин комментарийлеп, жана тармакка туташуу параметрлерин комментарийсиз калтырышыңыз керек. Аны бул жерден өзгөртүңүз:
#-Hosting параметрлери:
allow-hotplug wlan0 iface wlan0 inet static address 192.168.42.1 netmask 255.255.255.0 # -Network (client) параметрлери: #auto wlan0 # iface wlan0 inet dhcp # wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
Буга:
#-Hosting параметрлери: #allow-hotplug wlan0 #iface wlan0 inet static #address 192.168.42.1 #netmask 255.255.255.0 #-Network (client) параметрлери: auto wlan0 iface wlan0 inet dhcp wpa-conf /etc/wpa_supplicant/wpa_confupplicant/wpa_suppiant
Файлды сактап, жабыңыз.
Кийинкиде сиз төмөнкү командаларды иштетесиз:
sudo systemctl wpa_supplicant.service баштайт
sudo ifdown wlan0 sudo ifup wlan0
Эми сиздин Pi дагы wifiга туташып, программалык камсыздоону жаңыртууга жана орнотууга мүмкүндүк берет.
Кирүү чекити режимине кайтуу үчүн,/etc/network/interfaces комментарийлерин алмаштырыңыз жана Pi'ни өчүрүп күйгүзүңүз.
7 -кадам: Акыркы эскертүүлөр
Вебсайтты жөндөө
Apache сервери/var/www/жайгашкан. Демейки баракты өзгөртүү үчүн /var/www/html/index.html файлын түзөтүңүз.
Бул жерде файлдарды Wi -Fi аркылуу жүктөө үчүн жеткиликтүү кылсаңыз болот, браузериңизде Piнин IP дарегине өтүңүз (192.168.42.1). Wi -Fi иштетилген каалаган түзмөк аларды эч кандай кошумча программасыз жүктөй алат.
SFTP туташуусу
SSH аркылуу FTP туташуусу жасалышы мүмкүн. Сиз Filezilla менен файлдардын чоң көлөмүн тез жана оңой өткөрүп берүү үчүн колдоно аласыз (сүрөттү караңыз).
Реалдуу убакыт сааты
Пинин ички сааты интернетке туташуу жок болгондо олуттуу өзгөрөт, так убакытты сактоо талап кылынса, реалдуу убакыт сааты (RTC) модулу керек болот. Мындай модулдардын бири - RasClock, орнотуу инструкциясын бул жерден тапса болот. Башка i2c негизиндеги сааттар да бар (б.а. DS3231)
Жыйынтык
Эгер баары туура болсо, анда азыр иштөөчү Pi Zero маалымат каталогуна ээ болушуңуз керек! Python журналынын скриптинин мисалы кийинки кадамга киргизилген.
8 -кадам: Мисал Python Logging Script
импорт os
убакыттан импорттук убакыттан сериалды импорттоо датадан импорттоо датасы np ser = serial. Serial (port = 'COM4', baudrate = 57600, timeout = 5) каталог = r '\ var / www / html / data / anemometer / WMPro1352_ 'ser.flushInput () ser.flushOutput () аракет кылыңыз: ал эми True: day_timestring = datetime.strftime (datetime.now (),'%Y%m%d ') file_today = каталог + day_timestring +'.dat ' #Оку маалымат жана дароо убакыт линиясын алыңыз = ser.readline (). декодирование ('utf-8') nowtime = datetime.strftime (datetime.now (), '%Y-%m-%d%H:%M:% S.%f ') сап = line.split (', ') аракет: u = калкып жүрүү (сап [1]) башка: u = np.nan аракет кылуу: v = калкып чыгуу (сап [2]) тышкары: v = np.nan аракет: w = сүзүү (сап [3]) башка: w = np.nan аракет: c = калкып чыгуу (сызык [5]) тышкары: c = np.nan Ts = 1/403*c ** 2 - 273.15 аракет кылыңыз: Ta = калкып чыгуучу (сап [8]) башка: Ta = np.nan if (os.path.isfile (file_today))): open (file_today, 'a') fileobject: fileobject.write (nowtime+',') менен) fileobject.write (str (u)+','+str (v)+','+str (w)+','+str (c)+','+str (Ts)+','+ str (Ta)+'\ n') fileobject.clos e () башка: open (file_today, 'w') менен fileobject катары: fileobject.write ('"Убакыт", "у", "v", "w", "c", "Ts", "Ta" / n ') fileobject.write (азыр+', ') fileobject.write (str (u)+', '+str (v)+', '+str (w)+', '+str (c)+', '+str (Ts)+', '+str (Ta)+' / n ') fileobject.close () KeyboardInterruptдон башка: ser.close ()
Сунушталууда:
Жыгач LED оюн дисплейи Raspberry Pi Zero менен иштейт: 11 кадам (сүрөттөр менен)
Raspberry Pi Zero тарабынан иштетилген жыгач LED оюн дисплейи: Бул проект 20x10 пикселдик WS2812 негизделген LED дисплейин ишке ашырат, анын көлөмү 78х35 см, аны ретро оюндарын ойноо үчүн конок бөлмөсүнө оңой эле орнотсо болот. Бул матрицанын биринчи версиясы 2016 -жылы курулган жана башка көптөгөн адамдар тарабынан кайра курулган. Бул экспозиция
YouTube жазылуучусу электрондук кагазды көрсөтүү менен Raspberry Pi Zero Wди колдонот: 5 кадам (сүрөттөр менен)
E-Paper Display жана Raspberry Pi Zero W аркылуу YouTube жазылуучуларынын эсептегичи: Бул нускамада, мен сизге YouTube APIге суроо үчүн электрондук кагаз дисплейин жана Raspberry Pi Zero Wди кантип колдонууну көрсөтөм. жана дисплейди жаңыртыңыз. Электрондук кагаз дисплейлери мындай долбоор үчүн эң сонун, анткени алар
Астрофотография Raspberry Pi Zero менен.: 11 кадам (сүрөттөр менен)
Астрофотография Raspberry Pi Zero менен .: Мен Raspberry Pi негизиндеги дагы эки камера долбоорун жасадым [1] [2]. Бул менин үчүнчү камера идеям, менин биринчи Raspberry Pi Zero долбоорум. Бул менин астрофотографияга биринчи жолу баруум! Акыркы "Супер ай" менен шартталган, мен инимди алгым келген "
Raspberry Pi Zero менен өзүңүздүн чөйрөңүздү жарыктандырыңыз: 5 кадам (сүрөттөр менен)
Raspberry Pi Zero менен өзүңүздүн жеке чөйрөңүздү жарыктандырыңыз: Бул долбоордо мен сизге Raspberry Pi Zeroну бир нече кошумча бөлүктөр менен кантип айкалыштырууну көрсөтөм, бул сиздин сыналгыңызга айланадагы жарык эффектин кошуу үчүн, көрүү тажрыйбасын жакшыртат. Кел, баштайлы
Ыңгайлаштырылган PCB антеннасы менен Raspberry Pi Zero Wifi кирүү чекити: 6 кадам (сүрөттөр менен)
Ыкчам PCB антеннасы менен Raspberry Pi Zero Wifi кирүү түйүнү: Биз эмне кылып жатабыз? Бул окуу куралынын аталышында техникалык терминдер көп. Келгиле, аны талкалайбыз. Raspberry Pi Zero (Rπ0) деген эмне? Raspberry Pi Zero - бул кичинекей компьютер. Бул Raspberry Pi бир такталуу компьютеринин кичирээк версиясы