Hướng thực hiện để tài...-..--c-ccccsnnheeierrrrrrirrrrrerdrririe CHƯƠNG II : Tổng quan về truyền thông và các chuẩn giao tiếp với máy tính MỤC LỤC LP IE De PHAN MOT: GIGI THIRU DE TÀI
Trang 1PHƯƠNG ÁN TỐI ƯU HOÁ VIỆC CUNG
CẤP ĐIỆN & MÔ PHONG CHUONG
TRINH DIEU KHIEN
Hồ Ngọc Bá
Hà Ngọc Đạt :01DDT1
10101040
Trang 2
1.1
1.2 Hướng thực hiện để tài - c-ccccsnnheeierrrrrrirrrrrerdrririe
CHƯƠNG II : Tổng quan về truyền thông và các chuẩn giao tiếp với máy tính
MỤC LỤC
LP IE (De
PHAN MOT: GIGI THIRU DE TÀI _ CƠ SỞ LÝ THUYET
LOL MO DAU ccccsssssssssssssecsssssssssscsessssssessssscssssssssnanvnnensssssesssessesseeeceeensenset 1
CHUONG I : Tổng quan về điều khiển cung cấp điện tối ưu cho trường
DHDL.KTCN
Yêu cầu của để tài << ĂcE s33 859883 9£ 991 ng ” 5
5
2.1 Các phương thức truyền thông -ce++eserrrtre 9
1 Đơn công _ -s+ằssn*nhhhhhehhthehhtereihhhh hư 9
2 Bán song công ( Half-duplex Communication ) 9
3 Song công ( Full - duplex Communication ) - 9
2.2 _ Truyền thông tuần tự +-ecsrserreerrrrrrrrrrierirre 10
1 Truyền thông bất đồng bộ -+c+cerrereerertre 10
2 Truyền thông đồng bộ -<cerenrerirerrreer 10 2.3 Cổng thông tin nối tIẾp xerseenhneerereerrrrriiire 11
INen 0 7 11
2 Chuẩn RS-422/423 - + S2+trreththrerHrrrrrierrrerrr 14
3 Chuẩn RS-485C net th 11 1 14
IV Điều khiển thông tin nối ep giữa hai thiết bị - 16
CHƯƠNG III: THIẾT KẾ MẠCH DIEU KHIEN GIAM SAT CUNG CAP ĐIỆN
DÙNG VIĐIỀU KHIỂN 89C51
3.1 Chọn phương án thiết kế
1 Tổng quan -‹5 55 cssessetrerererereree TH HH ng tre 19
2 Chức năng từng khốii -++++s+reretereerrrtrrrrrriiie 20 3.2 Thiết kế phần cứng
1 Mạch động lực và phản hồi trạng thái thiết bị - 21
2 Mạch nguồn cung cấp . -‹-:+-+s++++eerereeirrersereirerrre 23
3 Mạch giao tiếp với máy tính qua RS-232 - 23
4 Mạch giao tiếp với máy tính qua mạng RS-485 24
5 Thiết kế mạch 89C51 trên sơ đổ các chân và chức năng của chúng
a Giới thiệu IC 89C 51 -. « - 5+5 neeennresrreeseee 31
b Bố trí chân linh kiện - - «+ << + + 9$sttenteeettree 42
c Giới thiệu các IC sử dụng trong mạch - - 42
\
Trang 3
CHƯƠNG IV :LƯU ĐỒ GIẢI THUẬT CHO TRUYỀN NHẬN DỮ LIỆU CỦA VI
XỬ LÝ TỪ MÁY TÍNH
4.1 Lưu đồ giải thuật -e +c+erreeerrrrrrrtrritrtrrrrdrrrdie 45
4.2_ Chương trình nạp cho ÏC - -++erreeeeeretrerrrrrrrtrrteter 51
PHẦN HAI :CHƯƠNG TRÌNH TRUYỀN THÔNG BẰNG NGÔN NGỮ VB6.0
A I Tổng quan về Visual Basic Ố -cecerrrererrrrrerrree 56
1L Truyền thông nối tiếp dùng Visual Basic - 56
1 Điều khiển truyền thông . -++-+s+ceereeerrrertre 57
2 Các thuộc tính . sss+nnhhhhnhhhn.011 1 11eree 58
3 Sự kiện Oncomm ‹«+++-ssestenreetrterreirrrrerrerrree 63
4 Hỏi vòng RS-232 - «ecsesseinhiererirrrrrrrrriie 65
5 Các thông báo lỗi -. -cccsrsrtneretreerrrrrrrrriirrirrre 66
II Nguyên tắc thiết kế chương trình . -++++-+sersreee+ 67
B Thiết kế giao điện giao tiếp vơi máy tính
1 Giao diện và lưu đồ giải thuật . - 69
2 Chương trình truyền thông giao tiếp vơi máy tính .73
HƯỚNG PHÁTT TRIỂN ĐỀ TÀI 2222555522t2ttrtrrrettrttrrrrrrrd 104
00/1 0Š ẻ 105
TÀI LIỆU THAM KHẢO . -:-555+tsctrttrrrrttrtrrrrrierrrrrrr 106
Trang 4
LỜI MỞ ĐẦU
»> Trong đời sống sinh hoạt hằng ngày thì điện rất quan trong va cần thiết,
nó chi phối hầu hết tất cả các hoạt động ở mọi nơi Tuy vậy , ngành điện không
thể cung cấp được mọi nhu cầu Do vậy ,ta cần phải sử điện một cách hiệu quả và
tiết kiệm Tiết kiệm điện chính là giải quyết áp lực việc cung cấp điện của điện
lực và tiết kiệm tiền cho bản than
>_ Nhằm đáp ứng nhu cầu sử dụng điện hợp lý cho nhà trường , em đã chọn
để tài “ Xây dựng phương phap tối ưu hoá việc cung cấp điện và mô phỏng
chương trình điều khiển “ Chỉ với một máy tính điều khiển ta sẽ điều khiển việc
cung cấp điện cho các phòng học của nhà trường một cách tự động theo thời khoá
biểu được nhà trường đưa ra Với việc làm này sẽ làm giảm được nhân công làm
công việc đóng ngắt và sử dụng điện được một cách hợp ly
> Trong để tài ,em sẽ trình bài các phương pháp cấu thành mạng truyền tín
hiệu điều khiển , mạch động lực đóng ngắt điện, giới thiệu họ vi xử lý AT89C51
Chương trình điều khiển giao tiếp với máy tính qua cổng COM được viết bắng
ngôn ngữ VB6
> Do thời gian thực hiện hạn chế nên không không tránh khỏi một số
khiếm khuyết, sai sót , em rất mong nhận được các ý kiến đóng góp từ các thầy và
các bạn
CHÂN THÀNH CẢM ƠN
SV TH HÀ NGỌC ĐẠT
Trang 6
ĐHDL.KTCN, Ngày /Š tháng ô{ năm 2006
Giáo viên phản biên
la Ow 1 TRN
Trang 7
PHANI:
CO SO LY THUYET
An K oS
Trang 8YÊU CẦU CỦA ĐỀ TÀI:
Do nhu cầu cần sử dụng điện một cách hợp lý nhằm tránh gây lãng phí điện và
tiết kiệm tiền bạc cho nhà trường Công việc cần đặt ra ở đây chính là chúng ta
phải cung cấp điện một cách hợp lý cho mạng điện của trường Do vậy cần tìm
ra một phương pháp cấp điện tối ưu nhất : sử dụng điện tiết kiệm nhất và giảm
thiểu nhân công duy trì cho công việc đóng ngắt điện cho các phòng học
Do đó em đã nghiên cứu để tài “ Sử dụng điện hợp lý cho trường ĐHDL KTCN
dùng vi xử lý 89C51 thông qua mạng RS-485” Các kít vi xử lý này hoàn toàn
có thể hoạt động độc lập theo một chương trình đã được định sẵn Chúng sẽ
giám sát và điều khiển việc cung cấp điện cho từng phòng thông qua gởi lệnh
đến đúng kit vi xử lý cần điều khiển để thi hành lệnh đó
s* Yêu cầu của đề tài được giao :
Khảo sát sơ đồ cung cấp diện cho các phòng học
⁄ Mạch động lực điều khiển việc đóng ngắt cung cấp điện bằng vi xử lý
89C51
Y Mach giao ti€ép may tính của từng vi xử lý
Lập trình giao tiếp với máy tính bằng ngôn ngữ Visual Basic 6.0
2 Hướng thực hiện để tài :
- pé dim bdo cung cấp điện tối ưu cho trường thì trước hết phải hiểu rõ cấu trúc
phân phối điện của nhà trường Công việc này là rất cần thiết vì nó sẽ đảm bảo
cho ta cung cấp điện một cách chính xác cho từng phòng học trong trường
Qua khảo sát thực tế em đã thấy được mô hình phân phối điện của trường như
sau ( Hình 1.1) :
Trang 9
cung cấp điện điện cho khu hành
cho khu hoc tâp chính
: | Máy biến 4p Máy biến áp cung cấp
Nhà trường
Hình 1.1 : Sơ đồ phân phối điện của trường
- Từ đường dây tải điện 15 KV được đưa qua hai trạm biến áp đặt trong trường
để cung cấp điện sinh hoạt cho 2 khu : Khu hoc tập và khu hành chính
- _ Sơ đồ cung cấp cụ thể cho từng phòng học ( Hình 1.2 ) :
Trang 10
Tại trạm biến áp cung cấp điện cho khu học tập sẽ phân phối các đường dây
cung cấp điện cho các tầng trong khu hoc tập Ở mỗi tầng học sẽ có các đường
dây cung cấp điện cho từng phòng học như hình 1.3
Việc quản lý thời gian cung cấp điện của các kit vi xử lý sẽ được thông qua máy tính điểu khiển trung tâm Máy tính sẽ định lịch cung cấp điện cho các
phòng học trong trường
Thời gian cung cấp điện này dựa vào thời khóa biểu học tập do trường lập ra
Như vậy vào thời gian phòng học nào có tiết học thì phòng đó có tiết học sẽ
được cung cấp điện và phòng không có tiết học sẽ được ngắt điện Như vậy thì
điện năng được sử dụng đúng lúc đúng chổ tránh gây lãng phí Mặt khác cho
phép ta can thiệp dễ dàng trong trường hợp có sự thay đổi thời khóa biểu của
các lớp học
Chuẩn truyền thông nối tiếp thông dụng hiện nay là RS-232C, tuy nhiên chuẩn truyền thông này chỉ dùng truyền số liệu trên khoảng cách ngắn (15m) Nên để
có thể truyền dữ liệu từ kit vi xử lý về máy tính ở khoảng cách xa hơn ta dùng
chuẩn RS-485 ( đối với chuẩn giao tiếp này thì khoảng cáh truyền số liệu dai
khoảng 1000m và tốc độ truyền bịt cũng rất cao 10Mbps ) Để chuyển đổi từ chuẩn RS-232C sang chuẩn RS-485 ta cần phải có một mạch điện chuyển đổi
Sơ đồ khối mạch chuyển đổi như sau ( Hình 1.4 ):
Trang 11Hình 1.4 : Sơ đồ khối mạch kết nối giữa máy tính và các kit vi xử lí
- Vấn để kết nối mạng : Thuật ngữ mạng đã trở nền rất quen thuộc khi mạng
thông tin Internet ngày càng trở nền rất gần gũi với con người chúng ta Nếu quản lý thiết bị trong phòng theo phương pháp thông thường sẽ không kinh tế
và tiết kiệm Ta cần phải làm sao để tiết kiệm cho được càng nhiều càng tốt Cho nên để tránh lãng phí ta nên điều khiển các thiết bị bằng máy tính Chỉ cần
một nhân viền cũng có thể tắt hay mở thiết bị trong từng phòng Nếu ta tắt các
thiết bị bằng tay thì sẽ không kinh tế, khi khách ra khỏi phòng mà quên tắt các
thiết bị thì sẽ lãng phí rất nhiều năng lượng điện: Tiết kiệm được phần năng lượng hao phí đó ta sẽ giúp cho việc giảm giá thành khi kinh doanh cho thuê
Trang 12Khối chuyển đổi mức Khối chuyển đổi mức Khối chuyển đổi mức
TTL sang RS-485 TTL sang RS-485 TTL sang RS-485
Kít vi xử lí tầng1 Kít vi xử lí tầng 2 Kit vixd li tang 3
Hình 1.4 :Sơ đồ khối mạch kết nối giữa máy tính và các kit vi xử lí
Kết luận : Như vậy để giải quyết việc điểu khiển đóng ngắt điện cho nhiều phòng ,
em đã chọn phương dn diéu khiển mạng, tất cả các phòng đều được nối với máy vi
tính thông qua đường truyền tín hiệu nhất định Ta có thể sử dụng mạng điện thoại để
làm đường truyền tín hiệu nhưng với phương pháp này thì việc kết nối sẽ rất phức tạp
Do đớ , ta sử dụng đường truyền tín hiệu riêng làm mạng điểu này sẽ rất thuận lợi cho việc nâng cấp và sửa chữa sau này
Trang 13— Trong chương này ta tim hiểu các phương thức truyền thông để nắm
được cách truyền đữ liệu qua cổng COM và các chuẩn giao tiếp với máy
tinh
L Các phương thức truyền thông :
- Có 3 phương pháp truyền được dùng trong mục đích truyền thông tin: Đơn công, bán song cồng, và song công Ta sẽ lần lượt khảo sát các phương
pháp truyền trên
1 Đơn công:
-_ Đường truyền đơn công có khả năng truyền đữ liệu chỉ theo một hướng Nguyên nhân không phẩi do tính chất của đường dây đơn giản chỉ vì một đầu - cuối chỉ có một máy phát và đâu cuối kia cũng chỉ có một máy thu Cấu hình
này ít được sử dụng trong các máy tính vì không có cách nào để máy thu phát tín hiệu nhận biết tới máy phát cho biết thông điệp đã nhận đúng Phát thanh và truyền hình là một trong những thí dụ về đơn công
2 Bán song công(Half-duplex Communication):
- Đường truyền bán song công có thể phát và nhận dữ liệu theo cả hai
hướng không đồng thời Trong suốt một cuộc truyền, một modem là máy
phát và modem còn lại sẽ là máy thu Ví dụ như một thiết bị A là máy phát
gởi dữ liệu đến thiết bị B là máy thu, sau đó A và B đổi vai trò cho nhau, B
là máy phát gởi tín hiệu báo dữ liệu nhận được có lỗi hay không đến máy thu
A Nếu không có lỗi thi A và B sẽ lại đổi vai trò cho nhau và À tiếp tục gởi
dữ liệu đến máy thu B Nếu máy thu B báo dữ liệu có lỗi thì máy phát A sé
gởi lại dữ liệu cũ cho đến khi B báo là dữ liệu không có lỗi
- Nhược điểm của phương pháp này là thời gian cần để chuyển đường
truyền bán song công từ hướng này sang hướng khác có thể dài gấp nhiều lần thời gian truyền một kí tự Sự chuyển động của xe trên đường ray là một thí dụ về phương pháp này
3 Song công ( Full-duplex Communication):
— Ngược lại so với truyền bán song công, đường truyền song công có khả năng phát và nhận dữ liệu đồng thời theo cả hai hướng Một cách khái quát,
đường truyền song công tương đương với 2 đường truyền đơn công, một đường cho mỗi hướng
Trang 14
| - Vì hai đường truyền có thể tiến hành song song, một đường cho mỗi
| hướng, nên truyền song công có thể phát nhiều thông tin hơn truyền bán song
| công với cùng tốc độ truyền dữ liệu Truyền song công không mất thời gian
để thay đổi hướng truyền
| -_ Hầu hết các máy tính lưu trữ dữ liệu và thao tác đữ liệu theo cách song song
Nghĩa là khi gởi một byte từ bộ nhận này tới bộ nhận khác của máy tính, nó không
truyền từng bit một mà một lúc một byte trên những cáp sợi song song nhau Số
các bit truyền đi cùng một lúc thay đổi tùy thuộc vào từng máy tính nhưng thông
| thường là 8 hoặc bội của 8
- Tuy nhiên việc truyền đữ liệu từ máy tính này đến máy tính hay một thiết bị khác thì xảy ra theo kiểu tuần tự, nghĩa là dữ liệu được gởi đi từng bit một Một bộ
| giao tiếp tuần tự sẽ đảm nhận nhiệm vụ chuyển đổi dữ liệu từ song song sang nối
tiếp trước khi chứng gởi đi hoặc đổi từ nối tiếp sang song song khi chúng nhận về
| —_ Có hai hình thức truyền thông tuần tự: truyền thông đồng bộ và không đồng bộ
1 Truyền thông bất déng_bé ( Asynchronous communication):
| — Khoảng thời gian giữa hai kí tự truyền đi không cố định, mặc dù khoảng thời
gian giữa hai bit liên tiếp trong một kí tự là không thay đổi nhưng khoảng thời gian
| giữa hai kí tự liên tiếp không phải là hằng số Sự biến thiên tốc độ này làm nảy
sinh vấn để là phải làm sao máy thu phân biệt được giữa bit O0 và không có đữ liệu
—_ Để giải quyết vấn đề trên , người ta phát trực tiếp một bit start ngay trước một
kí tự và một hoặc hai stop bit ngay sau mỗi kí tự được truyền đi
- _ Để kiểm tra lỗi đường truyền, người ta sử dụng bịt chẵn lẻ( parity bit), tức kiểm
tra tổng số bít trong 1 byte dữ liệu được truyền Phương thức này thường được sử dụng trong các máy tính PC vì tính đơn giản của nó Hạn chế của phương pháp
này là tốc độ truyền thấp do phải truyền thêm một số bit start, bít stop va bit parity
2 Truyền thong dong bo (Synchronous Communications):
— Phuong thifc truyén nay khéng ding cdc bit start, stop để đóng khung mỗi kí tự
mà chèn các kí tự đặc biệt như SYN ( Synchronization), EOT (End Of Transmission) hoặc một cờ giữa các đữ liệu của người sử dụng để báo hiệu cho
bên nhận biết rằng có dữ liệu đang đến hay đã đến
Truyền đồng bộ thường được tiến hành ở tốc độ dưới 4800Bps,9600Bps hoặc thậm chí còn cao hơn Trong phương pháp này, một khi đã đồng bộ, các modem
vẫn tiếp tục gởi các kí tự để duy trì đồng bộ, ngay cả lúc không phát dữ liệu Một
kí tự “idle” được gởi đi khi không có dữ liệu phát Trong phương pháp truyền đồng
bộ không giống như phương pháp truyền bất đồng bộ, khoảng thời gian giữa hai kí
tự luôn bằng nhau
Trang 15If] CONG THONG TIN NỔI TIẾP :
-_ Thông tin nối tiếp được dùng trong rất nhiều ứng dụng ghép nối máy tính với
các thiết bị ngoại vi VỀ dữ liệu được truyền song song trên các bus máy tính nên,
để truyền nối tiếp được , bên phát phải dùng các thanh ghi dich song song — nối tiếp để biến đổi các byte song songthành một chuỗi bít nối tiếp nhau cho ra cdngva bên thu phải dùng các thanh ghỉ dịch nối tiếp — song song để biến đổi
ngược lại
-_ Thông tin nối tiếp được phân ra làm hai loại : Truyền nối tiếp đồng bộ và bất đồng bộ Khi truyền nối tiếp đồng bộ , ngoài đường dây truyền số liệu giữa hai trạm phát và thu cần phải có thêm đường dây điều khiển để truyền tín hiệu nhịp nhằm để bên thu xác định được các thời điểmtai đó số liệu trên đường truyền đã
ổn định Trong khi đó , truyền nối tiếp không đồng bộ chỉ cần một dây truyền trong đó các thông tin đồng bộ được truyền ngay cùng với các dữ liệu Đó là các
bit Start ( bit bắt đầu ) chỉ thị sự bắt đầu của khối số dữ liệu được truyền và bit
Stop ( bit kết thức ) đánh dấu báo kết thúc khối số liệu đó cùng bit phát hiện và sửa lỗi đoc75 ghép cùng với các bit số liệu để tạo thành một khung truyền ( gọi là
frame ) hay mot SDU ( Serial Data Unit )
CHUAN THONG TIN NOL TIEP :
1 Chuẩn RS-232:
-_ Do hạn chế về dải tần của đường trưền nên hầu hết các thiết bị đầu cuối số liệu DTE ( Data Terminal Equipment ) muốn thông tỉn với nhau kfỔng thể nối trực tiếp với môi trường truyền dẫn Analog ( đường truyền tương tự ) được mà phải
thông qua các thiết bị thông tin số liệu DCE ( Data Communication Equipment )
các thiết bị này sẽ chuyển đổi các tín hiệu tương tự thành các tín hiệu số và truyền
cho các DTE
-_ Các tiêu chuẩn chính cho truyền thông tin số liệu nối tiếp hiện nay được xây
dựng bởi các tổ chức ITU ( International Tele communication Union ) , EIA ( Electronics Industry Assosiation ) va ISO ( International Standards Organisation )
Các chuẩn ITU nối tiếp thuộc về nhóm V và các chuẩn EIA vể các thông tin nối
tiếp thuộc về nhóm RS Chuẩn RS-232C quy định ghép nối giữa một DTE và
DCE với khoảng cán cực đại là từ 17m đến 20m và tốc độ truyền số liệu cực đại lên tới 20 Kbps
Trang 16
- Tín hiệu điện theo chuẩn RS-232C là lưỡng cực với mức logic Ì có điện thế
dương so với đất (0V ) , mức 0 có điện thế âm so với đất
Với tín hiệu ra :
Mức logic cao có điện thế trong dải từ +5 đến +15V
Mức logic thấp từ -5V đến -15V
Với tín hiệu vào :
⁄ Mức logic cao có điện thế trong dải từ +3 đến +15 V
Mức logic thấp từ -3V đến -15V
Logic trên đường truyền số liệu TD và RD được đổi thành logic âm, nghĩa là
mức logic cao có điện thế thế âm so với đất vàuwức logic thấp có điện thế dương so
với đất Dữ liệu trền đường truyền chỉ ở một trong hai trạng thái MARK hoặc SPACE lần lượt tương ứng với các trạng thái đệ¡n thế điện âm hoặc dương tưc là
ứng với mức mức logic 1 hoặc 0 Với các máy PC, các mức điện thế điển hình là +127_ Dữ liệu được truyền theo từng nhóm bit Mỗi nhóm gọi là một SDU hay
một khung truyền Một khung truyền bao gồm :
⁄ 1 bịt Start luôn ở mức logic thấp , điện thế đương
1 hoặc 1,5 hoặc 2 bit Stop luôn ở mức logic cao ,điện thế âm
⁄ 1 hoặc không có bit kiểm tra chan lẻ
5 hoặc 6 hoặc 7 bit số liệu
-_ Tốc độ số liệu nối tiếp được đo bằng số bit truyền trong một giây ( bps ) Trong
các hệ thống truyền số liệu với mã nhị phần tốc độ này trùng với tốc độ baud là số
lần thay đổi trạng thai của một kênh truyền tín hiệu trong 1 giây Các chân tin hiệu được nối ra các đường dây để các thiết bị DTE và DCE thong tin với nhau Ngoài dây đất GND có điện thế 0V, có thể phân thành hai nhóm đường dây gồm các nhóm đường truyền dữ liệu TxD , RxD và nhóm các đường tín hiệu điểu khiển
( gọi là các đường móc nối thông tin ) gồm các đường cổn lại Bảng 2.1 sau mô tả tên và chức năng các đường tín hiệu :
Trang 17
5 7 Dat tin hiéu SG
6 6 Data Set Ready(Dỡ liệu sẵng sàng ) | DSR € >
7 4 Request To Send ( Yéu cau gti ) RTS > €
8 5 Clear To Send ( Xóa để gửi ) CTS € >
9 22 DCE Ready , Ring Indicator DSRRI|€ |?
Bảng 2.1 : Cấu trúc chân của RS -232C
- Trong số các tín hiệu đó chỉ có các đường dẫn TxD , RxD và GND được chọn
cho một liền kết truyến thông RS-232 song công đơn lẻ Hầu hết các vi diéu khiển được trang bị một giao diện nối tiếp được xem là tối thiểu nhất, cu thể là bao gồm cc1 đường dẫn tin hiéu RxD va TxD Các dường dẫn tín hiệu khác của
giao điệnlà các dường dẫn bắt tay các đường dẫn này được sử dụng bởi hai thiết
bị để nhận dúng dữ liệu và theo cách đã được điều chỉnh
- Khi mô tả cuộc truyền dữ liệu giữa hai thiết bị , tiêu chuẩn RS232 đã sử dụng
khái niệm thiết bị đầu cuối đữ liệu DTE ( Data Terminal Eqipment ) hay còn
gọi là thiết bị bên nhận và thiết bị truyền thông dữ liệuDCE ( Data
Communication Equipment ) hay còn gọi là bên truyền Cáechân ra và chức năng của các chân được liệt kê trong cột mô tả tin hiệu ở trên Như vậy chân 2 của đầu nối 9 chân trên một máy PC đóng vai trò là một DTE ( tuyền dữ liệu )
thì RxD là một lối vào , trong khi đó một modem với đầu nối 9 chân đóng vai
trò là 1 DCE, thì chân này vẫn được gọi là RxD , nhung đây là một lối ra
- Phương pháp truyền dữ liệu nối tiếp theo từng bit khong chỉ xảy ra đối với
chuẩn RS - 232 Các giao thức khác như RS-442 , RS-423 ,và RS-485 cũng sử
dụng phương pháp này Các phương pháp truyền dữ liệu nối tiếp khong déng bổnày khác với cách mà đữ liệu nối tiếp được truyền trên các đường vật lý
* Một số tính chất của chuẩn RS-232C :
- Chuẩn RS-232C là của EIA nhằm định nghĩa giao diện vật lý giữa DTE và
DCE (ví dụ như giữa một máy tính và một modem ) Chuã ` n này sử dụng đầu nối
25 chân, tuy nhiên chỉ có một số ít chân là thực sự cần thiết cho việc liên kết Về
Trang 18
phương diện điện , chuẩn này quy định các mức logic 0 và 1 tương ứng với các
điện thế nhỏ hơn -3V và lớn hơn +3V Tốc độ đường truyền không được vượt quá
20Kbs và khoảng cách nhỏ hơn 15m
Chuẩn RS-232C có thể chấp nhận phương thức truyền song công ( full-
duplex )
Một trong những yêu cầu quan trọng của RS-232C là thời gian chuyển từ mức
logic này sang mức logic khác không vượt quá 4% thời gian tổn tại của một bit Giả sử với tốc độ truyền 19200 baud thì thời gian chuyển mức logic phải nhỏ hơn
0.04/19200 = 2.1us Điều này làm giới hạn chiều dài đường truyền Với tốc độ 19200baud ta có thể truyền xa nhất là 50ft (15.24m )
Một trong những vấn để quan trọng cần chú ý là khi sử dụng RS-232C là
mạch thu phát không cân bằng ( đơn cực ), tức là tín hiệu vào và ra được so với
đất
2 Chuẩn RS-423/422 :
- Một cải tiến quan trọng của chuẩn RS-232C là chuẩn RS-422A Chuẩn này sử dụng việc truyền đữ liệu sai lệch(differential data ) trên những đường truyền cân
bằng Một dữ liệu sai lệch cần hai dây, một cho dữ liệu không đảo (non-inverted)
và một đường cho dữ liệu đảo (inverted) Dữ liệu được truyền trên đường dây cân
bằng, thường là cặp dây xoắn với một trổ ở đâu cuối Một IC lái (driver) sẽ biến đổi các mức logic thông thường thành một cặp tín hiệu sai lệch để truyền Bên
nhận sẽ có một mạch chuyển đổi tín hiệu sai lệch thành các mức logic tương ứng Các IC lái RS-422A hầu hết hoạt động với nguồn +5V như các chip logic khác
Với chuẩn mới này, tốc độ cũng như khoảng cách truyền được cải thiện rất nhiều
3 Chuẩn RS-485:
Giao tiếp EIA RS-485 là một cải tiến của chuẩn RS-422A Đặc tính điện của nó
giống như chuẩn RS-422A RS-485 là chuẩn truyền vi sai, sử dụng hai dây cân bằng Với RS-485 tốc độ truyền có thể đạt đến 10Mbs và chiêu đài cáp có thể lên đến 1.2km Điện áp vi sai ngõ ra từ +1.5 V-> +5V nếu là logic mức Ö và mức logic
1 sẽ là từ -1.5V-> -5V Một đặc điểm quan trọng của RS-485 là có thể cung cấp đến 32 drivers và receivers trên cùng một đường truyền Điều này cho phép tao
thành một mạng cục bộ Để có khả năng như vậy, ngõ ra driver RS-485 phải là ngõ ra 3 trạng thái Và do đó một slave sẽ ở trạng thái tổng trở cao khi nó không
được chọn để giao tiếp cùng với master ^
Chỉ có một trạm được chọn làm master, các tram còn lại đều là slave Master
được quyền truyền bất cứ lức nào, nó sẽ chỉ dinh mét slave bất kì giao tiếp với nó
Slave chỉ có thể truyền sau khi nhận được lệnh của master Mọi slave có một địa
chỉ riêng trên đường truyền và sẽ không được phép truyền nếu không có yêu cầu
tY master.
Trang 19Mode Unbalanced Balanced Balanced Balanced
Differential Differential Differential Driver No 1 1 1 32
Methode Simplex Simplex Simplex Simplex
Phuong thifc Half-duplex Half-duplex Half-duplex Half-duplex
Full-duplex Full-duplex Full-duplex Full-duplex Short circuit 500mA 150 mA 150mA 150mA
current
Bang 2 2
~_ Đường dây dẫn tín hiệu ảnh hưởng đến các xung số liệu ở 3 trường hợp sau :
⁄ Làm suy giảm biên độ xung : do điện trở của đường dây
Làm méo dạng xung :do điệndung kí sinh giữa các cặp đường dây điện
trở và điện cảm của đường dây gây nên méo dạng pha và giảm dãi
truyền
⁄ Gây ôn : ồn nội ( ổn nhiệt của đường dây ) và ồn ngoại là các tác nhân bên ngoài tác động lên đường truyền
IV Điều khiển thông tin nối tiếp giữa hai thiết bỉ :
-_ Tùy thuộc vào tương quan giữa các tốc độ truyền và thu số
phải có sự điều khiển thông tin hay không Nếu máy thu có khả năng đọc các kí
tự thu trước khi máy phát truyền kí tự tiếp theo thì không cân có sự điều khiển
này Đó là thông tin không có móc nối ( no handshake ) Máy thu nhận các kí tự
và lưu trữ vào một vùng nhớ đặc biệt trước khi đọc nó Vòng nhớ này gọi là bộ
dém thu ( receive buffer ) Điển hình vùng nhớ này chỉ lưu giữ 1 kí tự Nếu các
kí tự đã được đưa đến đây không được đọc kịp trước khi nhận kí tự khác ( ta nói
đệm chưa được rỗng ) thì có thể xảy ra hiện tượng kì tự hiện tại sẽ bị viết đè lên
bởi các kí tự khác đến sau Khi xảy ra điều này cần phải thực hiện việc điều
cA ` z + x
liệu mà có thể can
Trang 20
khiển thong tin giữa bên phát và bên thu Kỹ thuật điều khiển thông tin giữa bên
phát và bền thu Kỹ thuật điều khiển thông tín giữa hai thiết bị để tránh điều trên
xây ra gọi là kĩ thuật móc nối ( handshaking ) Đó là việc buộc máy phát ngừng
truyền kí tự cho đến khi máy thu đọc xong các kí tự nằm trong bộ đệm thu , tức
cho khi bộ đệm thu rỗng Có hai loại móc nối :
Móc nối cứng ( hardware handshaking ) : dùng cho các đường tín hiệu
điều khiển méc néi nhu CTS , RTS , DTR, va DSR
* Móc nối mềm ( software handshaking ) liên quan tới việc gửi các kí tự điều khiển đặc biệt để truyền thông tin móc nối giữa bên phát và bền thu
- Hình 2.1 là sơ đổ nối các đường dây giữa hai trạm thu phát trong thông n
không có móc nối Trong trường hợp này máy thu có thể đọc số liệu nhận được từ
bộ đệm thu trước khi các kí tự khác được nhận Số liệu được truyền từ đầu TxD của máy phát và được nhận ở đầu RxD ở bên thu Khi một DTE ( ví dụ như PC) cần nối với một DTE khác thì đường TxD ở một bên được nối với đường RxD ở bên kia và ngược lại Các đâu tín hiệu móc nối ở mỗi bên được nối cặp với nhau ( RTS được nối với CTS , DTR với DSR ) nhằm làm cho các máy luôn ở trang thái sẵng sàng thu và sẵng sàng truyền
TxD | TxD RxD RxD RTS RTS CTS vị L, CTS DTR a Ly DTR DSR DSR GND GND
Hình 2 1 : Nối dây thông tin giữa hai cổng RS 232C theo kiểu không móc nối
-_ Hình 2.2 là sơ đồ nối dây trong thông tin với móc nối cứng giữa hai DTE với
nhau
TxD | TxD RxD RxD RTS RTS CTS À„ —><y CTS DTR an DTR DSR DSR GND GND
Hình 2 2 : Thông tin RS-232C có móc nối cứng
— _ Các đường điều khiển được dùng ở mức tích cực cao Khi một máy muốn phát
số liệu nó nâng dây RTS của mính lên mức cao rồi kiểm tra trạng thái dây CTS
cho đến khi dây này ở mức tích cực cao Chừng nào day này còn ở mức thấp thì
Trang 21`
có nghĩa là máy thu vẫn còn bận và chưa thể nhận được số liệu Khi máy thu đọc
xong số liệu từ bộ đệm thu của nó Đường RTS nối với CTS của máy phát sẽ tự
động nhảy lên mức cao để chỉ thị cho máy phát rằng máy thu bây giờ đã sẵng
sàng nhận số liệu tiếp theo Quá trình nhận số liệu cũng tương tự như quá trình
truyền Khi DCE muốn phát tới DTE, đầu vào DSR bên máy thu sẽ trở nên tích
cực Nếu máy thu không thể nhận số liệu nó sẽ tự dặt đường DTR ở mức không
tích cực Khi nó ỡ trạng thái xóa nhận , nó sẽ đặt đường DTR ở mức tích cực và
may bên kia được phép phát số liệu Đường DTR sẽ được dặt ở mức không tích
cực cho đến khi kí tự được xử lý xong Khi nối DTE với DCE thì các đường móc
nối trực tiếp với nhau như hình 2.3
TxD TxD
RxD RxD RTS RTS CTS CTS DTR DTR DSR DSR GND GND
Hình 2 3 : Nối DTE với DCE
—_ Hình 2.4 là giản đổ mô tả quá trình thông tin với móc nối mềm Có hai kí tự
ASCII được dùng để khởi phát và dừng truyền số liệu
MAY X - OFF MAY
PHAT X-ON THU
————————m> ———>
ˆ
Số liệu
Hình 2 4 : Móc nối mềm dùng hai kí tự X - ON và X - OFF
~_- Đó là kí tự DCI trong bãng mã ASCII có giá trị là 11h gọi là X - ON va kí tự
DC3 có giá trị là 13h gọi là X - OFFE Khi máy phát nhận được kí tự X —- OFF nó
sẽ ngừng phát số liệu cho đến khi nhận được kí tự X - ON Loại móc nối này
được dùng trong trường hợp khi máy phát và máy thu có thể xử lý tín hiệu tương
đối nhanh Thường máy thu có một bộ đệm số liệu lớn chứa các kí tự nhận được
Khi bộ đệm này đầy , nó sẽ truyền sang bên phát một kí tự X - OFF , sau khi doc
hết nội dung bộ đệm nó sẽ truyền kí tự X - ON
Trang 22
Trên cơ sở thiết kế một thiết bị bằng cơ điện tử để quản lý việc cung cấp điện
cho các lớp học Nhờ có bộ xử lý trung tâm mà các thiết bị này có thể hoạt
động chính xác theo chương trình đã lập sắng Dựa vào thời khóa biểu có tiết
học của các phòng , mà ta sẽ dùng phần mền quản lý trên máy tính để ra lệnh
cấp điện một cách chính xác nhằm tránh gây lãng phí điện và giảm được nhân
công thực hiện việc đóng ngắt điện bằng tay không được hợp lý Điện sẽ được
cung cấp khi một phòng nào đó có tiết học , và tự động ngắt điện khi hết tiết
học Nhưng đồng thời phải có sự uyển chuyển xử lý tình huống ví dụ như có sự
thay đổi thời khóa biểu
Như theo yêu cầu của đề tài tất cả các kit vi xử lý sẽ được giám sát và ra lệnh
từ máy tính Máy tính truyền lệnh cần vi xử lý thi hành đến đúng kit vi xử lý
_ mà nó cần tác động có thể là lệnh đóng ngắt mạch điện hay gởi giám sát trạng
thái điện của phòng Theo lý thuyết , thì các thành viên trong hệ thống mạng
đều có thể liên kết dữ Èkiệu với nhau bằng cách thông qua master là PC Nhưng
do mạng trong để tài do em thiết kế không cần tốc độ cao và không có nhu cầu
trao đổi dữ liệu giữa các kit vi xử lý riêng rẻ nên em dùng phương pháp hỏi
vòng từ PC Qua đó , PC sẽ lần lượt hỏi vòng tuần ty qua ting kit vi xi ly
( Hình 3.1 ) Dữ liệu từ PC gởi về các kit vi xử lý gồm các byte yêu cầu cộng
thêm hai byte thêm vào : một byte đầu tiên xác định địa chỉ nơi đến và byte còn
lại sẽ xác định nội dung giao tiếp giữa vi xử lý và PC Chương trình giao diện
và điều khiển truyền số liệu dùng ngôn ngữ lập trình Visual Basic 6.0
Trang 23
RS-485 RS-485
, KIT VI KIT VI XU XU.LY KIT VI XU
LY TANG TANG 2 LY TANG
1 7
Hình 3.1 : Sơ đồ khối toàn bộ hệ thống điều khiển và giám sát
Từng kit cũng có sơ đồ khối sau ( Hình 3.2 ) :
MẠCH HỒI TIẾP —)
TRẠNG THÁI THIẾT BỊ |
Hình 3.2 : Sơ đồ khối kit vi xử lý
2 Chức năng của từng khối :
a Vị xử lý S9C5]:
- _ Đây là bộ xử lý trung tâm của mạch được dat tai mỗi tầng củ trường có nhiệm
vu quan ly việc cung cấp điện cho từng tầng riêng biệt Vi xử lý 89C51 là loại
IC có khả năng xử lý và điều khiển theo một chương trình đã lập sẵngvà có khả năng thực hiện các yêu cầu gởi tới máy tính Vi xử lý 89C51 trong mạch thiết
kế có thể thực hiện được các chức năng như sau : Cấp tín hiệu điều khiển cung cấp điện cho từng phòng
Trang 24Dựa vào mức tín hiệu hồi tiếp về mà vi xử lý sẽ nhận biết được trang thái cấp
điện của từng phòng Mạch giao tiếp với máy tính :
Là một card dùng trao đổi đữ liệu giữa máy tính và Kit vi xử lý
II THIẾT KẾ PHẦN CỨNG :
_ Mach dong lu va phan hồi trạng thái thiết bị :
Trong phần thiết kế mạch động lực, ta sử dụng relay để đóng ngắt CB nguồn
cung cấp cho phòng Ta sử dụng relay là thích hợp vì đây là linh kiện phù hợp
với yêu cầu và nó cách ly nguồn 1 chiều từ vi xử lý và nguồn xoay chiều cung cấp điện cho phòng
Sơ đồ nguyên lý mạch động lực như sau ( Hình 3.3 ):
Trang 25
Nguyên lý hoạt động của mạch như sau:
Khi cần đóng điện thì vi xử lý sẽ đặt chân điều khiển đèn lên mức tích cực Khi
đó Opto sẽ dẫn làm cho Phototransistor dẫn bdo hoa, 4p Vc = 0.2V, sé kéo theo Q1
dẫn Khi Q1 dẫn sẽ cho phép rơ le đóng Khi Relay đóng thì phòng được cấp nguồn
Do mạch thiết kế dựa trên nguyên tắc kiểm tra áp trên đèn sẽ biết đèn đóng hay mở Khi điện được đóng bằng Relay điện trở công suất RW sẽ chia ấp trên mạch , do điện trở công suất mắc nối tiếp đèn nên đèn sáng thì trên điện trở công suất sẽ có áp
Ấp này sau khi qua cầu Diode chỉnh lưu sẽ được đưa trở về vi xử lý
CB phòng học là thiết bị đóng ngắt điện cho cả phòng học CB này được đóng
khi có tín hiệu điều khiển từ vi xử lý
OPTO U2 có tác dụng cách ly mạng điện xoay chiều với vi xử lý nhằm tránh
làm hư khối vi xử lý Khi được cấp điện , dòng điện sẽ được chỉnh lưu thành 1 chiều
sau khi qua cầu diode làm cho opto hoạt động -> Q2 dẫn qua bộ khuếch dai sé cap 1
mức điện áp Diode Zener sẽ ghim mức điện áp cố định là 5V tương ứng với mức
Logic 1 báo cho vi xử lý biết
Tính toán mạnh như sau:
R1 =330 Q: đảm bảo dòng qua Opto đủ nhỏ để Opto hoạt động tốt
R2 = 2.2 k để giảm dòng giúp cho Phototransistor được hoạt động bình thường , không rơi vào tình trạng quá dòng
Diode D5 dùng để xả dòng điện cảm ứng trong cuộn dây Relay khi ta kích ngắt
Relay
Điện trở công suất RW, do trong mạng điện phải chịu công suất cấp điện cho cả phòng ( gồm quạt, đèn, .)
Sau khi qua cầu chỉnh lưu, áp này sẽ thành áp DC, nếu cần ta dùng tụ 1000u để
cho áp ra được thẳng Qua bộ đệm LM741 để cho áp ra ổn định thì tín hiệu nối tiếp về
được đưa vào một chân của vi xử lý
Nguyên nhân tại sao khi thiết kế mạch động lực đóng ngắt nguồn ta dùng nguồn
+12V riêng và dùng Opto để kích Do khi relay đóng ngắt sẽ gây ra nhiễu điện từ,
nhiễu này sẽ ảnh hưởng trực tiếp lên nguồn cung cấp cho vi xử lý Nó sẽ làm cho áp cấp cho vi xử lý có dạng gai áp Nếu không truyền số liệu về máy tính thì diéu nay không quan trọng Nhưng ta thiết kế mạch có truyền dữ liệu nên cần phải dùng nguồn
riêng và Opto để tránh gây nhiễu sẽ ảnh hưởng đến việc truyền dữ liệu Đồng thời
Opto cũng thực hiện việc cách ly mạch giữa 2 kit cho nền mạch sẽ hoạt động tốt hơn
Mạch khuếch đại Opamp dùng để ổn định áp hồi tiếp về khi có nhiều thiết bị mắc trên cùng đường dây Khi đó dòng sẽ giảm và áp đặt vào điện trở công suất cũng
giảm theo Dé đảm bảo mạch hoạt động tốt ta dùng mạch khuếch đại áp sau đó dùng
Diode Zenner để ổn áp ở mức +5V đưa vào vi xử lý
Trang 26
2 Mach nguồn cung cấp :
Mạch nguồn thiết kế trên nguyên tắc tạo ra nguồn đôi: +/-12V, +/-5V Để có thể được như vậy ta dùng biến áp loại 6 đầu ra: 0V, 6V, 9V, 15V, 18V và 24V Ta sẽ dùng điểm chuẩn 12V là mass Cho điện xoay chiều đi qua 2 cầu Diode chỉnh lưu
Hình 3.4 : Sơ đồ khối nguồn cung cấp cho các kit vi xử lý
Mạch dùng áp lưới chỉnh lưu thành dòng một chiều biến áp chọn loại 3A Cầu
Diode sẽ chỉnh lưu áp xoay chiều thành dòng một chiều Bộ phận nắm đòng là tụ 220
HF (25V), nó sẽ làm cho dòng DC được thẳng hơn
Lọc áp giúp giảm đi các gợn sóng cao tần
IC 6n 4p 1a cdc ho IC: 7805 ( ổn áp +5V), 7205 (ổn áp -5V) , 7912 (ổn áp - 12V), và 7812 (ổn áp +12V )
Do mạch không dùng đến công suất lớn nên không cần dùng đến transistor bổ
trợ dòng cho mạch Với các Diode chỉnh lưu chọn loại 3A, thì các IC ổn áp sẽ hoạt
động tốt Ta nên gắng thêm tấm tỏa nhiệt cho 4 1C ổn áp này Vì khi IC càng nóng thì
áp ra sẽ không ổn định và có nguy cơ chết IC
43 Mach øiao tiếp với máy tính qua RS-232 (Hình 3.5 ):
Trang 27
4 Mạch giao tiếp máy tính qua mang RS-485 :
- Thông thường các họ vi xử lý có ngõ truyền thông theo mức TTL Và các thiết
bị đầu cuối khác (DTE ) có cổng truyền thông là RŠ_232 Để có thể nối mạng
các thiết bị này ta phải chuyển từ TTL ,RS_232 sang RS_485 Để thực hiện việc
chuyển đổi này có rất nhiều vi mạch trên thị trường , nhưng họ vi mạch của
hãng MAXIM là phổ biến nhất hiện nay Đó là MAX 481 ,MAX 483, MAX 485, MAX 487 ,MAX 488, MAX 489, MAX 490, MAX 1487 Tiêu biểu là vi mạch MAX 485 , nó chuyển từ mức TTL sang RS 485, truyền theo phương pháp Half_Duplex
Hình 3 6 : Sơ đồ chan cia MAX 485
Bên trong mỗi vi mạch chứa một bộ phát (Driver) và một bộ thu
~ on
% Đặc điểm:
RS _485 là chuẩn giao tiếp nối tiếp bất đồng bộ cân bằng, sự truyền thông
tin trên dây xoắn đôi bán song công ( Half _ duplex) , nghia 1a tai một thời diém bat
kì trên dây truyền chỉ có thể là một thiết bị hoặc là truyền hoặc là nhận
e RS_485 cho phép 32 bộ truyền trên bus
e RS 485 có ngõ ra 3 trạng thái
e RS_ 485 cho phép tốc độ truyền tối đa là 2.5Mbps
Sơ đô chức năng của MAX_485 ( Bảng 3.1) :
Trang 28RO được cho phéo khi /RE là thấp
RO là trở kháng cao khi /RE là cao
Nếu những ngố ra lái được cho phép thì
từng ngõ có chức năng như làcác đường lát
Khi chúng là trở kháng cao , chức năng của
chúng như là các đường thu của bộ thu nếu
Bảng 3.1 : Sơ đô chan cua MAX -485
e Chức năng của các đường điều khiển :
Trang 29
Bang 3.3 : Chức năng nhân cia MAX -485
So dé mang half_ duplex RS485 ( Hình3.6):
Trang 30Hình 3.7: So dé mang Full Duplex RS-485
Để tăng chiều dài cáp truyền , ta có thể dùng bộ repeater như sau ( Hình 3.8):
ut
Hình 3.§ : RS-485 có dùng bộ repeater
Bộ Repeater hay gọi là bộ tiếp sức , có chức năng làm khuếch đại tín hiệu liền lạc
giữa các máy tính với nhau, khoảng cách truyền thông tin có thể đạt tới 3 km
Mạng RS-485 em thiết kế trong để tài này là mạng bán song công (Half- Duplex):
dữ liệu chỉ đi từ Master đến các vi xử lý hay từ các vi xử lý đến Master Tại một
thời điểm trên mạng chỉ có một phần tử truyền và cho phép các phần tử khác có
thể nhận thông điệp đó Có điều quan trọng ta nên chú ý là với sơ đồ mạch RS-485
được thiết kế như trên thì chỉ có thể giao tiếp giữa Master (PC) và các vi xử lý
nhưng giữa các vi xử lý không thể liên lạc trực tiếp với nhau Chúng giao tiếp với
nhau nếu có thể đó thuộc một dạng giao tiếp khác Cách thức hoạt động của mạng
như hình 3.9 sau: :
Trang 31
PC
if Converter RS-232< TTL
Al B —) _f>
LS - T- AF
oo —(
B A [B A Vixt F—> Con verter Con verter Vi xt?
lí1 <7 TTI‹›>RS-485 TIL<>RS-48S |«£—| 1í2
Hình 3.9 : Sơ đồ chuyển đổi RS-232 sang RS-485
- _ Với sơ đồ mạng như trên ta có thể giao tiếp được với 32 slave thông qua một
Master là PC Đồng thời do mạng truyền dữ liệu trên hai dây xoắn đôi lại nên sẽ
đỡ rắc rối trong quá trình thiết kế cũng như khi nối dây
-_ Bộ chuyển đổi ( Converter ) từ RL sang RS-485 thực ra chỉ cần một con IC
75176 cũng đã đảm nhận vai trò này tương đối tốt IC là 75176 ( hay tương đương
Max-485 ) có hai chân điều khiển hoạt động là DE và /RE Chân /RE tích cực
( mức logic 0 ) sẽ cho phép vi xử lý nhận dữ liệu từ Master: chế độ thu dữ liệu
Chân DE tích cực ( mức logic 1) sẽ cho phép mạch phát dữ liệu từ vi xử lý về Master Dùng một chân từ các Port của vi xử lý cũng như chân để phát Thông
thường khi lập trình giao tiếp bằng phần mềm, ta thường dùng chan RTS hay CIS
để điều khiển IC 71576
Ban đầu, chân /RE của75176 sẽ ở mức thấp: chế độ thu 75176 nhận dữ liệu từ máy tính, thông thường là địa chỉ Sau đó, nghĩa là khi Master phát địa chỉ xong thì
nó chuyển trạng thái chân /RE xuống mức thấp để cho phép nhận tín hiệu hồi đáp
từ các slave Các slave sau khi nhận được địa chỉ từ Master nó sẽ s0 sánh với địa
chỉ của nó Nếu đúng địa chỉ thì slave sẽ đưa chân DE lên mức một để truyền tín
Trang 32
hiệu trả lời về Master, sau đó thì nó lại đưa chân /RE sang mức 0 để sẵn sang
nhận đữ liệu hay yêu cầu cũng như lệnh mới từ Master
Sơ đồ cụ thể như sau ( Hình 3.9 ) :
R2
1
Hình 3.9 : Kết nối mang RS -485
— Hai dién trở 120O được nối vào 2 đầu đầu xa nhất của mạng Chiểu dài xa nhất
có thể là đầu này và đầu kia là 4000 feet ( 1,2 km ) Còn gọi là điện trở đầu cuối
( Terminal Register ) Dây dẫn là loại xoắn đôi 26 AWG
— Ta có 2 chân điều khiển thu phát dữ liệu, để đơn giản việc điều khiển, ta thường nối chung 2 tường điều khiển này cùng nhau Nếu tín hiệu này mức cao thi
một trong hai sẽ ở mức tích cực cũng như một trong hai sẽ ở trạng thái thụ động
Sơ đỗ thực hiện quá trình điều khiển tổng quát từ máy tính đến các phòng
( Hình 3.10 ):
Trang 34
5 'Thiết kế mạch 89C5I trên sơ đồ các chân và chức nắng của chúng :
5.1 Cơ sở lựa chọn kit xử lý dùng IC 89C51:
- Có nhiều cách để thực hiện vệc giao tiếp máy tính với kit điều khiển : sử dung vi mạch số , sử dung vi điều khiển hay dùng vi sử lý,
⁄ Đối với phương án thiết kế sử dụng vi mạch số thì đòi hỏi người thiết kế phia nắm vững phương pháp thiết kế bằng kỹ thuật số và chức năng các vi mạch
tham tham gia trong mạch điện Mặt khác bếu thiết kế bằng vi mạch số thì mạch sẽ rất cổng kểnh và phức tạp , không được mềm dẻo khi muốn phát triển
thêm hay muốn thay đổi cách điều khiển
⁄ Đối với phương án thiết kế sử dụng vì điều khiển thì đòi hỏi người thiết kế phải biết về cách thiết kế phần cứng và viết chương trình phân mềm cho vi điều
khiển Sử dụng phương pháp này để thiết kế thì mạch điện sẽ đơn giản hơn so
với dùng vi mạch số và tính mểm dẻo của nó rất cao nếu ta muốn thay đổi cách điều khiển
Do đó em đã chọn phương án thiết kế kit điều khiển bằng vi điều khiển 89C51 vì đây là IC thông dụng có khả năng đáp ứng được các bước yêu câu thiết kế
5.2 Giới thiệu vi xử lý 89C51 :
-_ Vi xử lý AT89C51 được chế tạo bởi hãng ATMEL, về cơ bản nó có cấu
tạo bền trong, SƠ đồ chân cũng như sử dụng tập lệnh tương thích với họ
8031 của hãng INTEL
Các đặt điểm cơ bản của vi mạch AT89C51:
e_ Đơn vị xử lý trung tam 8 bit da được tối ưu hóa để đáp ứng các chức năng điều
khiển
e_ Khối logic xử lý theo bịt thuận tiện cho các phép toán Boole
e_ Bộ tạo dao động giữ nhịp bên trong (đến 12Mh?)
e Tập lệnh rất phong phú
e Giao diện nối tiếp có khả năng hoạt động song công , đồng bộ (UART)
e_ 16 (32) đường dẩn vào/ ra hai hướng và từng hướng có thể được định địa chỉ
một cách tách biệt
e Năm nguồn ngắt vơi hai mức ưu tiên
e_ Có thể mở rộng bộ nhớ chương trình (ROM) bên ngoài lên đến 64KB
e_ Có thể mở rộng dung lượng bộ nhớ dữ liệu (AM) bền ngoài lên đến 64KB
e_ Hai bộ đếm /định thời 16 bit
e Bộ nhớ EEPROM nội 4KB
e Dung lượng bộ nhớ RAM nội, nhiều nhất có thể lên đến 128 byte
a Sự sắp xếp chân ra :
Trang 35
» PortO:
| Là port hai chức năng trên các chân 32 — 39 Khi sử dụng bộ nhớ trong thì nó
| như là một port I/O ( PO.0 — P0.7)
Khi sử dụng bộ nhớ ngoài thì nó đóng vai trò như một bộ MUX địa chỉ/ data
" Pon ]:
La mét port I/O trên các chân 1 — 8 (P1.0—> P1.7 ) nó chỉ được dùng để giao tiếp
| với các thiết bị ngoài và không có các chức năng khác
Là một port công dụng kép trền các chân 21 — 28 Khi sử dụng bộ nhơ
trong thì nó như là một port V/O da dung (P2.0->P2.7), khi sử dụng bộ nhớ ngoài thì
| port 2 chinh 1a byte cao của các đường địa chỉ (A8->A15)
= Port 3:
Chiếm các chân từ 10 đến 17 , ngoài chức năng chính là một HO port đa
| dụng (P3.0—>P3.7), mỗi chân của port 3 còn có các chức năng khác nhau, độc lập
= PSEN : (Program Store Enable)
Chân 29, tích cực mức thấp trong chu kỳ nhận lệnh , chỉ báo data trên dus
là mã lệnh
Trong trường hợp sử dụng bộ nhớ chương trình trong thì PSEN không tích cực
= ALE :(Address Latch Enable )
Chân 30, tích cực mức cao trong nửa chu kỳ đầu chỉ báo dữ liệu trên port
chính là địa chỉ byte thấp A0+A7
« EA: (External Acess)
Chan 31, cho phép chọn bộ nhớ chương trình trong hay ngoài
+EA =0 : MCU sử dụng bộ nhớ chương trình ngoài +EA =1: MCU sử dụng bộ nhớ chương trình trong
= RST (Reset ):
Ngõ vào RST trên chân 9 là ngõ Reset của 8951, khi ngõ này lên mức cao (trong ít nhất hai chu kỳ máy ) các thanh ghi bên trong 8951 được đưa về trạng thái mặc định
c Các thanh ghỉ chức năng đặc biệt:
Vùng RAM nội địa chỉ từ 80H — FFH, trong vùng này bố trí khoảng 21 thanh ghi đặc biệt , phụ trách một chức năng nào đó của MCU
Trang 36
i Thanh ghi PSW (Program status Word):
Thanh ghi từ trạng thái chương trình ở địa chỉ DOH chứa các cờ ( các bit chức năng )
PSW.4 RS1 D4H Bit 1 chon bank thanh ghi
PSW.3 RSO D3H Bit 0 chon bank thanh ghi
00 : bank O
01 : bank 1
10 : bank 2 11: bank 3
gia vào 2 phép toán nhân và chia
iii Thanh ghi SP (Stack Poiter):
Địa chỉ 81H, vùng ngăn xếp nằm trong RAM nội về nguyên lý dung lượng
tối đa là 128 byte Trước khi cất vào stack nội dung ŠP tăng lên 1 rồi mới cất (nội
dung SP là con trỏ địa chỉ ), khi lấy dữ liệu ra khỏi stack nội dung SP giảm di 1 sau
khi lấy data
iv Thanh ghi DPTR (Data Pointer):
Sử dụng làm con trỏ địa chỉ bộ nhớ dữ liệu ngoài
Chia làm hai thanh ghi :
DPL ( địa chỉ 82H ) chứa byte thấp
DPH ( địa chỉ 83H) chứa byte cao
v Các thanh ghi cổng ngoai VI:
Các lệnh liên quan đến xuất nhập ngoại vi đều thông qua các thanh ghi cổng
Port 0: Thanh ghi PO (dia chi 80H)
Port 1: Thanh ghi P1 ( địa chỉ 90H) Port 2: Thanh ghi P2 ( địa chỉ AOH)
Trang 37
Port 3: thanh ghi P3 (địa chỉ B0H)
vi Cdc thanh ghi timer:
TMOD (dia chi 89H) : Chọn mode lim viéc timer
TCON ( dia chi 88H) : diéu khién timer
TLO (dia chi 8AH): byte thap timer 0
THO (địa chỉ 8CH): byte cao timer 0 TL1 (địa chỉ 8BH): byte thap timer 1 TH1 (dia chi 80H): byte cao của timer 1
vii Các thanh ghi SIO:
SCON (98H) : khởi động mode và diéu khién SIO
SBUF (99H) : chuyển đữ liệu từ nối tiếp thành song song và ngược lạt
vii Các thanh ghi phục vu ngắt:
Có 5 nguồn ngắt với 2 cấp ưu tiên:
+Thao tác trên thanh ghi IE (A 8H) : cho phép / cấm ngắt
+Thao tác trên thanh ghi IP (B8H) : cấp ưu tiên ngắt
ix Thanh ghi điều khiển công suất (PCON) :
Địa chỉ 87H , không truy xuất bit được, các bịt của thanh ghi này được dùng
trong việc tác động lên tốc độ baud (SMOD) trong truyền thông nối tiếp, đưa vi
mạch vào mode tạm nghĩ hay mode hạ nguồn
e Hoat dong cua timer :
- Một định nghĩa dơn giản của timer là là một thanh ghi có khả năng tự
động tăng giá trị lên 1 sau mỗi xung nhịp Ngõ ra của tầng cuối làm xung nhịp
cho flip flop báo tràn của timer ( flip flop cd ) Gid tri nhị phân trong các flip flop của timer có thể xem như số đếm số xung nhịp ( hoặc sự kiện ) từ khi khởi
động timer
- MSCS51 cé hai timer 16 bit , mỗi timer có 4 cách làm việc Người ta sử
dụng các timer để :
Định khoảng thời gian
⁄ Đếm sự kiện hoặc tạo tốc độ baud cho port nối tiếp
_ Trong các ứng dụng địng khoảng thời gian , người ta lập trình timer Ở một kháng cách déu dan va dat cd tran timer Cờ được dùng để đồng bộ hóa
chương trình để thực hiện một tác động như kiểm tra trang thái ngõ vào và gỞI
sự kiện ra các ngõ ra Các ứng dụng khác có thể sử dụng việc tạo xung nhịp đều đặn của timer để đo khoảng thời gian trồi qua giữa hia sự kiện như đo độ
rộng xung (Bảng 3.5 )
Trang 38Bảng 3.5 : Kĩ thuật đỉnh thời cho 82C51
- Đếm sự kiện dùng để xác định số lần xẩy ra của một sự kiện Mot su
kiện là bất cứ tác động bên ngoài nào có thể cung cấp một chuyển trạn
trên một chân của MSC51 Các timer cũng có thể cung cấp xung nhịp tốc độ
baud cho port nối tiếp
_ Truy xuất các timer của MSC5 gồm các thanh ghi đặc biệt sau :
i Thanh ghi TMOD (Bảng 3.6):
Có địa chỉ 89H, là thanh ghi 8 bit, đặc các mode làm việc cho timer
Tóm tắt thanh ghi TMOD :
Tén Timer Mô tả
Bit céng , GATE =1 timer chi dém khi INT1=1
6 C/T 1 Bit chon counter/timer
C/T=1: counter, đếm bằng xung ck ngoài
ngõ vào TÌ
C/T=0 :timer, xung ck trong từ dao động nội
5 MI 1 Bit 1 chon mode
4 MO 1 Bit 0 chon mode
3 Gate 0 Bit cong (timer 0)
2 C/T 0 Bit chon timer/counter
1 Ml 0 Bit 1 chon mode
0 MO O Bit 0 chon mode
Bang 3.6 :Thanh _ ghi chifc nang TMOD
Chon mode (Bang 3.7 ):
Trang 39
Bảng 3.7 : Chọn mode cho thah ghỉ TMOD
ti Thanh ghi TCON :
Địa chỉ 88H, truy xuất bit được, là thanh ghi 8 bit
Tóm tắt thanh ghi TCON (Bảng 3.8):
Kihiệu — Địa chỉ bit Mota
TCON.4 | TRO 8CH piéu khién ON/OFF timer0
Bang 3.8 : Thanh ghi chức năng TCON
ii Các khoảng cách ngắn dài :
- Với tần số hoạt động của MSC51 là 12 MHz thi các timer có xung nhịp
MSCS5I1 có một port nối tiếp trong chip có thể hoạt động ở nhiều chế độ trên
một dãi tầng số rộng Chức năng chủ yếu của port nối tiếp f, là thực hiện chuyển đổi
song song sang nối iếp đối với dif ligu xua
với đữ liệu nhập
` 2 AR: wea
t , và chuyển đổi nối tiếp sang song 50n
Trang 40
Truy xuất phần cứng đến port nối tiếp qua cdc chan TxD va RxD Các chân
này có chức năng khác với hai bit của port P3.1 ở chân 11 ( TxD ) và P3.0 ở chân 10
(RxD )
Port nối tiếp cho hoật động song công ( full duplex : thu / phát đồng thời )
và bộ dém hic thu ( receiver buffering ) cho phép 1 kí tự được thu và được gift trong
khi kí tự thừ hai được nhận Nếu CPU đọc kí tự thừ nhất trước khi kí tự thứ hai đầy dui thi div liéusé khong bi mat
Giao điện nối tiếp ở bên trong của bộ vi xử lý 8951 cho phép nối bộ vi xử lý với một vi xử lý khác hay với một máy tính một cách rất đơn giản Bởi vì giao diện
được thực hiện nhờ bộ UART hoạt động độc lập, nên bộ vi xử lý hoàn toàn tự do
đối với các nhiệm vụ khác Để khởi tạo giao diện thanh ghi SCON cần phải được
nạp bằng các giá trị thích hợp
Thanh ghi SCON ( địa chỉ 28h)
[smo | smi | sm2 | REN | TB8_| RBS Tr | RI |
SMO, SM1 Chon mode lam viéc:
SMO SM1
0 0 :Mode 0 thanh ghi dịch 8 bit, baud rate cố định (fs/12)
0 1 ‘Mode 1 UART 8 bit, baud rate thay đổi (đặt bằng timer 1)
1 0 :Mode 2 UART 9bit , baurate c6 dinh (fy/32 hoac fix /64)
1 1 :Mode 3 UART 9 bit , baud rate thay đổi (đặt bằng timer 1)
SM2 : chế độ nhiều máy tính
REN : Cho phép bộ thu , cho phép bộ phát
TB8 : Bit phat thứ 9 trong mode 2 và 3, dat xóa bằng mềm
Thanh ghi dữ liệu của giao điện nối tiếp là SBUF ( địa chỉ 29H) Thực tế
phía sau thanh ghi SBUF là hai thanh ghi, cụ thể là thtanh ghi dữ liệu phát và thanh
ghi dữ liệu thu Quá trình phát được mở đâu một cách đơn giản là truy nhập để ghi lên thanh ghi SBUF Ngược lại , một byt€ đã được nhận có thể được đọc từ SBUF Trong chế độ 9 bit , mỗi một bit thứ 2 (TB8 hoặc TRể ) trong thanh ghi SMOD cần
phải được để ý đến