2.6.1 Khối RFID- RC522
Mạch được thiết kế cần phải nhỏ gọn đồng thời chi phí ít mà vẫn đảm bảm bảo được các chức năng. Trên thị trường có rất nhiều loại module RFID. Do vậy, chúng ta cần lựa chọn loại module thích hợp cho hệ thống. Bảng 2.1 sẽ liệt kê một số thông tin của các loại module RFID thông dụng.
Bảng 2.1: So sánh các module RFID thông dụng:
Tên RC522 [18] PN532 [19] RDM6300 [20] Nguồn sử dụng 2.5~3.3VDC 3.3~5VDC 3.3~5VDC Tần số hoạt động 13.56MHz 125KHz 13.56MHz Khoảng cách đo < 6cm < 5cm < 7cm Kích thước 38.5x19mm 42.7x40.4 mm 40mm × 60mm Giá thành 45.000VNĐ 140.000VNĐ 80.000CVNĐ
Lý do chọn: Căn cứ vào bảng số liệu trên ta thấy RC522 và PN532 có tần số hoạt động lớn hơn. Nhưng do module RFID-RC522 có giá thành tương đối rẻ từ 40.000-55.000vnđ, thiết kế nhỏ gọn, có tần số sóng mang là 13.56MHz phù hợp với loại thẻ RFID dán nhỏ gọn được lựa chọn. Do đó module RFID là sự lựa chọn tốt nhất cho đề tài này.
a. Thông tin về module RFID RC522
Hình 2.6: Module RC522.
Hình 2.6 mô tả về module RC522.
Mô tả chân:
- Chân SDA(SS) chân chọn lọc chip khi giao tiếp SPI (kích hoạt mức thấp). - Chân SCK: Chân xung trong chế độ SPI.
- Chân MOSI(SDI): Master Data Out – Slave In trong chế độ giao tiếp SPI. - Chân MISO(SDO): Master Data In – Slave Out trong chế độ giao tiếp SPI. - Chân IRQ: Chân ngắt.
- Chân GND: Chân nối mass. - Chân RST: Chân reset lại module. - Chân VCC: Chân nguồn 3.3V.
Thông số kỹ thuật:
- Điện áp: 3.3VDC. - Dòng điện: 13 - 26mA .
- Tần số sóng mang: 13.56MHz. - Khoảng cách hoạt động: 0~60mm.
- Tốc độ truyền dữ liệu: tối đa 10Mbit/s.
- Các loại card RFID hỗ trợ: mifare1 S50, mifare1 S70, mifare UltraLight, mifare Pro, mifare Desfire.
- Kích thước: 38.5x19mm.
- SPI (Max = 10Mbit/s).
- I2C (Fast Mode: 400 kbit/s, High Speed Mode: 3400 kbit/s). - UART (1228.8 kbit/s).
b. Nguyên lý hoạt động của module RC522
Đầu đọc của module RFID RC522 phát ra sóng điện từ (sóng mang) có tần số 13.56MHz, thẻ tag RFID trong vùng hoạt động sẽ cảm nhận được sóng điện từ này và thu nhận năng lượng từ đó phản xạ lại RFID reader biết được ID của mình. Từ đó, thiết bị RFID nhận biết được thẻ tag trong vùng hoạt động và tiến hành hoạt động truy xuất dữ liệu hay hoạt động khác. Bảng 2.2 thể hiện thông tin các chân của RC522.
Bảng 2.2: Thông tin các chân của RC522:
Tên chân GPIO Input Output Ghi chú D0 GPIO16 No interrupt No PWM for
I2C support Được sử dụng khởi động D1 GPIO4 Ok Ok Sử dụng giống SCL (I2C) D2 GPIO0 Ok Ok Sử dụng giống SCL (I2C)
D3 GPIO2 Pulled up Ok Kết nối với nút nhấn flash
D4 GPIO14 Pulled up Ok Hoạt động mức cao, kết nối với board hoặc led D5 GPIO12 Ok Ok SPI(SCLK) D6 GPIO12 Ok Ok SPI(MISO) D7 GPIO13 Ok Ok SPI(MOSI) D8 GPIO15 Pulled up GND Ok SPI(SC)
2.6.2 Khối xử lý ESP8266 12F
Lý do chọn: module ESP8266 12F nhỏ gọn, giá thành rẻ, phương thức giao tiếp UART gần gũi dễ sử dụng, do sử dụng trong nghiên cứu xây dựng hệ thống quy mô nhỏ đáp ứng bộ nhớ flash là 4MB tương đối hợp lý, có vỏ bọc kim loại chống nhiễu và anten Wifi PCB tích hợp cho khoảng các truyền xa và ổn định…Bảng 2.3 so sánh các thông số của 2 module.
Bảng 2.3: So sánh ESP8266 và ESP32:
Thông số kỹ thuật ESP8266 12F ESP32 Tần số 80MHz 160MHz wifi 802.11b/g/n HT20 HT40 Bluetooth Không hỗ trợ 4.2 và BLE Kích thước 24 x 16 mm 51.4 x 28.3 mm Giá bán 60.000-100.000VNĐ >120.000VNĐ
Từ bảng so sánh trên, module ESP8266 12F cơ bản đáp ứng được yêu cầu nhỏ gọn, dải tần số hoạt động phù hợp đồng thời giá thành tương đối rẻ. Do đó, module ESP8266 12F là sự lựa chọn thích hợp cho đề tài này.
Hình 2.7: Cấu hình chân ESP8266 12F.
TX GPIO1 TX Pin Ok Hoạt động mức cao A0 ADC0 Analog
Input
Hình 2.7 thể hiện cấu hình chân cho module ESP8266 12F.
Thông số kỹ thuật [21]:
- MCU: ESP8266EX.
- Wifi: 2.4GHz, 802.11 b/g/n. - Tích hợp giao thức TCP/IP.
- Số chân Analog Input: 1, 10bit (điện áp vào tối đa 3.3V). - Hỗ trợ kiết nối với smart phone (IOS và Android). - Bộ nhớ Flash: 4MB.
- Tốc độ truyền Serial (Baurate): 115200 (Max). - Phương thức giao tiếp UART, SPI, I2C. - Điện áp hoạt động: 3.3V.
- Điện áp vào tối đa 5V. - Dòng tiêu thụ tối đa: 320mA. - Điện áp ra I/O: Tối đa 3.6V.
- Nhiệt độ làm việc: -40℃~+125℃.
- Kích thước : 24 x 16 x 3mm. - Trọng lượng: 4g.
2.6.3 Khối hiển thị Oled 0.96 inch
Lý do chọn: Màn hình Oled 0.96 inch giao tiếp I2C cho khả năng hiển thị đẹp, rõ nét vào ban ngày và với mức chi phí phù hợp, màn hình sử dụng giao tiếp I2C cho chất lượng đường truyền ổn định và rất dễ giao tiếp chỉ với 2 chân GPIO.đồng thời chỉ cần hiển thị một số thông tin cơ bản nên chúng ta chỉ cần sử dụng một màn hình oled 0.96 inch.
Hình 2.8: Màn hình Oled 0.96 inch.
Thông số kỹ thuật:
- Điện áp sử dụng: 2.2~5.5VDC. - Công suất tiêu thụ: 0.04W. - Số điểm hiển thị: 128x64 điểm. - Độ rộng màn hình: 0.96 inch. - Màu hiển thị: Trắng / Xanh Dương. - Giao tiếp: I2C.
- Driver: SSD1306.
Bảng 2.4 thể hiện chức năng từng chân của ESP8266 12F
Bảng 2.4: Chức năng chân ESP8266 12F:
VCC 2.2 ~ 5.5VDC
GND 0VDC
SCL Xung clock SDA Dữ liệu vào
2.6.4 Khối mạch nguồn giảm áp DC mini 3A
Lý do chọn: Với mục đích nhỏ gọn, linh hoạt khi sử dụng mà vẫn đảm bảo cung cấp nguồn đủ cho phần cứng hoạt động, nhóm quyết định chọn pin panasonic IRC 18650 với chức năng loại Lithium có thể sạc nhiều lần, điện áp xả 4.2V, dung lượng 4200mAh đồng thời giá thành tương đối rẻ 35.000-40.000vnđ. Đồng thời kết hợp với mạch nguồn giảm áp DC mini 3A để giảm điện áp vào xuống còn 3.3V-3A cho phù
hợp với các linh kiện, module được sử dụng trong phần cứng để tránh tình trạng quá áp khi hoạt động các linh kiện. Hình 2.9 thể hiện hình ảnh của mạch nguồn giảm áp DC mini 3A.
Hình 2.9: Mạch nguồn giảm áp DC mini 3A.
Thông số kỹ thuật [23]:
- Điện áp đầu vào: 4.5 ~ 28V.
- Điện áp đầu ra: 0.8 ~ 20V (có thể điều chỉnh).
- Dòng ra: Tối đa 3A.
- Nhiệt độ hoạt động: -400C đến +850C.
2.6.5 Thẻ RFID mifare sticker 13.56MHz
Lý do chọn: Miếng dán Thẻ từ nhựa 13.56 MHz dùng để đọc/ghi dữ liệu với tốc độ rất cao mà giá thành tương đối rẻ. Thẻ được ứng dụng trong nhiều lĩnh vực như bảo mật, nhà thông minh, chấm công, gửi xe thông minh, v.v... Thẻ tương thích với module RFID RC522 13.56MHz và các module tương tự. Vì vậy, thẻ phù hợp với yêu cầu đặt ra của hệ thống. Hình 2.10 thể hiện hình ảnh của thẻ mifare sticker 13.56MHz.
Hình 2.10: Thẻ mifare sticker 13.56MHz. Thông số kỹ thuật [24]: - Tần số hoạt động: 13.56MHz. - Khoảng cách đọc: 2.5-10cm. - Thời gian đọc: 1-2ms. - Độ bền: 100.000 lần.
- Thời gian đảm bảo không mất dữ liệu: 10 năm. - Kích thước: đường kính 2.5cm.
- Chuẩn : ISO 14443, ISO 10536. - Màu: Trắng.
2.6.6 Cáp chuyển đổi PL2303HX từ USB sang TTL
Mục đích sử dụng là để nạp code cho ESP8266 12F, hình 2.11 thể hiện hình ảnh của cáp chuyển đổi PL2303HX.
Thông số kỹ thuật [16]:
- Sử dụng chip PL2303HX của Profilic.
- Sử dụng USB như cổng COM.
- Chuẩn USB 2.0.
- Hoạt động với nhiều hệ điều hành: Win XP, Win7...
2.6.7 Một số linh kiện khác
Tụ hóa, điện trở, công tắc gạt on-off, nút nhấn.
2.6.8 Các chuẩn giao tiếp
a. Chuẩn giao tiếp I2C
Chuẩn giao tiếp I2C được mô tả ở hình 2.12.
Hình 2.12: Kết nối các thiết bị theo chuẩn I2C.
Một giao tiếp I2C gồm có 2 dây: SDA và SCL. SDA là đường truyền dữ liệu 2 hướng, còn SCL là đường truyền xung đồng hồ để đồng bộ và chỉ theo một hướng. Theo hình vẽ trên, khi một thiết bị ngoại vi kết nối vào đường bus I2C thì chân SDA của nó sẽ nối với dây SDA của bus, chân SCL sẽ nối với dây SCL. Mỗi dây SDA hãy SCL đều được nối với điện áp dương của nguồn cấp thông qua một điện trở kéo lên. Sự cần thiết của các điện trở kéo này là vì chân giao tiếp I2C của các thiết bị ngoại vi thường là dạng cực máng hở. Giá trị của các điện trở này khác nhau tùy vào từng thiết bị và chuẩn giao tiếp.
Các chế độ hoạt động - Chế độ tiêu chuẩn.
- Chế độ nhanh.
- Chế độ cao tốc.
Các chế độ hoạt động của 1 Bus I2C - Một chủ một tớ.
- Một chủ nhiều tớ.
- Nhiều chủ nhiều tớ.
b. Chuẩn truyền giao tiếp nối tiếp UART
Giao thức truyền nhận dữ liệu UART là giao thức truyền dữ liệu nối tiếp bất đồng bộ. Một gói truyền dữ liệu bao gồm bit Start, khung truyền dữ liệu, bit parity, bit Stop.
- Bit Start: giữ ở mức điện áp cao khi nó không truyền dữ liệu. Để bắt đầu quá trình truyền dữ liệu, UART truyền sẽ kéo bit này từ cao xuống thấp trong một chu kỳ xung nhịp. Khi UART nhận phát hiện sự chuyển đổi điện áp cao sang thấp.
- Khung dữ liệu: chứa dữ liệu được truyền, nó có thể dài từ 5 đến 8 bit nếu sử dụng một bit parity. Bit parity có tác dụng kiểm tra xem dữ liệu có bị thay đổi trong quá trình truyền không bằng cách là kiểm tra tổng số bit 1 là chẵn hay lẻ rồi so sánh với dữ liệu. Nếu tổng số bit 1 là chẵn mà bit parity bằng 0 thì quá trình truyền không có lỗi và nếu bằng 1 thì đường truyền bị lỗi khiến dữ liệu bị thay đổi.
- Bit Stop: để báo hiệu sự kết thúc của gói dữ liệu, UART gửi sẽ điều khiển đường truyền dữ liệu từ điện áp thấp đến điện áp cao trong ít nhất hai bit.
- Nguyên lý hoạt động: UART truyền sẽ nhận dữ liệu từ một bus dữ liệu. Dữ liệu được truyền từ bus dữ liệu sang UART truyền ở dạng song song rồi thêm bit start, bit parity và bit stop để tạo gói dữ liệu. Sau đó, gói dữ liệu được xuất ra dạng nối tiếp tuần tự ở chân Tx rồi truyền qua chân Rx của UART nhận. UART nhận đọc các gói dữ liệu nhận được rồi loại bỏ bit start, bit parity và bit stop. Sau đó chuyển đổi dữ liệu trở lại dạng song song. Cuối cùng UART nhận chuyển gói dữ liệu song song qua bus dữ liệu.
c. Chuẩn giao tiếp SPI
Hình 2.3 thể hiện mô hình giao tiếp chuấn SPI của 1 thiết bị.
SPI (Serial Peripheral Bus) là một chuẩn truyền thông nối tiếp tốc độ cao. SPI là một cách truyền song công (full duplex) nghĩa là tại cùng một thời điểm quá trình truyền và nhận có thể xảy ra đồng thời. SPI đôi khi được gọi là chuẩn truyền thông “4 dây” vì có 4 đường giao tiếp trong chuẩn này đó là SCK (Serial Clock), MISO (Master Input Slave Output), MOSI (Master Ouput Slave Input) và SS (Slave Select).
- SCK: Xung giữ nhịp cho giao tiếp SPI, vì SPI là chuẩn truyền đồng bộ nên cần 1 đường giữ nhịp, mỗi nhịp trên chân SCK báo 1 bit dữ liệu đến hoặc đi. Sự tồn tại của chân SCK giúp quá trình tuyền ít bị lỗi và vì thế tốc độ truyền của SPI có thể đạt rất cao. Xung nhịp chỉ được tạo ra bởi chip Master.
- MISO– Master Input / Slave Output: nếu là chip Master thì đây là đường
Input còn nếu là chip Slave thì MISO lại là Output. MISO của Master và các Slaves được nối trực tiếp với nhau. MOSI – Master Output / Slave Input: nếu là chip Master thì đây là đường Output còn nếu là chip Slave thì MOSI là Input. MOSI của Master và các Slaves được nối trực tiếp với nhau.
- SS – Slave Select: SS là đường chọn Slave cần giap tiếp, trên các chip Slave đường SS sẽ ở mức cao khi không làm việc. Nếu chip Master kéo đường SS của một Slave nào đó xuống mức thấp thì việc giao tiếp sẽ xảy ra giữa Master và Slave đó. Chỉ có 1 đường SS trên mỗi Slave nhưng có thể có nhiều đường điều khiển SS trên Master, tùy thuộc vào thiết kế của người dùng.
Chương 3: TÍNH TOÁN THIẾT KẾ
3.1 GIỚI THIỆU
Ở chương 3, chúng ta thực hiện khâu tính toán giá trị linh kiện cần sử dụng cho hệ thống cũng như vẽ ra lưu đồ chương trình của các khối và thiết kế mạch sơ đồ nguyên lý.
3.2 TÍNH TOÁN VÀ THIẾT KẾ HỆ THỐNG
Sơ đồ khối của toàn hệ thống được mô tả ở hình 3.1.
Hình 3.1: Sơ đồ khối của hệ thống.
Giải thích:
Khối nguồn: Được sử dụng là Pin 8.4V có thể sạc. Khối này có chức năng cung cấp nguồn cho khối phần cứng hoạt động.
Khối phần cứng: có chức năng đọc thẻ rfid, giao tiếp với web server thông qua wifi, đồng thời hiển thị một số thông tin cơ bản.
Khối web server: có chức năng cho phép nhập, lưu trữ và sửa đổi thông tin tương ứng với các ID của thẻ rfid.
App điện thoại: có chức năng hiển thị thông tin lấy từ web server lên điện thoại.
Hình 3.2: Sơ đồ khối của phần cứng.
Nguồn Phần cứng Web server App điện thoại Module RFID Xử lý Hiển thị Nguồn
Hình 3.2 mô tả sơ đồ khối của phần cứng gồm khối nguồn, khối xử lí, khối RFID và khối hiển thị.
Giải thích
Khối nguồn: Sử dụng Pin dùng để cung cấp nguồn cho khối xử lý hoạt động.
Khối xử lý: Nhận địa chỉ ID từ module RFID, truy xuất thông tin tương ứng với từng địa chỉ ID để hiển thị trên khối hiển thị.
Khối RFID: Đọc ID của thẻ RFID và gửi ID đến khối xử lý.
Khối hiển thị: Có chức năng hiển thị thông tin tương ứng với từng địa chỉ ID.
3.2.1 Tính toán và thiết kế phần cứng 3.2.1.1 Tính toán và thiết kế nguồn
Bảng 3.1: Thống kê dòng và điện áp của các linh kiện:
Tên linh kiện Điện áp làm việc Dòng điện làm việc RFID RC 522 3.3-5VDC 13 - 26mA
ESP 8266 12E 3.3-5VDC <320mA Oled 2.2~5.5VDC 8 - 12mA
Bảng 3.1 thể hiện dòng và điện áp làm việc của các linh kiện. Điện áp làm việc lớn nhất của mỗi cảm biến: 5V DC, điện áp hoạt động nằm trong khoảng 3,3VDC nên chúng ta sử dụng điện áp 3,3V.
Dòng điện tối đa của mạch được tính toán: 26+320+12= 358mA Công suất của mạch được tính toán như sau:
P= U.I = (26+320+12)x3.3x10 = 1,2W
Dựa trên công suất đã được tính toán ta có thể thiết kế khối nguồn hoặc lựa chọn nguồn cho phù hợp. Công suất phải lớn hơn 1,2W và dòng điện phải lớn hơn 358mA. Để đảm bảo các yêu cầu trên nhóm chúng em quyết định chọn nguồn pin 4,2V với số lượng 2 pin.
Tính toán giá trị điện trở:
Trong mạch nguyên lí tổng thể của phần cứng ở hình 3.7, tính toán giá trị điện trở chung cho khối esp, oled, nút nhấn được tính theo định luật Ohm:
Trong đó I là dòng điện, U là điện áp vào, R là giá trị điện trở.
Từ đó, do nguồn vào là 3,3V và dòng điện mong muốn là 3,3mA nên theo công thức (3.1):
R = 3,3
3,3x10 = 10KΩ
Tiếp đến là thiết kế chi tiết cho khối nguồn.
Hình 3.3: Sơ đồ nguyên lý khối nguồn.
Hình 3.3 mô tả sơ đồ nguyên lý khối nguồn gồm có domino để cắm nguồn pin và jack cắm sạc cho pin được mắc chung với nhau. Kết nối với mạch nguồn giảm áp và điều chỉnh xuống mức 3.3V để cung cấp nguồn cho toàn bộ hệ thống.
3.2.1.2 Tính toán và thiết kế mạch