AI創客畢業專題製作_範例

 

AI創客畢業專題製作_超酷停車場  

          605  xxxx  xxxx

      要用 Arduino 做一個「超音波感測器 + 伺服馬達」的停車場系統,基本概念是:超音波模組偵測車輛距離,當車子靠近時,伺服馬達控制柵欄升降。下面我整理一個簡單的程式流程與範例程式碼,讓你可以直接測試。

 



l  使用的模組:超音波+伺服馬達

 


 

📦 材料清單

·         Arduino UNO Nano(主控板)

·         HC-SR04 超音波感測器(偵測車輛距離)

·         SG90 MG995 伺服馬達(控制柵欄升降)

·         麵包板(方便接線)

·         杜邦線(公對母、公對公)

·         電源供應USB 或外接 5V 電源)

·         電阻(若需要對 Echo 腳位做保護,可用 1kΩ~2kΩ

·         LED (紅/綠燈顯示車輛狀態,可選)

·         蜂鳴器(提示音,可選)

·         固定支架或小型模型柵欄(伺服馬達連接柵欄用)


 

·          

l  接線圖

 




 

 

接線方式

  • HC-SR04
    • VCC → 5V
    • GND → GND
    • Trig → D9
    • Echo → D10
  • Servo
    • VCC → 5V
    • GND → GND
    • Signal → D3

 


 

 

程式碼:copilot AI生成

#include <Servo.h>

 

Servo gateServo;

const int trigPin = 9;

const int echoPin = 10;

const int servoPin = 3;

 

long duration;

int distance;

 

void setup() {

  gateServo.attach(servoPin);

  pinMode(trigPin, OUTPUT);

  pinMode(echoPin, INPUT);

  gateServo.write(0); // 初始柵欄關閉

  Serial.begin(9600);

}

 

void loop() {

  // 發送超音波

  digitalWrite(trigPin, LOW);

  delayMicroseconds(2);

  digitalWrite(trigPin, HIGH);

  delayMicroseconds(10);

  digitalWrite(trigPin, LOW);

 

  // 接收回波

  duration = pulseIn(echoPin, HIGH);

  distance = duration * 0.034 / 2; // cm

 

  Serial.print("Distance: ");

  Serial.println(distance);

 

  // 判斷距離

  if (distance < 20) {

    gateServo.write(90); // 車子靠近 柵欄打開

  } else {

    gateServo.write(0);  // 沒車 柵欄關閉

  }

 

  delay(200);

}

留言