Trang chủ —› Bài giảng chương trình giáo dục phổ thông —› Hệ thống chào hỏi khách – Code mẫu và thư viện

Hệ thống chào hỏi khách – Code mẫu và thư viện

31 Tháng Mười Hai,2018 Đăng bởi: admin

HỆ THỐNG CHÀO HỎI KHÁCH

I. Giới thiệu

Code mẫu và thư viện

  1. Mô tả hệ thống

Hệ thống chào hỏi khách sử dụng cảm biến quang trở và đầu phát laser để phát hiện người đi vào/ra hệ thống, sau đó sẽ phát ra một câu chào/tạm biệt tương ứng hoặc một bài nhạc. Mô hình hệ thống được mô tả như hình 1.

 

Hệ thống chào hỏi khách
Hình 1: Hệ thống chào hỏi khách

 

 

  1. Cách thức thực hiện

Hệ thống gồm 2 bộ thu và phát laser được cấu tạo như sau:

– Bộ phát laser: Gồm hai đầu laser được cấp nguồn 5v, hai tia laser này sẽ phát ra tín hiệu laser trong suốt quá trình hệ thống thực hiện.

– Bộ thu laser: Bộ này được lắp 2 module quang trở để hứng tia laser từ bộ phát laser. Ngoài ra trong bộ thu này còn chứa bộ vi xử lý (arduino) để xử lý công việc khi nhận tín hiệu vào/ra, thiết bị để đọc tập tin và phát ra loa (DFPlayer) và loa để phát âm thanh.

Người đi vào hệ thống
Hình 2:Người đi vào hệ thống

 

Cách thức hoạt động: Khi có người đi vào, người này sẽ chạm vào tia laser 1 (hình 2) trước, tương tự khi người đi ra thì sẽ chạm vào tia laser 2 trước (hình 3). Bộ vi điều khiển khi nhận thấy tín hiệu laser ở đầu 1 mất, đầu 2 còn thì sẽ gửi lệnh đến thiết bị đọc tập tin âm thanh input.mp3. Sau khi phát xong, nếu như ở bộ thu hoặc phát vẫn còn bị mất laser (người vẫn chưa đi khỏi), hệ thống sẽ chờ đến khi người qua khỏi thì bắt đầu lại phiên làm việc mới.

Hình 3: Người ra khỏi hệ thống

  1. Chuẩn bị

       Arduino mini pro               x 1

Hộp nhựa âm tường           x 2

Module DFplayer              x 1

Thẻ nhớ micro SD             x 1

Loa                                      x 1

Đầu laser 5v                       x 2

Mdule quang trở                x 2

Công tắc                             x 2

Điện trở 1kOhm                 x 1

 

Ngoài ra chúng ta cần cung cấp nguồn cho hệ thống hoạt động (sử dụng nguồn 5v từ pin hoặc adapter sạc điện thoại), dây điện và một số phụ kiện khác.

 

 

III. Nối dây và cài đặt

  1. Cách nối dây:

Cách nối dây

Hình 4: Cách nối  dây

 

Nguồn điện: Đối với arduino promini chúng ta sẽ cấp nguồn 5v thông qua cổng Vcc và GND ở phần đầu của arduino. Nguồn từ arduino chúng ta cấp cho các module quang trở, module DFPlayer mini (có thể sử dụng nguồn chung với arduino).

Module quang trở: Chúng ta sử dụng 3 chân, Vcc cấp nguồn dương, GND nguồn âm. Còn lại D0 của hai quang trở, chúng ta cắm vào chân 7 và 8 của arduino.

Module DFPlayer: Đặt module này nằm như hình 4, các chân bên trái của module sẽ lần lượt được lắp như sau:

1- Vào chân Vcc của nguồn arduino.

2- Vào chân 11 của arduino, lưu ý gắn thêm con điện trở 1kOhm để hạn dòng.

3- Vào chân số 11 của arduino.

4- Bỏ trống.

5- Bỏ trống.

6- Vào chân loa.

7- Vào chân GND của arduino.

8- Vào chân còn lại của loa.

Hai đầu laser chúng ta sẽ để ở nguồn riêng trong hộp phát, đấu dây xanh với cực âm và dây đỏ vào cực dương của dòng điện DC 5V.

  1. Cài đặt

Sau khi lắp ráp xong, chúng ta nạp vào đoạn code sau:

#include “Arduino.h”

#include “SoftwareSerial.h”

#include “DFRobotDFPlayerMini.h”

 

SoftwareSerial mySoftwareSerial(10, 11); // RX, TX

DFRobotDFPlayerMini myDFPlayer;

 

int quangtro1 = 8;

int quangtro2 = 7;

 

void vaoPhong(){

myDFPlayer.play(2);//Đọc file thứ 2 trong thẻ nhớ

}

 

void raPhong(){

myDFPlayer.play(3); //Dọc file thứ 3 trong thẻ nhớ

}

void setup() {

// put your setup code here, to run once:

mySoftwareSerial.begin(9600);

Serial.begin(115200);

pinMode(quangtro1,INPUT);

pinMode(quangtro2,INPUT);

if (!myDFPlayer.begin(mySoftwareSerial)) {

while(true);

}

myDFPlayer.volume(30);  //Set volume value (0~30).

myDFPlayer.EQ(DFPLAYER_EQ_NORMAL);

myDFPlayer.outputDevice(DFPLAYER_DEVICE_SD);

Serial.println(“Bắt đầu hệ thống”);

}

int qt1 = 0;

int qt2 = 0;

void loop() {

qt1= digitalRead(quangtro1);// đọc giá trị quang trở  1

delay(10);

 

qt2 = digitalRead(quangtro2);// đọc giá trị quang trở 2

 

if(qt1!=0 && qt2 == 0){

Serial.println(“Quy khach vao phong”);

vaoPhong();

delay(2000);

while(!digitalRead(qt1)){delay(100);};//chờ đến khi người đi khỏi

}

 

if(qt2!=0 && qt1 == 0){

Serial.println(“Quy  khach ra khoi phong”);

raPhong();

delay(2000);

while(!digitalRead(qt2)){delay(100);};//Chờ đến khi người đi khỏi

}

 

}

Sau khi nạp chương trình thành công, ta đọc ở cổng serial sẽ thấy màn hình hiển thị chữ “Bắt đầu hệ thống”.

Cách chỉnh quang trở: Chúng ta cấp nguồn cho quang trở và tùy chỉnh biến trở sao cho khi tia laser chiếu vào thì 2 led báo trên quang trở sáng. Khi ta ngưng chiếu tia laser vào thì chỉ 1 led báo trên quang trở còn sáng thì đạt.

 

III. Ưu, nhược điểm và hướng khắc phục

  1. Ưu điểm

– Hệ thống tương đối rẻ (giá thành khoảng 200 – 300 ngàn VND), độ chính xác cao và dễ lắp đặt.

– Cảm biến có khoảng cách xa (lên tới vài chục mét, vì sử dụng tia laser).

– Dễ dàng tùy chỉnh âm thanh phát ra bằng cách thay đổi các tập tin tronng thẻ nhớ.

  1. Nhược điểm và hướng khắc phục

– Tia laser chiếu liên tục có thể gây hư hỏng mắt nếu nhìn lâu.

– Dễ bị nhiễu bởi ánh sáng bên ngoài.

Khắc phục: Sử dụng tia hồng ngoại thay cho tia laser.

– Hệ thống khó lắp đặt vì đầu laser được đặt cố định.

Khắc phục: lắp thêm cần chỉnh để điều chỉnh tia laser.

– Tập tin nhạc được ghi trong thẻ nhớ, dẫn đến tốn kém nhiều chi phí cho hệ thống.

Khắc phục: Thay thẻ nhớ bằng các loại chip nhớ rẻ tiền hơn.

– Hệ thống sử dụng nhiều dây điện, đặt cạnh nam châm của loa có thể bị nhiễu điện từ nếu sử dụng trong thời gian lâu.

– Hệ thống được cố định toàn bộ các thiết bị bằng keo nên khó bảo trì, bảo hành.

Khắc phục: Thay dây điện bằng mạch in.

  1. Phụ lục

Cài đặt và sử dụng module DFPlayer https://www.dfrobot.com/wiki/index.php/DFPlayer_Mini_SKU:DFR0299

Nạp code arduino pro mini bằng arduino uno r3 chip cắm

http://linhkienchatluong.vn/bai-viet/cach-nap-code-arduino-pro-mini-thong-qua-mach-nap-cua-arduino-uno_n342_c95.aspx

Nạp code arduino pro mini bằng Module PL2303

http://arduino.vn/bai-viet/823-huong-dan-mode-pl2303-usb-uart-nap-cho-arduino-promini

 

 

 

 


Notice: WP_Query được gọi với một tham số đã bị loại bỏ kể từ phiên bản 3.1.0! Hãy sử dụng ignore_sticky_posts thay cho caller_get_posts (sẽ sớm bị loại bỏ) in /home/lapt0260/public_html/wp-includes/functions.php on line 4080

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *