1. Trang chủ
  2. » Luận Văn - Báo Cáo

BÁO CÁO ĐỒ ÁN MÔN GHÉP NỐI MÁY TÍNH

29 817 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 29
Dung lượng 583,49 KB

Nội dung

TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI Khoa điện tử __o0o__ BÁO CÁO ĐỒ ÁN MÔN GHÉP NỐI MÁY TÍNH Đề tài: Thiết kế mô hình điều khiển đèn giao thông ở ngã tư sử dụng cổng nối tiếp Yêu cầu: Hệ thống có các đèn Xanh, Đỏ, Vàng (mô phỏng bằng các led lớn) điều khiển xe cộ, các đèn xanh, đỏ (mô phỏng bằng các led nhỏ) dành cho người đi bộ trên 2 hướng đi độc lập; có 02 đồng hồ đếm ngược hiển thị thời gian sáng của các đèn Xanh, Đỏ điều khiển xe cộ trên 2 hướng đi độc lập. Hệ thống có thể chạy ở các chế độ khác nhau trong ngày dựa vào đồng hồ thời gian thực trên máy tính: + Chế độ thường: Từ 7h đến 23h: Các đèn sángtắt; các đồng hồ đếm ngược theo quy luật như thực tế. + Chế độ nghỉ: Thời gian còn lại trong ngày: Chỉ có đèn Vàng nhấp nháy. LỜI NÓI ĐẦU Máy tính hiện nay đều có các thiết bị ngoài thông dụng như: màn hình, bàn phím, chuột, máy in… Tuy nhiên máy tính không chỉ dừng lại với thiết bị ngoại vi nói trên mà còn có những yêu cầu cao hơn như kết nối với các máy móc trong công nghiệp. Chính vì vậy nhà sản xuất đã trang bị một số cách thức để có thể ghép nối với bus của máy tính như: RS232, LPT, COM, USB, các khe PCI …Việc nghiên cứu để mở rộng giao tiếp của máy tính với thiết bị ngoại vi đã trở thành môn học chính thức của rất nhiều ngành học trong các giảng đường đại học. Sau một thời gian học tập và nghiên cứu môn học “Đo lường và điều khiển máy tính” dưới sự hướng dẫn của cô giáo. Chúng em đã thử nghiệm và hoàn thành đề tài của của cô giao cho nhóm. Mục đích của đề tài hướng đến: Bước đầu làm quen và thử nghiệm các cách giao tiếp đơn giản giữa máy tính và vi điều khiển thong qua cổng nối tiếp RS232. Hướng đến các phương thức giao tiếp cao hơn được ứng dụng trong thực tế như USB, RS234… Tuy đã rất cố gắng trong việc thực hiện đồ án tuy nhiên do kiến thức hiểu biết còn hạn hẹp nên khó tránh phải những sai sót. Rất mong nhận được những nhận xét quí báu từ cô để chúng em hoàn thiện đồ án một cách tốt nhất. Chúng em xin trân thành cảm ơn

Trang 1

TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI

Khoa điện tử o0o

BÁO CÁO ĐỒ ÁN MÔN GHÉP NỐI MÁY TÍNH

Đề tài: Thiết kế mô hình điều khiển đèn giao thông ở ngã tư sử dụng cổng nối tiếp

+ Chế độ nghỉ: Thời gian còn lại trong ngày: Chỉ có đèn Vàng nhấp nháy

Trang 2

LỜI NÓI ĐẦU

Máy tính hiện nay đều có các thiết bị ngoài thông dụng như: màn hình, bànphím, chuột, máy in… Tuy nhiên máy tính không chỉ dừng lại với thiết bị ngoại vinói trên mà còn có những yêu cầu cao hơn như kết nối với các máy móc trong côngnghiệp Chính vì vậy nhà sản xuất đã trang bị một số cách thức để có thể ghép nốivới bus của máy tính như: RS232, LPT, COM, USB, các khe PCI …Việc nghiêncứu để mở rộng giao tiếp của máy tính với thiết bị ngoại vi đã trở thành môn họcchính thức của rất nhiều ngành học trong các giảng đường đại học

Sau một thời gian học tập và nghiên cứu môn học “Đo lường và điều khiểnmáy tính” dưới sự hướng dẫn của cô giáo Chúng em đã thử nghiệm và hoàn thành

đề tài của của cô giao cho nhóm

Mục đích của đề tài hướng đến:

- Bước đầu làm quen và thử nghiệm các cách giao tiếp đơn giảngiữa máy tính và vi điều khiển thong qua cổng nối tiếp RS232

- Hướng đến các phương thức giao tiếp cao hơn được ứng dụngtrong thực tế như USB, RS234…

Tuy đã rất cố gắng trong việc thực hiện đồ án tuy nhiên do kiến thức hiểubiết còn hạn hẹp nên khó tránh phải những sai sót Rất mong nhận được nhữngnhận xét quí báu từ cô để chúng em hoàn thiện đồ án một cách tốt nhất

Chúng em xin trân thành cảm ơn!

Giáo viên hướng dẫn: Vũ Thị Thu Hương

Sinh viên thực hiện: Nuyễn Văn Hiền

Nguyễn Văn Hòa Nguyễn Tiến Hiệp Lớp: Điện tử 3 – K3

Trang 3

Máy tính Các thi t b ch p h nhế ị ấ à

M ch i u khi nạ đ ề ể

I) CƠ SỞ LÝ THUYẾT

1) Giới thiệu về giao tiếp máy tính

Hình 1: Mô hình giao tiếp giữa máy tính và thiết bị ngoại vi

Máy tính: Phần mềm điều khiển và giám sát được thiết kế trên máy tính có

chức năng gửi các tín hiệu điều khiển qua cổng giao tiếp của máy tính đếnmạch điều khiển, đồng thời nhận các tín hiệu về trạng thái hoạt động của cácthiết bị và hiển thị trên giao diện của phần mềm

Mạch điều khiển: Có nhiệm vụ đọc tín hiệu điều khiển từ máy tính rồi điều

khiển các thiết bị tương ứng, đồng thời gửi các tín hiệu về trạng thái hoạtđộng của các thiết bị lên máy tính

Các thiết bị chấp hành: Hoạt động theo sự điều khiển của các khối trên.

Trang 4

2) Cổng nối tiếp RS232

RS232 là một chuẩn giao tiếp nối tiếp dùng định dạng không đồng bộ, kếtnối nhiều nhất là với 2 thiết bị, chiều dài kết nối lớn nhất cho phép để đảm bảo dữliệu là 12.7 đến 25.4 m, tốc độ 20kBít/s đôi khi là tốc độ 115 k Bít/s với một sốthiết bị đặc biệt

Sơ đồ chân cổng Com (Cổng đực):

Tín hiệu truyền theo tiêu chuẩn RS - 232 của hãng EIA (Electronics IndustryAssociations)

Chuẩn RS-232 quy định mức logic 1 (mark) ứng với điện áp từ -3V đến-25V, mức logic 0 (space) ứng với điện áp từ 3V đến 25V và có khả năng cung cấpdòng từ 10 mA đến 20 mA Ngoài ra, tất cả các ngõ ra đều có đặc tính chống chậpmạch

Trang 5

 Định dạng của khung truyền dữ liệu theo chuẩn RS-232 như sau:

Khi không truyền dữ liệu, đường truyền sẽ ở trạng thái mark (điện áp -10V).Khi bắt đầu truyền, DTE sẽ đưa ra xung Start (space: 10V) và sau đó lần lượttruyền từ D0 đến D7 và Parity, cuối cùng là xung Stop (mark : -10V) để khôi phụctrạng thái đường truyền Dạng tín hiệu truyền mô tả như sau (truyền ký tự A):

 Các đặc tính kỹ thuật của chuẩn RS-232 như sau:

Chiều dài cable cực đại 15m

Trang 6

Tốc độ truyền dữ liệu được quy định chuẩn gồm các tốc độ: 300, 600, 1200,

2400, 4800, 9600, 19200, 28800, 56600 baud

 Các phương thức truyền thông nối tiếp

Có 3 phương thức truyền tin nối tiếp:

- Phương thức đồng bộ: Các byte chứa các bit thông tin được truyền liên tiếp trênđường truyền và chỉ được ngăn cách (phân biệt) nhau bằng bít đồng bộ khung(Hình 2a)

- Phương thức không đồng bộ: Các byte chứa các bit thông tin được chứa trongmột khung Một khung được bắt đầu bằng 1 bít Start, tiếp theo là các bit mangthông tin, kế tiếp là bít kiểm tra chẵn lẻ và kết thúc là bít Stop Khoảng các giữacác khung là các bít dừng bất kỳ, Khi đó đường truyền được đấy lên mức cao(Hình 2b)

- Phương thức lai: Đây là phương thức kết hợp của 2 phương thức trên, trong đócác bít trong 1 khung được truyền theo phương thức không đồng bộ còn các byteđược truyền theo phương thức đồng bộ

Hình 2: Các phương thức truyền tin nối tiếp

Trang 7

3) Giới thiệu vi mạch giao tiếp MAX 232

Vì tín hiệu của cổng COM thường ở mức ±12V nên không tương thích với mứcđiện áp TTL Muốn giao tiếp KIT Vi điều khiển 8051 với máy tính qua cổng COM tacần một vi mạch biến đổi điện áp cho phù hợp với mức TTL, ở đây ta chọn vi mạchMAX232 để thực hiện việc tương thích điện áp

Vi mạch MAX 232 của hãng MAXIM là một vi mạch chuyên dùng tronggiao diện nối tiếp với máy tính Chúng có nhiệm vụ chuyển đổi mức TTL ở lối vàothành mức +10V hoặc –10V ở phía truyền và các mức +3…+15V hoặc -3…-15Vthành mức TTL ở phía nhận

Vi mạch MAX 232 có hai bộ chuyển đổi mức từ TTL sang RS232 và hai bộlam chức năng ngược lại

Cụ thể, hai bộ chuyển mức R1IN → R1OUT, R2IN → R2OUT làm chứcnăng chuyển mức từ TTL sang RS232 Còn hai bộ chuyển mức T1IN → T1OUT,T2IN → T2OUT làm chức năng chuyển mức từ TTL sang RS232

Trang 8

4) Giao tiếp cổng nối tiếp của vi điều khiển AT89S52.

Chúng ta sẽ tìm hiểu các thanh ghi giúp cho vi điều khienr có thể giao tiếp với máy tinh

Thanh ghi điều khiển timer: TCON

TF1: Báo trạng thái tràn cho bộ Timer/Counter1

TR1: Điều khiển cấp xung cho bộ Timer/Counter1

TF0: Báo trạng thái tràn cho bộ Timer/Counter0

TR0: Điều khiển cấp xung cho bộ Timer/Counter0

IE1: Báo trạng thái ngắt ngoài 1

IT1: Cho phép tác động ngắt ngoài 1 bằng cạnh xuống (default IT1 = 0, tác

động ngắt bằng mức thấp)

IE0: Báo trạng thái ngắt ngoài 0

IT0: Cho phép tác động ngắt ngoài 0 bằng cạnh xuống (default IT1 = 0, tác

động ngắt bằng mức thấp)

Thanh ghi chế độ timer: TMOD

Là thanh ghi 8 bit, truy xuất (ghi/đọc) byte

GATE, C/T: Điều khiển trạng thái hoạt động cho Timer/Counter

M1, M0: Chọn chế độ hoạt động cho Timer/Counter

Trang 9

T I 6

Thanh ghi điều khiển truyền/nhận nối tiếp: SCON (Serial CONtrol)

SM0: Bit 0 chọn chế độ của port nối tiếp

SM1: Bit 1 chọn chế độ của port nối tiếp

SM2: Bit 2 chọn chế độ của port nối tiếp

REN: Cho phép thu Bít này phải được set để nhận các kí tự

0 0 0 Là thanh ghi dịch 8 bit, tốc độ [OSC]/12

0 1 1 Truyền nhận 8 bit, tốc độ thay đổi được

1 0 2 Truyền nhận 9 bit, tốc độ là [OSC]/32 hoặc [OSC]/64

1 1 3 Truyền nhận 9 bit, tốc độ thay đổi được

Cổng nối tiếp

Trang 10

AT89S52 có một cổng (Port) nối tiếp trong chip có thể hoạt động ở nhiều chế độ khác nhau Chức năng chủ yếu của port nối tiếp là thực hiện chuyển đổi song song sang nối tiếp với dữ liệu xuất và chuyển đổi từ nối tiếp sang song song với dữ liệu nhập để có thể giao tiếp với máy tính qua cổng nối tiếp hoặc các thiết bịtương ứng.

Port nối tiếp có bốn chế độ hoạt động, trong đó ở chế độ 1 port nối tiếp hoạt động như một bộ UART 8 bit có tốc đọ thay đổi Dữ liệu được truyền nối tiếp trên chân TXD và nhận nối tiếp trên chân RXD Chế độ này cung cấp cho AT89S52 một công cụ giao tiếp với máy tính qua cổng COM

Thao tác trao đổi dữ liệu qua port nối tiếp bao gồm 3 bước chính:

- Khởi tạo cổng nối tiếp

+ Truy xuất SCON để đặt các thông số như chế độ hoạt động, cho phép thu,…+ Thiết lập hoặc xóa bit SMOD của thanh ghi PCON để đặt hệ số chia của tốc

độ baud

+ Truy xuất các thanh ghi của các bộ Timer1 và Timer 2 để đặt cấc tốc độ baudcho cổng nối tiếp (chỉ với chế dộ 1và3)

- Kiểm tra cờ TI (khi truyền) và RI (khi nhận)

- Ghi/đọc byte dữ liệu ở SBUF

5) Phần mềm lập trình Visual Basic 6.0

Visual Basic là ngôn ngữ lập trình hướng đối tượng, mỗi đối tượng lập trìnhnhư nút nhấn, textbox… sẽ có một chương trình riêng bên trong, các đối tượng này

có các thuộc tính và các phương thức riêng để hoạt động

Truyền thông nối tiếp của Visual basic.

RXD TXD

D Thanh ghi dịch CLK

SBUF CLK (chỉ ghi)

Trang 11

Việc truyền thông nối tiếp trên Windows được thực hiện thông qua mộtActiveX có sẵn là Microsoft Comm Control ActiveX này được lưu trữ trong fileMSCOMM32.OCX Quá trình này có hai khả năng thực hiện điều khiển trao đổithông tin:

- Điều khiển sự kiện: Truyền thông điều khiển sự kiện là phương pháp tốtnhất trong quá trình điều khiển việc trao đổi thông tin Quá trình điều khiển thựchiện thông qua sự kiện OnComm

- Hỏi vòng: Quá trinh điều khiển bằng phương pháp hỏi vòng thực hiệnthông qua kiểm tra các giá trị của thuộc tính CommEvent sau một chu kỳ nào

đó để xác định xem có sự kiện nào xảy ra hay không Thông thường phươngpháp này sử dụng cho các chương trình nhỏ

- ActiveX MsComm được bổ sung vào một Visual Basic Project thông

qua menu Project > Components:

- Biểu tượng của MsComm: và các thuộc tính cơ bản mô tả như sau:

Settings:

- Xác định các tham số cho cổng nối tiếp

- Cú pháp: MSComm1.Settings = ParamString

- MSComm1: tên đối tượng

- ParamString: là một chuỗi có dạng như sau: "BBBB,P,D,S"

- BBBB: tốc độ truyền dữ liệu (bps) trong đó các giá trị

hợp lệ là:

Trang 12

N Không kiểm tra

- D: số bit dữ liệu (4, 5, 6, 7 hay 8), mặc định là 8 bit trong một khung truyền

- S: số bit stop (1, 1.5, 2)

VD: MSComm1.Settings = "9600,N,8,1" sẽ xác định tốc độ truyền 9600bps, không kiểm tra parity với 1 bit stop và 8 bit dữ liệu

- Đặt trạng thái hay kiểm tra trạng thái đóng / mở của cổng nối tiếp

Cú pháp: MSComm1.PortOpen = True / False

- Giá trị xác định là True sẽ thực hiện mở cổng và False để đóng cổngđồng thời xoá nội dung của các bộ đệm truyền, nhận

VD: Mở cổng COM1 với tốc độ truyền 9600bps

MSComm1.Settings = "9600,N,8,1" MSComm1.CommPort = 1

MSComm1.PortOpen = True

Các thuộc tính nhận dữ liệu:

- Input: nhận một chuỗi ký tự và xoá khỏi bộ đệm.

Cú pháp: InputString = MSComm1.Input

Trang 13

Thuộc tính này kết hợp với InputLen để xác định số ký tự đọc vào Nếu

InputLen=0 thì sẽ đọc toàn bộ dữ liệu có trong bộ đệm

VD: Đọc toàn bộ nội dung trong bộ đệm nhận nếu có dữ liệu

MSComm1.InputLen = 0

If MSComm1.CommEvent = comEvReceive Then

InputString = MSComm1.Input

End If

Các thuộc tính xuất dữ liệu:

Bao gồm các thuộc tính Output, chức năng của các thuộc tính này giống

như các thuộc tính nhập.VD: MSComm1.Output=giá trị cần xuất ra

CommEvent:

Trả lại các sự kiện xảy ra tại cổng nối tiếp như sau:

ComEvReceive 2 Khi có ký tự trong bộ đệm nhận

ComEvCTS 3 Có thay đổi trên CTS (Clear To Send)ComEvDSR 4 Có thay đổi trên DSR (Data Set Ready)ComEvCD 5 Có thay đổi trên CD (Carrier Detect)

II) CHƯƠNG TRÌNH MÔ PHỎNG

1) Giao diện VB

Trang 14

Chương trình chạy trên phần mêm VB 6.0 có giao diện để điều khiển hoạt động của mô hình giao thông bằng cách gửi dữ liệu trực tiếp từ máy tính thông quacổng COM xuống vi điều khiển để điều khiển hệ thống đèn.

Nếu vi điều khiển nhận được chữ cái “N” tương ứng với hệ thống sẽ hoạt đông ở chế độ ban ngày “hình ảnh ông mặt trời”

Nếu vi điều khiển nhận được chữ cái “D” tương ứng với hệ thống sẽ hoạt động ở chế độ ban đêm “hình ảnh ông trăng”

Sau đây là toàn bộ Code của chương trình VB:

*************************************************************Option Explicit

Dim bien1, bien2, bien3 As Integer

Private Sub Command1_Click()

Trang 15

Date = Format(Text2.Text, "dd/mm/yyyy")

MsgBox ("Ngay cua he thong da duoc thay doi")

Trang 16

Private Sub Command7_Click()

bien2 = MsgBox("Ban thuc su muon thoat khoi chuong trinh?",

vbOKCancel + vbQuestion, "Thoat")

.Settings = "9600,N,8,1" ' thiet dat cau hinh cong COM

.CommPort = 1 'su dung cong COM1

.RThreshold = 1

.SThreshold = 0

.InputMode = 0 'comInputModeText 0

.InputLen = 2 'Doc toan bo du lieu trong bo dem nhan

If PortOpen = False Then ' mo cong

Trang 17

Private Sub Timer2_Timer()

If (7 < Hour(Now) And Hour(Now) < 23) Then

Trang 19

 Mô phỏng Proteus

Sau đây là mạch mô phỏng trên phần mềm mô phỏng Proteus:

Mạch mô phỏng điều khiển đèn giao thông

Trang 21

sbit kcp1=P1^7;

unsigned char M[10]= {0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};unsigned long int dv0,c0,c1,dv1;

unsigned long int i,j,dem=0;

unsigned char dem1;

void delay (unsigned long n)

Trang 22

x1=0;d2=0;cp2=0;kcp1=0;//led sang v1=1;d1=1;cp1=1;kcp2=1;v2=1;x2=1;//led toi

Trang 24

}

if(dem>25 &&dem<= 30) // giai doan {

v1=0;d2=0;cp2=0;kcp1=0;//led sang x1=1;d1=1;cp1=1;kcp2=1;v2=1;x2=1;//led toi

Trang 25

} // Giai doan 3 if(dem>30 && dem<=55) {

d1=0;x2=0;cp1=0;kcp2=0;//led sang x1=1;v1=1;kcp1=1;v2=1;d2=1;cp2=1;//led toi c0=(55-dem)/10;

Trang 26

d1=0;v2=0;cp1=0;kcp2=0;//led sang x1=1;v1=1;kcp1=1;x2=1;d2=1;cp2=1;//led toic1=(60-dem)/10;

dv1=(60-dem)%10;

Trang 27

}else if(luu=='D')

{dem=0;

led4=0;led1=0;led2=0;led3=0;

v1=0;v2=0;//led sangx1=1;d1=1;cp1=1;kcp1=1;x2=1;d2=1;cp2=1;kcp2=1;//led toi

Trang 28

led4=0;led1=0;led2=0;led3=0;

v1=1;v2=1;//led sangx1=1;d1=1;cp1=1;kcp1=1;x2=1;d2=1;cp2=1;kcp2=1;//led toidelay(2000);

} }

Trang 29

MỤC LỤCLời mở đầu………trang 1I)Cơ sở lý thuyết………trang 31) Giới thiệu về giao tiếp máy tính………trang 32) Cổng nối tiếp RS232……….trang 33) Vi mạch MAX232……….trang 7 4) Giao tiếp cổng nối tiếp với AT89S52………trang 75) Phần mềm VB6.0……… trang 11II) Chương trình mô phỏng………trang 14

Ngày đăng: 03/11/2014, 14:55

HÌNH ẢNH LIÊN QUAN

Hình 1: Mô hình giao tiếp giữa máy tính và thiết bị ngoại vi - BÁO CÁO ĐỒ ÁN MÔN GHÉP NỐI MÁY TÍNH
Hình 1 Mô hình giao tiếp giữa máy tính và thiết bị ngoại vi (Trang 3)
Sơ đồ chân cổng Com  (Cổng đực): - BÁO CÁO ĐỒ ÁN MÔN GHÉP NỐI MÁY TÍNH
Sơ đồ ch ân cổng Com (Cổng đực): (Trang 4)
Hình 2: Các phương thức truyền tin nối tiếp - BÁO CÁO ĐỒ ÁN MÔN GHÉP NỐI MÁY TÍNH
Hình 2 Các phương thức truyền tin nối tiếp (Trang 6)

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w