Мазмуну:

Raspberry Pi Интернет -аба ырайы станциясы: 5 кадам (Сүрөттөр менен)
Raspberry Pi Интернет -аба ырайы станциясы: 5 кадам (Сүрөттөр менен)

Video: Raspberry Pi Интернет -аба ырайы станциясы: 5 кадам (Сүрөттөр менен)

Video: Raspberry Pi Интернет -аба ырайы станциясы: 5 кадам (Сүрөттөр менен)
Video: 17. Доступ в домашнюю сеть из Интернета через VPN на Raspberry Pi. 2024, Июль
Anonim
Raspberry Pi Интернет -аба ырайы станциясы
Raspberry Pi Интернет -аба ырайы станциясы
Raspberry Pi Интернет -аба ырайы станциясы
Raspberry Pi Интернет -аба ырайы станциясы

*** Жаңыртуу ***

Бул Нускамалар эскирип калган. Бул Нускамада колдонулган аба ырайы маалыматтары үчүн аба ырайы кызматы мындан ары иштебейт. БИРОК, негизинен ошол эле нерсени аткарган альтернативдүү долбоор бар (бир гана жакшыраак - бул Нускоо дайыма эле хакерлик болгон). Ошентип, бул жерде сиз шилтеме кылгыңыз келет:

https://piweatherrock.technicalissues.us/

PiWeatherRockтогу Джин Ливерманга бул долбоордун мантиясын алуу үчүн чоң рахмат.

Бул Instructable сизге чынында эле салкын Raspberry Pi Интернетке негизделген аба ырайы станциясын кантип курууну көрсөтөт. Чынында, бул курулушту "метеостанция" деп атоо бир аз түшүнүксүз. Бул курулуш жөн гана аба ырайына караганда көбүрөөк камсыз кылуу үчүн узартылышы мүмкүн. Бирок, бул жакшы башталыш жана менин столумда чындап эле сонун көрүнөт.

Биздин үй -бүлө (макул, көбүнчө мен), үй -бүлөлүк iPad ашкананын үстөлүндө, колдонулбаган учурда, учурдагы сырткы аба ырайынын шарттарын акырын көрсөтүп ырахаттанат. Бирок, iPadты аркада бешик корпусуна салып жана түшүрүү оорутат. Мындан тышкары, мен аба ырайын караганы барганда, кимдир бирөө iPad / аба ырайынын дисплейин тартып алганын байкадым. Балдардын iPad сыяктуу серпилбей турган туруктуу үстү дисплейи керек.

1 -кадам: Башт 1 - Lunchbox Pi аба ырайы станциясы

Башт 1 - Lunchbox Pi аба ырайы станциясы
Башт 1 - Lunchbox Pi аба ырайы станциясы
Башт 1 - Lunchbox Pi аба ырайы станциясы
Башт 1 - Lunchbox Pi аба ырайы станциясы

Менин биринчи оюм кичинекей курама видео дисплейди колдонуу болчу. Мен Ebayдеги сүрөттөгү нерсени $ 22 долларга алдым - жөн эле "4.3 дюймдук TFT LCD Car Rear View Monitor Car Monitor" боюнча издеңиз. Дисплейде 656дан 416 пикселге чейин чечим бар, бул көптөгөн пайдалуу маалыматты көрсөтүүнү кыйындатат! Дисплей камсыздоо чыңалуусу катары 12Vdc талап кылат. Raspberry Pi, албетте, камсыздоо чыңалуусу катары 5Vdcке муктаж. Муну чечүү үчүн мен Amazonдон арзан USB унаа заряддагычын сатып алдым. 6 доллардын тегерегинде мен 5Vdc by 2 Amp унаа алмаштыргычты таптым. Ошондуктан, түштөнүү кутусунда сырткы 12Vdc дубал сөөлү бар. 12Vdc дисплейге түздөн -түз кубат берет. 12Vdc ошондой эле жөнгө салынуучу 5Vdc чейин чыңалууну төмөндөтүүчү USB унаа заряддагычына барат. Акыркы бузуу катары, мен автоматтык кубаттагыч менен Raspberry Pi ортосунда жуп зымдарды ширеттим - бул менин эң жакшы оюм эмес.

Баары бирдей иштеп жатканда, мен курама дисплейдеги видеонун сапатына канааттанган жокмун. Дисплейдеги кичинекей шрифт мен каалагандан да бүдөмүк болчу. Андан тышкары, түшкү тамак кутусу алгач сүйкүмдүү көрүнсө, кийинчерээк ал бир аз сүйкүмдүү көрүндү.

2 -кадам: Башт 2 - HDMI Монитор + Laser Cut Plexiglass Аркада Кассасы

Gen 2 - HDMI Монитор + Лазердик Плексигласс Аркада Кассасы
Gen 2 - HDMI Монитор + Лазердик Плексигласс Аркада Кассасы
Gen 2 - HDMI Монитор + Лазердик Плексигласс Аркада Кассасы
Gen 2 - HDMI Монитор + Лазердик Плексигласс Аркада Кассасы
Gen 2 - HDMI Монитор + Лазердик Плексигласс Аркада Кассасы
Gen 2 - HDMI Монитор + Лазердик Плексигласс Аркада Кассасы

Кайра eBayден мен 800х600 токтому бар, 54 долларлык жакшы HDMI ачык фрейм мониторун таптым. Аныктоо боюнча, ачык алкакка эч нерсе орнотуу үчүн рамка керек. Түшкү тамак кутучасынын сүйкүмдүүлүгү узак болгондуктан, лазер менен кесилген акрилдин убактысы келди. Менин жергиликтүү хакердик мейкиндигим i3Detroit чындыгында сонун ватт кескичке ээ, ал 4.5 мм акрилден фарш жасай алат.

Мен аркада корпусумду iPad аркада кутусуна негиздедим. Эгерде мен качандыр бир убакта Gen 3 дизайнын түзсөм, анда ал Pi үчүн алынуучу / слайд табагын камтыйт. Көрсө, бул Пи менен каптал дубалдын ортосунда көп орун жок болгондуктан, нерселерди Пи -га туташтырууга аракет кылуу моюнумдагы чоң оору.

HDMI монитору да 12Vdc түрмөгүн талап кылат. Ошентип, мен дагы бир жолу USB унаа заряддоо түзүлүшүн колдондум. Бирок, бул жолу мен эски USB кабелин кесип салдым, андыктан Piдеги ширетилген зымдар талап кылынбайт.

Эгерде кимдир бирөө аркадага кызыкса, астына комментарий жазыңыз, мен DXF файлдарын жүктөйм. Же болбосо, файлдар менин веб-сайтымда ph-elec.com.

3 -кадам: Pi орнотуу

Pi орнотуу
Pi орнотуу

Керектүү программалык камсыздоо менен жаңы Raspberry Pi орнотуу анчалык деле кыйын эмес. Бардык программалык камсыздоо Pythonдо бир гана Python модулу менен жазылган. Кошумча Python модулу "pywapi" деп аталат. Бул жерде модулду жүктөп алсаңыз болот. Бул модуль Yahoo, Weather.com же NOAAдан реалдуу убакытта аба ырайын алууну жеңилдетет.

Биринчиден, бул жерде чийки Raspberry Pi орнотуу үчүн текшерүү тизмеси:

  1. Акыркы Raspbian (Debian Wheezy) жүктөп алыңыз.. Img файлын алуу үчүн ачыңыз.
  2. SD картага "dd bs = 4M if = 2014-09-09-wheezy-raspbian.img of =/dev/sdb" менен жазыңыз
  3. Dd буйругу болжол менен беш мүнөткө созулат. Бүткөндөн кийин, түтүктөрдү тазалоо үчүн "синхрондоштурууну" иштетиңиз.
  4. SD картасын Piге орнотуп, кайра жүктөңүз. Pi менен Ethernet байланышы бар экенин текшериңиз.
  5. Роутердеги "Тиркелген түзмөктөр" барагын колдонуп, жаңы Piнин IP дарегин табыңыз.
  6. Pi'ге "ssh [email protected]. ???" аркылуу кириңиз. кайда ??? жогорудагы IP номери. Сырсөз "малина" болот.
  7. Pi'де, демейки жөндөөлөрдү орнотуу үчүн "raspi-config" буйругун колдонуңуз.

    1. GUIге автоматтык жүктөөнү күйгүзүңүз.
    2. Хосттун атын "MyPi" сыяктуу нерсеге коюңуз.
  8. VNCти Pi'ге "sudo apt-get install tightvncserver" менен орнотуңуз.

    Сырсөздү орнотуучу "tightvncserver" иштетиңиз

  9. Linuxтун чоң кутусуна кайтып келип, Pi GUI рабочийин көрүү үчүн "Алыскы Иш столун" колдонуңуз.

    1. Протоколду "VNC" жана IP номерин "192.168.1.???:1" деп коюңуз. IP номеринин аягындагы ": 1" ге көңүл буруңуз.
    2. Туташуу баскычын басып, VNC сырсөзүн бериңиз.
    3. Bingo, алыскы GUI Pi үстөлү!

      Бул жаңы Piге туташуу үчүн мониторду, клавиатураны жана чычканды сүйрөп куткарат

    4. Иш столунда WiFi орнотуу сөлөкөтүн иштетиңиз. Тармакка туташуу үчүн жаңы Pi / USB WiFi орнотуңуз.
    5. VNC туташуусун жабыңыз - биз азыр алыскы иштөө столдору менен иштейбиз.
  10. Кайра ssh терезесинде, "sudo reboot" менен Pi'ни өчүрүңүз. Ethernet кабелин ажыратыңыз, анткени WiFi азыр жөндөлүүдө.
  11. Үй роутерине кайрылып, WiFi менен Pi колдонуп жаткан жаңы IP номерин табыңыз.
  12. Ssh колдонуп, жаңы IP номерин колдонуп кайра кириңиз. Бул жолу туташуу WiFi аркылуу болот.
  13. Linuxтогу Файлдар башкаруучусун колдонуп, "серверге туташуу" буйругун колдонуу менен Pi менен туташыңыз.

    Сервердин дареги "sftp: //192.168.1. ???/home/pi"

  14. Негизги орнотуу аяктады.

Андан кийин, pywapi жүктөлүп, орнотулушу керек. Дагы, бул төмөнкү кадамдар менен өтө кыйын эмес:

  1. Бул жерден акыркы жаңыртууну жүктөп алыңыз. Архивди жаңы каталогго чыгарыңыз.
  2. File Manger колдонуп, каталогду Pi үй каталогуна көчүрүңүз.
  3. Ssh колдонуп, Piде төмөнкүлөрдү аткарыңыз:

    1. cd pywapi-0.3.8
    2. sudo python setup.py куруу
    3. sudo python setup.py орнотуу
  4. Бүттү.

Жаңыртуу, мен эки башка нерсени унутуп калдым:

  1. Pi боюнча төмөнкү буйрукту аткарыңыз:

    1. sudo apt-get орнотуу avahi-daemon

      Бул Pi менен аты менен байланышууга мүмкүндүк берет. Ошентип, негизги компьютериңизде IP номерлерин колдонуунун ордуна "ssh [email protected]" катары туташсаңыз болот. Тармактагы бир нече Пи менен, аларды аты менен чакырбаса, аларды чаташтыруу оңой

    2. sudo raspi-config

      1. "Интернационалдаштыруу параметрлери" деп аталган 4 -вариантты издеңиз жана иштетиңиз жана убакыт алкагыңызды коюңуз.
      2. Убакыт алкагы орнотулганда жана ntpdде (тармактык убакыт протоколунун демону) Pi иштеп жатканда, ар дайым туура убакытты бир нече миллисекунд ичинде көрсөтөт! Аны сүйүшүм керек.
  2. Макул, эми кайра бүттүк.

4 -кадам: Булак коду

Булак коду
Булак коду

Бул кичинекей аба ырайы дисплейинин бардык баштапкы коду Python, PyGame жана Pywapiге негизделген. Бардык ачык булак / акысыз программалык камсыздоо.

PyGame бардык GUI нерселерин жасоо үчүн колдонулат. Чынында укмуш нерселер. PyGame колдонуп, бүт дисплей секундасына бир жолу кайра курулат. Менин баштапкы кодумдун чокусуна жакын, сиз ар кандай дисплей өлчөмдөрүн өзгөртүүгө мүмкүнчүлүк берген бөлүмдү таба аласыз. Кичинекей курама видео дисплей үчүн бир бөлүм жана чоңураак HDMI дисплейи үчүн экинчи бөлүм бар. Мен жөн гана мага керектүү дисплей өлчөмүнө негизделген эки бөлүмдүн бирин комментарийлейм.

Менин баштапкы кодумду иштетүү үчүн, тиркемени ачып, Файлды башкаруунун жардамы менен бүт каталогду Piге көчүрүңүз. Көчүрүлгөндөн кийин, кодду төмөнкү ssh командаларын колдонуп баштаңыз:

  1. cd Аба ырайы
  2. sudo python аба ырайы.py

Sudo буйругу Python GPIO казыктарын көзөмөлдөп / окуй алышы үчүн керек. Балким, бул чектөөнүн кандайдыр бир жолу бар, бирок ал мени четке кагат.

Баары ssh аркылуу иштей баштаганда, аба ырайы автоматтык түрдө кайра жүктөлө баштайт. Бул да чынында оңой жасалат.

  1. Ssh колдонуп, "sudo vi /etc/rc.local" иштетиңиз
  2. "0 чыгуу" деп жазылган акыркы саптын алдында, саптарга төмөнкүлөрдү кошуңуз.

    1. cd/home/pi/Аба ырайы
    2. sudo python аба ырайы.py &> err.log

Бул автоматтык түрдө кайра жүктөөдөн кийин Piдеги аба ырайы тиркемесин баштайт. Эгер кийинчерээк муну өчүргүңүз келсе, файлды түзөтүү үчүн ssh колдонуп, эки саптын алдына "#" комментарийлерин кошуп, кайра жүктөңүз.

Эскертүү, менин баштапкы кодум чоң хак жана мен аны менен сыймыктанбайм. Бирок, мен аны презентация болгонго чейин күтсөм, ал эч качан көрсөтүлбөйт. Ошондуктан, алыңыз же таштаңыз, ыйлабаңыз, анткени менин терим абдан ичке.

Менин кодум жөнүндө дагы бир нече нерсени белгилей кетүү керек. Ал жерге көмүлгөндө, сиз X10 түзмөгү менен сүйлөшүү үчүн кээ бир кодду байкайсыз. Бул менин A3 дарегимдеги сырткы мамычанын жарыктарын башкарууга болгон аракетим болчу. Мен жөн гана күүгүмдө чырактарды күйгүзүп, таң атканда өчүргүм келди. Жеткиликтүү оңой көрүнөт жана мен аны иштеп жатам деп ойлогом. Пи боюнча USB-to-RS232 донглун колдонуу менен мен CM11A X10 модулун туташтыргам. CM11A эски X10 макро модулу. CM11A да RS232 портуна ээ, ал X10 автобусун башкарууга мүмкүндүк берет. Лампанын мамычалары кабар албай жаткандыктан, дагы деле кээ бир мүчүлүштүктөр бар окшойт!

Белгилей кетчү нерсе, чоңураак дисплейде дисплейдин оң жагында жакшы ачык боштук бар. Менин планым - бул аймакка статус чырактарын кошуу. Мен кээ бир IEEE802.15.4 радиолору менен ойноп жатам жана алардын чыгуулары бир күнү ошол ачык жерде көрүнөт.

Акыркы жана эң чоң жаңыртуулар үчүн ph-elec.com менин веб-сайтыма баш багыңыз.

Ооба, сизди кызыктырган суроолордун астындагы комментарийлер бөлүмүнө билдириңиз.

Рахмат, Джим.

О, жана мага добуш берүүнү унутпа! Дагы бир жолу рахмат.

BTW: Менин веб-сайтымда дайыма көбүрөөк маалымат бар: www.ph-elec.com

5 -кадам: Метрикалык жаңыртуу

Метрикалык же империалдуу көрсөтүүгө мүмкүндүк берген жаңы версия тиркелген.

Бул жардам берет деп үмүттөнөм, Джим

Сунушталууда: