{"id":4297,"date":"2024-02-04T19:00:00","date_gmt":"2024-02-04T18:00:00","guid":{"rendered":"https:\/\/arduino.net.pl\/?p=4297"},"modified":"2024-02-04T21:12:08","modified_gmt":"2024-02-04T20:12:08","slug":"czujnik-natezenia-swiatla-bh1750","status":"publish","type":"post","link":"https:\/\/arduino.net.pl\/index.php\/czujnik-natezenia-swiatla-bh1750\/","title":{"rendered":"Czujnik nat\u0119\u017cenia \u015bwiat\u0142a BH1750"},"content":{"rendered":"\n<p><em>[Wpis z 2021 roku, edytowany]<\/em><br>Naby\u0142em niedawno <a href=\"https:\/\/abc-rc.pl\/product-pol-7205-Czujnik-natezenia-swiatla-GY-302-BH1750-wyjscie-I2C-Arduino.html\">czujnik nat\u0119\u017cenia \u015bwiat\u0142a BH1750<\/a>. Dzia\u0142a dobrze, biblioteka ma kilka przyk\u0142ad\u00f3w stosowania czujnika. Od kilku dni testuj\u0119.<\/p>\n\n\n\n<h1 class=\"wp-block-heading\">Arduino<\/h1>\n\n\n\n<h3 class=\"wp-block-heading\">\u0141\u0104CZENIE<\/h3>\n\n\n\n<p>Klasyczne I2C. Dodatkowo pin do zmiany adresu. Szczeg\u00f3\u0142y <a href=\"https:\/\/github.com\/claws\/BH1750\">https:\/\/github.com\/claws\/BH1750<\/a>.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large is-style-default\"><a href=\"https:\/\/arduino.net.pl\/wp-content\/uploads\/2021\/04\/Zrzut-ekranu-2021-04-6-o-15.45.11.png\"><img loading=\"lazy\" decoding=\"async\" width=\"749\" height=\"593\" src=\"https:\/\/arduino.net.pl\/wp-content\/uploads\/2021\/04\/Zrzut-ekranu-2021-04-6-o-15.45.11.png\" alt=\"Po\u0142\u0105czenie czujnika BH1750 z p\u0142ytk\u0105 Arduino NANO.\" class=\"wp-image-4298\" srcset=\"https:\/\/arduino.net.pl\/wp-content\/uploads\/2021\/04\/Zrzut-ekranu-2021-04-6-o-15.45.11.png 749w, https:\/\/arduino.net.pl\/wp-content\/uploads\/2021\/04\/Zrzut-ekranu-2021-04-6-o-15.45.11-300x238.png 300w, https:\/\/arduino.net.pl\/wp-content\/uploads\/2021\/04\/Zrzut-ekranu-2021-04-6-o-15.45.11-379x300.png 379w\" sizes=\"auto, (max-width: 749px) 100vw, 749px\" \/><\/a><figcaption class=\"wp-element-caption\">BH1750 + Arduino NANO<\/figcaption><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Kod dla Arduino<\/h3>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: python; light: false; title: Kod:; toolbar: true; notranslate\" title=\"Kod:\">\n\/*\n\nExample of BH1750 library usage.\n\nThis example initialises the BH1750 object using the default high resolution\ncontinuous mode and then makes a light level reading every second.\n\nConnections\n\n  - VCC to 3V3 or 5V\n  - GND to GND\n  - SCL to SCL (A5 on Arduino Uno, Leonardo, etc or 21 on Mega and Due, on\n    esp8266 free selectable)\n  - SDA to SDA (A4 on Arduino Uno, Leonardo, etc or 20 on Mega and Due, on\n    esp8266 free selectable)\n  - ADD to (not connected) or GND\n\nADD pin is used to set sensor I2C address. If it has voltage greater or equal\nto 0.7VCC voltage (e.g. you&#039;ve connected it to VCC) the sensor address will be\n0x5C. In other case (if ADD voltage less than 0.7 * VCC) the sensor address\nwill be 0x23 (by default).\n\n*\/\n\n#include &lt;BH1750.h&gt;\n#include &lt;Wire.h&gt;\n\nBH1750 lightMeter;\n\nvoid setup() {\n  Serial.begin(9600);\n\n  \/\/ Initialize the I2C bus (BH1750 library doesn&#039;t do this automatically)\n  Wire.begin();\n  \/\/ On esp8266 you can select SCL and SDA pins using Wire.begin(D4, D3);\n  \/\/ For Wemos \/ Lolin D1 Mini Pro and the Ambient Light shield use\n  \/\/ Wire.begin(D2, D1);\n\n  lightMeter.begin();\n\n  Serial.println(F(&quot;BH1750 Test begin&quot;));\n}\n\nvoid loop() {\n  float lux = lightMeter.readLightLevel();\n  Serial.print(&quot;Light: &quot;);\n  Serial.print(lux);\n  Serial.println(&quot; lx&quot;);\n  delay(1000);\n}\n<\/pre><\/div>\n\n\n<div style=\"height:100px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-accent-1-color has-alpha-channel-opacity has-accent-1-background-color has-background is-style-wide\"\/>\n\n\n\n<h1 class=\"wp-block-heading\">MicroPython<\/h1>\n\n\n\n<p>\u0141\u0105czenie oczywi\u015bcie jak wy\u017cej dla Arduino. Ja \u0142\u0105czy\u0142em z moim nowym mikroprocesorem <a href=\"https:\/\/arduino.net.pl\/index.php\/tag\/esp32c3supermini\/\" title=\"esp32c3supermini\">ESP32C3 Super Mini<\/a>, a w tym przypadku (tak jak z <a href=\"https:\/\/arduino.net.pl\/index.php\/raspberry-pi-pico-dobra-plytka-dla-micropython-a\/\" title=\"Raspberry Pi Pico, czy to dobra p\u0142ytka dla MicroPython-a?\">raspberry pico<\/a>) zmieniamy I2C: sda=Pin(8), scl=Pin(9). U\u017cy\u0142em prostej biblioteki <a href=\"https:\/\/github.com\/flrrth\/pico-bh1750\" title=\"\">pico-bh1750<\/a>. Pisana by\u0142a pod pico w\u0142a\u015bnie, ale po lekkiej modyfikacji programu g\u0142\u00f3wnego, dzia\u0142a z ESP32C3. Jak pewnie z innymi mikroprocesorami esp32 czy esp8266. Trzeba tylko pami\u0119ta\u0107, by zmieni\u0107 piny sda i scl. Podstawowy kod podaj\u0119 ni\u017cej. S\u0105 bardziej skomplikowane biblioteki BH1750, ale ja potrzebuj\u0119 prostego odczytywania \u015bwiat\u0142a na zewn\u0105trz i ten mi dzia\u0142a. Do VCC czujnika pod\u0142\u0105czy\u0142em 5V z zewn\u0105trz. 5V zasila te\u017c ESP32C3 Super Mini.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Kod dla MicroPython<\/h3>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: python; light: false; title: Kod:; toolbar: true; notranslate\" title=\"Kod:\">\nfrom machine import Pin, SoftI2C\nfrom utime import sleep\n\nfrom bh1750 import BH1750\n\ni2c0 = SoftI2C(sda=Pin(8), scl=Pin(9))\n\nbh1750 = BH1750(0x23, i2c0)\n\nwhile True:\n    print(bh1750.measurement)\n    sleep(1)\n<\/pre><\/div>\n\n\n<h3 class=\"wp-block-heading\">LINKI<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/youtu.be\/_7F1OWpL8a4\">Czujnik nat\u0119\u017cenia \u015bwiat\u0142a GY-302 &#8211; BH1750, wy\u015bcie I2C do Arduino &#8211; ABC-RC.PL<\/a><\/li>\n\n\n\n<li>Biblioteka dla Arduino\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/github.com\/claws\/BH1750\" title=\"\">https:\/\/github.com\/claws\/BH1750<\/a><\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Biblioteka dla MicroPython\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/github.com\/flrrth\/pico-bh1750\" title=\"\">https:\/\/github.com\/flrrth\/pico-bh1750<\/a><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n","protected":false},"excerpt":{"rendered":"<p>[Wpis z 2021 roku, edytowany]Naby\u0142em niedawno czujnik nat\u0119\u017cenia \u015bwiat\u0142a BH1750. Dzia\u0142a dobrze, biblioteka ma kilka przyk\u0142ad\u00f3w stosowania czujnika. Od kilku dni testuj\u0119. Arduino \u0141\u0104CZENIE Klasyczne I2C. Dodatkowo pin do zmiany&#8230;<\/p>\n","protected":false},"author":3,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"categories":[2],"tags":[121],"class_list":["post-4297","post","type-post","status-publish","format-standard","hentry","category-arduino","tag-bh1750"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/arduino.net.pl\/index.php\/wp-json\/wp\/v2\/posts\/4297","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/arduino.net.pl\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/arduino.net.pl\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/arduino.net.pl\/index.php\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/arduino.net.pl\/index.php\/wp-json\/wp\/v2\/comments?post=4297"}],"version-history":[{"count":19,"href":"https:\/\/arduino.net.pl\/index.php\/wp-json\/wp\/v2\/posts\/4297\/revisions"}],"predecessor-version":[{"id":6078,"href":"https:\/\/arduino.net.pl\/index.php\/wp-json\/wp\/v2\/posts\/4297\/revisions\/6078"}],"wp:attachment":[{"href":"https:\/\/arduino.net.pl\/index.php\/wp-json\/wp\/v2\/media?parent=4297"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/arduino.net.pl\/index.php\/wp-json\/wp\/v2\/categories?post=4297"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/arduino.net.pl\/index.php\/wp-json\/wp\/v2\/tags?post=4297"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}