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

Ứng dụng RS485 ppt

26 1,4K 2

Đ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 26
Dung lượng 1,39 MB

Nội dung

I. Ý tưởng chung: 1. Trong công nghiệp ngày nay, chuẩn truyền thông RS232 không thể đáp ứng được nhu cầu truyền thông nữa vì đường truyền không cân bằng (các tín hiệu đều lấy điểm chuẩn là đường mass chung, bị ảnh hưởng của nhiễu tác động) do đó tốc độ truyền và khoảng cách truyền bị giới hạn (khoảng cách truyền thông tối đa 100m). Vì vậy để đáp ứng nhu cầu truyền thông công nghiệp, người ta sử dụng chuẩn truyền thông RS485 khi cần tăng khoảng cách và tốc độ truyền thông (khoảng cách truyền thông tối đa 1200m và vận tốc truyền lên đến 10 Mbits/s). Nguyên nhân mà RS 485 có thể tăng tốc độ và khoảng cách truyền thông là do RS 485 sử dụng phương pháp truyền 2 dây vi sai (vì 2 dây có đặc tính giống nhau, tín hiệu truyền đi là hiệu số điện áp giữa 2 dây do đó loại trừ được nhiễu chung). Mặt khác do chuẩn truyền thông RS 232 không cho phép có hơn 2 thiết bị truyền nhận tin trên đường dây trong khi đó với chuẩn RS 485 ta có thể nối 32 thiết bị thu phát trên 2 dây. 2. Đề tài của đồ án xuất phát từ ý tưởng kết hợp sử dụng chuẩn truyền thông RS232 và RS485 để điểu khiển thu thập và xử lý dữ liệu, thông tin trong công nghiệp.Chúng tôi sử dụng vi điều khiển master để xuất địa chỉ đến các vi điều khiển slave, vi điều khiển slave sẽ thu thập dữ liệu thông tin đã được cài đặt sẵn sau đó truyền tín hiệu trả về master. II. Linh kiện sử dụng trong mạch: 1.AT89C51: Đây là linh kiện vi điều khiển 8 bit với 4 Kbytes bộ nhớ nội có khả năng lập trình được và có khả năng xóa chương trình bằng điện. * CPU 8 bit được tối ưu hóa cho các ứng dụng điều khiển * Các khả năng xử lí các biến Boole mở rộng * Vùng địa chỉ nhớ chương trình 64K * Vùng địa chỉ nhớ dữ liệu 64K * 128 byte dữ liệu Ram trên chip * 32 đường I/O 2 chiều và có thể định địa chỉ riêng rẽ * 2 bộ đếm,mạch định thì 16 bit * UART song công (full duplex) * Cấu trúc ngắt 5 vector / 6 nguồn với 2 cấp ưu tiên * Mạch dao động xung nhịp trong chip Sau đây là sơ đồ khối của AT89C51: Và đây là sơ đồ chân của AT89C51: Ý nghĩa các chân của AT89C51: *AT89C51 có tất cả 40 chân trong đó chân 40 là chân nguồn, chân 20 là chân mass, chân 18 và chân 19 được nối qua 1 thạch anh 11.056Mhz để tạo dao động cho vi điều khiển. Chân 31 EA/ được dùng để chọn sử dụng Rom nội hay Rom ngoại, nếu chân này được nối lên nguồn thì ta sử dụng Rom nội còn nếu nối xuống mass thì ta sử dụng Rom ngoài. * PORT 0:là 1 Port 2 chức năng ,trên các chân 32-39. Trong các thiết kế nhỏ, nó có chức năng như các đường I/O. Đối với các thiết kế lớn với bộ nhớ mở rộng ,nó được dồn kênh giữa bus data và bus address. * PORT 1: là cổng dành riêng cho xuất /nhập trên các chân 1-8. Cổng này chỉ có chức năng giao tiếp với các thiết bị ngoài. * PORT 2:là 1 cổng công dụng kép trên các chân 21-28, được dùng như các đường xuất nhập hoặc là Byte cao của bus địa chỉ * PORT 3: là cổng công dụng kép trên các chân 10-17 ,.với các chức năng: Bit Tên Đ ịa chỉ bit Chức năng chuyển đổi P3.0 RXD B0H Dữ liệu nhận cho Port nt P3.1 TXD B1H Dữ liệu phát cho Port nt P3.2 INT0 B2H Ngắt 0 bên ngoài P3.3 INT1 B3H Ngắt 1 bên ngoài P3.4 T0 B4H Ngõ vào Timer/Counter 0 P3.5 T1 B5H Ngõ vào Timer/Counter 1 P3.6 WR B6H Xung ghi bộ nhớ data ngoài P3.7 RD B7H Xung đọc bộ nhớ data ngoài * PSEN :là TH ra trên chân 29. Nó là TH điều khiển để cho phép bộ nhớ chương trình mở rộng và thường được nối đến chân OE của 1 EPROM . 2.IC tạo nguồn áp chuẩn dương 7805: Đây là IC tự chỉnh định để tạo ra nguồn áp chuẩn dương +5V cung cấp cho mạch vi điều khiển. Sau đây là sơ đồ IC 7805.Chân 1 nối mass, chân 2 là ngõ vào của áp nguồn, chân 3 là ngõ ra +5V để cấp điện cho vi điều khiển và các linh kiện điện tử khác. 3.IC tạo nguồn áp chuẩn âm 7905: Đây là IC có chức năng giống như IC 7805 nhưng nó tạo ra áp chuẩn âm -5V nhằm cung cấp áp cho các linh kiện hay các module cần sử dụng nguồn áp âm hay nguồn áp lưỡng cực. Sau đây là 3 dạng chân cấu tạo và chức năng từng chân của IC 7905 ngoài thị trường. 4.IC Max 232: Max 232 dùng để chuyển tín hiệu logic +5V của vi điều khiển sang tín hiệu của chuẩn truyền thông RS 232 và truyền đi trên đường dây RS232. Max 232 gồm có 2 bộ phát chuyển đổi tín hiệu TTL ngõ vào thành tín hiệu RS 232 ngõ ra và có 2 bộ thu nhận tín hiệu RS 232 ngõ vào và chuyển đổi thành tín hiệu CMOS tương ứng ngõ ra. 5.IC Max 485: Thật ra đây đơn thuần chỉ là 1 bộ chuyển đổi từ tín hiệu của chuẩn giao tiếp RS 232 sang tín hiệu của chuẩn giao tiếp RS 485 để có thể truyền tín hiệu đi trên đường dây RS 485 và từ đó có thể truyền tín hiệu đi xa và nhanh được. Đây là sơ đồ chân của Max 485: U8 MAX485 1 4 5 8 2 3 6 7 RO DI GND VCC RE DE A A Max 485 gồm bộ lái và bộ thu, tín hiệu vào bộ lái D logic TTL đổi thành 2 tín hiệu A và A\ , khi tín hiệu điều khiển DE mức thấp thì 2 chân AA\ cách ly với vi mạch. Tín hiệu vào bộ thu là A và A\ , tín hiệu ra R logic TTL tùy thuộc hiệu điện áp giữa A và A\ , khi RE\ logic 1 thì R cách ly với vi mạch. Mạng 485 làm việc theo chế độ master-slave, master cho DE mức 1 để truyền dữ liệu, còn các slave có DE=0, RE\=0 chờ nhận dữ liệu. Khi master muốn nhận dữ liệu thì DE=0, RE\=0 còn slave phát sẽ có DE=1, RE\=1. Ta điều khiển các đường DE, RE\ bằng tín hiệu RTS hay mạch định thì. III. Các khối mạch giao tiếp: 1.Khối tạo nguồn: Đây là mạch dùng để tạo ra nguồn áp chuẩn 5V . Ta sử dụng IC 7805 để tạo ra áp chuẩn +5V và IC 7905 để tạo áp chuẩn -5V. 2Khối power: Chân B của transistor được nối với chân power (P1.0) của master. Nguồn 5V nối vào qua transistor C885 rồi lấy dòng ra ở chân B nhằm hạn dòng trước khi đưa vào master. 3.Khối reset: Khi nhấn nút reset thì áp 5V được nối vào chân reset của master để khởi động lại hệ thống. 4.Khối master: Vì chương trình sử dụng ROM nội nên ta nối chân EA với nguồn 5V . Dùng thạch anh 11.056 MHz nối vào chân XTAL1 vaø XTAL2 để tạo xung clock . 5.Khối giao tiếp: 5.1.Max232: Ta nối chân RXD của master vàoT1OUT, nối TXD của master vào R2IN.Các chân T1IN, R2OUT, R1OUT, T2IN dùng để nối vào các chân IN của Max485. 5.2.Max485: Max485 dùng để chuyển tín hiệu trên đường dây RS232 thành tín hiệu trên đường dây RS485dùng chuẩn giao tiếp này để truyền tín hiệu đi xa.Chân T1In của Max232 nối với chân RO của Max485 và các chân R2OUT, R1OUT, T2In được nối tương tự như hình vẽ. IV. Mạch hoàn chỉnh: [...]... 1) { WATCHDOG_state_G = 0; WATCHDOG_pin = 0; } else { WATCHDOG_state_G = 1; WATCHDOG_pin = 1; } } VI Tổng kết: 1 Tổng kết về ý tưởng và khả năng ứng dụng thực tiễn của đề tài: Qua việc sử dụng kết hợp 2 chuẩn truyền thông giao tiếp thông dụng hiện nay và sử dụng phương thức thu thập, phân tán dữ liệu master-slave, ta thấy rằng việc thu thập và phân tán thông tin được thực hiện nhanh chóng, dễ dàng hơn... dung lượng bộ nhớ sử dụng cho một tác vụ(task) là 7byte */ typedef data struct { /* Con trỏ cho tác vụ( task) ('void (void)' function) */ void (code * pTask)(void); /* Khoảng trể cho hàm kế tiếp*/ tWord Delay; /* Khoảng thời gian lặp lại một chu trình kế tiếp */ tWord Repeat; /* Set lên 1 (bởi scheduler)khi tác vụ được thực thi */ tByte RunMe; } sTask; Các mảng tác vụ được ứng dụng trong suốt phương... hoạt động ở một nhiệt độ khác nhau,khi có sự thay đổi về nhiệt độ tốc độ xung clock sẽ thay đổi vì vậy cần có một chương trình đồng bộ xung clock.Trong úng dụng nay ta sử dụng chương trình SCU SCHEDULER (RS-485) for 8051/52.Trong chương trình này ta sử dụng một bộ watchdog timer sẽ báo tràn khi chu kỳ của con Slave có vẻ chậm(nhanh)hơn so với các khoảng thời gian ta đã định nghĩa  Khi truyền dữ liệu giữa... thống, mà còn phụ thuộc vào sự phối hợp hoạt động giữa các thành phần đó Trong thực tế, yêu cầu về tính thời gian thực đối với mỗi ứng dụng điều khiển cũng có các đặc thù khác nhau, mức độ ngặt nghèo khác nhau Ví dụ:Cấu trúc phương pháp lập lich và các mảng tác vụ được sử dụng trong này là: void main(void) { /* Tạo scheduler */ SCH_Init_ T2(); /* Chuẩn bị cho một tác vụ*/ X_Init(); /*Nạp thời gian cho... đổi mà được xác định trước khi hệ thống đi vào hoạt động * Lập lịch động: Hàm xác định lịch sau khi hệ thống đã đi vào hoạt động Sau khi xác định được cơ chế lập lịch, Hàm cần sử dụng một sách lược lập lịnh (strategy) để áp dụng đối với từng tình huống cụ thể Có thể chọn một trong những cách sau: * FIFO (First In First Out): một tác vụ đến trước sẽ được thực hiện trước * Mức ưu tiên cố định/động: tại... biệt.Byte dầu chứa địa chỉ ID của Slave đó ,byte thứ hai chứa thông điệp trả lời  Ngoài việc chuyển một byte dữ liệu ta còn có thể chuyển nhiều thông điệp Việc truyền dữ liệu sử dụng họ 8051 cho phép truyền 9-bit được mô tả như sau  Sử dụng UART ở mode 3 truyền/nhận 11-bits.Bit thứ 9 được truyền thông qua bit TB8 của thanh ghi SCON và việc nhận thông qua bit RB8  Byte địa chỉ được nhận dạng bằng cách set... Hardware_Delay_T0(const tWord N) { tWord ms; TMOD &= 0xF0; TMOD |= 0x01; ET0 = 0; for (ms = 0; ms < N; ms++) { TH0 = PRELOAD01H; TL0 = PRELOAD01L; TF0 = 0; TR0 = 1; while (TF0 = = 0); TR0 = 0; } } sbit RS485_ Tx_Enable = P3^2; sbit RS485_ Rx_NOT_Enable = P3^3; sbit WATCHDOG_pin = P1^7; sbit Network_error_pin = P2^7; tByte Tick_message_data_G[NUMBER_OF_SLAVES] = {'1','2'}; tByte Ack_message_data_G[NUMBER_OF_SLAVES];... bit Message_byte_G = 1; void SCU_B_MASTER_Init_T1_T2(const tWord BAUD_RATE) { tByte Task_index; tByte Slave_index; EA = 0; SCU_B_MASTER_Watchdog_Init(); Network_error_pin = NO_NETWORK_ERROR; RS485_ Rx_NOT_Enable = 0; RS485_ Tx_Enable = 1; for (Task_index = 0; Task_index < SCH_MAX_TASKS; Task_index++) { SCH_Delete_Task(Task_index); } Error_code_G = 0; for (Slave_index = 0; Slave_index < NUMBER_OF_SLAVES;... khác nữa như quản lý và đồng bộ hóa việc sử dụng tài nguyên, giao tiếp liên quá trình, Mỗi hệ thống điều khiển là một hệ thời gian thực Có thể nói, tất các các hệ thống điều khiển là hệ thời gian thực Ngược lại, một số lớn các hệ thống thời gian thực là các hệ thống điều khiển Không có hệ thống điều khiển nào có thể hoạt động bình thường nếu như nó không đáp ứng được các yêu cầu về thời gian, bất kể... khiển master có thể giao tiếp với khoảng 256 module trên đường dây truyền thông RS-485 với thời gian thu phát dữ liệu giữa 2 module kế tiếp nhau là không đáng kể Vì vậy ý tưởng của đề tài này có thể ứng dụng vào mạng truyền thông trong các nhà máy, xí nghiệp gồm nhiều bộ phận làm việc ở cách xa nhau mà việc thu thập và phân tán thông tin theo phương thức thủ công là không khả thi Các bộ phận có trách . hạn (khoảng cách truyền thông tối đa 100m). Vì vậy để đáp ứng nhu cầu truyền thông công nghiệp, người ta sử dụng chuẩn truyền thông RS485 khi cần tăng khoảng cách và tốc độ truyền thông (khoảng. án xuất phát từ ý tưởng kết hợp sử dụng chuẩn truyền thông RS232 và RS485 để điểu khiển thu thập và xử lý dữ liệu, thông tin trong công nghiệp.Chúng tôi sử dụng vi điều khiển master để xuất. khiển. Chân 31 EA/ được dùng để chọn sử dụng Rom nội hay Rom ngoại, nếu chân này được nối lên nguồn thì ta sử dụng Rom nội còn nếu nối xuống mass thì ta sử dụng Rom ngoài. * PORT 0:là 1 Port

Ngày đăng: 27/06/2014, 21:20

TỪ KHÓA LIÊN QUAN

w