SPI là giao thức trao đổi dữ liệu

Một phần của tài liệu LUẬN VĂN ĐIỆN TỬ ỨNG DỤNG CÔNG NGHỆ RFID VÀ MODULE GSM GPRS VÀO HỆ THỐNG NGÔI NHÀ THÔNG MINH (Trang 85)

L ỜI CẢM ƠN

4.3.2.4 SPI là giao thức trao đổi dữ liệu

Dữ liệu lúc nào cũng được truyền qua lại giữa các thiết bị SPI. Không có khái niệm thiết bị phát hay thiết bị nhận trong giao thức SPI mà mỗi thiết bị có 2 đường dữ liệu, một đường dữ liệu vào và một đường dữ

liệu ra.

Dữ liệu truyền đi được điều khiển bởi xung SCK từ Master. Khi

được truyền đi, dữ liệu vào cần phải được đọc ngay, nếu không sẽ bị mất đi và khi đó, giao thức SPI có thể sẽ ngưng hoạt động. Để tránh tình trạng này, lúc nào ta cũng phải đọc dữ liệu về ngay sau khi truyền đi cho dù dữ liệu đõ không thực sự cần thiết.

Thường thì 1 tín hiệu chọn Slave sẽ tác động mức thấp để chỉ ra Slave nào được truy cập. Tín hiệu này phải được sử dụng khi có nhiều hơn 1 Slave trong cùng hệ thống và thường không sử dụng đến khi trong mạch chỉ

có 1 Slave. Tuy nhiên, theo nguyên tắc thì ta nên sử dụng tín hiệu này trong cả hai trường hợp trên.

Tín hiệu SS sẽ chỉ ra Slave nào mà Master muốn bắt đầu một quá trình trao đổi dữ liệu bằng giao thức SPI giữa thiết bị Slave đó và chính nó. Nếu tín hiệu trên đường SS là 0 thì chứng tỏ giao thức SPI đang hoạt động. Ngược lại, nếu tín hiệu là mức 1 thì giao thức SPI không hoạt động. Một đặc

điểm khác khá quan trọng của tín hiệu SS là nó vó tác dụng làm tăng cường khả năng miễn nhiễm cho hệ thống. Lí do là SS sẽ Reset Slave để nó có thể

69

SPI có 4 mode hoạt động, phụ thuộc vào cực tính và pha của xung

đồng hồ. Trong trường hợp cực âm của xung đồng hồ, tín hiệu SCK sẽ ở

mức thấp trong quá trình nghỉ và chuyển sang mức cao trong quá trình truyền dữ liệu. Ngược lại, đối với trường hợp cực dương của xung đồng hồ, tín hiệu SCK ở mức cao trong quá trình nghỉ và chuyển sang mức thấp khi truyền dữ liệu.

4.3.3 SPI trong vi điều khiển Pic :

SPI Mode trong Pic cho phép 8 bit dữ liệu được truyền nhận đồng bộ 1 cách

đồng thời. Hỗ trợ hoạt động ở cả 4 Mode. Để tiến hành hoạt động giao tiếp, về cơ

bản, 3 chân sau đây được sử dụng: − Serial Data Out – RC5/SDO − Serial Data In – RC4/SDI/SDA − Serial Clock – RC3/SCK/SCL

Ngoài ra, nếu trong hệ thống có nhiều hơn 1 Slave thì chân Chip Select sẽ

được dùng:

− Slave Select – RA5/AN4/SS/HLVDIN

70

CHƯƠNG 5

SƠ ĐỒ NGUYÊN LÝ VÀ TÍNH TOÁN THIẾT KẾ

5.1 Sơđồ h thng: Hình 5.1 Sơđồ khối hệ thống Hình 5.1 Sơđồ khối hệ thống TAG ANTEN KHỐI XỬ LÝ TRUNG TÂM KHỐI READER KHỐI HIỂN THỊ KHỐI SIM900A KHỐI ĐIỀU KHIỂN THIẾT BỊ KHỐI ĐIỀU KHIỂN ĐỘNG CƠ KHỐI NGUỒN

71

72

5.3 Sơđồ khi ngun:

Hình 5.2: Sơđồ khối nguồn

Nguồn cung cấp cho toàn bộ hệ thống là 15VAC, sau khi qua cầu diode ta được nguồn cung cấp cho toàn bộ hệ thống là 15VDC. Thông qua các IC ổn áp trên sơ đồ

nguồn vào DC 15V được nắn thành VOUT có các giá trị như sau:

v IC LM2596 - ADJ

LM2596 là một IC nguồn tích hợp của mạch nguồn xung theo nguyên lý nguồn Buck. Với dòng điện định mức đầu ra tải là 3A và có các đầu điện áp đầu ra cố định 3.3V, 5V, 12V, 15V và điện áp biến đổi tùy từng loại Serial của LM2596. Đây là loại IC nguồn cung cấp điện áp đầu ra ổn định, hoạt động ổn định với đầu tản nhiệt tốt giúp IC hoạt động tốt trong nhiệt độ cho phép.

Theo sơ đồ tụ C6, C7 có tác dụng lọc nguồn đầu vào 15VDC. Sau khi được loc nguồn 15 VDC sẽ được đưa vào LM2596, ở đây điện áp đầu ra được điều chỉnh liên tục để đảm bảo cho điện áp đầu ra luôn giữa ở một giá trị cốđịnh. Trong sơ đồ cấu tạo thì LM2596 gồm khối : So sánh, tạo dao động, công suất, quá dòng...

73 + Chân 1 (Vin) : Chân nguồn đầu vào

+ Chân 2 (Vout) : Chân điện áp đầu ra. Tùy thuộc dòng LM2576 mà chân này có điện áp ra ổn định khác nhau.

+ Chân 3 (GND) : Chân nguồn chung

+ Chân 4 (Feedback) : Chân đưa tín hiệu phản hồi từ đầu ra về đầu vào. Đưa vào bộ so sánh đểđiều chỉnh ổn định điện áp

+ Chân 5 (On/Off) : Chân đóng mở. Thường để GND

Mặc khác theo sơ đồ ta sử dụng LM2596 loại ADJ đó là một IC có khả năng điều chỉnh điện áp đầu ra nên VOUT có thểđiều chỉnh được theo công thức:

VOUT = VREF(1 + ) Trong đó: VREF = 1,23 V

VOUT là điện áp ra cấp nguồn cho module sim, VOUT phụ thuộc vào giá trị tuỳ chọn của hai điện trở R1,R2.

Vì để cung cấp nguồn 4,2V cho module sim hoạt động nên ta chọn R1=1k, R2=2,4K. Ta có giá trị VOUT = 1,23(1 + 2,4/1)= 4,182 ≈ 4,2V. Một số thông số của LM2596 – ADJ: +Điện áp đầu vào: 4V-40V +Điện áp ra: 1.25V-35V +Sản lượng hiện tại: 3A (tối đa) +Chuyển đổi hiệu quả: 92% (cao nhất) +Tần số chuyển mạch: 150kHz

+Sản lượng Ripple: 5mV (đầu ra 5V2A) +Tải trọng Quy chế: ± 0.5%

+Điện áp điều chỉnh: ± 2.5%

74

vIC LM7805

Nguồn 5V được nắn thành thông qua LM7805 dùng để cung cấp nguồn nuôi cho bộ vi xử lý, khối điều khiển thiết bị, relay.

+Tụ C1, C11 là lọc nguồn đầu cho LM7805. Hai tụ này là tụ hoá phải có điện dung đủ lớn để lọc phẳng điện áp đầu vào và điện áp tụ chịu đựng phải lớn hơn điện áp

đầu vào.

+Tụ C2, C12 là lọc nguồn đầu ra cho LM7805. Hai tụ này là tụ hoá dùng để

lọc nguồn đầu ra cho bằng phẳng.

vIC LM7812

Nguồn DC 15V được nắn thành 12V thông qua LM7812 dùng để cung cấp cho khối điều khiển động cơ.

5.4 Sơđồ khi hin th:

Khối này dùng để hiển thị nhiệt độ, trạng thái cửa, trạng thái đèn. Dữ liệu hiển thị

truyền từ vi điều khiển tới LCD thông qua 3 chân (RS, RW, E) để điều khiển và 4 chân (D3 đến D7) để truyền dữ liệu. Ta dùng biến trở 10K để điều chỉnh độ tương phản của màn hình.

Hình 5.3: Sơđồ khối hiển thị vChức năng các chân:

+Các chân VCC, VSS và VEE: Chân VCC_Cấp dương nguồn 5V, chân VCC_Nối đất, chân VEE được dùng đểđiều khiển độ tương phản của màn hình LCD.

75

+Chân chọn thanh ghi RS (Register Select): Có hai thanh ghi rất quan trọng bên trong LCD, chân RS được dùng để chọn các thanh ghi này như sau: Nếu RS = 0 thì thanh ghi mà lệnh được chọn để cho phép người dùng gửi một lệnh chẳng hạn như xoá màn hình, đưa con trỏ vềđầu dòng,… Nếu RS = 1 thì thanh ghi dữ liệu được chọn cho phép người dùng gửi dữ liệu cần hiển thị trên LCD.

+Chân đọc/ghi R/W: Đầu vào đọc/ghi cho phép người dùng ghi thông tin lên LCD khi R/W = 0 hoặc đọc thông tin từ nó khi R/W = 1.

+Chân cho phép E (Enable): Đầu vào đọc/ghi cho phép người dùng ghi thông tin lên LCD khi R/W = 0 hoặc đọc thông tin từ nó khi R/W = 1.

+Các chân Do – D7: Đây là 8 chân dữ liệu 8 bit, được dùng để gửi thông tin lên lcd hoặc đọc nội dung của các thanh ghi trong lcd.

Để hiển thị các chữ cái và các con số, chúng ta gửi các mã ASCII của các chữ cái từ A đến Z, a đến f và các con số từ 0 - 9,... đến các chân này khi bật RS = 1. Cũng có các mã lệnh mà có thể được gửi đến LCD để xoá màn hình hoặc đưa con trỏ về đầu dòng hoặc nhấp nháy con trỏ.

5.5 Sơđồ khi x lý trung tâm MCU:

Master có nhiệm vụ thu nhận tín hiệu và gửi sang cho slave. Tín hiệu ở đây bao gồm 4 cảm biến cửa, 2 cảm biến nhệt độ và xử lý tín hiệu RFID khi có thẻ tác dụng còn lại là con slave đảm nhiệm bao gồm xử lý sms, bàn phím, nhận dữ liệu từ master hiển thị lcd điều khiển io(input là cảm biến, output là điều khiển thiết bị).

76

Hình 5.4: Khối xử lý trung tâm MCU

5.6 Sơđồ khi Reader RF:

77

Ta sử dụng chip EM4095 làm IC reader RFID. EM4095 (tên trước đây là P4095)

đây là chip có mạch thu phát tích hợp làm theo công nghệ CMOS. Nhiệm vụ của chip là:

− Điều khiển anten với sóng mang. − Điều chế AM để ghi lên tag ghi được.

− Giải điều chế AM tín hiệu điều chế mà anten nhận được từ tag. − Giao tiếp với vi điều khiển thông qua giao diện đơn giản.

Hình 5.6: Sơđồ chân EM4095 Bảng 5.1: Chức năng các chân của EM4095

Pin Tên Mô tả chức năng Kiểu

1 VSS Điện áp đất GND

2 RDY/CLK Cờ trạng thái sẵn sàng và đầu ra xung, điều khiển

điều chế AM O

3 ANT1 Điều khiển anten(nối vối anten) O

4 Dvdd Cực dương nguồn năng lượng dùng đểđiều khiển

anten PWR

5 Dvss Cực âm nguồn năng lượng dùng đểđiều khiển

anten GND

78

7 VDD Cực dương nguồn năng lượng nuôi chip PWR

8 DEMOD_IN Cảm biến điện áp của anten ANA

9 CDEC_OUT ANA

10 CDEC_IN ANA

11 AGND ANA

12 MOD IPD

13 DEMOD_OUT Tín hiệu số mà được biểu diễn dưới dạng tín hiệu

điều chế AM trên anten O

14 FCAP Một điện áp mức cao sẽđưa mạch vào trạng thái

ngủ IPU 15 DC2 ANA 16 ANA Ghi chú: GND: nối đất PWR: nguồn cung cấp ANA: tín hiệu tương tự O: đầu ra

79

5.7 Sơđồ khi module Sim900A

Hình 5.7: Sơđồ nguyên lý khối Module Sim900A

Khi được cấp nguồn và hoạt động, Slave (Pic 18F4620) sẽ cấp mức điện áp cao ra chân RA3. Chân RA3 nối với chân ON/OFF của khối module sim nên khối module sim được khởi động. Khi đó đèn NETLIGHT sẽ nhấp nháy liên tục báo hiệu module

đang bắt đầu dò sóng, khi đã bắt được sóng thì đèn NETLIGHT sẽ nhấp nháy chậm lại khoảng 2s/lần.

Chân TXD của SIM900A được kết nối với chân RXD của vi điều khiển, và ngược lại chân RXD của SIM900A kết nối tới chân TXD của vi điều khiển. Module sim có nhiệm vụ truyền tín hiệu cho Pic như báo cuộc gọi tới, tin nhắn tới….Pic củng có nhiệm vụ thông qua chân Rx của module sim để cấu hình, truyền dữ liệu, điều khiển

80

cho sim cụ thể như sau: khởi tạo module sim, nhận cuộc gọi, thiết lập cuộc gọi, nhận tin nhắn, gửi tin nhắn.

5.8 Sơđồ khi điu khin đông cơđiu khin thiết b:

5.7.1 Khối điều khiển động cơ:

Hình 5.8: Sơđồ nguyên lý của khối điều khiển động cơ

Rơle 5V : đóng ngắt thiết bị

BJT C1815 : đóng mở relay 5V

Diod 1N4007 : để tránh dòng Fuco trong cuộn dây sinh ra trong quá trìnhhoạt động làm hỏng các linh kiện như BJT.

Led hiển thị trạng thái hoạt động của động cơ. Opto PC817 :

81

+ R10k, R1k để hạn dòng qua photo transitor của Opto là 2,5 mA, (12V/4K7=2,5mA) để kích C1815 dẫn bão hoà.

Opto hay còn gọi là cách ly quang là linh kiện tích hợp có cấu tạo gồm 1 led và 1 photo diot hay 1 photo transitor. Được sử dụng để các ly giữa các khối chênh lệch nhau vềđiện hay công suất như khối có công suất nhỏ với khối điện áp lớn.

Opto có tác dụng khi có dòng nhỏ di qua 2 đầu của led có trong opto làm cho led phát sáng. Khi led phát sáng làm thông 2 cực của photo diot hay photo transitor, mở cho dòng điện chạy qua.

Sơđồ mạch nguyên lý cho opto:

Trạng thái hoạt động của mạch điều khiển động cơ tuỳ theo trạng thái của 2 chân của JP2 ta có các trường hợp động sau:

Trường hợp 1: chân 2 chưa được kích, chân 1 được kích ở mức thấp, nguồn 12v thông với mass, làm cho quang diode phát sáng, kích cho quang transistor dẫn, tiếp tục kích cho fet dẫn, làm cho thông mass, động cơ quay theo 1 chiều.

Trường 2: chân 1 mức thấp, chân 2 cũng mức thấp giải thích tương tự, động cơ sẽ quay theo chiều ngược lại với trường hợp 1.

Trường hợp 3: khi 2 chân chưa được kic hoặc cùng mức 1, nguồn 12v không thông với mass, làm cho quang diode không phát sáng theo sau đó là quang transistor không dẫn nên sẽ không có nguồn kích cho fet dẫn, mạch không thông với mass, động cơ sẽ không hoạt động hoặc đang quay sẽ ngừng hoạt động.

PC817 1

2

4 3

82

5.7.2 Khối điều khiển thiết bị:

Hình 5.9: Sơđồ nguyên lý điều khiển thiết bị

Theo sơđồ hình 5.9 ta có 2 trường hợp hoạt động:

Trường hợp 1: chưa có tín hiệu điều khiển hoạt động mức cao. Vì không

được kíc mức cao nên quang diode theo sau đó là quang transistor trong opto không dẫn. Từđó làm nguồn 12v không thông với mass nên dòng ở cực B của BJT Q3 vẫn ở mức cao nên Q3 không dẫn, nguồn không thông mass nên relay không hoạt động, thiết bị chưa hoạt động.

Trường hợp 2: khi có tín hiệu hoạt động mức cao, quang diode sẽ phát sáng làm cho quang trasistor trong opto dẫn. Từ đó nguồn 12v thông với mass làm cực B mức thấp Q3 dẫn, nguồn thông mass nên relay hoạt động, thiết bị hoạt động.

83

5.9 Khi cm biến nhit độ:

Mạch sử dụng LM35 đểđọc nhiệt độ. Ta có sơđồ như sau:

Hình 5.10: Sơđồ khối cảm biến nhiệt độ

Cảm biến nhiệt độ LM35 sẽ cảm biến tức là thu nhận các giá trị nhiệt độ thay đổi theo thời gian qua các đường kết nối gửi tới PIC16F887. Và tại đây, vi điều khiển PIC sẽ xử lí dữ liệu này rồi gửi các thông tin nhiệt độ cập nhật trên giao diện phần mềm xây dựng. Đặc biệt, khi có hỏa hoạn thì nó sẽ tựđộng gọi điện tới người chủ nhà. LM35 là một cảm biến nhiệt được tích hợp sẵn có độ chính xác cao. Mà ngõ ra điện áp là tuyến tính theo tỉ lệ với nhiệt độ C và nhiệt độ K. LM35 không yêu cầu phải có thêm mạch tinh chỉnh bên ngoài để cung cấp độ chính xác ở nhiệt độ phòng.

« Các tính năng của LM35: + Tuyến tính : +10mV/°C. + Sai số 0.5°C khi đạt đến 25°C. + Phạm vi đo lớn từ−55° to +150°C. + Hoạt động từ 4 đến 30 V. + Dòng cực máng nhỏ hơn 60 μA.

84

« Tính toán và thiết kế:

Dựa vào các đặc tính kĩ thuật như trên, nhóm đã thiết kế 2 khối cảm biến dựa trên các thông số kĩ thuật của nhà sản xuất để áp dụng vào đề tài. Ta kết nối lần lượt chân số 2 của 2 cảm biến với ngõ vào AN0 và AN1 của Pic16F887. Chân 1 được nối nguồn 5V nằm trong tiêu chuẩn từ 4 đến 30V. Chân 3 nối Ground (đất).

LM35 có:

+ Điện áp 0V khi ở 0°C. + Điện áp 0.29V khi ở 29°C.

Khi ta chọn độ phân giải 10 bit cho vi điều khiển Pic16F887 thì được tính toán nhiệt độ như sau :

+ ở 29°C :

Value_ADC = (290mV*1024)/5000mV = 59.392.

Khi đọc giá trị từ cảm biến LM35 thì trong vi điều khiển sẽ có giá trị là: Value_ADC = 59.392.

Vì vậy muốn đổi ra nhiệt độ °C thì : T°C = (59.392 * 5000/1024)/10 = 29. Tức là T°C = 59.392 / 2.

85

CHƯƠNG 6

LƯU ĐỒ GIẢI THUẬT

6.1 Lưu đồ gii thut chương trình điu khin Pic 16F887 (Master):

86

6.2 Lưu đồ gii thut chương trình điu khin Pic 18F4620 (Slave):

87

CHƯƠNG 7 KẾT LUẬN

7.1 Kết qu thc hin đề tài:

− Sau hơn 3 tháng tìm hiểu và thực hiện đề tài “Ứng dụng công nghệ RFID và module GSM/GPRS vào hệ thống ngôi nhà thông minh”, nhóm em đã được kết quả

như sau:

• Xây dựng được mô hình để ứng dụng điều khiển các thiết bị (3 đèn, 2 động cơ). • Hệ thống có thể hoạt động theo 2 chếđộ: Manual (điều khiển bằng tay) và điều

Một phần của tài liệu LUẬN VĂN ĐIỆN TỬ ỨNG DỤNG CÔNG NGHỆ RFID VÀ MODULE GSM GPRS VÀO HỆ THỐNG NGÔI NHÀ THÔNG MINH (Trang 85)