Cách phát âm thanh bằng Arduino và còi báo động hoặc loa thụ động? Hướng dẫn từng bước

Cập nhật lần cuối: 14/09/2022
tác giả: Felix Albornoz
Cách phát âm thanh bằng Arduino và còi báo động hoặc loa thụ động? Hướng dẫn từng bước

Để thực hiện các dự án với Arduino, bạn không cần phải có kinh nghiệm về điện tử ; bạn chỉ cần bắt tay vào làm quen với thế giới đó và đặc biệt là với Arduino IDE , nơi bạn dán mã, tức là các hướng dẫn mà bạn muốn thực thi.

Một cách tuyệt vời để nâng cao chất lượng một số dự án Arduino là thêm âm thanh bằng cách sử dụng còi hoặc loa thụ động . Chúng rất dễ sử dụng và bạn có thể phát ra đủ loại âm thanh hoặc giai điệu.

Với mục đích đó, xuyên suốt bài viết này, chúng tôi sẽ hướng dẫn bạn cách phát âm thanh bằng Arduino và một còi báo hoặc loa thụ động , thông qua hướng dẫn từng bước. Ngoài ra, bạn sẽ khám phá ba ý tưởng dự án thú vị và dễ thực hiện mà bạn có thể tự làm và áp dụng kiến ​​thức của mình vào thực tế.

Còi báo động là gì và nó hoạt động như thế nào trong Arduino?

Còi báo động là gì và nó hoạt động như thế nào trong Arduino?

Còi báo động hoặc loa thụ động đơn giản là thiết bị chuyển đổi tín hiệu điện thành sóng âm thanh . Điều quan trọng cần lưu ý là chúng không có mạch điện tử bên trong, vì vậy chúng phải được cung cấp tín hiệu điện để tạo ra âm thanh mong muốn.

Nói một cách đơn giản, còi báo động thụ động phát ra âm thanh khi nhận được nguồn điện. Nó lý tưởng để tích hợp với Arduino vì cho phép bạn tạo ra âm thanh cảnh báo hoặc thông báo khi một sự kiện cụ thể xảy ra. Sau đó, người dùng lập trình vi điều khiển để gửi tín hiệu đến còi báo động khi sự kiện đó xảy ra, để nó phát ra âm thanh cảnh báo.

Một ví dụ rất thực tế là khi bạn sử dụng cảm biến nhiệt độ và muốn nhận thông báo khi nhiệt độ vượt quá 100 độ C. Khi cảm biến phát hiện mức nhiệt độ này, còi báo động sẽ phát ra âm thanh cảnh báo. Bên cạnh đó, còn rất nhiều ứng dụng khác mà linh kiện này có thể hữu ích với Arduino. Điều này cho phép bạn thỏa sức sáng tạo và phát triển nhiều dự án thú vị.

Hãy cùng tìm hiểu từng bước cách phát âm thanh bằng còi hoặc loa sử dụng Arduino.

Hãy cùng tìm hiểu từng bước cách phát âm thanh bằng còi hoặc loa sử dụng Arduino.

Việc phát âm thanh bằng còi báo động thông thường hoặc mô-đun Arduino thụ động dễ hơn bạn nghĩ. Bạn chỉ cần kết nối nó và viết một vài đoạn mã đơn giản trong Arduino IDE (mặc dù cần lưu ý rằng mã cơ bản sẽ phụ thuộc vào mục đích bạn muốn đạt được). Arduino có hai hàm chính giúp người dùng dễ dàng tạo ra tín hiệu điện để chuyển đổi thành âm thanh, thông qua bất kỳ đầu ra kỹ thuật số nào có sẵn. Các hàm này là `tone()` và `noTone()`.

Như tên gọi cho thấy, chúng chịu trách nhiệm tạo ra hoặc dừng tín hiệu âm thanh trên một chân:

  • tone(pin, frecuencia): kích hoạt một âm thanh có tần số nhất định trên một chân nhất định
  • noTone(pin): dừng lại âm thanh trên ghim

Điều đáng chú ý là, nhờ hàm tone(), người ta có thể chỉ định thời lượng của âm thanh được tạo ra:

  • tone(pin, frequencia, duracion): kích hoạt âm thanh Tần số và thời lượng được xác định trên một chân nhất định.

Tuy nhiên, bạn cần lưu ý rằng, do tính đơn giản của các chức năng tạo âm thanh, nên có một số hạn chế quan trọng mà chúng tôi nêu ra bên dưới:

  • Giai điệu sử dụng Hẹn giờ 2Tức là, trong khi nó đang hoạt động Không thể sử dụng đầu ra PWM trên chân 3. và 11 en ArduinoNano y Arduino Uno (chân 9 và 10 trên Arduino Mega).
  • Chức năng tone() không thể được sử dụng đồng thời trên hai chân.Trong những trường hợp này, bạn cần tắt nhạc chuông bằng chức năng đó. không có âm thanh() trước khi sử dụng nó trên một chiếc ghim khác.
  • Các phạm vi những thứ có thể được sử dụng trong chức năng âm thanh là 31 Hz a 65535 Hz.

Để giải thích rõ ràng hơn, chúng tôi đã đưa vào một số ví dụ mã đơn giản, trong đó các hàm được nêu ở trên được áp dụng:

Ví dụ 1

Với đoạn mã mà chúng tôi sẽ trình bày, còi sẽ phát ra âm thanh trong 1 giây rồi dừng lại.

Sau đó, nó lại tạo ra 1 giây, và cứ thế tiếp diễn:

/* Chương trình đơn giản phát ra tiếng bíp ngắt quãng 1 giây */ const int buzzer = 9; // Còi báo được kết nối với chân 9 void setup(){ pinMode(buzzer, OUTPUT); // Chân 9 được khai báo là đầu ra } void loop(){ tone(buzzer, 50); // Gửi tín hiệu 1kHz đến còi báo delay(1000); noTone(buzzer); // Dừng còi báo delay(1000); // Chờ một giây và lặp lại vòng lặp }

Ví dụ 2

Trong trường hợp thứ hai này , còi báo hoặc loa được kết nối với chân số 9 được sử dụng để tạo ra tín hiệu 440Hz trong một giây , dừng lại trong 500ms và cuối cùng tạo ra âm thanh 523Hz trong 300ms.

Sau đó lặp lại chương trình sau khoảng dừng 500 ms:

const int pinBuzzer = 9; void setup() { } void loop() { // Tạo âm thanh 440Hz trong 1000ms tone(pinBuzzer, 440); delay(1000); // Dừng âm thanh trong 500ms noTone(pinBuzzer); delay(500); // Tạo âm thanh 523Hz trong 500ms và dừng trong 500ms. tone(pinBuzzer, 523, 300); delay(500); }

Ví dụ 3

Phương án cuối cùng này sử dụng một mảng các tần số được duyệt tuần tự để thực hiện một phép quét xấp xỉ các nốt nhạc khác nhau.

Hãy xem nào:

const int pinBuzzer = 9; const int tones[] = {261, 277, 294, 311, 330, 349, 370, 392, 415, 440, 466, 494}; const int countTones = 10; void setup() { } void loop() { for (int iTone = 0; iTone < countTones; iTone++) { tone(pinBuzzer, tones[iTone]); delay(1000); } noTone(pinBuzzer); }

Danh sách các dự án Arduino tốt nhất có sử dụng còi báo mà bạn có thể tự làm để thực hành.

Các dự án Arduino mang đến nhiều không gian cho trí tưởng tượng , cho phép người dùng kết hợp nhiều thành phần khác nhau lên bo mạch để tạo ra đủ loại thứ. Điều này bao gồm việc thêm cảm biến, còi báo động và các yếu tố khác cho các mục đích cụ thể. Dưới đây là ba ý tưởng chính bạn có thể tự phát triển để thực hành và làm quen hơn với môi trường này.

Trong mọi trường hợp, bạn sẽ cần ít nhất một bo mạch Arduino và một còi báo động:

Đồng hồ báo thức cơ bản

Mạch báo thức cơ bản hoặc đồng hồ báo thức sử dụng Arduino.

Bạn có biết rằng bạn có thể tự tạo ra đồng hồ báo thức của riêng mình không? Điều đó không khó như bạn nghĩ. Với sự trợ giúp của một bo mạch Arduino, một còi báo động và một vài linh kiện khác , bạn có thể tạo ra một chiếc đồng hồ báo thức tại nhà để nhắc nhở bạn thức dậy vào lúc nào, hoặc lập trình âm thanh cho những thời điểm cụ thể trong ngày.

Cảm biến có âm thanh

Cảm biến âm thanh với Arduino

Một ứng dụng rất thú vị khác của còi báo động với Arduino là tích hợp nó vào các thiết bị có cảm biến nhất định . Ví dụ, nếu bạn tạo một cảm biến khí và muốn được thông báo khi nó vượt quá giới hạn đã đặt, việc sử dụng loa sẽ phát ra âm thanh khi điều đó xảy ra.

Bên cạnh đó, còn có một ví dụ thực tế khác mà cảm biến âm thanh có thể rất hữu ích . Ví dụ, nếu bạn muốn phát hiện sự tiếp cận của các vật thể hoặc người và phát ra âm thanh khi chúng nằm trong phạm vi đã định.

Người chơi giai điệu

Người chơi giai điệu

Cuối cùng, với một còi báo động thụ động và một vi điều khiển Arduino, bạn có thể tạo ra một thiết bị phát ra một số giai điệu quen thuộc, chẳng hạn như những giai điệu từ "Chiến tranh giữa các vì sao" hoặc "Cướp biển vùng Caribbean " . Để làm được điều này, bạn phải lập trình cho nó tạo ra các cường độ, tần số và thời lượng âm thanh khác nhau.

Do đó, bạn có thể tạo ra bất kỳ giai điệu nào bạn muốn . Trong những trường hợp này, bạn phải khai báo chân 9 là đầu ra (không cần đặt tên) và sau đó sử dụng cấu trúc của hàm `tone (pin, frequency, duration)`. Cấu trúc này xác định ba tham số được phân tách bằng dấu phẩy , do đó tạo ra tất cả các loại nốt nhạc bất cứ lúc nào và cho bất kỳ giai điệu nào. Hãy nhớ rằng nếu bạn có kiến ​​thức âm nhạc, bạn có thể tự tạo ra giai điệu của riêng mình.

Sách điện tử của IPAP
Ebooks IPAP

🔥THAM GIA🔥 CỘNG ĐỒNG IP@P MỚI! ĐĂNG KÝ TẠI ĐÂY!

Chủ đề

Tác giả: Félix Albornoz

Tôi có hơn 20 năm kinh nghiệm làm việc trong lĩnh vực công nghệ, hỗ trợ các công ty và người dùng phát triển và đào tạo trong lĩnh vực này. Tôi luôn luôn học hỏi những điều mới.

Có liên quan

Nhận xét được đóng lại.