» Aliexpress » Linh kiện điện tử »Board với chip INA219 để đo I và U với bus truyền thông I2C

Board với chip INA219 để đo I và U với bus truyền thông I2C

Tôi đã mua một bảng mạch với chip INA219 để đo I và U với một bus truyền thông I2C trên AliExpress. Đầu nối và chân BLS được cung cấp cùng với bo mạch, có thể được cài đặt hoặc không được cài đặt trên bảng.
Board với chip INA219 để đo I và U với bus truyền thông I2C



Các thông số chính của bảng được chỉ định trên bảng.

Yếu tố chính trên bo mạch là chip INA219. Chip INA219, mặc dù có kích thước nhỏ và số lượng chân nhỏ, nhưng có khả năng tuyệt vời. Microcircuit đo điện áp tại shunt (tại các cực Vin + và Vin_) - một điện trở có điện trở thấp và tại chân Vin tương ứng với chân GND. Các kết quả tính toán được ghi vào các thanh ghi, sau đó chúng được truyền đến vi điều khiển thông qua bus truyền thông I2C. Một shunt có điện trở 0,1 ohms được cài đặt trên bảng. Điện áp trong chip đo bộ chuyển đổi tương tự sang số của ADC. ADC có thể hoạt động ở các chế độ 9, 10, 11, 12 tibit. Chế độ hoạt động của chip được cấu hình bằng cách thay đổi thanh ghi cấu hình. Nhà sản xuất có một chương trình miễn phí, INA219 EVM, để định cấu hình chip INA219. Tệp chương trình - sboc271.zip
sboc271.zip [3.55 Mb] (tải xuống: 367)

Tập tin biểu dữ liệu trên chip INA291 -
ina219.pdf [1.14 Mb] (tải xuống: 361)
Xem tập tin trực tuyến:


Microcircuit có khả năng điều chỉnh độ chính xác của phép đo, nói cách khác, có thể hiệu chỉnh kết quả đo.

Để xác minh hoạt động của bo mạch trên chip INA219, mạch sau đây đã được lắp ráp.

Nguồn điện trên bo mạch với chip INA219 phải được cung cấp từ bo mạch Arduino hoặc nguồn năng lượng khác.
Để làm việc với bo mạch trên chip INA219 trong hệ thống lập trình Arduino IDE, chúng tôi cần một thư viện. Tìm kiếm trên Internet mang lại một kết quả tích cực. Tôi tìm thấy một số thư viện, nhưng nó làm việc cho tôi chỉ với hai.
Thư viện đầu tiên từ Adaf nhung đã được tìm thấy - Adaf nhung_INA219-master.zip
adafbean_ina219-master.zip [11,97 Kb] (tải xuống: 177)

Nó đang hoạt động, nhưng tôi không thể kết nối với bo mạch với chip INA219 khi tôi thay đổi địa chỉ bus I2C. Theo mặc định, một bo mạch có chip INA219 có địa chỉ bus I2C 0x40. Nó cũng không cho phép bạn định cấu hình chế độ hoạt động của chip INA219.
Thư viện thứ hai không có sai sót của thứ nhất. Thư viện làm việc thứ hai là Arduino-INA219-master.zip
arduino-ina219-master.zip [17,52 Kb] (lượt tải xuống: 451)

Các thư viện được cài đặt trong hệ thống lập trình Arduino IDE như thế nào? Bạn có thể nhận được câu trả lời cho câu hỏi này từ các bài viết của tôi hoặc từ thông tin được đăng trên Internet.
Tôi muốn sử dụng bảng với chip INA219 cho các thí nghiệm. Sẽ thuận tiện hơn cho tôi khi làm việc với nó nếu tôi hàn đầu nối và chân của BLS lên bảng.


Tôi lắp ráp mạch, kết nối các chân Dữ liệu (SDA) và Clok (SCL) với bảng Arduino UNO. Kết nối đầu ra Dữ liệu (SDA) với đầu nối A4, kết nối đầu ra Clok (SCL) với đầu nối A5 của bo mạch Arduino UNO. Sau đó mở chương trình Arduino IDE. Tôi đã cài đặt thư viện. Chúng tôi mở một ví dụ về thư viện đầu tiên.

Tôi đã thay đổi dòng 9 trong mã thay vì 115200, đặt 9600. Nếu không, các nét vẽ nguệch ngoạc sẽ xuất hiện trong màn hình cổng nối tiếp thay vì số và chữ. Tôi cũng đã cấu hình cổng com của máy tính với tốc độ 9600. Điều này đã được tôi thử nghiệm trong thực tế.


Chúng tôi biên dịch ví dụ getc hiện. Chúng tôi tải dữ liệu vào bộ điều khiển của bo mạch Arduino UNO. Mở màn hình cổng nối tiếp trong chương trình Arduino UNO và xem kết quả đo thu được từ chip INA219.

Kết quả đo của chip INA219 là chính xác.
Tiếp theo, tôi quyết định thay đổi địa chỉ của xe buýt I2C. Và trước đó, tôi đã xác định địa chỉ xe buýt I2C của bảng INA219 với sự trợ giúp của một bản phác thảo, như tôi đã làm trong bài viếtTrạm thời tiết tại nhà trên GY-BMP280-3.3 và Ds18b20»

Để thay đổi địa chỉ bus I2C của bo mạch từ chip INA219, tôi đã hàn nối jumper và xác định địa chỉ bus I2C mới.


Sau đó, tôi đã tải xuống ví dụ từ thư viện thứ hai.

Để mã được biên dịch (được chuyển đổi thành dạng phù hợp để ghi vào vi điều khiển của bo mạch Arduino UNO) để có thể làm việc với bảng trên chip INA219 với địa chỉ 0x44, bạn cần thay đổi dòng ina.begin () trong ví dụ; đến chuỗi ina.begin (68);

Tại sao 68? Và bởi vì 68 = 0 x 44, 68 là một số trong hệ thống số thập phân, 0 x 44 là một số trong hệ thống số bát phân.
Để dịch số, bạn có thể sử dụng máy tính tiêu chuẩn.

Sau khi thay đổi dòng biên dịch của ví dụ, flash mã trong Arduino UNO trong trình giám sát cổng nối tiếp, tôi thấy như sau.

Chúc may mắn cho tất cả mọi người trong nỗ lực và hành động của bạn!

Chi phí: ~ 80

Thêm một bình luận

    • cườinhững nụ cườixaxađược rồikhông biếtyahookhông
      ông chủvết xướcđồ ngốcvângvâng-vânghung hăngbí mật
      xin lỗinhảynhảy2nhảy3ân xágiúp đỡđồ uống
      dừng lạibạn bètốttốt lànhcòingấtlưỡi
      hút thuốcvỗ taycraytuyên bốgiễu cợtdon-t_mentiontải về
      nhiệttôi rấtcười1mdacuộc họpmoskingtiêu cực
      không phảibỏng ngôtrừng phạtđọcsợsợ hãitìm kiếm
      chế nhạocảm ơncái nàyto_cluecựu sinh viêncấp tínhđồng ý
      xấubeeeđen_eyeblum3đỏ mặttự hàobuồn chán
      bị kiểm duyệtdễ chịubí mật2đe dọachiến thắngyusun_bespectacled
      shokrespekthahacó trướcchào mừngkrutoyya_za
      ya_dobryingười trợ giúpne_huliganne_othodifludcấmđóng
3 bình luận
68 = 0 x 44, 68 là số trong hệ thập phân, 0 x 44 là số trong hệ bát phân.
0x44 là một số trong hệ thập lục phân, không phải trong số bát phân. ((
Khách mời
Sơ đồ nối dây hiển thị trong hình là không chính xác! Tác giả, bạn đã bao giờ kiểm tra những gì bạn cung cấp? Có vẻ như bằng chứng được lấy từ máy ủi.
Điều gì sẽ xảy ra trong một sơ đồ như vậy với đọc cảm biến mà không tải? Và làm thế nào cảm biến có thể xác định điện áp trên pin (BusVol thế) bằng cách sử dụng mạch này? Và trên tải?
Pavel khách
Tại sao không viết ina.begin (0x44)?

Chúng tôi khuyên bạn nên đọc:

Đưa nó cho điện thoại thông minh ...