![Երթևեկության օրինաչափության անալիզատոր կենդանի օբյեկտների հայտնաբերման միջոցով. 11 քայլ (նկարներով) Երթևեկության օրինաչափության անալիզատոր կենդանի օբյեկտների հայտնաբերման միջոցով. 11 քայլ (նկարներով)](https://i.howwhatproduce.com/images/001/image-232-249-j.webp)
Բովանդակություն:
- Քայլ 1: Մասերի ցուցակ
- Քայլ 2: Ազնվամորու Pi- ի կարգավորում
- Քայլ 3: Raspberry Pi և Camera Mount
- Քայլ 4. Լուսացույցների հավաքում
- Քայլ 5: Էլեկտրամոնտաժ (մաս 1)
- Քայլ 6: Շրջակա միջավայրի ձևավորում
- Քայլ 7: PVC շրջանակի վերջնականացում
- Քայլ 8: Էլեկտրամոնտաժ (մաս 2)
- Քայլ 9: Ավարտվեց:
- Քայլ 10: Լրացուցիչ (լուսանկարներ)
2025 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2025-01-23 14:48
![Image Image](https://i.howwhatproduce.com/images/001/image-232-251-j.webp)
![](https://i.ytimg.com/vi/CVoGYCg-Fdk/hqdefault.jpg)
![Երթևեկության օրինաչափությունների անալիզատոր `օգտագործելով կենդանի օբյեկտների հայտնաբերումը Երթևեկության օրինաչափությունների անալիզատոր `օգտագործելով կենդանի օբյեկտների հայտնաբերումը](https://i.howwhatproduce.com/images/001/image-232-252-j.webp)
Այսօրվա աշխարհում լուսաֆորները կարևոր են անվտանգ ճանապարհի համար: Այնուամենայնիվ, շատ անգամ լուսաֆորները կարող են նյարդայնացնել այն իրավիճակներում, երբ ինչ -որ մեկը մոտենում է լույսին հենց այն պահին, երբ այն կարմիր է դառնում: Սա ժամանակ է վատնում, հատկապես, եթե լույսը թույլ չի տալիս մեկ մեքենայի անցնել խաչմերուկով, երբ ճանապարհին ոչ ոք չկա: Իմ նորամուծությունը խելացի լուսացույց է, որն օգտագործում է տեսախցիկից կենդանի օբյեկտների հայտնաբերումը `յուրաքանչյուր ճանապարհի մեքենաների թիվը հաշվելու համար: Սարքավորումը, որը ես կօգտագործեմ այս նախագծի համար, Raspberry Pi 3 -ն է, տեսախցիկի մոդուլը և տարբեր էլեկտրոնային ապարատներ հենց լույսի համար: Օգտագործելով OpenCV- ն Raspberry Pi- ում, հավաքված տեղեկատվությունը կանցնի կոդի միջոցով, որը վերահսկում է LED- ները GPIO- ի միջոցով: Կախված այս թվերից ՝ լուսացույցը կփոխվի ՝ մեքենաներին թողնելով ամենաօպտիմալ հերթականությամբ: Այս դեպքում ամենաշատ մեքենաներով երթևեկելի գոտին կանցնի այնպես, որ ավելի քիչ մեքենա ունեցող գոտին պարապ մնա ՝ նվազեցնելով օդի աղտոտվածությունը: Սա կվերացնի իրավիճակները, երբ շատ մեքենաներ կանգնեցված են, մինչդեռ խաչվող ճանապարհին մեքենաներ չկան: Սա ոչ միայն ժամանակ է խնայում բոլորի համար, այլև խնայում է շրջակա միջավայրը: Engineամանակի ընթացքում, երբ մարդիկ կանգնում են կանգառի վրա շարժիչով պարապուրդի ժամանակ, մեծացնում է օդի աղտոտվածության մակարդակը, ուստի խելացի լուսացույց ստեղծելով ՝ ես կարողանում եմ օպտիմալացնել լուսային մոդելները, որպեսզի մեքենաները հնարավորինս քիչ ժամանակ անցկացնեն կանգնած մեքենայի հետ:. Ի վերջո, լուսաֆորների այս համակարգը կարող է ներդրվել քաղաքներում, ծայրամասերում կամ նույնիսկ գյուղական վայրերում, որպեսզի մարդկանց համար ավելի արդյունավետ լինի, ինչը կնվազեցնի օդի աղտոտվածությունը:
Քայլ 1: Մասերի ցուցակ
Նյութեր:
Raspberry Pi 3 Model B v1.2
Raspberry Pi Camera v2.1
5V/1A միկրո USB սնուցման աղբյուր
HDMI մոնիտոր, ստեղնաշար, մկնիկ SD քարտ Raspbian Jessie- ով
Raspberry Pi GPIO անջատիչ մալուխ
Կարմիր, դեղին, կանաչ LED (յուրաքանչյուրը 2 գույն)
Իգական միակցիչներ Raspberry Pi- ի համար (7 եզակի գույն)
24 չափիչ մետաղալարերի տեսականի (տարբեր գույներ) + ջերմամեկուսիչ խողովակներ
2’x2’փայտե վահանակ կամ հարթակ
Փայտե պտուտակներ
Սև մակերես (ստվարաթուղթ, փրփուր, պաստառի տախտակ և այլն)
Whiteանապարհային նշագծման համար սպիտակ (կամ ցանկացած այլ գույն, քան սևը)
Սև լակի ներկ (PVC- ի համար)
½”PVC խողովակ` 90 աստիճանի արմունկային հոդերով (2), T վարդակից (1), իգական ադապտեր (2)
Գործիքներ
Sոդման երկաթ
3D տպիչ
Հորատեք տարբեր փորվածքներով
Breadboard
Heերմային ատրճանակ
Քայլ 2: Ազնվամորու Pi- ի կարգավորում
Տեղադրեք SD քարտը Raspberry Pi- ում և գործարկեք:
Հետևեք այս ուղեցույցին `անհրաժեշտ OpenCV գրադարանները տեղադրելու համար: Համոզվեք, որ ժամանակ ունեք այս քայլը կատարելու համար, քանի որ OpenCV գրադարանը տեղադրելը կարող է տևել մի քանի ժամ: Համոզվեք, որ այստեղ տեղադրեք և կարգաբերեք ձեր տեսախցիկը:
Դուք նաև պետք է pip տեղադրեք.
լուսանկարչական ապարատ
gpiozero
RPi. GPIO
Ահա վերջնական կոդը.
picamera.array ներմուծումից PiRGBArray
picamera ներմուծումից PiCamera
ներմուծել picamera.array
ներմուծել numpy որպես np
ներմուծման ժամանակը
ներմուծել cv2
ներմուծեք RPi. GPIO- ն որպես GPIO
ներմուծման ժամանակը
GPIO.setmode (GPIO. BCM)
i- ի համար (23, 25, 16, 21):
GPIO.setup (i, GPIO. OUT)
տեսախցիկ = PiCamera ()
cam.resolution = (480, 480)
cam.framerate = 30
հում = PiRGBArray (տեսախցիկ, չափ = = (480, 480))
ժամանակ. քուն (0.1)
colorLower = np.array ([0, 100, 100])
colorUpper = np.array ([179, 255, 255])
initvert = 0
inithoriz = 0
հաշվիչ = 0
շրջանակի համար cam.capture_continuous (raw, format = "bgr", use_video_port = True):
շրջանակ = շրջանակ: զանգված
hsv = cv2.cvtColor (շրջանակ, cv2. COLOR_BGR2HSV)
դիմակ = cv2.inRange (hsv, colorLower, colorUpper)
դիմակ = cv2.blur (դիմակ, (3, 3))
դիմակ = cv2.dilate (դիմակ, Ոչ, կրկնություններ = 5)
դիմակ = cv2.erode (դիմակ, Ոչ, կրկնություններ = 1)
դիմակ = cv2.dilate (դիմակ, Ոչ, կրկնություններ = 3)
ինձ, thresh = cv2.threshold (դիմակ, 127, 255, cv2. THRESH_BINARY)
cnts = cv2.findContours (thresh, cv2. RETR_TREE, cv2. CHAIN_APPROX_SIMPLE) [-2]
կենտրոն = Ոչ մեկը
vert = 0
հորիզոն = 0
եթե len (cnts)> 0:
c- ի համար cnts:
(x, y), շառավիղը = cv2.minEnclosingCircle (c)
կենտրոն = (int (x), int (y))
շառավիղ = int (շառավիղ)
cv2. շրջան (շրջանակ, կենտրոն, շառավիղ, (0, 255, 0), 2)
x = int (x)
y = int (y)
եթե 180 <x <300:
եթե y> 300:
vert = vert +1
էլիֆ y <180:
vert = vert +1
այլ:
vert = vert
եթե 180 <y <300:
եթե x> 300:
հորիզոն = հորիզոն +1
էլիֆ x <180:
հորիզոն = հորիզոն +1
այլ:
հորիզոն = հորիզոն
եթե vert! = initvert:
տպել "Ավտոմեքենաներ ուղղահայաց գոտում." + փող (ուղղահայաց)
initvert = vert
տպել "Ավտոմեքենաներ հորիզոնական գոտում." + փող (հորիզոն)
inithoriz = հորիզոն
տպել '--------------------------------'
if horiz! = inithoriz:
տպել "Ավտոմեքենաներ ուղղահայաց գոտում." + փող (ուղղահայաց)
initvert = vert
տպել "Ավտոմեքենաներ հորիզոնական գոտում." + փող (հորիզոն)
inithoriz = հորիզոն
տպել '--------------------------------'
եթե vert <horizont:
GPIO.putput (23, GPIO. HIGH)
GPIO.putput (21, GPIO. HIGH)
GPIO.putput (16, GPIO. LOW)
GPIO.putput (25, GPIO. LOW)
եթե horizont <vert:
GPIO.putput (16, GPIO. HIGH)
GPIO.putput (25, GPIO. HIGH)
GPIO.putput (23, GPIO. LOW)
GPIO.output (21, GPIO. LOW)
cv2.imshow («Շրջանակ», շրջանակ)
cv2.imshow («HSV», hsv)
cv2.imshow («Թրեշ», շաղախ)
raw.truncate (0)
եթե cv2.waitKey (1) & 0xFF == ord ('q'):
ընդմիջում
cv2.destroyAllWindows ()
GPIO.cleanup ()
Քայլ 3: Raspberry Pi և Camera Mount
![Raspberry Pi և Camera Mount Raspberry Pi և Camera Mount](https://i.howwhatproduce.com/images/001/image-232-253-j.webp)
![Raspberry Pi և Camera Mount Raspberry Pi և Camera Mount](https://i.howwhatproduce.com/images/001/image-232-254-j.webp)
![Raspberry Pi և Camera Mount Raspberry Pi և Camera Mount](https://i.howwhatproduce.com/images/001/image-232-255-j.webp)
![Raspberry Pi և Camera Mount Raspberry Pi և Camera Mount](https://i.howwhatproduce.com/images/001/image-232-256-j.webp)
3D տպել պատյան և տեսախցիկի տեղադրում և հավաքում:
Քայլ 4. Լուսացույցների հավաքում
![Լուսացույցի հավաքում Լուսացույցի հավաքում](https://i.howwhatproduce.com/images/001/image-232-257-j.webp)
![Լուսացույցի հավաքում Լուսացույցի հավաքում](https://i.howwhatproduce.com/images/001/image-232-258-j.webp)
![Լուսացույցի հավաքում Լուսացույցի հավաքում](https://i.howwhatproduce.com/images/001/image-232-259-j.webp)
Փորձարկեք լուսացույցը տախտակով: LED- ների յուրաքանչյուր հակադիր հավաքածու ունի անոդ, և բոլորն ունեն ընդհանուր կաթոդ (հիմք): Ընդհանուր առմամբ պետք է լինի 7 մուտքագրող լար `1 հատ LEDS- ի յուրաքանչյուր զույգի համար (6) + 1 հողալար: Erոդել և հավաքել լուսացույցները:
Քայլ 5: Էլեկտրամոնտաժ (մաս 1)
![Հաղորդալարեր (մաս 1) Հաղորդալարեր (մաս 1)](https://i.howwhatproduce.com/images/001/image-232-260-j.webp)
![Հաղորդալարեր (մաս 1) Հաղորդալարեր (մաս 1)](https://i.howwhatproduce.com/images/001/image-232-261-j.webp)
![Հաղորդալարեր (մաս 1) Հաղորդալարեր (մաս 1)](https://i.howwhatproduce.com/images/001/image-232-262-j.webp)
![Հաղորդալարեր (մաս 1) Հաղորդալարեր (մաս 1)](https://i.howwhatproduce.com/images/001/image-232-263-j.webp)
Femaleոդեք էգ գլխի կապում մոտ 5 ոտնաչափ մետաղալարով: Սրանք այն կողմերն են, որոնք այս լարերը հետագայում օձ կհայտնվեն PVC խողովակների միջով: Համոզված եղեք, որ կարողանաք տարբերել լույսերի տարբեր հավաքածուները (2 x 3 գույն և 1 գետնին): Այս դեպքում ես կարմիր, դեղին և կապույտ մետաղալարերի մեկ այլ ծայրերի ծայրերը նշեցի սրիչով, որպեսզի իմանամ, թե որն է:
Քայլ 6: Շրջակա միջավայրի ձևավորում
![Շրջակա միջավայրի կառուցում Շրջակա միջավայրի կառուցում](https://i.howwhatproduce.com/images/001/image-232-264-j.webp)
![Շրջակա միջավայրի կառուցում Շրջակա միջավայրի կառուցում](https://i.howwhatproduce.com/images/001/image-232-265-j.webp)
![Շրջակա միջավայրի կառուցում Շրջակա միջավայրի կառուցում](https://i.howwhatproduce.com/images/001/image-232-266-j.webp)
![Շրջակա միջավայրի կառուցում Շրջակա միջավայրի կառուցում](https://i.howwhatproduce.com/images/001/image-232-267-j.webp)
Շրջակա միջավայրի ստեղծում Պատրաստեք 2 ոտնաչափ քառակուսի փայտե ծղոտե ներքնակ այսպիսին: Փայտանյութը լավ է, քանի որ այն ծածկված կլինի: Հորատեք մի անցք, որը պարզապես համապատասխանում է ձեր ադապտերին: Հորատեք պտուտակներ պալետի կողքերով ՝ PVC խողովակն իր տեղում ամրացնելու համար: Կտրեք սև փրփուրի տախտակը, որը կհամապատասխանի ներքևի փայտե ծղոտե ներքնակին: Հորատեք մի փոս, որը տեղավորվում է PVC խողովակի շուրջ: Կրկնեք հակառակ անկյունում: Նշեք ճանապարհները որոշ սպիտակ ժապավենով:
Քայլ 7: PVC շրջանակի վերջնականացում
![PVC շրջանակի վերջնականացում PVC շրջանակի վերջնականացում](https://i.howwhatproduce.com/images/001/image-232-268-j.webp)
![PVC շրջանակի վերջնականացում PVC շրջանակի վերջնականացում](https://i.howwhatproduce.com/images/001/image-232-269-j.webp)
![PVC շրջանակի վերջնականացում PVC շրջանակի վերջնականացում](https://i.howwhatproduce.com/images/001/image-232-270-j.webp)
Վերին խողովակի վրա անցք պատրաստեք, որը կարող է տեղավորել լարերի փաթեթ: Կոպիտ փոսը լավ է այնքան ժամանակ, քանի դեռ կարող եք մուտք գործել խողովակների ներսը: Օձը լարերը հանեք PVC խողովակների և արմունկային հոդերի միջոցով `փորձարկման համար: Ամեն ինչ վերջնական տեսքից հետո ներկեք PVC- ն սև լակի ներկով `հիմնական շրջանակի տեսքը մաքրելու համար: Կտրեք մի փոքր բաց PVC խողովակներից մեկում `T- հոդին տեղավորելու համար: Այս լուսանցքի վրա PVC խողովակ ավելացրեք, որպեսզի լուսացույցը կախված լինի: Տրամագիծը կարող է լինել նույնը, ինչ հիմնական շրջանակը (1/2 ), չնայած եթե ավելի բարակ խողովակ եք օգտագործում, համոզվեք, որ 7 լարերը կարող են օձ դուրս գալ: Այս խողովակով անցք բացեք, որպեսզի լուսացույցը կախված լինի:
Քայլ 8: Էլեկտրամոնտաժ (մաս 2)
![Էլեկտրամոնտաժ (մաս 2) Էլեկտրամոնտաժ (մաս 2)](https://i.howwhatproduce.com/images/001/image-232-271-j.webp)
![Հաղորդալարեր (մաս 2) Հաղորդալարեր (մաս 2)](https://i.howwhatproduce.com/images/001/image-232-272-j.webp)
![Էլեկտրամոնտաժ (մաս 2) Էլեկտրամոնտաժ (մաս 2)](https://i.howwhatproduce.com/images/001/image-232-273-j.webp)
Նորից միացրեք ամեն ինչ, ինչպես նախկինում փորձարկվել է: Կրկնակի ստուգեք լուսացույցը և էլեկտրագծերը տախտակով `հաստատելու համար, որ բոլոր կապերը կատարվել են: Erոդեք լուսացույցը T- հոդի թևով անցնող լարերին: Փաթաթեք մերկացած լարերը էլեկտրական ժապավենով `կարճ շորտեր կանխելու և ավելի մաքուր տեսք ունենալու համար:
Քայլ 9: Ավարտվեց:
![Ավարտվեց Ավարտվեց](https://i.howwhatproduce.com/images/001/image-232-274-j.webp)
![Ավարտվեց Ավարտվեց](https://i.howwhatproduce.com/images/001/image-232-275-j.webp)
![Ավարտվեց Ավարտվեց](https://i.howwhatproduce.com/images/001/image-232-276-j.webp)
![Ավարտվեց Ավարտվեց](https://i.howwhatproduce.com/images/001/image-232-277-j.webp)
Կոդը գործարկելու համար համոզվեք, որ ձեր աղբյուրը սահմանեք որպես project/.profile և cd ՝ ձեր ծրագրի գտնվելու վայրին:
Քայլ 10: Լրացուցիչ (լուսանկարներ)
Խորհուրդ ենք տալիս:
Օբյեկտների վրա հիմնված ծրագրավորում. Օբյեկտների ստեղծում Ուսուցման/դասավանդման մեթոդ/տեխնիկա ՝ օգտագործելով ձևի բռունցք. 5 քայլ
![Օբյեկտների վրա հիմնված ծրագրավորում. Օբյեկտների ստեղծում Ուսուցման/դասավանդման մեթոդ/տեխնիկա ՝ օգտագործելով ձևի բռունցք. 5 քայլ Օբյեկտների վրա հիմնված ծրագրավորում. Օբյեկտների ստեղծում Ուսուցման/դասավանդման մեթոդ/տեխնիկա ՝ օգտագործելով ձևի բռունցք. 5 քայլ](https://i.howwhatproduce.com/images/003/image-8919-j.webp)
Օբյեկտների վրա հիմնված ծրագրավորում. Օբյեկտների ստեղծում Ուսուցման/դասավանդման մեթոդ/տեխնիկա Shape Puncher- ի օգտագործմամբ. Սա միջոց է, որը թույլ է տալիս նրանց պատկերացնել և տեսնել դասերից օբյեկտների ստեղծման գործընթացը: Մասեր .1. EkTools 2 դյույմ մեծ դակիչ; ամուր ձևերն ամենալավն են: 2. Թղթի կտոր կամ գ
Օբյեկտների վրա հիմնված ծրագրավորում. Օբյեկտների ստեղծում Ուսուցման/ուսուցման մեթոդ/տեխնիկա Մկրատների միջոցով. 5 քայլ
![Օբյեկտների վրա հիմնված ծրագրավորում. Օբյեկտների ստեղծում Ուսուցման/ուսուցման մեթոդ/տեխնիկա Մկրատների միջոցով. 5 քայլ Օբյեկտների վրա հիմնված ծրագրավորում. Օբյեկտների ստեղծում Ուսուցման/ուսուցման մեթոդ/տեխնիկա Մկրատների միջոցով. 5 քայլ](https://i.howwhatproduce.com/images/001/image-2761-16-j.webp)
Օբյեկտների վրա հիմնված ծրագրավորում. Օբյեկտների ստեղծում Ուսուցման/ուսուցման մեթոդ/տեխնիկա Մկրատների օգտագործմամբ. Սա միջոց է, որը թույլ է տալիս նրանց պատկերացնել և տեսնել դասերից օբյեկտների ստեղծման գործընթացը: Մասեր. 1. Մկրատ (ցանկացած տեսակի կանի): 2. Թուղթ կամ թղթի կտոր: 3. Մարկեր
FoldTronics. 3D օբյեկտների ստեղծում ինտեգրված էլեկտրոնիկայի միջոցով `ծալովի մեղրի միջոցով: Կոմբինացված կառույցներ. 11 քայլ
![FoldTronics. 3D օբյեկտների ստեղծում ինտեգրված էլեկտրոնիկայի միջոցով `ծալովի մեղրի միջոցով: Կոմբինացված կառույցներ. 11 քայլ FoldTronics. 3D օբյեկտների ստեղծում ինտեգրված էլեկտրոնիկայի միջոցով `ծալովի մեղրի միջոցով: Կոմբինացված կառույցներ. 11 քայլ](https://i.howwhatproduce.com/images/006/image-17273-17-j.webp)
FoldTronics. Ստեղծելով 3D օբյեկտներ ինտեգրված էլեկտրոնիկայի միջոցով `օգտագործելով ծալովի HoneyComb կառույցները. Այս ձեռնարկում մենք ներկայացնում ենք FoldTronics- ը` 2D- կտրման վրա հիմնված սարքավորման տեխնիկան `էլեկտրոնիկան եռաչափ ծալված օբյեկտների մեջ ինտեգրելու համար: Հիմնական գաղափարն այն է, որ կտրեն և շաղափեն երկչափ սավանը `օգտագործելով կտրող գծապատկերը` այն ծալովի դարձնելու 3D բջիջի բեկորի
ARDUINO- ի միջոցով 3D մոդել ստեղծելու մոտակա օբյեկտների սկանավորում. 5 քայլ (նկարներով)
![ARDUINO- ի միջոցով 3D մոդել ստեղծելու մոտակա օբյեկտների սկանավորում. 5 քայլ (նկարներով) ARDUINO- ի միջոցով 3D մոդել ստեղծելու մոտակա օբյեկտների սկանավորում. 5 քայլ (նկարներով)](https://i.howwhatproduce.com/images/001/image-2753-71-j.webp)
ARDUINO- ի միջոցով 3D մոդել ստեղծելու համար մոտակա օբյեկտների սկանավորում. Այս նախագիծը հատուկ է `օգտագործելով HC-SR04 ուլտրաձայնային տվիչը` մոտակա օբյեկտները սկանավորելու համար: 3D մոդել պատրաստելու համար հարկավոր է սենսորը ուղղել ուղղահայաց ուղղությամբ: Դուք կարող եք ծրագրավորել Arduino- ն ազդանշան հնչեցնելիս, երբ սենսորը հայտնաբերում է օբյեկտ
Raspberry Pi 3 շարժման հայտնաբերման տեսախցիկ ՝ կենդանի հոսքով ՝ 6 քայլ
![Raspberry Pi 3 շարժման հայտնաբերման տեսախցիկ ՝ կենդանի հոսքով ՝ 6 քայլ Raspberry Pi 3 շարժման հայտնաբերման տեսախցիկ ՝ կենդանի հոսքով ՝ 6 քայլ](https://i.howwhatproduce.com/images/003/image-7875-44-j.webp)
Raspberry Pi 3 շարժման հայտնաբերման տեսախցիկ ՝ կենդանի հոսքով. Ներածություն: Այս նախագծում դուք կսովորեք, թե ինչպես կառուցել շարժման հայտնաբերման տեսախցիկ, որը կկարողանաք օգտագործել որպես տեսախցիկի ծուղակ, ընտանի կենդանու/երեխայի մոնիտոր, անվտանգության տեսախցիկ և շատ ավելին: Այս նախագիծը կազմակերպված է մի քանի քայլի. Ներածություն Settin