Мазмуну:
- 1 -кадам: Кардар жана Server
- 2 -кадам: Жергиликтүү Web Server түзүү
- 3 -кадам: Apache орнотуу
- 4 -кадам: Статикалык веб баракча жасаңыз
- Менин Raspberry Pi веб -сайты бар
- 5 -кадам: Кээ бир стилди кошуңуз
- 6 -кадам: PHP орнотуу
- 7 -кадам: Динамикалык веб баракча жасаңыз
- 8 -кадам: Tumblr API кардарын түзүңүз
- 9 -кадам: Tumblr жана/же веб -сайттын скриншотун алыңыз
Video: Raspberry Piңизди Интернетке туташтыруу: 9 кадам
2024 Автор: John Day | [email protected]. Акыркы өзгөртүү: 2024-01-30 10:39
Бул сабакта сиз веб -баракчаны түзүүнү, дүйнөлүк желени колдонуу менен маалыматтарды чогултууну жана Tumblr менен Twitterге сүрөттөрдү жайгаштыруу үчүн APIлерди колдонууну үйрөнөсүз.
1 -кадам: Кардар жана Server
Эсептөөдө кардар-сервер бул эки бөлүктөн турган программалык модель: кардар жана сервер. Экөө тең компьютер тармагы аркылуу же бир компьютерде чогуу байланышат. Кардар - бул серверге кызмат суроо -талаптарын коюуга таянган программасы бар компьютер же компьютер. Сервер - бул компьютердик программа же бул суроо -талаптарды кабыл ала турган, аларды иштетүүчү жана кардарга суралган маалыматты кайтара ала турган түзмөк. Кээде бир эле учурда бир нече тапшырманы аткаруучу машиналар менен иштөөдө кайсынысы экенин түшүнүү кыйын. Бул жерде кардар менен серверди айырмалоого жардам берүүчү айрым өзгөчөлүктөр бар.
Кардардын өзгөчөлүктөрү:
- Бул биринчи активист
- Сурамдарды серверге жөнөтөт
- Ал серверден жоопторду күтөт жана алат
- Адатта, графикалык интерфейс сыяктуу ар кандай колдонуучу интерфейсин колдонуп, акыркы колдонуучулар менен түз байланышат
Сервердин өзгөчөлүктөрү:
- Ал башында пассивдүү
- Бул кардарлар жөнөткөн сурамдарга жооп берүүгө даяр
- суроо келгенде, кардарларга суралган маалыматтар менен жооп берет
- Акыркы колдонуучулар адатта сервер менен түз байланышпайт, бирок кардарды колдонушат.
Кардар жана сервер мамилелеринин жалпы мисалы - веб -браузер (кардар) веб -серверде жайгаштырылган веб -баракчалардын файлдарын талап кылуу жана алуу.
2 -кадам: Жергиликтүү Web Server түзүү
Raspberry Pi сервердик тиркемени орнотуу жана иштетүү аркылуу веб -серверге айлана алат. Эки популярдуу ачык булак серверинин тиркемелери: NGINX (ачык кыймылдаткыч x) жана Apache. Бул сабакта сиз Apacheди колдоносуз, анткени бул жазуу боюнча ал дагы көбүрөөк документтештирилген. Бул интернеттен үйрөнүүнү жеңилдетет.
Сиздин Raspberry Pi бир тармакта каалаган түзмөк кире турган веб -сайтты өткөрөт. Кел, баштайлы!
3 -кадам: Apache орнотуу
Apache2 пакетин орнотуу. -Y желеги сиз үчүн орнотуу алдындагы коопсуздук суроосуна жооп берет.
sudo apt -get apache2 -y орнотуу
Apache орнотууну текшерүү үчүн толтургуч веб баракчасын түзүүчү тест HTML файлы менен келет. Бул тест HTML файлы Apacheдин түп каталогуна келет. Демейки боюнча, Apache веб -браузердин ичинде мазмунду түзүү үчүн веб -документтерди бул каталогдон издейт. Бул тест баракчасын карап чыгуу жана Apache чын эле туура орнотулгандыгын ырастоо үчүн, бул URL дарегин терүү менен веб -браузериңизге тартып алыңыз:
localhost/
Эгерде Apache туура орнотулган болсо, анда браузерде Apache тест веб баракчасын көрөсүз:
Сиздин Raspberry Piнин IP дарегин табыңыз
Сиз Raspberry Pi учурунда веб -баракчага кирүү үчүн localhost дарегин колдоно аласыз. Башка компьютерден веб -баракчага кирүү үчүн сизге Raspberry Piнин IP дареги керек. LXTerminalде IP дареги түрүн табуу үчүн:
ifconfig
Курсорду WiFi кабыл алуу белгисинин үстүнө алып келсеңиз, аны иш столунан да таба аласыз.
4 -кадам: Статикалык веб баракча жасаңыз
Сиздин Raspberry Pi азыр веб -баракчаны жана анда жарыяланган бардык мазмунду жайгаштыра алат. Веб баракчалардын эки негизги түрү бар: статикалык жана динамикалык. Статикалык баракта өзгөрбөгөн мазмун бар. Динамикалык барак сенсордун көрсөткүчтөрү же убакыттын жана датанын өзгөрүшү сыяктуу өзгөрүп турган маалыматтарды көрсөтө алат.
Статикалык барактан баштайлы. Аны түзүү үчүн HTML деп аталган тилди колдонуу керек. Веб -баракчага барганда, эң биринчи сиз индекстен көрүнөт.html баракчасы. Бул барак браузер көрсөткөн демейки баракча, эгерде башка барак көрсөтүлбөсө. Демейки боюнча, Apache бул жерден index.html файлын издейт:
/var/www/html
Бул документтин тамыры деп аталат жана ал жашыруун папка. Бул веб -баракчаларды кармоо үчүн арналган. Ал жакка барып, айлананы караңыз:
cd/var/www/html
ls
Сиз тизмеленген демейки тест index.html файлын көрөсүз. Эгерде сиз демейки файлды сактагыңыз келсе, mv буйругун колдонуп, аны defaultIndex.html сыяктуу бир нерсеге өзгөртүңүз.
sudo mv index.html defaultIndex.html
Эгерде сиз аны сактагыңыз келбесе, rm командасын колдонуу менен файлды алып салыңыз:
sudo rm index.html
Эми сиз өзүңүздүн index.html файлыңызды түзүп, түзөтө баштасаңыз болот:
sudo nano index.html
Sudo колдонууну унутпаңыз, www жана html каталогдору rootке таандык, андыктан сиз бул каталогдордо жашаган файлдарды түзүү, түзөтүү жана иштетүү үчүн root катары иштешиңиз керек.
Негизги HTML барагы
HTML - бул тереңге кеткен тил. Сиз муну менен көп нерсени жасай аласыз. Эгерде сиз көбүрөөк билгиңиз келсе, W3Schools веб -сайтын караңыз, анда веб -сайтты куруу үчүн HTMLди колдонуу боюнча көптөгөн окуу куралдарын таба аласыз. Биз жөнөкөй HTML баракчасынан баштайбыз.
Биринчиден, браузерге HTMLдин кайсы версиясын колдонуп жатканыңызды айтыңыз. Бул документ HTML5 документи катары жарыяланган:
Html жана body tags менен баштаңыз:
Мазмунуңуздун негизги бөлүгү дененин тегдеринин арасына кирет. Биринчи сапты h1 теги менен баш кылып жазыңыз. "Ч" дан кийинки сан шрифттин чоңдугуна таасир этүүчү аталыштын маанилүүлүгүн аныктайт. Абзацты аныктоо үчүн p тегин колдонуңуз:
Менин Raspberry Pi веб -сайты бар
Мен бул жерге эмне коюшум керек?
Негизги жана html жана тегдерди жаап баракты бүтүрүңүз:
Документти.html суффикси менен сактаңыз жана браузериңизде localhostко баш багыңыз. Сиз веб баракчаңызды көрөсүз!
Веб баракчасына эмнени коюу керек? Келгиле, анимеМе.gifтин сүрөтүн коёбуз, же жакшыраак! Кандайдыр бир актив бул веб -баракчада көрсөтүлүшү үчүн аны Apache'дин документ тамырына салыш керек. Сиз көчүрүп, чапташыңыз керек, ал boof/fotos каталогунда да калат. Файлды командалык сапка көчүрүү жана чаптоо үчүн cp командасын колдонуңуз. Биринчиден, CD сиздин үй каталогуна:
cd ~
AnimateMe-g.webp
sudo cp boof/fotos/animateMe.gif/var/www/html
Html каталогуна кайтыңыз:
cd/var/www/html
Index.html файлын кайра ачып, сүрөттү кошуңуз:
sudo nano index.html
HTML баракчасына сүрөттү аныктоо жана киргизүү үчүн img тэгин колдонуңуз. Төмөнкү сапты баш менен абзацтын ортосуна коюңуз.
Баракты браузерден ачыңыз, ал өзүңүздүн стилдүү селфи GIFтен башкача көрүнөт.
5 -кадам: Кээ бир стилди кошуңуз
Барак кичине жумшак окшойт. Түсү да, стили да жок. Бул жерде CSS келет. Бул веб баракчаны жагымдуу жана визуалдуу чыгармачыл кылуу үчүн HTML менен иштөөчү тил. Сиз бул жерге гана тийесиз, бирок эгер сиз W3schools жөнүндө көбүрөөк билгиңиз келсе, көбүрөөк билүү үчүн.
Мисал катары, келгиле, HTML файлыбызга CSSти кошуу менен фондун түсүн өзгөртөлү. CSSти колдонуп веб баракчаңызды стилдештирүүнүн бир нече жолу бар. Бул класс үчүн сиз CSSти HTML файлыңызга киргизүү үчүн стиль тэгдерин колдоносуз.
HTML баракчаңыздын жогору жагындагы биринчи html менен дене тегдеринин арасына төмөнкү саптарды коюңуз:
дене {background-color: powderblue;} тегдери. Бул мындай көрүнөт:
дене {background-color: powderblue;}
6 -кадам: PHP орнотуу
Статикалык баракчанын ордуна, сиз файлдарды колго жүктөбөстөн, өзгөртө ала турган динамикалык баракчаны жасай аласыз. Мунун популярдуу жолу PHP деп аталган скрипт тилин колдонуу. PHPди Raspberry Piде колдонуу үчүн, аны алгач Apache үчүн модулдук пакет менен орнотушуңуз керек:
sudo apt-get libapache2-mod-php5 php5 -y орнотуу
7 -кадам: Динамикалык веб баракча жасаңыз
PHPди HTMLA менен айкалыштырыңыз, эгерде PHP коду тегдердин ичинде болсо, аны HTML файл түзүмүнө кошсоңуз болот. Мисалы, учурдагы HTML жана PHP сценарийлериңизди бириктирип, HTML тегдерин колдонуу менен текстти чоңойтуңуз.
Келгиле, күндү жана убакытты көрсөтүүчү жөнөкөй PHP скриптин кошолу. Тегдердин арасына төмөнкүлөрдү чаптаңыз:
Файлды Ctrl + o менен сактаңыз, бирок кеңейтүүнү.html ден.phpге өзгөртүңүз, бул жаңы файлды сактайт. Браузерди чаташтырбоо үчүн, эски.html версиясын алып салыңыз:
sudo rm index.html
Веб браузериңизде localhostту жаңыртыңыз. Чыгаруу мындай көрүнөт:
Макул, анда эмне айырмасы бар? Бул кадимки HTML баракчасы окшойт, туурабы? Баракты жаңылаңыз жана сыйкырды көрүңүз. Сыйкыр заман өзгөрөт! Бул PHP жана анын камтылган date () функциясы динамикалык веб-баракча жасоо үчүн иштейт.
8 -кадам: Tumblr API кардарын түзүңүз
Raspberry Pi API (Application Programming Interface) аркылуу онлайн режиминде башка программалык камсыздоолордон маалымат сурап жана ала алат. API Raspberry Pi сыяктуу нерсеге пайдалуу нерселерди алуу үчүн веб -сайттын бардык маалыматтарын кесип салууну жеңилдетет. Raspberry Pi менен Tumblr, Twitter жана weather.com менен сүйлөшүп, сүрөттөрдү жайгаштырып, аба ырайынын божомолун көрсөтүңүз.
Raspberry Pi жана Tumblr
Төмөнкү көнүгүү Raspberry Pi менен Tumblr ортосунда сүйлөшүү жаратат. Кардар катары, сиздин Raspberry Pi Tumblrдан маалымат үзүндүлөрүн сурайт, андыктан ал сүрөттөрдү Tumblrдин алыскы серверине жүктөй алат, натыйжада сүрөттөр Tumblr эсебине жайгаштырылат. API менен иштөөдө Raspberry Pi алуу үчүн, балким, сиз колдоно турган китепкана бар. Tumblr үчүн Pytumblr бар. Кардар Python программасында Pytumblrда түзүлгөн камтылган функцияны колдонуу менен түзүлөт. Бул функция Tumblr тарабынан түзүлгөн төрт авторизация кодун колдонот:
- керектөө ачкычы
- керектөө сыры
- токен ачкычы
- токен сыры
Tumblr API'син колдонуудан мурун, сиз бул төрт ачкычты (сырсөздөргө окшош) алышыңыз керек. Аларды алуу үчүн бул кадамдарды аткарыңыз:
- Акысыз Tumblr эсебин түзүңүз жана кириңиз.
- Арызды каттаңыз. Сиз жөн гана негизги маалыматты беришиңиз керек, мисалы аталышы ("My Raspberry Pi" аракет кылыңыз), сүрөттөмөсү, электрондук почтасы жана веб -сайты (эгер сизде жок болсо, муну колдонуңуз). Катталгандан кийин сиз керектөөчү ачкычты жана керектөө сырын аласыз. Текст файлы же электрондук почта сыяктуу коопсуз жерге көчүрүп чаптаңыз. Аларга кайра кирүү үчүн Tumblr аккаунтуңуздун барагына өтүңүз, Эсеп менюсунда Орнотууларды тандап, Колдонмолорду чыкылдатыңыз.
- Ачкычыңызды жана жашыруун авторизация коддоруңузду колдонуп, иштеп чыгуучунун консолуна кириңиз. Сиздин атыңыздан жарыялоону каалайсызбы деп сураганда, уруксат берүүнү басыңыз.
- Иштеп чыгуучунун консолуна киргенден кийин, сиз бир нече тилдеги мисал кодун көрөсүз. Же Python өтмөгүн басып, OAuth блогун көчүрүңүз, же жогорку менюда Баскычтарды көрсөтүү баскычын басып, жетон ачкычын жана жашыруун коддорду мурунтан эле бар болгон эки код менен көрүңүз.
Келгиле, бул коддорду ишке киргизели жана animateMe.gifти жаңы Tumblr эсебиңизге жарыялаган Python программасын түзөлү.
Биринчи Pytumblr орнотуу:
sudo apt-get update
sudo pip орнотуу pytumblr
Үй каталогуңуздан, CDди boof папкасына салып, Python файлын түзүңүз:
cd boof
IDLE редакторунун жардамы менен файлыңызды түзүп, авторизация коддоруңузду кесип, чаптоону оңой кылыңыз. Муну testPytumblr.py файлына салып, төрт ачкычты жана колдонуучу атыңызды жаңыртыңыз:
pytumblr импорттоо
# OAuth аркылуу аныктыгын текшерүү, https://api.tumblr.com/console/calls/user/info клиентинен көчүрүү = pytumblr. TumblrRestClient ('your_consumer_key', 'your_consumer_secret', 'your_token', 'your_token_secret) 'your_account_username', state = "published", tags = ["raspberrypi", "picamera"], data = "fotos/animateMe.gif") басып чыгаруу ("жүктөлгөн")
Программа сиз үчүн жүктөлгөн сүрөттү "малина" жана "пикамера" менен белгилейт. Кааласаңыз, бул тегдерди алып салсаңыз, алмаштырсаңыз же кошсоңуз болот. Бул client.create_photo () колдонулган тегдер деп аталган өзгөрмөдө сакталат.
Программаны иштетүү үчүн F5 баскычын басыңыз. Ката болот … бирок сиз буга чейин Pytumblr орнотконсуз, анда эмне үчүн Python модулду таба албай жатат деп жатат? Бул Pytumblr Python 3тү колдобогондуктан, ал Python 2*гана иштейт. Python 2 IDLE редакторун ачыңыз жана кодуңузду кесип, чаптаңыз, Python 3 программасынын үстүнө жазыңыз жана андан кийин иштетиңиз.-g.webp
Бул кызыктуу бөлүгү! Tumblr баракчаңызга барып, GIFти карап көрүңүз! Программаңызда "жарыяланганды" "долбоорго" алмаштырыңыз, эгер анын ордуна долбоорлорду түзүүнү кааласаңыз.
*Бул класс жарыялангандан кийин, дагы бир github колдонуучу айрым буйруктар үчүн Python 3кө колдоо кошуп, оригиналын айрып салды.
Эгерде пост көрүнбөсө, төрт ачкычыңызды жана Tumblr колдонуучу атын туура киргизгениңизди жана Пиңиздин интернет байланышы активдүү экенин эки жолу текшериңиз. Сиз ошондой эле Python 2ди колдонуп, скриптиңизди командалык саптан иштете аласыз (эгер сиз азырынча жок болсоңуз, папкаңызга өтүңүз):
python testPytumblr.py
9 -кадам: Tumblr жана/же веб -сайттын скриншотун алыңыз
Ага-g.webp
Сунушталууда:
Топурактын нымдуу кайтарым байланышын көзөмөлдөгөн Интернетке туташкан тамчылатып сугаруу системасы (ESP32 жана Blynk): 5 кадам
Топурактын нымдуу кайтарым байланышын көзөмөлдөгөн Интернетке туташкан тамчылатып сугаруу системасы (ESP32 жана Blynk): Узак эс алууга чыкканыңызда бакчаңыз же өсүмдүктөрүңүз үчүн тынчсызданыңыз, Же өсүмдүгүңүздү күн сайын сугарууну унутуңуз. Бул жерде чечим - бул жер кыртышынын нымдуулугун көзөмөлдөгөн жана глобалдык туташкан тамчылатып сугаруу системасы программалык камсыздоонун алдында ESP32 тарабынан башкарылат
Raspberry Piңизди кантип алыскы кирүү шлюзуна айландыруу керек: 6 кадам
Raspberry Piңизди кантип алыскы кирүү шлюзуна айландыруу керек: Эй балдар! Акыркы болуп жаткан окуяларды эске алганда, remote.it биздин команда алыскы жумушту оорутпаган жана жеткиликтүү кылуу үчүн идеяларды мээ чабуулунда катуу кармашты. Биз жаңыга киргизе турган SD картасы болгон remote.itPi SD картасынын сүрөтүн ойлоп таптык
Автоматтык сугаруу, интернетке туташуу жана башка көптөгөн нерселер менен сонун күнөскана: 7 кадам (сүрөттөр менен)
Автоматтык сугаруу, Интернетке туташуу жана башка көптөгөн нерселер менен сонун күнөскана: Бул көрсөтмөлөргө кош келиңиз. Марттын башталышында мен бакчадагы дүкөндө болсом, күнөсканаларды көрдүм. Мен көптөн бери өсүмдүктөр жана электроника менен долбоор түзгүм келгендиктен, мен алдыга чыгып, бирин сатып алдым: https://www.instagram.com/p
Интернетке туташкан дүкөн стерео жасоо: 6 кадам (сүрөттөр менен)
Интернетке туташкан дүкөн стерео жасоо: Машинаны айдап баратып радиону күйгүзгөндө мен жергиликтүү колледждеги 90.7 KALX радиостанциясына кайрылам. Мен жашаган жылдар бою жана ар кайсы жерлерде мен дайыма колледждин радиостанцияларын угуп келгем. Интернеттин күчү менен мен азыр уга алам
Raspberry Piңизди коргоого 5 кеңеш: 7 кадам
Raspberry Piңизди коргоонун 5 кеңеши: Raspberry Piди тышкы дүйнөгө туташтырууда коопсуздук жөнүндө ойлонушуңуз керек. Бул жерде Raspberry Pi'ни коргоо үчүн колдоно турган 5 кеңеш. Кел, баштайлы