Thông báo

Collapse
No announcement yet.

Đo nhiệt độ

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

  • Đo nhiệt độ

    có cách nào kết hợp con LM335 với 16F84A để đo nhiệt độ không? Xin chỉ cho mình với

  • #2
    16F84a ko có ADC trong, bởi vậy phải ghép ADC ngoài. Tôt nhất bác chuyển sang 16F88 hoặc 16F87xA thậm chí 12F683/675 đều có ADC trong 10 bit. Dễ mua lắm. Mua bác Falleaf, bác BA.. ko tiêc tiền thì lên Nhật Tảo, hàng Trống mà tiêu tiền.
    Mà chuyển sang LM35 dùng cho dễ.
    -------------------

    Comment


    • #3
      Nếu bác muốn tiêu tiền hơn nữa thì mua con DS18B20 về dùng, có sẵn ở 269 Đội Cấn. Giá không mềm lắm 35K nhưng nó khá chính xác độ phân giải cao, dải nhiệt độ đo từ
      -55 độ C --> 125 độ C. Con này tuy bé bằng transitor nhưng tích hợp khá đầy đủ, cảm biến nhiệt độ, ADC, 8 bit NVRAM. Bạn chỉ việc đọc giá trị ra. Giao tiếp con này theo chuẩn SPI...Hồi trước em cũng làm em dùng 16F84.
      Learn more...

      Comment


      • #4
        Nguyên văn bởi noisepic
        Nếu bác muốn tiêu tiền hơn nữa thì mua con DS18B20 về dùng, có sẵn ở 269 Đội Cấn. Giá không mềm lắm 35K nhưng nó khá chính xác độ phân giải cao, dải nhiệt độ đo từ
        -55 độ C --> 125 độ C. Con này tuy bé bằng transitor nhưng tích hợp khá đầy đủ, cảm biến nhiệt độ, ADC, 8 bit NVRAM. Bạn chỉ việc đọc giá trị ra. Giao tiếp con này theo chuẩn SPI...Hồi trước em cũng làm em dùng 16F84.
        He he.. có con hay vậy thì quá tiện. Tui có đọc loáng thoáng ở đâu đó có nói về laọi này. Nghe nói rất tiện nghi. Bác noisPic có gì post lên cho anh em học hỏi cho nhanh chóng với. Schematic+firmwave bác viết.

        Ùa mà lạ quá. SPI thì ít nhất 2 chân màATA+CLK. Nếu con bác nói 3 chân thì nó mất tiêu 2 chân:GND+Vcc rồi. Còn 1 chân data nữa thôi. Vậy thiếu mất chân CLK rồi. Bác noispic nhớ có lộn ko nhỉ?
        -------------------

        Comment


        • #5
          Đấu có!
          Con này có 3 chân VCC,GND, DATA. Nó giao tiếp với VDK buồn cười lắm..HIGH, delay,LOW,delay,.cứ thế cứ thế. Nó có sẵn một tập lệnh. Ta có thể ghép nối nhiều con 18B20 trên cùng 1 dây để đọc nhiệt độ tại nhiều vị trí khác nhau.
          1-wire interface!
          Learn more...

          Comment


          • #6
            Nguyên văn bởi CHIBANG
            Hơ hơ... vừa đọc qua cái datasheet. Nó 1 dây(ko phải SPI,I2C gì hết). Quái đản.
            Mà nó lên tới 12 bit đó bác noispic ạ, bác là chưa post lên cho tui học với. Mệt nhất là ngồi tìm hiểu các chuẩn của nó rồi làm theo. Dư tình dư tội, y như cái khởi tạo LCD ấy, cứ bắt mình vòng vo, sai 1 lệch là ko chạy
            Bac ChiBang xai tam may cai nay nhe,

            Hehe em cung dang dinh lam cai nay day. Neu bac muon em se lap mot topic moi ve con nay de chung ta cung thao luan
            Dia chi cho cac Fan muon hoc Pic

            Comment


            • #7
              Sensor nhiệt dùng DS18B20 và DS1821

              Tôi mở luồng này để chúng ta cùng thảo luận về sensor nhiệt dung chuẩn giao tiếp 1-Wire interface của hang Maxim.

              Uu điểm của Sensor này ko cần bộ chuyển đổi ADC ở ngoài hay , tích hợp trong VĐK, đông thời có thể mắc nối tiếp nhiều IC với nhau để đo nhiệt độ ở các vị trí khác nhau

              Nhược điểm : đây là chuẩn giao tiếp khá mới, và khó lập trình. Giá khá mắc Giá DS18B20 35K, DS1821 giá 60K (ở 269 Đội Cấn )

              Mời bà con cùng tham gia thảo luận và khám phá về con này. ( Con này có vẻ ít được biết đến thì phải )

              Bác Noisepic nhớ giúp anh em một tay

              http://www.maxim-ic.com/quick_view2.cfm/qv_pk/2794

              http://www.maxim-ic.com/quick_view2.cfm/qv_pk/2812
              Dia chi cho cac Fan muon hoc Pic

              Comment


              • #8
                Nguyên văn bởi CHIBANG
                Vây còn chần chừ gì nữa đây bác Mafd_47?
                Ba con qua ben http://www.dientuvietnam.net/board/s...=4317#post4317 chung ta cung thao luan nhe

                Con nay rat hay day
                Dia chi cho cac Fan muon hoc Pic

                Comment


                • #9
                  Về việc dùng con LM335 để dò nhiệt độ mới đây tui đã tim hiểu qua và chia sẻ đôi điều.
                  LM335 là senor nhiết nhưng tính theo độ K, tức nó thay đổi 10mV/K chứ ko phải 10mV/C do đó khi lập trình và đọc dữ liệu từ ADC để đưa ra nhiết độ thì cần tính toán đôi chút.
                  Tôi dùng VDK là PIC16F88, dùng ADC 10bit của nó nên khi đọc nhiết độ ta phải dung công thức quy đổi từ độ K sang độ C.
                  Chú ý một điều là 0 độC = 273 độ K, khi đó con LM335 sẽ đưa ra điện áp là 2.73V. Do đó khi đọc nhiệt độ ta phải trừ giá trị này đi. Sau đây là một vài công thức:
                  - Với ADC 8-bit: C= ( reading-139.2 )/0.512 (sai số 1 - 2)
                  - Với ADC 10-bit: C= ( reading-558.6)/ 2.048 (sai số 0.5)
                  - Với ADC 12-bit: C= ( reading-2235.9)/ 8.19 (sai số 0.1)
                  Một chút kinh nghiệm muốn chia sẻ với mọi người, ai có ý kiến khác hay hơn thì pót lên cho mọi người tham khảo
                  Ethernet-RS232, PIC Webserver, RFID Reader
                  CallerID, Cảnh báo BTS, ...
                  0988006696
                  linhnc308@gmail.com
                  http://linhnc308.blogspot.com

                  Comment


                  • #10
                    Bác ChiBang làm chuẩn 1-Wire interface đến đâu rồi.

                    Em cũng mới làm xong con này. Nhưng là con DS1821. Cũng như bác hôm em ra Đội Cấn thì họ hết hàng DS18B20, đành cắn răng mua con DS1821 ( 60K ). Nhưng tiền nào của ấy con DS1821 có những tính năng xịn hơn con DS18B20.

                    + Tự động đo nhiệt độ. ( tức không phải có lệnh Convert như trong DS18B20 )
                    + Giá trị nhiềt độ lưu vào trong một thanh gi ( tức là 7 bit dữ liệu và 1 bit phân biệt âm dương )
                    + Nhưng ko thể mắc nối tiếp nhiều DS1821 trên một dây đựoc ( nghĩa là chỉ có thể mắc một con trên một dây mà thôi )

                    Nói chung em thấy con này lập trình nhàn hơn

                    Em cấp code bên www.picvietnam.com bà con sang đó tham khảo nhé
                    http://www.picvietnam.com/showthread.php?t=152&page=2

                    Bác Chibang làm thành công con DS18S20 chua chỉ giáo anh em nhé, em vẫn chưa hiểu cách xác đinh địa chỉ Rom cua DS18S20. Bác có thể nói thêm zấn đề này được ko
                    Dia chi cho cac Fan muon hoc Pic

                    Comment


                    • #11
                      tiện đây đưa luôn cái code về mạch Báo nhiệt độ dùng LM335.
                      void main() {
                      float value;
                      int16 i;
                      trisb = 0x00;
                      trisc = 0x00;
                      trisd = 0x00;
                      // trisa = 0xff;
                      portC = 0xff;
                      portD = 0xff;
                      setup_adc_ports(AN0);
                      setup_adc(ADC_CLOCK_INTERNAL);
                      delay_us(10);
                      value=(float)read_adc();
                      value = (value - 558.5)/2.048;
                      convert_bcd((int8)value);
                      while(1)
                      {
                      i++;
                      value = (float)read_adc();
                      value = (value - 558.5)/2.048;
                      // printf("\r\n Nhiet do phong = %u",value);
                      //convert_bcd(value);
                      if (i=65000) { convert_bcd((int8)value);i=0;}
                      display();
                      }
                      }

                      Đây chỉ là đoạn chương trình chính. Hiển thị được thực hiện tren LED7.
                      Ethernet-RS232, PIC Webserver, RFID Reader
                      CallerID, Cảnh báo BTS, ...
                      0988006696
                      linhnc308@gmail.com
                      http://linhnc308.blogspot.com

                      Comment


                      • #12
                        Trong chương trình tui dùng biễn kiểu 32bit để đảm bảo độc chính xác cho giá trị nhiệt độ đo được. Cũng có thể dùng dạng 8bit nhưng như vậy sai số sẽ lơn hơn.(khoảng 2 độ và nhược điểm là chỉ hiển thị số chẵn.)
                        Ethernet-RS232, PIC Webserver, RFID Reader
                        CallerID, Cảnh báo BTS, ...
                        0988006696
                        linhnc308@gmail.com
                        http://linhnc308.blogspot.com

                        Comment


                        • #13
                          Một điều mà trong khi lập trình em có thắc mắc không biết nên giải quyết thế nào?
                          Giả sử ta đọc nhiệt độ và hiển thị ra LED 7 đoạn.
                          Giả sử ta quét với tần số 50hz và giá trị trong biến _Nhietdo_ được hiển thị ra?
                          Nhưng trong chương trình con để đọc nhiệt độ khi đó LED hiển thị nó bị "rung" tại vì lúc đọc thì ta không quét được!

                          Hay là ta dùng ngắt timer để trong hàm xử lý ngắt ta vẫn quét LED 7 seg nhì??
                          Hi vọng bài viết giúp X được cho bạn.

                          Comment


                          • #14
                            Bạn làm như sau đảm bảo led ko nháy được:
                            Trong hàm main thì lấy mẫu ADC, xong xuối thì đẩy vào bộ đệm hiển thị.
                            Hàm ngắt timer chỉ việc lấy từ bọ đệm ấy và hiển thị ra màn hình.
                            -------------------

                            Comment


                            • #15
                              con LM335 tớ dùng toàn bị nhảy lung tung thôi, chắc con đấy bị hỏng, với lại tớ nhớ hình như mua con này cũng đắt ra phết. Theo tớ, cứ dùng nhiệt điện trở hoặc can nhiệt điện là hay nhất.
                              Vì con LM335 này giới hạn trên đâu cũng chỉ có 105 độ thì phải
                              Chúc vui
                              AFH

                              Comment

                              Về tác giả

                              Collapse

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

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

                              Collapse

                              Đang tải...
                              X