Სარჩევი:
- ნაბიჯი 1: რაც დაგჭირდებათ
- ნაბიჯი 2: კამერის მოდულის დაკავშირება
- ნაბიჯი 3: კამერის დაყენება
- ნაბიჯი 4: კამერის მოდულის ტესტირება
- ნაბიჯი 5: შექმენით წრე კოდით
ვიდეო: Raspberry Pi Photobooth: 5 ნაბიჯი
2024 ავტორი: John Day | [email protected]. ბოლოს შეცვლილი: 2024-01-30 10:18
Მიზანი:
- ისწავლეთ როგორ დააკოპიროთ და დააინსტალიროთ Pi კამერა
- კოდირებისას defin and if განცხადებების გამოყენება
- ისწავლეთ ახალი ტექნოლოგიების გამოყენება, როგორიცაა RGB LED- ები
ნაბიჯი 1: რაც დაგჭირდებათ
- 1 ჟოლო პი 3
- პურის დაფა
- მხტუნავები
- 1 სინათლის დამოკიდებული რეზისტორი
- 1 კონდენსატორი
- 1 ღილაკი
- 6 220 Ohm რეზისტორები
- 2 RGB LED
- 1 ჟოლო პი კამერა
ნაბიჯი 2: კამერის მოდულის დაკავშირება
უპირველეს ყოვლისა, Pi გამორთული, თქვენ უნდა დაუკავშიროთ კამერის მოდული Raspberry Pi კამერის პორტს, შემდეგ ჩართეთ Pi და დარწმუნდით, რომ პროგრამული უზრუნველყოფა ჩართულია.
- იპოვნეთ კამერის პორტი, რომელიც მდებარეობს HDMI და 3.5 მმ პორტს შორის
- გადაწიეთ კამერის სამაგრ პლასტმასის კიდეებით, სანამ დამჭერი დიაგონალზე არ იქნება
- ახლა ჩადეთ კამერის კაბელი ლურჯით 3.5 მმ პორტისკენ
ნაბიჯი 3: კამერის დაყენება
გახსენით Raspberry Pi კონფიგურაციის ინსტრუმენტი მთავარი მენიუდან და გამორთეთ და ჩართეთ ყველა ინტერფეისი ზემოთ
მთავარი მენიუდან გახსენით ტერმინალი და ჩაწერეთ კოდის შემდეგი ხაზები:
სუდო რასპი-კონფიგურაცია
ახლა აქედან გამოიყენეთ თქვენი ისრის ღილაკები სისტემის მეშვეობით მუშაობისთვის და დააწკაპუნეთ პერიფერიული კავშირის ვარიანტზე და მათი დაწკაპუნებით P1 კამერაზე და ჩართეთ კამერა, შემდეგ აირჩიეთ დასრულება. დავუბრუნდეთ ტერმინალის ტიპს კოდის შემდეგ სტრიქონებში:
პიპ ინსტალაცია picamera
ან Sudo pip დააინსტალირეთ Picamera
ნაბიჯი 4: კამერის მოდულის ტესტირება
აქედან შეგვიძლია შევამოწმოთ კამერა მუშაობს თუ არა, რადგან ჩვენ გვაქვს ყველა პროგრამული უზრუნველყოფა და ტექნიკა ჩართული.
გახსენით პითონი 3 მენიუდან
იქიდან გახსენით ახალი ფაილი ჭურვიდან და შეინახეთ cameratest.py.
შეიყვანეთ შემდეგი კოდი:
picamera იმპორტიდან PiCamera #იმპორტირებული მოდული, რომელიც შეიქმნა პიპიდან დააინსტალირეთ pi კამერა ბრძანება დროიდან იმპორტი ძილი #იმპორტირებული ძილი რათა დავრწმუნდეთ რომ ჩვენი კამერა რჩება კამერაზე = PiCamera () #დაყენება კამერისთვის
camera.start_preview ()#იწყებს კამერას და აჩვენებს როგორია კამერის გამომუშავება
ძილი (10)#ტოვებს გადახედვას 10 წამის განმავლობაში
camera.stop_preview ()#საბოლოოდ ტოვებს გადახედვას
გაუშვით კოდი F5– ით
თუ თქვენ მიიღებთ ამ შეცდომას კოდის გაშვებისას:
(mmal: mmal_vc_component_create: კომპონენტის 'vc.ril.camera' (1: ENOMEM) შექმნა ვერ მოხერხდა
mmal: mmal_component_create_core: ვერ შეიქმნა კომპონენტი 'vc.ril.camera' (1) Traceback (უახლესი ზარი ბოლო): ფაილი "", ხაზი 1, ფაილში "/usr/lib/python2.7/dist-packages/picamera /camera.py ", სტრიქონი 257, _init_ self._init_camera () ფაილში" /usr/lib/python2.7/dist-packages/picamera/camera.py ", სტრიქონი 288, _init_camera პრეფიქსში =" კამერის შექმნა ვერ მოხერხდა კომპონენტი ") ფაილი" /usr/lib/python2.7/dist-packages/picamera/exc.py ", ხაზი 112, mmal_check- ში PiCameraMMALError (სტატუსი, პრეფიქსი) ამაღლება picamera.exc. PiCameraMMALE შეცდომა: კამერის კომპონენტის შექმნა ვერ მოხერხდა: გარეთ მეხსიერების)
გთხოვთ, გადადით Raspberry Pi კონფიგურაციაზე, გადადით შესრულების სვეტში და გაზარდეთ თქვენი GPU მეხსიერება, სანამ შეცდომა არ გაქრება (უნდა გადატვირთოთ).
ახლა იმისათვის, რომ შევქმნათ ფოტო, რომელიც შეინახება სამუშაო მაგიდაზე ჩვენ გამოვიყენებთ შემდეგ კოდს:
picamera იმპორტიდან PiCamera #იმპორტირებული მოდული, რომელიც შეიქმნა პიპიდან დააინსტალირეთ pi კამერა ბრძანება დროიდან იმპორტი ძილი #იმპორტირებული ძილი რათა დავრწმუნდეთ რომ ჩვენი კამერა რჩება
კამერა = PiCamera () #დაყენება კამერისთვის
camera.start_preview () #იწყებს წინასწარ გადახედვას (5) #ტოვებს გადახედვას 5 წამის განმავლობაში
camera.capture ('/home/pi/Desktop/image.jpg')# დან
camera.stop_preview ()#აჩერებს გადახედვას
ნაბიჯი 5: შექმენით წრე კოდით
როგორც ზემოთ ჩანს სქემის დიაგრამებიდან, ჩვენ უნდა დავაყენოთ ღილაკი, LDR და ბოლოს ორი RGB LED. პირველი ჩვენ ვაპირებთ ღილაკის დაყენებას პურის დაფის ქვედა მარცხენა მხარეს. ღილაკზე დაყენების დროს ჩვენ გამოვიყენებთ საერთო სარკინიგზო ხაზებს, რაც იმას ნიშნავს, რომ ჩვენ დავამატებთ ჩვენს 3.3 ვ პოზიტივს და უარყოფითს. მას შემდეგ რაც დაასრულებთ წრედის დაყენებას მხოლოდ ღილაკზე.
ჩვენ შევამოწმოთ ჩვენი წრე, რომ შევძლოთ თუ არა ის ისე, რომ ღილაკზე დაჭერისას ჩვენ ჩართოთ led შემდეგი კოდის გამოყენებით:
#იმპორტირებული მოდულები gpiozero იმპორტირების ღილაკიდან picamera იმპორტი PiCamera დროიდან იმპორტი ძილის
#Აწყობა
კამერა = PiCamera () ღილაკი = ღილაკი (22)
#ფუნქციის გადაღების მიზნით, მე გადავწყვიტე ის განსაზღვრულ ფუნქციაში ჩავსვა, რადგან ის გვეხმარება ძირითადი კოდის გაწმენდაში
def photocap ():
Camera.start_preview ()
ძილი (5) Camera.capture ('/home/pi/Desktop/image.jpg') ბეჭდვა ("ფოტო გადაღებულია") Camera.stop_preview ()
#ძირითადი კოდი:
ხოლო True: if Button.is_pressed: print ("Button was pressed") photocap ()
#რატომ მუშაობს ეს: ძირითადი კოდი მუშაობს ისე, როგორც ჩვენ ვაკეთებთ, ვიყენებთ ბრძანებას if ღილაკს. ის_წამოიხატება ცოტახანში ჭეშმარიტ განცხადებაში, ასე რომ ის მუდმივად განახლდება, როდესაც ღილაკზე დაჭერილია ფოტოს გადაღება
ახლა ჩვენ ვაპირებთ დავაყენოთ 2 RGB LED ნათურა მთელს წრემდე და გამოვყოთ ისინი პურის დაფის შუაგულში და გავაკეთოთ სიმეტრიული. თუ თქვენ არ გაქვთ 220 ohm რეზისტორების ამ პროექტის თქვენ შეგიძლიათ დააყენოთ ისინი პარალელურად დამოკიდებულია თქვენი წინააღმდეგობის იმ resistors თქვენ გაქვთ. 4 პინიანი RGB LED- ის მეორე პინი (ყველაზე გრძელი უნდა იყოს მიწასთან დაკავშირებული რკინიგზის გავლით. სხვა ქინძისთავები ყველა უნდა იყოს დაკავშირებული საკუთარ GPIO ქინძისთავებთან. (პირველი პინი = წითელი, მეორე პინი = მიწა, მესამე პინი = მწვანე, მეოთხე პინი = ლურჯი).
ჩვენ შევამოწმებთ ერთ ჩვენს RGB LED- ს ჩვენს ღილაკზე, ქვემოთ მოყვანილი კოდით:
#იმპორტირებული მოდულები gpiozero იმპორტის ღილაკიდან picamera იმპორტი PiCamera– დან
gpiozero იმპორტიდან RGBLED
დროიდან იმპორტი ძილის
#Აწყობა
კამერა = PiCamera () ღილაკი = ღილაკი (22)
დროული LED = RGBLED (წითელი = 21, მწვანე = 20, ლურჯი = 16)
#ფოტო RGB LED– ით ფუნქციის გადასაღებად, მე გადავწყვიტე მისი განსაზღვრულ ფუნქციაში ჩადება, რადგან ის გვეხმარება ძირითადი კოდის გაწმენდაში
def photocap (): Camera.start_preview () ძილი (4)
დროული. ფერი (1, 0, 0)
ძილი (2)
დროული. ფერი (0, 1, 0)
ძილი (1)
Camera.capture ('/home/pi/Desktop/image.jpg') ბეჭდვა ("ფოტო გადაღებულია") Camera.stop_preview ()
#ძირითადი კოდი:
მართალია:
თუ Button.is_pressed:
ბეჭდვა ("ღილაკზე დაჭერილი იყო") ფოტოკაპი ()
#რატომ მუშაობს ეს: მიზეზი იმისა, თუ რატომ მუშაობს ეს კოდი არის იმაში, რომ ახლა ჩვენ მივიღეთ RGBLED, რომ ვიმუშაოთ როგორც ტაიმერი, როდის იქნება ფოტოს გადაღება
ახლა დააინსტალირეთ სინათლისგან დამოუკიდებელი რეზისტორი პურის ქვედა ქვედა მარჯვენა მხარეს დიაგრამის გამოყენებით ზევით და საერთო რკინიგზაზე ადრე განხილული. დაიმახსოვრეთ LDR– ის ორივე გრძელი ფეხი და კაპიციტორი უნდა იყოს დაკავშირებული GPIO პინთან.
LDR– ის დაკავშირების შემდეგ ჩვენ ვიყენებთ შემდეგ კოდს:
#იმპორტირებული მოდულები
gpiozero იმპორტის ღილაკიდან
საწყისი picamera იმპორტი PiCamera საწყისი gpiozero იმპორტი RGBLED
gpiozero იმპორტი LightSensor
დროიდან იმპორტი ძილის
#Აწყობა
კამერა = PiCamera () ღილაკი = ღილაკი (22) დროული LED = RGBLED (წითელი = 21, მწვანე = 20, ლურჯი = 16)
LightSensor = LightSensor (23)
#ფუნქციის გადაღება RGB LED– ით, მე გადავწყვიტე ის განვსაზღვრო ფუნქციაში, რადგან ის გვეხმარება ძირითადი კოდის გაწმენდაში
def photocap (): Camera.start_preview () sleep (4) timedled.color (1, 0, 0) sleep (2) timedled.color (0, 1, 0) sleep (1) Camera.capture ('/home/ pi/Desktop/image-j.webp
#ძირითადი კოდი:
მართალია:
თუ Button.is_pressed: ბეჭდვა ("ღილაკზე დაჭერილია") ფოტოკაპი ()
თუ Button.is_pressed და Lightsensor.when_dark:
ბეჭდვა ("ღილაკზე დაჭერილი იყო")
ბეჭდვა ("ბნელა")
ფოტოკაპი ()
#რატომ მუშაობს ეს: გზა, რომლითაც მე დავამატე სინათლის სენსორი ჩემს კოდში არის სხვა if განაცხადი, რომელიც შეიცავს სინათლის სენსორის იმპორტირებულ ფუნქციას. როცა ბნელდება ჩვენ მშვენივრად ვქმნით ჩვენს შემდგომ ნაბიჯს
ახლა ამ პროექტის ბოლო ნაბიჯი იქნება სხვა RGBLED სიმეტრიული მეორის გააქტიურება, რომ იმუშაოს როგორც ნათურა, საბოლოო კოდი:
gpiozero იმპორტის ღილაკიდან
საწყისი picamera იმპორტი PiCamera
gpiozero იმპორტიდან RGBLED
gpiozero იმპორტი LightSensor
დროიდან იმპორტი ძილის
#Აწყობა
კამერა = PiCamera ()
ღილაკი = ღილაკი (22)
დროული LED = RGBLED (წითელი = 21, მწვანე = 20, ლურჯი = 16)
FlashLED = RGBLED (წითელი = 19, მწვანე = 13, ლურჯი = 6)
LightSensor = LightSensor (23)
#ფუნქციის გადაღება RGB LED– ით, მე გადავწყვიტე მისი განსაზღვრის ფუნქცია, რადგან ის გვეხმარება გავწმინდოთ ძირითადი კოდი def photocap (): Camera.start_preview () sleep (4) timedled.color (1, 0, 0) sleep (2) timedled.color (0, 1, 0) sleep (1) Camera.capture ('/home/pi/Desktop/image.jpg') print ("ფოტო გადაღებულია") Camera.stop_preview () # მთავარი კოდი: while True: if Button.is_pressed:
ბეჭდვა ("ღილაკი დაჭერილია")
ფოტოკაპი ()
თუ Button.is_pressed და Lightsensor.when_dark:
ბეჭდვა ("ღილაკზე დაჭერილი იყო") ბეჭდვა ("ბნელა")
FlashLED.color (1, 1, 1)
ფოტოკაპი ()
#რატომ მუშაობს ეს: გზა, რომლითაც დავამატე ჩემი ფანარი არის RGB– ის გამოყენებით, რამაც გამოიწვია თეთრი ფერი, რომელიც არის 1, 1, 1 და ეს მხოლოდ იმას ნიშნავს, თუ if განცხადება მართალია.
გირჩევთ:
Raspbian Buster- ის დაყენება Raspberry Pi 3 - Raspbian Buster– ით დაწყება Raspberry Pi 3b / 3b+: 4 ნაბიჯი
Raspbian Buster– ის დაყენება Raspberry Pi 3 | Raspbian Buster– ით დაწყება Raspberry Pi 3b / 3b+: გამარჯობა ბიჭებო, ახლახანს Raspberry pi ორგანიზაციამ წამოიწყო ახალი Raspbian OS, რომელსაც ეწოდება Raspbian Buster. ეს არის Raspbian– ის ახალი ვერსია Raspberry pi– სთვის. ასე რომ, დღეს ამ ინსტრუქციებში ჩვენ ვისწავლით თუ როგორ უნდა დააინსტალიროთ Raspbian Buster OS თქვენს Raspberry pi 3 – ზე
Raspberry Pi PhotoBooth: HTML5 & NodeJS: 4 ნაბიჯი
Raspberry Pi PhotoBooth: HTML5 & NodeJS: HTML5 და NodeJS photobooth ცოცხალი გადახედვისა და მორგებული საზღვრებით. ეს პროექტი დაიწყო, როგორც რაღაც, რაც მე ავაშენე ჩემი ქალიშვილის სკოლის ცეკვისთვის. მე მინდოდა მისთვის და მისი მეგობრებისთვის რაიმე სახალისო დაემახსოვრებინათ ეს მოვლენა (ეს იყო უკანასკნელი შემთხვევა, როდესაც ისინი
ქორწილი / ღონისძიება Photobooth: 6 ნაბიჯი (სურათებით)
ქორწილი / ღონისძიება Photobooth: გამარჯობა ყველას, მე გავთხოვდი შარშან, როდესაც ჩვენ ვეძებთ D- დღის მომზადებას, ბევრი საქორწინო კონვენციაზე წავედით. ყველა კონვენციაზე არის Photobooth renter, მე მეგონა, რომ photobooth იყო დიდი იდეა ქორწილისთვის, თითოეული სტუმარი
ავტომატური Photobooth: 4 ნაბიჯი (სურათებით)
ავტომატური Photobooth: ეს გაჩვენებთ თუ როგორ უნდა გააკეთოთ ავტომატური ფოტო ჯიხური ჟოლოს პი, ულტრაბგერითი დისტანციის სენსორის და რამდენიმე სხვა აქსესუარის გამოყენებით. მინდოდა გავაკეთო პროექტი, რომელიც იყენებს როგორც დახვეწილ ტექნიკას, ასევე პროგრამას, რომელიც დახვეწილია. მე ვიკვლევ
DIY Photobooth: 7 ნაბიჯი (სურათებით)
წვრილმანი Photobooth: ეს არის გაკვეთილი, თუ როგორ უნდა ავაშენოთ საკუთარი ფოტობუტი, ისევე როგორც ტრადიციული, რომელიც ნაჩვენებია სავაჭრო ცენტრებში, გასართობ პარკებში და სავაჭრო ცენტრებში მთელს მსოფლიოში. ეს ჯიხური არის სრულიად ციფრული და ბევრად უფრო იაფი/ადვილი გასაკეთებელია სახლში. მე გავბრაზდი