点滅するマーキーライトの製作(#2 改造編)

前回製作したマーキーライトを点滅点灯できるようにしてみました。点滅順序やはプログラムで変更できるよう、Arduinoで制御を行っています。ドライブ回路は半導体で組むと少し計算が必要なので、リレーモジュールで行いました。あと、どうせマイコンを使うので、赤外線焦電センサーモジュールを利用して人を検出できるようにしました。

点滅するマーキーライトの製作(プログラミングで点滅動作しています)
サインボックス(マーキーライト)ってご存知でしょうか? 名前だけ聞いてもピンと来なくても、物をみたら分かる方も多いと思います。一般的な市販...

スポンサーリンク

材料

部品名必要
個数
個数備考
Arduino(互換機)
HiLetgo® 3個セット pro mini
ATMEGA328P 5V
11150円3個セット
調達元:アマゾン
7805D(JRC)
互換品のNJM7805FAはこちら
150円調達元:秋月電子
μPC2933A
互換品のTA48033Sはこちら
1100円現在入手不可でした・・・
調達元:秋月電子
リレーモジュール
HiLetgo® 3個セット 5V
2チャンネル リレー モジュール
2890円3個セット
調達元:アマゾン
赤外線モジュール
HiLetgo® 3個セット HC-SR501
人体赤外線感応モジュール
1800円 3個セット
調達元:アマゾン
電解コンデンサ
 16V以上、150μF以上
 16V以上、100μF以上
→アマゾンにセット品があります。
各21750円セット品
調達元:アマゾン
ブレッドボード
HiLetgo® 5個セット 400穴
ミニブレッドボード
1750円 5個セット
調達元:アマゾン
ACアダプター 12V 1.5A
スイッチングACアダプター
1950円調達元:秋月電子
前回作ったマーキーライトボックス 1Priceless

※上記価格は2019年5月時の価格 です。


工具

名称個数価格備考
パソコン
(Arduinoのプログラミング
と書き込み用)
1まちまちWindows7か10
Arduino書き込み装置
FT-232RQ USBシリアル変換
モジュール
1 980円 持っていない人のみ
調達元:秋月電子
USBケーブル
(micro USB Type-B)
1まちまち

※ 上記価格は2019年5月時の価格 です。


スポンサーリンク

マイコンの選定

今回のマイコンは、以前も使用した「HiLetgo® 3個セット pro mini ATMEGA328P 5V」を利用します。アマゾンで購入した物がまだ余っているのが理由です。


プログラミング

プログラムを組みます。プログラムは変数等は使わず、だた羅列した内容で組みました。スマートでは無いですね。

const int Abtn = 2;
const int Bbtn = 3;
const int Cbtn = 4;
const int SW = 6;
const int R1 = 10;
const int R2 = 11;
const int R3 = 12;
const int R4 = 13;
int countA;
int countB;

void setup() {
  pinMode( Abtn, INPUT_PULLUP);
  pinMode( Bbtn, INPUT_PULLUP);
  pinMode( Cbtn, INPUT_PULLUP);
  pinMode( SW, INPUT);
   
  pinMode( R1, OUTPUT);
  pinMode( R2, OUTPUT); 
  pinMode( R3, OUTPUT);
  pinMode( R4, OUTPUT);
  Serial.begin( 9600 );

  digitalWrite(R1, LOW);
  digitalWrite(R2, LOW);
  digitalWrite(R3, LOW);
  digitalWrite(R4, LOW);
  delay ( 100 );  
}

void loop() {
  if(digitalRead( SW ) == HIGH){
    if(digitalRead( Abtn ) == LOW){
    digitalWrite( R1, LOW);
    digitalWrite( R2, LOW);
    digitalWrite( R3, LOW);
    digitalWrite( R4, LOW);  
    delay( 1500 );
    digitalWrite( R1, HIGH);
    digitalWrite( R2, HIGH);
    digitalWrite( R3, HIGH);
    digitalWrite( R4, HIGH);
    delay( 1000 );
    Serial.print( "A mode");
    } 
    else if( digitalRead( Bbtn ) == LOW){
    digitalWrite( R1, HIGH);
    digitalWrite( R2, HIGH);
    digitalWrite( R3, HIGH);
    digitalWrite( R4, HIGH);
    delay( 1000 );
    digitalWrite( R1, LOW);
    delay( 1000 );
    digitalWrite( R2, LOW);
    delay( 1000 );
    digitalWrite( R3, LOW);
    delay( 1000 );
    digitalWrite( R4, LOW);
    delay( 1000 );
    digitalWrite( R1, HIGH);
    digitalWrite( R2, HIGH);
    digitalWrite( R3, HIGH);
    digitalWrite( R4, HIGH);
    delay( 1000 );
    digitalWrite( R4, LOW);
    delay( 1000 );
    digitalWrite( R3, LOW);
    delay( 1000 );
    digitalWrite( R2, LOW);
    delay( 1000 );
    digitalWrite( R1, LOW);
    delay( 1000 );
    Serial.print( "B mode");
    }  
    else if( digitalRead( Cbtn ) == LOW){
    digitalWrite( R1, HIGH);
    digitalWrite( R2, HIGH);
    digitalWrite( R3, HIGH);
    digitalWrite( R4, LOW);
    delay( 1000 );
    digitalWrite( R1, LOW);
    delay( 1000 );
    digitalWrite( R2, LOW);
    delay( 1000 );
    digitalWrite( R3, LOW);
    delay( 1000 );
    Serial.print( "C mode");
    }
    else{
    digitalWrite( R1, HIGH);
    digitalWrite( R2, HIGH);
    digitalWrite( R3, HIGH);
    digitalWrite( R4, HIGH);
    Serial.print( "N/C mode");  
    }
  }
  
  if(digitalRead( SW ) == LOW){
  digitalWrite( R1, HIGH);
  digitalWrite( R2, HIGH);
  digitalWrite( R3, HIGH);
  digitalWrite( R4, HIGH);
  Serial.print( "OFF mode");  
  }
}

ソースコードはこちらからDL下さい。


プログラムの書き込み

プログラムをArduinoに書き込みます。書き込みはPC経由で書き込みを行います。シリアルポート等の諸設定はそれぞれで異なりますので、設定を合わせる必要があります。


スポンサーリンク

リレーモジュールへの配線

リレーの配線は下の表の通りになります。VCCとGNDはそれぞれ、5Vの電源ラインに接続します。

Arduino端子リレーの番号
10ピンリレー1
11ピンリレー2
12ピンリレー3
13ピンリレー4

センサーへの配線

センサーモジュールへ配線します。真ん中の「OUT」の配線はArduinoの6ピンに接続します。センサーモジュールのボリュームや端子は下の写真の通りです。


電源回路と全体配線について

お詫び:回路見直しのため、電源回路と全体配線の公開を控えております。

理由:長時間動作していると3端子レギュレーターからヒートシンクが必要な程度の発熱が発生しています。それほど電流を必要としないので、発熱しないと思っていましたが、もしかすると逆起電力等が発生して異常に電流を消耗している可能性があるため、原因が判明するまで公開を控えようと思います。


動作確認

配線が完成したら、マーキーライトの箱の中に組み付ける前に動作確認を行います。

全消灯
「ト」点灯
「イ」点灯
「レ」点灯

センサーの取り付け

センサーは箱の中では検出できないため、外に出しておく必要があります。今回は箱の下側にグルーガンで固定しました。(手抜きです。ごめんなさい)

あと、ACアダプターのDCジャックについても同様に箱の内側にグルーガンで固定しました。


完成

一部、回路の不具合(?)なのか、発熱の問題があるので課題が残っている状況ではありますが、マーキーライトに関して、今回予定している分はこれで完成となります。

スポンサーリンク
Translate (Language) »