thiết kế bộ đo tốc độ của vật chuyển động tịnh tiến
Vi xử lý và ghép nối máy tính TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI KHOA CƠ KHÍ ĐỒ ÁN MÔN HỌC VI XỬ LÍ VÀ GHÉP NỐI MÁY TÍNH Đề tài: Thiết kế bộ đo tốc độ của vật chuyển động tịnh tiến. Giảng viên hướng dẫn: Ths.Vũ Thị Thu Hương SVTH: Nguyễn Văn Thái Trần Văn Tiến Lê Duy Tú Hà Nội 8/2013 Trang 1 Vi xử lý và ghép nối máy tính Mục Lục Mục Lục 2 Lời Nói Đầu 3 Phần I: Giới thiệu chung về ghép nối máy tính 4 A. Giới thiệu 4 Phần II: ghép nối truyền tin nối tiếp 7 I. Khái Niệm Về Truyền Tin Nối Tiếp 7 II. Cổng Nối Tiếp 8 Phần III: Nội dung đề tài 13 I. Chương trình điều khiển bằng VB 13 II. Chương trình vi điều khiển 14 III. Sơ Đồ Nguyên Lý 17 IV. Sơ Đồ Mạch In: 18 V. Mô phỏng 19 Kết luận 20 Trang 2 Vi xử lý và ghép nối máy tính Lời Nói Đầu Ngày nay, các thiết bị máy móc, hệ thống nhằm phục vụ đời sống con người trong sinh hoạt cũng như trong sản xuất phát triển nhanh và ngày càng thông minh. Sở dĩ có được điều đó là nhờ ứng dụng thành tựu của khoa học kỹ thuật. Một trong vô số những thành tựu của khoa học kỹ thuật nói chung, của khoa học kỹ thuật điện tử nói riêng là bộ vi điều khiển, ghép nối máy tính. Trong các thiết bị điện và điện tử dân dụng, các bộ vi điều khiển điều khiển các hoạt động của ti vi, máy giặt, đầu đọc laser, điện thoại, lò vi ba trong hệ thống sản xuất tự động, bộ vi điều khiển được sử dụng trong rụ bốt, dây truyền tự động, các hệ thống càng thông minh thì vai trò của hệ vi điều khiển càng quan trọng. Đây là nói đến vi điều khiển, còn ghép nối máy tính có nó cũng có rất nhiều ứng dụng có liên quan đến vi điều khiển. Ghép nối máy tính với máy in, máy quét, máy ảnh, máy quay phim qua các cổng ghép nối của máy tính. Qua học tập và nghiên cứu chúng em đã tìm hiểu về đề tài : Thiết kế đồng hồ thời gian thực hiển thị LCD sử dụng cổng nối tiếp. Do thời gian nghiên cứu và kinh nghiệm còn hạn chế nên không tránh khỏi những thiếu sót. Vì vậy, em rất mong sự góp ý chỉ bảo của các thầy cô và các bạn. Chúng em xin chân thành cảm ơn! Hà Nội, Ngày 23Tháng 08 Năm 2013 Giáo viên hướng dẫn :Vũ Thị Thu Hương Nhóm sinh viên thực hiện: Cao Tiến Trung Trần Văn Cường Vũ Đình Duẩn Lớp : Cơ điện tử 2 – k5 Trang 3 Vi xử lý và ghép nối máy tính Phần I: Giới thiệu chung về ghép nối máy tính A. Giới thiệu Sự phát triển của ghép nối máy tính đã mở rộng đáng kẻ các lĩnh vực ứng dụng của máy tính, đặc biệt là đo lường và điều khiển. Thực tế cho thấy, trong các công ty xí nghiệp đã ứng dụng kỹ thuật ghép nối rất nhiều, Ví Dụ: Những điều khiển CNC, dây truyền công nghệ sản xuất xi măng, điều khiển các thiết bị khác nhau như những phần cứng và chương trình do người sử dụng viết, ngôn ngữ giao tiếp là: Pascal, C++, ASM, VB, VB.net có khả năng ghép nối máy tính có độ chính xác cao, thời gian thu nhập số liệu ngắn và quan trọng là mức thu thập và xử lý các kết quả. Đề tài, đo điện áp một chiều hiển thị trên màn hình LCD và trên máy tính dạng đồ thị là một đề tài tương đối khó và có nhiều ứng dụng trong ngàng điện tử và mộ số ngành khác. B. Sự giao tiếp giữa máy tính và các khối ghép nối. I. Máy tính và các khối ghép nối. Như chúng ta đã biết cấu trúc của một máy tính được chia làm 3 phần chính: Khối xử lý trung tâm CPU làm nhiệm vụ thu thập và xử lý mỗi dữ liệu. Khối nhớ (Memory): Lưu trữ các loại dữ liệu khác nhau đưa vào lấy và lấy ra ở CPU. Khối vào ra (I/O): Làm nhiệm vụ tương thích với các thiết bị bên ngoài và đường Bus trong máy tính. Trong máy tính hiện nay thường có các thiết bị ngoại vi sau: Màn Hình, bàn phím, chuột, loa, máy in Với các thiết bị ngoại vi đó, máy tính đều có khối xử lý tương ứng, ví dụ: Khối ghép giữa bus máy tính với màn hình là card màn hình (VGA), khối ghép giữa bus máy tính với loa là soundcard thông thường các máy tính thế hệ hiện nay thì các khối ghép nối cho các thiết bị ngoại vi thông dụng này đều được tích hợp trên một bản mạch chính gọi là Mainboard. Tuy nhiên máy tính không chỉ dừng lại ở ghép nối với máy in, màn hình, loa, mà nó còn được ứng dụng vô cùng rộng rãi trong nhiều lĩnh vực. Nhờ các cổng ghép nối RS232, LPT, cổng USB, các khe căm mở rộng mà chúng ta có thể tạo ra các phần cứng có thể ghép nối vơi máy tính dưới sự điều khiển của các phần mềm. Nội dung của môn học này là chúng ta đi vào nghiên cửu các cổng, cỏc khe cắm mở rộng của máy tính, để từ đó ta có thể chế tạo ra các khối ghép nối phục vụ trong nhiều lĩnh vực trong công nghiệp như là đo lường và điều khiển. Trang 4 Vi xử lý và ghép nối máy tính 1. Các dạng tin trao đổi của máy tính a. Dạng số (Digital) Đây là một chuỗi các bit 0 và 1 được biểu diễn theo hệ đếm như: nhị phân, hệ thập lục phân Các tín hiệu này có thẻ ở dạng nối tiếp hoặc song song và mức có thẻ là RS hoặc TTL b. Dạng chữ (Text) Đây biểu diễn của các ký tự dưới dạng số, trên thế giới hiện nay thông dụng là biểu diễn các ký theo mã ASCCII. Theo cách này thì các ký tự được biểu diễn bằng các chính là đọc bit 0,1 trên hệ thập lục phân, ví dụ: Mã ký tự A là 41h. Dạng tín hiệu này có thể coi là tìn hiệu số. c. Dạng tương tự (Analog) Đây là các dòng điện hay điện áp biến đổi liên tục theo thời gian. Điển hình là đại lượng vật lý thu thập từ các bộ cảm biến (sensor). Muốn xử lý được các tín hiệu này, máy tính (khối ghép nối) phải chuyển nó sang dạng số bằng các bộ biến đổi ADC. d. Dạng âm tần Đây là dạng tổng hợp của nhiều tín hiệu tương tự vơi tín hiệu số với các biên độ khác nhau. Cũng có thẻ coi đõy là một dạng của tín hiệu Analog. 2. Các dạng thông tin trao đổi của máy tính Trong quá trình gửi tin từ các thiết bị ngoại vi vào máy tính có các dạng tín hiệu sau: Tin về trạng thái của thiết bị ngoại vi Tin mạng dữ liệu cần trao đổi. Trong quá trình ngược lại. Tin về dữ liệu trao đổi. Tin mang lệnh điều khiển 3. Các phương thức trao đổi tin của máy tính Trao đổi theo chương trình (Assembly, Pascal, C++, VB, VB.net ) Trao đổi trực tiếp với các khối nhớ (DMA – Direct Memory Access) a. Chế độ trao đổi tin theo chương trình Đây là chế độ trao đổi tin trong đó máy tính trao đổi với các thiết bị ngoại vi bằng các lệnh vào ra. Lệnh dịch chuyển dữ liệu giữa các thanh ghi. Cụ thể: Trong ngôn ngữ Asembly các lệnh được lệnh dành cho trao đổi IN, OUT, MOV. Trong ngôn ngữ Pascal: Đọc một byte dữ liệu: X:=PORT[địa chỉ] Đưa một byte dữ liệu: PORT[địa chỉ]: =y; Đọc một byte dữ liệu: OUTPORT(địa chỉ, y) Trong chế độ trao đổi theo chương trình có 3 phương pháp: Trang 5 Vi xử lý và ghép nối máy tính • Phương pháp trao đổi đồng bộ. ở phương pháp này, máy tính sẽ tiến hành trao đổi tin ngay với thiết bị ngoài khi khởi động xong mà không cần biết trạng thái của trạng thái đường dây cũng như thiết bị ngoài. Để có thể thực hiện được phương pháp này thì yêu cầu là: + Tốc độ trao đổi tin của thiết bị ngoài lớn hơn tốc độ trao đổi tin của máy tính. + Thiết bị ngoài cần phải ở trạng thái sẵn sàng ngay khi máy tính khởi động xong. + Phương pháp này có ưu điểm là tốc độ trao đổi tin nhanh nhưng có nhược điểm là dễ bị mất tin khi thiết bị ngoài chưa ở trạng thái sãn sàng. • Phương pháp không đồng bộ Trong phương pháp này, trước khi trao đổi tin, máy tính tiến hành đọc, kiểm tra trạng thái của thiết bị ngoài, nên thiết bị ngoài đã ở trạng thái sẵn sàng thì tiến hành trao đổi tin còn ngược lại sẽ chờ. Ngoài ra trong quá trình trao đổi, nếu tin bị lỗi thì yêu cầu truyền lại. Phương pháp này có độ tin cậy cao nhưng tốc độ chậm hơn phương pháp đồng bộ. • Phương pháp trao đổi ngắt chương trình Phương pháp này lợi dụng được ưu điểm, khắc phục được nhược điểm của hai phương pháp trên: + Khi thiết bị ngoài có yêu cầu trao đổi sẽ gửi tin tín hiệu theo yêu cầu (ngắt) đến máy tính. + Máy tính dừng chương trình đang phục vụ (nếu thiết bị ngoài đang yêu cầu có mức yêu tiên cao hơn) và nhớ lại dừng đồng thời gửi tín hiệu xác nhận, yêu cầu thiết bị ngoài trao đổi tin. + Máy tính và thiết bị ngoài trao đổi tin theo chương trình (gọi là chương trình con phục vụ ngắt). + Kết thúc quá trình trao đổi tin, máy tính trở lại chương trình từ điểm dừng. + Phương pháp trao đổi theo ngắn chương trình khắc phục được nhược điểm của hai phương pháp đồng bộ và không đồng bộ, nó cho phép tận dụng tối đa thời gian làm việc của máy tính. b. Trao đổi MDA. Đây là phương thức trao đổi trực tiếp với khối nhớ của máy tính mà không thông qua CPU. Khi đó CPU sẽ ở trạng thái treo nhường quyền điều khiển bù cho ghép nối. Thiết bị ngoài và khối nhớ của máy tính sẽ tiến hành trao đổi (đọc/ghi dữ liệu). Sau khi quá trình kết thúc sẽ nhường lại quyền điều khiển Bus cho CPU. Trang 6 Vi xử lý và ghép nối máy tính Phần II: ghép nối truyền tin nối tiếp I. Khái Niệm Về Truyền Tin Nối Tiếp . 1. Khái niệm Truyền tin nối tiếp là phương thức truyền tin trong đó các bit mang thông tin được truyền kế tiếp nhau trên 1 đường dẫn vật lý . Tại 1 thời điểm phía bên truyền và bên nhận chỉ có thể truyền ( hoặc nhận) 1 bit . Ưu điểm của truyền tin nối tiếp : + Tiết kiệm đường dẫn + Có khả năng truyền đi xa Nhược điểm + Tốc độ chậm hơn các thiết bị thường phải có khối chuyển đổi nối tiếp song song, song song nối tiếp khi sử dụng phương pháp này để trao đổi tin . 2. Các phương thức truyền tin 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 bit đồng bộ khung (SYN). Hình 1 + Phương thức không đồng bộ : Các byte chứa các bit thông tin được chứa trong 1 khung. 1 khung được bắt đầu bằng 1 bit start, tiếp theo là các bit mang thông tin, kế tiếp là các bit kiểm tra chẵn lẻ và kết thúc là 1 bit stop . Khoảng cách giữa các khung là các bit dừng bất kỳ , khi đó đường truyền được lấy lên mức cao (hình 2 ). + Phương thức lai : Đây là phương thức kết hợp của hai phương pháp trên , trong đó các bit trong 1 khung được truyềng 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 1 Trang 7 Vi xử lý và ghép nối máy tính Hình 2 II. Cổng Nối Tiếp 1. Giới thiệu Cổng nối tiếp RS232 là 1 giao diện phổ biến rộng rãi nhất , ta còn gọi là cổng com 1 ,com2 , để tự do cho các ứng dụng khác nhau , giống như cổng máy in , cổng nối tiếp RS232 cũng được dử dụng rất thuận tiện trong việc ghép nối máy tính với các thiết bị ngoại vi . Việc truyền dữ liệu qua cổng RS232 được tiến hành theo cách nối tiếp nghĩa là các bit dữ liệu được gửi đi nối tiếp với nhau trên 1 đường dẫn . 2. Cấu trúc cổng nối tiếp í nghĩa các chân tín hiệu như sau : Mức tín hiệu trên các chân của cổng nối tiếp thường nằm trong khoảng -12v _ +12v Các bit dữ liệu được đảo ngược lại . mức điện áp ở mức logic 1 : -12v _ -3v mức điện áp ở mức logic 0 : +3v _ +12v trạng thái tĩnh trên đường dẫn có mức điện áp -12v bằng tốc độ baund ta thiết lập tốc độ truyền dữ liệu các giá trị thông thường là : 300, 600, 1200, 2400,4800, 9600. Trang 8 Vi xử lý và ghép nối máy tính 3. Địa chỉ các cổng như sau : Com1: địa chỉ cơ bản là : 3F8H Com2: địa chỉ cơ bản là : 2F8H Com3: địa chỉ cơ bản là : 3E8H Com4: địa chỉ cơ bản là : 2E8H Sự trao đổi các đường dẫn tín hiệu : Trên máy tính có một vi mạch đảm bảo việc truyền (nhận) dữ liệu thông qua cổng nối tiếp, vi mạch đó gọi là UART ( bộ truyền nhận nối tiếp không đồng bộ ) . UART để điều khiển sự trao đổi thông tin giữa máy tính và các thiết bị ngoại vi , phổ biến nhất là vi mạch 8250 của hãng NSC hoặc các thiết bị tiếp theo , như 16C550 , bộ UART có 10 thanh ghi để điều khiển tất cả chức năng của việc nhập vào xuất ra dữ liệu theo cách nối tiếp . 4. Các thanh ghi điều khiển . a) Thanh ghi điều khiển modem(3F8 +4) D7 D6 D5 D4 D3 D2 D1 D0 0 0 0 LOOP OUT2 OUT1 RTS DTR D0=1 : đưa DTR=0 D0=0 : đưa DTR =1 D1=1: đưa RTS =0 D1=0: đưa RTS =1 OUT1 , OUT2 điều khiển đầu ra phụ b) Thanh ghi trạng thái modem(3F8+6) RLSD RI DSR CTS RLSD1 RI1 DSR1 CTR1 Thanh ghi này nhiệm vụ thông báo về trạnh thái các đường dẫn bắt tay điều chú ý ở thanh ghi này là : D4, D5 ,D6 chính là lối vào của các đường dẫn CTS , DSR , RI đã được đảo . c) Thanh ghi điều khiển đường truyền( 3F8+3) C7 C6 C5 C4 C3 C2 C1 C0 C1, C0 : đặt số bit trong mỗi từ 00: 5 bit 01: 6 bit 10 : 7 bit 11: 8 bit C2 : các bit dừng 0 : 1 bit dừng Trang 9 Vi xử lý và ghép nối máy tính 1: 1,5 bit dừng C3 : bit kiểm tra chẵn lẻ 0 : không kiểm tra 1 : có kiểm tra C4 : loại chẵn lẻ 0: bit lẻ 1: bit chẵn C5 : stick bit 0: không có stick bit 1: stick bit C6 : đặt break 0: normal output 1: gửi 1 break C7 ( DLAB) : bit phân chia truy nhập cho các thanh ghi cùng địa chỉ d) Thanh ghi trạng thái đường truyền (3F8+5) 0 S6 S5 S4 S3 S2 S1 S0 S0=1: Khi có 1 byte mới nhận được S1=1: Khi ký tự trước không được đọc ký tự mới đến sẽ xoá ký tự cũ trong bộ đệm S2=1: Khi có lỗi chẵn lẻ S3=1: Khi có lỗi khung truyền S4=1 : Khi có gián đoạn đường truyền S5=1 : Khi bộ truyền rỗng cổng nối tiếp có thể truyền nhận S6=1: Khi bộ đệm truyền rỗng S7=0: Không sử dụng e) Thanh ghi cho phép ngắt ( 3F8+1) D7 D6 D5 D4 D3 D2 D1 D0 D0=1 : Cho phép ngắt khi nhận 1 ký tự D1=1 : Cho phép ngắt khi bộ đệm truyền rỗng D2=1: Cho phép ngắt khi thay đổi trạng thái đường truyền D3=1: Cho phép ngắt khi thay đổi trạng thái modem D4=0 D5=0 D6=0 D7=0 f) Thanh ghi nhận dạng ngắt ( 3F8+2) Trang 10 [...]... don vi } dem=count=0; // reset lai bien count } Trang 16 Vi xử lý và ghép nối máy tính } } III Sơ Đồ Ngun Lý Trang 17 Vi xử lý và ghép nối máy tính IV Sơ Đồ Mạch In: Trang 18 Vi xử lý và ghép nối máy tính V Mơ phỏng Trang 19 Vi xử lý và ghép nối máy tính Kết luận Ưu điểm: - Mạch được thiết kế gọn, đẹp, dễ dàng vận hành và sử dụng - Đo được tương đối chính xác vân tốc trung bình của vật chuyển động tịnh. .. được nối tới chân RxD của bộ vi điều khiển, còn T1out là ở phía RS232 được nối tới chân TxD đầu nối DB của RS232 và chân R1out (chân số 12) là ở phía TTL và được nối tới chân RxD của bộ vi điều khiển, chân TxD bên phát được nối với RxD của bên thu và ngược lại MAX232 cần có 4 tụ điện giá trị từ 1 đến 22µF giá trị thường dùng là 10µF Trang 12 Vi xử lý và ghép nối máy tính Phần III: Nội dung đề tài I... Bộ điều khiển như vậy có thể là chip MAX232 b Bộ điều khiển đường truyền MAX232 Vì RS232 khơng tương thích với các bộ vi xử lý và vi điều khiển hiện nay nên ta cần một bộ điều khiển đường truyền (bộ chuyển đổi điện áp) để chuyển đổi các tín hiệu RS232 về các mức điện áp TTL được các chân TxD và RxD của 8051 chấp nhận Một ví dụ của bộ chuyển đổi như vậy là chip MAX232 của Trang 11 Vi xử lý và ghép nối. .. nối máy tính hãng Maxim Bộ MAX232 chuyển đổi từ các mức điện áp RS232 về mức TTL và ngược lại Một điểm mạnh khác của chip MAX232 đó là dùng điện áp của ân RxD của đầu nối DB của RS232 Bộ điều khiển đường R1 cũng có gán R1 in và R1out trên các chân số 13 và 12 tương ứng Chân R1 in (chân số 13) là ở phía RS232 đư MAX232 có gán T1in và T1out trên các chân số 11 và 1 tương ứng Chân T1in là ở phía TTL và. .. phần thấp số chia của tốc độ baud số chia tốc độ baud tính theo cơng thức : số chia tốc độ baud = 1843200/( 16 *tốc đọ baud cần thiết lập ) h) Thanh ghi chứa số chia tốc độ baud( byte cao 3F8+1) i) Thanh ghi đệm đọc vi t ( 3F8) iii Nối ghép 8051 với RS232 Chuẩn RS232 khơng tương thích với mức logic TTL, nên cần bổ sung thêm một bộ điều khiển đường truyền, chẳng hạn như chip MAX232 để chuyển đổi các mức... về các mức TTL và ngược lại Do vậy nối ghép 8051 với đầu nối RS232 thơng qua chip MAX232 a Chân RxD và TxD của 8051 8051 có hai chân được dùng chun cho truyền và nhận dữ liệu nối tiếp Hai chân này là RxD và TxD và là một phần của cổng P3 (đó là P3.0 và P3.1 tương ứng) P3.0 là chân số 10 của 8051, còn P3.1 là chân số 11 Các chân này tương thích với mức logic TTL Do vậy cần có thêm một bộ điều khiển đường.. .Vi xử lý và ghép nối máy tính D7 0 D2 0 1 1 0 0 D6 0 D5 0 D4 0 D3 D2 D1 D0 0 D1 D0 Mức ưu tiên Nguồn gây Đặt lại ngắt ngắt 0 1 Khơng kiểm tra ngắt 1 0 Cao nhất Lỗi đường nhận dữ liệu Đọc thanh ghi trạng thái đường truyền 0 0 Thứ 2 Có dữ liệu nhận Đọc thanh ghi đệm 1 0 Thứ 3 Thanh ghi đệm truyền rỗng 0 0 Thứ 4 Cỏc trạng thỏi modem Đọc thanh ghi trạng thái modem g) Thanh ghi chứa số chia tốc độ baud... vantoc=50000/dem; Trang 15 Vi xử lý và ghép nối máy tính e=vantoc/10000; f=(vantoc%10000)/1000; g=((vantoc%10000)%1000)/100; h=(((vantoc%10000)%1000)%100)/10; k=(((vantoc%10000)%1000)%100)%10; for(i=0;i . Vi xử lý và ghép nối máy tính TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI KHOA CƠ KHÍ ĐỒ ÁN MÔN HỌC VI XỬ LÍ VÀ GHÉP NỐI MÁY TÍNH Đề tài: Thiết kế bộ đo tốc độ của vật chuyển động tịnh tiến. Giảng vi n. Trang 3 Vi xử lý và ghép nối máy tính Phần I: Giới thiệu chung về ghép nối máy tính A. Giới thiệu Sự phát triển của ghép nối máy tính đã mở rộng đáng kẻ các lĩnh vực ứng dụng của máy tính, đặc. vi } dem=count=0; // reset lai bien count } Trang 16 Vi xử lý và ghép nối máy tính } } III. Sơ Đồ Nguyên Lý Trang 17 Vi xử lý và ghép nối máy tính IV. Sơ Đồ Mạch In: Trang 18 Vi xử lý và