1. Trang chủ
  2. » Kỹ Thuật - Công Nghệ

Nghiên cứu thiết kế chế tạo hệ thống quản lý điện ứng dụng trong các trường học

80 317 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 80
Dung lượng 2,35 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Pic nhận tín hiệu vào từ 2 bộ Led hồng ngo i, từ bàn phím, từ khối giao tiếp máy tính cổng COM, tính toán, xử lý theo thuật to n được lập trình sẵn để đưa ra lệnh đ ng mở hệ thống điện v

Trang 1

-

BÙI VĂN LƯỢNG

NGHIÊN CỨU THIẾT KẾ CHẾ TẠO HỆ THỐNG QUẢN

LÝ ĐIỆN ỨNG DỤNG TRONG CÁC TRƯỜNG HỌC

LUẬN VĂN THẠC SỸ KỸ THUẬT

KỸ THUẬT ĐIỆN TỬ

HÀ NỘI - 2015

Trang 2

-

BÙI VĂN LƯỢNG

Nghiên Cứu - Thiết Kế - Chế Tạo Hệ Thống Quản Lý Điện

Ứng Dụng Trong Các Trường Học

Chuyên ngành: Kỹ thuật điện tử

LUẬN VĂN THẠC SỸ KỸ THUẬT

KỸ THUẬT ĐIỆN TỬ

NGƯỜI HƯỚNG DẪN KHOA HỌC

TS NGUYỄN PHAN KIÊN

HÀ NỘI - 2015

Trang 3

LỜI C ĐO N

T i l Bùi Văn Lượng h c vi n cao h c chuy n ng nh k thuật điện tử

i h c B ch Khoa H Nội xin cam đoan luận văn n y được thực hiện một

c ch nghi m t c trung thực tu n th đ ng c c quy định c a Nh nư c v c c quy t c chung c a quốc tế v nghi n c u khoa h c k thuật Nếu c ất k vi

ph m n o t i xin ho n to n chịu tr ch nhiệm

Hà Nội ng y th ng 03 năm 2015

H c viên thực hiện

BÙI VĂN LƯỢNG

Trang 4

MỤC LỤC

L I M O N i

MỤC LỤC ii

MỞ ẦU 1

hương 1 TÌM HIỂU YÊU CẦU THỰC TẾ 3

1.1.Lựa Ch n Giải Pháp 4

1.1.1.V Mặt Công Nghệ 4

1.1.2.V Mặt Thiết Kế 4

1.1.3.Các Yêu Cầu 5

1.1.4 M i Trường Làm Việc C a Hệ Thống 6

1.2.Lựa Ch n Phần C ng 7

1.2.1.Vi i u Khiển PIC16F877A 7

1.2.4 Khối Kết Nối Máy Tính – Sử Dụng Cổng OM được đi u khiển thông qua RS232 19

1.2.5.Khối ộng Lực – ULN2803 26

hương 2 THIẾT KẾ HỆ THỐNG 27

2.1.Mô Hình Hệ Thống 27

2 2 M Hình hương Trình 28

2 3 Sơ ồ Khối M ch i u Khiển 29

2.4.Thuật To n hương Trình Tr nM y h Và Máy Tr m 30

2.5.Thuật To n hương Trình Tr n M ch i u Khiển 32

hương 3 THIẾT KẾ CHI TIẾT 34

3.1.Khối Nguồn 34

3.2.Khối i u Khiển Trung Tâm 35

3.3.Khối Thiết Bị Ngo i Vi (Cảm Biến, Nút Bấm, Hiển Thị) 37

3.3.1 Khối Nút Bấm 37

3.3.2 Khối Hiển Thị 38

3.3.3 Khối Cảm Biến 38

3.4.Khối M ch ộng Lực 41

Trang 5

3.5.Khối Kết Nối Máy Tính 42

3 6 hương Trình h y Trên Máy Tr m (ClientApp) 43

3.6.1 Kết Nối ClientApp V i M ch i u Khiển 43

3.6.2 Kết Nối ClientApp V i ServerApp 45

3 7 hương Trình h y Trên Máy Ch (ServerApp) 47

hương 4 CHẠY THỬ ÁNH GIÁ NÂNG ẤP 50

4.1.Ch y Thử 50

4 2 nh Gi 51

4 2 1 t ược 51

4.2.2 Cần Cải Thiện 51

4.3 Nâng Cấp, Cải Tiến Hệ Thống 51

4 3 1 Hư ng cải thiện chất lượng c a hệ thống 51

4 3 2 Hư ng cải thiện ch c năng c a hệ thống 57

hương 5 KẾT LUẬN VÀ KIẾN NGHỊ 59

TÀI LIỆU THAM KHẢO 60

PHỤ LỤC 61

Trang 6

DANH MỤC C C HI U C C CH VIẾT TẮT

PIC Programmable Integrated Circuit

(http://www.technologystudent.com)

Vi m ch có khả năng lập trình được

TCP Transmission Control Protocol Giao th c đi u khiển

GSM Global System for Mobile

Communications

Hệ thống thông tin di động toàn cầu

Trang 7

DANH MỤC CÁC HÌNH VẼ ĐỒ THỊ

Hình 1: Sơ ồ Chân PIC 16F877A 7

Hình 2: Sơ ồ Khối Ch c Năng a PIC16F877A 8

Hình 3: Sơ ồ Khối Vi i u Khiển PIC16F877A 10

Hình 4: Bộ Nh RAM C a PIC16F877A 13

Hình 5: M ch T o Parity Chẵn, Khi Tín Hiệu ng 24

Hình 6: M ch T o Parity Chẵn, Khi Tín Hiệu Sai 24

Hình 7: IC ULN 2803 26

Hình 8: Mô Hình Hệ Thống 27

Hình 9: Mô Hình Chương Trình 28

Hình 10: Sơ ồ Khối M ch i u Khiển 29

Hình 11: Thuật Toán Chương Trình Trên Máy Ch Và Máy Tr m 31

Hình 12: Thuật Toán Chương Trình Trên M ch i u Khiển 32

Hình 13: Khối Nguồn 34

Hình 14: Khối i u Khiển Trung Tâm 36

Hình 15: Khối Nút Bấm 37

Hình 16: Khối Hiển Thị 38

Hình 17: Khối Thu 40

Hình 18: Khối M ch ộng Lực 41

Hình 19: Khối Kết Nối Máy Tính 42

Hình 20: ClientApp Khi Khởi T o 43

Hình 21: ClientApp Khi Kết Nối COM 44

Hình 22: ClientApp Khi Kết Nối ServerApp 45

Hình 23: ServerApp Yêu Cầu "ONLIGHT" 46

Hình 24: ServerApp Yêu Cầu "OFF LIGHT" 46

Hình 25: ServerApp Khi Khởi T o 47

Hình 26: ServerApp Khi Kết Nối ClientApp 48

Hình 27: Nhi u ClentApp Yêu cầu ServerApp 49

Hình 28: Module PIR Trên Thị Trường 53

Hình 29: Thông Tin Lens C a PIR module 54

Hình 30: Module GSM Trên Thị Trường 56

Hình 31: Xuất Cải Thiện Hệ Thống 57

Hình 32: Mục Tiêu Sau Khi Cải Thiện Hệ Thống 58

Trang 8

MỞ ĐẦU

Hiện nay, sản lượng điện dùng trong chiếu sáng ở nư c ta chiếm khoảng 35% tổng điện năng ti u thụ (trên thế gi i tỷ lệ này chỉ chiếm 16-17%) Nguyên nhân là do việc thiết kế, l p đặt thiết bị chiếu sáng còn tiêu tốn năng lượng, bên c nh đ việc sử dụng điện trong chiếu sáng còn rất lãng phí Việc sử dụng điện thông minh nói chung, trong chiếu s ng n i ri ng đã l vấn

đ cấp thiết

Ngày nay, việc ng dụng hệ thống nhúng vào các hệ thống đi u khiển ngày càng trở nên phổ biến: từ những ng dụng đơn giản, quy mô nhỏ như

đi u khiển chốt đèn giao th ng đi u khiển các hệ thống đi u khiển trên ô tô,

đi u khiển độ sáng tối c a hệ thống chiếu sáng đến những ng dụng ph c t p như hệ thống đi u khiển robot, bộ kiểm soát trong các nhà máy, hay quan

tr ng hơn là hệ thống kiểm so t c c m y năng lượng h t nhân.Các hệ thống tự động trư c đ y sử dụng nhi u công nghệ kh c nhau như hệ thống tự động ho t động bằng nguyên lý khí nén, th y lực rơ le cơ điện, m ch điện tử số phần nhi u nghiêng v cơ khí chính x c c c hệ thống ấy c ưu điểm v độ b n bỉ, chính x c nhưng l i gặp nhi u kh khăn v tính linh ho t, khả năng n ng cấp hay tích hợp Ngày nay, hầu hết các hệ thống đi u khiển, tự động hiện đ i đ u được xây dựng trên n n tảng c a các hệ thống nhúng, hệ thống có những ưu điểm rõ rệt: chính xác, b n bỉ, tính linh ho t cao, khả năng n ng cấp, tích hợp cao

ặt vấn đ v giải quyết thực tr ng sử dụng điện t i c c trường h c, công sở văn phòng đang c tính lãng phí cao g y thất thu và lãng phí hàng

trăm tỉ đồng mỗi năm Em thực hiện luận văn:“Nghiên cứu – Thiết Kế - Chế Tạo hệ thống quản lý điện ứng dụng trong các trường học“ Hệ thống tập

trung tự động hóa hệ thống chiếu sáng, thiết lập m i trường đi u khiển hệ thống điện từ xa, thực hiện đi u khiển tập trung, qua đ giảm thiểu tối đa lãng

Trang 9

phí phụ thuộc vào ý th c người sử dụng Hệ thống mang tính ng dụng cao, không tập trung vào yếu tố cập nhật công nghệ Mục đích ho n thiện hệ thống đơn giản cho người sử dụng (không yêu cầu quá cao trình độ người dụng), giá thành thấp nhất (sản xuất đ i tr ) độ ổn định cao (sử dụng tốt trong nhà trường, bệnh viện)

Trang 10

Chương 1 TÌM HIỂU YÊU CẦU THỰC TẾ

Hiện nay hầu hết việc gi m s t v đi u khiển chiếu sáng trong các phòng công cộng được đi u khiển bằng tay th ng qua đ ng mở các công t c, các aptomat, cầu dao i u này khá thuận lợi v đơn giản vì ta có thể bật t t đèn theo nhu cầu sử dụng Tuy nhiên, do là phòng công cộng nên việc bật t t đèn hầu như do người trực khu nh đ l m Việc làm này phụ thuộc nhi u vào

ý th c c a người sử dụng, nhi u khi bị bỏ qua, g y lãng phí điện rất l n đặc biệt trong hoàn cảnh nư c ta đang thiếu điện một cách trầm tr ng như hiện nay Từ hoàn cảnh thực tế đ xuất hiện nhu cầu tự động h a v đi u khiển từ

xa việc đ ng ng t hệ thống điện

Trên thị trường hiện nay đã c những sản phẩm bật t t đèn th ng minh

hư ng t i mục đích tiết kiệm điện trong chiếu s ng như:

 SmartLight do Hàn Quốc sản xuất: ược tích hợp sensor cảm ng hồng ngo i thân nhiệt đèn sẽ tự động được bật khi c người đi v o vùng cảm ng và t t khi kh ng c người Thiết bị này tích hợp luôn

bộ đi u khiển v i đèn trong một sản phẩm Do đ gi th nh cao v không thích hợp cho các phòng cần lượng chiếu sáng l n, không thay đổi được lo i ng đèn theo y u cầu

 Hệ thống bật t t đèn tự động sử dụng các IC số và m ch Logic cho phép ta dựa v o lượng người v o ra để đ ng ng t các công t c một cách tự động Hệ thống này có cấu t o đơn giản, rẻ, không phải lập trình mà chỉ dựa vào các m ch Logic… nhưng tính linh động không cao, khó chỉnh định khi đi u kiện làm việc thay đổi, ít có khả năng nâng cấp mở rộng hệ thống

Trong c c trường h c phòng đi u trị c a bệnh viện, khi m lưu lượng người không l n và có thể kiểm so t được việc đếm người qua cửa thì ta hoàn toàn có thể áp dụng hệ thống đèn th ng minh sử dụng Vi đi u khiển được lập

Trang 11

trình để bật đèn khi c người và t t khi kh ng c người, hoặc thực hiện bật t t

ở chế độ đi u khiển qua máy tính i u này vừa tiện lợi cho m i người: ng dụng công nghệ tự động hóa vào cuộc sống con người đảm bảo đ ánh sáng trong quá trình làm việc, giảm thiểu thời gian cho quá trình quản lý… đồng thời góp phần giải quyết vấn đ tiết kiệm điện năng trong thời k mà nhu cầu điện tiêu thụ đã vượt quá khả năng cung cấp c a c c nh m y điện hiện nay

1.1.Lựa Chọn Giải Pháp

1.1.1.Về Mặt Công Nghệ

Qua phân tích ở tr n em đưa ra giải pháp xây dựng hệ thống đi u khiển đèn th ng minh cho c c phòng h c: đi u khiển bật t t đèn qua việc kiểm soát lượng người ra vào phòng, kết hợp v i việc đi u khiển từ xa qua quy trình

đi u khiển tập trung Thu nhận tín hiệu rồi xử lý tín hiệu khi c người vào phòng, nếu đèn đang ật thì vẫn bật đèn chưa ật thì bật đèn l n Khi m i người ra hết khỏi phòng thì t t đèn đi Trong qu trình l m việc hệ thống luôn hiển thị số người còn đang ở trong phòng để tiện cho việc kiểm tra, theo dõi Bên c nh đ việc đi u khiển còn có thể được thực hiện qua m y tính dư i client và trên server, hoặc thực hiện bật t t bằng công t c trực tiếp trên m ch

Trang 12

thể thay thế module thu phát hồng ngo i bằng module đ c thẻ từ có mã

h a c nh n người dùng, cao hơn c thể sử dụng senser phát hiện chuyển động hoặc camera và thuật to n để nhận d ng người ra vào, qua

đ n ng cao tính chuy n nghiệp c a hệ thống

 Bộ xử lý trung tâm dùng vi đi u khiển PIC 16F877A: Vi xử lý trung tâm được lập trình (dùng ngôn ngữ C để lập trình) để xử lý đi u khiển hoàn toàn ho t động c a m ch Pic nhận tín hiệu vào từ 2 bộ Led hồng ngo i, từ bàn phím, từ khối giao tiếp máy tính (cổng COM), tính toán,

xử lý theo thuật to n được lập trình sẵn để đưa ra lệnh đ ng mở hệ thống điện và hiển thị số người hiện đang trong phòng

 Khối hiển thị dùng Led 7 thanh: lấy tín hiệu ra từ bộ xử lý trung tâm sau đ hiển thị số người trong phòng

 Khối động lực dùng role 5V Role được đi u khiển trực tiếp bằng IC chuyên dụng ULN2803, IC sẽ nhận tín hiệu đi u khiển từ khối đi u khiển trung t m để thực hiện đ ng mở role qua đ nguồn điện sẽ được

đ ng mở tương ng

 Thiết kế chương trình đi u khiển trên cả máy ch (server application)

và máy tr m (client application) Thực hiện đi u khiển tập trung qua server Mô hình lựa ch n l m hình đi u khiển hình sao, v i khả năng

đi u khiển độc lập cho nhi u client

1.1.3.Các Yêu Cầu

 Hệ thống đi u khiển đèn th ng minh n y p dụng cho các phòng h c

Vi thế cấu hình cơ ản mà hệ thống phải đi u khiển như sau:

 Số lượng người trong phòng tối đa kh ng qu 99 người

 Phòng chỉ có một cửa ra vào

 Ở một thời điểm chỉ c 1 người qua cửa

 người đi v o thì ật đèn v đi ra hết thì t t đèn

 Hệ thống có 2 chế độ làm việc tự động và bằng tay Tín hiệu đi u kiển bằng tay c độ ưu ti n cao nhất

Trang 13

 Làm việc v i điện áp 220V/50Hz

 Sensor và công nghệ tùy ch n

 Có khả năng n ng cấp, cải tiến

 Khả năng đi u khiển nguồn điện t i các phòng có khoảng cách xa (>20m) Việc truy n tải tín hiệu thực hiện qua dây dẫn (vì hệ thống được thực hiện trong m i trường bệnh viện v trường h c để đảm bảo

s c khỏe cho người sử dụng nên không thực hiện truy n tải tín hiệu qua wifi)

1.1.4 Môi Trường Làm Việc Của Hệ Thống

 Thu nhận tín hiệu liên tục khi c người ra vào

 Nhiệt độ m i trường: trong nhà 100 đến 400

C

 Hệ thống cấp điện liên tục cho m ch

Trang 14

1.2.Lựa Chọn Phần Cứng

1.2.1.Vi Điều Khiển PIC16F877A

1.2.1.1.Sơ đồ chân vi điều khiển PIC 16F877A

Hình 1: Sơ Đồ Chân PIC 16F877A

Trang 15

Hình 2: Sơ Đồ Khối Chức Năng Của PIC16F877A 1.2.1.2.Một vài thông số về vi điều khiển PIC 16F877A

y l vi đi u khiển thuộc h PIC16Fxxx v i tập lệnh gồm 35 lệnh c độ dài 14 bit Mỗi lệnh đ u được thực thi trong một chu kì xung clock Tốc độ

ho t động tối đa cho phép l 20 MHz v i một chu kì lệnh là 200ns Bộ nh chương trình 8Kx14 it ộ nh dữ liệu 368x8 byte RAM và bộ nh dữ liệu EEPROM v i dung lượng 256x8 byte Số PORT I/O là 5 v i 33 pin I/O Các đặc tính ngo i vi bao gồm các khối ch c năng sau:

 Timer0: bộ đếm 8 bit v i bộ chia tần số 8 bit

 Timer1: bộ đếm 16 bit v i bộ chia tần số, có thể thực hiện ch c năng đếm dựa vào xung clock ngo i vi ngay khi vi đi u khiển ho t động ở chế độ sleep

Trang 16

 Timer2: bộ đếm 8 bit v i bộ chia tần số, bộ postcaler Hai bộ Capture/so

c đặc tính Analog: 8 kênh chuyển đổi ADC 10 bit Hai bộ so sánh

Bộ nh flash v i khả năng ghi x a được 100.000 lần Bộ nh EEPROM v i khả năng ghi x a được 1.000.000 lần Dữ liệu bộ nh EEPROM có thể lưu trữ tr n 40 năm Khả năng tự n p chương trình v i sự đi u khiển c a phần m m N p được chương trình ngay trên m ch điện ICSP (In Circuit Serial Programming) thông qua 2 chân Watchdog Timer v i bộ dao động trong Ch c năng ảo mật mã chương trình hế độ Sleep Có thể ho t động v i nhi u d ng Oscillator khác nhau

Trang 17

1.2.1.3 Sơ đồ khối vi điều khiển PIC 16F877A

Hình 3: Sơ Đồ Khối Vi Điều Khiển PIC16F877A 1.2.1.4 Tổ chức bộ nhớ

Cấu trúc bộ nh c a vi đi u khiển PIC16F877A bao gồm bộ nh chương trình (program memory) và bộ nh dữ liệu (data memory)

Bộ nh chương trình c a vi đi u khiển PIC16F877A là bộ nh flash , dung lượng bộ nh 8k word (1 word= 14 it) v được phân thành nhi u trang (từ page 0 đến page 3) Như vậy bộ nh chương trình có khả năng ch a được

Trang 18

8*1024 =8192 lệnh (vì một lệnh sau khi mã hóa sẽ c dung lượng 1 word (14 bit) ể mã h a được địa chỉ c a 8k word bộ nh chương trình bộ đếm chương trình c dung lượng 13 it (P <12:0>) Khi vi đi u khiển reset , bộ đếm chương trình sẽ chỉ đến địa chỉ 0000h (reset vector) Khi có ng t xảy ra ,

bộ đếm chương trình sẽ chỉ đến địa chỉ 0004h (interrupt vector) Bộ nh chương trình kh ng ao gồm bộ nh stack sẽ được đ cập cụ thể trong phần sau

Bộ nh dữ liệu c a PIC là bộ nh EEPROM được chia ra làm nhi u ank ối v i PIC16F877A bộ nh dữ liệu được chia ra làm 4 bank Mỗi ank c dung lượng 128 byte, bao gồm các thanh ghi có ch c năng đặc biệt SFG (Special Function Register) nằm ở c c vùng địa chỉ thấp và các thanh ghi mục đích chung GPR (General Purpose Pegister) nằm ở vùng địa chỉ còn

l i trong ank c thanh ghi SFR thường xuy n được sử dụng (ví dụ như thanh ghi STATUS) sẽ được đặt ở tất cà các bank c a bộ nh dữ liệu giúp thuận tiện trong quá trình truy xuất và làm giảm b t lệnh c a chương trình Stack không nằm trong bộ nh chương trình hay ộ nh dữ liệu mà là một vùng nh đặc biệt kh ng cho phép đ c hay ghi Khi lệnh LL được thực hiện hay khi một ng t xảy ra l m chương trình ị rẽ nhánh, giá trị c a bộ đếm chương trình P tự động được vi đi u khiển cất vào trong stack Khi một trong các lệnh RETURN RETLW hat RETFIE được thực thi, giá trị PC sẽ tự động được lấy ra từ trong stack vi đi u khiển sẽ thực hiện tiếp chương trình theo đ ng qui trình định trư c

Bộ nh Stack trong vi đi u khiển PIC h 16F87xA có khả năng ch a được 8 địa chỉ và ho t động theo cơ chế xoay vòng Nghĩa l gi trị cất vào bộ

nh Stack lần th 9 sẽ ghi đè l n gi trị cất vào Stack lần đầu tiên và giá trị cất vào bộ nh Stack lần th 10 sẽ ghi đè l n gi trị 6 cất vào Stack lần th 2 Cần chú ý là không có cờ hiệu nào cho biết tr ng th i stack do đ ta kh ng iết được khi nào stack tràn Bên c nh đ tập lệnh c a vi đi u khiển dòng PIC

Trang 19

cũng kh ng c lệnh POP hay PUSH, các thao tác v i bộ nh stack sẽ hoàn

to n được đi u khiển bởi CPU

1.2.2 Các cổng xuất nhập của PIC16F877A

Cổng xuất nhập (I/O port) chính l phương tiện m vi đi u khiển dùng để tương t c v i thế gi i bên ngoài Sự tương t c n y rất đa d ng và thông qua

qu trình tương t c đ ch c năng c a vi đi u khiển được thể hiện một cách rõ ràng

Một cổng xuất nhập c a vi đi u khiển bao gồm nhi u chân (I/O pin), tùy theo cách bố trí và ch c năng c a vi đi u khiển mà số lượng cổng xuất nhập

và số lượng chân trong mỗi cổng có thể khác nhau Bên c nh đ do vi đi u khiển được tích hợp sẵn n trong c c đặc tính giao tiếp ngo i vi nên bên c nh

ch c năng l cổng xuất nhập th ng thường, một số chân xuất nhập còn có thêm các ch c năng kh c để thể hiện sự t c động c a c c đặc tính ngo i vi nêu

tr n đối v i thế gi i bên ngoài Ch c năng c a từng chân xuất nhập trong mỗi cổng hoàn toàn có thể được xác lập v đi u khiển được thông qua các thanh ghi SFR li n quan đến chân xuất nhập đ

Trong vi đi u khiển PIC16F877A có 5 cổng:

 Cổng A gồm 6 chân: RA0, RA1 RA5

 Cổng B gồm 8 chân: RB0, RB1, RB7

 Cổng C gồm 8 chân: RC0, RC1, RC7

 Cổng D gồm 8 chân: RD0, RD1, RD7

 Cổng E gồm 3 chân: RE0, RE1, RE2

Mỗi cổng thực chất được quản lý bởi các thanh ghi PORTA, PORTB, PORTC, PORTD, PORTE nằm trong bộ nh RAM c a vi đi u khiển Xem hình sau:

Trang 20

Hình 4: Bộ Nhớ RAM Của PIC16F877A

a Port A

Port A (RPA) bao gồm 6 I/O pin y l c c ch n “hai chi u” ( idirectional pin) nghĩa l c thể xuất và nhập được Ch c năng I/O n y được đi u khiển bởi thanh ghi TRIS (địa chỉ 85h) Muốn xác lập ch c năng c a một chân trong PortA là input ta “set” it đi u khiển tương ng v i ch n đ trong thanh ghi TRIS v ngược l i, muốn xác lập ch c năng c a một chân trong Port A là output ta “clear” it đi u khiển tương ng v i ch n đ trong thanh ghi TRIS Thao t c n y ho n to n tương tự đối v i các PORT còn l i Bên c nh

đ Port còn l ngõ ra c a bộ ADC, bộ so sánh, ngõ vào analog ngõ vào xung

Trang 21

clock c a Timer0 và ngõ vào c a bộ giao tiếp MSSP (Master Synchronous Serial Port)

c thanh ghi SFR li n quan đến Port A bao gồm:

 Port (địa chỉ 05h) : ch a giá trị các pin trong

 Port TRIS (địa chỉ 85h) : đi u khiển xuất nhập

 M ON (địa chỉ 9 h) : thanh ghi đi u khiển bộ so sánh

 VR ON (địa chỉ 9Dh) : thanh ghi đi u khiển bộ so s nh điện áp

 D ON1 (địa chỉ 9Fh) : thanh ghi đi u khiển bộ ADC

Thanh ghi PORTA phản ánh tr ng thái c a các chân cổng nghĩa l muốn tín hiệu đầu ra c a các chân cổng như thế nào ta chỉ việc đưa gi trị vào các bit tương ng tr n thanh ghi PORT ũng như khi đ c giá trị c a thanh ghi PORTA ta sẽ biết được tr ng thái c a các chân cổng A

Ví dụ:

Muốn RA0 ở m c logic 1 (m c 5V), RA1 ở m c logic 0 (m c 0V), RA2 ở

m c logic 1, RA3 ở m c logic 0, RA4 ở m c logic 1, RA5 ở m c logic 1, ta chỉ việc gán giá trị 000110101 cho thanh ghi PORTA

RA5 RA4 RA3 RA2 RA1 RA0

X: không quan tâm

b Port B

Port B (RPB) gồm 8 pin I/O Thanh ghi đi u khiển xuất nhập tương ng là TRISB Bên c nh đ một số chân c a Port B còn đươc sử dụng trong quá trình

n p chương trình cho vi đi u khiển v i các chế độ n p khác nhau Port B còn

li n quan đến ng t ngo i vi và bộ Timer0 Port B còn được tích hợp ch c năng điện trở kéo l n được đi u khiển bởi chương trình

c thanh ghi SFR li n quan đến Port B bao gồm:

 Port B (địa chỉ 06h,106h) : ch a giá trị các pin trong

Trang 22

 Port B TRISB (địa chỉ 86h 186h) : đi u khiển xuất nhập

 OPTION_REG(địa chỉ 81h 181h): đi u khiển ng t ngo i vi và bộ Timer0

c Port C

PortC (RPC) gồm 8 pin I/O Thanh ghi đi u khiển xuất nhập tương ng là TRISC Bên c nh đ Port còn ch a các chân ch c năng c a bộ so sánh, bộ Timer1, bộ PWM và các chuẩn giao tiếp nối tiếp I2C, SPI, SSP, USART

c thanh ghi đi u khiển li n quan đến Port C:

 Port (địa chỉ 07h) : ch a giá trị các pin trong

 Port TRIS (địa chỉ 87h) : đi u khiển xuất nhập

d.Port D

Port D (RPD) gồm 8 ch n I/O thanh ghi đi u khiển xuất nhập tương ng là TRISD Port D còn là cổng xuất dữ liệu c a chuẩn giao tiếp PSP (Parallel Slave Port)

c thanh ghi li n quan đến Port D bao gồm:

 Thanh ghi Port D: ch a giá trị các pin trong Port D

 Thanh ghi TRISD: đi u khiển xuất nhập

 Thanh ghi TRISE: đi u khiển xuất nhập Port E và chuẩn giao tiếp PSP

e.Port E

Port E (RPE) gồm 3 ch n I/O Thanh ghi đi u khiển xuất nhập tương ng là TRISE Các chân c a PortE có ngõ vào analog Bên c nh đ Port E còn l c c

ch n đi u khiển c a chuẩn giao tiếp PSP

c thanh ghi li n quan đến Port E bao gồm:

 Port E : ch a giá trị các chân trong PortE

Trang 23

 TRISE : đi u khiển xuất nhập và xác lập các thông số cho chuẩn giao tiếp PSP

 D ON1: thanh ghi đi u khiển khối ADC

Tính đa chức năng của một chân trên vi điều khiển:

Nhìn v o sơ đồ chân c a vi đi u khiển, ta có thể thấy một số chân c a vi đi u khiển có tên gồm nhi u phần v i dấu g ch chéo Ví dụ: RA0/AN0,

RC7/RX/DT, RC6/TX/CK

y chính l tính đa ch c năng c a một ch n tr n vi đi u khiển hay còn

g i là sự dồn kênh

Ý nghĩa c a nó là:

Bình thường nếu kh ng được c i đặt thì tất cả các chân trên 5 cổng A, B,

C, D, E là các chân vào ra số I/O

Nếu trong chương trình ta c c i đặt một ch c năng n o đ như RS232 ADC hoặc PWM v v thì c c ch n tương ng v i ch c năng đó sẽ ho t động theo ch c năng đ Khi đ ch n n y sẽ kh ng được dùng làm chân vào ra số như ình thường nữa

Ví dụ: ình thường chân RA0/ANO là chân vào ra số RA0, nếu ch c năng D v i kênh vào tín hiệu analog l k nh 0 được c i đặt khi đ ch n RA0 /AN0 sẽ là chân vào c a bộ ADC, t c là ho t động theo ch c năng N0 Tương tự như vậy khi c i đặt giao tiếp v i thiết bị ngo i vi theo chuẩn RS232, chân vào ra số RC7/RX/DT sẽ ho t động như đầu vào dữ liệu RS232

t c là ch c năng RX c a chân này

Cài đặt vào/ra cho các chân vào ra số trên các cổng:

Các chân vào/ra số tr n vi đi u khiển PIC phải được c i đặt là chân vào hoặc chân ra thì m i ho t động đ ng ch c năng Việc một chân trên cổng X (X= B E) được qui định l đầu ra hay đầu vào phụ thuộc v o it tương ng trên thanh ghi TRISX (X=A,B, E) là 0 hay 1

Ví dụ: Muốn 4 chân thấp (bit thấp) trên cổng B (RB0-RB3) là chân vào,

4 chân cao (bit cao) trên cổng B (RB4-RB7) là chân ra thì giá trị các bit trên thanh ghi TRISB sẽ là:

Trang 24

0 0 0 0 1 1 1 1

Gợi ý dễ nh là:

ể chân RB.m (m=0-7) l đầu ra, t c Output thì giá trị TRISB.m là 0

L đầu vào, t c Input thì giá trị TRISB.m là 1

Tương tự như vậy đối v i các chân trên các cổng còn l i

1.2.3.Ngắt (Interrupt)

PI 16F877 c đến 15 nguồn t o ra ho t động ng t được đi u khiển bởi thanh ghi INTCON (bit GIE) Bên c nh đ mỗi ng t còn có một it đi u khiển

và cờ ng t riêng Các cờ ng t vẫn được set ình thường khi thỏa mãn đi u kiện

ng t xảy ra bất chấp tr ng thái c a bit GIE, tuy nhiên ho t động ng t vẫn phụ thuộc v o it GIE v c c it đi u khiển kh c Bit đi u khiển ng t RB0/INT và TMR0 nằm trong thanh ghi INTCON, thanh ghi này còn ch a bit cho phép các

ng t ngo i vi PEIE Bit đi u khiển các ng t nằm trong thanh ghi PIE1 và PIE2

Cờ ng t c a các ng t nằm trong thanh ghi PIR1 và PIR2

Trong một thời điểm chỉ có một chương trình ng t được thực thi chương trình ng t được kết thúc bằng lệnh RETFIE Khi chương trình ng t được thực thi, bit GIE tự động được x a địa chỉ lệnh tiếp theo c a chương trình chính được cất vào trong bộ nh Stack và bộ đếm chương trình sẽ chỉ đến địa chỉ 0004h Lệnh RETFIE được dùng để thoát khỏi chương trình ng t và quay trở

v chương trình chính đồng thời it GIE cũng sẽ được set để cho phép các

ng t ho t động trở l i Các cờ hiệu được dùng để kiểm tra ng t n o đang xảy

ra và phải được xóa bằng chương trình trư c khi cho phép ng t tiếp tục ho t động trở l i để ta có thể phát hiện được thời điểm tiếp theo mà ng t xảy ra

ối v i các ng t ngo i vi như ng t từ chân INT hay ng t từ sự thay đổi

tr ng thái các pin c a PORTB (PORTB Interrupt on change), việc x c định

ng t nào xảy ra cần 3 hoặc 4 chu kì lệnh tùy thuộc vào thời điểm xảy ra ng t

Trang 25

Cần chú ý là trong quá trình thực thi ng t, chỉ có giá trị c a bộ đếm chương trình được cất vào trong Stack, trong khi một số thanh ghi quan tr ng

sẽ kh ng được cất và có thể bị thay đổi giá trị trong quá trình thực thi chương trình ng t i u n y n n được xử lý bằng chương trình để tránh hiện tượng trên xảy ra

a.Ngắt INT

Ng t này dựa trên sự thay đổi tr ng thái c a pin RB0/INT C nh t c động gây ra ng t có thể là c nh lên hay c nh xuống v được đi u khiển bởi bit INTEDG (thanh ghi OPTION_ REG <6>) Khi có c nh t c động thích hợp xuất hiện t i pin RB0/INT, cờ ng t INTF được set bất chấp tr ng thái các bit

đi u khiển GIE và PEIE Ng t này có khả năng đ nh th c vi đi u khiển từ chế

độ sleep nếu bit cho phép ng t được set trư c khi lệnh SLEEP được thực thi

b.Ngắt do sự thay đổt trạng thái các PIN trong Port B

c pin PORTB<7:4> được dùng cho ng t n y v được đi u khiển bởi bit RBIE (thanh ghi INTCON<4>) Cờ ng t c a ng t này là bit RBIF (INTCON<0>)

Trang 26

1.2.4 Khối Kết Nối Máy Tính – Sử Dụng Cổng COM được điều khiển thông qua RS232

1.2.4.1 Tổng Quan Về RS232

a.Đặt vấn đề

Vấn đ giao tiếp giữa P v vi đi u khiển rất quan tr ng trong các ng dụng đi u khiển đo lường Ghép nối qua cổng nối tiếp RS232 là một trong những k thuật được sử dụng rộng rãi để ghép nối các thiết bị ngo i vi v i máy tính.Nó là một chuẩn nối tiếp dùng định d ng kh ng đồng bộ (trong một thời điểm chỉ có một it được gửi đi d c đường truy n), kết nối nhi u nhất là 2 thiết bị, chi u dài kết nối l n nhất cho phép để đảm bảo truy n dẫn dữ liệu là

12 5m đến 25.4m, tốc độ 20k it/s đ i khi là tốc độ 115kbit/s v i một số thiết

bị đặc biệt

Có hai phiên bản RS232 được lưu h nh trong thời gian tương đối dài là RS232B và RS232C RS232B là phiên bản cũ t i nay ít được dùng RS232C hiện vẫn được dùng v thường được g i là tên ngẵn g n là chuẩn RS232

c m y tính thường có 1 hoặc 2 cổng nối tiếp theo chuẩn RS232 được

g i là cổng om h ng được dùng ghép nối cho máy chiếu, thiết bị đo lường, hay các thiết bị mở rộng khác Trên main máy tính có lo i 9 chân hoặc l i 25

ch n tùy v o đời máy và main c a máy Việc thiết kế giao tiếp v i cổng RS232 cũng tương đối dễ d ng đặc biệt khi ch n chế độ ho t động là không đồng bộ và tốc độ truy n dữ liệu thấp

b.Ưu điểm của giao diện nối tiếp RS232

- Khả năng chống nhiễu c a các cổng nối tiếp tương đối cao

- Thiết bị ngo i vi có thể tháo l p ngay cả khi m y tính đang được cấp điện

- Các m ch điện đơn giản có thể nhận được điện áp nguồn nuôi qua công nối tiếp

Trang 27

c.Những đặc điểm cần lưu ý trong chuẩn RS232

- Trong chuẩn RS232 có m c gi i h n tr n v dư i (logic 0 và 1) là +-12V Hiện nay đang được cố định trở kháng tải trong ph m vi từ 3000 Ω - 7000 Ω

- M c logic 1 c điện áp nằm trong khoảng -3V đến -12V, m c logic 0 từ 3V đến +12V

+ Tốc độ truy n nhận dữ liệu cực đ i là 100kbps ( ngày nay có thể l n hơn)

- Các lối vào phải c điện dung < 2500pF

- Trở kháng tải phải > 3000 Ω nhưng phải <7000 Ω

- ộ dài c a cáp nối giữa máy tính và thiết bị ngo i vi ghép nối qua cổng nối tiếp RS232 kh ng vượt qua 15m nếu chúng ta không sử model trung gian

- Các giá trị tốc độ truy n dữ liệu chuẩn :

50,75,110,750,300,600,1200,2400,4800,9600,19200,28800,38400 56600,11

5200 bps

d.Các mức điện áp đường truyền

RS 232 sử dụng phương th c truy n th ng kh ng đối x ng, t c là sử dụng tín hiệu điện áp chênh lệch giữa dây dẫn v đất Do đ ngay từ đầu tiên

ra đời n đã mang vẻ lỗi thời c a chuẩn TTL(transistor-transistor logic), nó vấn sử dụng các m c điện p tương thích TTL để mô tả các m c logic 0 và 1 Ngoài m c điện áp tiêu chuẩn cũng cố định các giá trị trở kháng tải được đấu vào bus c a bộ phận và các trở kháng ra c a bộ phát

M c điện áp c a tiêu chuẩn RS232 được mô tả như sau:

 M c logic 0 : +3V , +12V

 M c logic 1 : -12V, -3V

Các m c điện áp trong ph m vi từ -3V đến 3V là tr ng thái chuyển tuyến Chính vì từ - 3V t i 3V là ph m vi kh ng được định nghĩa trong trường hợp

Trang 28

thay đổi giá trị logic từ thấp lên cao hoặc từ cao xuống thấp, một tín hiệu phải vượt qua quãng qu độ trong một thơì gian ng n hợp lý i u này dẫn đến việc phải h n chế v điện dung c a các thiết bị tham gia và c a cả đường truy n Tốc độ truy n dẫn tối đa phụ thuộc vào chi u dài c a dây dẫn a số các hệ thống hiện nay chỉ hỗ trợ v i tốc độ 19,2 kbpss

1.2.4.2 Cổng RS232 trên PC

Hầu hết các máy tính cá nhân hiện nay đ u được trang bị ít nhất là 1 cổng Com hay cổng nối tiếp RS232 Số lượng cổng Com có thể lên t i 4 tùy từng lo i main m y tính Khi đ c c cổng om đ được đ nh dấu là Com 1, Com 2, Com 3 Trên đ c 2 lo i đầu nối được sử dụng cho cổng nối tiếp RS232 lo i 9 chân (DB9) hoặc 25 chân (DB25) Tuy hai lo i đầu nối này có cùng song song nhưng hai lo i đầu nối n y được phân biệt bởi cổng đực (DB9) và cổng cái (DB25)

Ta xét sơ đồ chân cổng Com 9 chân (DB25 hiện nay rất ít main còn sử dụng n n kh ng đ cập):

Trên là các kí hiệu chân và hình d ng c a cổng DB9

Chức năng của các chân như sau:

 Pin 1 : Data Carrier Detect (DCD), tín hiệu này tích cực khi Modem nhận được tín hiệu từ tr m từ xa và nó duy trì trong suốt quá trình liên kết

 Pin 2: Receive Data (RxD), nhận dữ liệu

 Pin 3: Transmit Data (TxD), truy n dữ liệu

Trang 29

 Pin 4: Data Termial Ready (DTR), báo DTE sẵn sàng Chân DTR thường ở tr ng thái ON khi thiết bị đầu cuối sẵn sàng thiết lập kênh truy n thông (tự động quay số hay tự động trả lời) DTR ở tr ng thái OFF chỉ khi thiết bị đầu cuối không muốn DCE c a nó chấp nhận lời

g i từ xa

 Pin 5: Signal Ground ( SG), mass c a tín hiệu

 Pin 6: Data Set Ready (DSR), : Báo DCE sẵn sàng, ở chế độ trả lời, 1 tone trả lời và DSR ON sau 2 giây khi Modem nhấc máy

 Pin 7: Request To Send (RTS) đường RTS kiểm soát chi u truy n dữ liệu Khi một tr m cần gửi dữ liệu n đ ng m ch RTS sang ON để báo hiệu v i modem c a nó

 Pin 8: Clear To Send (CTS), khi CTS chuyển sang ON, Modem xác nhận là DTE có thể truy n số liệu Qu trình ngược l i nếu đổi chi u truy n số liệu

 Pin 9: Ring Indicate (RI) : Khi modem nhận được tín hiệu chuông, RI chuyển ON/OFF một cách tuần tự v i chu ng điện tho i để báo hiệu cho tr m đầu cuối Tín hiệu này chỉ thị rằng một modem xa yêu cầu thiết lập liên kết dial-up

1.2.4.3 Quá trình trao đổi dữ liệu

a) Quá trình truyền dữ liệu

Truy n dữ liệu qua cổng nối tiếp RS232 được thực hiện kh ng đồng bộ (t i một thời điểm chỉ có một it được truy n (1 kí tự)) Bộ truy n gửi một bit

b t đầu ( it start) để thông báo cho bộ nhận biết một kí tự sẽ được gửi đến trong lần truy n bit tiếp theo Bit này luôn b t đầu bằng m c 0 Tiếp theo đ l các bit dữ liệu ( its data) được gửi dư i d ng mã ASCII( có thể là 5,6,7 hay 8 bit dữ liệu) Sau đ l một Parity bit ( Kiểm tra bit chẵn, lẻ hay không) và cuối cùng là bit dừng - bit stop có thể là 1, 1,5 hay 2 bit dừng

Trang 30

Tốc độ Bit = Tốc độ Baud * số bít trong một đơn vị tín hiệu

c) Bit chẵn lẻ hay Parity bit

y là bit kiểm tra lỗi tr n đường truy n (là một lo i mã dùng để phát hiện lỗi đơn giản nhất) Thực chất c a quá trình kiểm tra lỗi khi truy n dữ liệu

là bổ xung thêm dữ liệu được truy n để tìm ra hoặc sửa một số lỗi trong quá trình truy n Do đ trong chuẩn RS232 sử dụng một k thuật kiểm tra chẵn lẻ

Một bit chẵn lẻ được bổ sung vào dữ liệu được truy n để cho thấy số lượng các bit "1" được gửi trong một khung truy n là chẵn hay lẻ Nếu một số

lẻ lượng các bit (bao gồm cả bit chẵn lẻ), bị đảo lộn trong khi truy n thông một nhóm bit, thì bit chẵn lẻ sẽ có giá trị kh ng đ ng v do đ o hiệu rằng lỗi trong truy n th ng đã xảy ra V i lý do này, bit chẵn lẻ còn được g i

là một mã phát hiện lỗi, song nó không phải là một mã sửa lỗi, vì nó chẳng có

Trang 31

c ch n o x c định được vị trí c a bit bị lỗi cả Khi lỗi bị phát hiện, dữ liệu thu

được phải bị bỏ đi v phải được truy n thông l i từ đầu Trên kênh truy n có

độ nhiễu cao, việc truy n tải dữ liệu thành công là một việc rất hao tốn thời

gian v đ i khi việc truy n thông còn hầu như kh ng thể thực hiện được nữa

Bit chẵn lẻ có một ưu điểm: nó là một mã tốt nhất chiếm chỉ một bit và chỉ

dùng vài cồng XOR (XOR gate) để t o giá trị mà thôi Nếu khối dữ liệu

truy n bị sai t i 2 bit (xác suất này là rất rất nhỏ) hay bit parity truy n sai thì

m ch parity mất tác dụng

Ví dụ v m ch t o Parity chẵn:

Hình 5: Mạch Tạo Parity Chẵn, Khi Tín Hiệu Đúng

Hình 6: Mạch Tạo Parity Chẵn, Khi Tín Hiệu Sai

Trang 32

1.2.4.4 Sơ đồ ghép nối RS232

Có rất nhi u m ch giao tiếp c a RS232 giữa vi đi u khiển hay các thiết

bị kh c Dư i đ y l những m ch giao tiếp được dùng trong luận văn (M ch dùng IC Max232):

Max232 là IC chuyên dùng cho giao tiếp giữa RS232 và thiết bị ngo i vi Max232 là IC c a hãng Maxim y l I chay ổn định v được sử dụng phổ biến trong các m ch giao tiếp chuẩn RS232 Giá thành c a Max232 phù hợp

và tích hợp trong đ hai kênh truy n cho chuẩn RS232 Dòng tín hiệu được thiết kế cho chuẩn RS232 Mỗi đầu truy n ra và cổng nhận tín hiệu đ u được bảo vệ chống l i sự ph ng tĩnh điện (Có giá trị khoảng 15KV) Ngoài ra Max232 còn được thiết kế v i nguồn +5V cung cấp nguồn công suất nhỏ

Trang 33

1.2.5.Khối Động Lực – ULN2803

Hình 7: IC ULN 2803

ULN2803 l một darlington transistors gồm 8 transistor m c theo kiểu darlington cho phép tải được dòng l n đến 500m ULN2803 c khả năng chịu được điện p cao l n đến 50V.I ULN2803 đã ao gồm diode ảo vệ vi đi u khiển Vì thế c thể đi u khiển motor rơ le m kh ng sợ dòng điện cảm ng

g y nhiễu v hư hỏng vi đi u khiển

Trang 34

tr m bằng các clientApplication

Mạng hình sao (Star Network)

Có tất cả các tr m được kết nối v i một thiết bị trung tâm có nhiệm vụ nhận tín hiệu từ các tr m và chuyển đến tr m đích Tùy theo y u cầu truy n thông trên m ng mà thiết bị trung tâm có thể là hub, switch, router hay máy

ch trung tâm Vai trò c a thiết bị trung tâm là thiết lập các liên kết Point – to – Point

Trang 35

 Ưu điểm là thiết lập m ng đơn giản, dễ dàng cấu hình l i m ng (thêm,

b t các tr m), dễ dàng kiểm soát và kh c phục sự cố, tận dụng được tối

đa tốc độ truy n c a đường truy n vật lý

 Khuyết điểm l độ d i đường truy n nối một tr m v i thiết bị trung tâm

bị h n chế (bán kính khoảng 100m v i công nghệ hiện nay)

2.2.Mô Hình Chương Trình

Hình 9: Mô Hình Chương Trình

hương trình tr n m y ch và máy tr m trao đổi thông tin v i nhau qua đường truy n internet (được thực hiện qua đường truy n c d y) hương trình trên máy tr m v chương trình tr n vi đi u khiển được trao đổi v i nhau thông qua các cổng COM c a máy tr m và các cổng COM trên phần c ng thiết bị

Việc đi u khiển trên từng cấp được lập trình và thiết kế để đ u có thể

ch y độc lập (bên c nh việc nhận lệnh đi u khiển từ cấp trên)

Trang 36

2.3.Sơ Đồ Khối Mạch Điều Khiển

Hình 10: Sơ Đồ Khối Mạch Điều Khiển

M ch đi u khiển được thiết kế và lập trình dựa trên khối vi đi u khiển trung tâm (v i thành phần chính l vi đi u khiển Pic16F877A) Dựa vào các

ng t trên các chân ngo i vi chương trình được n p sẵn tr n vi đi u khiển sẽ nhận được các tín hiệu ngo i vi từ khối senser và khối cổng COM (Khối cổng COM nhận tín hiệu đi u khiển từ ClientApp và ServerApp qua cổng COM trên ClientApp) Qua quá trình tính toán dựa vào thật toán c a chương trình vi

đi u khiển sẽ ra lệnh cho khối hiển thị (Hiển thị số người trong phòng) và khối hành vi (Thực hiện đ ng hoặc ng t nguồn điện trong phòng)

POWER BLOCK

DISPLAY BLOCK

HANDLER BLOCK

SENSER BLOCK

PROCESSOR BLOCK

AC 220v/50

AC 220v/50H

Trang 37

2.4.Thuật Toán Chương Trình TrênMáy Chủ Và Máy Trạm

hương trình được viết thành 2 phần: hương trình cho Server (ch y trên

m y server) v hương trình cho lient ( h y trên máy client) Hai chương trình giao tiếp v i nhau qua cơ chế socket

Một các tổng quát có thể hình dung chương trình ho t động như sau:

 hương trình tr n server khởi động, lấy địa chỉ IP c a Server và khởi

t o một serverSocket thuộc l p TcpListener (L p ch a các thuộc tính dùng để l ng nghe các kết nối từ các TCP network client ) v i một port

cố định (ở đ y em khởi t o v i port 8888) Trong vòng lặp liên tục, serverSocket ở tr ng thái luôn luôn chờ các kết nối từ client

 Bất ký lúc nào, khi có một kết nối từ client chương trình khởi t o một object client thuộc l p handleClient, t i đ y sẽ khởi t o một object Tcp lient để ch a client A hương trình t o ra một thread để thực hiện trao đổi data vào client A T i đ y việc trao đổi data v i client A

sẽ được thực hiện độc lập thông qua thread này

 Khi có một client B bất kì n o đ c request kết nối t i server, quá trình

tr n được lặp l i, theread B được t o ra để thực hiện trao đổi giữa server và client B

 Như vậy chương trình c thể đảm bảo việc nhi u chương trình c thể kết nối t i server trong cùng 1 thời điểm đồng thời việc ho t động giữa

c c client l độc lập

 Nhược điểm: Khi kết nối giữa server và nhi u client đang được duy trì, quá trình truy n lệnh từ server xuống c c client được diễn ra tuần tự

i u đ c nghĩa l server phải truyển tuần tự lệnh xuống client A rồi

m i chuy n lệnh xuống client B được

Trang 38

Hình 11: Thuật Toán Chương Trình Trên Máy Chủ Và Máy Trạm

Trang 39

2.5.Thuật Toán Chương Trình Trên Mạch Điều Khiển

Hình 12: Thuật Toán Chương Trình Trên Mạch Điều Khiển

Ngay khi m ch đi u khiển được khởi động chương trình được n p sẵn

tr n vi đi u khiển PIC16F877A khởi t o và gán các giá trị mặc định cho các biến, port và tris trên vi xử lý đồng thời khởi t o và cho phép ng t RDA(ng t được dùng để trao đổi tín hiệu v i máy tính thông qua cổng COM) và RB (ng t được dùng để nhận tín hiệu từ khối cảm biến).Một vòng lặp liên tục được t o ra, mục đích để b t được tín hiệu ng t RDA và RB

Khi kh ng c tín đi u khiển từ P (được nhận qua ng t RDA), khi có tín hiệu vào qua khối senser (c người vào và ra), vi xử lý nhận tín hiệu và xử

lý theo thuật to n đã được n p sẵn Sau khi tính toán, nếu số người trong phòng kh c 0 vi đi u khiển sẽ xuất tín hiệu đi u khiển ra khối hiển thị, hiển thị số người hiện t i trong phòng đồng thời xuất tín hiệu ra khối m ch động

Trang 40

lực, yêu cầu đ ng rơ le để cấp điện cho phòng Ngược l i, nếu số người trong phòng bằng 0, khối hiển thị sẽ hiển thị giá trị 00 và khối động lực sẽ ng t rơ le

Ngay từ khi có tín hiệu từ PC, tín hiệu từ khối cảm biến vẫn được tiếp nhận (vi xử lý vẫn đếm số người trong phòng, khối hiển thị vẫn hiển thị số người trong phòng) nhưng gi trị tính toán từ khối n y kh ng được vi đi u khiển dùng để đi u khiển khối động lực nữa Muốn khôi phục, chỉ có cách duy nhất là khởi động l i m ch đi u khiển (ấn công t c reset trên m ch)

Ngày đăng: 19/07/2017, 22:25

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
6. Electronic Components Datasheet Search: http://www.alldatasheet.com Link
7. Electronic Forum: http://www.microchip.com/forums/, http://www.dientuvietnam.net/forums/,http://www.picvietnam.com/forum/ Link
9. Wikipedia Webpage (English and Vietnamese): http://en.wikipedia.org, http://vi.wikipedia.org Link
1. Alessandro Rubini &amp; Jonathan Corbet (2001), Linux device driver, O’Reilly &amp; ssociates Inc, 101 Morris Street, Sebastopol, CA 95472, United States Khác
2. Milan Verle (2009), PIC Microcontrollers - Programming in C, mikroElektronika Inc, Batajnički drum 2311186 Zemun Belgrade Khác
3. Tammy Noergaard (2005), Embedded Systems Architecture, Elsevier Inc, Oxford, United Kingdom Khác
4. Timothy D. Green (2008), Embedded Systems Programming With The PIC16F877, A.R.F Products, Inc, Ohio, United States Khác
5. Dương Minh Trí (2005) Sơ đồ chân linh kiện, Nhà xuất bản KH-KT Khác
8. PIC16F87XA Data Sheet, Microchip Technology Inc, 2355 West Chandler Blvd, Chandler, Arizona, USA Khác

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w