Grove 聲音傳感器
出處:維庫電子市場網(wǎng) 發(fā)布于:2024-07-19 16:24:41 | 419 次閱讀
更重要的是,LM358 IC 沒有真正的軌到軌(0V 至 Vcc)輸出。數(shù)據(jù)手冊規(guī)定輸出電壓擺幅為 0V 至 (Vcc – 1.5V)。這意味著當(dāng)Vcc = 5V時,最大可能的模擬讀數(shù)約為715。為了獲得更寬的輸出范圍,應(yīng)使用一個軌到軌運(yùn)算放大器。
在下一節(jié)課中,我們將研究如何使用 Seeeduino Nano 和 Grove 聲音傳感器組合來構(gòu)建聲音激活的定時開關(guān)。在進(jìn)入項目之前,請記住,您可以使用 Arduino Uno 或 Nano 板代替 Seeeduino Nano 板,但您應(yīng)該繼續(xù)使用 Grove Sound Sensor 模塊。盡管這里可以使用另一個準(zhǔn)備提供模擬信號輸出的聲音傳感器模塊,但我現(xiàn)在不會深入探討。
聲音激活定時開關(guān)代碼
由于 Grove 聲音傳感器產(chǎn)生不同的電壓,因此我們可以使用微控制器的模數(shù)轉(zhuǎn)換器 (ADC) 來處理該電壓。因此,這里有一個簡單的 Seeeduino Sketch,也與 Arduino Uno/Nano 兼容,它從連接到 A0 的聲音傳感器模塊讀取電壓,然后顯示在 Arduino IDE 的串行監(jiān)視器上。此外,當(dāng)聲級超過預(yù)定義閾值時,D13 輸出在有限的時間內(nèi)變?yōu)楦唠娖健?br> #define SOUND_IN A0 // Sound Input =
A0
#define SW_OUT 13 // Switch Output =
D13
#define THRESHOLD_VALUE 600 // Current
Threshold = 2.929V!
void setup()
{
Serial.begin(9600);
pins_init();
}
void loop()
{
int sensorValue =
analogRead(SOUND_IN);
Serial.print("sensorValue
");
Serial.println(sensorValue);
if(sensorValue > THRESHOLD_VALUE)
{
turnOnSW_OUT();
delay(3000);// D13 Delay = 3 Seconds
}
turnOffSW_OUT();
}
void pins_init()
{
pinMode(SW_OUT, OUTPUT);
pinMode(SOUND_IN, INPUT);
}
void turnOnSW_OUT()
{
digitalWrite(SW_OUT,HIGH);
}
void turnOffSW_OUT()
{
digitalWrite(SW_OUT,LOW);
} 這是一個隨機(jī)的串行監(jiān)視器屏幕截圖:
所以現(xiàn)在你有一個粗糙的聲音激活計時器設(shè)備。接下來,您可以在設(shè)置的輸出端添加一個繼電器驅(qū)動器,以便在有響亮的聲音時喚醒外部電氣負(fù)載,如警告燈或警報。繼電器驅(qū)動器電路的觸發(fā)輸入必須連接到 Seeeduino Nano 的 D13 引腳。
至于繼電器及其驅(qū)動電路,您可以自己構(gòu)建一個,也可以購買現(xiàn)成的“高電平有效輸入”繼電器模塊,而無需費力——無論如何都要明智地這樣做。下面是這樣一種緊湊型繼電器模塊的圖片——Grove Relay (https://seeeddoc.github.io/Grove-Relay/).Grove 繼電器 v1.1 的工作電壓為 5V,而下一個版本 v 1.2 的工作電壓為 3.3V 至 5V。在 250VAC(最大)開關(guān)電壓下,最大開關(guān)電流為 5A?! ÷曇艏せ顡軇娱_關(guān)代碼(拍手開關(guān)代碼)
long long int last_states = 0;
void setup() {
pinMode(13, OUTPUT);
pinMode(A0, INPUT);
}
void loop() {
last_states = last_states << 1;
if(analogRead(A0) > 600){ // Clap
Threshold
if(last_states == 0){
digitalWrite(13, !digitalRead(13));
}
last_states++;
}
delay(20);
}
任何拍手的聲音足夠大且離麥克風(fēng)不太遠(yuǎn)的人都可以激活切換過程。在此代碼中,使用一個簡單的技巧來阻止拍手開關(guān)響應(yīng)不需要的聲音,比如響亮的音樂位。因此,只有當(dāng)麥克風(fēng)發(fā)出輕柔的拍手聲時,內(nèi)置 LED (D13 LED) 才會切換(關(guān)閉-關(guān)閉-打開......希望這是有道理的!
適用于 Arduino Nano 的 Grove Shield (v1.0)
許多讀者可能已經(jīng)注意到,我以不同的方式構(gòu)建了我的快速測試原型。當(dāng)然是。我用一個特殊的 Grove Shield 制作了它,因為當(dāng)時我手里有一個。
此外,非常有用的屏蔽層通過拔出主板的引腳來幫助我們擺脫面包板和跳線,并擴(kuò)展到 8 個 Grove 連接器。因此,您可以使用 Grove Shield for Arduino Nano v1.0 (https://www.seeedstudio.com/Grove-Shield-for-Arduino-Nano-p-4112.html).
使用此擴(kuò)展板時,最好將開關(guān)輸出從 D13 更改為 Seeeduino Nano 的其他 I/O,例如 D6,因為它有助于保持整體接線整潔漂亮。
版權(quán)與免責(zé)聲明
凡本網(wǎng)注明“出處:維庫電子市場網(wǎng)”的所有作品,版權(quán)均屬于維庫電子市場網(wǎng),轉(zhuǎn)載請必須注明維庫電子市場網(wǎng),http://www.udpf.com.cn,違反者本網(wǎng)將追究相關(guān)法律責(zé)任。
本網(wǎng)轉(zhuǎn)載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點或證實其內(nèi)容的真實性,不承擔(dān)此類作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。其他媒體、網(wǎng)站或個人從本網(wǎng)轉(zhuǎn)載時,必須保留本網(wǎng)注明的作品出處,并自負(fù)版權(quán)等法律責(zé)任。
如涉及作品內(nèi)容、版權(quán)等問題,請在作品發(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。
- 如何使用多相轉(zhuǎn)換器平衡電流
- 液晶電視機(jī)電路結(jié)構(gòu)的關(guān)鍵要點
- LTC4365 如何實現(xiàn)敏感電路過壓與反接保護(hù)
- 單鍵開關(guān)機(jī)電路與輕觸開關(guān)的創(chuàng)新設(shè)計解析
- MOS 管邏輯電路五種門電路特性
- LM317:高效構(gòu)建電壓源及電流源電路方案
- 3.3V - 1.8V 電平雙向轉(zhuǎn)換:多場景配置及獨特優(yōu)勢剖析
- 詳解防反接電路實現(xiàn)過程,聚焦電路電流回路核心
- 雙聲道揚(yáng)聲器保護(hù)電路:設(shè)計要點與電路圖詳解
- 深度剖析 2.4W 功耗的 LED 交流節(jié)能燈電路設(shè)計