Xây dựng mạng điều khiển thiết bị nhúng RS485 bằng LabView - Thái Quang Vinh

4. Kết luận Hệ thống LV485, sau khi thử nghiệm đã chạy và hoàn toàn có thể đưa ra ứng dụng thực tế. Hệ thống đã được xây dựng trên cơ sở những tài nguyên có sẵn ở thị trường Việt Nam, giá thành hạ. Và nhất là với giao thức LV485, cho phép mở rộng mạng điều khiển tích hợp với nhiều thiết bị có sẵn cũng như mạng điều khiển phân cấp. Hệ thống này sau khi hoàn thiện hoàn toàn có thể ứng dụng được trong các hệ thống điều khiển trong thực tế với khoảng cách truyền xa, nhất là các hệ thống nhúng trong công nghiệp, các hệ thống cảnh báo với dữ liệu truyền ảnh thời gian thực, các hệ thống tích hợp điều khiển qua mạng Internet

pdf7 trang | Chia sẻ: thucuc2301 | Lượt xem: 639 | Lượt tải: 0download
Bạn đang xem nội dung tài liệu Xây dựng mạng điều khiển thiết bị nhúng RS485 bằng LabView - Thái Quang Vinh, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
T¹p chÝ Khoa häc & C«ng nghÖ - Sè 1(45) Tập 2/N¨m 2008 55 XÂY DỰNG MẠNG ĐIỀU KHIỂN THIẾT BN NHÚNG RS485 BẰNG LabVIEW Thái Quang Vinh - Hà Mạnh Đào(Viện Công nghệ Thông tin-Viện KH&CN Việt Nam) 1. Giới thiệu mạng RS485 RS485 là chuNn truyền thông được sử dụng phổ biến trong thực tế, nhất là trong môi trường công nghiệp. Nó được ứng dụng để tự động hoá các quá trình, tự động hoá sản xuất, HVAC, các hệ thống an ninh, điều khiển mô tơ, điều khiển chuyển động [1,4,6,7,8]...Nó là một chuNn được mở rộng từ các chuNn RS232, RS422. Nhưng khác với RS232, RS485 là mạng đa điểm và nó cũng khác với RS422, nó cho phép nhiều nút truyền và nhận dữ liệu trên mạng. Đồng thời RS485 cũng chính là chuNn để từ đó xây dưng lên các chuNn Profibus và Fieldbus, là các chuNn được sử dụng chủ yếu trong môi trường công nghiệp hiện nay [4]. RS485 là mạng đa điểm sử dụng tín hiệu sai khác giữa 2 tín hiệu truyền trên BUS so với tín hiệu GND, từ đó giảm được nhiễu và truyền được khoảng cách xa. Số nút mạng mạng RS485 có thể mở rộng tới 32 nút với trở kháng đầu vào là 12k và có thể mở rộng tới 256 nút với trở kháng đầu vào của bộ nhận cao hơn nữa. Đặc biệt mạng RS485 có thể mở rộng khoảng cách truyền tới 1200m với tốc độ đến 90kbps, tốc độ đó có thể lên tới 10Mbps với khoảng cách gần hơn [1]. Trong trường hợp muốn mở rộng khoảng cách truyền xa hơn nữa, RS485 có thể sử dụng các bộ lặp tín hiệu( repeater) để bắt đầu một đoạn mạng RS485 mới. Các nút mạng RS485 có thể là PC, các bộ vi điều khiển, PLC hoặc bất kỳ thiết bị nào có khả năng truyền thông tuần tự. Mỗi nút có thể là bộ truyền, nhận hoặc cả truyền và nhận. Với nút truyền hoặc nhận đều có một tín hiệu điều khiển cho phép/không cho phép, 1 tín hiệu đầu vào(bộ truyền) hoặc ra (bộ nhận) dữ liệu, hai tín hiệu vào/ra nối với hệ thống bus. Mạng RS485 có 2 cách để ghép nối mạng với PC [1,4]: - Sử dụng card mở rộng hoặc - Gắn bộ chuyển đổi RS485 với các cổng có sẵn như RS232, LPT, USB.. Trong trường hợp ghép nối qua cổng RS232, có thể sử dụng các bộ chuyển RS232/RS485 hoặc ngược lại. các bộ chuyển này sử dụng phổ biến các chíp chuyên dụng như MAX485, SN75176B... Mạng RS485 có 2 kiểu topo mạng: - Kiểu kết nối sử dụng 2 dây: Trong kiểu kết nối này, BUS tín hiệu gồm 2 dây tín hiệu và một dây tín hiệu GND. Sơ đồ mạng kiểu này thể hiện như hình 1(a)[1,4]. Mỗi nút mạng gồm có bộ nhận, bộ truyền dữ liệu và tín hiệu điều khiển Tx/Rx cho phép điều khiển bộ thu hay nhận dữ liệu( sử dụng mạch 3 trạng thái). Giao thức truyền thông trong kiểu kết nối này là Hafl- Duplex, tức tại mỗi thời điểm, trên mạng chỉ có một nút truyền và một nút nhận dữ liệu. Với cấu hình mạng RS485 2 dây sẽ giảm giá thành và các thiết bị RS485 có thể cấu hình nội tại hoặc bên ngoài đối với hệ thống 2 dây. - Kiểu 4 dây: thể hiện như hình 1(b)[1,4], gồm 4 dây tín hiệu và một dây tín hiệu GND(5 dây). Trong mạng 4 dây có thể có một hoặc nhiều nút Master. Trong trường hợp có một nút Master thì nút Master có thể truyền thông với tất cả các nút Slave, còn tất cả các nút Slave chỉ truyền thông với nút Master. Mạng cấu hình 4 dây cho phép sử dụng giao thức truyền thông kiểu Full- Duplex, tức truyền thông 2 chiều đồng thời. T¹p chÝ Khoa häc & C«ng nghÖ - Sè 1(45) Tập 2/N¨m 2008 56 Hình 1a. Mạng RS-485 đa điểm sử dụng 2 dây Hình 1b. Mạng RS-485 đa điểm sử dụng 4 dây A B G R TX RX A B A B G R TX RX A B A B G R TX RX A B R G A B A B R1 R2 A A A A A Rt Rt R1 R2 R1 R2 R1 R2 1200m G: Bộ phát tín hiệu R: Bộ thu tín hiệu Rt,R1,R2:Điện trở A B G R TX RX A B A B G R TX RX A B B G R TX RX B A A R G A B A B R1 R2 A A A A A Rt Rt R1 R2 R1 R2 R1 R2 1200m G: Bộ phát tín hiệu R: Bộ thu tín hiệu Rt,R1,R2:Điện trở Rt Rt MASTER SLAVE SLAVE SLAVE A T¹p chÝ Khoa häc & C«ng nghÖ - Sè 1(45) Tập 2/N¨m 2008 57 Phần mềm điều khiển RS485: RS485 bao gồm các đặc tả phần cứng, còn các giao thức mạng RS485 không được thiết kế chuNn cùng các đặc tả này mà nó tuỳ thuộc vào người thiết kế và từng bài toán cụ thể. Trong các giao thức này, vấn đề quan trọng nhất đó là xây dựng các quy tắc điều khiển bộ nhận/ gửi tín hiệu, khuôn dạng dữ liệu truyền, các lệnh và các đáp ứng giữa các nút mạng và hệ thống địa chỉ hoá các mỗi nút mạng. Mỗi nút mạng phải có một địa chỉ duy nhất trong toàn mạng. Với hệ thống cấu hình 2 dây thường điều khiển kết nối bộ truyền với bộ nhận dưới dạng "loopback". Đối với hệ thống Master/Slave, nút Master sẽ phát sinh các lệnh gửi tới các nút Slave và nhận đáp ứng trả về từ các nút này. Mỗi nút trong mô hình này phải có một địa chỉ duy nhất. 2. Xây dựng mạng RS485 với LabVIEW(LV485) 2.1. Hệ thống LV485 Mạng RS485 được xây dựng kết nối PC với các bộ điều khiển sử dụng các chíp 89Cx51 hoặc PIC16F84 và được điều khiển bởi chương trình LabVIEW sử dụng cấu hình 2 dây và làm việc theo kiểu half-duplex. Hệ thống này cho phép kết nối các rhiết bị nhúng với hệ LabVIEW với khoảng cách truyền thông xa để phục vụ cho các hệ thống điều khiển từ xa, các hệ thống an ninh, giám sát qua mạng với camera, các hệ thống HomeAutomation ... Hệ thống được thiết kế cho phép truyền tín hiệu điều khiển từ PC đến các bộ điều khiển và nhận dữ liệu chuyển về PC từ các bộ điều khiển đó. Mỗi thời điểm chương trình chỉ cho phép thao tác với một bộ điều khiển. Vấn đề thiết kế hệ thống LV485 gồm 2 phần: thiết kế phần cứng và phần mềm, trong đó đặc biệt là xây dựng giao thức truyền thông cho mạng LV485. Sơ đồ mạng LV485 được thể hiện như hình 2. Trong sơ đồ này hệ thống bao gồm các thành phần sau: - PC: Máy tính cá nhân với phần mềm giám sát, thu thập dữ liệu và điều khiển viết bằng ngôn ngữ LabVIEW, giao thức được thiết kê cho mạng LV485. - Các bộ điều khiển nhúng sử dụng chíp 89Cx51 hoặc PIC 16F84... - Hệ thống BUS RS485 gồm 2 dây+ 1 dây tín hiệu GND - Các bộ chuyển đổi từ chuNn RS485 sang chuNn RS485 - Các bộ điều khiển nhúng #1 đến #N với N cưc đại lớn nhất là 32 Hình 2. Hệ thống LV485 PC (LabVIEW) #1 #2 • • • #N GND B A RS232 to RS485 RS232 to RS485 RS232 to RS485 RS232 to RS485 RS485 BUS T¹p chÝ Khoa häc & C«ng nghÖ - Sè 1(45) Tập 2/N¨m 2008 58 2.1.1. Xây dựng phần cứng hệ thống LV485 • Các bộ điều khiển nhúng #1->#N Các bộ điều khiển được thiết kế với chíp 89C2051, 89C4051, 89C52.... Các bộ điều khiển này thực hiện các nhiệm vụ thu thập dữ liệu, gửi dữ liệu về cho PC và nhận tín hiệu điều khiển từ PC qua mạng RS485 của LV485. Mỗi bộ điều khiển có địa chỉ riêng và duy nhất để nhận dạng. Các bộ điều khiển giao tiếp với mạng RS485 thông qua cổng RS232 và bộ chuyển đổi từ RS232 thành RS485 và ngược lại. Bộ điều khiển nhúng bao gồm các thành phần chủ yếu sau: - Mạch vi xử lý 89C4051 hoặc 89C2051, đây là các bộ xử lý tám bít có giá thành thấp và đơn giản. Mạch chíp này được kết nối với các thiết bị vào/ra. - Mạch dao động thạch anh với tần số 11.972MHz - Mạch giao tiếp cổng tuần tự RS232 sử dụng chíp MAX232 - Mạch nguồn AC/DC 5V. - Các mạch I/O nhận tín hiệu AI từ bộ chuyển đổi ADC nối với các sensor tín hiệu đầu vào, các tín hiệu DIO. • Các bộ chuyển đổi RS232/485 Các bộ chuyển đổi này sử dụng các chíp MAX485 hoặc chíp SN75156B, sơ đồ các bộ chuyển đổi ở các nút mạng được thể hiện như hình 6. Trong sơ đồ này, các điện trở R1, R2, R3, R4 được thêm vào mỗi nút, còn điện trở R5 chỉ thêm vào 2 nút cuối của mạng RS485. Tín hiệu điều khiển sử dụng tín hiệu RTS của RS232. Mạng sử dụng nút với đặc điểm của bộ chuyển đổi này cho phép mở rộng mạng cực đại tới 32 nút mạng. Hệ thống bus LV485 Hệ thống Bus này được thể hiện như hình 2[1][2][4][6][8]. BUS gồm có 3 đường tín hiệu, với 2 dây tín hiệu RS485 và dây tín hiệu GND. Các dây này có thể sử dụng dây cáp xoắn đôi và có khoảng cách xa giữa 2 nút truyền thông lên tới 1200m. 2.1.2. Xây dựng giao thức LV485 Phần mềm LV485 gồm nhiều phần mềm được phát triển, cài đặt trên PC và trong các bộ điều khiển nhúng. Giao thức LV485 hoạt động theo kiểu half-duplex với tốc độ truyền dữ liệu là 9600bps. Gói tin của giao thức bao gồm các byte 8 bít. Kích thước tối thiểu của gói tin là 3byte và cực đại là 8 byte có cấu trúc mô tả ở bảng 1. Bảng 1: *Tập lệnh và đáp ứng của giao thức LV485: Tập lệnh 8 bít bao gồm các lệnh và các đáp ứng Byte offset Bít Tên Mô tả 0 0-2 LEN Tuỳ chọn độ dài dữ liệu, giá trị 0 nghĩa LEN=3 byte. 0 3-7 CONID ID LV485 của các bộ điều khiển nhúng có giá trị từ 0->31 1 0-7 COMMAND Lệnh và đáp ứng của LV485 2 0-7 DATA Dữ liệu, LEN=0 nghĩa là không có dữ liệu 2+LEN 0-7 CHKSUM Kiểm tra check sum T¹p chÝ Khoa häc & C«ng nghÖ - Sè 1(45) Tập 2/N¨m 2008 59 Các lệnh được truyền từ PC tới các bộ điều khiển, các đáp ứng gửi từ các bộ điều khiển về PC. Tại mỗi bộ điều khiển có vòng quét và cập nhật dữ liệu cục bộ. Tại mỗi bộ điều khiển, khi nhận được lệnh yêu cầu chuyển dữ liệu thì sẽ gửi dữ liệu về PC qua các đáp ứng, khi nhận lệnh cập nhật thì cập nhật các thiết bị cục bộ. Sơ đồ quá trình thể hiện như hình 3. Hình 3. Cơ chế hoạt động của LV485 Hình 4. Thuật toán gửi/nhận lệnh/dữ liệu của PC và các nút mạng LV485 a) Thuật toán gửi/nhận lệnh/dữ liệu của PC b )Thuật toán gửi/nhận lệnh/dữ liệu của nút mạng START Phát sinh tín hiệu RST Truyền gói tin tới CONID Truyền Xong? Đặt ở trạng thái nhận gói tin Địa chỉ=0? Phân tích, hiển thị dữ liệu Tiếp tục? END START Khởi động vòng quét dữ liệu cục bộ Có gói tin? Đúng đ/c? Phân tích byte lệnh và tạo gói tin và göi Đặt BĐK ở trạng thái truyền tin Đặt BĐK ở trạng thái nghe Tiếp tục ? END VXL I/O Local Loop PC (LV485) VXL I/O Local Loop Global Loop Global Loop Commands Responses T¹p chÝ Khoa häc & C«ng nghÖ - Sè 1(45) Tập 2/N¨m 2008 60 Còn phía PC, đầu tiên khi chương trình LV485 khởi động, nó gửi tín hiệu( sử dụng tín hiệu RST) để đặt bộ chuyển đổi RS232/RS485 ở trạng thái truyền, thực hiện truyền gói tin tới tất cả các trạm (broadcast), trong gói tin chưa CONID của bộ điều khiển được nhận gói tin. Sau đó LV485 được đặt lại ở trạng thái nghe. Lệnh tiếp theo chỉ được gửi đi sau khi LV485 ở trạng thái nghe một khoảng thời gian xác đinh. Lưu đồ thuật toán thể hiện như hình 4(b). 2.2. Xây dựng phần mềm LV485 2.2.1. Phần mềm hệ điều khiển nhúng Phần mềm điều khiển nhúng viết bằng hợp ngữ và được nạp trong các chíp xử lý của các bộ điều khiển. Phần mềm này có nhiệm vụ: - Thu thập dữ liệu và gửi đến PC - Nhận gói tin từ PC qua mạng LV485, phân tích gói tin, nhận tín hiệu điều khiển - Phát sinh tín hiệu điều khiển bộ chuyển đổi RS232/485 2.2.2.Phần mềm điều khiển LV485 Phần mềm LV485 được viết bằng ngôn ngữ LabVIEW[2][3][4] đóng vai trò là hệ thống giám sát, thu thập dữ liệu và điều khiển toàn bộ hệ thống mạng LV485. Phần mềm này sử dụng tín hiệu RST/CST để điều khiển việc gửi và nhận dữ liệu. Phần mềm này sử dụng các lệnh thao tác với cổng COM của LabVIEW: - Lệnh cấu hình cổng COM với tín hiệu RST/CST - Lệnh viết dữ liệu ra cổng com - Lệnh đọc dữ liệu từ cổng COM 3. Mô phỏng Hệ thống LV485 được mô phỏng với mạng gồm 3 nút bộ điều khiển nhúng dùng chíp 89C4051, chương trình LV485 với giao diện như hình, trong có trường CONID chọn thiết bị tương tác, tín hiệu đọc được hiển thị trong trường Acquisition, các công tắc gửi tín hiệu ra điều khiển Led trên các bộ điều khiển. Hình 5 là giao diện của chương trình mô phỏng viết bằng ngôn ngữ LabVIEW. Hình 5. Giao diện chưong trình LabVIEW của mạng LV485 T¹p chÝ Khoa häc & C«ng nghÖ - Sè 1(45) Tập 2/N¨m 2008 61 4. Kết luận Hệ thống LV485, sau khi thử nghiệm đã chạy và hoàn toàn có thể đưa ra ứng dụng thực tế. Hệ thống đã được xây dựng trên cơ sở những tài nguyên có sẵn ở thị trường Việt Nam, giá thành hạ. Và nhất là với giao thức LV485, cho phép mở rộng mạng điều khiển tích hợp với nhiều thiết bị có sẵn cũng như mạng điều khiển phân cấp. Hệ thống này sau khi hoàn thiện hoàn toàn có thể ứng dụng được trong các hệ thống điều khiển trong thực tế với khoảng cách truyền xa, nhất là các hệ thống nhúng trong công nghiệp, các hệ thống cảnh báo với dữ liệu truyền ảnh thời gian thực, các hệ thống tích hợp điều khiển qua mạng Internet  Tóm tắt RS485 là một chuNn được sử dụng rất phổ biến trong công nghiệp và là nền tảng của các chuNn Profibus và Fieldbus, là những chuNn truyền thông chính trong môi trường Công nghiệp hiện nay. Mạng RS485 không có giao thức truyền thông chuNn mà giao thức được phát triển tuỳ thuộc vào từng ứng dụng cũng như người thiết kế. Bài báo này đề cập đến vấn đề xây dựng một mạng RS485 cho các thiết bị nhúng và xây dựng một giao thức truyền thông LV485 trên mạng đó. Đồng thời cũng đề cập đến vấn đề ứng dụng nó trong thức tế. Summary LabVIEW-Based RS485-Network Design for Communication of Embedded Systems RS485 has popular applications in communication network of industrial control systems with widely-used protocols as DH485, profibus, fieldbus, devicenet, controlnet.... In the case of embedded systems with serial interfaces, the communication network of such systems must be able to accommodate large amounts of data exchange in real time. In this paper we present our design of control network of embedded systems via physical media RS485 and developed communication protocol using LabVIEW for industrial applications. Tài liệu tham khảo [1] Clyde F. Coombs Jr., electronic instrument Handbook, McGraw-Hill, Copyright @ 2000. [2] National instruments, Measurement and Automation, Catalog 2005, 2006. [3] National instruments, LabVIEW user manual, Copyright 2000 [4] Maxim, Pre-emphasis improves RS-485 Communications, 2001 [5] Texas instruments, User manual, Copyright 2003 [6] Allegro Microsystems Inc., 5804 BiMOS unipolar Stepper-Motor Translator/Driver datasheet, Massachussetts,1998. [7] SGS-THOMSON Microelectronics, L293D Push-Pull four Channel Driver with Diodes datasheet, Jun. 1996. [8] Vishay Semiconductor GmbH., TCST110 up to TCST230 Transmissive Optical Sensor with Phototransistor output datasheet, Jun. 1999, available at

Các file đính kèm theo tài liệu này:

  • pdfbrief_838_9319_7_962_2053247.pdf