Table of Contents
1. Linh kiện cần thiết làm mạch cảm biến âm thanh giao tiếp Atmega
1.1 Vi điều khiển AVR Âm thanh giao tiếp Atmega
a. Giới thiệu
Atmega16 là một chíp vi điều khiển được sản xuất bời hãng Atmel thuộc họ MegaAVR. Atmega16 là một bộ vi điều khiển 8 bit dựa trên kiến trúc RISC bộ nhớ chương trình 16KB ISP flash có thể ghi xóa hàng nghìn lần, 512B EEPROM, một bộ nhớ RAM vô cùng lớn trong thế giới vi xử lý 8 bit (1KB SRAM) Với 32 chân có thể sử dụng cho các kết nối vào hoặc ra i/O, 32 thanh ghi, 3 bộ timer/counter có thể lập trình, có các gắt nội và ngoại (2 lệnh trên một vector ngắt), giao thức truyền thông nối tiếp USART, SPI, I2C. Ngoài ra có thể sử dụng bộ biến đổi số tương tự 10 bít (ADC/DAC) mở rộng tới 8 kênh, khả năng lập trình được watchdog timer, hoạt động với 5 chế độ nguồn, có thể sử dụng tới 6 kênh điều chế độ rộng xung (PWM), hỗ trợ bootloader. Vi xử lý có rất nhiều loại bắt đầu từ 4 bit cho đến 32 bit, vi xử lý 4 bit hiện nay không còn nhưng vi xử lý 8 bit vẫn còn mặc dù đã có vi xử lý 64 bit. Lý do sự tồn tại của vi xử lý 8 bit là phù hợp với một số yêu cầu điều khiển trong công nghiệp. Các vi xử lý 32 bit, 64 bit thường sử dụng cho các máy tính vì khối lượng dữ liệu của máy tính rất lớn nên cần các vi xử lý càng mạnh càng tốt. Các hệ thống điều khiển trong công nghiệp sử dụng các vi xử lý 8 bit hay 16 bit như hệ thống điện của xe hơi, hệ thống điều hòa, hệ thống điều khiển các dây chuyền sản xuất, …b. Chức năng của Atmega:
- PORTA: Các chân từ 33 đến 40 thuộc PORTA. Nó hoạt động giống như đầu vào analog cho bộ chuyển đổi A / D. Tuy nhiên, trong trường hợp không có bộ chuyển đổi A / D, PORTA được sử dụng làm cổng I / O hai chiều 8 bit. Nó đi kèm với điện trở kéo bên trong.
- PORTB: Các chân từ 1 đến 8 thuộc về PORTB. Đây là các chân hai chiều I / O. Cổng này cũng bao gồm các điện trở kéo lên bên trong.
- PORTC: PORTC là cổng I / O hai chiều bao gồm 8 chân. Chân từ 22 đến 29 thuộc về cổng này, tương tự như các cổng khác, nó đi kèm với điện trở kéo bên trong.
- PORTD: Chân từ 14 đến 21 thuộc về cổng này. Đây là cổng hai chiều trong đó mỗi chân có thể được sử dụng làm chân đầu vào hoặc đầu ra. Tuy nhiên, có các tính năng bổ sung liên quan đến cổng này như ngắt, giao tiếp nối tiếp, bộ hẹn giờ và PWM.
Các chức năng khác
- Reset: Chân 9 là chân reset mức thấp đang hoạt động. Xung mức thấp dài hơn độ dài xung tối thiểu sẽ tạo ra reset. Các xung ngắn không có khả năng tạo ra reset.
- VCC: Chân 10 là chân cấp nguồn cho bộ điều khiển này. Nguồn điện của cần phải có 5 V để đặt bộ điều khiển này trong điều kiện đang chạy.
- GND: Chân 11 là chân nối đất.
- AREF: Chân 32 là chân tham chiếu tương tự chủ yếu được sử dụng cho bộ chuyển đổi A / D .
- AVCC: Chân 30 là AVCC là chân điện áp cung cấp cho PORTA và ADC. Nó được kết nối với VCC thông qua bộ lọc thông thấp khi có ADC. Tuy nhiên, trong trường hợp không có ADC, AVCC được kết nối bên ngoài với VCC.
- Chân 12 & 13: Một bộ dao động tinh thể được kết nối với các chân này. Atmega16 hoạt động ở tần số bên trong 1MHZ; bộ dao động được thêm vào để tạo ra xung clock và tần số cao.
c.Thông số kỹ thuật Atmega (Dip)
Datasheets | Atmega16 |
Standard Package | 27 |
Category | Integrated Circuits (ICs) |
Family | Embedded – Atmel |
Series | Atmega |
Packaging | Tube |
Core Processor | AVR |
Core Size | 8-Bit |
Speed | 16MHz |
Connectivity | I²C, SPI, UART / USART, USB |
Peripherals | Brown-out Detec t/ Reset, HLVD, POR, PWM, WDT |
Number of I /O | 32 |
Program Memory Size | 16KB |
Program Memory Type | FLASH |
EEPROM Size | 512B |
RAM Size | 1K |
Voltage – Supply (Vcc/Vdd) | 4.2 V ~ 5.5 V |
Data Converters | A/D 8 x 10bit |
Oscillator Type | Internal |
Operating Temperature | -40°C ~ 85°C |
Package / Case | 28-SOIC (0.295″, 7.50mm Width) |
Other Names | Atmega16 |
d. Power
- 5V: Điện áp ra 5V (dòng điện trên mỗi chân này tối đa là 500mA).
- GND: Là chân mang điện cực âm trên board.
- IOREF: Điệp áp hoạt động của vi điều khiển trên AVR và có thể đọc điện áp trên chân IOREF. Chân IOREF không dùng để làm chân cấp nguồn.
e.Bộ nhớ
Vi điều khiển ATmega:- 16 KB bộ nhớ Plash: trong đó bootloader chiếm 0.5KB.
- 2 KB cho SRAM: (Static Random Access Menory): giá trị các biến khai báo sẽ được lưu ở đây. Khai báo càng nhiều biến thì càng tốn nhiều bộ nhớ RAM. Khi mất nguồn dữ liệu trên SRAM sẽ bị mất.
- 512B cho EEPROM: (Electrically Eraseble Programmable Read Only Memory): Là nơi có thể đọc và ghi dữ liệu vào đây và không bị mất dữ liệu khi mất nguồn.
f. Kiến trúc của Atmega16
Kiến trúc của Atmega16 dựa trên Kiến trúc Harvard và đi kèm với các bus và bộ nhớ riêng biệt. Các lệnh được lưu trữ trong bộ nhớ chương trình.- CPU
- ROM
- RAM
EEPROM
- Ngắt
- Module I / O analog và kỹ thuật số
Bộ định thời / Bộ đếm
- Watchdog timer
- Giao tiếp nối tiếp
1.2 Cảm biến Âm thanh giao tiếp Atmega
a. Giới thiệu
Âm thanh giao tiếp Atmega là một loại module được sử dụng để nhận biết âm thanh. Nói chung, module này được sử dụng để phát hiện cường độ của âm thanh. Các ứng dụng của module này chủ yếu bao gồm công tắc, bảo mật, và giám sát. Độ chính xác của cảm biến này có thể được thay đổi để dễ sử dụng. Cảm biến này sử dụng một micrô để cung cấp đầu vào cho bộ đệm, bộ dò đỉnh và bộ khuếch đại. Cảm biến này thông báo âm thanh và xử lý tín hiệu điện áp o / p tới bộ vi điều khiển. Sau đó, nó thực hiện xử lý theo yêu cầu. Cảm biến này có khả năng xác định mức độ tiếng ồn trong phạm vi DB’s hay decibel ở tần số 3 kHz 6 kHz trong khoảng tai người cảm nhận. Trong điện thoại thông minh, có một ứng dụng Android cụ thể là máy đo decibel được sử dụng để đo mức độ âm thanh.b. Thông số kỹ thuật
Các thông số kỹ thuật của cảm biến âm thanh bao gồm- Phạm vi của điện áp hoạt động là 3.⅗ V
- Dòng hoạt động là 4 ~ 5 mA
- Mức tăng điện áp 26 dB ((V = 6V, f = 1kHz)
- Độ nhạy của micrô (1kHz) là 52 đến 48 dB
- Trở kháng của micrô là 2,2k Ohm
- Tần số của micrô là 16 đến 20 kHz
- Tỷ lệ tín hiệu trên tiếng ồn là 54 dB
c. Chức năng các chân
- Chân 1 (VCC): 3.3V DC đến 5V DC
- Chân 2 (GND): Đây là chân nối mass
- Chân 3 (DO): Đây là chân đầu ra
d. Nguyên lý hoạt động
Nguyên lý hoạt động của cảm biến này liên quan đến tai người. Bởi vì tai người bao gồm một cơ hoành và chức năng chính của cơ hoành này là sử dụng các rung động và biến đổi thành tín hiệu. Còn đối với cảm biến này, nó sử dụng một micrô và chức năng chính của nó là sử dụng các rung động và biến đổi thành dòng điện hoặc điện áp. Nói chung, nó bao gồm một màng ngăn được thiết kế bằng nam châm được xoắn bằng dây kim loại. Khi tín hiệu âm thanh chạm vào màng ngăn, nam châm bên trong cảm biến rung và đồng thời dòng điện có thể được kích thích từ các cuộn dây.e. Ứng dụng
Cảm biến này có thể được sử dụng để xây dựng các mạch điện tử khác nhau với sự trợ giúp của bo Arduino. Ví dụ: mạch sử dụng cảm biến âm thanh, về cơ bản, cảm biến này giống như đôi tai cho Arduino. Trong mạch này, một micrô có thể được gắn vào một chân analog của bo. Mạch này có thể được sử dụng để thông báo mức độ tiếng ồn trong môi trường xung quanh. Các cảm biến âm thanh hỗ trợ các nền tảng như Arduino, Raspberry Pi, BeagleBone Wio và LinkIt ONE. Cảm biến này đóng một vai trò thiết yếu để kích hoạt ánh sáng trong văn phòng hoặc trong nhà bằng cách phát hiện tiếng còi hoặc tiếng vỗ tay.- Hệ thống an ninh cho văn phòng hoặc nhà riêng
- Mạch gián điệp
- Tự động hóa trong gia đình
- Người máy
- Điện thoại thông minh
- Nhận dạng âm thanh xung quanh
- Bộ khuếch đại âm thanh
- Nhận dạng mức âm thanh (không có khả năng thu được giá trị dB chính xác)
1.3 Relay kích đèn 220v cho mạch cảm biến âm thanh giao tiếp Atmega
a. Giới thiệu
Rơ le (relay) là một công tắc chuyển đổi, dùng để đóng cắt mạch điều khiển, nó hoạt động bằng điện. Nó là một công tắc vì có 2 trạng thái ON và OFF. Rơ le ở trạng thái ON hay OFF phụ thuộc vào có dòng điện chạy qua rơ le hay không.b. Thông số kỹ thuật
- Điện áp điều khiển: 5V
- Dòng điện cực đại: 10A
- Thời gian tác động: 10ms
- Thời gian nhả hãm: 5ms
- Nhiệt độ hoạt động: -45oC ~ 75oC
2. Hướng dẫn đồ án Âm thanh giao tiếp Atmega vỗ tay bật đèn 220v qua Relay
Phần này chưa được chia sẻ.
LIÊN HỆ thông tin ở TẠI ĐÂY để được hổ trợ tốt hơn.
Phần cứng
Phần mềm
int sound_sensor = 7;
int relay = 4;
int clap = 0;
long detection_range_start = 0;
long detection_range = 0;
boolean status_lights = false;
void setup() {
pinMode(sound_sensor, INPUT);
pinMode(relay, OUTPUT);
}
void loop() {
int status_sensor = digitalRead(sound_sensor);
if (status_sensor == 0)
{
if (clap == 0)
{
detection_range_start = detection_range = millis();
clap++;
}
else if (clap > 0 && millis()-detection_range >= 50)
{
detection_range = millis();
clap++;
}
}
if (millis()-detection_range_start >= 400)
{
if (clap == 2)
{
if (!status_lights)
{
status_lights = true;
digitalWrite(relay, HIGH);
}
else if (status_lights)
{
status_lights = false;
digitalWrite(relay, LOW);
}
}
clap = 0;
}
}
3. Hoạt động của mạch cảm biến Âm thanh giao tiếp Atmega
Khi cấp điện hệ thống hoạt động, vi điều khiển hiển thị thông tin ban đầu. lúc này vi điều khiển chờ tín hiệu từ module cảm biến âm thanh. Nếu nhận 2 lần liên tiếp trong thời gian quy định thì sẽ đảo trạng thái đèn, nếu nhận một lần vượt thời gian cho phép thì hệ thống tự rest về ban đầu.4. Hoạt động mạch cảm biến Âm thanh giao tiếp Atmega các bạn xem video:
Ngoài ra còn nhiều Phần và các môn khác
Đồ án điện tử, Lập trình vi điều khiển tổng hợp File đồ án – Phần 1 Mạch điện tử, Lập trình vi điều khiển tổng hợp File đồ án – Phần 2 Thiết kế mạch điện tử, Lập trình vi điều khiển tổng hợp File đồ án – Phần 3 Vi xử lý, Lập trình vi điều khiển Pic – 8051 – Avr – Phần 4 Tổng hợp File ĐỒ ÁN Điện tử cơ bản Tổng hợp File ĐỒ ÁN Viễn thông Tổng hợp File ĐỒ ÁN PLC Tổng hợp File ĐỒ ÁN Cung cấp điện
Sẽ còn các phần khác nữa nhé.
Chúc các bạn thành công…!!!