【自由研究】初心者キットで作る「太陽追っかけ装置」|明るい方を向くサーボの実験

太陽を追う! 自動追尾サーボ

太陽の方向を自動で追いかける装置を作ろう

自由研究で「動く」装置を作りたいんだ。サーボモータを使うやつ。

じゃあ「太陽追っかけ装置」はどう? CdSセンサーを2つ使って、明るい方向にサーボがゆっくり向くんだ。太陽光発電パネルの実物と同じ仕組みなんだよ。

今回は、サーボモータを使った動く工作をしたい中学生・高校生のお子さんに向けて、初心者キットだけで作れる「太陽追っかけ装置」を紹介します。

左右に1個ずつ置いたCdSセンサーで明るさを比べ、明るい方向にサーボがゆっくり首を振る装置です。明るさの差で向きを変える、太陽追尾の基本模型として動きます。再生可能エネルギーの考え方に触れられる研究テーマです。

この記事で作るもの
  1. 左右2個のCdSで明るさを比較
  2. 明るい方にサーボの首が向く
  3. 左右の明るさの差が小さい時は、その場で止まる
  4. 動きは滑らかに (急に動かない)

使う部品

部品役割個数
Arduino UNO R3装置の頭脳1
CdSセンサー左右の明るさを測る2
抵抗10kΩCdSの分圧2
サーボモータSG90首を振る1
ブレッドボード配線をする台1
ジャンパーワイヤーつなぐ線10本前後

配線図

        a b c d e
       +─────────+
[+]rail| . . . . . | ← 5V (Arduino から)
[-]rail| . . . . . | ← GND (Arduino から)
       +─────────+
row 3  | X . . . . | ← CdS左 上足 ([+])
row 4  | X . . . . | ← CdS左 下足+A0+10k上
row 6  | X . . . . | ← 10k下足 ([-])
row 9  | X . . . . | ← CdS右 上足 ([+])
row 10 | X . . . . | ← CdS右 下足+A1+10k上
row 12 | X . . . . | ← 10k下足 ([-])
       +─────────+

サーボはブレッドボードを介さず直結:
  茶色 → GND
  赤色 → 5V
  橙色 → D9

部品同士のつながり

サーボSG90はキット同梱の電源ピンから動かせますが、動きが不安定ならモバイルバッテリーなど外部5V電源を使い、GNDだけArduinoと共通にしてください。

Arduino       左CdS / 右CdS
  5V    ──→   両方の上足
  A0    ←──   左CdS 中点
  A1    ←──   右CdS 中点
  GND   ──→   両方の10kΩ下足

Arduino       サーボ SG90
  D9    ──→   信号線 (橙)
  5V    ──→   電源 (赤)
  GND   ──→   GND (茶)

プログラム

#include <Servo.h>

#define LEFT_CDS A0
#define RIGHT_CDS A1
#define SERVO_PIN 9

Servo myServo;
int angle = 90;

void setup() {
  Serial.begin(9600);
  myServo.attach(SERVO_PIN);
  myServo.write(angle);
  Serial.println("太陽追っかけ装置 スタート!");
}

void loop() {
  int leftValue = analogRead(LEFT_CDS);
  int rightValue = analogRead(RIGHT_CDS);
  int diff = leftValue - rightValue;

  Serial.print("左: ");
  Serial.print(leftValue);
  Serial.print(" 右: ");
  Serial.print(rightValue);
  Serial.print(" 角度: ");
  Serial.println(angle);

  if (diff > 50 && angle < 180) {
    angle++;
  } else if (diff < -50 && angle > 0) {
    angle--;
  }
  myServo.write(angle);
  delay(50);
}

プログラムの動き

flowchart TD A[起動] --> B[左右CdSを読む] B --> C[差を計算] C --> D{"左が
明るい?"} D -->|Yes| E["角度+1"] D -->|No| F{"右が
明るい?"} F -->|Yes| G[角度-1] F -->|No| H[そのまま] E --> I[サーボへ反映] G --> I H --> I I --> J[50ms待つ] J --> B

自由研究としての展開

研究テーマのアイデア
  1. 太陽光発電パネルの自動追尾の仕組みを調べる
  2. 窓辺に置いて、1日の太陽の動きを記録
  3. 固定パネルと追尾パネルでどれくらい発電量が違うか考察
  4. 懐中電灯で擬似太陽を作って、再現実験
サーボがブルブル震えるのはなんで?

左右の差が小さすぎる時に、行ったり来たりするんだ。プログラムの「50」っていう数字を「100」に上げると震えが減るよ。これも研究で「どの値が最適か」を探る実験になるんだ。

レポートの書き方

レポート構成
  1. 研究のきっかけ (再生可能エネルギーへの興味など)
  2. 追尾の仕組みの説明
  3. 1日の動作観察記録
  4. 「差の閾値」を変えた実験結果
  5. 太陽光発電への応用と感想

改造のアイデア

発展アイデア
  1. CdSを4個にして上下にも追尾
  2. サーボ先端に太陽光発電パネル風の段ボールを付けて見た目を強化
  3. LEDで「左を向いてる」「右を向いてる」を表示
  4. 角度の履歴をシリアルに書き出して時間ごとに分析

まとめ

今回は、初心者キットだけで作れる「太陽追っかけ装置」を紹介しました。CdSとサーボを組み合わせた、動く工作で、再生可能エネルギーの実用技術の入り口にもなるテーマです。

大切なのは、懐中電灯で左右から照らして、どの差で動き出すかを記録することです。動き出すしきい値を表にまとめると、考察がぐっと書きやすくなります。

他にも初心者キットだけで作れる作例を別の記事で紹介しているので、興味があれば見てみてね。