資料介紹
描述
你有沒有覺得需要一個背包鬧鐘?您是否曾經背著背包坐在公共區域,擔心有人會偷走它?如果是這樣,這就是適合您的項目!
使用 LSM303 羅盤/加速度計,當背包被移動時,該項目會發出警報。它利用羅盤監測方位,當有超過10度的移動時,就會發出警報。
第 1 步:連接 Arduino
像這樣將 LSM303 分線板連接到 Arduino:
- SDA-SDA
- SDL-SDL
- 車輛識別號 - 5v
- 接地 - 接地
有關詳細信息,請查看Adafruit 的指南。
像這樣將壓電蜂鳴器連接到 Arduino:
- + 到引腳 13
- - 接地
第 2 步:安裝庫
下載Adafruit_LSM303DLHC庫和Adafruit_Sensor庫作為 zip 文件。
打開 Arduino IDE。如果沒有,請在此處下載。
轉到 Sketch > Include Library > Add.ZIP Library...
然后,找到并選擇您之前下載的 .ZIP 文件。
第 3 步:為 Arduino 編程
打開 Arduino IDE 并創建一個新文件。刪除已經存在的所有內容并粘貼以下代碼。
// Include Libraries
#include
#include
#include
#include
// Adjust the sensitivity
const int sens = 10;
// Assign a unique ID to this sensor at the same time
Adafruit_LSM303_Mag_Unified mag = Adafruit_LSM303_Mag_Unified(12345);
void setup(void)
{
//Just for Debugging
//Serial.begin(9600);
//Serial.println("Starting...");
// Setup pin 13
pinMode(13, OUTPUT);
// Initialise the sensor
if(!mag.begin())
{
// There was a problem detecting the LSM303 ... check your connections
digitalWrite(13, HIGH);
delay(500);
digitalWrite(13, LOW);
delay(500);
digitalWrite(13, HIGH);
delay(500);
digitalWrite(13, LOW);
delay(500);
while(1);
}
// Wait 5 seconds
delay(5000);
// Alert when started
digitalWrite(13, HIGH);
delay(500);
digitalWrite(13, LOW);
}
// function for getting the sensor value
int getDeg(void){
// Get a new sensor event
sensors_event_t event;
mag.getEvent(&event);
float Pi = 3.14159;
// Calculate the angle of the vector y,x
float heading = int((atan2(event.magnetic.y,event.magnetic.x) * 180) / Pi);
// Normalize to 0-360
if (heading < 0)
{
heading = 360 + heading;
}
return heading;
}
void loop(void)
{
// get sensor values
int oldDeg = getDeg();
delay(1000);
int newDeg = getDeg();
if (newDeg < (oldDeg-sens) && oldDeg != 0 && newDeg != 0) {
// sound the alarm
digitalWrite(13, HIGH);
// Just for debugging
//Serial.println("Triggered");
//Serial.println("");
}else if (newDeg > (oldDeg+sens) && oldDeg!= 0 && newDeg != 0) {
// sound the alarm
digitalWrite(13, HIGH);
// Just for debugging
//Serial.println("Triggered");
//Serial.println("");
}
// Just for debugging
//Serial.print("New:");
//Serial.println(newDeg);
//Serial.print("Old:");
//Serial.println(oldDeg);
//Serial.println("");
}
插入您的 Arduino,然后編譯并上傳代碼。
第 4 步:測試它!
如果你做的一切都正確,按下 Arduino 上的重置按鈕后,你應該會聽到一些嗶嗶聲,3 秒的沉默,然后是更長的嗶嗶聲。如果旋轉 LSM303 分線器,您應該會聽到警報響起。如果傳感器太敏感,只需在靠近頂部的代碼中增加“sens”變量。如果您想要更高的靈敏度,請減小“sens”變量。
如果您在 3 秒延遲之前收到 2 聲長嗶聲,則說明您的接線有問題。檢查所有連接。
如果它似乎不起作用,則可能是這些庫沒有正確命名。在代碼中,刪除開頭的“#include”語句。然后轉到 Sketch > Include Library 并選擇“Wire”、“Adafruit LSM303DLHC”和“Adafruit Unified Sensor”庫。如果在這之后它仍然不起作用,請確保您附近沒有任何強磁場。去另一個房間,或者外面。另外,確保分線板稍微水平并與地面平行。
第 5 步:添加密鑰
你現在應該有一個工作項目,只需將 9v 電池插入 Arduino 的桶形插孔,將其安裝在背包中,你就可以開始了。然而,每次你想要布防/解除警報時,都要拔掉再插回電池,這有點煩人。這就是 6.35 毫米音頻插孔發揮作用的地方。使用 6.35 毫米插孔可提高安全性,而不是大多數人在耳機上使用的 3.5 毫米插孔。但是,如果您有鍵控開關或其他您想使用的開關,請隨意使用。
無論如何,要添加鑰匙,請在電池和直流桶形插孔之間連接開關/鑰匙。
如果您有其中之一,只需切斷其中一根電線,必要時添加延長線,然后添加開關。就我而言,我有一個接線盒筒形插孔并使用它進行接線。由于我不太關心安全性,我的鑰匙只是一個簡單的撥動開關,但你可以發揮創意。使用簧片開關和磁鐵、RFID,甚至智能手機應用程序!
第6步:安裝它!
恭喜!您現在有了一個帶鑰匙的功能齊全的鬧鐘。您現在所要做的就是將它安裝在您的背包中。在側面切一個孔用于蜂鳴器,一個用于鑰匙孔。我使用了扎帶,但可以使用更永久的解決方案。確保傳感器的安裝與地面稍微平行,并且蜂鳴器上的孔沒有被阻塞。
更進一步
此警報不僅限于背包。將它添加到門、餅干罐、冰箱或任何您想保護的東西上。可能性是無止境!
- 電子羅盤磁場傳感器模塊資料(含產品說明書、示例程序) 17次下載
- 三軸電子羅盤芯片AK8963數據手冊 20次下載
- 電子鬧鐘源碼文件下載 10次下載
- 使用51單片機進行鬧鐘制作的程序免費下載
- 如何使用STM32設計四軸飛行器資料合集包括了程序,原理圖和羅盤計算 89次下載
- 背包問題的DNA計算 3次下載
- 背包問題的螞蟻優化算法 7次下載
- RTC鬧鐘喚醒實驗 19次下載
- 基于labview鬧鐘的設計 0次下載
- 電子羅盤的方位角計算公式
- 多功能鬧鐘原理圖
- 采用單片機設計的電子鬧鐘硬件方案
- 一種基于多背包的密碼算法
- 車用磁電子羅盤的研制
- 背包問題在硬幣拋擲協議上的研究
- 鬧鐘的ESD整改案例 634次閱讀
- CubeMX配置RTC實現日歷和鬧鐘實驗 1644次閱讀
- 安全管理電路提供全方位監測,確保系統的安全性 469次閱讀
- 構建一個很酷數字羅盤的教程分享 7484次閱讀
- 基于樹莓派3B實現智能鬧鐘的設計方案 3029次閱讀
- 簡單實用的便攜式太陽能背包改造方案 2046次閱讀
- 利用鐵路現有的網絡資源實現微機監測系統的設計 752次閱讀
- 微雪電子三軸電子羅盤指南針介紹 2105次閱讀
- digilent三軸數字羅盤介紹 2937次閱讀
- digilentPmodCMPS:三軸數字羅盤簡介 2511次閱讀
- EDA實現鬧鐘鈴聲設計 1921次閱讀
- 量子羅盤引領導航二次技術革命 3213次閱讀
- STM32實現對RTC鬧鐘喚醒的設計 1.3w次閱讀
- 在智能手機地圖里能夠精確定位的電子羅盤 7555次閱讀
- 如何正確判斷無人機指向故障?讓電子羅盤遠離磁干擾 7907次閱讀
下載排行
本周
- 1山景DSP芯片AP8248A2數據手冊
- 1.06 MB | 532次下載 | 免費
- 2RK3399完整板原理圖(支持平板,盒子VR)
- 3.28 MB | 339次下載 | 免費
- 3TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費
- 4DFM軟件使用教程
- 0.84 MB | 295次下載 | 免費
- 5元宇宙深度解析—未來的未來-風口還是泡沫
- 6.40 MB | 227次下載 | 免費
- 6迪文DGUS開發指南
- 31.67 MB | 194次下載 | 免費
- 7元宇宙底層硬件系列報告
- 13.42 MB | 182次下載 | 免費
- 8FP5207XR-G1中文應用手冊
- 1.09 MB | 178次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 2555集成電路應用800例(新編版)
- 0.00 MB | 33566次下載 | 免費
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費
- 4開關電源設計實例指南
- 未知 | 21549次下載 | 免費
- 5電氣工程師手冊免費下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費
- 6數字電路基礎pdf(下載)
- 未知 | 13750次下載 | 免費
- 7電子制作實例集錦 下載
- 未知 | 8113次下載 | 免費
- 8《LED驅動電路設計》 溫德爾著
- 0.00 MB | 6656次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費
- 2protel99se軟件下載(可英文版轉中文版)
- 78.1 MB | 537798次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420027次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191187次下載 | 免費
- 7十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183279次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138040次下載 | 免費
評論
查看更多