Thông báo

Collapse
No announcement yet.

Tutorial: Tổng hợp các sơ đồ chuyển đổi RS232 <-> RS485

Collapse
X
 
  • Lọc
  • Giờ
  • Show
Clear All
new posts

  • Tutorial: Tổng hợp các sơ đồ chuyển đổi RS232 <-> RS485

    Mình có làm giao tiếp một hệ thống vi điều khiển với PC thông qua mạng RS485 , nên có 1 chút ít kiến thức về mạch chuyển đổi từ RS232 sang RS485.Thấy có nhiều bạn cũng có quan tâm đến mạng RS485 nên mở ra Thread này , hy vọng anh em huynh đệ nào đã từng làm qua hay quan tâm thì đóng góp các Schematic để tạo nên một Hệ thống tài liệu về RS232 <-> RS485 Converter

    Vì Lý thuyết của mạng RS232 ,RS485 cũng có và được nhắc đến khá nhiều, nên ở đây mình chỉ POST các Schematic do mình thiết kế và Tham khảo ở các tài liệu ( đã làm Mạch Thật, chạy OK )

    Tóm tắt Giao Thức như hình sau:

    ---------------------------------------------
    Bộ Chuyển đổi RS485-RS232 dùng thường có 2 phương pháp chính:
    1. Dùng IC 555 để định thời (KHUYÊN DÙNG ,vì Truyền nhận TỰ ĐỘNG)
    2. Dùng Tín hiệu RTS của cổng Serial để điều khiển


    * Các IC chuyển đổi RS232<-->RS485 thông dụng là : MAX485 (Maxim , giá 30k thì phải,mắc nên ít xài ) , SN75176B (của Texas , giá 4k) ,hay DS75176 (của Dallas),.... Mình thì thấy dùng con SN75176B cũng OK ,giá lại rẻ nữa.
    ------------------------------------------------------------------
    I. SƠ ĐỒ BỘ CHUYỂN ĐỔI DÙNG IC 555 ĐỂ ĐỊNH THỜI:
    1. Mạch chuyển đổi cho PC:


    2. Bộ chuyển đổi cho MCU, PLC


    File Schematic (định dạng PDF) ,mình gởi ở file Kèm theo THREAD này.
    * Gởi kèm Lý thuyết về RS232-RS485 mà mình sưu tầm được.
    Attached Files
    Last edited by hoanglongu; 03-08-2008, 17:55.
    My department's Website: www4.hcmut.edu.vn/~thietbidien/trangchu

    Motorola-FreeScale's MCU 68HC11 & HCS12X Supporter

  • #2
    II. SƠ ĐỒ BỘ CHUYỂN ĐỔI DÙNG TÍN HIỆU RTS ĐỂ ĐIỀU KHIỂN

    Sơ đồ này mình Tham Khảo ở WEBSITE:http://aquaticus.info/rs485_to_rs232 ( cung cấp Free Schem và Code để Test Bộ chuyển đổi này --> Khá Good) mình đã Hàn mạch DÂY và chạy OK.
    1. MẠch chuyển đổi cho PC


    Trong 2 Sơ đồ này:
    Bạn NỐI GND cho chân thứ 15 của MAX232
    NỐI Vcc cho chân thứ 16 của MAX 232
    Cấp Vcc cho chân số 8 và GND cho chân số 5 của Max485 (hoặc SN75176B)

    2. Mạch chuyển đổi cho MCU ( Ex: ATMega8)

    Hy vọng các anh em đóng góp cho Thread này nhiều Schematic bổ ích và Open Source ( cho xài Free) hen.. Chúc vui!
    Last edited by hoanglongu; 02-08-2008, 21:39.
    My department's Website: www4.hcmut.edu.vn/~thietbidien/trangchu

    Motorola-FreeScale's MCU 68HC11 & HCS12X Supporter

    Comment


    • #3
      Mình Updates thêm:
      1.File ORCAD Schemmatic của Sơ đồ có định thời dùng IC555 (khuyên dùng Sơ đồ này)
      2. Giao Diện để Test thử mạng RS485

      2 File này gởi kèm theo trong bài viết này.
      -------------------------------------------------
      Note: Anh em nào cảm thấy bài viết có ích thì nhấn nút THANKS ha ( cho mình vui ,hi hi)
      Attached Files
      Last edited by hoanglongu; 03-08-2008, 12:24.
      My department's Website: www4.hcmut.edu.vn/~thietbidien/trangchu

      Motorola-FreeScale's MCU 68HC11 & HCS12X Supporter

      Comment


      • #4
        Nguyên văn bởi hoanglongu Xem bài viết
        Mình Updates thêm:
        1.File ORCAD Schemmatic của Sơ đồ có định thời dùng IC555 (khuyên dùng Sơ đồ này)
        2. Giao Diện để Test thử mạng RS485

        2 File này gởi kèm theo trong bài viết này.
        -------------------------------------------------
        Note: Anh em nào cảm thấy bài viết có ích thì nhấn nút THANKS ha ( cho mình vui ,hi hi)
        Chao ban minh thay tren dien dan nay ban co nhieu bai viet hay va bo ich. Ban co the gui cho minh xin vai code VB ve do thi nhan du lieu tu cong com duoc khong? xuanvudk2@gmail.com
        NGUYỄN XUÂN VŨ
        Mua bán, sửa chữa PLC, biến tần
        Vỉ mạch điện tử công nghiệp các loại
        0978462163

        Comment


        • #5
          Nguyên văn bởi hoanglongu Xem bài viết
          Mình Updates thêm:
          1.File ORCAD Schemmatic của Sơ đồ có định thời dùng IC555 (khuyên dùng Sơ đồ này)
          2. Giao Diện để Test thử mạng RS485

          2 File này gởi kèm theo trong bài viết này.
          -------------------------------------------------
          Note: Anh em nào cảm thấy bài viết có ích thì nhấn nút THANKS ha ( cho mình vui ,hi hi)
          Minh ve roi nhung khong dep lam
          Attached Files
          NGUYỄN XUÂN VŨ
          Mua bán, sửa chữa PLC, biến tần
          Vỉ mạch điện tử công nghiệp các loại
          0978462163

          Comment


          • #6
            Nguyên văn bởi xuanvu_dk2 Xem bài viết
            Minh ve roi nhung khong dep lam
            Bạn vẽ như vậy là cũng đẹp mà
            Vẽ đồ thị thì có thể dùng ActiveX Control như TeeChart... hay có thể Vẽ bằng Lập trình thuần tuý thôi cũng được.

            Khi nào rảnh hơn 1 chút ( do đang nghiên cứu L.V.T.N), mình sẽ Post vài Chương trình Vẽ Đồ thị bằng Lập trình ở luồng này:
            http://dientuvietnam.net/forums/show...t=11088&page=9
            My department's Website: www4.hcmut.edu.vn/~thietbidien/trangchu

            Motorola-FreeScale's MCU 68HC11 & HCS12X Supporter

            Comment


            • #7
              Nguyên văn bởi hoanglongu Xem bài viết
              II. SƠ ĐỒ BỘ CHUYỂN ĐỔI DÙNG TÍN HIỆU RTS ĐỂ ĐIỀU KHIỂN

              Sơ đồ này mình Tham Khảo ở WEBSITE:http://aquaticus.info/rs485_to_rs232 ( cung cấp Free Schem và Code để Test Bộ chuyển đổi này --> Khá Good) mình đã Hàn mạch DÂY và chạy OK.
              1. MẠch chuyển đổi cho PC


              Trong 2 Sơ đồ này:
              Bạn NỐI GND cho chân thứ 15 của MAX232
              NỐI Vcc cho chân thứ 16 của MAX 232
              Cấp Vcc cho chân số 8 và GND cho chân số 5 của Max485 (hoặc SN75176B)

              2. Mạch chuyển đổi cho MCU ( Ex: ATMega8)

              Hy vọng các anh em đóng góp cho Thread này nhiều Schematic bổ ích và Open Source ( cho xài Free) hen.. Chúc vui!
              Cho mình hỏi tí.Trong cả 2 sơ đồ trên thì chân RE và chân DE có tác dụng giống như việc điều khiển BUS , tức là khi một nút muốn truyền thì đưa các chân này lên mức cao, sau khi truyền xong lại đưa về mức thấp (không biết hiểu thế có đúng không ?) . Vậy khi nhận thì 2 chân này có tác dụng điều khiển gì không ? .Nếu tôi áp dụng truyền thông đa xử lí trong đó PC hay một MCU trong mạng làm chủ BUS và treo chân này lên mức cao(không có điều khiển gì hết), lúc này việc truyền nhận sẽ do master làm chủ và áp dụng một cách thức khác để truyền nhận(ví dụ chiêu thức "thẻ bài " trong mạng Token Ring) thì có được không ?

              Comment


              • #8
                Các bác cứ đưa ra mấy cái sơ đồ không không thế thì bọn đệ làm ăn được gì.Ít ra thì chỉ cho bọn đệ cách lập trình, sơ đồ thuật toán hay cách thức hoạt động của nó chứ. Đệ muốn hỏi nếu gởi 1 byte địa chỉ hay byte dữ liệu từ master đến slaver thì phải làm công việc gì(sơ đồ thuật toán để lập trình ấy).

                Comment


                • #9
                  Nguyên văn bởi saobanmai Xem bài viết
                  Các bác cứ đưa ra mấy cái sơ đồ không không thế thì bọn đệ làm ăn được gì.Ít ra thì chỉ cho bọn đệ cách lập trình, sơ đồ thuật toán hay cách thức hoạt động của nó chứ. Đệ muốn hỏi nếu gởi 1 byte địa chỉ hay byte dữ liệu từ master đến slaver thì phải làm công việc gì(sơ đồ thuật toán để lập trình ấy).
                  Bạn saobanmai ơi, mình Viết tên Thread là : Tổng hợp các sơ đồ chuyển đổi RS232 <--> RS485 , còn Phần Lý thuyêt ( bao gồm Lý thuyết + Giao thức Truyền Nhận) đã được nói nhiều trong các Thread khác của diễn đàn cũng như ở các Sách, nên bạn phải tự nghiên cứu để chọn ra giao thức truyền Data ( mà theo bạn là tối ưu) chứ . Ngoài ra ,mình cũng đã gởi kèm file: Lý thuyết mạng RS485 rồi ( cũng khá đầy đủ về cách Lập trình).

                  Trong mạng RS485 , có định địa chỉ các NODE , vì vậy ,dựa vào các địa chỉ này mà ta sẽ Truyền nhận dữ liệu theo kiểu Master - Slave . Còn kiểu truyền Token-Ring thì mình chưa làm thử ,nên không có kinh nghiệm gì để chia sẻ.
                  My department's Website: www4.hcmut.edu.vn/~thietbidien/trangchu

                  Motorola-FreeScale's MCU 68HC11 & HCS12X Supporter

                  Comment


                  • #10
                    Nguyên văn bởi hoanglongu Xem bài viết
                    Bạn saobanmai ơi, mình Viết tên Thread là : Tổng hợp các sơ đồ chuyển đổi RS232 <--> RS485 , còn Phần Lý thuyêt ( bao gồm Lý thuyết + Giao thức Truyền Nhận) đã được nói nhiều trong các Thread khác của diễn đàn cũng như ở các Sách, nên bạn phải tự nghiên cứu để chọn ra giao thức truyền Data ( mà theo bạn là tối ưu) chứ . Ngoài ra ,mình cũng đã gởi kèm file: Lý thuyết mạng RS485 rồi ( cũng khá đầy đủ về cách Lập trình).

                    Trong mạng RS485 , có định địa chỉ các NODE , vì vậy ,dựa vào các địa chỉ này mà ta sẽ Truyền nhận dữ liệu theo kiểu Master - Slave . Còn kiểu truyền Token-Ring thì mình chưa làm thử ,nên không có kinh nghiệm gì để chia sẻ.
                    thank you !!!!

                    Comment


                    • #11
                      ban HoanglongU có mạch chuyển đổi rs 323<---> rs422 không cho mình xin với mình đang cấn nó thanks

                      Comment


                      • #12
                        Nguyên văn bởi diep_love Xem bài viết
                        ban HoanglongU có mạch chuyển đổi rs 323<---> rs422 không cho mình xin với mình đang cấn nó thanks
                        Là mạch chuyển từ chuẩn RS232 - RS422 phải không bạn. Mình thì không có sẵn Sơ đồ của mạch này.
                        Nhưng các Chip lái như : MAX485 hay SN75176 đều có Hỗ trợ Chuẩn RS422 .Về sơ đồ mạch , bạn có thể thay đổi 1 ít từ mạch RS232-RS485 là có thể trở thành RS232-RS422.

                        Bạn có thể Tham khảo sơ đồ mạch ở đây , Sơ đồ này sử dụng Tín hiệu RTS để điều khiển.
                        Link: http://pinouts.ru/Converters/rs422_cable_pinout.shtml
                        Attached Files
                        My department's Website: www4.hcmut.edu.vn/~thietbidien/trangchu

                        Motorola-FreeScale's MCU 68HC11 & HCS12X Supporter

                        Comment


                        • #13
                          ban Hoanglongu có thể cho mình mạch rs 485 kết nối với 89c51 ko, ko có dùng rs 232 nha
                          Sẵn bạn thử thiết kế mạch vdk dùng 1 master điều khiền 2 con khác dùng rs485
                          bạn chỉ cấn thiế kế như vậy dc rồi vì mình đang làm 1 đề tài liên quan dến nó nhưng đi tìm hết nhà sách mà kô có cuốn nào nói về rs 485 hết
                          Thanks bạn nhiều nha

                          Comment


                          • #14
                            bạn có thể vào đấy xem : http://lecongcuong.blogspot.com

                            Comment


                            • #15
                              Nguyên văn bởi tkthung Xem bài viết
                              ban Hoanglongu có thể cho mình mạch rs 485 kết nối với 89c51 ko, ko có dùng rs 232 nha
                              Sẵn bạn thử thiết kế mạch vdk dùng 1 master điều khiền 2 con khác dùng rs485
                              bạn chỉ cấn thiế kế như vậy dc rồi vì mình đang làm 1 đề tài liên quan dến nó nhưng đi tìm hết nhà sách mà kô có cuốn nào nói về rs 485 hết
                              Thanks bạn nhiều nha
                              Cái mạch chuyển đổi này, mình đã làm Hoàn Chỉnh rồi: Hiện nay mình còn dư 4 bộ Mạch Chuyển RS232 <--> RS485 ( Bộ cho MCU hay PC đều có - vì hồi hè làm Dự Án về RS485) . Mạch đảm bảo hoạt động OK

                              Còn về cách thức Giao tiếp,bạn có thể muốn PC hay MCU là Master là như nhau cả thôi:
                              + Nếu PC là Master: Phải cần bộ chuyển đổi cho PC ,và bộ chuyển cho mỗi Slave-MCU
                              + Nếu MCU là Master : Không cần bộ chuyển cho PC, chỉ cần bộ chuyển cho các MCU

                              Vì hiện nay ,mình đang làm mạng CAN (Control Area NetWork) - không dùng RS485 .Nên nếu bạn cần ,mình sẽ Để lại mấy bộ chuyển RS232-RS485 cho bạn.

                              Bạn có thể liên lạc với mình qua:
                              Mail: leonardo_u3000@yahoo.com
                              Phone: 0906677347
                              My department's Website: www4.hcmut.edu.vn/~thietbidien/trangchu

                              Motorola-FreeScale's MCU 68HC11 & HCS12X Supporter

                              Comment

                              Về tác giả

                              Collapse

                              hoanglongu - Received the Bachelor (honors) and Master (by research) of Engineering in Automatic Control at Faculty of Electrical-Electronics Engineering, Ho Chi Minh City University of Technology (HCMUT), Vietnam, in 2009 and 2011, respectively. - Majors: Automatic Control, Solar/Wind Energy systems, Electrical Machines, Two-wheeled Self-Balancing Robot, Microcontrollers. Tìm hiểu thêm về hoanglongu

                              Bài viết mới nhất

                              Collapse

                              Đang tải...
                              X