Mục lục:

Lập phương thời gian - Tiện ích theo dõi thời gian Arduino: 6 bước
Lập phương thời gian - Tiện ích theo dõi thời gian Arduino: 6 bước

Video: Lập phương thời gian - Tiện ích theo dõi thời gian Arduino: 6 bước

Video: Lập phương thời gian - Tiện ích theo dõi thời gian Arduino: 6 bước
Video: [Lập trình Arduino - FreeRTOS] Bài 1 - Tổng quan hệ điều hành nhúng thời gian thực 2024, Tháng mười một
Anonim
Lập phương thời gian - Tiện ích theo dõi thời gian Arduino
Lập phương thời gian - Tiện ích theo dõi thời gian Arduino
Lập phương thời gian - Tiện ích theo dõi thời gian Arduino
Lập phương thời gian - Tiện ích theo dõi thời gian Arduino

Tôi muốn đề xuất cho bạn dự án arduino đơn giản nhưng thực sự hữu ích để theo dõi các sự kiện thời gian bằng cách lật một số tiện ích khối lập phương thông minh. Lật nó sang bên "Làm việc"> "Học"> "Công việc"> "Nghỉ ngơi" và nó sẽ tính thời gian bạn dành cho hoạt động đó. Khối thời gian được xây dựng dựa trên Arduino Nano và gia tốc kế ADXL345 được đặt vào hộp có kích thước phù hợp để bạn có thể vẽ các ký hiệu hoặc tên hoạt động. Vào cuối ngày, bạn có thể kiểm tra các số liệu thống kê. Tôi hy vọng nó sẽ thúc đẩy tôi “Học hỏi” nhiều hơn.

Có rất nhiều sản phẩm tương tự trên thị trường như TimeFlip.io, Timeular.com, ZEI. Bạn cũng có thể thử dự án DIY tuyệt vời từ Adafruit https://learn.adafruit.com/time-tracking-cube. Tuy nhiên, tôi đề nghị bạn làm cho nó đơn giản hơn nhiều. Để theo dõi dữ liệu thời gian, bạn không cần bất kỳ kết nối internet wifi hoặc bluetooth nào với các dịch vụ đám mây. Time Cube được cấp nguồn và kết nối với PC bằng cáp USB. Trên máy tính, bạn phải chạy ứng dụng java của tôi, ứng dụng này sẽ lắng nghe các thông báo nối tiếp từ arduino và hiển thị tổng thời gian đã sử dụng.

Tất cả các nguồn chương trình bắt buộc và một số hướng dẫn không quá chi tiết mà bạn có thể tìm thấy trên dự án GitHub của tôi:

Quân nhu

1. Arduino Micro hoặc Nano tương tự:

2. Máy đo gia tốc ADXL345:

3. Hộp carton / hộp nhựa hình khối

4. Cáp USB

Bước 1: Nối dây Bo mạch và Gia tốc kế

Dây bảng và gia tốc kế
Dây bảng và gia tốc kế

Cảm biến ADXL345 là một cảm biến gia tốc 3 trục có thể đo lực của gia tốc và khi tĩnh, bạn cũng có thể đọc hướng của nó. Bạn phải đấu dây Arduino Nano hoặc bo mạch Micro và gia tốc kế ADXL345 như trên hình.

Tôi sẽ không giải thích chi tiết cách hoạt động của gia tốc kế ADXL345. Tất cả thông tin bắt buộc tôi tìm thấy trong bài viết rất hay về kết nối gia tốc kế với arduino và lập trình:

Bước 2: Chương trình Flash tới Arduino Nano

Chương trình Flash tới Arduino Nano
Chương trình Flash tới Arduino Nano
Chương trình Flash sang Arduino Nano
Chương trình Flash sang Arduino Nano

Trong bước này, chúng ta phải tải chương trình từ Arduino studio lên bảng arduino. Arduino nano sẽ có thể đọc tọa độ XYZ từ gia tốc kế và gửi chúng đến cổng nối tiếp trong một số loại gói dữ liệu như

Bạn có thể tải xuống tất cả các nguồn cần thiết từ trang dự án GitHub của tôi (dưới dạng tệp lưu trữ duy nhất):

1. Giải nén tệp nén zip đã tải xuống vào một số thư mục như c: / program / tcube và mở tệp tcube / arduino / tcub / tcub.ino trong Arduino studio.

2. Kết nối bo mạch arduino với PC bằng cáp USB.

3. Từ Công cụ-> Bảng: chọn "Arduino Nano" (hoặc một bảng khác mà bạn định sử dụng).

4. Nếu bạn sử dụng một số bản sao arduino của Trung Quốc thì bạn nên chọn từ Công cụ-> Bộ xử lý-> ATmega328P (Trình tải cũ)

5. Chọn cổng được kết nối từ Công cụ-> Cổng -> COM3 (trong trường hợp của tôi)

6. Tải chương trình lên arduino

7. Từ thời điểm đó, nó sẽ ngay lập tức gửi các gói dữ liệu đến cổng nối tiếp USB.

8. Để kiểm tra xem mọi thứ có hoạt động tốt hay không, bạn có thể mở "Serial Monitor" trong Arduino Studio. Bạn sẽ thấy các gói được tạo ra mỗi giây như …… (có nghĩa là tọa độ thực của gia tốc kế).

Bước 3: Cài đặt Java Runtime Environment để chạy ứng dụng khách trên PC

Cài đặt Java Runtime Environment để chạy ứng dụng khách trên PC
Cài đặt Java Runtime Environment để chạy ứng dụng khách trên PC

Trước khi chúng tôi tiếp tục, bạn phải đảm bảo rằng bạn đã cài đặt Java Runtime Environment (JRE) trên máy tính của mình.

Ứng dụng khách mà tôi đã tạo để nhận thông báo từ Arduino và thống kê tổng hợp được viết bằng ngôn ngữ lập trình Java. Và JRE là bắt buộc để chạy các ứng dụng Java. Bạn nên cài đặt ít nhất JRE8. Tôi khuyên bạn nên tải xuống phiên bản x64 cho Windows. Vui lòng tải xuống từ trang web của Oracle

Bước 4: Cài đặt ứng dụng khách để đọc tọa độ từ Arduino và theo dõi số liệu thống kê

Cài đặt ứng dụng khách để đọc tọa độ từ Arduino và theo dõi thống kê
Cài đặt ứng dụng khách để đọc tọa độ từ Arduino và theo dõi thống kê
Cài đặt ứng dụng khách để đọc tọa độ từ Arduino và theo dõi thống kê
Cài đặt ứng dụng khách để đọc tọa độ từ Arduino và theo dõi thống kê

Bây giờ là lúc chuẩn bị và khởi chạy ứng dụng khách trên PC của bạn, ứng dụng này sẽ kết nối với cổng USB để nghe và theo dõi thống kê thời gian.

Nếu bạn đã quen với Java, bạn có thể tải xuống và biên dịch các nguồn của ứng dụng java Time Cube từ dự án GitHub của tôi. Tuy nhiên, bên trong kho lưu trữ dự án đầy đủ mà bạn đã tải xuống, đã được biên dịch và sẵn sàng sử dụng kho lưu trữ ứng dụng tcube.zip mà bạn phải giải nén vào một số thư mục (có thể là c: / Programs / tcube)

Nếu bạn chạy tệp run.bat, nó sẽ khởi động ứng dụng, ứng dụng này ngay lập tức sẽ cố gắng bắt đầu kết nối với một số cổng COM đang hoạt động được sử dụng bởi bảng Arduino (Arduino kết nối với USB được Windows tự động nhận dạng như một số cổng COM ảo).

Nếu mọi thứ được định cấu hình chính xác, bạn sẽ thấy ngay các bộ đếm thời gian đang chạy theo một số hoạt động. Và bằng cách lật khối lập phương, bạn sẽ có thể theo dõi các hoạt động khác nhau. Cửa sổ ứng dụng hiển thị nhật ký sự kiện và bạn có thể thấy bất kỳ lỗi kết nối nào có thể xảy ra.

Bước 5: Hiệu chuẩn gia tốc kế

Hiệu chuẩn gia tốc kế
Hiệu chuẩn gia tốc kế

Có thể xảy ra trường hợp bạn nên hiệu chỉnh Khối thời gian của mình vì gia tốc kế của bạn không được định hướng chính xác như của tôi. Chỉ cần mở tệp app.properties và chỉnh sửa phạm vi tọa độ của mỗi mặt khối theo tọa độ thực tế mà bạn sẽ thấy trong cửa sổ nhật ký ứng dụng cho mỗi mặt khối.

Hoặc bạn có thể thử nghiệm định hướng và tìm vị trí gia tốc kế chính xác như của tôi.

Bước 6: Phân tích bổ sung

Phân tích bổ sung
Phân tích bổ sung

Ứng dụng java của tôi khá đơn giản và chỉ hiển thị thời gian dành cho mỗi hoạt động trong ngày. Nếu bạn muốn có nhiều phân tích hơn, bạn có thể sử dụng Microsoft Excel để phân tích thêm.

Ứng dụng tạo ra tệp time-log.csv ở định dạng CSV, chứa tất cả các sự kiện được gửi từ arduino. Vì các sự kiện được tạo ra mỗi giây nên bạn có thể thực hiện phân tích ngày chi tiết trong MS Excel để xây dựng các biểu đồ, đồ thị đẹp và các phân tích bổ sung.

Trong thư mục mà bạn đã tải xuống từ dự án GitHub của mình, bạn có thể tìm thấy tệp excel log_analytics.xlsx xây dựng biểu đồ hình tròn bằng cách sử dụng dữ liệu từ tệp time-log.csv. Bạn phải cập nhật biểu đồ theo cách thủ công bằng cách nhấn nút "Làm mới tất cả" trong Excel.

Đề xuất: