Բովանդակություն:
- Քայլ 1: Ի՞նչ է ժամացույցի ձգումը:
- Քայլ 2. Մի փոքր օգնություն թռչող խոզերից
- Քայլ 3: TL; DR տարբերակ
- Քայլ 4: Տեղադրում
- Քայլ 5: Տեղադրեք Pigpio
- Քայլ 6: Լրացուցիչ. Dev համակարգի կարգավորում
- Քայլ 7: WinSCP- ի տեղադրում
- Քայլ 8. (W) Կոդի ձեռքբերում
- Քայլ 9: Նշում ապագա հաքերների համար
Video: TinyLiDAR Pi- ի վրա ?: 9 քայլ (նկարներով)
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:51
Կրկին ողջույն!
Դե հիմա, երբ որակի ժամանակ անցկացրիր tinyLiDAR- ի և քո Arduino- ի հետ. Գուցե քո Raspberry Pi- ն քեզ մի փոքր միայնակ զգա;)
Pi- ն I2C պորտ ունի, չէ՞: Ուրեմն ինչու չկապել այն և չփորձել այնտեղ: Լավ ծրագիր է, բայց եթե արդեն փորձել եք, երևի նկատել եք, որ տվյալները մի փոքր տարօրինակ են թվում:
Այո, pi- ն արդեն կառուցել է 1.8K քաշքշուկներ, այնպես որ դուք ստիպված կլինեք կտրել I2C բարձիկները tinyLiDAR- ի վրա ՝ 4.7K քաշքշուկները միացումից դուրս բերելու համար: Մանրամասների համար տե՛ս տեղեկատու ձեռնարկը: Բայց դա տարօրինակ տվյալների պատճառը չէ:
Դա պայմանավորված է նրանով, որ pi- ի I2C ավտոբուսը ճշգրտորեն չի համապատասխանում տեխնիկական պայմաններին: Այսպես է եղել այն պահից, երբ pi- ն առաջին անգամ ներդրվեց Broadcom չիպերի հավաքածուի շնորհիվ: Նրանք ի սկզբանե պատշաճ կերպով չեն աջակցում I2C գործառույթին, որը կոչվում է «ժամացույցի ձգում»:
Այս h/w սխալի մասին ավելին կարող եք կարդալ այստեղ:
Քայլ 1: Ի՞նչ է ժամացույցի ձգումը:
Ինչպես գիտեք, I2C ավտոբուսը բաղկացած է 3 լարերից: Սրանք ժամացույցի (SCL), տվյալների (SDA) և ընդհանուր հիմքերի համար են: Clockամացույցի և տվյալների տողերը բաց հավաքիչ/բաց արտահոսքի տիպի են, ինչը նշանակում է, որ դրանք տրամաբանական բարձրություն հաղորդելու համար անհրաժեշտ են ձգման դիմադրիչներ, որոնք միացված են դրական մատակարարման ռելսին: Տրամաբանությունը ցածր լինելու համար ավտոբուսում գտնվող ցանկացած սարք կարող է գիծը ներքև քաշել դեպի ընդհանուր հիմք:
I2C ստանդարտի համաձայն ՝ Master սարքն այն է, ով ապահովում է SCL գծի ժամացույցի ազդանշանը, բայց եթե այս արագությունը շատ արագ է, ապա Slave սարքին թույլատրվում է այն դանդաղեցնել ՝ պարզապես պահելով ժամացույցի գիծը, մինչև պատրաստ լինի գործելու տեղեկատվության հետ: Սա այն է, ինչ մենք անվանում ենք «ժամացույցի ձգում»:
Պաշտոնապես, ժամացույցի ձգումը I2C ստանդարտում նշվում էր որպես կամընտիր հատկություն, բայց դա շատ տարածված հատկություն է, որն անհրաժեշտ է «խելացի» ստրուկների մեծամասնության համար, որոնց սենսորային տվյալներ տրամադրելու համար լրացուցիչ ժամանակ է անհրաժեշտ և այլն:
Քայլ 2. Մի փոքր օգնություն թռչող խոզերից
Այս I2C ժ/վ սխալը լուծելու համար մենք գտանք մի գեղեցիկ փոքրիկ անվճար գրադարան, որը կոչվում է «խոզուկ»: Դա շատ սիրված, արագ և թեթև գրադարան է, որը գրված է C- ով: Այն աշխատում է որպես Raspberry Pi- ի ֆոնային դևոն և թույլ է տալիս մեզ վերահսկել I2C- ն, ինչպես նաև ցանկացած GPIO- ն ՝ հեշտությամբ python- ից: Գրադարանը I2C նավահանգիստներին ավելի նման է GPIO- ի և դրանով իսկ շրջանցել է I2C ժամացույցի ձգվող սխալը: Ինչպես pi- ի բոլոր ծրագրակազմը, այնպես էլ pigpio գրադարանը պարզապես մի պարզ «ընդգրկում» է, ուստի եկեք գնանք:
Քայլ 3: TL; DR տարբերակ
Տեղադրեք PiEnable SSH- ը Putty- ի հետ մուտք գործելու համար Տեղադրեք pigpio գրադարանը Ստացեք փոքրիկ LiDAR zip ֆայլ Բացեք և գործարկեք Putty- ից
Լրացուցիչ:
Կարգավորեք SublimeText- ը WinSCP- ով
Քայլ 4: Տեղադրում
Մեր Raspberry Pi 3 -ի համար մենք օգտագործում էինք ստանդարտ New Out of Box Software (NOOBS Lite v2.4) օպերացիոն համակարգը: Այն պարունակում է մեզ համար արդեն տեղադրված Python- ի լռելյայն տարբերակ, որը պատրաստ է կոդավորելու համար: ՕՀ -ն կարող եք ներբեռնել այստեղից:
Միկրո SD քարտի վրա տեղադրվելուց հետո դուք պետք է միացնեք ստեղնաշար և մոնիտոր, որպեսզի առաջին անգամ մուտք գործեք pi:
Մականուն: pi Գաղտնաբառ: ազնվամորի
Այնուհետև կարող եք սկսել անվտանգ shell սերվեր (SSH) այս հրամաններով.
sudo systemctl միացնել sshsudo systemctl սկսել ssh
Հաջորդը մեզ պետք կգա ձեր ցանցի pi հասցեն, որպեսզի կարողանանք մուտք գործել PuTTY: Սա ստանալու համար պարզապես մուտքագրեք.
հյուրընկալողի անունը -I
Եվ փնտրեք IPv4 ձևաչափի հասցե (մեր տեղադրման համար այն էր ՝ 192.168.0.27)
Վերոնշյալ քայլերը pi- ին թույլ կտան գործարկել «անգլուխ», ինչը նշանակում է, որ ձեզ այլևս պետք չէ այս ստեղնաշարի վրա մուտքագրել, և այլևս տեսահսկման կարիք չկա: Հետագայում մենք մուտք կգործենք ցանցի միջոցով ՝ ապահով SSH կապի միջոցով: Վերոնշյալ հրամանը առաջացնում է SSH սերվերի ինքնաբերաբար գործարկում ամեն անգամ, երբ pi- ն միացված է: Սա հարմար է մեզ համար, մինչ մենք կոդավորում ենք, բայց դա կարող է անվտանգության ռիսկ լինել ավելի ուշ (պարանոիդ լինելը լավ է), այնպես որ, երբ պատրաստ լինեք, կարող եք անջատել այս ավտոմատ գործարկման SSH գործառույթը ՝ օգտագործելով այս հրամանը.
sudo systemctl անջատել ssh- ը
Այս հրամանը պետք է մուտքագրվի, իհարկե, pi- ին միացված ստեղնաշարի վրա:
PuTTY- ը տերմինալ ծրագիր է, որը պահանջվում է համակարգչից pi- ին հրամաններ տալ, այնպես որ այստեղից պետք է գրեք վերջին օրինակը:
Տեղադրեք և գործարկեք PuTTY: Դուք պետք է մուտքագրեք IP հասցեն վերևից ՝ Host Name- ի մուտքում և օգտագործեք կանխադրված SSH կարգավորումները: Տվեք նիստին ձեր ուզած ցանկացած անուն և սեղմեք պահպանել: Այնուհետև սեղմեք բեռը և սեղմեք OPEN ՝ նիստ սկսելու համար:
Այն պետք է ձեզ հասցնի pi- ի մուտքի էկրանին: Օգտագործեք ձեր նույն օգտվողի անունն ու գաղտնաբառը, որոնք նախկինում օգտագործել եք:
Քայլ 5: Տեղադրեք Pigpio
Այժմ, միակ բանը, որ մենք պետք է տեղադրենք սրանից հետո, կլինի pigpio գրադարանը, և մենք կարող ենք դա անել ՝ օգտագործելով հետևյալ հրամանները:
Հուշում. Դուք կարող եք պարզապես պատճենել [ctrl+c] և տեղադրել [մկնիկի աջ սեղմում] այս և ցանկացած այլ հրամաններ PuTTY տերմինալում
sudo apt-get թարմացում
sudo apt-get տեղադրել pigpio python-pigpio python3-pigpio
Քայլ 6: Լրացուցիչ. Dev համակարգի կարգավորում
Այսպիսով, ահա հուշում, որը կարող է օգնել որոշ ժամանակ խնայել ձեր ծածկագրերի մշակման աշխարհում: Մենք իսկապես ատում ենք unix- ի վրա հիմնված տեքստային խմբագիրներին: Օգտվողի միջերեսը սովորաբար անշնորհք է, իսկ տառատեսակները ծծում են: GNU nano- ն գրեթե տանելի է, բայց ոչ մեկն այնքան զտված չէ, որքան SublimeText- ը, որը կարող եք ներբեռնել այստեղից
Մենք ունենք պատուհանների վրա հիմնված զարգացման միջավայր և սիրում ենք հնարավորության դեպքում օգտագործել այս տեքստային խմբագրիչը: Այսպիսով, խորհուրդն այն է, որ դուք ստեղծեք ձեր համակարգը, որպեսզի կարողանաք օգտագործել այս մասնագիտական տեքստային խմբագրիչը ձեր Windows պատուհանների աշխատասեղանին `ուղղակիորեն ծածկելու ձեր անգլուխ pi- ին:
Ինչպե՞ս: Օգտագործելով WinSCP անունով անվճար ծրագիր, որը կարող եք ներբեռնել այստեղից
Քայլ 7: WinSCP- ի տեղադրում
WinSCP- ը ֆայլերի փոխանցման անվտանգ ծրագիր է, որը տալիս է ձեր rpi- ում առկա ֆայլերի գրաֆիկական ներկայացում, ինչպես այն, ինչ տեսնում եք ֆայլերի կառավարիչում ձեր Windows համակարգչի վրա:
Այսպիսով, առաջ գնացեք և տեղադրեք վերը նշված երկու ծրագրերը նույնպես հիմա:
Հաջորդը, դուք պետք է մի քանի ճշգրտումներ կատարեք, որպեսզի դրանք բոլորը ճիշտ աշխատեն:
WinSCP- ի համար կարող եք սեղմել NEW Site- ի վրա: Մենք կօգտագործենք լռելյայն SFTP կարգավորումները, և ձեզ հարկավոր է միայն մուտքագրել ձեր pi- ի IP հասցեն (Հոստի անվան համար) և մուտքի անունը (Օգտվողի անվան համար): Եթե ցանկանում եք, կարող եք գաղտնաբառը դատարկ թողնել. Ամեն անգամ մուտք գործելիս այն ձեզ հուշում է գաղտնաբառի մասին:
Հաջորդը, կտտացրեք Ընդլայնված կոճակին, այնուհետև ձախ կողմում կտտացրեք Environment Shell- ի կարգավորումները: Աջ կողմում փոխեք «Լռելյայն» կետը դեպի «sudo su -» տարբերակը: Սա թույլ կտա փոփոխություններ գրել ձեր pi- ում ՝ առանց թույլտվության սխալների, երբ SublimeText- ից պահում եք:
WinSCP- ում SublimeText- ը դարձրեք կանխադրված խմբագիր
Դա անելու համար կտտացրեք WinSCP Մուտքի կարգավորումների էկրանի Գործիքներ կոճակին, որտեղից սկսել եք Ձեր NewSite երկխոսությունը: Երկու էկրանի նկարահանումները ցույց են տալիս, թե ինչպես է դա կազմաձևված, բայց հիմնականում դուք կտտացրեք խմբագիրների նախապատվությունը կազմաձևելու և Ավելացրեք խմբագիր, որը կլինի արտաքին խմբագիր: Այնուհետև կարող եք դիտել.exe ֆայլը, որտեղ այս խմբագիրը գտնվում է ձեր համակարգչում:
Քայլ 8. (W) Կոդի ձեռքբերում
Ավարտելուց հետո շարունակեք և մուտք գործեք WinSCP և PuTTY- ով:
Այժմ մենք արդեն պատրաստ ենք, կարող ենք սկսել մեր tinyLiDAR կոդը:
Ձեր տան/պի գրացուցակի տակ կազմեք tinyLiDAR անունով գրացուցակ:
Դուք կարող եք դա անել ՝ WinSCP էկրանի աջ կողմում աջ սեղմելով և ընտրելով Նոր / գրացուցակ:
Այժմ PuTTY տերմինալում կարող եք մուտքագրել
cd t
և կտտացրեք ներդիրին ՝ թույլ տալու համար այն ինքնալրացնել ձեր հրամանը ՝ tinyLiDAR գրացուցակին հասնելու համար:
Մի անգամ այստեղ մուտքագրեք հետևյալը.
wget
ֆայլերը անմիջապես մեր սերվերից ստանալու համար: Այնուհետեւ մենք կարող ենք դրանք բացել ՝ մուտքագրելով
unzip r
և սեղմեք ներդիրը ՝ անունը նորից ինքնալրացնելու համար
Այն գործարկելու համար պարզապես մուտքագրեք
python tlgui.py
Եվ ձեր tinyLiDAR- ը կարձագանքի pi- ի ձեր յուրաքանչյուր հրամանին:)
Քայլ 9: Նշում ապագա հաքերների համար
Շարունակեք և հայացք գցեք գլխարկի տակ ՝ կրկնակի սեղմելով WinSCP- ի կոդային ֆայլերից որևէ մեկի վրա: Նրանք են.py ընդլայնում ունեցողները: Ֆայլերը պետք է բացվեն SublimeText- ում անմիջապես ձեր համակարգչի վրա: Փոխեք այն, ինչ ձեզ դուր է գալիս, այնուհետև սեղմեք Save: Ձեր փոփոխությունները կպահվեն անմիջապես ձեր pi- ում:
Պատրաստ լինելուց հետո այն նորից գործարկեք ՝ օգտագործելով վերջին սլաքի ստեղնը վերջին մուտքագրված հրամանի համար կամ պարզապես նորից մուտքագրեք այն և սեղմեք enter:
python tlgui.py
Դուք կարող եք նկատել, որ Terminal GUI- ի դասավորությունը մի փոքր ավելի գեղեցիկ տեսք ունի, քան Arduino- ի տարբերակը: Դա պայմանավորված է նրանով, որ PuTTY- ն աջակցում է unicode- ի նիշերին, ուստի մենք կարողացանք օգտագործել լրացուցիչ ցուցիչի կառավարման նիշեր ՝ այն ավելի նուրբ տեսք ունենալու համար:
Այստեղ կա նաև լրացուցիչ հրաման (համեմատած Arduino տարբերակի հետ), որը «dc» է շարունակական ընթերցման գործառույթի համար: Փորձեք այն և տեսեք, թե ինչ եք կարծում:
Վերջ!
Շնորհակալություն կարդալու համար և վայելեք pi- ի վրա կոտրելը:)
Խորհուրդ ենք տալիս:
Alexa- ի վրա հիմնված ձայնով վերահսկվող հրթիռային արձակիչ. 9 քայլ (նկարներով)
Alexa- ի վրա հիմնված ձայնով վերահսկվող հրթիռակոծիչ. Քանի որ մոտենում է ձմեռային սեզոնը; գալիս է տարվա այն ժամանակը, երբ նշվում է լույսերի փառատոնը: Այո, մենք խոսում ենք Դիվալիի մասին, որն իսկական հնդկական փառատոն է, որը նշվում է ամբողջ աշխարհում: Այս տարի Դիվալին արդեն ավարտվել է, և մարդկանց տեսնելը
Առանց էկրանի / ցուցադրման (առանց գլխի) աշխատելը Raspberry Pi- ի կամ Linux- ի վրա հիմնված այլ համակարգիչների վրա `6 քայլ
Առանց էկրանի / ցուցադրման (առանց գլխի) աշխատելը Raspberry Pi- ի կամ Linux- ի / unix- ի վրա հիմնված այլ համակարգիչների վրա. Երբ մարդկանց մեծ մասը գնում է Raspberry PI, նրանք կարծում են, որ իրենց անհրաժեշտ է համակարգչի էկրան: Մի վատնեք ձեր գումարը համակարգչի անհարկի մոնիտորների և ստեղնաշարերի վրա: Մի վատնեք ձեր ժամանակը համակարգիչների միջև ստեղնաշարեր և մոնիտորներ տեղափոխելով: Մի կապեք հեռուստացույց, երբ այն չկա
Եղանակի վրա հիմնված երաժշտության գեներատոր (ESP8266 վրա հիմնված միջինի գեներատոր). 4 քայլ (նկարներով)
Եղանակի վրա հիմնված երաժշտության գեներատոր (ESP8266 Based Midi Generator). Բարև, այսօր ես կբացատրեմ, թե ինչպես պատրաստել ձեր սեփական եղանակի վրա հիմնված փոքր երաժշտության գեներատոր: Այն հիմնված է ESP8266- ի վրա, որը նման է Arduino- ին և արձագանքում է ջերմաստիճանին, անձրևին: և լույսի ուժգնություն: Մի ակնկալեք, որ այն ամբողջ երգեր կամ ակորդներ կհաղորդի
ESP32- ի վրա հիմնված M5Stack M5stick C Եղանակի մոնիտոր DHT11- ով - Վերահսկեք ջերմաստիճանի խոնավության և ջերմության ինդեքսը M5stick-C- ի վրա DHT11: 6 քայլով
ESP32- ի վրա հիմնված M5Stack M5stick C Եղանակի մոնիտոր DHT11- ով | Վերահսկեք ջերմաստիճանի խոնավության և ջերմության ինդեքսը M5stick-C- ի վրա DHT11- ով: Ողջույն, տղերք, այս հրահանգներում մենք կսովորենք, թե ինչպես միացնել DHT11 ջերմաստիճանի տվիչը m5stick-C- ի հետ (զարգացման տախտակ m5stack- ով) և ցուցադրել այն m5stick-C- ի ցուցադրման վրա: Այսպիսով, այս ձեռնարկում մենք կկարդանք ջերմաստիճանը, խոնավությունը & շոգ եմ
Ինչպես միացնել MicroPython- ի որոնվածը ESP8266- ի վրա հիմնված Sonoff խելացի անջատիչի վրա. 3 քայլ (նկարներով)
Ինչպե՞ս միացնել MicroPython- ի որոնվածը ESP8266- ի վրա հիմնված Sonoff խելացի անջատիչի վրա. Այդ գծից ամենաճկուն և էժան սարքերից են Sonoff Basic- ը և Sonoff Dual- ը: Սրանք Wi-Fi- ով միացված անջատիչներ են ՝ հիմնված հիանալի չիպի ՝ ESP8266- ի վրա: Մինչդեռ