Բովանդակություն:

Ինչպես կառուցել մարդկանց հաշվիչ ազնվամորու Պիի և Ubidots- ի միջոցով. 6 քայլ
Ինչպես կառուցել մարդկանց հաշվիչ ազնվամորու Պիի և Ubidots- ի միջոցով. 6 քայլ

Video: Ինչպես կառուցել մարդկանց հաշվիչ ազնվամորու Պիի և Ubidots- ի միջոցով. 6 քայլ

Video: Ինչպես կառուցել մարդկանց հաշվիչ ազնվամորու Պիի և Ubidots- ի միջոցով. 6 քայլ
Video: Ինչպես թույլ չտալ մարդկանց «նստել գլխիդ» (շահագործել) 2024, Հունիսի
Anonim
Ինչպես կառուցել մարդկանց հաշվիչ ազնվամորու Պիի և Ubidots- ի միջոցով
Ինչպես կառուցել մարդկանց հաշվիչ ազնվամորու Պիի և Ubidots- ի միջոցով
Ինչպես կառուցել մարդկանց հաշվիչ ազնվամորու Պիի և Ubidots- ի միջոցով
Ինչպես կառուցել մարդկանց հաշվիչ ազնվամորու Պիի և Ubidots- ի միջոցով

Այս պարզ նախագծում մենք կօգտագործենք շարժման տվիչ ՝ որոշելու, թե արդյոք ինչ -որ օբյեկտ անցնում է մեր Raspberry Pi- ի դիմացով: Հետո մենք կհաշվենք, թե քանի անգամ է դա տեղի ունենում և այս արժեքը կուղարկենք Ubidots- ին:

Մարդկանց հաշվիչները սովորաբար թանկարժեք սարքեր են, որոնք օգտագործվում են մանրածախ արդյունաբերության մեջ `հասկանալու, թե ինչպես են իրենց պահում գնորդները: Raspberry Pi- ի և Ubidots- ի շնորհիվ մենք կարող ենք մի քանի ժամում և մի քանի դոլարով կառուցել ֆունկցիոնալ մարդկանց հաշվիչ:

Հաշվիչ տվյալները Ubidots- ին ուղարկելուց հետո մենք կարող ենք գեղեցիկ գրաֆիկներ ստեղծել վերլուծության համար, ինչպես նաև SMS/Email ահազանգեր:

Քայլ 1: tingիշտ նյութերի ձեռքբերում

Theիշտ նյութերի ձեռքբերում
Theիշտ նյութերի ձեռքբերում
Theիշտ նյութերի ձեռքբերում
Theիշտ նյութերի ձեռքբերում
Theիշտ նյութերի ձեռքբերում
Theիշտ նյութերի ձեռքբերում
Theիշտ նյութերի ձեռքբերում
Theիշտ նյութերի ձեռքբերում

Այս նախագիծը ավարտելու համար ձեզ հարկավոր է.

  1. A Raspberry Pi Model B
  2. A PIR ցուցիչ Parallax- ի կողմից
  3. Raspberry Pi- ի հետ համատեղելի USB WiFi Dongle
  4. USB մարտկոցի տուփ ՝ Raspberry Pi- ին սնուցելու համար (սա պարտադիր չէ, եթե ցանկանում եք Pi- ն ամբողջությամբ անլար թողնել)
  5. Երեք կին-կին jumper լարերը
  6. Ubidots հաշիվ - կամ - STEM լիցենզիա

Քայլ 2: Իրերի միացում

Էլեկտրամոնտաժային բաներ
Էլեկտրամոնտաժային բաներ
Էլեկտրամոնտաժային բաներ
Էլեկտրամոնտաժային բաներ

PIR շարժման սենսորը բավականին պարզ է օգտագործել, քանի որ այն ունի ընդամենը երեք կապում.

  • V+
  • GND
  • Ազդանշանի քորոց, որը դուրս է գալիս «1», երբ կա շարժում և «0», երբ չկա:

Պետք չէ որևէ բան կպցնել, ոչ էլ գրել I2C կամ սերիական գործառույթներ `այս ազդանշանը հայտնաբերելու համար. պարզապես միացրեք մալուխները ձեր Raspberry Pi- ի GPIO կապումներին, և այն կաշխատի:

Քայլ 3: պատյան

Պատյան
Պատյան
Պատյան
Պատյան

Քանի որ PIR սենսորը շատ զգայուն է շարժման նկատմամբ, ես դրա հետևի jumper անջատիչը օգտագործեցի ամենացածր հնարավոր զգայունությունը սահմանելու համար: Բացի այդ, ես վերցրեցի արևային ակնոցներից մի հին պատյան և դրա մեջ անցք բացեցի, այնուհետև տեղադրեցի RPi- ն և PIR տվիչը դրա ներսում: Այս կերպ, շարժման տվիչը խիստ կենտրոնացած էր մեկ կետի վրա, այլ ոչ թե այդքան բազմակողմանի:

Քայլ 4: Կոդավորեք ձեր RPi- ն

Այս պահին մենք ենթադրենք, որ դուք կատարել եք ձեր Raspberry Pi- ի հիմնական կարգավորումը և դուք նայում եք դրա Linux հրամանի տողին: Եթե ոչ, խորհուրդ ենք տալիս նախ անցնել այս ուղեցույցը: Կարող եք նաև ստուգել այս գրառումը Wicd- ի օգտագործման մասին ՝ ձեր Raspberry Pi- ի WiFi- ը կարգավորելու համար:

Սկսենք ՝ համոզվելով, որ ունենք բոլոր անհրաժեշտ գրադարանները.

$ sudo apt-get update $ sudo apt-get upgrade $ sudo apt-get տեղադրել python-setuptools $ sudo easy_install pip $ pip տեղադրել ubidots

Ստեղծեք նոր ֆայլ ՝ «peoplecounter.py» անունով.

$ sudo nano peoplecounter.py

Եվ դրա մեջ գրեք ներքևի ծածկագիրը: Համոզվեք, որ API ստեղնի և փոփոխական ID- ի արժեքները փոխարինեք ձեր անձնական Ubidots հաշվի արժեքներով: (Նշում. Ծածկագիրը չափազանց էլեգանտ չէ, բայց այ, ես Python- ի մշակող չեմ, պարզապես սարքավորումների տղա եմ:)

Սցենարը բաղկացած է մի հանգույցից, որը ստուգում է թիվ 7 քորոցի (շարժման տվիչ) վիճակը: Եթե այն կարդում է «1», այսինքն շարժում է եղել, ապա այն ավելացնում է «մարդկանց հաշվարկ» փոփոխականը և սպասում է 1,5 վայրկյան, որպեսզի շարժման տվիչը վերադառնա նորմալ: Դա արվում է 10 անգամ ՝ համոզվելով, որ յուրաքանչյուր ցիկլի միջև կա առնվազն 1 վայրկյան, այնուհետև այն ուղարկում է «շարժումների» ընդհանուր գումարը Ubidots- ին: Եթե Ձեզ անհրաժեշտ է ճշգրտել People Counter- ը, ապա պետք է խաղաք «time.sleep» տողերով ՝ այլ արժեքներով:

ubidots- ից ներմուծեք ApiClient

ներմուծեք RPi. GPIO- ն որպես GPIO

ներմուծման ժամանակը

GPIO.setmode (GPIO. BCM)

GPIO.setup (7, GPIO. IN)

փորձել:

api = ApiClient ("a21ebaf64e14d195c0044fcc3b9f6dab9d653af3")

մարդիկ = api.get_variable ("5238cec3f91b282c7357a140")

բացառությամբ ՝ տպել «Չհաջողվեց միանալ API- ին, ստուգեք ինտերնետ կապը»

հաշվիչ = 0

մարդ v = 0

մինչդեռ (1):

ներկայություն = GPIO.input (7)

եթե (առկայություն):

մարդկանց թիվը += 1

ներկայություն = 0

ժամանակ. քուն (1.5)

ժամանակ. քուն (1)

հաշվիչ += 1

եթե (հաշվիչ == 10):

տպել մարդկանց հաշիվը

people.save_value ({'value': peoplecount})

հաշվիչ = 0

մարդ v = 0

Քայլ 5: Displayուցադրել ձեր տվյալները

Displayուցադրել ձեր տվյալները
Displayուցադրել ձեր տվյալները
Displayուցադրել ձեր տվյալները
Displayուցադրել ձեր տվյալները
Displayուցադրել ձեր տվյալները
Displayուցադրել ձեր տվյալները
Displayուցադրել ձեր տվյալները
Displayուցադրել ձեր տվյալները

Վերջապես, գնացեք ձեր Ubidots վահանակ և ավելացրեք «Հայտարարություն» տիպի վիջեթ: Սա կցուցադրի ձեր նշած ժամանակահատվածում հայտնաբերված մարդկանց ընդհանուր թիվը

Քայլ 6: Փաթեթավորում

Փաթաթում
Փաթաթում

Այս նախագիծը ակնարկ է տալիս որոշակի կետով անցնող մարդկանց քանակի մասին: Այն չի տալիս մարդկանց ճշգրիտ թիվը ՝ հաշվի առնելով շարժման տվիչի սահմանափակումները, սակայն որոշ ծրագրերում դա կարող է բավական լինել:

Հավաքված տվյալները կարող են հեշտությամբ ուղարկվել Ubidots Cloud, որտեղ դրանք կարող են մեկնաբանվել ՝ ստեղծելով ահազանգեր, կենդանի վահանակներ կամ նույնիսկ սոցիալական ցանցերում այս տվյալները կիսելով ՝ որպես ներկառուցված ծածկագիր կամ պարզապես հանրային հղումով: Կարող եք նաև կարդալ այս տվյալները մեկ այլ հավելվածից ՝ օգտագործելով Ubidots API- ն:

Խորհուրդ ենք տալիս: