» Chủ đề » Mẹo »Đồng hồ kẹp hiện tại trong một phạm vi rộng, điện áp và nhiệt độ

Đồng hồ đo dòng điện, điện áp và nhiệt độ rộng

Bổ nhiệm:
Để đo và sửa chữa kịp thời trên bộ nhớ flash của các quá trình dài được biểu thị bằng dòng điện và điện áp, chẳng hạn như sạc - xả pin và pin. Có thể đồng thời cố định nhiệt độ.

Thông số tín hiệu đầu vào:
I hiện tại = 25mka - 2a
điện áp U = 0 - 5V
nhiệt độ t = -30 - + 120gС
thời gian được thiết lập bởi đồng hồ thạch anh tích hợp bên trong

Dinh dưỡng:
từ nguồn 12 v / 0,3a
Tôi tiêu thụ <70ma

Xây dựng:
Đồng hồ được lắp ráp trên hai mô-đun Arduino Nano kết nối qua giao thức ModBus, xem sơ đồ. Một Arduino được gắn trên riser với các khối đầu cuối. Các mô-đun được kết nối thông qua các kết nối. Các dây và các mô-đun chính được cách điện từ các lỗi nhiệt-cambric.

Tín hiệu đầu vào được đưa qua các đầu vít

Trên bảng điều khiển phía trước có một chỉ báo tinh thể lỏng của các thông số đo và đèn LED cho biết việc chuyển đổi một phạm vi hoặc ngoài phạm vi.

Đồng hồ được lắp ráp trong một vỏ 145x85x40.
Cảm biến nhiệt độ được thực hiện thông qua đầu nối. Truyền tín hiệu được tổ chức trên một đường dây hai dây. Điện trở thức ăn trong đầu nối.

Để dễ lập trình, các đầu nối Arduino USB là bên ngoài.






Đề án

Đề án có thể được tải xuống từ tập tin Đồng hồ

Hai Arduino đã được chọn vì hai lý do: Arduino Nano có sẵn và không đủ trên một bộ nhớ và nó được lên kế hoạch để thêm các cảm biến hơn nữa. Ngoài ra, tôi muốn làm chủ hiệp hội Arduino, vì điều này giao thức mạng ModBus đã được chọn. ModBus định nghĩa một bộ xử lý chính - Master và một số nô lệ - Slave. Trong tác phẩm này, có một Slave, trên đó là phép đo nhiệt độ, điện áp và dòng điện. Trên Master - đồng hồ và mục nhập tệp. Bộ nhớ xác thịt phải nhỏ hơn 4GB và được định dạng theo định dạng FAT.

Vì được lên kế hoạch để đo dòng điện từ μA đến A, dòng điện được đo theo 4 phạm vi (xem bảng Phạm vi), Arduino Slave theo dõi quá trình chuyển đổi từ phạm vi này sang phạm vi khác, tạo thành mã shunt tương ứng cho dòng điện đo được từ M1-2. Khi tiếp cận đường viền của phạm vi, phạm vi tiếp theo sẽ được bật, nghĩa là, khóa hiện tại từ T1-1 --- T2-2 bị tắt và khóa tiếp theo được bật. Trong trường hợp này, shunt tối đa = 100ohm liên tục được bật. Nếu có vượt quá giá trị trong phạm vi, đèn LED D8, D9 sẽ được chiếu sáng.

Chia số đo hiện tại thành các phạm vi
Uout_max = 5v KusOU = 20 = Ish / 1024

Độ lợi của bộ khuếch đại hoạt động M1-2 được đặt = 20 và sau đó không thay đổi. (Trên bảng điều khiển phía trước, nó được gắn sai).
Điện áp được đo thông qua một người theo dõi trên OU M1-1.Các mạch đầu vào của op-amp và Arduino được bảo vệ bởi các điốt (điốt zener có trong Arduino, nhưng tôi không biết các thông số, vì vậy tốt hơn là nên lạm dụng nó).

LCD1602 được chọn làm chỉ số. Nó được kết nối với Arduino Master. Hơn nữa, chỉ báo có thể được kết nối với cả Arduino chỉ bằng cách chuyển đổi các đầu nối Arduino. (Khi tắt nguồn.) Kết nối với Arduino Slave được hiển thị với một đường đứt nét (được sử dụng khi viết chương trình). Với kết nối chính (với Master) trên LCD1602, 4 màn hình có thể được hiển thị bằng cách chuyển đổi thanh trượt của công tắc trượt p1-p2.

Screen1: từ phía trên thông tin dịch vụ trao đổi giữa Arduino: C là số lần trao đổi giữa Arduino, E là số lỗi trong quá trình trao đổi Sh- số của shunt;
ngày cuối cùng - thời gian tháng.


Màn hình2: U1, I1, Số shunt, (dự trữ bên phải 0,00)


Màn hình3: U2, nhiệt độ, (ui- chờ)


Màn hình4: Đã bật ghi SD, thời gian ghi theo giờ, số dòng trong tệp,
00- trạng thái của phạm vi hiện tại1 0 bình thường 1 ngoài phạm vi, trạng thái của dải điện áp1, công suất cố định của nguồn bên ngoài


Khi kết nối với Slave - 2 màn hình. Switch p3 cho phép ghi vào bộ nhớ Micro F Meat.
Nguồn cung cấp được chọn 12 v để có được các đặc tính tuyến tính của op-amp (để tránh tắc nghẽn ở các cạnh của phạm vi). Vì lý do tương tự, điện áp âm từ máy ép ở KR1006VI1 đã được sử dụng. Sử dụng một máy phát Arduino tạo ra một điện áp kém ổn định hơn. Để tạo ra nguồn 5v, một bộ chuyển đổi bước xuống đã được sử dụng, nhưng bạn có thể làm mà không cần nó bằng cách cung cấp + 12V cho các đầu vào VIN Arduino Nano.
Lập trình chung Arduino có các tính năng, vì giao tiếp với máy tính đang bận rộn với giao thức ModBus. Để tải một bản phác thảo vào một trong các Arduino, mặt khác, bạn cần bật tín hiệu đặt lại RST. Để thực hiện việc này, hãy sử dụng các nút nhảy Block S, Block M. Hoặc nhấn và giữ các nút đặt lại trên các mô-đun Arduino cho đến khi quá trình tải xuống kết thúc, việc này không thuận tiện và có thể làm hỏng quá trình tải xuống. Vì tôi dự định mở rộng thiết bị Arduino USB của mình, tôi đã rút vỏ máy ra.

Transitor T5 (FR024N) được cho là được sử dụng để bật / tắt một quá trình, ví dụ, xả pin của pin. Trong khi nó không liên quan.

Phần mềm.
Điều tối đa là nhai rằng những người mới bắt đầu (và bản thân tôi) sẽ không bị tổn thương và có thể đóng vai trò là tài liệu tham khảo, nhưng không cho là sự lạc quan.

Các thư viện và mã chương trình được đặt trong tệp Izmeritel PRO.rar.
Phác thảo cho ModBus_Master10_SD_T_10_2 chính. Phác thảo cho nô lệ ModBus-Slave10_T_UI_10_2. Phần còn lại của thư viện.
Được lập trình trong môi trường của Arduino1.6.0. Nó chứa các thư viện SD, LiquidCstall, Dây không cần tải xuống.

Thời gian tính bằng giờ được đặt trong Cài đặt như sau. Đặt thời gian thực và tải bản phác thảo. Sau đó nhận xét các dòng để thiết lập ngày và thời gian và tải lại bản phác thảo.

Kết quả của chương trình sẽ là chỉ báo thời gian và ngày (giờ), dòng điện, điện áp, nhiệt độ trên LCD1602 và ghi lại các tham số này trong tệp IZmer1.TXT trong bộ nhớ Micro F Meat. Các tập tin sẽ chứa một bảng loại này:

0; 13/12/2019; 00:11:10; Zap (h) = 0,05; tc = 29,31; U1 = 1,71; I1 = 0,00; P1 = 0,00; U2 = 0,14; Định mức DiaI; Định mức DiaU; C = 762
1; 13/12/2019; 00:11:16; Zap (h) = 0,05; tc = 29,38; U1 = 1,79; I1 = 0,00; P1 = 0,00; U2 = 0,19; Định mức DiaI; Định mức DiaU; C = 788
2; 13/12/2019; 00:11:22; Zap (h) = 0,05; tc = 29,38; U1 = 1,54; I1 = 0,00; P1 = 0,00; U2 = 0,16; Định mức DiaI; Định mức DiaU; C = 813
3; 13/12/2019; 00:11:28; Zap (h) = 0,05; tc = 29,31; U1 = 1,30; I1 = 0,00; P1 = 0,00; U2 = 0,17; Định mức DiaI; Định mức DiaU; C = 839
4; 13/12/2019; 00:11:34; Zap (h) = 0,05; tc = 29,31; U1 = 1,90; I1 = 0,00; P1 = 0,00; U2 = 0,17; Định mức DiaI; Định mức DiaU; C = 864
5; 13/12/2019; 00:11:40; Zap (h) = 0,05; tc = 29,25; U1 = 1,53; I1 = 0,00; P1 = 0,00; U2 = 0,16; Định mức DiaI; Định mức DiaU; C = 890
6; 13/12/2019; 00:11:46; Zap (h) = 0,05; tc = 29,19; U1 = 2,03; I1 = 0,00; P1 = 0,00; U2 = 0,18; Định mức DiaI; Định mức DiaU; C = 915
7; 13/12/2019; 00:11:52; Zap (h) = 0,05; tc = 29,13; U1 = 1,81; I1 = 0,00; P1 = 0,00; U2 = 0,18; Định mức DiaI; Định mức DiaU; C = 941
8; 13/12/2019; 00:11:58; Zap (h) = 0,05; tc = 29,00; U1 = 1,30; I1 = 0,00; P1 = 0,00; U2 = 0,16; Định mức DiaI; Định mức DiaU; C = 966
9; 13/12/2019; 00:12:04; Zap (h) = 0,07; tc = 28,94; U1 = 1,25; I1 = 0,00; P1 = 0,00; U2 = 0,17; Định mức DiaI; Định mức DiaU; C = 992
10; 13/12/2019; 00:12:10; Zap (h) = 0,07; tc = 29,00; U1 = 1,85; I1 = 0,00; P1 = 0,00; U2 = 0,16; Định mức DiaI; Định mức DiaU; C = 1017
11; 13/12/2019; 00:12:16; Zap (h) = 0,07; tc = 29,00; U1 = 1,21; I1 = 0,00; P1 = 0,00; U2 = 0,18; Định mức DiaI; Định mức DiaU; C = 1043
12; 13/12/2019; 00:12:23; Zap (h) = 0,07; tc = 28,94; U1 = 1,55; I1 = 0,00; P1 = 0,00; U2 = 0,18; Định mức DiaI; Định mức DiaU; C = 1068
13; 13/12/2019; 00:12:29; Zap (h) = 0,07; tc = 28,88; U1 = 1,82; I1 = 0,00; P1 = 0,00; U2 = 0,16; Định mức DiaI; Định mức DiaU; C = 1094
14; 13/12/2019; 00:12:35; Zap (h) = 0,07; tc = 28,88; U1 = 1,30; I1 = 0,00; P1 = 0,00; U2 = 0,18; Định mức DiaI; Định mức DiaU; C = 1119

trong đó các cột được đặt n / a; Ngày thời gian thời gian ghi theo giờ; nhiệt độ đo điện áp U1; đo I1 hiện tại; điện áp đo thứ hai U2; thông tin về lối ra / vắng mặt của phạm vi đo; thông tin dịch vụ về số lượng trao đổi giữa Arduino.

Khoảng thời gian ghi đo được chọn trong 6 giây, thật dễ dàng để thay đổi nó bằng cách thay thế giá trị của hằng số #define CYCLE_TIME_F 3000 bằng một công thức Tsec = Constant (ms) * 2/1000 trong Master.
Hơn nữa bảng này có thể được trình bày dưới dạng các biểu đồ đẹp.



Khi viết chương trình tôi đã sử dụng tài liệu. Tôi bày tỏ lòng biết ơn đến tác giả.

Thích hợp cho chủ đề

Chủ đề liên quan

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
2 bình luận
Lạ lùng bao gồm NE555 trong trình điều khiển tiêu cực. ((
Để cho phần uốn khúc đi đến trường, chúng phải được kết nối với đầu ra IP.
Phù hợp Arduino tất nhiên, đối với nhu cầu của riêng bạn, một doanh nghiệp hữu ích, nhưng gần đây có được, giá phát hành chưa đến 1t.r.:
Thông số kỹ thuật UM24C
• hiển thị: 1,44 ", 128х128, màu sắc, góc nhìn gần 180º
• cổng đầu vào: USB Loại A nam, Micro USB Loại B nữ
• cổng đầu ra: USB Loại A nữ
• điện áp: 4.50-24.00V
• cường độ hiện tại: 0-3.000A
• độ phân giải màn hình điện áp: 0,01V
• độ phân giải hiển thị cường độ hiện tại: 0,001A
• độ chính xác đo điện áp: ± (0,2% + 1 chữ số)
• độ chính xác đo hiện tại: ± (0,8% + 3 chữ số)
• Hỗ trợ sạc nhanh Qualcomm: QC 2.0 và QC 3.0
• 10 ô nhớ để lưu trữ điện dung và năng lượng đo được
• Chức năng đo điện trở cáp Micro USB
• lựa chọn thủ công ngưỡng bắt đầu đo: 0,00-0,30A
• hiển thị nhiệt độ, điện trở của tải kết nối, nguồn điện
• hiển thị điện áp và đồ thị hiện tại
• hiển thị điện áp trên các đường dữ liệu của cổng USB, chế độ hoạt động hiện tại
• tự động tắt màn hình: 1-9 phút, tắt
• độ sáng màn hình: 0-5 (6 cấp độ)
• hiển thị nhiệt độ: tính bằng độ C hoặc Fahrenheit
• trợ giúp trực tuyến
• xoay màn hình 90º / 180º / 270º
• kết nối Bluetooth hai chiều không dây với PC (SPP - Cấu hình cổng nối tiếp)
cười

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

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