Gearさんが投稿したアルテッツァ・ラジコン・灯火・Arduinoに関するカスタム事例
2021年04月15日 19時03分
灯火テストの続きです。よろしければご覧ください。
フロント
スモール
ロービーム
ハイビーム
左ウィンカー
各動作5秒と点滅10回でプログラムしてみました。一連の動作で1分を超えるため、分割してアップしました。
フロントですが、2灯しかないのでウィンカーを表現するためロービーム兼スモールランプ用LEDの光量をかなり落として点滅させました。一灯三役です。光色はこの際白で妥協です。
リアは、トランクリッドの2灯をブレーキのみにしてあります。従ってリアのスモールは外側の2灯のみにしてあります。また、バックランプとリアウィンカーを同じランプで表現しています。フロントのウィンカーとハザードもですが、白と橙の色の切り替えが出来ないのが残念です。
リア 1
スモール
左ウィンカー
ブレーキ
バック
ハザード
リア 2
ハザード
右ウィンカー
/*
実車に使えそうなオレンジ色のLEDモジュールをこのプログラムで光らせてみました。撮影はテスト用に96 → 4に減光してリア左ウィンカー部分のみ使用しています。ということで実車搭載時には、これの64倍で光らせるさせることができます。^_^*/
int WAIT = 5000;
int LED_PIN_FLSL = 3; // フロント スモール ,ロービーム,左ウィンカー
int LED_PIN_FRSL = 6; // フロント スモール ,ロービーム,右ウィンカー
int LED_PIN_FH = 4; // フロント ハイビーム
int LED_PIN_RSB = 5; // リア スモール , ブレーキ(外)
int LED_PIN_RB = 9; // リア ブレーキ(内)
int LED_PIN_RLW = 10; // リア 左ウィンカー
int LED_PIN_RRW = 11; // リア 右ウィンカー
void setup() {
pinMode(LED_PIN_FLSL, OUTPUT);
pinMode(LED_PIN_FRSL, OUTPUT);
pinMode(LED_PIN_FH, OUTPUT);
pinMode(LED_PIN_RSB, OUTPUT);
pinMode(LED_PIN_RB, OUTPUT);
pinMode(LED_PIN_RLW, OUTPUT);
pinMode(LED_PIN_RRW, OUTPUT);
}
void loop() {
// フロント・リアスモール&フロントロービーム,ハイビーム
analogWrite(LED_PIN_FLSL, 64); // フロント スモール ON
analogWrite(LED_PIN_FRSL, 64); // フロント スモール ON
analogWrite(LED_PIN_RSB, 64); // リア スモール ON
delay(WAIT);
analogWrite(LED_PIN_FLSL, 192); // フロント ロービーム ON
analogWrite(LED_PIN_FRSL, 192); // フロント ロービーム ON
delay(WAIT);
digitalWrite(LED_PIN_FH, HIGH); // フロント ハイビーム ON
delay(WAIT);
analogWrite(LED_PIN_FLSL, 64); // フロント ロービーム OFF スモール ON
analogWrite(LED_PIN_FRSL, 64); // フロント ロービーム OFF スモール ON
digitalWrite(LED_PIN_FH, LOW); // フロント ハイビーム OFF
delay(WAIT);
// ウィンカー(左)
int i = 0;
while (i < 10) { // 変数iが10より小さい時繰り返し以下を実行
analogWrite(LED_PIN_RLW, 96); // リア ウィンカー(左) 点滅
analogWrite(LED_PIN_FLSL,96); // フロント スモール(左) 点滅
delay(400); // 0,4秒待機
analogWrite(LED_PIN_RLW, 0); // リア ウィンカー(左) 点滅
analogWrite(LED_PIN_FLSL,16); // フロント スモール(左) 点滅
delay(400); // 0,4秒待機
i = i + 1; // 変数iを1増加させる
}
// analogWrite(LED_PIN_FLSL,64); // フロント スモール(左)ON
// ブレーキ
analogWrite(LED_PIN_RB, 128); // リア ブレーキ(内)ON
analogWrite(LED_PIN_RSB,128); // リア ブレーキ(外)ON
delay(WAIT);
analogWrite(LED_PIN_RB, 0); // リア ブレーキ(内)OFF
analogWrite(LED_PIN_RSB, 64); // リア ブレーキ(外)OFF スモール ON
delay(WAIT);
// バック
analogWrite(LED_PIN_RLW, 64); // リア ウィンカー(左)
analogWrite(LED_PIN_RRW, 64); // リア ウィンカー(右)
delay(WAIT);
analogWrite(LED_PIN_RLW, 0); // リア ウィンカー(左)
analogWrite(LED_PIN_RRW, 0); // リア ウィンカー(右)
delay(WAIT);
// ハザード
i = 0;
while (i < 10) { // 変数iが10より小さい時繰り返し以下を実行
analogWrite(LED_PIN_FLSL,96); // フロント スモール(左) 点滅
analogWrite(LED_PIN_FRSL,96); // フロント スモール(右) 点滅
analogWrite(LED_PIN_RLW, 16); // リア ウィンカー (左) 点滅
analogWrite(LED_PIN_RRW, 96); // リア ウィンカー (右) 点滅
delay(400); // 0,4秒待機
analogWrite(LED_PIN_FLSL,16); // フロント スモール(左) 点滅
analogWrite(LED_PIN_FRSL,16); // フロント スモール(右) 点滅
analogWrite(LED_PIN_RLW, 0); // リア ウィンカー (左) 点滅
analogWrite(LED_PIN_RRW, 0); // リア ウィンカー (右) 点滅
delay(400); // 0,4秒待機
i = i + 1; // 変数iを1増加させる
}
// analogWrite(LED_PIN_FLSL,64); // フロント スモール(左)ON
// analogWrite(LED_PIN_FRSL,64); // フロント スモール(右)ON
delay(WAIT);
// ウィンカー(右)
i = 0;
while (i < 10) { // 変数iが10より小さい時繰り返し以下を実行
analogWrite(LED_PIN_RRW, 96); // リア ウィンカー(右) 点滅
analogWrite(LED_PIN_FRSL, 96); // フロント スモール(右) 点滅
delay(400); // 0,4秒待機
analogWrite(LED_PIN_RRW, 0); // リア ウィンカー(右) 点滅
analogWrite(LED_PIN_FRSL,16); // フロント スモール(右) 点滅
delay(400); // 0,4秒待機
i = i + 1; // 変数iを1増加させる
}
// analogWrite(LED_PIN_FRSL,64); // フロント スモール(右)
analogWrite(LED_PIN_FLSL, 0); // フロント スモール(左)OFF
analogWrite(LED_PIN_FRSL, 0); // フロント スモール(右)OFF
analogWrite(LED_PIN_RSB, 0); // リア スモール OFF
delay(WAIT);
}
橙色 LED 発行テスト
光度 96/255
0.4s間隔 点滅
LED の仕様:
Vf : 1.9-2.6V
V.A.: 15deg
Typ : 75000mcd@20mA
lf(max): 50mA
Color : Orange
WD: 606-616nm