Thông báo

Collapse
No announcement yet.

[Nhiễu đóng/ngắt Relay] Cầu cứu : MCU bị reset dù không chung mass!

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

  • [Nhiễu đóng/ngắt Relay] Cầu cứu : MCU bị reset dù không chung mass!

    Chào các anh! Em bị lỗi như tiêu đề, nói sơ qua tình hình là thế này:

    Em đang làm bộ điều khiển nhiệt độ bằng type K (thermo-couple).

    Khi chạy thử nghiệm, em bố trí như sau :

    1. Dùng bộ điều khiển nhiệt của OMRON làm chuẩn, bộ này có relay 5 chân (loại giống ngoài chợ) bên trong. Khi kết nối với điện trở nhiệt và Type K xong, ta cài nhiệt độ bao nhiêu thì nó sẽ đóng ngắt Relay tương ứng để giữ nhiệt ở mức mong muốn ( kiểu như PID nhiệt vậy ).

    2. Mạch em làm kết nối với cảm biến nhiệt Type K (Type K cũng kết nối với mạch OMRON) để kiểm tra xem đo chính xác ko.

    Em xin nói rõ là mạch em làm và mạch OMRON chỉ chung 2 dây của Type K , tất cả mọi thứ còn lại ko hề chung đụng gì nhau cả.

    ==> Kết quả test là : khi relay trong mạch OMRON đóng ngắt --> mạch của em nó bị treo, reset hoài luôn , ngay cả khi em gỡ 2 dây Type K ra luôn ( tức là 2 mạch hoàn toàn tách biệt).
    Phải chờ đến khi nào mạch OMRON ko đóng ngắt Relay nữa thì em nhấn nút reset trên mạch em nó mới chạy bình thường lại .

    Một vài thông tin thêm về mạch em làm :
    1. Nguồn em thiết kế như sau :
    Click image for larger version

Name:	sxsad.png
Views:	6688
Size:	9.4 KB
ID:	1662890


    Rồi từ 5V đó em qua con IC ổn áp MIC5205 --> 3.3V cấp nguồn cho MCU STM8L151K4T6
    2. Mạch reset tham khảo từ STM8L discovery kit
    3. Mạch khuếch đại kiểu vi sai nên không có nối mass dây Type K . Đảm bảo ko dùng chung nguồn mass gì với mạch Mạch OMRON điều khiển bằng relay.

    ==> Kết quả giờ là chỉ cần để cái mạch em gần mạch OMRON khi relay nó đóng ngắt tạch tạch là cái mạch em đơ luôn.

    Có anh nào biết nhiễu kiểu này là nhiễu gì ko ? Có cách nào thì được nó ko ?
    Xin mấy anh có kình nghiệm giúp đỡ em với
    Nothing

  • #2
    STM8 rất nổi tiếng vụ nhiễu này.
    Phần mềm tự do hoặc không dùng máy tính nữa !.

    Comment


    • #3
      Vậy nhiễu này là do bản thân MCU chống nhiễu kém hả anh bqviet ? Có mạch lọc nhiễu nào chống được ko anh ?
      Nếu không thì có con nào ADC 12bit chống nhiễu vụ này được giới thiệu em với
      Nothing

      Comment


      • #4
        Lúc trước mình cũng bị như bác nhưng là con pic 16f505. Mình điều khiển cái motor bơm nước mini 12vdc thông qua cái role. Mình dùng 2 nguồn khác nhau cho mạch và motor riêng. Ko gắn motor thì ko sao, nhưng gắn thì mcu này cứ reset khi role đóng và cứ như thế như 1 vòng lặp. Cuối cùng mình khắc phục được hẳn luôn là... chuyển sang con W79E2051 họ 8051 dùng ko bị nhiễu nữa. Dù mình xài chung nguồn với động cơ luôn. Mấy con Pic đó là của Hà Lan mình lấy trong mạch cũ ra chứ ko phải con đểu đâu. Có thể mấy loại này ko có thiết kế kháng nhiễu điện từ, emi, esd gì đó.

        Comment


        • #5
          Bác xài con 8051 Nuvoton ah, Ngon vậy. Mình xem thử thì thấy nó ko có ADC.
          Bạn có thử với mấy con ARM của Nuvoton chưa ?
          Nothing

          Comment


          • #6
            PIC hàng chợ, AVR hàng chợ đều bị nhiễu. STM8 hàng chính hãng chịu nhiễu khá xoàng, hàng chợ thì ... khỏi cần nói.

            PIC16F886 hàng chính hãng, mạch đặt cách khởi động từ 30 cm đóng cắt oành oạch cả ngày không sao.

            Dòng PIC16F178x (x = 3..9) có 2 opamp, 1 ADC 12 bit và 1 DAC 8 bit bên trong.
            Phần mềm tự do hoặc không dùng máy tính nữa !.

            Comment


            • #7
              Nó có nhiều phiên bản mà bạn Như mấy loại này có ADC này nè. Hoặc loại 28 chân N79E855_854; 2 loại này mình mới mua chứ chưa dùng thử. Mới dùng 3 loại W79e2051, N78E055 và N78E052D (2 loại này giống AT89S52) nhưng mạnh hơn. Con 2051 mình dùng làm sine inverter chạy cũng mượt lắm chưa thấy bị nhiễu.
              Attached Files

              Comment


              • #8
                Cảm ơn anh bqviet và TP_Electro ! Mình đang mượn cái kit STM8S Discovery thử xem để gần mạch OMRON có bị tình trang reset ko ? Nếuvẫn bị thì là do con STM8, lúc đó sẽ nói chuyện lại với khách để đổi dòng MCU khác. Chỉ sợ cái kit STM8S nó ko bị reset thì mới nhức não
                Nothing

                Comment


                • #9
                  Mình từng bị thế. Đóng ngắt đèn chấn lưu điện tử không sao mà đóng ngắt đèn dùng tắc te là mạch bị reset ngay khi tắc te chớp nháy. Như của mình ban đầu là do sử dụng trực tiếp tín hiệu từ vi điều khiển vào thẳng rơ le. Sau này mình phải dùng thêm con EL817 thay vì điều khiển trực tiếp rơ le thì hết nhiễu. Nhiễu này là phản hồi từ rơ le lại.
                  Phát triển module điểu khiển, lập trình nhúng... M: 0906.28.70.28

                  Comment


                  • #10
                    Nguyên văn bởi sos82 Xem bài viết
                    Mình từng bị thế. Đóng ngắt đèn chấn lưu điện tử không sao mà đóng ngắt đèn dùng tắc te là mạch bị reset ngay khi tắc te chớp nháy. Như của mình ban đầu là do sử dụng trực tiếp tín hiệu từ vi điều khiển vào thẳng rơ le. Sau này mình phải dùng thêm con EL817 thay vì điều khiển trực tiếp rơ le thì hết nhiễu. Nhiễu này là phản hồi từ rơ le lại.
                    Bạn xem kĩ chổ người ta nói là bên động lực và điều khiển cách li nguồn hoàn toàn mà. Chứ ko cách li, bị nhiễu là bình thường nói làm gì.

                    Comment


                    • #11
                      Mình cũng từng bị như này đối với ATmega8. Reset bất thình lình luôn, xung nhippj chạy sai, mặc dù ko chung chạ nhau gì về điện hết, mà chỉ cần đặt gần thôi. Nó là nhiễu xung từ trường gì đó làm mạch dao động chạy sai đi. --> Bo tay ko biết nguyên nhận, đành đổ tại do linh kiện đểu hàng chợ

                      Comment


                      • #12
                        Có 3 lý do chính:
                        -Linh kiểm lởm.
                        -Linh kiện có khả năng chống nhiễu kém.
                        -Thiết kế tù, mạch in thiết kế ẩu, dây dợ lằng ngoằng, thiếu linh kiện (thể loại kit xong câu dây là chúa tể vụ này).

                        Comment


                        • #13
                          Có một lý do nữa là do phần mềm.

                          Tớ làm một con robot dùng 2 MCU.

                          Con chính thì lo chạy và nhìn đường. Con phụ thì chỉ lo hiển thị và giao tiếp với người dùng.

                          2 con nói chuyện qua I2C.

                          Cứ lâu lâu thì con phụ lại bị reset. Mất mấy tiếng đồng hồ mới biết là do phần mềm.

                          Con chính cứ chừng 100 mS thì hỏi con phụ có ai bấm nút không, và cho hiển thị lên. Vì cứ hỏi nó liên tục như vậy cho nên bị crash và tự động reset. Vì thời gian viết vào LCD mất vài trăm mS.

                          Liên lạc với người viết complier, thì họ cũng đoán chừng như tớ là bị "out of bound" trong phần nhớ, tức là con phụ bị overload khi mở quá nhiều "instance" (không biết tiếng Việt kêu là gì)

                          Cuối cùng thì cho con chính hỏi con phụ chừng vài trăm mS, thế là hết bệnh.



                          Comment


                          • #14
                            Viết LCD làm gì mà mấy trăm ms thế bác Paddy @@.
                            Còn yếu tố phần mềm thì xác nhận là có. Nhất là mấy chỗ config sai hoặc để bị loop,tràn stack...

                            Comment


                            • #15
                              Có một cao thủ chống nhiễu công nghiệp cho vxl chỉ mình rằng khi nâng áp GND của bo xử lý lên cao hơn GND2 của bo động lực rơ le vài chục vôn và điều khiển I/O qua opto , bỏ vxl trong hột phủ max kín là hết bị nhiễu. Vì khi đó gai nhiễu từ động lực không thể cao hơn GND của vxl để mà tác động được đến nó.
                              Khoa học công nghệ mới là chìa khóa của sự phát triển!

                              Comment

                              Về tác giả

                              Collapse

                              dangkiet000 Tìm hiểu thêm về dangkiet000

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

                              Collapse

                              Đang tải...
                              X