Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 23 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
23
Dung lượng
1,26 MB
Nội dung
Trường ĐHCN Hà Nội – Khoa Cơ Khí Đề tài 28 TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI KHOA CƠ KHÍ & BÁO CÁO ĐỒ ÁN MÔN GHÉP NỐI MÁY TÍNH Đề tài: Thiết kế bộ dòng điện và vẽ đồ thị trên máy tính sử dụng cổng nối tiếp GIÁO VIÊN HƯỚNG DẪN : DANH SÁCH THÀNH VIÊN: LỚP : 1 Trường ĐHCN Hà Nội – Khoa Cơ Khí Đề tài 28 LỜI NÓI ĐẦU Trong các máy tính thế hệ hiện nay có một số thiết bị ngoài thông dụng như: Màn hình, bàn phím, chuột, máy in…với các thiết bị ngoài đó máy tính đều có khối ghép nối tương ứng và chúng được tích hợp luôn trên một bo mạch gọi là main board. 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ó 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…và đã được các nhà sản xuất lưu tâm tới và họ để trống vô số các con đường có thể ghép nối với bus của máy tính như: RS232, LPT, COM, USB, các khe PCI …Đây chính là con đường ai muốn nghiên cứu mở rộng phạm vi kết nối của máy tính kết hợp sử dụng với bộ vi điều khiển có thể lập trình được. Qua nội dung môn học được nghe thầy giảng dậy và tìm hiểu tài liệu, và trong phạm vi đồ án nhỏ này chúng em thực hiện việc kết nối với máy tính qua cổng COM với bo mach ngoài, cụ thể là bo mạch ngoài dùng vi điều khiển để đo và điều khiển nhiệt độ và nhận nhiệt độ khống chế từ máy tính rồi hiển thị kết quả đo được trên máy tính thông qua cổng COM. Mục đích của đề tài hướng đến: tạo ra bước đầu cho sinh viên thử nghiệm ứng dụng vi điều khiển để giao tiếp với máy tính. Việc thực hiện xong đồ án môn học bằng các kiến thức đã học, một số sách tham khảo và một số nguồn tài liệu khác nên không tránh khỏi những thiếu sót. Vì vậy nhóm rất mong được sự góp ý của thầy cô và các bạn. Chúng em xin trân thành cảm ơn! 2 Trường ĐHCN Hà Nội – Khoa Cơ Khí Đề tài 28 MỤC LỤC Lời giới thiệu………………… PHẦN I: Giới thiệu khái quát PHẦN II: Thi công Mạch A.Thiết kế mạch ghép nối: Sơ đồ nguyên lý của mạch thiết kế. Nguyên lý hoạt động của mạch. B. Thiết kế lập trình: Lập trình cho vi điều khiển. Hiển thị máy tính PHẦN III: Kết luận 3 Trường ĐHCN Hà Nội – Khoa Cơ Khí Đề tài 28 PHẦN I: GIỚI THIỆU KHÁI QUÁT I.Giới thiệu về đồ án “Thiết kế bộ dòng điện và vẽ đồ thị trên máy tính sử dụng cổng nối tiếp”: Đây là mô hình của ứng dụng xác định dòng điện của thiết bị tiêu thụ có thể được ứng dụng trong các mô hình thí nghiệm trong các lĩnh vực có liên quan mà yêu cầu độ chính xác không cao hoặc trong các thiết bị thí nghiệm cho trường học. Trong đồ án chúng em có sử dụng điện trở công suất để xác định điện áp nhằm xác định dòng điện chạy qua. Sau đó dòng điện sẽ được gửi lên hiển thị giá tri và vẽ đồ thị trên màn hình máy tính qua cổng nối tiếp sử dụng phần mềm VB. II.Ý tưởng và sơ đồ khối: -Đo điện áp của trở công suất đưa vào ADC. -Khối biến đổi A/D có nhiệm vụ số hoá tín hiệu ra của cảm biến nhiệt để đưa vào bộ vi điều khiển. -MAX232 để chuyển đổi mức logic từ TTL của vi điều khiển phù hợp với RS232 của máy tính. Sơ đồ khối của hệ thống được minh hoạ theo hình sau: VĐK 89S52 Máy tính Trở công suất Sơ đồ khối Dòng điện ADC0804 MAX232 4 Trường ĐHCN Hà Nội – Khoa Cơ Khí Đề tài 28 Visual basic nhận giá trị điện áp được biến đổi bởi ADC0804 được truyền tới từ 89s52 , rồi xử lý tính, hiển thị và vẽ giá trị thu được trên màn hình máy tính. Để tính dòng điện chúng em có sử dụng công thức : U= IxR ; => I=U/R; III.Phương hướng thực hiện và nguyên lý hoạt động: Đầu tiên cho dòng điện chạy qua điện trở công suất, sau đó đo điện áp của trở công suất. Đưa điện áp vào LM358. LM358 có trở nội rất lớn làm dòng đưa vào ADC0804 nhỏ mà vẫn giữ nguyên điện áp cần đo. Điện áp(tín hiệu lien tục) đưa vào ADC0804 sẽ biến đổi thanh tín hiệu số ở dạng nhị phân 8bit. VĐK sẽ đọc giá trị của ADC rồi gửi lên máy tính. IV.Sơ đồ nguyên lý và nguyên tắc hoạt động của linh kiện: 1. Giới thiệu về 89S52:: 1.Port 0 (P0.0 – P0.7) Port 0 gồm 8 chân, ngoài chức năng xuất nhập, Port 0 còn là bus đa hợp dữ liệu và địa chỉ (AD0-AD7), chức năng này sẽ được sử dụng khi AT89S52 giao tiếp với thiết bị ngoài có kiến trúc Bus như địa vị các mạch nhớ, mạch PIO… 2. Port 1 (P1.0 – P1.7) Đối với họ 8051, chức năng duy nhất của Port 1 là chức năng xuất nhập cũng như các Port khác, Port 1 có thể xuất nhập theo bit và theo byte. Riêng dòng 89Sxx, ba chân P1.5, P1.6, P1.7 được dùng để nạp ROM theo chuẩn ISP; hai chân P1.0 và P1.1 được dùng cho bộ Timer 2. 3. Port 2 5 Trường ĐHCN Hà Nội – Khoa Cơ Khí Đề tài 28 Port 2 ngoài chức năng là cổng vào/ra như port 0 và port 1 còn là byte cao của địa chỉ khi sử dụng bộ nhớ ngoài. 4. Port 3 Mỗi chân trên Port 3 ngoài chức năng xuất nhập còn có một chức năng riêng cụ thể như sau: Bit Tên Chức năng P3.0 RXD Dữ liệu nhận cho Port nối tiếp P3.1 TXD Dữ liệu truyền cho Port nối tiếp P3.2 INT0 Ngắt bên ngoài 0 P3.3 INT1 Ngắt bên ngoài 1 P3.4 T0 Ngõ vào của Timer/counter 0 P3.5 T1 Ngõ vào của Timer/counter 1 P3.6 /WR Xung ghi bộ nhớ dữ liệu ngoài P3.7 /RD Xung đọc bộ nhớ dữ liệu ngoài 5. Chân /PSEN (program Store Enable ) /PSEN là chân điều khiển đọc chương trình ở bộ nhớ ngoài, nó được nối với chân /OE để cho phép đọc các byte mã lệnh trên ROM ngoài. /PSEN sẽ ở mức thấp trong thời gian đọc mã lệnh. Mã lệnh được đọc từ bộ nhớ ngoài qua bus dữ liệu (port 0) thanh ghi lệnh để được giải mã. Khi thực hiện chương trình trong ROM nội thì /PSEN ở mức cao. 6. Chân ALE (Address Latch Enable ) ALE là tín hiệu điều khiển chốt địa chỉ có tần số bằng 1/6 tần số dao động của vi điều khiển. Tín hiệu ALE được dùng để cho phép vi mạch chốt bên ngoài như 74373, 74375 chốt byte địa chỉ thấp ra khỏi bus đa hợp địa chỉ/dữ liệu ( Port 0 ) 7. Chân /EA (External Access ) Tín hiệu /EA cho phép chọn bộ nhớ chương trình là bộ nhớ trong hay ngoài của vi điều khiển. Nếu /EA ở mức cao (nối với Vcc), thì vi điều khiển thi hành chương trình trong ROM nội. N ếu /EA ở mức thấp (nối GND) thì vi điều khiển thi hành chương trình từ bộ nhớ ngoài. 8.RST (Reset) Ngõ vào RST trên chân 9 là ngõ reset của chíp. Khi tín hiệu này được đưa lên mức cao (trong ít nhất 2 chu kỳ máy), các thanh ghi trong bộ vi điều khiển được tải những giá trị thích hợp để khởi động hệ thống. 9.XTAL1, XTAL2 AT89S52 có một bộ dao động trên chíp, nó thường được nối với bộ dao động thạch anh có tần số lớn nhất là 33MHz, thông thường là 12MHz. 10. Vcc, GND 6 Trường ĐHCN Hà Nội – Khoa Cơ Khí Đề tài 28 AT89S52 dùng nguồn một chiều có dải điện áp từ 4V đ ến 5,5V được cấp qua chân 40 và 20 11.Chân 40 nối với nguồn nuôi 5V 12.Chân 20 nối Mass. Về tổ chức bộ nhớ gồm có bộ nhớ chương trình và bộ nhớ dữ liệu. Ngoài ra các thanh ghi chức năng và chế độ hoạt động được nói rõ trong các tài liệu về vi điều khiển 8051. Ở đây chỉ nêu khái quát về hình dạng và sơ đồ chân của chíp AT89S52 dùng trong mạch điều khiển nhiệt độ thôi. 2.Giới thiệu về mạch biến đổi ADC: Mạch biến đổi A/D có nhiệm vụ biến đổi điện áp tương tự từ cảm biến nhiệt thành tín hiệu số để gửi đến vi điều khiển. Để lựa chọn sử dụng các vi mạch A/D người ta thường căn cứ vào 2 thông số chính là: Độ phân giải hay số bit đầu ra, số bit đầu ra của ADC quyết định đến độ chính xác của phép biến đổi, số bít càng lớn thì sai số lượng tử càng nhỏ Tốc độ biến đổi được tính bằng số mẫu hoàn thành trong 1 giây (sample/s), nó tỷ lệ nghịch với thời gian Trong ứng dụng điều khiển nhiệt độ, nhiệt độ là 1 biến đổi chậm nên ta chọn vi mạch A/D thông dụng trên thị trường là ADC0804. ADC0804 là bộ biến đổi A/D 8 bit đủ đáp ứng được yêu cầu về độ chính xác đặt. ADC0804 có các dặc tính sau: Đầu ra được đệm bằng các cổng 3 trạng thái nên có thể ghép trực tiếp vào bus dữ liệu mà không cần mạch đệm dữ liệu ở bên ngoài; Thời gian biến đổi cỡ 100µs/mẫu; Không cần hiệu chỉnh điểm 0; Khi điện áp nguồn nuôi là 5V thì tín hiệu đầu vào cực đại là 5V; Tất cả các tín hiệu đều tương thích mức TLL; Dòng tiêu thụ cỡ nhỏ, cỡ 1,9mA.Hình ảnh mô tả ADC0804: 7 Trường ĐHCN Hà Nội – Khoa Cơ Khí Đề tài 28 3.Giới thiệu về Max232: Bộ vi điều khiển AT89S52 có khả năng giao tiếp với thế giới bên ngoài thông qua cổng nối tiếp. Vấn đề trở ngại duy nhất khi giao tiếp với máy tính là mức logic ở bộ vi điều khiển và ở cổng COM của máy tính khác nhau, cụ thể như sau: SO SÁNH ĐIỆN ÁP CỦA CÁC MỨC LOGIC GIỮA RS232 VÀ TTL Đối tượng Mức logic Mức điện áp tương ứng Cổng COM (RS232) 1 -12V đến -3V 0 +3V đến +12V Vi điều khiển (Mức TTL) 1 +5V 0 0V Khắc phục vấn đề này, người ta sử dụng vi mạch MAX232 để chuyển đổi mức điện áp giữa hai chuẩn. Vi mạch này có chứa hai bộ chuyển đổi mức logic từ TTL sang RS232 và ngược lại. Hình ảnh của vi mạch MAX232 như sau: MAX232 được lắp với cổng COM của máy tính như sau: 8 Trường ĐHCN Hà Nội – Khoa Cơ Khí Đề tài 28 Vi điều khiển AT89S52 được giao tiếp với máy tính thông qua MAX232 như hình vẽ: 4.Cổng Com: RS232 là một chuẩn giao tiếp nối tiếp dùng định dạng không đồng bộ, kết nố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à 50 – 100 feet ( 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 : 9 Trường ĐHCN Hà Nội – Khoa Cơ Khí Đề tài 28 Tín hiệu truyền theo chuẩn RS-232 của EIA (Electronics Industry Associations). Chuẩn RS-232 quy định mức logic 1 ứng với điện áp từ -3V đến -25V (mark), mức logic 0 ứng với điện áp từ 3V đến 25V (space) và có khả năng cung cấp dò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ập mạch. Các đặc tính kỹ thuật của chuẩn RS-232 như sau: Các tốc độ truyền dữ liệu thông dụng trong cổng nối tiếp là: 1200 bps, 4800 bps, 9600 bps và 19200 bps 10 [...]... 5 Điện trở công suất: Điện trở công xuất : Là các điện trở có công xuất lớn hơn từ 1W, 2W, 5W, 10W Khi mắc điện trở vào một đo n mạch, bản thân điện trở tiêu thụ một công xuất P tính được theo công thức P=UxI=IxIxR Theo công thức trên ta thấy, công xuất tiêu thụ của điện trở phụ thuộc vào dòng điện đi qua điện trở hoặc phụ thuộc vào điện áp trên hai đầu điện trở Công xuất tiêu thụ của điện trở... điện áp trên hai đầu điện trở Công xuất tiêu thụ của điện trở là hoàn toàn tính được trước khi lắp điện trở vào mạch Nếu đem một điện trở có công xuất danh định nhỏ hơn công xuất nó sẽ tiêu thụ thì điện trở sẽ bị cháy Nên khi mắc điện trở các pác chú ý đến công suất của điện trở Thông thường ta lắp điện trở vào mạch có công xuất danh định > = 2 lần công xuất mà nó sẽ tiêu thụ 6.Một số các thuộc tính của... mở, tích mức thấp khi cổng đóng Và hiển nhiên khi RTSEnable thì đường RTS luôn mức thấp 13 Trường ĐHCN Hà Nội – Khoa Cơ Khí Đề tài 28 - PHẦN II: THI CÔNG A Sơ đồ nguyên lý và sơ đồ mạch in: 1.Sơ đồ nguyên lý: 14 Trường ĐHCN Hà Nội – Khoa Cơ Khí Đề tài 28 - 2.Sơ đồ mạch in: 15 Trường ĐHCN Hà Nội... OutBuferSize: giống như InBuferSize, mặc định là 512 + ParityReplace: thiết lập và trả lại kí tự thay thế kí tự không đúng trong lỗi giống nhau + PortOpen: thiết lập và trả lại tính trạng của cổng(đóng hoặc mở) object.PortOpen [ = value ] value = true cổng mở value =false cổng đóng và xóa toàn bộ dữ liệu trong bộ đệm nhận và truyền + RthresHold: object.Rthreshold [ = value ] value kiểu số nguyên Thiết... bài, chúng ta nắm bắt được những kiến thức cơ bản về vi điều khiển, kết nối máy tinh qua cổng Com , chúng ta có được kết qua đo thực tế về nhiệt độ, đưa ra được các thông số đánh giá về sai số của phép đo Bài tập lớn giúp chúng ta hiểu rõ hơn về các linh kiện như ADC, LM358 ,89S52 …… Ngoài ra còn tích lũy cho chúng ta một số kinh nghiệm về quá trình làm mạch Ngoài ra còn tích lũy cho chúng ta một số... cao khi cổng mở, và thấp khi cổng đóng Nếu DTREnable = false thì đường đó luôn mức thấp Trong phần lớn trường hợp set đường Data Terminal Ready thành thấp để hang up telephone + InBufferCout: trả lại số kí tự đang có trong bộ đệm nhận Bạn có thể xoá bộ đệm nhận bằng cách đặt thuộc tính này =0 Không nhầm với thuộc tính InBufferSize là tổng kích thước của bộ đệm nhận + Input: nhận và xoá dữ liệu trong... : thiết lập hoặc xoá tín hiệu object.Break [ = value] value = true hoặc false Khi set value= true thì thông số Break này sẽ gửi một tín hiệu break Tín hiệu break trì hoàn việc truyền dữ liệu và đưa đường truyền vào trạng thái break tới khi mà value = false + CDHolding: quết định xem sự truyền này đến đâu bằng cách truy vấn đường CD( Carrier Detect) Carrier Detect là tín hiệu gửi từ modem tới máy tính... tính sẵn sàng là nơi nhận dữ liệu Khi DTREnable = true thì đường Data Terminal Ready set lên cao khi cổng mở, và thấp khi cổng đóng Nếu DTREnable = false thì đường đó luôn mức thấp Trong phần lớn trường hợp set đường Data Terminal Ready thành thấp để hang up telephone + Handshaking: thiết lập và trả lại giao thức bắt tay phần cứng object.Handshaking [ = value ] Các giá trị của value: comNone comXOnXOff... Input: nhận và xoá dữ liệu trong bộ đệm nhận Nếu InputMode là comInputModeText thì giá trị trả về sẽ là một xâu tức có kiểu String , dữ liệu dạng text trong một biến kiểu Variant Nếu InputMode = comInputModeBinary thì thuộc tính này sẽ trả lại dữ liệu dạng nhị phân dưới dạng một mảng kiểu byte trong một biến Variant + OutBufferCount: trả lại số kí tự trong bộ đệm truyền + Output: ghi dữ liệu vào bộ đệm... : thiết lập hoặc xoá tín hiệu object.Break [ = value] value = true hoặc false Khi set value= true thì thông số Break này sẽ gửi một tín hiệu break Tín hiệu break trì hoàn việc truyền dữ liệu và đưa đường truyền vào trạng thái break tới khi mà value = false + CDHolding: quết định xem sự truyền này đến đâu bằng cách truy vấn đường CD( Carrier Detect) Carrier Detect là tín hiệu gửi từ modem tới máy tính . Sub '================================================================' '================================================================' 19 Trường ĐHCN Hà Nội – Khoa Cơ Khí Đề tài 28 Private Sub vedothi_Click() ve = True 'Khi nut Ve dc nhan thi cho bien Ve= TRUE End Sub '================================================================' '================================================================' Private. binh s1=0; //khoi dong lai cac gia tri dem=0; //khoi dong lai cac gia tri delay(10000); //tre putchar(s); //gui gia tri adc len may tinh if(adc_gt >=199) //khi gia tri dong la 1 ampe led=. thi u………………… PHẦN I: Giới thi u khái quát PHẦN II: Thi công Mạch A .Thi t kế mạch ghép nối: Sơ đồ nguyên lý của mạch thi t kế. Nguyên lý hoạt động của mạch. B. Thi t kế lập trình: Lập trình