工業製造
産業用モノのインターネット | 工業材料 | 機器のメンテナンスと修理 | 産業プログラミング |
home  MfgRobots >> 工業製造 >  >> Manufacturing Technology >> 製造プロセス

ArduinoとLSM303コンパスで作るリュックアラーム:傾き検知で盗難防止

必要な部品と材料

部品数量備考
Arduino UNO1
Adafruit LSM303DLHC トリプルアクシス加速度+磁気センサー1
大型ピエゾブザー(3kHz)1
9V電池1
6.35mmオーディオジャック(スイッチ付き)1任意:キー操作用
6.35mmオーディオプラグ1任意:キー用
ジャンパーワイヤー(オス/メス)1セット
9V電池スナップ(DCジャック用)1

使用ツール

プロジェクト概要

公共の場でリュックを置いて離れる際、盗難が心配になったことはありませんか? LSM303コンパス/加速度センサーを使い、リュックが動かされた(向きが変わった)ことを検知して大音量アラームを鳴らす防犯デバイスを作ります。磁気センサーで方位を監視し、10度以上の変化でアラーム作動。

ステップ1:配線

LSM303接続(I2C)

詳細:Adafruit公式ガイド

ピエゾブザー接続

ArduinoとLSM303コンパスで作るリュックアラーム:傾き検知で盗難防止

ステップ2:ライブラリインストール

  1. Adafruit_LSM303DLHC と Adafruit_Sensor をZIPダウンロード
  2. Arduino IDEで「スケッチ」→「ライブラリをインクルード」→「.ZIP形式のライブラリをインストール」で両方追加
ArduinoとLSM303コンパスで作るリュックアラーム:傾き検知で盗難防止

ステップ3:プログラム書き込み

#include <Wire.h>
#include <Adafruit_Sensor.h>
#include <Adafruit_LSM303_U.h>
#include <Adafruit_LSM303.h>

const int sens = 10; // 感度(度):小さいほど敏感
Adafruit_LSM303_Mag_Unified mag = Adafruit_LSM303_Mag_Unified(12345);

void setup() {
  pinMode(13, OUTPUT);
  if (!mag.begin()) {
    // センサー未検出時:LED点滅でエラー表示
    for (int i = 0; i < 4; i++) {
      digitalWrite(13, HIGH); delay(500);
      digitalWrite(13, LOW);  delay(500);
    }
    while (1); // 停止
  }
  delay(5000); // 起動後5秒待機(設置時間確保)
  digitalWrite(13, HIGH); delay(500); digitalWrite(13, LOW); // 起動完了ビープ
}

int getDeg() {
  sensors_event_t event;
  mag.getEvent(&event);
  float heading = int((atan2(event.magnetic.y, event.magnetic.x) * 180) / PI);
  if (heading < 0) heading += 360;
  return heading;
}

void loop() {
  int oldDeg = getDeg();
  delay(1000);
  int newDeg = getDeg();
  
  if (newDeg < (oldDeg - sens) && oldDeg != 0 && newDeg != 0) {
    digitalWrite(13, HIGH); // アラームON
  } else if (newDeg > (oldDeg + sens) && oldDeg != 0 && newDeg != 0) {
    digitalWrite(13, HIGH); // アラームON
  }
  // シリアルデバッグ用コードはコメントアウト済み
}

ステップ4:動作テスト

リセットボタン押下後、短いビープ3回→3秒無音→長いビープ1回で起動完了。LSM303を傾けるとアラームが鳴ります。感度調整はsens変数で(小さいほど敏感)。起動時に長いビープ2回なら配線不良。動作不安定なら強い磁場(スピーカー、モーター等)から離れ、センサーを水平に設置してください。

ステップ5:キー(アーム/ディアーム)スイッチ追加

電池の抜き差しは面倒なので、6.35mmオーディオジャックをキー代わりに使用(3.5mmより一般的でなくセキュリティ向上)。電池とDCジャックの間にスイッチを挿入します。

ArduinoとLSM303コンパスで作るリュックアラーム:傾き検知で盗難防止

リードスイッチ+磁石、RFID、スマホアプリ連携等、アイデア次第で多彩な「キー」が実現可能。

ステップ6:リュックへの搭載

ArduinoとLSM303コンパスで作るリュックアラーム:傾き検知で盗難防止
ArduinoとLSM303コンパスで作るリュックアラーム:傾き検知で盗難防止
ArduinoとLSM303コンパスで作るリュックアラーム:傾き検知で盗難防止

ブザー用とキー用の穴を開け、結束バンド等で固定。センサーは地面と平行に、ブザー穴は塞がれない位置に。

発展アイデア

リュック以外にも、ドア、クッキージャー、冷蔵庫、貴重品ケース等、動かされたら困るもの全般に応用可能。アイデア次第で用途無限大!

回路図

コンパス接続:青-SDA、黄-SCL、黒-GND、赤-VIN

ArduinoとLSM303コンパスで作るリュックアラーム:傾き検知で盗難防止

製造プロセス

  1. Home Assistant on Raspberry Piで安全なホーム監視 – モーション、アラーム、ビデオ撮影
  2. Adafruit T-Cobbler PlusでヘッドレスRaspberry Pi 2水漏れアラームを構築
  3. JavaとReactive Blocksでモーション検知アラームシステム - Raspberry Piに展開しSMS送信
  4. ローリングアラームロボット:Raspberry Pi と Google カレンダーで動くスマートモバイル目覚ましシステム
  5. スマート渇きアラート植物アラーム – 最適な水やりタイミングを知らせるDIYセンサー
  6. SERENA:Arduino Mega 2560とTFT LCDタッチスクリーン搭載カスタムアラームシステム
  7. ArduinoとRFモジュールでアラームシステムのセキュリティを評価する
  8. Arduino超音波距離・温度モニター:LCD表示とアラーム機能付き水位監視システム
  9. DS1302 RTCとArduino UNOで作る信頼性の高い目覚まし時計
  10. Arduinoセキュリティ&アラームシステムの自作:ステップバイステップチュートリアル
  11. 安全性と信頼性のためのフェイルセーフ制御システム設計