Სარჩევი:
- ნაბიჯი 1: ძირითადი გათვლები | ლუქსი EV– მდე
- ნაბიჯი 2: ჩვენება ღირებულებების ჩვენება | ადაფრუტის GFX ბიბლიოთეკა
- ნაბიჯი 3: ლუქსის ღირებულებების წაკითხვა და ანაზღაურება | VEML7700
- ნაბიჯი 4: Arduino / C- კოდი
- ნაბიჯი 5: ერთად აწყობა
ვიდეო: წვრილმანი ფოტოგრაფიული განათება: 5 ნაბიჯი
2024 ავტორი: John Day | [email protected]. ბოლოს შეცვლილი: 2024-01-30 10:16
ეს ინსტრუქცია იზიარებს რამდენიმე იდეას მარტივი მცირე და იაფი ინციდენტის მსუბუქიმეტრის შესაქმნელად.
როგორც Instructables არ მაძლევს უფლებას ჩავამატო ჩემი საკუთარი ვიდეოები, სცადეთ ეს ბმული:
www.youtube.com/embed/avQD10fd52s
ჩემთვის მიზანი იყო სინათლის მეტრი, ჩემი ბრონიკა ETRSi საშუალო ფორმატის კინოკამერის თანხლებით.
ის, რაც მინდოდა რომ გამოეჩინა:
- მარტოხელა ASA (100), რადგან მე თითქმის მხოლოდ ASA 100 ფილმს ვიყენებ
- რაც შეიძლება პატარა
- მომეცი მხოლოდ კომბინაციები, რომელთა რეპროდუცირებაც შეუძლია ჩემს ბრონიკას, რაც ნიშნავს f2.8-f22 და 1 წამში 1/500-ე წმ
- არ არის უაზრო მახასიათებლები, გარდა უბრალო დროისა და დიაფრაგმის მნიშვნელობებისა
ნივთები, რომლებიც მე გამოვიყენე:
- Adafruit (Vishay) VEML 7700 ციფრული ლუქსმეტრი (დაახლოებით 5 $)
- Adafruit Trinket M0 მიკრო კონტროლერი (დაახლოებით 9 $)
- 128x32 OLED დისპლეი (დაახლოებით 10 $)
- ღილაკი, რომ დროებით ჩართო (რამდენიმე ცენტი)
- ზოლებიანი დაფის პატარა ნაჭერი, რადგან ვცდილობ არ გამოვიყენო კაბელები, მაგრამ თქვენც შეგიძლიათ კაბელები გამოიყენოთ
ნაბიჯი 1: ძირითადი გათვლები | ლუქსი EV– მდე
სენსორი, რომელიც მე შევიძინე, იყენებს ორ მახასიათებელს, რაც მე მაძლევს გადაწყვეტილებას:
- გამოაქვს 16 ბიტიანი ლუქსი მნიშვნელობები "განზომილების გარეშე" სინათლის მნიშვნელობების ნაცვლად
- გამოაქვს მნიშვნელობები I2C საშუალებით
ფოტოგრაფიული სინათლის მრიცხველი იყენებს ექსპოზიციის ღირებულებებს (EV) სენსორი, რომელიც მე შევიძინე, იყენებს Lux მნიშვნელობებს, რაც არის სრულიად განსხვავებული მასშტაბი. ასე რომ, პირველი ნაბიჯი არის ელექტროენერგიის მიწოდება Lux– ის მნიშვნელობებით, იმ პირობით, რომ სენსორია.
ვიკიპედიის სწრაფი მიმოხილვა და თქვენ შეგიძლიათ იპოვოთ ინციდენტის გაზომვის ფორმულა და გადააკეთოთ EV ლუქსი:
E = 2.5 * 2^EV
სადაც E იზომება ლუქსში.
ვინაიდან ჩვენ უკვე მივიღეთ Lux- ის მნიშვნელობა სენსორისგან და გვინდა EV- ის მნიშვნელობა, ჩვენ უნდა შევქმნათ ფორმულა, რომელიც გვაიძულებს:
EV = log2 (E/2.5)
ასე რომ, ეს არის პირველი გაანგარიშება, რომელიც უნდა გაკეთდეს იმისათვის, რომ მიიღოთ სინათლის მრიცხველიდან ფოტოგრაფიული მნიშვნელობები.
თანდართულ საძიებო ცხრილში შეგიძლიათ ნახოთ ყველა მნიშვნელობა, რომელიც გამოყენებული იქნება ამ შუქმეტრში, Lux და EV მნიშვნელობების შესაბამისად.
ნაბიჯი 2: ჩვენება ღირებულებების ჩვენება | ადაფრუტის GFX ბიბლიოთეკა
მე პირველად შევეცადე წარმომედგინა ღირებულებები მთლიანი ნაბიჯებით, რადგან ეს არის ის, რისი დაყენებაც შემიძლია ჩემი Bronica– სთვის, მაგრამ ამან მიმიყვანა პრობლემასთან:
დავუშვათ, რომ ლუქსის სენსორი გამოდის ზუსტად 20480 მნიშვნელობით, ეს ნიშნავს რომ ის არის ზუსტად EV 13, ასე რომ მე შემიძლია, მაგალითად, ჩემი კამერა დავაყენო f4 და 1/500 წამი და კარგი იქნება წასვლა
შემდეგი, დავუშვათ, რომ ლუქსი სენსორი გამოიღებს 20479 ლუქსი, 1 ლუქსი EV13– ის ქვეშ, რომელიც გამოიმუშავებს EV– ს ღირებულებას 12, მაგრამ ის მხოლოდ ლუქსია EV13– დან
ასე რომ, მე დავაყენებდი ჩემს კამერას f2.8 და 1/500 წამის მანძილზე, რაც მეტისმეტად ასახავდა 1 გაჩერებას, იმისდა მიუხედავად, რომ არ ვიცოდი რამდენად ახლოს ვიყავი EV13– თან.
დასკვნა: ჩვენ გვჭირდება მნიშვნელობების ანალოგური ჩვენება, რათა მინიმუმ დავინახოთ რამდენად ახლოს ან შორს არის მეტრი მომდევნო ან წინა EV საფეხურიდან.
GFX ბიბლიოთეკის ჩაშენებული ასოებისა და შრიფტების გამოყენების მცდელობის შემდეგ გადავწყვიტე გამოვიყენო ორი პერსონალური გრაფიკა, რომელიც გადავა OLED ეკრანზე.
ერთი დიაფრაგმის მნიშვნელობებისთვის, ერთი ჯერ.
GFX ბიბლიოთეკა იყენებს 8 ბიტიან ღირებულებებს გრაფიკის წარმოსაჩენად, ამიტომ მე შევქმენი xls ფურცელი (იხ. სურათი ზემოთ).
- თითოეულ მნიშვნელობას აქვს ზუსტად იგივე რაოდენობის პიქსელი თითო მნიშვნელობაზე
- ჯერ და დიაფრაგმა აქვს ზუსტად იგივე რაოდენობის მნიშვნელობა თითო მწკრივზე
- მე დავამატე აუცილებელი "B" თითოეული ბაიტის დასაწყისში და "," ბოლოს
- შემდეგ ის ექსპორტზე გადავიტანე უბრალო ტექსტზე და ვოილაში: მე დავამატე მესამე გრაფიკა
დროის მნიშვნელობები იწყება 1/8 წამში და დიაფრაგმის მნიშვნელობები იწყება f2.8
წინა ნაბიჯის საძიებო ცხრილის გამოყენებით ჩვენ ვიცით, რომ ეს წარმოადგენს 160 ლუქსი ან EV6.
ყველაზე ბნელი მნიშვნელობები იქნება f22 და 1/500 წამი
ისევ საძიებელი ცხრილის საშუალებით ჩვენ ვხედავთ, რომ ეს ნიშნავს 655360 Lux ან EV18
ჯერჯერობით კარგად.
ასე რომ, EV6– ზე დიაფრაგმის გრაფიკა უნდა იყოს უკიდურეს მარცხნივ, ჯერ მარჯვნივ, და პირიქით EV18– ზე
ნაბიჯი 3: ლუქსის ღირებულებების წაკითხვა და ანაზღაურება | VEML7700
Vishay VEML7700 Adafruit– ის მონაცემთა ცხრილის გადახედვისას მათი დაფისთვის, მე აღმოვაჩინე საკმაოდ შემაშფოთებელი ცნობა:
სენსორი მუშაობს მხოლოდ ხაზურად 0 -დან 1000Lux– მდე (!)
იხილეთ ეკრანის სურათი ნარინჯისფერი (ხაზოვანი) და ლურჯი (ფაქტობრივი სენსორის გამომავალი) ხაზით
მზის სინათლე (EV15) არის დაახლოებით 80.000 ლუქსი, რაც იმას ნიშნავს, რომ სენსორის არაწრფივი ნაწილის კომპენსაციის გარეშე ის სრულიად უსარგებლო იქნებოდა, როგორც სინათლის მრიცხველი.
ვიშაიმ იცის ეს, ამიტომ მათ თავიანთ მომხმარებლებს მიაწოდეს სხვა pdf სახელწოდებით VEML7700 დიზაინი აპლიკაციაში.
ამ pdf– ში შეგიძლიათ იპოვოთ ფორმულა სენსორების არაწრფივი კომპენსაციისთვის:
LUX_CORR = 6.0135e-13*pow (LUX, 4) -9.3924e-9*pow (LUX, 3)+8.1488e-5*pow (LUX, 2)+1.0023*LUX
სადაც LUX_CORR არის შესწორებული Lux-Value და LUX არის სენსორის გამომავალი მნიშვნელობა.
ეს არის ის ცვლადები, რომლებიც მე გამოვიყენე, რომლებიც განსხვავებულია მათ ფურცელში.
ცოტა მაწუხებს ის, რომ ადაფრუტი ამას არ ახსენებს ერთი სიტყვით მათ გვერდზე, მათ დოკუმენტაციაში, ბიბლიოთეკაში თუ სხვაგან.
ასე რომ, პირველი რამდენიმე დღე მაინტერესებდა, რატომ აწარმოებს ჩემი ნათურა მხოლოდ 20000 ლუქსი მაქსიმუმ მზის პირდაპირი სხივების დროსაც კი.
თუ გადახედავთ გრაფიკს წითელი და ლურჯი ხაზით, თქვენ ხედავთ რატომ: რადგან ის ვერ წავა უფრო მაღლა კომპენსაციის ფორმულის გარეშე.
მაგრამ კიდევ ერთი მინიშნება იმალება სენსორის დოკუმენტაციაში:
ეს კომპენსაციის ფორმულა მუშაობს მხოლოდ იმ შემთხვევაში, თუ თქვენ დააყენებთ სენსორს 25ms და მოგების კოეფიციენტი 1/8.
ეს საკმაოდ მარტივად გაკეთდა ადაფრუცის ბიბლიოთეკით, დამატებით:
veml.setGain (VEML7700_GAIN_1_8); veml.setIntegrationTime (VEML7700_IT_25MS);
თქვენს ბათილ კონფიგურაციაში ()
ასე რომ, მას შემდეგ, რაც დააყენებთ მას 1/8 და 25ms და ამატებთ კომპენსაციის ფორმულას, შეგიძლიათ გაზომოთ 120000 ლუქსი, რაც საკმარისია მზის შუქის დასაფარად 80-100k Lux– ზე
ნაბიჯი 4: Arduino / C- კოდი
ვინაიდან ეს დამოკიდებულია თქვენს გამოყენებულ ჩვენებაზე და სასურველ კონტროლერზე, მე არ ჩავწვდები დეტალებს, მხოლოდ რამდენიმე აზრს და მინიშნებას დავამატებ, განსაკუთრებით Adafruit ბიბლიოთეკების და 128x32 px OLED გამოყენებისას:
სიცარიელის დაყენებაში:
მე დავაყენე VEML ბიბლიოთეკის ნაწილი:
veml.setGain (VEML7700_GAIN_1_8);
veml.setIntegrationTime (VEML7700_IT_25MS);
veml.setLowThreshold (10000);
veml.setHighThreshold (20000);
veml.interruptEnable (ჭეშმარიტი);
სიცარიელის მარყუჟში:
აუცილებლად დაამატეთ კომპენსაცია:
int LUX_CORR = 6.0135e-13*pow (LUX, 4) -9.3924e-9*pow (LUX, 3)+8.1488e-5*pow (LUX, 2)+1.0023*LUX;
ლუქსიდან ელექტრომობილების მისაღებად გამოიყენეთ ეს ხაზი:
float EV = log2 ((LUX_CORR/2.5));
ბიტმაპების გადატანა
იმისათვის, რომ დარწმუნდეთ, რომ bitmaps გადაადგილდება მხოლოდ მაშინ, როდესაც მნიშვნელობები არის 160Lux– დან 655360Lux– მდე, როგორც ეს წინა საფეხურზე იყო ნათქვამი, გადაიტანეთ ის if პუნქტში, როგორიცაა:
თუ (LUX_CORR> 159 && LUX_CORR <655361)
შემდეგ ჩვენ უნდა დავხატოთ EV მნიშვნელობები კოორდინატებზე, რადგან EV– ების დიაპაზონი არის ორნიშნა რიცხვი და ჩვენ გვინდა მათი გადატანა ეკრანიდან 128 px– ზე მეტი მთელ ეკრანზე ჩვენ გვჭირდება უფრო დიდი მნიშვნელობები.
ვინაიდან ჩვენ უკვე მივიღეთ float ნომერი, ჩვენ უბრალოდ გავამრავლებთ მას 100 -ზე და ვიყენებთ ამ მთელ რიცხვს კოორდინატების გამოსახატად
int EV_DSPL = EV*100;
და:
TIME = რუკა (EV_DSPL, 600, 1900, -260, 39); APERTURE = რუკა (EV_DSPL, 600, 1900, 39, -260);
როგორც ხედავთ ჩემს შემთხვევაში ბიტმაპის მინიმალური პოზიცია იქნება -260px და მაქსიმალური იქნება 39px
ის, რაც აქაც ჩანს, არის ის, რომ მე გადავინაცვლე კოორდინატები ისე, რომ ორი ბიტმაპი გადაადგილდეს საპირისპირო მიმართულებით
შემდეგ ჩვენ უნდა გადავიტანოთ ბიტმაპები კოორდინატების მიხედვით:
display.drawBitmap ((TIME), (0), TIMES_bmp, 352, 16, 1); display.drawBitmap ((APERTURE), (15), APERTURES_bmp, 352, 16, 1);
და ეს არის ყველაფერი რაც გასაკეთებელია
როგორც ბონუსი, მე ვაჩვენებ პირდაპირ EV და Lux მნიშვნელობებს, როდესაც სენსორი გამოაქვს მნიშვნელობები 160Lux– ის ქვეშ, მხოლოდ იმიტომ, რომ მინდოდა ნივთების ნახვა მისი გამოცდისას.
ნაბიჯი 5: ერთად აწყობა
ორივე, ეკრანი და სენსორი იყენებენ I2C– ს კომუნიკაციისთვის, ფაქტობრივი აპარატურის შექმნა ისეთივე მარტივია, როგორც ეს შესაძლებელია.
უბრალოდ დააკავშირეთ მონაცემები, საათი და 3V ხაზები არდუინოსთან და თქვენ მზად ხართ წასასვლელად.
მე დავამატე გრაფიკა, თუ როგორ გავაკეთე ეს ზოლის დაფით, მაგრამ როგორც უკვე ითქვა თქვენ შეგიძლიათ გამოიყენოთ კაბელები ან თუნდაც ფრთები ააწყოთ, ეს ყველაფერი დამოკიდებულია რომელ კონტროლერსა და ეკრანზე იყენებთ.
ჩემს გრაფიკზე, თეთრი წერტილები უნდა იყოს დაკავშირებული ეკრანთან და სენსორთან, ხოლო ყვითელი წერტილები - წვრილმანთან.
ერთადერთი გამონაკლისი იქნება I2C ხაზის მონაცემთა პინი, რომელიც აკავშირებს ჩვენებას, ის ასევე უკავშირდება ტრინკეტსის მონაცემთა პინს.
მე ავირჩიე არ გამოვიყენო ჩართვა/გამორთვა, არამედ სამაგიდო ღილაკი და ორი 3V ღილაკიანი უჯრედი, რათა დროებით გავამძაფრო ის, რამდენადაც დააჭირეთ ღილაკს. ის ძალაში 1/10 წამის განმავლობაში, ასე რომ საკმაოდ სწრაფია ჩემთვის, რომ დავინახო ღილაკი და გავხადო პატარა.
გირჩევთ:
ჭკვიანი სამაგიდო LED განათება - ჭკვიანი განათება W/ Arduino - Neopixels სამუშაო ადგილი: 10 ნაბიჯი (სურათებით)
ჭკვიანი სამაგიდო LED განათება | ჭკვიანი განათება W/ Arduino | Neopixels Workspace: დღეების განმავლობაში ჩვენ დიდ დროს ვატარებთ სახლში, ვსწავლობთ და ვმუშაობთ ვირტუალურად, ასე რომ, რატომ არ გავხადოთ ჩვენი სამუშაო სივრცე უფრო დიდი და ჭკვიანი განათების სისტემით Arduino და Ws2812b LED- ებით დაფუძნებული. აქ მე გაჩვენებთ როგორ ავაშენოთ თქვენი Smart სამაგიდო LED განათება, რომელიც
წვრილმანი გარემოს კედლის განათება: 9 ნაბიჯი
DIY გარე კედლის განათება: გამარჯობა. მე ვარ ანონიმური კრევეტები, კეთილი იყოს თქვენი მობრძანება ამ არხიდან პირველი ინსტრუქციის სახელმძღვანელოში. თუ გსურთ ამის მეტი ნახვა, გადახედეთ ჩემს Youtube არხს აქ: https://bit.ly/3hNivF3Now, გაკვეთილზე. ეს კედლის შუქები კონტროლდება ერთი ლონით
სრულად ავტომატიზირებული ფოტოგრაფიული პანელი: 14 ნაბიჯი (სურათებით)
სრულად ავტომატიზირებული ფოტოგრაფია Panning Rig: შესავალი გამარჯობა, ეს არის ჩემი ავტომატიზირებული კამერა Panning Rig! ხარ მგზნებარე ფოტოგრაფი, რომელსაც სურდა ერთ -ერთი მართლაც მაგარი ავტომატური მოპირკეთების აპარატი, მაგრამ ისინი მართლაც ძვირია, ისევე როგორც £ 350+ ძვირი 2 ღერძისთვის პანირება? კარგი გაჩერდი აქ
ეზოს ინტერაქტიული განათება, საფეხმავლო განათება: 3 ნაბიჯი
ეზოს ინტერაქტიული განათება, საფეხმავლო განათება: მინდოდა ავაშენო ინტერაქტიული ეზოს განათება ჩემი უკანა ეზოსთვის. იდეა ის იყო, რომ როდესაც ვინმე ერთი გზით მიდიოდა, ის ანიმაციას წამოიღებდა იმ მიმართულებით, სადაც თქვენ დადიოდით. დავიწყე დოლარის გენერალური $ 1.00 მზის ნათებით
ინტიმური ვიდეო შუქი/ ხელის ფოტოგრაფიული შუქი .: 7 ნაბიჯი (სურათებით)
ინტიმური ვიდეო შუქი/ ხელის ფოტოგრაფიული შუქი .: მე ვიცი რასაც ფიქრობ. &Quot; ინტიმური " მე ვგულისხმობ ახლო განათებას რთულ სინათლის პირობებში-არა აუცილებლად "ინტიმურ სიტუაციებში". (თუმცა, ის შეიძლება გამოყენებულ იქნას ამისათვისაც …) როგორც ნიუ-იორკელი ვიდეოგადაღება-ან