Სარჩევი:
- ნაბიჯი 1: გამოყენებული მასალები
- ნაბიჯი 2: MakeCode/JavaScript სკრიპტი
- ნაბიჯი 3: RGB გაზომვების მიღება: გადაცემული სინათლის რეჟიმი
- ნაბიჯი 4: ასახული სინათლის RGB და სიკაშკაშის გაზომვები
- ნაბიჯი 5: ასახული სინათლის გაზომვები: ყვავილები
ვიდეო: სინათლისა და ფერის გაზომვები Pimoroni Enviro– სთან ერთად: ბიტი მიკროსთვის: ბიტი: 5 ნაბიჯი
2024 ავტორი: John Day | [email protected]. ბოლოს შეცვლილი: 2024-01-30 10:19
მე ადრე ვმუშაობდი ზოგიერთ მოწყობილობაზე, რომელიც იძლევა სინათლისა და ფერის გაზომვის საშუალებას და თქვენ შეიძლება ბევრი გაიგოთ ამ გაზომვების თეორიის შესახებ, რაც შეიძლება იყოს აქ და აქ.
პიმორონმა ახლახანს გამოუშვა გარემო: ბიტი, მიკრო ბიტის დანამატი, რომელსაც გააჩნია MEMS მიკროფონი ხმის დონის გაზომვისთვის, BME280 ტემპერატურის/ტენიანობის/ჰაერის წნევის სენსორი და TCS3475 სინათლისა და ფერის სენსორი (RGBC). გარდა ამისა, ორი სენსორია მოთავსებული ფერის სენსორის გვერდებზე, რაც საშუალებას გაძლევთ გაზომოთ საგნების ფერი ასახული შუქით. ამ გაზომვების შესასრულებლად ინსტრუმენტის შექმნა არასოდეს ყოფილა ადვილი.
აქ მინდა აღვწერო, თუ როგორ ხდება გარემო: ბიტი შეიძლება გამოყენებულ იქნას ფერისა და სინათლის გაზომვებისათვის და MakeCode სკრიპტი, რომელიც ამის შესრულების საშუალებას იძლევა. მიკრო: ბიტი და გარემო: ბიტი არის სასიამოვნო და იაფი მოწყობილობა, რათა წარმოაჩინოს მეცნიერული გაზომვების პრინციპები პრაქტიკულად და მათთან ერთად ითამაშოს.
ეს სასწავლო არის ნაწილი "Rainbow" კონკურსი. თუ მოგწონთ, გთხოვთ მიეცით თქვენი ხმა. მადლობა
ნაბიჯი 1: გამოყენებული მასალები
მიკრო: ბიტი, 13 GBP Pimoroni– ში.
Pimoroni Enviro: ბიტი, 20 GBP Pimoroni– ში.
პიმორონის სიმძლავრე: ბიტი, 6 GBP პიომორონში. თქვენ ასევე შეგიძლიათ გამოიყენოთ ბატარეის პაკეტები ან LiPo მიკრო: ბიტისთვის
Rosco Cinegel ფერის ფილტრის ნიმუშის ბლოკი. ჩემი ავიღე მოდულორიდან, ბერლინიდან.
IKEA- ს ფერადი პლასტმასის ჭიქები. IKEA, ბერლინი.
ველური ყვავილები. მდელო პოტსდამ-გოლმში.
ნაბიჯი 2: MakeCode/JavaScript სკრიპტი
პიმორონმა შეიმუშავა ბიბლიოთეკა Enviro– სთვის: bit, როგორც MakeCode/JavaScript კოდირების გარემოსთვის, ასევე MicroPython– ისთვის. მე აქ გამოვიყენე MakeCode, რადგან სკრიპტების ატვირთვა შესაძლებელია პირდაპირ მიკრო: ბიტში და იძლევა ბლოკის კოდირების საშუალებას.
სკრიპტი კითხულობს წითელი, მწვანე და ლურჯი (RGB) და გამჭვირვალე (C) არხების მნიშვნელობებს. პირველი მოცემულია მნიშვნელობებში 0 -დან 255 -მდე, მეორე კი მთელ დიაპაზონში 0 -დან 61000 -მდე.
გამჭვირვალე არხის დიაპაზონი ძალიან ფართოა და საშუალებას გაძლევთ გაზომოთ ნათელი დღის შუქიდან ბნელ ოთახში.
ჯერჯერობით მე არ მესმის ფერის გაზომვის ფუნქციის ყველა დეტალი, მაგრამ ვთვლი, რომ მათ აქვთ შესწორებული და ნორმალიზებული მექანიზმები დანერგილი.
თავდაპირველად, ოთხივე არხის მნიშვნელობებია აღებული. 5x5 LED მატრიცაზე შედეგების ჩვენების მიზნით, გაზომილი მნიშვნელობები გამოიყენება შედეგების განთავსებისთვის 5 (RGB) ან 10 (C) ყუთებში, რომლებიც წარმოდგენილია ერთი LED- ით ერთ (R, G, B) ან ორი (C) რიგი.
RGB– ს შემთხვევაში, მასშტაბირება არის ხაზოვანი და თითოეული ურნის ინტერვალის ზომაა 51 ერთეული სიგანე. C– ს შემთხვევაში, სკალირება არის ლოგარითმული 10 საფეხურზე მეტი (log3, ასე რომ, ყოველი ნაბიჯი არის წინა 3 – ჯერ). ეს საშუალებას მოგცემთ აჩვენოთ ძალიან მუქი და ძალიან ნათელი პირობები ერთნაირად.
ღილაკზე A დაჭერით აჩვენებს R, G და B მნიშვნელობებს რიცხვებში, დაჭერით B C მნიშვნელობას. A+B ააქტიურებს LED- ებს და B დახურავს მათ.
მოდით bR = 0 // ურნები
ნება bG = 0 ნება bB = 0 ნება bS = 0 ნება bC = 0 ნება bCx = 0 ნება S = 0 // გაზომილი მნიშვნელობები ნება C = 0 ნება B = 0 ნება G = 0 ნება R = 0 ძირითადი. სამუდამოდ (() => {if (input.buttonIsPressed (Button. AB)) {envirobit.setLEDs (envirobit. OnOff. On)} სხვა შემთხვევაში თუ (input.buttonIsPressed (Button. A)) {basic.showString ("R:" + R + "G:" + G + "B:" + B)} სხვაგან თუ (input.buttonIsPressed (Button. B)) {basic.showString ("C:" + C) envirobit.setLEDs (envirobit. OnOff. Off)}} else {basic.pause (100) R = envirobit.getRed () G = envirobit.getGreen () B = envirobit.getBlue () C = envirobit.getLight () bC = 5 bCx = 5 თუ (R> = 204) { // binning, max 255 bR = 4} სხვა თუ (R> = 153) {bR = 3} სხვა შემთხვევაში (R> = 102) {bR = 2} სხვა შემთხვევაში თუ (R> = 51) {bR = 1} სხვა {bR = 0} თუ (G> = 204) {bG = 4} სხვაგან თუ (G> = 153) {bG = 3} სხვაგან თუ (G> = 102) {bG = 2} სხვაგან თუ (G> = 51) {bG = 1} სხვა {bG = 0} თუ (B> = 204) {bB = 4} სხვა შემთხვევაში თუ (B> = 153) {bB = 3} სხვაგან თუ (B> = 102) {bB = 2} else if (B> = 51) {bB = 1} სხვა {bB = 0} თუ (C> = 60000) {// გაჯერება bCx = 4} სხვა თუ (C> = 20000) {bCx = 3} სხვა შემთხვევაში თუ (C> = 6600) {bCx = 2} სხვა შემთხვევაში თუ (C> = 2200) {bCx = 1} სხვა თუ (C> = 729) {bCx = 0} სხვა თუ (C> = 243) {bC = 4} სხვა შემთხვევაში თუ (C> = 81) {bC = 3} სხვა შემთხვევაში თუ (C> = 27) {bC = 2} else if (C> = 9) {bC = 1} else {bC = 0} // ჩაწერეთ led basic.clearScreen () if (bCx <5) {led.plot (1, bCx)} სხვა {led.plot (0, ძვ.)} Led.plot (2, bR) led.plot (3, bG) led.plot (4, bB)}})
ნაბიჯი 3: RGB გაზომვების მიღება: გადაცემული სინათლის რეჟიმი
როგორც უკვე აღვნიშნეთ, არსებობს ფერის გაზომვის ორი რეჟიმი: გადაცემული და ასახული სინათლის სპექტროსკოპია. გადაცემული სინათლის რეჟიმში, სინათლე გადის სენსორის ფერადი ფილტრის ან ხსნარის საშუალებით. არეკლილი სინათლის გაზომვებში, გამოსხივებული სინათლე მაგ. LED- ებიდან აისახება ობიექტი და გამოვლენილია სენსორით.
RGB მნიშვნელობები ნაჩვენებია მიკროში მე –3 – მე –5 რიგებში: ბიტი 5x5 LED მატრიცა, ზედა LED- ები დაბალია, ქვედა LED– ები მაღალი მნიშვნელობები.
აქ ნაჩვენები ექსპერიმენტებისათვის გადაცემული სინათლის გაზომვებზე მე გამოვიყენე დღის შუქი და სენსორის წინ მოვათავსე ფერადი ფილტრები როსკოს ნიმუშის პაკეტიდან. თქვენ შეგიძლიათ ნახოთ ეფექტები ეკრანზე, განსაკუთრებით წითელ არხზე. გადახედეთ სურათებს და შეადარეთ ნიმუშები.
რეალური მნიშვნელობების წასაკითხად, უბრალოდ დააჭირეთ ღილაკს A.
ნაბიჯი 4: ასახული სინათლის RGB და სიკაშკაშის გაზომვები
ასახული სინათლის გაზომვისთვის მე ჩავრთე LED- ები (ღილაკი [A+B]) და სენსორის წინ მოვათავსე IKEA- ს ბავშვთა ჭიქების ნათელი ფერის ნაჭრები. როგორც სურათებიდან ჩანს, RGB მნიშვნელობები იცვლება როგორც მოსალოდნელი იყო.
სიკაშკაშის გაზომვისთვის, დაბალი მნიშვნელობები ნაჩვენებია პირველში, მაღალი მნიშვნელობები მეორე რიგში. დაბალი მნიშვნელობები ზედა, უფრო მაღალი ღირებულებები ქვედა LED- ებით. ზუსტი მნიშვნელობის წასაკითხად დააჭირეთ ღილაკს B.
ნაბიჯი 5: ასახული სინათლის გაზომვები: ყვავილები
მე ავიღე ველური ყვავილები მინდვრიდან და შევეცადე მათზე შემეტანა ფერადი გაზომვები. ეს იყო ყაყაჩო, სიმინდის ყვავილი, ყავისფერი ნაჭუჭი, კედლის ქერქი და დილანდელონის ფოთოლი. RGB ღირებულებები იყო [R, G, B]:
- არცერთი [92, 100, 105]
- ყაყაჩო (წითელი) [208, 98, 99]
- სიმინდის ყვავილი (ლურჯი) [93, 96, 138]
- ყავისფერი კნუტი (იასამნისფერი) [122, 97, 133]
- კედელი ჰარკვიდი (ყვითელი) [144, 109, 63]
- dandelon ფოთოლი (მწვანე) [164, 144, 124]
რაც შეესაბამება მოლოდინს, ყოველ შემთხვევაში, პირველი სამი მცენარისთვის. მნიშვნელობების ფერების ჩვენების მიზნით, შეგიძლიათ გამოიყენოთ ფერის გამომთვლელი, როგორც აქ.
გირჩევთ:
IOT DMX კონტროლერი Arduino– სთან და Stage Monster– თან ერთად: 6 ნაბიჯი
IOT DMX კონტროლერი Arduino– ს და Stage Monster Live– ით: აკონტროლეთ სცენის განათება და სხვა DMX მოწყობილობები თქვენი ტელეფონიდან ან სხვა ვებ – ჩართული მოწყობილობიდან. მე გაჩვენებთ თუ როგორ სწრაფად და მარტივად ააშენოთ თქვენი საკუთარი DMX კონტროლერი, რომელიც მუშაობს Stage Monster Live პლატფორმაზე Arduino Mega– ს გამოყენებით
როკოლა ARDUINO– სთან ერთად: 6 ნაბიჯი
როკოლა ARDUINO– სთან ერთად: თქვენ გირჩევთ შექმნათ თქვენი პროდუქტი * ROCKOLA * Arduino და Buzzer activo– ით. პირველ რიგში, ეს არის საჭირო მასალები და მასალები, რომლებიც შეიცავს " მასალების ჩამონათვალს " para crear la rocola. Con los mater
ACS724 მიმდინარე სენსორის გაზომვები არდუინოსთან ერთად: 4 ნაბიჯი
ACS724 მიმდინარე სენსორული გაზომვები არდუინოსთან ერთად: ამ ინსტრუქციურად ჩვენ ექსპერიმენტს ვატარებთ ACS724 მიმდინარე სენსორის არდუინოსთან დაკავშირებით მიმდინარე გაზომვებისთვის. ამ შემთხვევაში მიმდინარე სენსორი არის +/- 5A ჯიში, რომელიც გამოაქვს 400 მვ/ა. Arduino Uno– ს აქვს 10 ბიტიანი ADC, ასე რომ კარგი კითხვებია
დაკავშირებული ყვავილების ქოთანი მიკროსთვის: ბიტი: 4 ნაბიჯი
დაკავშირებული ყვავილების ქოთანი მიკრო: ბიტი: ეს ქოთანი დამზადებულია 3D ბეჭდვით და აქვს მიკრობიტის ბარათი მასში. ეს ქოთანი შეიცავს მიკრო: ბიტ ბარათს, რომელიც განთავსებულია ნიადაგის კონტეინერის ქვეშ. ეს იღებს ინფორმაციას ნიადაგის ტენიანობის სენსორიდან (გამტარობა). ნიადაგის ტენიანობის ტრანსკრიფცია
RGB LED ფერის შერევა Arduino– სთან ერთად Tinkercad– ში: 5 ნაბიჯი (სურათებით)
RGB LED ფერის შერევა Arduino– სთან ერთად Tinkercad– ში: მოდით ვისწავლოთ თუ როგორ გავაკონტროლოთ მრავალ ფერადი LED- ები Arduino– ს ანალოგური საშუალებების გამოყენებით. ჩვენ დავაკავშირებთ RGB LED- ს Arduino Uno– სთან და შევადგინეთ მარტივი პროგრამა მისი ფერის შესაცვლელად. თქვენ შეგიძლიათ გააგრძელოთ პრაქტიკულად Tinkercad სქემების გამოყენებით. ამის ნახვაც კი შეგიძლიათ