JSS2 スマートハウス・セキュリティ・ラボ
Loading...
JSS2 Smart House Security Lab

ロボティクス・セキュリティ・ミッション 002

2ゾーン・スマートハウス・ラボ

シミュレーションモード

ミッションブリーフィング · JSS2 ロボティクス

人が近づいた距離に応じて、家が異なる警告を出すことはできるでしょうか?

今日は、スマートハウスを2ゾーンのセキュリティシステムにアップグレードします。

検知警告保護
AIコンセプトイメージ
150cm
002フィールドビルド

01 · 体験

3つの状態を体験する

シミュレーション上の訪問者を移動させてください。このダッシュボードは例示用であり、実際のArduino接続ではありません。

150 cm

シミュレーション読み取り値

セキュリティダッシュボードNORMAL
150cm

Monitoring · system ready

通常100 cm以上 · LED消灯 · 消音
警告50–100 cm · LED点滅 · 消音
危険50 cm未満 · LED点灯 · ビープ音1回

100 cmを超えると、次回の接近時にリセットされます。

02 · エンジニアリング・アップグレード

このバージョンがより高度な理由とは?

エンジニアは、よりインテリジェントな判断を追加することでプロジェクトを改善します。

JSS1

1つの単純なしきい値

  • 1つの検知距離
  • LEDのオンまたはオフ
  • 1つの訪問者アラート
検知済み
JSS2

2ゾーン判定

  • 2つの距離しきい値
  • 3つの動作状態
  • 点滅警告 + 点灯危険
  • メモリ変数によりビープ音の繰り返しを停止
  • 訪問者が離れると自動的にリセット
50 cm100 cm

03 · キット

コンポーネントの紹介

セキュリティシステムの各パーツには、明確な役割があります。

UNO

Arduino Uno

判断を下すコントローラーです。

)))

HC-SR04 センサー

エコーを使用して距離を測定します。

LED

警告と危険を視覚的に示します。

◖

ブザー

短い危険警告音を鳴らします。

ブレッドボード

はんだ付けなしで組み立てが可能です。

╱╲

ジャンパーワイヤ

電源と信号を伝えます。

—▥—

220–330 Ω 抵抗器

LEDに過剰な電流が流れるのを防ぎます。

⌂

段ボールの家

プロジェクトの物理的な外装です。

04 · まずは計画を

セキュリティ設計図

センサーは外側を向き、遮るものがないようにしてください。

入口センサーマウントLEDブザー電子部品コンパートメント
センサーは訪問者の方に向ける
LEDはドアの近くで見えるようにする
ブザーはアクセスしやすい位置に置く
基板用のアクセスパネルを設ける

05 · 組み立て

家の外装を組み立てる

電子部品を追加する前に、構造を安定させてください。

010203
  1. 01段ボールを計測し、印を付けます。
  2. 02壁とドアの開口部を切り抜きます。
  3. 03壁を接合し、屋根を取り付けます。
  4. 04家を安定した土台に固定します。
  5. 05電子部品用のアクセス口を確保します。
安全第一ハサミやカッターを使用するときは、大人の監視のもとで注意して行ってください。

06 · センサーの配線

超音波センサーを接続する

HC-SR04は、超音波のエコー時間を計測することで距離を推定します。

HC-SR04
センサーピンARDUINO UNO
VCC5V
GNDGND
TRIGD9
ECHOD10

距離の考え方time × 0.0343 ÷ 2

07 · 視覚信号

LEDを接続する

1つのライトで、3つの意味のある動作を表現します。

オフ> 100 cm点滅50–100 cm点灯< 50 cm
D13→220–330 Ω→LEDの長い脚
LEDの短い脚→GND

抵抗器で電流を制限し、LEDを保護します。

08 · 音信号

ブザーを接続する

短い音が、危険が始まった瞬間を知らせます。

Buzzer +→D8
Buzzer −→GND
周波数1000 Hz持続時間300 ms

物体が最初に50cm未満に入った時に1回だけビープ音が鳴ります。連続して鳴るわけではありません。

09 · 統合チェック

回路全体の確認

すべての電源、信号、および共通グランドの接続を確認してください。

ARDUINO
UNO
HC-SR04
+
センサー電源TRIG D9 · ECHO D10LED D13 + RESISTORBUZZER D8SHARED GND

接続チェックリスト

配線を変更する前にUSB電源を disconnecting してください。

10 · PictoBloxラボ

PictoBloxラボへ

PictoBloxのビジュアルブロックは、当社の主要なプログラミング方法です。

PICTOBLOX · STAGE MODE
⚑インターフェース図解
  1. 01PictoBloxを開き、「ブロックコーディング」を選択します。
  2. 02Arduino Unoを選択します。
  3. 03正しいCOMポートを接続します。
  4. 04ステージモードを選択します。
  5. 05指示が表示された場合はファームウェアをアップロードしてください。USBは接続したままにします。
エンジニアの本音ノートインターフェースのラベルはバージョンによって異なります。意図した機能を使用し、必要なブロックが見つからない場合はバックアッププログラムに移行してください。

11 · ブロックツールボックス

プログラミングブロックを探す

まず機能を探してください。正確なラベルはPictoBloxのバージョンによって異なる場合があります。

イベント
when green flag clicked
制御
forever
if · then · else
wait 0.2 seconds
演算
distance > 100
distance ≥ 50
visitorAlerted = 0
変数
set visitorAlerted to 0
set visitorAlerted to 1
ARDUINO UNO 拡張機能
ultrasonic distance · TRIG 9 · ECHO 10
digital pin · HIGH / LOW
play tone on pin 8 · if available

12 · メモリ変数

visitorAlerted変数を作成する

この小さなメモリにより、煩わしい繰り返しのビープ音を防ぐことができます。

visitor
Alerted
0
0

この接近では、まだ危険警告音は鳴っていません。

1

この接近サイクルで、すでに危険警告音が鳴りました。

↻

訪問者が100cmを超えて離れたとき、次の接近に備えて0にリセットします。

13 · ロジックの構築

2ゾーンのPictoBloxロジックを構築する

インストールした拡張機能にあるブロックを使って、意図したロジックを組み立てます。

when green flag clicked
set [visitorAlerted] to [0]
set digital pin [13] to [LOW]
forever
read ultrasonic distance · TRIG 9 · ECHO 10
if distance > 100 then
LED LOW · visitorAlerted = 0
else if distance ≥ 50 then
LED HIGH → wait 0.2 → LOW → wait 0.2
else
LED HIGH
if visitorAlerted = 0
set visitorAlerted to 1 · play 1000 Hz for 0.3 s
wait 0.05 seconds

14 · 判定マップ

セキュリティフローチャートを可視化する

ループは「読み取り」「判断」「信号送信」を繰り返し行います。

スタート
↓
距離を読み取る
↓
距離 > 100cm?
YESLED OFF · リセット
NO50cmを確認
≥ 50 CMLED点滅 · ビープ音なし
< 50 CMLED ON · 0ならビープ音
↻
繰り返す

15 · フィールドテスト

3つのゾーンをテストする

実際の家では定規や巻尺を使用してください。ここでの数値はシミュレーションです。

150100500
150 cm
TEST A · 150 cmLED消灯 · ブザー消音 · 通常
TEST B · 75 cmLED点滅 · ブザー消音 · 警告
TEST C · 30 cmLED点灯 · 短いビープ音1回 · 危険

100 cmより後ろに移動してから、再度近づいてください。そうすれば新しいアラートが鳴ります。

16 · プランB

ブロックが見当たりませんか?エンジニアには常にプランBがあります!

これはArduino C++のバックアップコードです。ビジュアルブロックのキャンバスに貼り付けるためのコードではありません。

smart_house_security.ino
const int trigPin = 9;
const int echoPin = 10;
const int ledPin = 13;
const int buzzerPin = 8;

bool visitorAlerted = false;

void setup() {
  pinMode(trigPin, OUTPUT);
  pinMode(echoPin, INPUT);
  pinMode(ledPin, OUTPUT);
  pinMode(buzzerPin, OUTPUT);
  digitalWrite(ledPin, LOW);
}

void loop() {
  long duration;
  float distance;

  digitalWrite(trigPin, LOW);
  delayMicroseconds(2);
  digitalWrite(trigPin, HIGH);
  delayMicroseconds(10);
  digitalWrite(trigPin, LOW);

  duration = pulseIn(echoPin, HIGH, 30000);

  if (duration == 0) {
    digitalWrite(ledPin, LOW);
    noTone(buzzerPin);
    visitorAlerted = false;
    delay(100);
    return;
  }

  distance = duration * 0.0343 / 2;

  if (distance > 100) {
    digitalWrite(ledPin, LOW);
    noTone(buzzerPin);
    visitorAlerted = false;
  } else if (distance >= 50) {
    digitalWrite(ledPin, HIGH);
    delay(200);
    digitalWrite(ledPin, LOW);
    delay(200);
  } else {
    digitalWrite(ledPin, HIGH);
    if (!visitorAlerted) {
      tone(buzzerPin, 1000, 300);
      visitorAlerted = true;
    }
  }

  delay(50);
}
pulseInでエコーパルスを読み取ります。この数式でセンチメートルを推定します。visitorAlertedでビープ音の繰り返しを防止します。Arduino IDEまたはその他の互換性のあるArduinoワークフローを使用してアップロードしてください。

17 · デバッグデッキ

セキュリティシステムのトラブルシューティング

優れたエンジニアは、一度に一つのことを変更し、テストして結果を観察します。

?

センサーブロックが利用できません

Arduino Uno、必要な拡張機能、およびステージモードのサポートを確認してください。

♪

ブザーが鳴りません

D8、GND、極性、トーンブロックを確認するか、バックアップコードを使用してください。

●

LEDが点滅しません

D13、抵抗器、LEDの極性、および警告条件を確認してください。

↻

システムが繰り返しビープ音を鳴らします

ビープ音の後にvisitorAlertedを1に設定し、100 cmを超えたときのみリセットしてください。

⟳

システムがリセットされません

読み取り値と100 cmより大きいという条件を確認してください。

≈

読み取り値が不安定です

配線の緩み、センサーの向き、電源、および障害物を確認してください。

18 · ミッション報告

ミッション完了!

よりスマートな家を完成させました。

AIコンセプトイメージ
正常ブルーモニタリング
警告アンバー点滅
危険レッドアラート
  • 家の物理的な組み立てが完了している
  • センサー、LED、ブザーが接続されている
  • PictoBloxのロジックが組み立てられている
  • 3つの状態がテスト済みである
  • バックアップのArduinoコードが準備できている
検知→警告→アラート→リセット

2つの距離しきい値を設定することで、JSS1バージョンよりもどのように高度になったか説明してください。

01 / 19← → キーで移動してください