CÁCH LÀM - Làm đồng hồ amp tương tự - 💡 Fix My Ideas

CÁCH LÀM - Làm đồng hồ amp tương tự

CÁCH LÀM - Làm đồng hồ amp tương tự


Tác Giả: Ethan Holmes, 2019

ANALOG AMP METER CLOCK- Một chiếc đồng hồ thanh lịch đánh dấu giờ bằng kim mét - Tác giả Gene Scogin Minh

Cách đây vài năm, tôi đã có ý tưởng chế tạo một chiếc đồng hồ analog sử dụng đồng hồ đo kim kiểu vôn kế thay vì mặt số tiêu chuẩn. Vài tuần trước tôi cuối cùng đã tạo ra một cái, sử dụng bảng Arduino và 3 mét hiện tại từ một cửa hàng điện tử địa phương. Tôi đã xây dựng nó theo từng giai đoạn, bắt đầu với một mét duy nhất hiển thị chỉ vài giây, sau đó thêm đồng hồ giờ và phút, thêm nút và lập trình để làm cho thời gian ổn định, và cuối cùng xây dựng nó thành một hộp đẹp. Ở đây, tôi đã làm như thế nào.

Cho ăn đồng hồ

Bảng mạch Arduino có 6 đầu ra có thể điều khiển các giá trị tương tự bằng cách sử dụng điều chế độ rộng xung (PWM). Điều này có nghĩa là chúng mô phỏng các điện áp đầu ra nằm ở giữa mức cao và thấp nhị phân (0V và 5V) bằng cách đạp nhanh giữa hai mức này cho các tỷ lệ thời gian khác nhau; ví dụ, đầu ra 2.5V sẽ được mô phỏng bằng cách bật chính xác một nửa thời gian. Tôi thấy rằng tần số xung Arduino Arduino đủ nhanh (490Hz) và đồng hồ đo của tôi đủ chậm để bạn có thể điều khiển chúng trực tiếp từ các đầu ra bảng điều khiển mà không cần kim rung; bạn không cần một tụ điện để làm mịn tín hiệu.

Tôi chỉ có thể tìm thấy ampe kế chứ không phải vôn kế, vì vậy tôi cần đặt một điện trở nối tiếp với đồng hồ để hạn chế dòng điện. Luật Ohm nói rằng để có được 1mA dòng điện với điện áp 5V, bạn cần có điện trở 5.000Ω. Để cho phép các biến thể bình thường trong các thành phần, tôi lắp ráp điện trở này bằng cách đặt một điện trở 4.750Ω nối tiếp với chiết áp 0Ω đến 500Ω. Để đặt phạm vi cho mỗi mét, trước tiên, bạn chọn 0 nó bằng vít điều chỉnh trên chính đồng hồ đó, sau đó điều chỉnh nồi để đặt điểm cao của nó.

NGUYÊN VẬT LIỆU

Bảng vi điều khiển Arduino Tôi đã sử dụng một Arduino Diecimila tôi đã mua tại Maker Faire. Bạn có thể đặt hàng từ store.makezine.com.

Đồng hồ đo dòng điện 1mA (3) Đảm bảo bo mạch của bạn cung cấp đủ dòng điện để điều khiển kim mét mét trên toàn bộ phạm vi của nó; Ban đầu tôi đã thử một máy đo 50mA, nhưng đó không phải là quy mô phù hợp với Arduino.

Điện trở 4,750Ω (3)

500Ω chiết áp (3) aka điện trở biến

Công tắc nút, SPST tạm thời (3)

Bánh mì không hàn

Máy tính có máy in và giấy

Xịt keo dính

Hộp gỗ đẹp

Pin đầu ra của vi điều khiển chạy qua điện trở có thể điều chỉnh và sau đó đến đồng hồ giây.

Làm cho nó đánh dấu

Khi chúng tôi đã kết nối đồng hồ của mình, chúng tôi có thể viết một chương trình C đơn giản để làm cho nó đếm 60 giây trên toàn bộ phạm vi của nó mỗi phút. Hàm Write () tương tự nhận một giá trị trong khoảng từ 0 đến 255 và chỉ mục của chân đầu ra và đặt đầu ra cho chân được chỉ định thành giá trị PWM trong khoảng từ 0V đến 5V.

Để theo dõi giây, chương trình chạy một vòng lặp liên tục gọi millis (), một hàm Arduino tích hợp trả về số mili giây kể từ khi bo mạch được cấp nguồn lần cuối. Giá trị được trả về được so sánh với giá trị millis () từ vòng lặp trước đó và sự khác biệt được thêm vào tổng số giây đang chạy, lần lượt cập nhật màn hình.

Breadboard mang 3 mạch giống hệt nhau chạy song song, trong giờ, phút và giây.

Khi các giây bao quanh, mã đặt lại tổng số đang chạy về 0 và thêm phần còn lại. Mã này cũng xử lý một trường hợp đặc biệt khác, khi giá trị được trả về bởi millis () tự cuộn lại, sau khoảng 9 giờ hoạt động.

Tôi đã sử dụng chân Arduino Arduino 11 để lái máy đo giây mới được lập trình của mình. Sau đó, tôi tiếp tục lập trình và điều khiển đồng hồ đo giờ và phút theo cách tương tự, sử dụng chân 9 và 10. Hệ thống dây điện cho mỗi đồng hồ giống hệt nhau: chân đầu ra của vi điều khiển kết nối với chiết áp nối tiếp với điện trở, sau đó dẫn đến đồng hồ.Tất cả mã cho dự án này, cùng với sơ đồ nối dây, có sẵn tại makezine.com/13/diycircuits_clock.

Ampe kế ban đầu cho thấy một tỷ lệ giữa 0 và 1 milliamp.

Đặt thời gian

Để làm cho đồng hồ của chúng tôi hữu ích, chúng tôi cần một cách để thiết lập thời gian sau khi chúng tôi bật nguồn. Để làm điều này tôi đã sử dụng 3 công tắc. Một chu kỳ đồng hồ thông qua 4 chế độ của nó (bình thường, thiết lập, tất cả thấp và cao - được giải thích sau), một tăng số giờ và một tăng số phút. Để có được đọc chính xác từ các đầu vào kỹ thuật số, chúng ta cần một điện trở kéo lên giữa mỗi chân đầu vào và + 5V. Bộ vi xử lý Arduino, có những bộ vi xử lý được tích hợp thuận tiện, nhưng bạn cần kích hoạt chúng một cách rõ ràng bằng cách khai báo pin là đầu vào với

pinMode (b1pin, INPUT)

và sau đó gọi

kỹ thuật sốWrite (pin, CAO)

Bởi vì chương trình chạy qua vòng lặp chính của nó nhiều lần mỗi giây, chúng tôi giả định rằng một lần nhấn nút sẽ được đọc nhiều lần. Để xử lý điều này, tôi có một biến cho mỗi nút theo dõi trạng thái của nó. Ngoài ra, khi chương trình lần đầu tiên phát hiện trạng thái nút nút đã thay đổi, nó sẽ trì hoãn trong 20 mili giây để chờ bất kỳ tín hiệu nào bật ra khỏi công tắc.

Công tắc chế độ di chuyển đồng hồ giữa 4 chế độ: bình thường, đặt thời gian, thấp tất cả mét và cao tất cả mét. Chế độ bình thường hiển thị thời gian, chế độ cài đặt cho phép bạn thay đổi và chế độ toàn thấp và toàn bộ đặt 3 chân đầu ra thành 0V và 5V, tương ứng, để hiệu chỉnh đồng hồ đo. Mã tiếp tục theo dõi thời gian hiện tại ở tất cả các chế độ, trừ khi nó thiết lập lại. Tôi đang xem xét thêm các chế độ bổ sung vào đồng hồ, như báo thức, đồng hồ bấm giờ và hẹn giờ.

Làm vảy

Thang đo trên đồng hồ khi mua đã đọc từ 0mA đến 1mA, nhưng để đồng hồ có thể đọc được, chúng ta cần thang đo từ 0 đến 24 trong giờ và 0 đến 60 cho phút và giây. Làm điều này cuối cùng đã trở thành một trong những phần khó nhất của dự án.

Tôi bắt đầu bằng cách tháo rời một trong các mét và quét bảng in với tỷ lệ. Sau đó, tôi đã sử dụng các công cụ đo lường trong chương trình vẽ Unix Xfig (xfig.org) để đo khoảng cách và góc của hình ảnh. Một điều phức tạp là quy mô này không dựa trên một vòng cung đơn giản; nó nén theo chiều dọc để các đầu của thang nằm cách xa điểm trục kim hơn so với giữa.

Để tạo tỷ lệ mới, tôi đã viết một chương trình trong Tcl (tcl.tk) lấy một khoảng cách và góc mô tả tỷ lệ, tính toán các đường thành phần và đường cong của nó, và xuất ra một tệp hình ảnh ở định dạng gốc Xfig. Tôi đọc tệp này vào Xfig và sử dụng nó để tạo tệp PostScript có thể in được.

Hình A: Thang đo giây hiển thị 60 với đầu vào là 1 milliamp.

Vấn đề duy nhất là dòng tốt nhất mà Xfig có thể vẽ dày hơn tôi muốn, vì vậy tôi đã chỉnh sửa PostScript bằng tay để làm cho dòng mỏng hơn trước khi in. Khi tôi in ra các vảy mới, tôi cắt chúng ra và sử dụng keo xịt để dán chúng lên các tấm (Hình A).

Để giúp sắp xếp các vảy trên các tấm, tôi đã in thêm các dấu nơi có lỗ vít. Và để các vảy ban đầu không hiển thị qua tờ giấy, tôi đặt các vảy mới lên mặt sau của các đĩa, trống (và đối xứng).

Đấm bốc nó lên

Đây là loại dự án cần một hộp tốt, để hiển thị các mét và che giấu các dây và như vậy. Vợ tôi gợi ý rằng một chiếc hộp gỗ đẹp sẽ trông đẹp mắt trên lớp phủ, và chúng tôi đã chọn một cái ở cửa hàng thủ công địa phương.

Hình B: Mẫu giấy để cắt lỗ trong hộp.

Hình C: Các lỗ trong hộp, với một số lỗ được cưa ra thành các khe để lắp ốc vít.

Hình D: Các mét có vảy mới của chúng vừa với hộp.

Gắn đồng hồ có nghĩa là khoan một lỗ trung tâm rộng cho mặt sau của đồng hồ, được bao quanh bởi 4 lỗ nhỏ cho các vít lắp. Tôi đã tạo một mẫu giấy làm hướng dẫn (Hình B, trang trước) và khoan tương ứng, nhưng thật khó để có các lỗ lắp đủ chính xác, vì vậy tôi đã sử dụng một bit lớn hơn và một lỗ cưa để dọn đủ không gian cho chúng vừa vặn (Hình C). Tất cả các mét đều vừa khít với các lỗ trung tâm, vì vậy tôi không bận tâm đến việc đặt đai ốc và vòng đệm vào các ốc vít (Hình D).

Đối với nguồn năng lượng, tôi đã cân nhắc việc đặt pin vào hộp, nhưng Arduino kéo 20mA bằng 30mA, vì vậy ngay cả với các tế bào D, chúng sẽ cần được thay đổi khoảng 5 tuần một lần. Thay vào đó, tôi quyết định sử dụng mụn cóc trên tường và luồn dây qua một lỗ ở phía sau hộp. Các nút để đặt đồng hồ và thay đổi chế độ tôi để lại trên bảng điều khiển bên trong.

Hình E: Sơn lót màu đỏ.

Hình F: Sơn đen cọ xát một phần dọc theo các cạnh, để lộ lớp lót màu đỏ cho hiệu ứng cổ xưa.

Cuối cùng, tôi muốn chiếc hộp có màu đen lâu đời, phù hợp với đồ nội thất của chúng tôi. Tôi đã hoàn thành hiệu ứng này bằng cách trước tiên đặt một lớp sơn đỏ và cho phép nó khô (Hình E). Sau đó tôi đi theo nó với màu đen và lau nhẹ lớp sơn ướt khỏi các cạnh, để lộ một lượng nhỏ màu đỏ bên dưới (Hình F).

Kết quả cuối cùng là một chiếc đồng hồ độc đáo và một cuộc trò chuyện bắt đầu tuyệt vời có thể được hiển thị nổi bật trong nhà của tôi, và bây giờ cũng là của bạn!

Hình. G: Đồng hồ amp mét đã hoàn thành với nắp mở để hiển thị mạch điện.

Hình H: Đồng hồ hiển thị tương tự nhấp nháy 12:00.


Gene Scogin là một lập trình viên máy tính, người thích nhiều dự án thực hành.


Tài liệu tham khảo:

Thực hiện: Arduino Arduino Starter Kit Bắt đầu với Arduino

http://store.makezine.com

http://www.makezine.com/13/diycircuits_clock

http://xfig.org

http://tcl.tk


Từ MAKE 13 - Trang 165. Để nhận MAKE, đăng ký hoặc mua một tập duy nhất.



BạN Có Thể Quan Tâm

Chuỗi chương trình biểu diễn trong Greenpoint Brooklyn Thứ Bảy 1/29

Chuỗi chương trình biểu diễn trong Greenpoint Brooklyn Thứ Bảy 1/29


Nhớ người thách thức

Nhớ người thách thức


Cách thực hiện: Dreamcatcher với lông giấy

Cách thực hiện: Dreamcatcher với lông giấy


Căn hộ được bao phủ trong 25.000 quả bóng bàn

Căn hộ được bao phủ trong 25.000 quả bóng bàn