MMA7361加速度計を備えたArduino UNOベースのオートバイアラーム

すべてのhabrayuzerにこんにちは。 「Arduino UNOベースのオートバイアラームとMMA7361加速度計を組み合わせた」というタイトルで、Arduinoに関する私の最初のプロジェクトを紹介します。

動作原理は次のとおりです:Arduinoは加速度計をポーリングし、X、Y、Z軸のデータを読み取り、アラームがオンになったときに許容値よりも大きい値からの偏差がある場合、サイレンがオンになります。 つまり データを入力する必要はありません。モーターサイクルを離れた角度に関係なく、少なくとも横に置いてください。アラームがオンになった後、X、Y、Z軸に現在の座標が表示されます。以前のものは、私たちが設定したものよりも大きくなります(これにはポテンショメーターが使用されます)-アラームがトリガーされます。 つまり、バイクに触れたり、傾けたり、動かそうとすると、一般的には動きが生じ、サイレンがオンになります。

画像画像

実装には、次のものが必要です。

Arduino uno
加速度計MMA7361
ポテンショメータ
サイレン-110dB DC 6〜16Vを取りました
接続線
オン/オフボタン
加速度計を取り付けるためのブラケット-自分でやった
電源-私はクローナを取りました、あなたはオートバイのオンボードネットワークから電力を供給することもできます
このすべてを配置する場合-私は死んだ電源から取りました

Arduino UNOへのアクセサリーの接続
加速度計MMA7361Arduino unoポテンショメータArduino unoサイレンArduino uno
Xピンa5左接触GNDマイナスGND
Yピンa4中央連絡先ピンA2プラスピン11
Zピンa3正しい連絡先ピン7
SL3.3V
5Vピン8
GNDGND


画像画像

画像画像

接続について少し説明します。 おそらく疑問があります。5V加速度計の電源を5Vに直接ではなく、8番ピンに接続するのはなぜですか? これは保存するために行われます。 加速度計は、調査時にのみ電源供給されます。 加速度計が常に値を出力するためには、SL(スリープ)出力に3.3Vを供給することにより、強制的にスリープモードを終了する必要があります。

ポテンショメータについて、なぜそれが必要なのか。 アラームの感度を選択するのに便利です。 回転させることにより、アラームがトリガーされる座標の偏差値を選択します。 スケッチでは、このパラメーターはchangelvlと呼ばれ、2〜20の範囲です。 ポテンショメータを反時計回りに停止位置まで回すと2、停止位置まで時計回りに20になります。感度は個別に選択されます。 たとえば、私のアラームシステムは、4に等しいchangelvlで安定して動作します(誤ったアラームなし)。

スケッチのいくつかの説明は、記事の最後でダウンロードできます。

defaultn = 2; //操作サイクルの数-つまり 2サイクル(連続して2回)でポテンショメータによって選択された量の座標偏差がある場合、アラームがトリガーされます。変更することはお勧めしません。
遅延(6000); //スイッチオン後の遅延-つまり 6秒あります。 アラームをオンにした後、6秒後にシートを閉じてモーターサイクルを動かないようにします。 加速度計の尋問が始まります。
遅延(3000); //トリガーされたときのサイレン操作時間-つまり サイレンが3秒間叫びます。

短いビデオ:



約束どおりにリンクをダウンロードします:加速度計を操作するためのスケッチライブラリ

PSプロジェクトでの支援に対してMooM_IYDに感謝します。

Source: https://habr.com/ru/post/J252153/


All Articles