Giao tiếp máy tính chuẩn RS232 sử dụng LabVIEW
March 21, 2009
Tài liệu LabVIEW này trình bày phương pháp và cung cấp ví dụ về giao tiếp cổng COM máy tính theo chuẩn RS232 bằng LabVIEW. Giao tiếp máy tính là việc thực thi quá trình truyền và nhận tín hiệu từ một hay nhiều thiết bị nào đó với máy tính hoặc giữa nhiều máy tính với nhau. Giao tiếp máy tính có nhiều ứng dụng trong khoa học kỹ thuật bao gồm đo lường, giám sát, điều khiển tự động, lưu chuyển dữ liệu trong các nhà máy, xí nghiệp cho tới việc thực hiện các thí nghiệm ở các phòng nghiên cứu. Tài liệu do Hocdelam Group biên sọan và phổ biến miễn phí.
NỘI DUNG
- Chuẩn giao tiếp RS232
- Cách giao tiếp với RS232 với LabVIEW
- Sự khác nhau cơ bản và tương đối giữa LabVIEW và các ngôn ngữ khác trong việc thực thi giao tiếp chuẩn RS232
Tại sao lại phải quy định chuẩn? Để các thiết bị (máy in, máy tính, vi điều khiển, robot) gọi chung là thiết bị thu/phát có thể làm việc có hiệu quả và không gặp rắc rối khi làm việc phối hợp, từ lâu người ta đã đặt ra các tiêu chuẩn (ví dụ như tiêu chuẩn tốc độ truyền, cách kiểm soát lỗi trong quá trình truyền, mức điện áp khi truyền) cho các cổng vào/ra tín hiệu của các thiết bị. RS-232 là một trong các chuẩn đó. Chuẩn này ra đời năm 1962. (Bởi EIA)
ĐẶC ĐIỂM CHUẨN RS232
Chuẩn RS232 được nối ra một giắc cắm (gọi là cổng COM).Khi sử dụng có thể sử dụng 2 hay tòan bộ chân (pin) của cổng này (có nhiều loại cổng COM phục vụ các chức năng khác nhau gồm loại 4, 9, 15, 37 chân). Nếu mục đích chỉ truyền hoặc nhận tín hiệu giữa hai thiết bị thì ta chỉ cần sử dụng 2 dây (một dây truyền hoặc nhận) và một dây nối đất (GND – ground, hay mass).
RS 232 sử dụng phương thức truyền thông không đối xứng, tức là sử dụng tín hiệu điện áp chênh lệch giữa một dây dẫn và đất. Các cổng của RS – 232 có ngưỡng điện áp qui ước là -15V (volt) tới -3V , và 3V tới 15V (hoặc -5V, +5V, sự khác biệt giữa hai giá trị 3, và 5V này được gọi là noise magin - biên độ dao động của nhiễu).
- Tín hiệu có áp lớn +3V được coi có logic 0 hoặc có giá trị cao (H)
- Tín hiệu có áp nhỏ hơn –3V được coi có logic 1 hoặc giá trị thấp (L).
- Điện áp từ -3V tới +3V không có ý nghĩa.
Chính vì từ – 3V tới 3V là phạm vi không được định nghĩa, trong trường hợp thay đổi giá trị logic từ thấp lên cao hoặc từ cao xuống thấp, một tín hiệu phải vượt qua quãng quá độ trong một thơì gian ngắn hợp lý. Điều này dẫn đến việc phải hạn chế về điện dung của các thiết bị tham gia và của cả đường truyền. Tốc độ truyền dẫn tối đa phụ thuộc vào chiều dài của dây dẫn. Đa số các hệ thống hiện nay chỉ hỗ trợ với tốc độ 19,2 kBd (chiều dài cho phép 30 – 50 m).
CÁCH GIAO TIẾP RS232 SỬ DỤNG LABVIEW
- Phần mềm: Phiên bản LabVIEW phiên bản8.5
- Sơ đồ ghép nối
Nếu bạn đã có kinh nghiệm sử dụng các vi điều khiển ví dụ AVR, PIC, 89c51,…thì bạn có thể kết nối theo sơ đồ sau.
![]() |
Hình 3. Cách kết nối máy tính qua linh kiện điện tử MAX tới vi điều khiển
Trường hợp bạn bạn không nắm rõ về vi điều khiển, chúng tôi khuyến cáo bạn tự mua một mạch test vi điều khiển điều này giúp bạn vẫn học tốt được điều khiển tự động và giao tiếp máy tính. Và quan trọng hơn là bạn có thể tập trung tòan bộ thời gian, sức lực cho việc thiết kế bộ điều khiển hơn là tốn quá nhiều thời gian để thực thi những mạch điện một cách không chuyên.
- Ví dụ về giao tiếp RS232
Đây là ví dụ do của của hocdelam.org xem chi tiết trên hình 4,5. Ví dụ này tối ưu và đơn giản hơn cả các ví dụ mà NI cung cấp. Do vậy người sử dụng có thể dễ dàng nắm bắt và hiểu được chương trình. Vì lý do giữ nguyên SubVI khi đưa lên cộng đồng, nên hai SubVI này chỉ được cung cấp để các bạn làm thư viện và sử dụng để giao tiếp cổng COM thành công, tuy nhiên bạn không được quyền chỉnh sửa, vì vậy bạn không có password của hai SubVI này.
- Download ví dụ giao tiếp chuẩn rs232 cho LabVIEW 8.2 (nhấn chuột phải> Save target as trong IE hoặc save link as trong Firefox)
- Download ví dụ giao tiếp chuẩn rs232 cho LabVIEW 8.5 (nhấn chuột phải> save target as trong IE hoặc save link as trong Firefox)
Trong chương trình này, khối VISA serial dùng set các thông số của chuẩn giao tiếp, khối SPKT COM Read và SPKT COM Write đã được Hocdelam tối ưu và tạo ra nhằm đơn giản người sử dụng có thể dễ dàng thực hiện việc giao tiếp máy tính. Bạn cũng có thể test thử chương trình này bằng cách nối tắt chân truyền và nhận (số 3 và 4) của cổng COM với nhau.
SỰ KHÁC NHAU CƠ BẢN VÀ TƯƠNG ĐỐI (giữa LabVIEW và các ngôn ngữ khác trong việc thực thi giao tiếp chuẩn RS232)
- Ta thấy, trên hình 5, để thực hiện việc giao tiếp theo chuẩn RS232 thì việc cơ bản và quan trọng nhất là “thiết lập (set) các giá trị cho chuẩn đã đặt ra” như là một công thức cho trước được quy định theo tiêu chuẩn RS232. Khi set đúng thì chương trình mới có thể chạy được.
- LabVIEW là một ngôn ngữ đặc biệt, khi sử dụng LabVIEW, học viên không cần phải nhớ cấu trúc C hoặc VB dài dòng, trừu tượng nữa.
- LabVIEW mạnh mẽ và linh động hơn so với Matlab bởi tính đa dạng trong hỗ trợ của LabVIEW với của sản phẩm phần cứng đặc biệt là các thư viện có sẵn tạo điều kiện thuận lợi trong thí nghiệm và nghiên cứu ví dụ: bộ lọc, bộ điều khiển PID, các tiêu chuẩn đánh giá độ ổn định hệ thống trong điều khiển tự động, vv.
HỖ TRỢ
- Khóa đào tạo lập trình LabVIEW căn bản
- Đào tạo lập trình Vi điều khiển PIC
- Đào tạo lập trình Vi điều khiển AVR
- Hướng dẫn giao tiếp máy tính với LabVIEW qua cổng COM (chương trình mẫu kèm phần cứng)
- Điều khiển nhiệt độ bằng máy tính thông qua chuẩn RS232 (cổng COM)
- Điều khiển động cơ DC qua chuẩn RS232
- Mọi thông tin hỗ trợ xin liên hệ supports@hocdelam.org
THAM KHẢO THÊM
- Bài báo đầu tiên nói về chuẩn RS232 có tên tiếng Anh là Interface Between Data Terminal Equipment and Data Circuit-Termination Equipment Employing Serial Binary Data Interchange
- Chế độ làm việc của hệ thống RS – 232 là hai chiều toàn phần (full-duplex), tức là hai thiết bị tham gia có thể thu và phát cùng một lúc. Như vậy việc thực hiện truyền thông cần tối thiểu 3 dây dẫn – tring đó hai dây tín hiệu nối chéo với các đầu thu phát của hai trạm và một dây đất. Với cấu hình tối thiểu này, việc đảm bảo độ an toàn truyền dẫn thuộc về trách nhiệm của phần mềm. RS –232 có một ưu điểm là có thể sử dụng công suấtphát tương đối thấp, nhờ trở kháng đầu vào hạn chế trong phạm vi từ 3-7Kom. Trong các Rơle số thường dùng loại giắc cắm 9 chân và loại 25 chân. Chuẩn RS-232 qui định mức áp, tốc độ truyền và chức năng các chân của giắc cắm. (http://dut.ud.edu.vn)
- Giao tiếp RS232 sử dụng Matlab, Visual C, tác giả Ngô Hải Bắc
- Sơ đồ kết nối máy tính qua linh kiện điện tử MAX tới vi điều khiển
- Tham khảo thêm các tài liệu LabVIEW, phương pháp lập trình LabVIEW tại các bài trong mục Hỗ trợ> Tài liệu.

Tags: Giao tiep cong com, tài liệu labview, tai lieu labview, lập trình labview, lap trinh labview, giao trinh labview, giao tiep rss232
Nguyễn Bá Hải (hocdelam.org)
Các bài viết liên quan:
- Hỏi và đáp về LabVIEW Chào quý thầy cô và các bạn. Hocdelam Group mở luồng này để tiện trả lời các email của các thầy, bạn và thành viên từ mọi nơi gửi về cũng như từ các diễn đàn như http://vagam.dieukhien.net, http://dientuvietnam.net đã gửi cho chúng tôi!Lý do chính của chủ đề này nhằm giúp tôi giảm số [...]...
- Giáo trình LabVIEW: Lập trình LabVIEW cho mọi người TÓM TẮT Giáo trình: Lập trình LabVIEW Tập 1: Căn bản Tác giả: Nguyễn Bá Hải ( // bmnhy2003@yahoo.com// // ]]>Địa chỉ email này đã được bảo vệ từ spam bots, bạn cần kích hoạt Javascript để xem nó. // // ]]>) Năm: 2008 Tủ sách học để làm LỜI NÓI ĐẦU Học để làm là chương trình phát triển [...]...
- LabVIEW là gì? LabVIEW (Laboratory Virtual Instrumentation Engineering Workbench)là một phần mềm máy tính được phát triển bởi National Instruments. LabVIEW dùng trong hầu hết các phòng thí nghiệm, lĩnh vực khoa học kỹ thuật như tự động hóa, điều khiển, điện tử, cơ điện tử, hàng không, hóa sinh, điện tử y sinh ở các nước đặc [...]...








Cảm ơn đã cung cấp ví dụ tôi đang rất cần này. Xin cho tôi hỏi khóa học AVR khi nào mới có ở Hocdelam? Tôi đã search nhưng tìm không thấy, cảm ơn!
Cảm ơn anh Bá Hải!
Cảm ơn Anh nhé!Cảm ơn nhiều lắm!
Giảng viên ĐH SPKT TPHCM.
Cảm ơn Hải nhiều nha!
To: trongqt
Chào bạn trongqt, tôi khóa học về AVR và PIC sẽ được Hocdelam Group cập nhật trong tuần tới.
Chúc bạn thành công! Nếu có khó khăn gì hãy contact ngay với chúng tôi supports@hocdelam.org
Nguyễn Bá Hải
Hocdelam Group
thanks Bá hải nhiều nha!!! có khóa học ứng dụng labVIEW nào mới xin thông báo nha!!! see you soon!!!
Anh Hải ơi, cái password để mở 2 file subVI read and write là gì ạ,em đang làm về đề tài này nên rất muốn tham khảo bài của anh.Thanks!
Anh Hải ơi,password của 2 file subVIs là gì vậy anh, em mở mà không được. Thanks!
ThankS!
Khóa đào tạo lập trình LabVIEW căn bản
chừng nào mở vậy em?
ThankS
Chào các bạn kenshin
Mong các bạn và các anh thông cảm giúp cho tôi!
Vì lý do muốn giữ nguyên SubVI khi đưa lên cộng đồng, nên hai SubVI này chỉ được cung cấp để các bạn làm thư viện và sử dụng để giao tiếp cổng COM thành công, tuy nhiên bạn không được quyền chỉnh sửa, vì vậy bạn không có password của hai SubVI này.
Tôi xin đảm bảo hai SubVI này hoạt động bình thường mà không cần password!
Nếu các bạn vẫn gặp khó khăn xin vui lòng liên lạc lại với tôi! Yahoo ID: bmnhy2003@yahoo.com hoặc Email: nguyenbahai@hocdelam.org
Chân thành cảm ơn và chúc sức khỏe các bạn!
Bá Hải
Kính gửi thầy Điện, trường Giao thông Vận tảo Số 3.
Em hiện vẫn mở đều các lớp, tuy nhiên các lớp mới đăng ký thì phải học vào đầu tháng 4 này ạ!Hocdelam Group có một chương trình đặc biệt dành cho các giảng viên tại các trường Đại học Cao đẳng và Viện nghiên cứu trong cả nước. Cụ thể sẽ được thông báo trong ngày 2/4/2009.
Do vậy, thầy sẽ được hưỡng rất nhiều lợi ích khi tham gia các khóa học tại Hocdelam Group.
Xin kính chúc thầy sức khỏe và may mắn!
Nguyễn Bá Hải
Hi anh Hải,
Em đang rất cần 2 SubVI này để làm thư viện nhưng down ở đây về máy thì lại không giải nén được. Vậy anh có thể up lại hoặc gửi vào email cho em được ko ạ?
Cảm ơn anh.
Chào anh Bá Hải, em vừa down giao diện chuẩn truyền rs232 của anh về, nhưng vẫn chưa sử dụng được, anh có thể cho em biết thêm là có cần phải kết nối thêm gì ko ạ? Em xin lỗi là em khá gà trong lĩnh vực này, mong được sự chỉ bảo tận tình của anh ạ!
Em có thể cài add nick anh để trao đổi thêm
bmnhy2003@yahoo.com
Chúc em vui vẻ!
Tôi thấy giới thiệu về Labview rất hay và rất muốn học nó nhưng tôi băn khoăn 1 số điều sau, mong các bạn giải đáp:
- LABVIEW có thể xây dựng các ứng dụng chuyên nghiệp không?
- Chúng ta có thể sửa mã nguồn theo 1 yêu cầu cụ thể không?
- Các giao tiếp có thể tùy biến hay truyền thông phải theo chuẩn của NI (vd: với RS485).
- Tốc độ giao tiếp RS232 có thể nâng cao tùy theo Chip USB-RS232 hay không?(nhiều chip hỗ trợ đến ~1MBaud).
Rất mong các bạn giải đáp.
Thanks!
Chào Anh/chị! xin trả lời trong hiểu biết của tôi là:
- LABVIEW có thể xây dựng các ứng dụng chuyên nghiệp không?
Có, cụ thể là LabVIEW sử dụng nhiều trong hệ thống thu thập dữ liệu, kiểm tra sản phẩm, vv. Các sản phẩm này được sử dụng trong cuôc sống hằng ngày và phục vụ sản xuất. Do vậy nó là công cụ dùng xây dựng các ứng dụng chuyên nghiệp bên cạnh việc phục vụ tại phòng thí nghiệm.
- Chúng ta có thể sửa mã nguồn theo 1 yêu cầu cụ thể không?
Được, ta có thể sửa mã nguồn, có thể tạo thư viện mới, vv. Ngay cả bản dùng thử cũng làm được việc này. Anh/chị xem thêm tại http://labview.hocdelam.org để biết thêm thông tin nhé!
- Các giao tiếp có thể tùy biến hay truyền thông phải theo chuẩn của NI (vd: với RS485).
Không cần phải bắt buộc phải là phần cứng của NI. Ví dụ cụ thể này là dùng card tự sản xuất trong nước. Do nhóm Hocdelam tự làm. xem thêm ví dụ này tại đây:
http://www.youtube.com/watch?v=35-CsO1G-A4&eurl=http://labview.hocdelam.org/vn/&feature=player_embedded
- Tốc độ giao tiếp RS232 có thể nâng cao tùy theo Chip USB-RS232 hay không?(nhiều chip hỗ trợ đến ~1MBaud).
Hoàn tòan được, tuy nhiên tốc độ không chỉ liên quan tới bản thân LabVIEW mà còn do phần mềm anh/chị viết ra và phần cứng đang giao tiếp với LabVIEW.
Chúc Anh may mắn!
Trân trọng!
Chào các bạn.
Mình có vấn đề này muốn hỏi các bạn. Mình có một tín hiệu thu được từ thiết bị đi EEF (Tín hiệu điện não) lưu với dạng file. Mình muốn dùng LabVIEW để phân tích phổ, tần số và biền độ, phase của tín hiệu này.
Mình mới làm quen LabVIEW nên chưa có nhiều tài liệu, mong bạn có tài liệu nào thì giúp mình.
Chân thành cảm ơn.
Thùy Trang.
Bạn cần tài liệu về mục nào?
Theo như bạn kể thì tôi chỉ có thể gửi cho bạn các tài liệu sau
Tài liệu tiếng Việt
http://labview.hocdelam.org/vn/Tai-lieu-LabVIEW/Can-Joomla-1.5-operate-with-PHP-Safe-Mode-On.nso
Tài liệu tiếng Anh
http://labview.hocdelam.org/vn/Tai-lieu-LabVIEW/Tai-lieu-LabVIEW-tieng-Anh.nso
Không biết có đúng với thứ bạn cần không?
em dang làm đề tài về điều khiển nhiệt độ mờ dung labview va fuzzy vay anh có khoá học nào không em theo học với.em cảm ơn