# 第十一週週記 ## 自學或思考筆記 這週的課堂內容是要用arduino連接小喇叭並且撥放聲音,其中包含記憶卡、讀取記憶卡的東東、小喇叭、電腦板、電阻、麵包板。好多好多小零件串接在一起,到最後連哪個環節出錯都很難釐清,一直迷迷糊糊地試著答案。但很不幸的我們這組的專案又是要運用到聲音撥放的功能,感覺最後還是希望會找到解方。 若是一直是不出來,可能需要用蜂鳴器之類的替代,但好可惜,希望不要,我希望我們的小怪獸可議很神經質的亂發出聲音^^ ## 協助專案之個人研發項目 我們的主要分工目前是我負責硬體,又寧負責軟體 然後又因為工具分工,這週我還沒辦法獨自在家寫一些程式讓arduino跑跑看,但目前就軟體域值的部分我丟了幾個問題給chat gpt ### 軟體部分 #### 1. 常見環境中的分貝級別: * 安靜的圖書館或寂靜的夜晚:約為 30 到 40 分貝。這是典型的非常安靜的環境。 * 一般辦公室:通常在 50 到 60 分貝之間。這個級別的聲音包括鍵盤敲擊聲、談話聲等。 * 城市交通:通常在 70 到 85 分貝。城市交通中包括車輛行駛、車輛鳴笛、交通噪音等。 * 搖滾音樂會或機械工廠:可以高達 100 分貝以上。這些場所通常會有很高的噪音水平。 * 耳朵的痛點:一般認為超過 120 分貝的噪音可能對人耳造成疼痛或損傷。例如,噴氣式飛機起飛時的噪音可以超過這個水平。 **在正常的社交場合中,聲音通常會维持在60到70分貝之间。這種聲音水平下的社交場合可能包括人們交談、笑聲、輕柔音樂等。超過85分貝的持續噪音可能會讓大多數人感到不舒服甚至影響健康。** #### 2. 人聲音的頻率大概為多少 人類的語音範圍通常介於約 85 赫茲(Hz)至 255 赫茲之間。這個範圍包括了通常情況下人類用於說話和唱歌的聲音頻率。然而,有些人的聲音頻率範圍可能更廣,超出這個範圍。男性聲音的頻率範圍通常較女性更低,而兒童和女性的聲音頻率範圍則更高。 #### 3.用arduino音頻分析器採集數據 ``` const int audioInputPin = A0; // 定义模拟输入引脚 void setup() { Serial.begin(9600); // 初始化串行通信 } void loop() { int audioValue = analogRead(audioInputPin); // 读取模拟输入 Serial.println(audioValue); // 打印音频值到串行监视器 // 可以在此处添加音频数据处理的代码 delay(100); // 可选的延迟,以限制数据输出速率 } ``` #### 4.用arduino聲音感測器採集數據 ``` int soundSensorPin = A0; // 定义声音传感器连接的模拟引脚 void setup() { Serial.begin(9600); // 初始化串行通信 } void loop() { int sensorValue = analogRead(soundSensorPin); // 读取传感器值 float voltage = sensorValue * (5.0 / 1023.0); // 将传感器值转换为电压值(仅适用于模拟传感器) // 假设您已经有了声音分贝的计算公式,并将其应用在这里 float sounddB = calculateSoundDB(voltage); // 根据您的公式计算声音分贝值 Serial.println(sounddB); // 输出声音分贝值到串行监视器 delay(100); // 可选的延迟,以限制数据输出速率 } float calculateSoundDB(float voltageValue) { // 在此处编写您的声音分贝计算方法 // 计算声音分贝值并返回 } ``` ### 硬體部分 目前找了一個可愛的示意圖 構想上是希望做出一個中空的骨架,裡面可以把電腦板跟所有聲音分析、聲音播放、震動裝置裝起來,感覺目前實際上不可能做得像小寵物麥克風毛球那麼小,至少會有兩個拳頭大 概念圖如  * 骨架 : 可能會先利用高中學過一點點的onshape 3d製圖,或是現在學了一點點autocad畫示意圖看能不能3d列印,或者最初最美的方式玩黏土(上課看到隔壁試做史萊姆覺得好好玩好心動) * 外層 : 羊毛氈或毛線球感覺都棒棒,希望它毛毛的 ## 其他問題 在交出週記前看到同學超強超有料的週記,不但回家解決了撥放問題還研究了好多酷東西,緊張了,專案偏危.....
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up