{"id":123,"date":"2015-01-18T16:51:55","date_gmt":"2015-01-18T16:51:55","guid":{"rendered":"http:\/\/www.donluc.com\/?p=123"},"modified":"2015-02-26T01:57:13","modified_gmt":"2015-02-26T01:57:13","slug":"project-2-lens-led-mk4","status":"publish","type":"post","link":"https:\/\/www.donluc.com\/?p=123","title":{"rendered":"Project #2 \u2013 Lens \u2013 LED \u2013 Mk4"},"content":{"rendered":"<p><a href=\"http:\/\/iframewidth=640height=480src=\/\/www.youtube.com\/embed\/Bj6IlNKY0M0?feature=player_embeddedframeborder=0allowfullscreen\/iframe\"><iframe loading=\"lazy\" width=\"640\" height=\"480\" src=\"\/\/www.youtube.com\/embed\/Bj6IlNKY0M0?feature=player_embedded\" frameborder=\"0\" allowfullscreen=\"allowfullscreen\"><\/iframe><\/a><\/p>\n<p><a href=\"https:\/\/www.donluc.com\/wp-content\/uploads\/2015\/01\/LensLEDMk4.jpg\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.donluc.com\/wp-content\/uploads\/2015\/01\/LensLEDMk4.jpg\" alt=\"LensLEDMk4\" width=\"640\" height=\"480\" class=\"alignnone size-full wp-image-128\" srcset=\"https:\/\/www.donluc.com\/wp-content\/uploads\/2015\/01\/LensLEDMk4.jpg 640w, https:\/\/www.donluc.com\/wp-content\/uploads\/2015\/01\/LensLEDMk4-300x225.jpg 300w\" sizes=\"auto, (max-width: 640px) 100vw, 640px\" \/><\/a><\/p>\n<p>1 X Panel Mount 10K potentiometer (Breadboard Friendly) &#8211; 10K Linear<\/p>\n<p>3 X Jumper Wires Premium 6&#8243; M\/M<\/p>\n<p>1 X Project #2 &#8211; Lens &#8211; LED &#8211; Mk3<\/p>\n<p>LensLEDMk4.3.ino<\/p>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"default\" data-enlighter-title=\"\">\/\/ ***** Don Luc *****\r\n\/\/ Software Version Information\r\n\/\/ 4.1 - 4.2 - 4.3\r\n\/\/ sensorNumber\r\n\r\n#include \r\n\/\/ Which pin on the Arduino is connected to the NeoPixels?\r\n#define PIN 6\r\n\/\/ How many NeoPixels are attached to the Arduino?\r\n#define NUMPIXELS 2\r\nAdafruit_NeoPixel pixels = Adafruit_NeoPixel(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);\r\n\/\/ Panel Mount 1K potentiometer Brightneed\r\nconst int sensorPin = A0;\r\n\/\/ Panel Mount 1K potentiometer\r\nconst int sensorDelay = A1;\r\n\/\/ Panel Mount 1K potentiometer\r\nconst int sensorNumber = A2;\r\n\/\/ variables:\r\nint sensorValue = 0;         \/\/ the sensor value\r\nint sensorMin = 1023;        \/\/ minimum sensor value\r\nint sensorMax = 0;           \/\/ maximum sensor value\r\nint red = 0;\r\nint green = 0;\r\nint blue = 0;\r\nint x = 0;\r\nlong delayVal = 0;\r\nlong xp = 0;\r\nint y = 0;\r\nint z = 0;\r\n\r\nvoid loop() {\r\n \r\n  z = analogRead(sensorNumber);\r\n  y = (z \/ 127);\r\n  \r\n  \/\/ range value:\r\n  switch (y) {\r\n    case  0:\r\n      \/\/ Blue\r\n      red = 0;\r\n      green = 102;\r\n      blue = 204;        \r\n      neopix();\r\n      break;\r\n    case 1:\r\n      \/\/ Yellow\r\n      red = 255;\r\n      green = 255;\r\n      blue = 0;        \r\n      neopix();\r\n      break;\r\n    case 2:\r\n      \/\/ Pink\r\n      red = 255;\r\n      green = 153;\r\n      blue = 203;        \r\n      neopix();\r\n      break;\r\n    case 3:\r\n      \/\/ White\r\n      red = 255;\r\n      green = 255;\r\n      blue = 255;        \r\n      neopix();\r\n      break;  \r\n    case 4:\r\n      \/\/ Green\r\n      red = 0;\r\n      green = 255;\r\n      blue = 0;        \r\n      neopix();\r\n      break;\r\n    case 5:\r\n      \/\/ Orange\r\n      red = 255;\r\n      green = 102;\r\n      blue = 0;        \r\n      neopix();\r\n      break;\r\n    case 6:\r\n      \/\/ Violet\r\n      red = 204;\r\n      green = 102;\r\n      blue = 204;        \r\n      neopix();\r\n      break;     \r\n    case 7:\r\n        xp = analogRead(sensorDelay);\r\n        delayVal = (1000 * xp);\r\n        \/\/ range value:\r\n        switch (x) {\r\n          case 0:\r\n            \/\/ Blue\r\n            red = 0;\r\n            green = 102;\r\n            blue = 204;        \r\n            neopix();\r\n            delay(delayVal); \/\/ Delay for a period of time (in milliseconds).\r\n            x = 1;\r\n            break;\r\n          case 1:\r\n            \/\/ Yellow\r\n            red = 255;\r\n            green = 255;\r\n            blue = 0;        \r\n            neopix();\r\n            delay(delayVal); \/\/ Delay for a period of time (in milliseconds).\r\n            x = 2;\r\n            break;\r\n          case 2:\r\n            \/\/ Pink\r\n            red = 255;\r\n            green = 153;\r\n            blue = 203;        \r\n            neopix();\r\n            delay(delayVal); \/\/ Delay for a period of time (in milliseconds).\r\n            x = 3;\r\n            break;\r\n          case 3:\r\n            \/\/ White\r\n            red = 255;\r\n            green = 255;\r\n            blue = 255;        \r\n            neopix();\r\n            delay(delayVal); \/\/ Delay for a period of time (in milliseconds).\r\n            x = 4;\r\n            break;  \r\n          case 4:\r\n            \/\/ Green\r\n            red = 0;\r\n            green = 255;\r\n            blue = 0;        \r\n            neopix();\r\n            delay(delayVal); \/\/ Delay for a period of time (in milliseconds).\r\n            x = 5;\r\n            break;\r\n          case 5:\r\n            \/\/ Orange\r\n            red = 255;\r\n            green = 102;\r\n            blue = 0;        \r\n            neopix();\r\n            delay(delayVal); \/\/ Delay for a period of time (in milliseconds).\r\n            x = 6;\r\n            break;\r\n          case 6:\r\n            \/\/ Violet\r\n            red = 204;\r\n            green = 102;\r\n            blue = 204;        \r\n            neopix();\r\n            delay(delayVal); \/\/ Delay for a period of time (in milliseconds).\r\n            x = 0;\r\n            break;      \r\n          }\r\n          break; \r\n  }\r\n\r\n}\r\n<\/pre>\n<p>neopin.ino<\/p>\n<pre class=\"\">void neopix() {\r\n  \r\n  for(int i=0; i&lt;NUMPIXELS; i++){\r\n \r\n     \/\/ read the sensor:\r\n    sensorValue = analogRead(sensorPin);\r\n\r\n    \/\/ apply the calibration to the sensor reading\r\n    sensorValue = map(sensorValue, sensorMin, sensorMax, 0, 255);\r\n\r\n    \/\/ in case the sensor value is outside the range seen during calibration\r\n    sensorValue = constrain(sensorValue, 0, 255); \r\n    \r\n    \/\/ pixels.Color takes RGB values, from 0,0,0 up to 255,255,255\r\n    pixels.setBrightness( sensorValue );\r\n    pixels.setPixelColor(i, pixels.Color(red,green,blue)); \r\n    pixels.show(); \/\/ This sends the updated pixel color to the hardware.\r\n\r\n    delay(50); \/\/ Delay for a period of time (in milliseconds).\r\n    \r\n  }\r\n  \r\n}\r\n<\/pre>\n<p>setup.ino<\/p>\n<pre class=\"\">void setup() {\r\n  pixels.begin(); \/\/ This initializes the NeoPixel library.\r\n}\r\n<\/pre>\n<p><strong>Don Luc<\/strong><\/p>\n","protected":false},"excerpt":{"rendered":"<p>1 X Panel Mount 10K potentiometer (Breadboard Friendly) &#8211; 10K Linear 3 X Jumper Wires Premium 6&#8243; M\/M 1 X Project #2 &#8211; Lens &#8211; LED &#8211; Mk3 LensLEDMk4.3.ino \/\/ ***** Don Luc ***** \/\/ Software Version Information \/\/ 4.1 &#8211; 4.2 &#8211; 4.3 \/\/ sensorNumber #include \/\/ Which pin on the Arduino is connected &#8230; <a title=\"Project #2 \u2013 Lens \u2013 LED \u2013 Mk4\" class=\"read-more\" href=\"https:\/\/www.donluc.com\/?p=123\" aria-label=\"Read more about Project #2 \u2013 Lens \u2013 LED \u2013 Mk4\">Read more<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[35,50,5,10],"tags":[],"class_list":["post-123","post","type-post","status-publish","format-standard","hentry","category-glasses-led","category-arduino","category-microcontrollers","category-projects"],"_links":{"self":[{"href":"https:\/\/www.donluc.com\/index.php?rest_route=\/wp\/v2\/posts\/123","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.donluc.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.donluc.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.donluc.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.donluc.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=123"}],"version-history":[{"count":5,"href":"https:\/\/www.donluc.com\/index.php?rest_route=\/wp\/v2\/posts\/123\/revisions"}],"predecessor-version":[{"id":129,"href":"https:\/\/www.donluc.com\/index.php?rest_route=\/wp\/v2\/posts\/123\/revisions\/129"}],"wp:attachment":[{"href":"https:\/\/www.donluc.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=123"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.donluc.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=123"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.donluc.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=123"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}