» Điện tử » Arduino »Đồng hồ với nhiệt kế trên Attiny

Đồng hồ nhiệt kế Attiny

Đồng hồ nhiệt kế Attiny



Xin chào tất cả mọi người và chúc một ngày tốt lành. Lần này tôi sẽ chia sẻ hướng dẫn làm đồng hồ phòng bằng nhiệt kế. Trung tâm điện toán của đồng hồ sẽ là Attiny85, được lắp ráp trên một bảng từ Digispark. Để hiển thị đồng hồ - Hiển thị Oled. Nhiệt kế - DS18b20 nổi tiếng. Đối với năng lượng, chúng tôi lấy li-ion 18650 (chúng có thể được lấy từ pin cũ từ máy tính xách tay). Và thêm một màn hình hiển thị mức pin. Như trong tất cả các đồng hồ trước đây của tôi, chúng tôi sẽ làm mà không có mô-đun RTC (đồng hồ thời gian thực).

Chúng tôi thu thập tất cả những gì cần thiết:

- Digispark Attiny85 (phiên bản micro USB)
- DS18b20 (trong hộp nhựa)
- Màn hình Oled với độ phân giải 128x64, I2C
- 2 pin 18650 hoặc pin máy tính xách tay Li-ion cũ
- Điện trở (3,3 kΩ, 4,7 kΩ, 10 kΩ)
- Nhựa mỏng (cho nhà ở)
- Kết nối dây có màu khác nhau
- Lập trình viên ISP (hoặc bất kỳ Arduino phí)
- Nút
- Kết nối Dupont 2,54 mm "mẹ", "cha"
- Dao văn phòng phẩm, băng keo hai mặt, băng keo điện, hotmelt
- Tất cả mọi thứ cho hàn (hàn sắt, nhựa thông, hàn)

Bước 1 Trường hợp.
Vỏ đồng hồ trong tương lai sẽ được làm bằng nhựa mỏng. Bạn có thể mua một tấm nhựa như vậy trong một cửa hàng chuyên dụng hoặc đặt hàng trên AliExpress. Hoặc bạn có thể (không chờ đợi và không nhìn) để đến văn phòng văn thư và mua một thư mục giấy nhựa có màu sắc yêu thích của bạn. Kích thước của đồng hồ tương lai: chiều rộng - 40 mm, độ dày - 30 mm, chiều cao - 70 mm. Theo sơ đồ dưới đây, chúng tôi cắt ra một bản quét từ nhựa:


Chúng tôi cắt dọc theo các đường dày, uốn cong nhẹ nhàng dọc theo các đường mỏng. Chúng tôi cắt hình chữ nhật ở giữa bằng một con dao văn thư, đây là một cửa sổ để hiển thị. Kết quả là, chúng tôi có được một bản quét nhựa:


Chúng tôi vượt qua Attiny.

Bước 2 Attiny + Oled.
Như tôi đã nói, trong trái tim của chúng tôi tự làm sẽ là Attiny 85. Tốt nhất là mua con chip này, ngay lập tức được hàn vào bảng cùng với bộ điều chỉnh điện áp và dây nịt. Digispark Attiny85 rất phù hợp. Chọn phiên bản có micro-USB trên bảng. Các sửa đổi khác cho bảng sẽ không phù hợp với kích thước. Nó xảy ra rằng bảng này được bán với các kết nối namon Dupon đã được hàn. Nếu vậy, hàn tất cả các kết nối. Chúng tôi thu thập dây màu. Chúng ta cần 10 cm trong các màu sắc khác nhau. Chúng tôi hàn chúng trong Attiny và viết ra dây nào, kết luận nào tương ứng. Các dây P0 và P2 phải được hàn trong hai dây. Cặp thứ hai là cần thiết để kết nối màn hình Oled. Chúng tôi nhận được như sau:


Tôi đã viết sơ đồ sau đây trên dây:


Màn hình nhỏ (để phù hợp với bộ điều khiển), nhưng nó trông rất đẹp. OLED (đi-ốt phát sáng hữu cơ) là một màn hình đồ họa. Không có đèn nền và thay vào đó, mỗi pixel là một đèn LED độc lập. Kích thước màn hình - 0,96 inch.Độ phân giải 128x64. Kết nối qua bus I2C. Chỉ sử dụng hai dây để kết nối với Attiny. Chúng có nhiều màu sắc khác nhau, chọn theo sở thích của bạn. Tôi thích màu xanh với một sọc màu vàng ở đầu. Chúng tôi hành động tương tự như Digispark. Nếu có kết nối hàn - hàn chúng. Hàn, bây giờ, chỉ có dây điện:


Cẩn thận khi hàn, không làm hỏng cáp bằng bàn hàn trên màn hình:


Chúng tôi kết nối các bảng bằng băng keo hai mặt:


Chúng tôi hàn màn hình Digispark Attiny và Oled cùng nhau theo sơ đồ (màu sắc của dây có thể thay đổi, điều chính là không gây rối với kết luận):


Để thuận tiện và đặt hàng, chúng tôi thu thập tất cả các dây với nhau. Bạn có thể xoắn chúng bằng băng keo điện để không bị nhầm lẫn:


Ở cuối tất cả các dây, chúng tôi gắn đầu nối nữ Dupont, gắn nó vào các chất cách điện và quấn tất cả lại với nhau bằng băng keo điện để làm đầu nối. Chúng tôi cũng ghi lại sơ đồ chân của đầu nối:


Sơ đồ chân phải như thế này, vì trong tương lai chúng tôi sẽ kết nối một dây cho phần sụn hoặc các thành phần đồng hồ khác với đầu nối.
Chúng tôi dán cấu trúc kết quả vào vỏ máy và không quên dán keo vỏ máy, để lại một tiếng rên không được dán, để thao tác thêm:


Khi dán, chú ý rằng màn hình chẵn:


Bước 3 Nguồn.
Đối với năng lượng, chúng tôi sẽ sử dụng hai yếu tố Li-ion. Nhập 18650. Bạn có thể mua riêng chúng. Trong trường hợp này, hàn chúng song song, cách ly và xuất đầu nối để kết nối và sạc tiếp theo:


Nhiều người có máy tính xách tay cũ. Cho dù họ không còn làm việc hoặc làm việc theo thời gian. Ngay cả khi pin laptop laptop đã bị hỏng và không phù hợp với mục đích sử dụng, nó có thể được sử dụng cho tất cả các loại sản phẩm tự chế. Trong trường hợp của chúng tôi, cho một chiếc đồng hồ. Chúng tôi lấy pin từ máy tính xách tay:


Điều chính là anh ấy là Li-ion. Chúng tôi cẩn thận tháo rời nó, bạn cần mở vỏ nhựa, để không làm hỏng phần tử bên trong. Thông thường, pin được chia thành hai yếu tố kết nối song song. Chúng tôi đưa họ ra và tách một cặp khỏi phần còn lại:


Tốt nhất là hàn vào các miếng tiếp xúc:


Dán cặp này vào mặt sau của đồng hồ:


Bước 4 Xác định mức sạc pin.
Một chức năng tiện lợi của đồng hồ là chỉ báo sạc pin. Chúng tôi sẽ xác định mức độ sạc bằng điện áp. Điện áp tối thiểu cho các pin này là 2,4 V. Nó không thể được xả thêm. Điện áp tối đa là 4.2 V.

Việc đo điện áp tại cổng analog luôn liên quan đến một số điện áp khác. Chúng ta không thể sử dụng chân ISF của vi điều khiển, phục vụ để đặt điện áp tham chiếu. Cũng không thể đo điện áp liên quan đến điện áp cung cấp (tỷ lệ sẽ luôn giống nhau). Do đó, chúng tôi sẽ xác định điện áp liên quan đến điện áp tham chiếu bên trong hoặc Vbg (điện áp tham chiếu Bandgap). Đó là 1.1 V. Bây giờ chúng ta cần tính toán bộ chia điện áp cho pin của chúng tôi, để ở mức sạc tối đa (4.2 V), bộ chia có (1.1 V). Bạn có thể tính theo công thức:



Hoặc sử dụng

R1 lấy mệnh giá 10 kOhm. Sau đó R2 chúng ta nhận được 3,55 KOhm, một giá trị phù hợp gần nhất từ ​​các giá trị tiêu chuẩn là 3,3 KOhm và lấy nó. Các phép đo được thực hiện giữa điện áp bên trong và GND, do đó điện trở 3,3 KΩ được hàn vào âm và 10 KΩ cho phép cộng. Chúng tôi đặt các điện trở trên pin, chúng tôi rút dây từ dải phân cách.


Chúng tôi cách ly tất cả các địa chỉ liên lạc để tránh ngắn mạch:


Dây từ dải phân cách sẽ được kết nối với PB4.

Bước 5 Đo nhiệt độ.
Một bổ sung tuyệt vời cho đồng hồ là đo nhiệt độ phòng. Chúng tôi sẽ sử dụng cảm biến nhiệt độ tích hợp DS18B20. Để làm việc với nó, chỉ cần một dây (rất hữu ích khi sử dụng Attiny 85). Tất cả các phép đo đều do chính anh ta thực hiện, bộ điều khiển trung tâm không làm phiền (Attiny 85 cũng có bộ nhớ tuyệt vời và rất ít), chúng tôi chỉ cần đưa ra lệnh và nhận kết quả. Có một số phương án khác nhau để kết nối cảm biến này, theo ý kiến ​​của tôi, chúng tôi sẽ sử dụng tùy chọn tối ưu cho trường hợp này.Sử dụng nguồn ngoài và điện trở 4,7 kΩ:


Hàn dây nhỏ, và buộc chặt các đầu nối


Dây từ cảm biến DQ được kết nối với PB 3.

Bước 6 Nút.
Chúng tôi có ít kết luận, nhưng có nhiều yêu cầu đối với đồng hồ. Chúng tôi sẽ sử dụng một nút để đặt thời gian. Chúng tôi có thể tin vào nhiều hơn. Hàn dây vào nút, một tiếp điểm từ nó đến GND. Kết hợp với cảm biến nhiệt độ của chúng tôi:


Liên hệ thứ hai từ nút được kết nối với PB 1.

Bước 7 Chuẩn bị môi trường phát triển
Để tiếp tục làm việc với bản phác thảo, cũng như chỉnh sửa và điền vào, chúng ta cần Arduino IDE. Tải xuống chương trình này từ:

Bây giờ thêm hỗ trợ cho Attiny 85 vào thứ Tư. Mở IDE Arduion và đi dọc theo con đường:
Tệp - Cài đặt - "URL Trình quản lý bảng bổ sung" chèn liên kết:

https://raw.githubusercontent.com/damellis/attiny/ide-1.6.x-boards-manager/package_damellis_attiny_index.json


Nhấn OK.
Đi tới:
Công cụ - Hội đồng quản trị - Ban quản lý nhập Attiny và nhấp vào Attiny của David A. Mellis. Nhấp vào "Cài đặt" và để lại cà phê.
Và bây giờ về các thư viện. Họ cần hai:

Để làm việc với màn hình Oled

Điều khiển cảm biến nhiệt độ

Sau khi tải xuống các tài liệu lưu trữ này, hãy giải nén chúng vào thư mục của các thư viện trên máy tính, có thể dễ dàng tìm thấy bằng cách đi dọc theo đường dẫn cài đặt của Arduino IDE.

Bước 8 Lập trình viên.
Digispark Attiny 85 là một bảng tuyệt vời. Được thiết kế để kết nối với máy tính USB. Và nó có thể được lập trình thông qua nó. Nhưng Attiny sử dụng USB phần mềm, lần lượt chiếm 2 KB bộ nhớ 8 KB. Điều này không phù hợp với chúng tôi và do đó chúng tôi sẽ flash Attiny 85 thông qua giao diện ISP. Và ở đây chúng ta cần một lập trình viên ISP. Nếu nó không ở đó - nó không thành vấn đề. Lấy Arduino. Trong trường hợp của tôi, Arduino UNO:


Bạn có thể lấy bất kỳ bảng tương thích khác từ dòng Arduino. Chúng tôi kết nối với máy tính, mở Arduino IDE, chọn cổng com mà bo mạch Arduino được kết nối, mở bản phác thảo trong các ví dụ, Arduino ISP và điền nó vào bảng. Chúng ta cũng cần một sợi dây để nhanh chóng kết nối với Attiny.


Kết nối như sau:

D11 - P0
D12 - P1
D13 - P2
D10 - P5

Đừng quên về dinh dưỡng Attiny.

Bước 9 Chỉnh sửa và điền vào bản phác thảo.

Tải về bản phác thảo

Trước khi điền, bạn cần chỉnh sửa bản phác thảo.
Cảm biến tích hợp DS18b20, như đã đề cập trước đó, hoạt động bằng giao thức One Wire. Mỗi cảm biến có địa chỉ 64 bit riêng. Bạn cần tìm địa chỉ của cảm biến và viết nó trong một bản phác thảo. Mở Arduino IDE, theo đường dẫn:
Tệp - Ví dụ - Nhiệt độ Dallas - OneWireSearch.

Điền vào bản phác thảo vào Arduino. Mở màn hình cổng. Bạn sẽ thấy địa chỉ của tất cả các cảm biến được kết nối và chỉ số nhiệt độ của chúng. Chúng tôi viết địa chỉ của bạn. Mở bản phác thảo của tôi và thay đổi địa chỉ thành của riêng bạn trong dòng:

byte addr [8] = {0x28, 0xFF, 0x75, 0x4E, 0x87, 0x16, 0x5, 0x63};


Để điều chỉnh tiến độ của đồng hồ, sử dụng hằng số sau:

if (micros () - thuận trước & gt; [b] 497000 [/ b]) 


Giá trị này càng lớn, đồng hồ càng chậm.
Để kiểm soát, giây được hiển thị trên màn hình:

OzOled.printNumber ((dài) sek, 0, 7); // giây đầu ra để điều chỉnh chính xác 


Nhận xét dòng này để loại bỏ giây.
Bây giờ chúng tôi kết nối lập trình viên hoặc Arduino với tư cách là một lập trình viên, chọn cổng com, chọn bảng của chúng tôi trong menu Công cụ và đặt các tham số sau:
Hội đồng quản trị: Tham dự 25/45/85
Bộ xử lý: Attiny 85
Đồng hồ: nội bộ 16
Sau đó chọn trong cùng một menu:
Công cụ - Lập trình viên - "Arduino là ISP".
Và cuối cùng:
Phác thảo - Tải xuống qua lập trình viên

Bước 10 Lắp ráp cuối cùng và khởi chạy.
Tắt chương trình và kết nối cảm biến, nguồn và nút:


Cho đến khi khóa học chính xác của đồng hồ được cấu hình, bạn có thể đóng vỏ bằng cao su ngân hàng. Khi thực hiện, bạn có thể dán nó.


Xem đánh giá
Tổng số phiếu: 13
10
10
10

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
9 ý kiến
Tác giả
Ý tưởng thật tuyệt vời. Tôi đã làm một cái gì đó về điều đó. Chỉ trong tầm tay của tôi là một biến 5 kΩ. Tôi bao gồm nó ở vai dưới. Và sau đó được thay thế bằng vĩnh viễn phù hợp nhất. Nhưng trong hướng dẫn sản xuất, tôi nghĩ, viết nó là không cần thiết. Tại sao không làm những phép đo này nhiều lần.
Tôi không thấy cần phải viết về những thử thách tẻ nhạt và dài.
Không cần phải làm bất cứ điều gì dài và tẻ nhạt. Bật điện trở (2.7 ... 3) kOhm ở nhánh dưới, tuần tự với nó là tông đơ 1 kOhm. Từ nguồn điện có thể điều chỉnh, bạn nhập các giá trị cực của điện áp được điều khiển vào đầu vào, điều chỉnh điểm vận hành, sau đó, nếu muốn, bạn có thể đo điện trở của tông đơ và thay thế bằng điện trở không đổi.
Tác giả
Ở tần số 8 MHz, tôi đã không thử khởi động đồng hồ và theo đó đo độ chính xác của khóa học. Tất cả các phép đo được thực hiện ở 16 từ bên trong. Tôi cũng có thể nói về tháng. Cho đến nay, không tắt, họ làm việc tối đa một tuần. Các thí nghiệm và cải tiến vẫn đang trong quá trình.
Tác giả
Về bộ chia điện áp, thực sự có rất nhiều sắc thái và lỗi. Và sự phân tán điện trở của điện trở và sự tán xạ của điện áp tham chiếu. Tôi đã thử mọi thứ trong thực tế. Khi sử dụng điện trở 3,6 kΩ, ngay cả với điện áp pin 3,9 V, cổng analog Attiny hiển thị 1023 (khi được chuyển đổi thành 100% phần trăm). Khi sử dụng điện trở 3,3 k, giá trị cổng analog giảm ngay cả ở mức 4,1 V trên pin. Do đó, tôi đã viết rằng lời khai được lấy chính xác hơn, tôi chỉ không thấy cần phải viết về những thử thách dài và nhàm chán.
Tác giả
Tôi đặt đồng hồ trong một tuần, điều chỉnh tiến độ của nó mỗi ngày hoặc thường xuyên hơn. Kết quả là, với giá trị 497343, họ vội vàng trong khoảng 10 giây mỗi tuần.
Tần số có thể giảm. Tôi không thay đổi tham số, không cần
Chà, và độ chính xác của đồng hồ RC 8 MHz là gì? Mỗi tháng?
và tại sao Đồng hồ: nội bộ 16?
Tốt hơn là chọn ít hơn, sau đó các bài đọc chính xác hơn.
Không chính xác hơn, nhưng đơn giản là điện áp đầu vào phải nhỏ hơn tham chiếu. Ngoài ra, trong lý do của bạn, bạn hoàn toàn không tính đến sự lan truyền của các tham số: điện trở, rất có thể, bạn sẽ có năm phần trăm, Vbg = (1.0 ... 1.2) V. Vì vậy, 3,3 kOhm có thể quá lớn, và có thể 3,6 kOhms sẽ làm.
Tác giả
Nếu bạn sử dụng điện áp đầu ra 3.6, chúng tôi nhận được 1.11. Mặc dù không nhiều, nhưng điện áp tham khảo nhiều hơn. Khi sử dụng 3,3 - 1,04. Tốt hơn là chọn ít hơn, sau đó các bài đọc chính xác hơn.
Và đối với Oh, bạn nói đúng, tôi chỉ không chú ý đến chi tiết nhỏ này.
Sau khi dán vỏ, truy cập vào ổ cắm sạc và các nút có thể được lấy từ đáy đồng hồ bằng cách cắt nắp dưới hoặc đơn giản là không dán nó.
Sau đó R2 chúng ta nhận được 3,55 KOhm, gần nhất từ ​​các giá trị tiêu chuẩn 3,3 KOhm,
Không hề. E24 gần nhất trong phạm vi tiêu chuẩn là 3,6 kOhm. Và nhân tiện, không phải "KOhm, mà là" KOhm.
Cho đến khi khóa học chính xác của đồng hồ được cấu hình, bạn có thể đóng vỏ bằng cao su ngân hàng. Khi thực hiện, bạn có thể dán nó.
Làm thế nào chúng ta sẽ sạc pin?
Và làm thế nào để thao tác với nút?

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

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