laupilot
laupilot
報告

灯台

指示
IMG_4786.JPEG
IMG_4786
.JPEG
アプリケーションシナリオ
レーザー加工
機械とモジュール
xTool S1
40W
使用される材料
3mmプレイウッド
153
1767

情報

      3mmプレイウッド+Arduino Nano+LDR

https://www.ameede.com/lighthouse-e0021503-file-cdr-and-eps-svg-free-vector-download-for-laser-cut/
    

指示

1

ステップ1

const int groupPins[] = {3, 5, 6, 9};
const int ldrPin = A7;     Capteur LDR modifié pour utiliser A7
const int threshold = 100;<span style="color:#95a5a6;">   < threshold = obscurité


 

const int maxBrightness = 255;
const int fadeStep = 1;
const int fadeDelay = 8;


 

void setup()<span style="color:#4e5b61;"> {
  for (int<span style="color:#4e5b61;"> i = <span style="color:#005c5f;">0<span style="color:#4e5b61;">; i < <span style="color:#005c5f;">4<span style="color:#4e5b61;">; i++<span style="color:#434f54;">)<span style="color:#4e5b61;"> <span style="color:#434f54;">{
<span style="color:#4e5b61;">    <span style="color:#d35400;">pinMode(groupPins[i], OUTPUT);
    analogWrite(groupPins[i], 0);
  }
  pinMode(ldrPin, INPUT);
}


 

void loop() {
  int ldrValue = analogRead(ldrPin);


 

<span style="color:#4e5b61;">  <span style="color:#728e00;">if<span style="color:#4e5b61;"> <span style="color:#434f54;">(<span style="color:#4e5b61;">ldrValue <threshold<span style="color:#434f54;">)<span style="color:#4e5b61;"> <span style="color:#434f54;">{
<span style="color:#95a5a6;">    // Lumière faible → animation phare
<span style="color:#4e5b61;">    static intcurrent = 0;
    int next = (current + 1)% 4;
<span style="color:#4e5b61;">    <span style="color:#728e00;">for<span style="color:#4e5b61;"> <span style="color:#434f54;">(<span style="color:#00979d;">int<span style="color:#4e5b61;"> b = <span style="color:#005c5f;">0<span style="color:#4e5b61;">; b <= maxBrightness; b += fadeStep<span style="color:#434f54;"">)<span style="color:#4e5b61;"> {
      analogWrite(groupPins[current], maxBrightness - b);
      analogWrite(groupPins[next], b);
<span style="color:#4e5b61;">      <span style="color:#728e00;">for<span style="color:#4e5b61;"> <span style="color:#434f54;">(<span style="color:#00979d;">int<span style="color:#4e5b61;"> i = <span style="color:#005c5f;">0<span style="color:#4e5b61;">; i < <span style="color:#005c5f;">4<span style="color:#4e5b61;">;i++<span style="color:#434f54;">) {
       if (i != current && i != next) analogWrite(groupPins[i], 0);
      }
      delay(fadeDelay);
    }
    current = next;
  } else {
    // Trop lumineux → tout éteint
    for<span style="color:#434f54;">(<span style="color:#00979d;">int<span style="color:#4e5b61;"> i = <span style="color:#005c5f;">0<span style="color:#4e5b61;">; i < <span style="color:#005c5f;">4<span style="color:#4e5b61;">; i++<span style="color:#434f54;"">)<span style="color:#4e5b61;"> <span style="color:#434f54;">{
<span style="color:#4e5b61;">      analogWrite(groupPins[i], 0);
    }
    delay(100);
  }
}
コメント

リミックス

このプロジェクトで使用される xTool の材料

関連コレクション

関連タグ

ライセンス